{"version":3,"file":"static/js/main.20366e85.js","mappings":"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G1BC,YAAa,CACTzC,KAAM,iBACNC,KAAM,cACNC,OAAQ,YACRC,MAAO,UAEXuC,YAAa,CACT1C,KAAM,kBACNC,KAAM,YACNC,OAAQ,WACRC,MAAO,UAEX7xE,KAAM,CACFvkJ,OAAQ,CACJ44N,YAAa,CACT,MACA,MACA,MACA,MACA,MACA,MACA,OAEJC,OAAQ,CACJ,IACA,IACA,IACA,IACA,IACA,IACA,KAEJzC,MAAO,CACH,KACA,KACA,KACA,KACA,KACA,KACA,MAEJ0C,KAAM,CACF,SACA,SACA,UACA,YACA,WACA,SACA,aAGR,cAAe,CACXF,YAAa,CACT,MACA,MACA,MACA,MACA,MACA,MACA,OAEJC,OAAQ,CACJ,IACA,IACA,IACA,IACA,IACA,IACA,KAEJzC,MAAO,CACH,KACA,KACA,KACA,KACA,KACA,KACA,MAEJ0C,KAAM,CACF,SACA,SACA,UACA,YACA,WACA,SACA,cAIZC,OAAQ,CACJ/4N,OAAQ,CACJ44N,YAAa,CACT,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,OAEJC,OAAQ,CACJ,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,KAEJC,KAAM,CACF,UACA,WACA,QACA,QACA,MACA,OACA,OACA,SACA,YACA,UACA,WACA,aAGR,cAAe,CACXF,YAAa,CACT,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,OAEJC,OAAQ,CACJ,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,KAEJC,KAAM,CACF,UACA,WACA,QACA,QACA,MACA,OACA,OACA,SACA,YACA,UACA,WACA,cAIZE,SAAU,CACNh5N,OAAQ,CACJ44N,YAAa,CACT,KACA,KACA,KACA,MAEJC,OAAQ,CACJ,IACA,IACA,IACA,KAEJC,KAAM,CACF,cACA,cACA,cACA,gBAGR,cAAe,CACXF,YAAa,CACT,KACA,KACA,KACA,MAEJC,OAAQ,CACJ,IACA,IACA,IACA,KAEJC,KAAM,CACF,cACA,c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,KAAM,cACNC,KAAM,aACNC,IAAK,WACLC,IAAK,UACL/6J,EAAG,IACHpW,GAAI,MACJoxK,IAAK,SACLC,IAAK,MACLC,KAAM,QACNC,MAAO,WACPC,MAAO,SACP,kBAAmB,qBACnB,oBAAqB,qBACrB5zE,GAAI,QACJzrF,EAAG,IACHs/J,GAAI,MACJC,IAAK,QACLC,KAAM,WACNC,KAAM,QACNC,MAAO,WACPC,OAAQ,cACRC,MAAO,SACPC,KAAM,QACNC,MAAO,SACP,eAAgB,kBAChB,iBAAkB,oBAG1BC,YAAa,CACTzC,KAAM,iBACNC,KAAM,cACNC,OAAQ,YACRC,MAAO,UAEXuC,YAAa,CACT1C,KAAM,kBACNC,KAAM,YACNC,OAAQ,WACRC,MAAO,UAEX7xE,KAAM,CACFvkJ,OAAQ,CACJ44N,YAAa,CACT,MACA,MACA,MACA,MACA,MACA,MACA,OAEJC,OAAQ,CACJ,IACA,IACA,IACA,IACA,IACA,IACA,KAEJzC,MAAO,CACH,KACA,KACA,KACA,KACA,KACA,KACA,MAEJ0C,KAAM,CACF,SACA,SACA,UACA,YACA,WACA,SACA,aAGR,cAAe,CACXF,YAAa,CACT,MACA,MACA,MACA,MACA,MACA,MACA,OAEJC,OAAQ,CACJ,IACA,IACA,IACA,IACA,IACA,IACA,KAEJzC,MAAO,CACH,KACA,KACA,KACA,KACA,KACA,KACA,MAEJ0C,KAAM,CACF,SACA,SACA,UACA,YACA,WACA,SACA,cAIZC,OAAQ,CACJ/4N,OAAQ,CACJ44N,YAAa,CACT,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,OAEJC,OAAQ,CACJ,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,KAEJC,KAAM,CACF,UACA,WACA,QACA,QACA,MACA,OACA,OACA,SACA,YACA,UACA,WACA,aAGR,cAAe,CACXF,YAAa,CACT,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,OAEJC,OAAQ,CACJ,IACA,IACA,IACA,IACA,IACA,IACA,IACA,I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","sources":["../node_modules/hoist-non-react-statics/dist/hoist-non-react-statics.cjs.js","../node_modules/invariant/browser.js","../node_modules/isarray/index.js","../node_modules/json-stringify-safe/stringify.js","../node_modules/lodash/_DataView.js","../node_modules/lodash/_Hash.js","../node_modules/lodash/_ListCache.js","../node_modules/lodash/_Map.js","../node_modules/lodash/_MapCache.js","../node_modules/lodash/_Promise.js","../node_modules/lodash/_Set.js","../node_modules/lodash/_Stack.js","../node_modules/lodash/_Symbol.js","../node_modules/lodash/_Uint8Array.js","../node_modules/lodash/_WeakMap.js","../node_modules/lodash/_arrayEach.js","../node_modules/lodash/_arrayFilter.js","../node_modules/lodash/_arrayLikeKeys.js","../node_modules/lodash/_arrayPush.js","../node_modules/lodash/_assignValue.js","../node_modules/lodash/_assocIndexOf.js","../node_modules/lodash/_baseAssign.js","../node_modules/lodash/_baseAssignIn.js","../node_modules/lodash/_baseAssignValue.js","../node_modules/lodash/_baseClone.js","../node_modules/lodash/_baseCreate.js","../node_modules/lodash/_baseGetAllKeys.js","../node_modules/lodash/_baseGetTag.js","../node_modules/lodash/_baseIsArguments.js","../node_modules/lodash/_baseIsMap.js","../node_modules/lodash/_baseIsNative.js","../node_modules/lodash/_baseIsSet.js","../node_modules/lodash/_baseIsTypedArray.js","../node_modules/lodash/_baseKeys.js","../node_modules/lodash/_baseKeysIn.js","../node_modules/lodash/_baseTimes.js","../node_modules/lodash/_baseTrim.js","../node_modules/lodash/_baseUnary.js","../node_modules/lodash/_cloneArrayBuffer.js","../node_modules/lodash/_cloneBuffer.js","../node_modules/lodash/_cloneDataView.js","../node_modules/lodash/_cloneRegExp.js","../node_modules/lodash/_cloneSymbol.js","../node_modules/lodash/_cloneTypedArray.js","../node_modules/lodash/_copyArray.js","../node_modules/lodash/_copyObject.js","../node_modules/lodash/_copySymbols.js","../node_modules/lodash/_copySymbolsIn.js","../node_modules/lodash/_coreJsData.js","../node_modules/lodash/_defineProperty.js","../node_modules/lodash/_freeGlobal.js","../node_modules/lodash/_getAllKeys.js","../node_modules/lodash/_getAllKeysIn.js","../node_modules/lodash/_getMapData.js","../node_modules/lodash/_getNative.js","../node_modules/lodash/_getPrototype.js","../node_modules/lodash/_getRawTag.js","../node_modules/lodash/_getSymbols.js","../node_modules/lodash/_getSymbolsIn.js","../node_modules/lodash/_getTag.js","../node_modules/lodash/_getValue.js","../node_modules/lodash/_hashClear.js","../node_modules/lodash/_hashDelete.js","../node_modules/lodash/_hashGet.js","../node_modules/lodash/_hashHas.js","../node_modules/lodash/_hashSet.js","../node_modules/lodash/_initCloneArray.js","../node_modules/lodash/_initCloneByTag.js","../node_modules/lodash/_initCloneObject.js","../node_modules/lodash/_isIndex.js","../node_modules/lodash/_isKeyable.js","../node_modules/lodash/_isMasked.js","../node_modules/lodash/_isPrototype.js","../node_modules/lodash/_listCacheClear.js","../node_modules/lodash/_listCacheDelete.js","../node_modules/lodash/_listCacheGet.js","../node_modules/lodash/_listCacheHas.js","../node_modules/lodash/_listCacheSet.js","../node_modules/lodash/_mapCacheClear.js","../node_modules/lodash/_mapCacheDelete.js","../node_modules/lodash/_mapCacheGet.js","../node_modules/lodash/_mapCacheHas.js","../node_modules/lodash/_mapCacheSet.js","../node_modules/lodash/_nativeCreate.js","../node_modules/lodash/_nativeKeys.js","../node_modules/lodash/_nativeKeysIn.js","../node_modules/lodash/_nodeUtil.js","../node_modules/lodash/_objectToString.js","../node_modules/lodash/_overArg.js","../node_modules/lodash/_root.js","../node_modules/lodash/_stackClear.js","../node_modules/lodash/_stackDelete.js","../node_modules/lodash/_stackGet.js","../node_modules/lodash/_stackHas.js","../node_modules/lodash/_stackSet.js","../node_modules/lodash/_toSource.js","../node_modules/lodash/_trimmedEndIndex.js","../node_modules/lodash/cloneDeep.js","../node_modules/lodash/debounce.js","../node_modules/lodash/eq.js","../node_modules/lodash/isArguments.js","../node_modules/lodash/isArray.js","../node_modules/lodash/isArrayLike.js","../node_modules/lodash/isBuffer.js","../node_modules/lodash/isFunction.js","../node_modules/lodash/isLength.js","../node_modules/lodash/isMap.js","../node_modules/lodash/isObject.js","../node_modules/lodash/isObjectLike.js","../node_modules/lodash/isSet.js","../node_modules/lodash/isSymbol.js","../node_modules/lodash/isTypedArray.js","../node_modules/lodash/keys.js","../node_modules/lodash/keysIn.js","../node_modules/lodash/lodash.js","../node_modules/lodash/now.js","../node_modules/lodash/stubArray.js","../node_modules/lodash/stubFalse.js","../node_modules/lodash/throttle.js","../node_modules/lodash/toNumber.js","../node_modules/path-to-regexp/index.js","../node_modules/prop-types/factoryWithThrowingShims.js","../node_modules/prop-types/index.js","../node_modules/prop-types/lib/ReactPropTypesSecret.js","../node_modules/react-dom/cjs/react-dom.production.min.js","../node_modules/react-dom/client.js","../node_modules/react-dom/index.js","../node_modules/react-ga4/dist/format.js","../node_modules/react-ga4/dist/ga4.js","../node_modules/react-ga4/dist/gtag.js","../node_modules/react-ga4/dist/index.js","../node_modules/react-is/cjs/react-is.production.min.js","../node_modules/react-is/index.js","../node_modules/react-redux/node_modules/react-is/cjs/react-is.production.min.js","../node_modules/react-redux/node_modules/react-is/index.js","../node_modules/react-router-bootstrap/lib/IndexLinkContainer.js","../node_modules/react-router-bootstrap/lib/LinkContainer.js","../node_modules/react-router-bootstrap/lib/index.js","../node_modules/react-router-dom/node_modules/history/esm/history.js","../node_modules/react-router-dom/modules/BrowserRouter.js","../node_modules/react-router-dom/modules/HashRouter.js","../node_modules/react-router-dom/modules/utils/locationUtils.js","../node_modules/react-router-dom/modules/Link.js","../node_modules/react-router-dom/modules/NavLink.js","../node_modules/value-equal/esm/value-equal.js","../node_modules/react-router/node_modules/history/esm/history.js","../node_modules/react-router/modules/miniCreateReactContext.js","../node_modules/react-router/modules/createContext.js","../node_modules/react-router/modules/createNamedContext.js","../node_modules/react-router/modules/HistoryContext.js","../node_modules/react-router/modules/RouterContext.js","../node_modules/react-router/modules/Router.js","../node_modules/react-router/modules/MemoryRouter.js","../node_modules/react-router/modules/Lifecycle.js","../node_modules/react-router/modules/Prompt.js","../node_modules/react-router/modules/generatePath.js","../node_modules/react-router/modules/Redirect.js","../node_modules/react-router/modules/matchPath.js","../node_modules/react-router/modules/Route.js","../node_modules/react-router/modules/StaticRouter.js","../node_modules/react-router/modules/Switch.js","../node_modules/react-router/modules/withRouter.js","../node_modules/react-router/modules/hooks.js","../node_modules/react/cjs/react-jsx-runtime.production.min.js","../node_modules/react/cjs/react.production.min.js","../node_modules/react/index.js","../node_modules/react/jsx-runtime.js","../node_modules/redux-immutable-state-invariant/dist/index.js","../node_modules/redux-immutable-state-invariant/dist/isImmutable.js","../node_modules/redux-immutable-state-invariant/dist/trackForMutations.js","../node_modules/resolve-pathname/esm/resolve-pathname.js","../node_modules/scheduler/cjs/scheduler.production.min.js","../node_modules/scheduler/index.js","../node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.production.js","../node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.production.js","../node_modules/use-sync-external-store/shim/index.js","../node_modules/use-sync-external-store/shim/with-selector.js","../node_modules/warning/warning.js","../node_modules/classnames/index.js","../node_modules/@babel/runtime/helpers/esm/extends.js","../node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js","../node_modules/@babel/runtime/helpers/esm/inheritsLoose.js","../node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js","../node_modules/tiny-invariant/dist/esm/tiny-invariant.js","../webpack/bootstrap","../webpack/runtime/amd options","../webpack/runtime/compat get default export","../webpack/runtime/create fake namespace object","../webpack/runtime/define property getters","../webpack/runtime/global","../webpack/runtime/hasOwnProperty shorthand","../webpack/runtime/make namespace object","../webpack/runtime/node module decorator","../webpack/runtime/publicPath","../node_modules/@babel/runtime/helpers/esm/typeof.js","../node_modules/@babel/runtime/helpers/esm/toPropertyKey.js","../node_modules/@babel/runtime/helpers/esm/toPrimitive.js","../node_modules/@babel/runtime/helpers/esm/defineProperty.js","../node_modules/@babel/runtime/helpers/esm/objectSpread2.js","../node_modules/redux/es/redux.js","shell/redux/shellActions.tsx","shell/redux/shellReducers.tsx","opggs/title/titleSearch/redux/titleSearchActions.tsx","opggs/title/titleSearch/redux/titleSearchReducers.tsx","opggs/title/titleDetails/redux/titleDetailsActions.tsx","opggs/title/titleDetails/redux/titleDetailsReducers.tsx","opggs/application/opggsApplicationTracking/redux/opggsApplicationTrackingActions.tsx","opggs/application/opggsApplicationTracking/redux/opggsApplicationTrackingReducers.tsx","opggs/application/opggsApplicationTrackingDetails/redux/opggsApplicationTrackingDetailsActions.tsx","opggs/application/opggsApplicationTrackingDetails/redux/opggsApplicationTrackingDetailsReducers.tsx","open/title/redux/openTitleActions.tsx","open/title/redux/openTitleReducers.tsx","opggs/storageFormation/storageFormationsList/redux/storageFormationsListActions.tsx","opggs/storageFormation/storageFormationsList/redux/storageFormationsListReducers.tsx","oei/licence/search/redux/licenceSearchActions.tsx","oei/licence/search/redux/licenceSearchReducers.tsx","oei/licence/details/redux/licenceDetailsActions.tsx","oei/licence/details/redux/licenceDetailsReducers.tsx","open/licence/redux/openLicenceActions.tsx","open/licence/redux/openLicenceReducers.tsx","oei/application/oeiApplicationTracking/redux/oeiApplicationTrackingActions.tsx","oei/application/oeiApplicationTracking/redux/oeiApplicationTrackingReducers.tsx","oei/application/oeiApplicationTrackingDetails/redux/oeiApplicationTrackingDetailsActions.tsx","oei/application/oeiApplicationTrackingDetails/redux/oeiApplicationTrackingDetailsReducers.tsx","../node_modules/react-redux/es/utils/batch.js","../node_modules/react-redux/es/components/Context.js","../node_modules/react-redux/es/hooks/useReduxContext.js","../node_modules/react-redux/es/utils/useSyncExternalStore.js","../node_modules/react-redux/es/hooks/useSelector.js","../node_modules/react-redux/es/connect/selectorFactory.js","../node_modules/react-redux/es/connect/wrapMapToProps.js","../node_modules/react-redux/es/connect/invalidArgFactory.js","../node_modules/react-redux/es/connect/mergeProps.js","../node_modules/react-redux/es/utils/Subscription.js","../node_modules/react-redux/es/utils/useIsomorphicLayoutEffect.js","../node_modules/react-redux/es/utils/shallowEqual.js","../node_modules/react-redux/es/components/connect.js","../node_modules/react-redux/es/connect/mapStateToProps.js","../node_modules/react-redux/es/connect/mapDispatchToProps.js","../node_modules/react-redux/es/utils/bindActionCreators.js","../node_modules/react-redux/es/components/Provider.js","../node_modules/react-redux/es/hooks/useStore.js","../node_modules/react-redux/es/hooks/useDispatch.js","../node_modules/react-redux/es/index.js","nopims/basket/redux/actions.ts","nopims/basket/redux/model.ts","nopims/basket/redux/reducers.ts","redux/rootReducer.tsx","../node_modules/@redux-devtools/extension/lib/esm/developmentOnly.js","../node_modules/@redux-saga/symbols/dist/redux-saga-symbols.esm.js","../node_modules/@redux-saga/is/dist/redux-saga-is.esm.js","../node_modules/@redux-saga/core/dist/io-22ea0cf9.js","../node_modules/@redux-saga/deferred/dist/redux-saga-deferred.esm.js","../node_modules/@redux-saga/core/dist/redux-saga-core.esm.js","../node_modules/redux-saga/dist/redux-saga-core-npm-proxy.esm.js","../node_modules/@redux-saga/core/dist/redux-saga-effects.esm.js","api/Client.ts","api/uriHelper.tsx","api/clientFactory.ts","https://raw.githubusercontent.com/nevware21/ts-utils/refs/tags/0.11.6/lib/src/internal/treeshake_helpers.ts","https://raw.githubusercontent.com/nevware21/ts-utils/refs/tags/0.11.6/lib/src/internal/constants.ts","https://raw.githubusercontent.com/nevware21/ts-utils/refs/tags/0.11.6/lib/src/helpers/base.ts","https://raw.githubusercontent.com/nevware21/ts-utils/refs/tags/0.11.6/lib/src/helpers/safe.ts","https://raw.githubusercontent.com/nevware21/ts-utils/refs/tags/0.11.6/lib/src/helpers/safe_get.ts","https://raw.githubusercontent.com/nevware21/ts-utils/refs/tags/0.11.6/lib/src/object/get_own_prop_desc.ts","https://raw.githubusercontent.com/nevware21/ts-utils/refs/tags/0.11.6/lib/src/object/has_own_prop.ts","https://raw.githubusercontent.com/nevware21/ts-utils/refs/tags/0.11.6/lib/src/object/has_own.ts","https://raw.githubusercontent.com/nevware21/ts-utils/refs/tags/0.11.6/lib/src/object/for_each_key.ts","https://raw.githubusercontent.com/nevware21/ts-utils/refs/tags/0.11.6/lib/src/object/define.ts","https://raw.githubusercontent.com/nevware21/ts-utils/refs/tags/0.11.6/lib/src/internal/map.ts","https://raw.githubusercontent.com/nevware21/ts-utils/refs/tags/0.11.6/lib/src/string/as_string.ts","https://raw.githubusercontent.com/nevware21/ts-utils/refs/tags/0.11.6/lib/src/helpers/diagnostics.ts","https://raw.githubusercontent.com/nevware21/ts-utils/refs/tags/0.11.6/lib/src/helpers/throw.ts","https://raw.githubusercontent.com/nevware21/ts-utils/refs/tags/0.11.6/lib/src/object/object.ts","https://raw.githubusercontent.com/nevware21/ts-utils/refs/tags/0.11.6/lib/src/helpers/enum.ts","https://raw.githubusercontent.com/nevware21/ts-utils/refs/tags/0.11.6/lib/src/symbol/well_known.ts","https://raw.githubusercontent.com/nevware21/ts-utils/refs/tags/0.11.6/lib/src/internal/global.ts","https://raw.githubusercontent.com/nevware21/ts-utils/refs/tags/0.11.6/lib/src/internal/unwrapFunction.ts","https://raw.githubusercontent.com/nevware21/ts-utils/refs/tags/0.11.6/lib/src/math/min_max.ts","https://raw.githubusercontent.com/nevware21/ts-utils/refs/tags/0.11.6/lib/src/string/slice.ts","https://raw.githubusercontent.com/nevware21/ts-utils/refs/tags/0.11.6/lib/src/string/substring.ts","https://raw.githubusercontent.com/nevware21/ts-utils/refs/tags/0.11.6/lib/src/polyfills/symbol.ts","https://raw.githubusercontent.com/nevware21/ts-utils/refs/tags/0.11.6/lib/src/helpers/lazy.ts","https://raw.githubusercontent.com/nevware21/ts-utils/refs/tags/0.11.6/lib/src/helpers/cache.ts","https://raw.githubusercontent.com/nevware21/ts-utils/refs/tags/0.11.6/lib/src/helpers/environment.ts","https://raw.githubusercontent.com/nevware21/ts-utils/refs/tags/0.11.6/lib/src/symbol/symbol.ts","https://raw.githubusercontent.com/nevware21/ts-utils/refs/tags/0.11.6/lib/src/iterator/forOf.ts","https://raw.githubusercontent.com/nevware21/ts-utils/refs/tags/0.11.6/lib/src/iterator/iterator.ts","https://raw.githubusercontent.com/nevware21/ts-utils/refs/tags/0.11.6/lib/src/funcs/funcs.ts","https://raw.githubusercontent.com/nevware21/ts-utils/refs/tags/0.11.6/lib/src/array/append.ts","https://raw.githubusercontent.com/nevware21/ts-utils/refs/tags/0.11.6/lib/src/array/forEach.ts","https://raw.githubusercontent.com/nevware21/ts-utils/refs/tags/0.11.6/lib/src/array/indexOf.ts","https://raw.githubusercontent.com/nevware21/ts-utils/refs/tags/0.11.6/lib/src/array/map.ts","https://raw.githubusercontent.com/nevware21/ts-utils/refs/tags/0.11.6/lib/src/array/slice.ts","https://raw.githubusercontent.com/nevware21/ts-utils/refs/tags/0.11.6/lib/src/array/find.ts","https://raw.githubusercontent.com/nevware21/ts-utils/refs/tags/0.11.6/lib/src/array/reduce.ts","https://raw.githubusercontent.com/nevware21/ts-utils/refs/tags/0.11.6/lib/src/object/set_proto.ts","https://raw.githubusercontent.com/nevware21/ts-utils/refs/tags/0.11.6/lib/src/helpers/customError.ts","https://raw.githubusercontent.com/nevware21/ts-utils/refs/tags/0.11.6/lib/src/object/create.ts","https://raw.githubusercontent.com/nevware21/ts-utils/refs/tags/0.11.6/lib/src/helpers/date.ts","https://raw.githubusercontent.com/nevware21/ts-utils/refs/tags/0.11.6/lib/src/polyfills/trim.ts","https://raw.githubusercontent.com/nevware21/ts-utils/refs/tags/0.11.6/lib/src/string/trim.ts","https://raw.githubusercontent.com/nevware21/ts-utils/refs/tags/0.11.6/lib/src/helpers/encode.ts","https://raw.githubusercontent.com/nevware21/ts-utils/refs/tags/0.11.6/lib/src/object/is_plain_object.ts","https://raw.githubusercontent.com/nevware21/ts-utils/refs/tags/0.11.6/lib/src/object/copy.ts","https://raw.githubusercontent.com/nevware21/ts-utils/refs/tags/0.11.6/lib/src/helpers/extend.ts","https://raw.githubusercontent.com/nevware21/ts-utils/refs/tags/0.11.6/lib/src/helpers/length.ts","https://raw.githubusercontent.com/nevware21/ts-utils/refs/tags/0.11.6/lib/src/helpers/perf.ts","https://raw.githubusercontent.com/nevware21/ts-utils/refs/tags/0.11.6/lib/src/string/split.ts","https://raw.githubusercontent.com/nevware21/ts-utils/refs/tags/0.11.6/lib/src/helpers/get_set_value.ts","https://raw.githubusercontent.com/nevware21/ts-utils/refs/tags/0.11.6/lib/src/string/ends_with.ts","https://raw.githubusercontent.com/nevware21/ts-utils/refs/tags/0.11.6/lib/src/string/index_of.ts","https://raw.githubusercontent.com/nevware21/ts-utils/refs/tags/0.11.6/lib/src/timer/handler.ts","https://raw.githubusercontent.com/nevware21/ts-utils/refs/tags/0.11.6/lib/src/timer/timeout.ts","https://raw.githubusercontent.com/nevware21/ts-utils/refs/tags/0.11.6/lib/src/timer/idle.ts","../node_modules/@microsoft/dynamicproto-js/src/DynamicProto.ts","../node_modules/@microsoft/applicationinsights-shims/src/Constants.ts","../node_modules/@microsoft/applicationinsights-shims/src/TsLibShims.ts","../node_modules/@microsoft/applicationinsights-core-js/dist-es5/__DynamicConstants.js","../node_modules/@microsoft/applicationinsights-core-js/dist-es5/JavaScriptSDK/InternalConstants.js","../node_modules/@microsoft/applicationinsights-core-js/dist-es5/JavaScriptSDK/HelperFuncs.js","../node_modules/@microsoft/applicationinsights-core-js/dist-es5/JavaScriptSDK/EnvUtils.js","../node_modules/@microsoft/applicationinsights-core-js/dist-es5/JavaScriptSDK/RandomHelper.js","../node_modules/@microsoft/applicationinsights-core-js/dist-es5/JavaScriptSDK/DataCacheHelper.js","../node_modules/@microsoft/applicationinsights-core-js/dist-es5/Config/ConfigDefaults.js","../node_modules/@microsoft/applicationinsights-core-js/dist-es5/Config/DynamicSupport.js","../node_modules/@microsoft/applicationinsights-core-js/dist-es5/Config/DynamicProperty.js","../node_modules/@microsoft/applicationinsights-core-js/dist-es5/JavaScriptSDK/AggregationError.js","../node_modules/@microsoft/applicationinsights-core-js/dist-es5/Config/DynamicState.js","../node_modules/@microsoft/applicationinsights-core-js/dist-es5/Config/DynamicConfig.js","../node_modules/@microsoft/applicationinsights-core-js/dist-es5/JavaScriptSDK/DbgExtensionUtils.js","../node_modules/@microsoft/applicationinsights-core-js/dist-es5/JavaScriptSDK/DiagnosticLogger.js","../node_modules/@microsoft/applicationinsights-core-js/dist-es5/JavaScriptSDK.Enums/EnumHelperFuncs.js","../node_modules/@microsoft/applicationinsights-common/dist-es5/Enums.js","../node_modules/@microsoft/applicationinsights-common/dist-es5/__DynamicConstants.js","../node_modules/@microsoft/applicationinsights-common/dist-es5/StorageHelperFuncs.js","../node_modules/@microsoft/applicationinsights-common/dist-es5/applicationinsights-common.js","../node_modules/@microsoft/applicationinsights-common/dist-es5/Constants.js","../node_modules/@microsoft/applicationinsights-common/dist-es5/Telemetry/Common/DataSanitizer.js","../node_modules/@microsoft/applicationinsights-common/dist-es5/TelemetryItemCreator.js","../node_modules/@microsoft/applicationinsights-common/dist-es5/Telemetry/Event.js","../node_modules/@microsoft/applicationinsights-common/dist-es5/Telemetry/Trace.js","../node_modules/@microsoft/applicationinsights-common/dist-es5/Telemetry/Common/DataPoint.js","../node_modules/@microsoft/applicationinsights-common/dist-es5/Telemetry/Metric.js","../node_modules/@microsoft/applicationinsights-common/dist-es5/HelperFuncs.js","../node_modules/@microsoft/applicationinsights-common/dist-es5/Telemetry/PageView.js","../node_modules/@microsoft/applicationinsights-common/dist-es5/Telemetry/PageViewPerformance.js","../node_modules/@microsoft/applicationinsights-common/dist-es5/Telemetry/Exception.js","../node_modules/@microsoft/applicationinsights-core-js/dist-es5/JavaScriptSDK/CoreUtils.js","../node_modules/@microsoft/applicationinsights-core-js/dist-es5/JavaScriptSDK/W3cTraceParent.js","../node_modules/@microsoft/applicationinsights-common/dist-es5/RequestResponseHeaders.js","../node_modules/@microsoft/applicationinsights-common/dist-es5/UrlHelperFuncs.js","../node_modules/@microsoft/applicationinsights-common/dist-es5/Util.js","../node_modules/@microsoft/applicationinsights-common/dist-es5/Telemetry/RemoteDependencyData.js","../node_modules/@microsoft/applicationinsights-core-js/dist-es5/JavaScriptSDK/CookieMgr.js","../node_modules/@microsoft/applicationinsights-common/dist-es5/DomHelperFuncs.js","../node_modules/@microsoft/applicationinsights-core-js/dist-es5/Config/ConfigDefaultHelpers.js","../node_modules/@microsoft/applicationinsights-core-js/dist-es5/JavaScriptSDK/EventHelpers.js","../node_modules/@microsoft/applicationinsights-core-js/dist-es5/JavaScriptSDK/PerfManager.js","../node_modules/@microsoft/applicationinsights-core-js/dist-es5/JavaScriptSDK/TelemetryHelpers.js","../node_modules/@microsoft/applicationinsights-core-js/dist-es5/JavaScriptSDK/ProcessTelemetryContext.js","../node_modules/@microsoft/applicationinsights-core-js/dist-es5/JavaScriptSDK/UnloadHookContainer.js","../node_modules/@microsoft/applicationinsights-core-js/dist-es5/JavaScriptSDK/BaseTelemetryPlugin.js","../node_modules/@microsoft/applicationinsights-core-js/dist-es5/JavaScriptSDK/InstrumentHooks.js","../node_modules/@microsoft/applicationinsights-core-js/dist-es5/JavaScriptSDK/UnloadHandlerContainer.js","../node_modules/@microsoft/applicationinsights-analytics-js/dist-es5/__DynamicConstants.js","../node_modules/@microsoft/applicationinsights-analytics-js/dist-es5/JavaScriptSDK/Telemetry/PageViewManager.js","../node_modules/@microsoft/applicationinsights-analytics-js/dist-es5/JavaScriptSDK/Telemetry/PageViewPerformanceManager.js","../node_modules/@microsoft/applicationinsights-analytics-js/dist-es5/JavaScriptSDK/AnalyticsPlugin.js","../node_modules/@microsoft/applicationinsights-analytics-js/dist-es5/JavaScriptSDK/Telemetry/PageVisitTimeManager.js","../node_modules/@microsoft/applicationinsights-analytics-js/dist-es5/JavaScriptSDK/Timing.js","https://raw.githubusercontent.com/nevware21/ts-async/refs/tags/0.5.4/lib/src/promise/debug.ts","https://raw.githubusercontent.com/nevware21/ts-async/refs/tags/0.5.4/lib/src/internal/constants.ts","https://raw.githubusercontent.com/nevware21/ts-async/refs/tags/0.5.4/lib/src/promise/await.ts","https://raw.githubusercontent.com/nevware21/ts-async/refs/tags/0.5.4/lib/src/internal/state.ts","https://raw.githubusercontent.com/nevware21/ts-async/refs/tags/0.5.4/lib/src/promise/event.ts","https://raw.githubusercontent.com/nevware21/ts-async/refs/tags/0.5.4/lib/src/promise/base.ts","https://raw.githubusercontent.com/nevware21/ts-async/refs/tags/0.5.4/lib/src/promise/itemProcessor.ts","https://raw.githubusercontent.com/nevware21/ts-async/refs/tags/0.5.4/lib/src/promise/asyncPromise.ts","https://raw.githubusercontent.com/nevware21/ts-async/refs/tags/0.5.4/lib/src/promise/nativePromise.ts","https://raw.githubusercontent.com/nevware21/ts-async/refs/tags/0.5.4/lib/src/promise/syncPromise.ts","https://raw.githubusercontent.com/nevware21/ts-async/refs/tags/0.5.4/lib/src/promise/idlePromise.ts","https://raw.githubusercontent.com/nevware21/ts-async/refs/tags/0.5.4/lib/src/promise/promise.ts","https://raw.githubusercontent.com/nevware21/ts-async/refs/tags/0.5.4/lib/src/polyfills/promise.ts","../node_modules/@microsoft/applicationinsights-cfgsync-js/dist-es5/__DynamicConstants.js","../node_modules/@microsoft/applicationinsights-cfgsync-js/dist-es5/CfgSyncHelperFuncs.js","../node_modules/@microsoft/applicationinsights-cfgsync-js/dist-es5/CfgSyncPlugin.js","../node_modules/@microsoft/applicationinsights-common/dist-es5/Offline.js","../node_modules/@microsoft/applicationinsights-core-js/dist-es5/JavaScriptSDK.Enums/InitActiveStatusEnum.js","../node_modules/@microsoft/applicationinsights-core-js/dist-es5/JavaScriptSDK/Constants.js","../node_modules/@microsoft/applicationinsights-core-js/dist-es5/JavaScriptSDK/SenderPostManager.js","../node_modules/@microsoft/applicationinsights-core-js/dist-es5/JavaScriptSDK/AsyncUtils.js","../node_modules/@microsoft/applicationinsights-core-js/dist-es5/JavaScriptSDK/ResponseHelpers.js","../node_modules/@microsoft/applicationinsights-common/dist-es5/Interfaces/Contracts/ContextTagKeys.js","../node_modules/@microsoft/applicationinsights-common/dist-es5/Interfaces/PartAExtensions.js","../node_modules/@microsoft/applicationinsights-common/dist-es5/Telemetry/Common/Envelope.js","../node_modules/@microsoft/applicationinsights-common/dist-es5/Telemetry/Common/Data.js","../node_modules/@microsoft/applicationinsights-channel-js/dist-es5/InternalConstants.js","../node_modules/@microsoft/applicationinsights-channel-js/dist-es5/__DynamicConstants.js","../node_modules/@microsoft/applicationinsights-channel-js/dist-es5/EnvelopeCreator.js","../node_modules/@microsoft/applicationinsights-channel-js/dist-es5/SendBuffer.js","../node_modules/@microsoft/applicationinsights-channel-js/dist-es5/Sender.js","../node_modules/@microsoft/applicationinsights-channel-js/dist-es5/Serializer.js","../node_modules/@microsoft/applicationinsights-channel-js/dist-es5/TelemetryProcessors/SamplingScoreGenerators/HashCodeScoreGenerator.js","../node_modules/@microsoft/applicationinsights-channel-js/dist-es5/TelemetryProcessors/SamplingScoreGenerators/SamplingScoreGenerator.js","../node_modules/@microsoft/applicationinsights-channel-js/dist-es5/TelemetryProcessors/Sample.js","../node_modules/@microsoft/applicationinsights-common/dist-es5/ConnectionStringParser.js","../node_modules/@microsoft/applicationinsights-common/dist-es5/ThrottleMgr.js","../node_modules/@microsoft/applicationinsights-core-js/dist-es5/JavaScriptSDK/NotificationManager.js","../node_modules/@microsoft/applicationinsights-core-js/dist-es5/JavaScriptSDK/TelemetryInitializerPlugin.js","../node_modules/@microsoft/applicationinsights-core-js/dist-es5/JavaScriptSDK/AppInsightsCore.js","../node_modules/@microsoft/applicationinsights-dependencies-js/dist-es5/InternalConstants.js","../node_modules/@microsoft/applicationinsights-dependencies-js/dist-es5/__DynamicConstants.js","../node_modules/@microsoft/applicationinsights-dependencies-js/dist-es5/ajaxRecord.js","../node_modules/@microsoft/applicationinsights-dependencies-js/dist-es5/ajax.js","../node_modules/@microsoft/applicationinsights-properties-js/dist-es5/Context/Application.js","../node_modules/@microsoft/applicationinsights-properties-js/dist-es5/Context/Device.js","../node_modules/@microsoft/applicationinsights-properties-js/dist-es5/Context/Internal.js","../node_modules/@microsoft/applicationinsights-properties-js/dist-es5/Context/Location.js","../node_modules/@microsoft/applicationinsights-properties-js/dist-es5/__DynamicConstants.js","../node_modules/@microsoft/applicationinsights-properties-js/dist-es5/Context/Session.js","../node_modules/@microsoft/applicationinsights-properties-js/dist-es5/Context/TelemetryTrace.js","../node_modules/@microsoft/applicationinsights-properties-js/dist-es5/Context/User.js","../node_modules/@microsoft/applicationinsights-properties-js/dist-es5/TelemetryContext.js","../node_modules/@microsoft/applicationinsights-properties-js/dist-es5/PropertiesPlugin.js","../node_modules/@microsoft/applicationinsights-web/dist-es5/InternalConstants.js","../node_modules/@microsoft/applicationinsights-web/dist-es5/AISku.js","../node_modules/@microsoft/applicationinsights-web/dist-es5/__DynamicConstants.js","../node_modules/@microsoft/applicationinsights-common/dist-es5/Interfaces/Contracts/SeverityLevel.js","../node_modules/@microsoft/applicationinsights-react-js/dist-esm/ReactPlugin.js","infrastructure/TelemetryService.tsx","../node_modules/clsx/dist/clsx.mjs","../node_modules/react-toastify/src/style.css","../node_modules/react-toastify/src/utils/propValidator.ts","../node_modules/react-toastify/src/utils/cssTransition.tsx","../node_modules/react-toastify/src/utils/collapseToast.ts","../node_modules/react-toastify/src/utils/mapper.ts","../node_modules/react-toastify/src/components/ProgressBar.tsx","../node_modules/react-toastify/src/core/genToastId.ts","../node_modules/react-toastify/src/core/containerObserver.ts","../node_modules/react-toastify/src/core/store.ts","../node_modules/react-toastify/src/core/toast.ts","../node_modules/react-toastify/src/hooks/useToast.ts","../node_modules/react-toastify/src/hooks/useIsomorphicLayoutEffect.ts","../node_modules/react-toastify/src/components/Icons.tsx","../node_modules/react-toastify/src/components/Toast.tsx","../node_modules/react-toastify/src/components/CloseButton.tsx","../node_modules/react-toastify/src/components/Transitions.tsx","../node_modules/react-toastify/src/components/ToastContainer.tsx","../node_modules/react-toastify/src/hooks/useToastContainer.ts","common/toastHelper.tsx","api/callHelper.ts","opggs/title/titleSearch/redux/titleSearchSaga.tsx","opggs/title/titleDetails/redux/titleDetailsSaga.tsx","opggs/title/titleDetails/redux/titleMapDetailsSaga.tsx","opggs/application/opggsApplicationTracking/redux/opggsApplicationTrackingSaga.tsx","opggs/application/opggsApplicationTrackingDetails/redux/opggsApplicationTrackingDetailsSaga.tsx","opggs/storageFormation/storageFormationsList/redux/storageFormationsListSaga.tsx","open/title/redux/openTitleSaga.tsx","shell/redux/shellSaga.tsx","oei/licence/search/redux/licenceSearchSaga.tsx","oei/licence/details/redux/licenceDetailsSaga.tsx","open/licence/redux/openLicenceSaga.tsx","oei/application/oeiApplicationTracking/redux/oeiApplicationTrackingSaga.tsx","oei/application/oeiApplicationTrackingDetails/redux/oeiApplicationTrackingDetailsSaga.tsx","common/LogHelper.tsx","nopims/basket/redux/saga.ts","redux/configureStore.tsx","../node_modules/@microsoft/applicationinsights-react-js/dist-esm/withAITracking.js","infrastructure/telemetry-provider.jsx","redux/withHistory.tsx","../node_modules/@progress/kendo-intl/dist/es/cldr/default-data.js","../node_modules/@progress/kendo-intl/dist/es/common/is-string.js","../node_modules/@progress/kendo-intl/dist/es/errors.js","../node_modules/@progress/kendo-intl/dist/es/error-details.js","../node_modules/@progress/kendo-intl/dist/es/cldr/info.js","../node_modules/@progress/kendo-intl/dist/es/common/constants.js","../node_modules/@progress/kendo-intl/dist/es/cldr/load-numbers.js","../node_modules/@progress/kendo-intl/dist/es/cldr/load-dates.js","../node_modules/@progress/kendo-intl/dist/es/cldr/territory.js","../node_modules/@progress/kendo-intl/dist/es/cldr/load-units.js","../node_modules/@progress/kendo-intl/dist/es/cldr/load.js","../node_modules/@progress/kendo-intl/dist/es/cldr/date-format-names.js","../node_modules/@progress/kendo-intl/dist/es/cldr/parse-range-date.js","../node_modules/@progress/kendo-intl/dist/es/cldr/currency.js","../node_modules/@progress/kendo-intl/dist/es/cldr/constants.js","../node_modules/@progress/kendo-intl/dist/es/cldr/first-day.js","../node_modules/@progress/kendo-intl/dist/es/cldr/weekend-range.js","../node_modules/@progress/kendo-intl/dist/es/common/is-negative-zero.js","../node_modules/@progress/kendo-intl/dist/es/numbers/format-currency-symbol.js","../node_modules/@progress/kendo-intl/dist/es/numbers/group-integer.js","../node_modules/@progress/kendo-intl/dist/es/numbers/is-currency-style.js","../node_modules/@progress/kendo-intl/dist/es/common/pad.js","../node_modules/@progress/kendo-intl/dist/es/common/round.js","../node_modules/@progress/kendo-intl/dist/es/numbers/standard-number-format.js","../node_modules/@progress/kendo-intl/dist/es/numbers/utils.js","../node_modules/@progress/kendo-intl/dist/es/numbers/custom-number-format.js","../node_modules/@progress/kendo-intl/dist/es/numbers/format-options.js","../node_modules/@progress/kendo-intl/dist/es/numbers/format-number.js","../node_modules/@progress/kendo-intl/dist/es/common/is-number.js","../node_modules/@progress/kendo-intl/dist/es/numbers/parse-number.js","../node_modules/@progress/kendo-intl/dist/es/common/format-string.js","../node_modules/@progress/kendo-intl/dist/es/dates/date-pattern.js","../node_modules/@progress/kendo-intl/dist/es/dates/date-name-type.js","../node_modules/@progress/kendo-intl/dist/es/dates/format-names.js","../node_modules/@progress/kendo-intl/dist/es/common/is-date.js","../node_modules/@progress/kendo-intl/dist/es/dates/constants.js","../node_modules/@progress/kendo-intl/dist/es/dates/format-date.js","../node_modules/@progress/kendo-intl/dist/es/dates/time-utils.js","../node_modules/@progress/kendo-intl/dist/es/dates/parse-date.js","../node_modules/@progress/kendo-intl/dist/es/dates/split-date-format.js","../node_modules/@progress/kendo-intl/dist/es/format.js","../node_modules/@progress/kendo-licensing/dist/index.mjs","../node_modules/@progress/kendo-react-common/validate-package.mjs","../node_modules/@progress/kendo-react-intl/package-metadata.mjs","../node_modules/@progress/kendo-react-intl/Intl/IntlService.mjs","../node_modules/@progress/kendo-intl/dist/es/cldr/date-field-name.js","../node_modules/@progress/kendo-intl/dist/es/cldr/number-symbols.js","../node_modules/@progress/kendo-react-intl/Localization/messages.mjs","../node_modules/@progress/kendo-react-intl/Localization/LocalizationService.mjs","../node_modules/@progress/kendo-react-intl/globalization/GlobalizationContext.mjs","../node_modules/@progress/kendo-react-intl/Intl/IntlProvider.mjs","../node_modules/@telerik/kendo-intl/dist/es/cldr/default-data.js","../node_modules/@telerik/kendo-intl/dist/es/common/is-string.js","../node_modules/@telerik/kendo-intl/dist/es/errors.js","../node_modules/@telerik/kendo-intl/dist/es/error-details.js","../node_modules/@telerik/kendo-intl/dist/es/cldr/info.js","../node_modules/@telerik/kendo-intl/dist/es/cldr/territory.js","../node_modules/@telerik/kendo-intl/dist/es/common/constants.js","../node_modules/@telerik/kendo-intl/dist/es/cldr/date-format-names.js","../node_modules/@telerik/kendo-intl/dist/es/cldr/parse-range-date.js","../node_modules/@telerik/kendo-intl/dist/es/cldr/currency.js","../node_modules/@telerik/kendo-intl/dist/es/cldr/constants.js","../node_modules/@telerik/kendo-intl/dist/es/cldr/first-day.js","../node_modules/@telerik/kendo-intl/dist/es/cldr/weekend-range.js","../node_modules/@telerik/kendo-intl/dist/es/common/is-negative-zero.js","../node_modules/@telerik/kendo-intl/dist/es/numbers/format-currency-symbol.js","../node_modules/@telerik/kendo-intl/dist/es/numbers/group-integer.js","../node_modules/@telerik/kendo-intl/dist/es/numbers/is-currency-style.js","../node_modules/@telerik/kendo-intl/dist/es/common/pad.js","../node_modules/@telerik/kendo-intl/dist/es/common/round.js","../node_modules/@telerik/kendo-intl/dist/es/numbers/standard-number-format.js","../node_modules/@telerik/kendo-intl/dist/es/numbers/utils.js","../node_modules/@telerik/kendo-intl/dist/es/numbers/custom-number-format.js","../node_modules/@telerik/kendo-intl/dist/es/numbers/format-options.js","../node_modules/@telerik/kendo-intl/dist/es/common/format-string.js","../node_modules/@telerik/kendo-intl/dist/es/dates/date-pattern.js","../node_modules/@telerik/kendo-intl/dist/es/dates/date-name-type.js","../node_modules/@telerik/kendo-intl/dist/es/dates/format-names.js","../node_modules/@telerik/kendo-intl/dist/es/common/is-date.js","../node_modules/@telerik/kendo-intl/dist/es/dates/constants.js","../node_modules/@telerik/kendo-intl/dist/es/dates/format-date.js","../node_modules/@telerik/kendo-intl/dist/es/dates/parse-date.js","common/GlobalHelpers.tsx","../node_modules/@telerik/kendo-intl/dist/es/numbers/format-number.js","infrastructure/KendoIntlProvider.tsx","common/shell/shellHelper.tsx","shell/components/ConfigurationController.tsx","../node_modules/uncontrollable/lib/esm/utils.js","../node_modules/uncontrollable/lib/esm/hook.js","../node_modules/react-lifecycles-compat/react-lifecycles-compat.es.js","../node_modules/@restart/hooks/esm/useCommittedRef.js","../node_modules/@restart/hooks/esm/useEventCallback.js","../node_modules/react-bootstrap/esm/ThemeProvider.js","../node_modules/react-bootstrap/esm/divWithClassName.js","../node_modules/react-bootstrap/esm/AlertHeading.js","../node_modules/@restart/ui/node_modules/@restart/hooks/esm/useCommittedRef.js","../node_modules/@restart/ui/node_modules/@restart/hooks/esm/useEventCallback.js","../node_modules/@restart/ui/node_modules/@restart/hooks/esm/useMounted.js","../node_modules/@restart/ui/node_modules/@restart/hooks/esm/usePrevious.js","../node_modules/@restart/ui/node_modules/@restart/hooks/esm/useIsomorphicEffect.js","../node_modules/@restart/ui/node_modules/@restart/hooks/esm/useResizeObserver.js","../node_modules/@restart/ui/esm/Button.js","../node_modules/@restart/ui/esm/Anchor.js","../node_modules/react-bootstrap/esm/AlertLink.js","../node_modules/react-transition-group/esm/config.js","../node_modules/react-transition-group/esm/TransitionGroupContext.js","../node_modules/react-transition-group/esm/utils/reflow.js","../node_modules/react-transition-group/esm/Transition.js","../node_modules/@restart/ui/esm/utils.js","../node_modules/dom-helpers/esm/ownerDocument.js","../node_modules/dom-helpers/esm/getComputedStyle.js","../node_modules/dom-helpers/esm/ownerWindow.js","../node_modules/dom-helpers/esm/hyphenate.js","../node_modules/dom-helpers/esm/hyphenateStyle.js","../node_modules/dom-helpers/esm/isTransform.js","../node_modules/dom-helpers/esm/css.js","../node_modules/dom-helpers/esm/canUseDOM.js","../node_modules/dom-helpers/esm/addEventListener.js","../node_modules/dom-helpers/esm/removeEventListener.js","../node_modules/dom-helpers/esm/listen.js","../node_modules/dom-helpers/esm/transitionEnd.js","../node_modules/dom-helpers/esm/triggerEvent.js","../node_modules/react-bootstrap/esm/transitionEndListener.js","../node_modules/react-bootstrap/esm/triggerBrowserReflow.js","../node_modules/@restart/hooks/esm/useMergedRefs.js","../node_modules/react-bootstrap/esm/TransitionWrapper.js","../node_modules/react-bootstrap/esm/safeFindDOMNode.js","../node_modules/react-bootstrap/esm/Fade.js","../node_modules/react-bootstrap/esm/CloseButton.js","../node_modules/react-bootstrap/esm/Alert.js","../node_modules/@primer/octicons-react/dist/index.esm.mjs","shell/components/DismissableAlertControl.tsx","supportedBrowsers.ts","shell/components/SupportedBrowserBannerView.tsx","../node_modules/@restart/ui/esm/SelectableContext.js","../node_modules/react-bootstrap/esm/NavbarBrand.js","../node_modules/react-bootstrap/esm/createChainedFunction.js","../node_modules/react-bootstrap/esm/Collapse.js","../node_modules/react-bootstrap/esm/NavbarContext.js","../node_modules/react-bootstrap/esm/NavbarCollapse.js","../node_modules/react-bootstrap/esm/NavbarToggle.js","../node_modules/@restart/hooks/esm/useIsomorphicEffect.js","../node_modules/@restart/hooks/esm/useMediaQuery.js","../node_modules/@restart/hooks/esm/useBreakpoint.js","../node_modules/dom-helpers/esm/activeElement.js","../node_modules/dom-helpers/esm/contains.js","../node_modules/@restart/ui/node_modules/@restart/hooks/esm/useWillUnmount.js","../node_modules/@restart/ui/node_modules/@restart/hooks/esm/useUpdatedRef.js","../node_modules/@restart/ui/esm/DataKey.js","../node_modules/@restart/ui/esm/ModalManager.js","../node_modules/@restart/ui/esm/getScrollbarWidth.js","../node_modules/@restart/ui/esm/useWindow.js","../node_modules/@restart/ui/esm/useWaitForDOMRef.js","../node_modules/@restart/ui/node_modules/@restart/hooks/esm/useMergedRefs.js","../node_modules/@restart/ui/esm/NoopTransition.js","../node_modules/@restart/ui/esm/useRTGTransitionProps.js","../node_modules/@restart/ui/esm/RTGTransition.js","../node_modules/@restart/ui/esm/ImperativeTransition.js","../node_modules/@restart/ui/esm/Modal.js","../node_modules/react-bootstrap/esm/OffcanvasBody.js","../node_modules/react-bootstrap/esm/OffcanvasToggling.js","../node_modules/react-bootstrap/esm/ModalContext.js","../node_modules/react-bootstrap/esm/AbstractModalHeader.js","../node_modules/react-bootstrap/esm/OffcanvasHeader.js","../node_modules/react-bootstrap/esm/OffcanvasTitle.js","../node_modules/dom-helpers/esm/addClass.js","../node_modules/dom-helpers/esm/hasClass.js","../node_modules/dom-helpers/esm/querySelectorAll.js","../node_modules/dom-helpers/esm/removeClass.js","../node_modules/react-bootstrap/esm/BootstrapModalManager.js","../node_modules/react-bootstrap/esm/Offcanvas.js","../node_modules/react-bootstrap/esm/NavbarOffcanvas.js","../node_modules/react-bootstrap/esm/NavbarText.js","../node_modules/react-bootstrap/esm/Navbar.js","../node_modules/@restart/ui/node_modules/@restart/hooks/esm/useForceUpdate.js","../node_modules/@restart/ui/esm/NavContext.js","../node_modules/@restart/ui/esm/TabContext.js","../node_modules/@restart/ui/esm/NavItem.js","../node_modules/@restart/ui/esm/Nav.js","../node_modules/react-bootstrap/esm/CardHeaderContext.js","../node_modules/react-bootstrap/esm/NavItem.js","../node_modules/react-bootstrap/esm/NavLink.js","../node_modules/react-bootstrap/esm/Nav.js","../node_modules/@restart/ui/node_modules/uncontrollable/lib/esm/index.js","../node_modules/@restart/ui/esm/DropdownContext.js","../node_modules/dequal/dist/index.mjs","../node_modules/@restart/ui/node_modules/@restart/hooks/esm/useSafeState.js","../node_modules/@popperjs/core/lib/utils/getBasePlacement.js","../node_modules/@popperjs/core/lib/dom-utils/getWindow.js","../node_modules/@popperjs/core/lib/dom-utils/instanceOf.js","../node_modules/@popperjs/core/lib/utils/math.js","../node_modules/@popperjs/core/lib/utils/userAgent.js","../node_modules/@popperjs/core/lib/dom-utils/isLayoutViewport.js","../node_modules/@popperjs/core/lib/dom-utils/getBoundingClientRect.js","../node_modules/@popperjs/core/lib/dom-utils/getLayoutRect.js","../node_modules/@popperjs/core/lib/dom-utils/contains.js","../node_modules/@popperjs/core/lib/dom-utils/getNodeName.js","../node_modules/@popperjs/core/lib/dom-utils/getComputedStyle.js","../node_modules/@popperjs/core/lib/dom-utils/isTableElement.js","../node_modules/@popperjs/core/lib/dom-utils/getDocumentElement.js","../node_modules/@popperjs/core/lib/dom-utils/getParentNode.js","../node_modules/@popperjs/core/lib/dom-utils/getOffsetParent.js","../node_modules/@popperjs/core/lib/utils/getMainAxisFromPlacement.js","../node_modules/@popperjs/core/lib/utils/within.js","../node_modules/@popperjs/core/lib/utils/mergePaddingObject.js","../node_modules/@popperjs/core/lib/utils/getFreshSideObject.js","../node_modules/@popperjs/core/lib/utils/expandToHashMap.js","../node_modules/@popperjs/core/lib/enums.js","../node_modules/@popperjs/core/lib/modifiers/arrow.js","../node_modules/@popperjs/core/lib/utils/getVariation.js","../node_modules/@popperjs/core/lib/modifiers/computeStyles.js","../node_modules/@popperjs/core/lib/modifiers/eventListeners.js","../node_modules/@popperjs/core/lib/utils/getOppositePlacement.js","../node_modules/@popperjs/core/lib/utils/getOppositeVariationPlacement.js","../node_modules/@popperjs/core/lib/dom-utils/getWindowScroll.js","../node_modules/@popperjs/core/lib/dom-utils/getWindowScrollBarX.js","../node_modules/@popperjs/core/lib/dom-utils/isScrollParent.js","../node_modules/@popperjs/core/lib/dom-utils/getScrollParent.js","../node_modules/@popperjs/core/lib/dom-utils/listScrollParents.js","../node_modules/@popperjs/core/lib/utils/rectToClientRect.js","../node_modules/@popperjs/core/lib/dom-utils/getClippingRect.js","../node_modules/@popperjs/core/lib/dom-utils/getViewportRect.js","../node_modules/@popperjs/core/lib/dom-utils/getDocumentRect.js","../node_modules/@popperjs/core/lib/utils/computeOffsets.js","../node_modules/@popperjs/core/lib/utils/detectOverflow.js","../node_modules/@popperjs/core/lib/modifiers/flip.js","../node_modules/@popperjs/core/lib/utils/computeAutoPlacement.js","../node_modules/@popperjs/core/lib/modifiers/hide.js","../node_modules/@popperjs/core/lib/modifiers/offset.js","../node_modules/@popperjs/core/lib/modifiers/preventOverflow.js","../node_modules/@popperjs/core/lib/utils/getAltAxis.js","../node_modules/@popperjs/core/lib/dom-utils/getCompositeRect.js","../node_modules/@popperjs/core/lib/dom-utils/getNodeScroll.js","../node_modules/@popperjs/core/lib/dom-utils/getHTMLElementScroll.js","../node_modules/@popperjs/core/lib/utils/orderModifiers.js","../node_modules/@popperjs/core/lib/utils/debounce.js","../node_modules/@popperjs/core/lib/createPopper.js","../node_modules/@popperjs/core/lib/utils/mergeByName.js","../node_modules/@restart/ui/esm/popper.js","../node_modules/@popperjs/core/lib/modifiers/popperOffsets.js","../node_modules/@restart/ui/esm/usePopper.js","../node_modules/@restart/ui/esm/useClickOutside.js","../node_modules/@restart/ui/esm/mergeOptionsWithPopperConfig.js","../node_modules/@restart/ui/esm/DropdownMenu.js","../node_modules/@restart/ui/node_modules/@restart/hooks/esm/useCallbackRef.js","../packages/@react-aria/ssr/src/SSRProvider.tsx","../node_modules/@restart/ui/esm/DropdownToggle.js","../node_modules/@restart/ui/esm/DropdownItem.js","../node_modules/@restart/ui/esm/Dropdown.js","../node_modules/@restart/ui/node_modules/@restart/hooks/esm/useEventListener.js","../node_modules/react-bootstrap/esm/DropdownContext.js","../node_modules/react-bootstrap/esm/DropdownDivider.js","../node_modules/react-bootstrap/esm/DropdownHeader.js","../node_modules/react-bootstrap/esm/DropdownItem.js","../node_modules/react-bootstrap/esm/DropdownItemText.js","../node_modules/react-bootstrap/esm/InputGroupContext.js","../node_modules/react-bootstrap/esm/useWrappedRefWithWarning.js","../node_modules/react-bootstrap/esm/DropdownMenu.js","../node_modules/react-bootstrap/esm/Button.js","../node_modules/react-bootstrap/esm/DropdownToggle.js","../node_modules/react-bootstrap/esm/Dropdown.js","../node_modules/react-bootstrap/esm/NavDropdown.js","../node_modules/react-bootstrap/esm/Container.js","../node_modules/react-resize-detector/src/useResizeDetector.ts","../node_modules/react-resize-detector/src/utils.ts","shell/components/EnvironmentBadge.tsx","common/externalLink/ExternalLinkView.tsx","nopims/routeHelper.ts","routeHelper.ts","shell/components/TopNav.tsx","shell/components/BusyOverlayController.tsx","shell/components/EnvironmentFootnote.tsx","shell/components/Footer.tsx","../node_modules/react-error-boundary/dist/react-error-boundary.esm.js","shell/components/error/ErrorControl.tsx","../node_modules/@progress/kendo-react-common/classNames.mjs","../node_modules/@progress/kendo-react-common/unstyled/interfaces/common.mjs","../node_modules/@progress/kendo-react-common/unstyled/json-classes.mjs","../node_modules/@progress/kendo-react-common/unstyled/buttons.mjs","../node_modules/@progress/kendo-react-common/icons/constants.mjs","../node_modules/@progress/kendo-react-common/icons/utils.mjs","../node_modules/@progress/kendo-react-common/hooks/useMouse.mjs","../node_modules/@progress/kendo-react-common/icons/Icon.mjs","../node_modules/@progress/kendo-react-common/unstyled/icons.mjs","../node_modules/@progress/kendo-react-common/unstyled/main.mjs","../node_modules/@progress/kendo-react-common/icons/SvgIcon.mjs","../node_modules/@progress/kendo-react-common/icons/IconsContext.mjs","../node_modules/@progress/kendo-react-common/icons/IconWrap.mjs","../node_modules/@progress/kendo-react-buttons/package-metadata.mjs","../node_modules/@progress/kendo-react-buttons/Button.mjs","../node_modules/@progress/kendo-svg-icons/dist/index.es.js","../node_modules/@progress/kendo-react-dialogs/DialogTitleBar.mjs","../node_modules/@progress/kendo-react-dialogs/DialogActionsBar.mjs","../node_modules/@progress/kendo-react-common/events/dispatchEvent.mjs","../node_modules/@progress/kendo-react-common/keys.mjs","../node_modules/@progress/kendo-react-common/constants/main.mjs","../node_modules/@progress/kendo-react-common/trappedFocus.mjs","../node_modules/@progress/kendo-react-common/getActiveElement.mjs","../node_modules/@progress/kendo-react-common/contexts/ZIndexContext.mjs","../node_modules/@progress/kendo-react-common/watermark/WatermarkOverlay.mjs","../node_modules/@progress/kendo-react-common/canUseDOM.mjs","../node_modules/@progress/kendo-react-common/hooks/usePropsContext.mjs","../node_modules/@progress/kendo-react-common/hocs/withPropsContext.mjs","../node_modules/@progress/kendo-react-common/guid.mjs","../node_modules/@progress/kendo-react-common/hooks/use-isomorphic-layout-effect.mjs","../node_modules/@progress/kendo-react-common/hooks/use-id.mjs","../node_modules/@progress/kendo-react-common/hocs/use-id-hoc.mjs","../node_modules/@progress/kendo-react-dialogs/package-metadata.mjs","../node_modules/@progress/kendo-react-dialogs/constants.mjs","../node_modules/@progress/kendo-react-dialogs/utils.mjs","../node_modules/@progress/kendo-react-dialogs/Dialog.mjs","../node_modules/react-idle-timer/dist/index.esm.js","shell/components/SessionController.tsx","shell/components/UserTokenController.tsx","shell/components/Layout.tsx","shell/components/footer/Disclaimer.tsx","common/externalLink/EmailLinkView.tsx","shell/components/footer/Accessibility.tsx","shell/components/TestErrorPage.tsx","shell/components/error/NotFoundPage.tsx","shell/components/error/ConflictPage.tsx","shell/components/error/UnauthorisedPage.tsx","shell/components/error/InternalServerErrorPage.tsx","shell/components/error/ServiceUnavailablePage.tsx","home/components/HomePage.tsx","../node_modules/@progress/kendo-react-common/rowHeightService.mjs","../node_modules/@progress/kendo-react-common/browser-support.service.mjs","../node_modules/@progress/kendo-react-common/scrollbarWidth.mjs","../node_modules/@progress/kendo-react-common/memoize.mjs","../node_modules/@progress/kendo-react-common/unstyled/grid.mjs","../node_modules/@progress/kendo-react-common/getter.mjs","../node_modules/@progress/kendo-react-common/fieldList.mjs","../node_modules/@progress/kendo-react-data-tools/navigation/constants.mjs","../node_modules/@progress/kendo-react-data-tools/navigation/utils.mjs","../node_modules/@progress/kendo-react-data-tools/navigation/NavigatableSettings.mjs","../node_modules/@progress/kendo-react-data-tools/navigation/TableKeyboardNavigation.mjs","../node_modules/@progress/kendo-react-data-tools/selection/constants.mjs","../node_modules/@progress/kendo-react-data-tools/selection/utils.mjs","../node_modules/@progress/kendo-react-common/hasRelativeStackingContext.mjs","../node_modules/@progress/kendo-react-data-tools/header/utils/index.mjs","../node_modules/@progress/kendo-react-data-tools/clipboard/common.mjs","../node_modules/@progress/kendo-react-data-tools/clipboard/clipboard.service.mjs","../node_modules/@progress/kendo-react-common/theme.mjs","../node_modules/@progress/kendo-react-data-tools/messages/index.mjs","../node_modules/@progress/kendo-react-intl/intlUtils.mjs","../node_modules/@progress/kendo-react-data-tools/pager/PagerNumericButtons.mjs","../node_modules/@progress/kendo-react-intl/hooks/useInternationalization.mjs","../node_modules/@progress/kendo-react-intl/hooks/useLocalization.mjs","../node_modules/@progress/kendo-react-common/hooks/useCustomComponent.mjs","../node_modules/@progress/kendo-react-common/getTabIndex.mjs","../node_modules/@progress/kendo-react-common/unstyled/labels.mjs","../node_modules/@progress/kendo-react-labels/messages/index.mjs","../node_modules/@progress/kendo-react-labels/package-metadata.mjs","../node_modules/@progress/kendo-react-labels/FloatingLabel.mjs","../node_modules/@progress/kendo-react-inputs/package-metadata.mjs","../node_modules/@progress/kendo-react-inputs/messages/index.mjs","../node_modules/@progress/kendo-react-inputs/numerictextbox/utils/index.mjs","../node_modules/@progress/kendo-react-inputs/numerictextbox/NumericTextBox.mjs","../node_modules/@progress/kendo-react-data-tools/pager/PagerInput.mjs","../node_modules/@progress/kendo-react-common/unstyled/dropdowns.mjs","../node_modules/@progress/kendo-react-common/hocs/use-unstyled-hoc.mjs","../node_modules/@progress/kendo-react-common/unstyled/popup.mjs","../node_modules/@progress/kendo-react-popup/animation.mjs","../node_modules/@progress/kendo-popup-common/dist/es/align-point.js","../node_modules/@progress/kendo-popup-common/dist/es/align.js","../node_modules/@progress/kendo-popup-common/dist/es/collision.js","../node_modules/@progress/kendo-popup-common/dist/es/restrict-to-view.js","../node_modules/@progress/kendo-popup-common/dist/es/utils.js","../node_modules/@progress/kendo-popup-common/dist/es/owner-document.js","../node_modules/@progress/kendo-popup-common/dist/es/window.js","../node_modules/@progress/kendo-popup-common/dist/es/document.js","../node_modules/@progress/kendo-popup-common/dist/es/scrollbar-width.js","../node_modules/@progress/kendo-popup-common/dist/es/window-viewport.js","../node_modules/@progress/kendo-popup-common/dist/es/bounding-offset.js","../node_modules/@progress/kendo-popup-common/dist/es/scroll-position.js","../node_modules/@progress/kendo-popup-common/dist/es/offset.js","../node_modules/@progress/kendo-popup-common/dist/es/element-scroll-position.js","../node_modules/@progress/kendo-popup-common/dist/es/offset-parent.js","../node_modules/@progress/kendo-popup-common/dist/es/offset-parent-scroll-position.js","../node_modules/@progress/kendo-popup-common/dist/es/parent-scroll-position.js","../node_modules/@progress/kendo-popup-common/dist/es/position.js","../node_modules/@progress/kendo-popup-common/dist/es/parents.js","../node_modules/@progress/kendo-popup-common/dist/es/siblings.js","../node_modules/@progress/kendo-popup-common/dist/es/dom-utils.js","../node_modules/@progress/kendo-popup-common/dist/es/add-scroll.js","../node_modules/@progress/kendo-popup-common/dist/es/position-with-scroll.js","../node_modules/@progress/kendo-popup-common/dist/es/remove-scroll.js","../node_modules/@progress/kendo-popup-common/dist/es/sibling-container.js","../node_modules/@progress/kendo-popup-common/dist/es/align-element.js","../node_modules/@progress/kendo-popup-common/dist/es/position-element.js","../node_modules/@progress/kendo-react-popup/package-metadata.mjs","../node_modules/@progress/kendo-react-popup/PopupWithoutContext.mjs","../node_modules/@progress/kendo-react-popup/util.mjs","../node_modules/@progress/kendo-react-popup/Popup.mjs","../node_modules/@progress/kendo-react-dropdowns/common/ListContainer.mjs","../node_modules/@progress/kendo-react-common/unstyled/inputs.mjs","../node_modules/@progress/kendo-react-inputs/input/InputPrefix.mjs","../node_modules/@progress/kendo-react-inputs/input/InputSeparator.mjs","../node_modules/@progress/kendo-react-common/hooks/useAsyncFocusBlur.mjs","../node_modules/@progress/kendo-react-inputs/textbox/Textbox.mjs","../node_modules/@progress/kendo-react-dropdowns/common/ListFilter.mjs","../node_modules/@progress/kendo-react-dropdowns/common/GroupStickyHeader.mjs","../node_modules/@progress/kendo-react-dropdowns/common/utils.mjs","../node_modules/@progress/kendo-react-dropdowns/common/ListDefaultItem.mjs","../node_modules/@progress/kendo-react-dropdowns/common/ListItem.mjs","../node_modules/@progress/kendo-react-dropdowns/common/ListGroupItem.mjs","../node_modules/@progress/kendo-react-dropdowns/messages/index.mjs","../node_modules/@progress/kendo-react-dropdowns/common/List.mjs","../node_modules/@progress/kendo-react-dropdowns/common/VirtualScrollStatic.mjs","../node_modules/@progress/kendo-react-dropdowns/common/Navigation.mjs","../node_modules/@progress/kendo-react-dropdowns/common/DropDownBase.mjs","../node_modules/@progress/kendo-react-dropdowns/package-metadata.mjs","../node_modules/@progress/kendo-react-dropdowns/common/constants.mjs","../node_modules/@progress/kendo-react-common/unstyled/animations.mjs","../node_modules/@progress/kendo-react-common/noop.mjs","../node_modules/react-transition-group/esm/CSSTransition.js","../node_modules/@progress/kendo-react-animation/AnimationChild.mjs","../node_modules/react-transition-group/esm/utils/ChildMapping.js","../node_modules/react-transition-group/esm/TransitionGroup.js","../node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js","../node_modules/@progress/kendo-react-animation/package-metadata.mjs","../node_modules/@progress/kendo-react-animation/Animation.mjs","../node_modules/@progress/kendo-react-common/navigation.mjs","../node_modules/@progress/kendo-react-layout/package-metadata.mjs","../node_modules/@progress/kendo-react-layout/actionsheet/ActionSheetItem.mjs","../node_modules/@progress/kendo-react-layout/actionsheet/ActionSheetHeader.mjs","../node_modules/@progress/kendo-react-layout/actionsheet/ActionSheetFooter.mjs","../node_modules/@progress/kendo-react-layout/actionsheet/ActionSheetContent.mjs","../node_modules/@progress/kendo-react-layout/actionsheet/ActionSheet.mjs","../node_modules/@progress/kendo-react-dropdowns/DropDownList/DropDownList.mjs","../node_modules/@progress/kendo-react-data-tools/pager/PagerPageSizes.mjs","../node_modules/@progress/kendo-react-data-tools/package-metadata.mjs","../node_modules/@progress/kendo-react-data-tools/pager/Pager.mjs","../node_modules/@progress/kendo-react-data-tools/navigation/TableKeyboardNavigationContext.mjs","../node_modules/@progress/kendo-draggable-common/dist/es/algorithms/intersect.js","../node_modules/@progress/kendo-draggable-common/dist/es/drag-n-drop.js","../node_modules/@progress/kendo-draggable-common/dist/es/utils/index.js","../node_modules/@progress/kendo-react-common/hooks/useInheritedState.mjs","../node_modules/@progress/kendo-react-common/drag-n-drop/context/index.mjs","../node_modules/@progress/kendo-react-common/hooks/useDraggable.mjs","../node_modules/@progress/kendo-draggable-common/dist/es/auto-scroll.js","../node_modules/@progress/kendo-react-common/Draggable.mjs","../node_modules/@progress/kendo-react-data-tools/selection/TableSelection.mjs","../node_modules/@progress/kendo-react-common/hooks/useDocument.mjs","../node_modules/@progress/kendo-react-data-tools/drag/DropClue.mjs","../node_modules/@progress/kendo-react-data-tools/drag/DragClue.mjs","../node_modules/@progress/kendo-react-grid/GridColumn.mjs","../node_modules/@progress/kendo-react-grid/utils/index.mjs","../node_modules/@progress/kendo-react-grid/messages/index.mjs","../node_modules/@progress/kendo-react-data-tools/navigation/hooks.mjs","../node_modules/@progress/kendo-react-grid/cells/GridSelectionCell.mjs","../node_modules/@progress/kendo-react-grid/cells/GridHierarchyCell.mjs","../node_modules/@progress/kendo-date-math/dist/es/clone-date.js","../node_modules/@progress/kendo-date-math/dist/es/adjust-dst.js","../node_modules/@progress/kendo-date-math/dist/es/create-date.js","../node_modules/@progress/kendo-date-math/dist/es/get-date.js","../node_modules/@progress/kendo-react-common/hocs/AsyncFocusBlur.mjs","../node_modules/@progress/kendo-react-dateinputs/package-metadata.mjs","../node_modules/@progress/kendo-date-math/dist/es/is-equal.js","../node_modules/@progress/kendo-date-math/dist/es/add-days.js","../node_modules/@progress/kendo-date-math/dist/es/last-day-of-month.js","../node_modules/@progress/kendo-date-math/dist/es/add-months.js","../node_modules/@progress/kendo-react-dateinputs/dateinput/models/mask.mjs","../node_modules/@progress/kendo-react-dateinputs/dateinput/utils.mjs","../node_modules/@progress/kendo-react-dateinputs/dateinput/models/kendo-date.mjs","../node_modules/@progress/kendo-react-common/unstyled/dateinputs.mjs","../node_modules/@progress/kendo-react-dateinputs/calendar/models/SelectionRange.mjs","../node_modules/@progress/kendo-react-dateinputs/utils.mjs","../node_modules/@progress/kendo-react-dateinputs/messages/index.mjs","../node_modules/@progress/kendo-react-dateinputs/timepicker/utils.mjs","../node_modules/@progress/kendo-react-dateinputs/timepicker/models/TimePart.mjs","../node_modules/@progress/kendo-react-dateinputs/common/ClearButton.mjs","../node_modules/@progress/kendo-react-dateinputs/dateinput/DateInput.mjs","../node_modules/@progress/kendo-date-math/dist/es/is-equal-date.js","../node_modules/@progress/kendo-react-dateinputs/virtualization/services/ScrollerService.mjs","../node_modules/@progress/kendo-react-dateinputs/virtualization/Virtualization.mjs","../node_modules/@progress/kendo-date-math/dist/es/day.enum.js","../node_modules/@progress/kendo-date-math/dist/es/direction.enum.js","../node_modules/@progress/kendo-date-math/dist/es/day-of-week.js","../node_modules/@progress/kendo-date-math/dist/es/week-in-year.js","../node_modules/@progress/kendo-date-math/dist/es/prev-day-of-week.js","../node_modules/@progress/kendo-date-math/dist/es/constants.js","../node_modules/@progress/kendo-react-dateinputs/calendar/components/CalendarCell.mjs","../node_modules/@progress/kendo-react-dateinputs/calendar/components/CalendarWeekCell.mjs","../node_modules/@progress/kendo-react-dateinputs/calendar/models/CalendarViewEnum.mjs","../node_modules/@progress/kendo-react-dateinputs/calendar/services/WeekNamesService.mjs","../node_modules/@progress/kendo-react-dateinputs/calendar/components/View.mjs","../node_modules/@progress/kendo-react-dateinputs/calendar/components/CalendarHeaderTitle.mjs","../node_modules/@progress/kendo-react-dateinputs/calendar/components/Header.mjs","../node_modules/@progress/kendo-react-dateinputs/calendar/components/TodayCommand.mjs","../node_modules/@progress/kendo-react-dateinputs/calendar/components/ViewList.mjs","../node_modules/@progress/kendo-react-dateinputs/calendar/components/CalendarNavigationItem.mjs","../node_modules/@progress/kendo-react-dateinputs/calendar/components/Navigation.mjs","../node_modules/@progress/kendo-date-math/dist/es/set-year.js","../node_modules/@progress/kendo-date-math/dist/es/add-years.js","../node_modules/@progress/kendo-date-math/dist/es/add-decades.js","../node_modules/@progress/kendo-date-math/dist/es/add-centuries.js","../node_modules/@progress/kendo-date-math/dist/es/normalize-year.js","../node_modules/@progress/kendo-date-math/dist/es/first-decade-of-century.js","../node_modules/@progress/kendo-date-math/dist/es/last-decade-of-century.js","../node_modules/@progress/kendo-date-math/dist/es/first-year-of-decade.js","../node_modules/@progress/kendo-date-math/dist/es/duration-in-centuries.js","../node_modules/@progress/kendo-react-dateinputs/calendar/models/NavigationAction.mjs","../node_modules/@progress/kendo-react-dateinputs/calendar/services/CenturyViewService.mjs","../node_modules/@progress/kendo-date-math/dist/es/last-year-of-decade.js","../node_modules/@progress/kendo-date-math/dist/es/duration-in-decades.js","../node_modules/@progress/kendo-react-dateinputs/calendar/services/DecadeViewService.mjs","../node_modules/@progress/kendo-date-math/dist/es/add-weeks.js","../node_modules/@progress/kendo-date-math/dist/es/first-day-of-month.js","../node_modules/@progress/kendo-date-math/dist/es/duration-in-months.js","../node_modules/@progress/kendo-react-dateinputs/calendar/services/MonthViewService.mjs","../node_modules/@progress/kendo-date-math/dist/es/set-month.js","../node_modules/@progress/kendo-date-math/dist/es/first-month-of-year.js","../node_modules/@progress/kendo-date-math/dist/es/last-month-of-year.js","../node_modules/@progress/kendo-date-math/dist/es/duration-in-years.js","../node_modules/@progress/kendo-react-dateinputs/calendar/services/YearViewService.mjs","../node_modules/@progress/kendo-react-dateinputs/calendar/services/BusViewService.mjs","../node_modules/@progress/kendo-react-dateinputs/calendar/services/DOMService.mjs","../node_modules/@progress/kendo-react-dateinputs/calendar/services/NavigationService.mjs","../node_modules/@progress/kendo-react-dateinputs/calendar/services/ScrollSyncService.mjs","../node_modules/@progress/kendo-react-dateinputs/calendar/components/Calendar.mjs","../node_modules/@progress/kendo-react-dateinputs/datepicker/ToggleButton.mjs","../node_modules/@progress/kendo-react-dateinputs/common/PickerWrap.mjs","../node_modules/@progress/kendo-react-dateinputs/hooks/usePickerFloatingLabel.mjs","../node_modules/@progress/kendo-react-dateinputs/common/AdaptiveMode.mjs","../node_modules/@progress/kendo-react-dateinputs/datepicker/DatePicker.mjs","../node_modules/@progress/kendo-react-dateinputs/common/constants.mjs","../node_modules/@progress/kendo-react-grid/constants/index.mjs","../node_modules/@progress/kendo-react-grid/cells/GridEditCell.mjs","../node_modules/@progress/kendo-react-grid/header/Header.mjs","../node_modules/@progress/kendo-react-grid/drag/ColumnDraggable.mjs","../node_modules/@progress/kendo-react-grid/columnMenu/GridColumnMenuWrapper.mjs","../node_modules/@progress/kendo-react-grid/header/GridHeaderCell.mjs","../node_modules/@progress/kendo-react-data-tools/drag/ColumnResizer.mjs","../node_modules/@progress/kendo-react-data-tools/header/HeaderThElement.mjs","../node_modules/@progress/kendo-react-grid/header/HeaderRow.mjs","../node_modules/@progress/kendo-react-grid/interfaces/GridSortSettings.mjs","../node_modules/@progress/kendo-react-grid/filterCommon.mjs","../node_modules/@progress/kendo-react-grid/cells/GridFilterCell.mjs","../node_modules/@progress/kendo-react-grid/header/FilterRow.mjs","../node_modules/@progress/kendo-react-grid/drag/GroupingIndicator.mjs","../node_modules/@progress/kendo-react-grid/header/GroupPanel.mjs","../node_modules/@progress/kendo-react-grid/footer/Footer.mjs","../node_modules/@progress/kendo-react-grid/VirtualScroll.mjs","../node_modules/@progress/kendo-react-grid/VirtualScrollFixed.mjs","../node_modules/@progress/kendo-react-grid/drag/ColumnResize.mjs","../node_modules/@progress/kendo-react-grid/drag/CommonDragLogic.mjs","../node_modules/@progress/kendo-react-grid/cells/GridCell.mjs","../node_modules/@progress/kendo-react-grid/cells/GridGroupCell.mjs","../node_modules/@progress/kendo-react-grid/rows/GridRow.mjs","../node_modules/@progress/kendo-react-grid/header/GridHeaderSelectionCell.mjs","../node_modules/@progress/kendo-react-grid/GridNoRecords.mjs","../node_modules/@progress/kendo-react-grid/footer/FooterRow.mjs","../node_modules/@progress/kendo-react-grid/paging/GridPagerSettings.mjs","../node_modules/@progress/kendo-react-grid/package-metadata.mjs","../node_modules/@progress/kendo-react-grid/cells/GridDetailCell.mjs","../node_modules/@progress/kendo-react-grid/cells/GridDetailHierarchyCell.mjs","../node_modules/@progress/kendo-react-grid/Grid.mjs","../node_modules/@progress/kendo-react-data-tools/virtualization/columns.mjs","../node_modules/@progress/kendo-react-grid/index.mjs","../node_modules/@progress/kendo-data-query/dist/es/utils.js","../node_modules/@progress/kendo-data-query/dist/es/filtering/filter-descriptor.interface.js","../node_modules/tslib/tslib.es6.mjs","../node_modules/@progress/kendo-data-query/dist/es/funcs.js","../node_modules/@progress/kendo-data-query/dist/es/filter-serialization.common.js","../node_modules/@progress/kendo-data-query/dist/es/odata.operators.js","../node_modules/@progress/kendo-data-query/dist/es/filtering/filter.operators.js","../node_modules/@progress/kendo-data-query/dist/es/odata-filtering.operators.js","../node_modules/@progress/kendo-data-query/dist/es/accessor.js","../node_modules/@progress/kendo-data-query/dist/es/mvc/operators.js","../node_modules/@progress/kendo-data-query/dist/es/filtering/operators.enum.js","../node_modules/@progress/kendo-data-query/dist/es/mvc/deserialization.js","../node_modules/@progress/kendo-data-query/dist/es/sorting/sort-array.operator.js","../node_modules/@progress/kendo-data-query/dist/es/transducers.js","../node_modules/@progress/kendo-data-query/dist/es/grouping/aggregate.operators.js","../node_modules/@progress/kendo-data-query/dist/es/filtering/filter-no-eval.js","../node_modules/@progress/kendo-data-query/dist/es/filtering/filter-expression.factory.js","../node_modules/@progress/kendo-data-query/dist/es/grouping/group.operators.js","../node_modules/@progress/kendo-data-query/dist/es/array.operators.js","common/links/TitleLinkView.tsx","common/kendoGrid/CustomGridCell.tsx","../node_modules/@progress/kendo-react-grid/columnMenu/GridColumnMenuItem.mjs","../node_modules/@progress/kendo-react-grid/columnMenu/GridColumnMenuItemGroup.mjs","../node_modules/@progress/kendo-react-animation/util.mjs","../node_modules/@progress/kendo-react-animation/Reveal.mjs","../node_modules/@progress/kendo-react-grid/columnMenu/GridColumnMenuItemContent.mjs","../node_modules/@progress/kendo-react-inputs/input/Input.mjs","../node_modules/@progress/kendo-react-grid/columnMenu/GridColumnMenuFilterCell.mjs","../node_modules/@progress/kendo-react-grid/columnMenu/GridColumnMenuFilterUI.mjs","../node_modules/@progress/kendo-react-grid/columnMenu/GridColumnMenuFilter.mjs","common/kendoGrid/GridColumnFilterMenu.tsx","../node_modules/@progress/kendo-react-common/hooks/useDir.mjs","../node_modules/@progress/kendo-react-inputs/checkbox/Checkbox.mjs","../node_modules/@progress/kendo-react-common/clone.mjs","../node_modules/@progress/kendo-react-grid/columnMenu/GridColumnMenuCheckboxFilter.mjs","common/kendoGrid/GridColumnCheckboxFilterMenu.tsx","opggs/title/titleSearch/components/TitleSearchListView.tsx","opggs/title/titleSearch/components/TitleSearchController.tsx","../node_modules/@restart/ui/esm/TabPanel.js","../node_modules/@restart/ui/esm/Tabs.js","../node_modules/react-bootstrap/esm/TabContent.js","../node_modules/react-bootstrap/esm/getTabTransitionComponent.js","../node_modules/react-bootstrap/esm/TabPane.js","../node_modules/react-bootstrap/esm/ElementChildren.js","../node_modules/react-bootstrap/esm/Tabs.js","../node_modules/react-bootstrap/esm/TabContainer.js","../node_modules/react-bootstrap/esm/Tab.js","webpack://neats-public-portal/./src/common/forms/BootstrapForms.module.css?f5da","common/forms/BootstrapForms.tsx","opggs/title/titleDetails/components/titleSummary/TitleSummaryRelatedTitlesField.tsx","opggs/title/titleDetails/components/titleSummary/TitleSummaryPriorUsageRightField.tsx","opggs/title/titleDetails/components/titleSummary/TitleSummaryEpView.tsx","opggs/title/titleDetails/components/titleSummary/TitleSummaryRlPpView.tsx","opggs/title/titleDetails/components/titleSummary/TitleSummaryIlView.tsx","opggs/title/titleDetails/components/titleSummary/TitleSummaryPlView.tsx","opggs/title/titleDetails/components/titleSummary/TitleSummaryAaSpaView.tsx","opggs/title/titleDetails/components/titleSummary/TitleSummaryGhgApView.tsx","opggs/title/titleDetails/components/TitleMapView.tsx","opggs/title/titleDetails/components/titleSummary/TitleSummaryView.tsx","opggs/title/titleDetails/components/TitleholdersView.tsx","opggs/title/titleDetails/components/workProgram/ModernWorkProgramView.tsx","opggs/title/titleDetails/components/workProgram/WorkProgramView.tsx","open/title/openTitleHelper.tsx","opggs/title/titleDetails/titleDetailsHelper.tsx","common/simpleAlerts/SimpleAlertView.tsx","common/links/CopyLinkView.tsx","common/secureFileDownload/client.tsx","common/secureFileDownload/SecureFileDownloadLinkControl.tsx","opggs/title/titleDetails/components/MemorialView.tsx","opggs/title/titleDetails/components/blocksAndLocations/BlocksView.tsx","opggs/title/titleDetails/components/blocksAndLocations/LocationsView.tsx","opggs/title/titleDetails/components/blocksAndLocations/BlocksAndLocationsView.tsx","opggs/title/titleDetails/components/TitleDetailsView.tsx","opggs/title/titleDetails/components/TitleDetailsConfiguration.tsx","opggs/title/titleDetails/components/TitleDetailsController.tsx","../node_modules/@progress/kendo-charts/dist/es/common/constants.js","../node_modules/@progress/kendo-charts/dist/es/common/is-array.js","../node_modules/@progress/kendo-charts/dist/es/common/add-class.js","../node_modules/@progress/kendo-charts/dist/es/common/remove-class.js","../node_modules/@progress/kendo-drawing/dist/es/util/defined.js","../node_modules/@progress/kendo-charts/dist/es/common/align-path-to-pixel.js","../node_modules/@progress/kendo-charts/dist/es/common/clockwise.js","../node_modules/@progress/kendo-charts/dist/es/common/is-number.js","../node_modules/@progress/kendo-charts/dist/es/common/is-string.js","../node_modules/@progress/kendo-charts/dist/es/common/convertable-to-number.js","../node_modules/@progress/kendo-charts/dist/es/common/cycleUp.js","../node_modules/@progress/kendo-charts/dist/es/common/cycleDown.js","../node_modules/@progress/kendo-charts/dist/es/common/cycleIndex.js","../node_modules/@progress/kendo-charts/dist/es/common/is-function.js","../node_modules/@progress/kendo-charts/dist/es/common/deep-extend.js","../node_modules/@progress/kendo-charts/dist/es/common/is-object.js","../node_modules/@progress/kendo-charts/dist/es/common/style-value.js","../node_modules/@progress/kendo-charts/dist/es/common/element-styles.js","../node_modules/@progress/kendo-charts/dist/es/common/get-spacing.js","../node_modules/@progress/kendo-charts/dist/es/services/template-service.js","../node_modules/@progress/kendo-charts/dist/es/common/get-template.js","../node_modules/@progress/kendo-charts/dist/es/common/get-aria-template.js","../node_modules/@progress/kendo-charts/dist/es/common/getter.js","../node_modules/@progress/kendo-charts/dist/es/common/grep.js","../node_modules/@progress/kendo-charts/dist/es/common/has-classes.js","../node_modules/@progress/kendo-charts/dist/es/common/hash-map.js","../node_modules/@progress/kendo-charts/dist/es/common/in-array.js","../node_modules/@progress/kendo-drawing/dist/es/util/round.js","../node_modules/@progress/kendo-charts/dist/es/common/interpolate-value.js","../node_modules/@progress/kendo-charts/dist/es/common/instance-observer.js","../node_modules/@progress/kendo-charts/dist/es/common/map.js","../node_modules/@progress/kendo-drawing/dist/es/common/support.js","../node_modules/@progress/kendo-charts/dist/es/common/mousewheel-delta.js","../node_modules/@progress/kendo-drawing/dist/es/common/class.js","../node_modules/@progress/kendo-drawing/dist/es/common/log-to-console.js","../node_modules/@progress/kendo-drawing/dist/es/util/append.js","../node_modules/@progress/kendo-drawing/dist/es/util/arabic-to-roman.js","../node_modules/@progress/kendo-drawing/dist/es/util/create-promise.js","../node_modules/@progress/kendo-drawing/dist/es/util/definition-id.js","../node_modules/@progress/kendo-drawing/dist/es/util/constants.js","../node_modules/@progress/kendo-drawing/dist/es/util/deg.js","../node_modules/@progress/kendo-drawing/dist/es/util/encode-utf.js","../node_modules/@progress/kendo-drawing/dist/es/util/encode-base64.js","../node_modules/@progress/kendo-drawing/dist/es/util/event-coordinates.js","../node_modules/@progress/kendo-drawing/dist/es/util/event-element.js","../node_modules/@progress/kendo-drawing/dist/es/util/is-transparent.js","../node_modules/@progress/kendo-drawing/dist/es/util/last.js","../node_modules/@progress/kendo-drawing/dist/es/util/limit-value.js","../node_modules/@progress/kendo-drawing/dist/es/util/merge-sort.js","../node_modules/@progress/kendo-drawing/dist/es/util/now.js","../node_modules/@progress/kendo-drawing/dist/es/util/promise-all.js","../node_modules/@progress/kendo-drawing/dist/es/util/rad.js","../node_modules/@progress/kendo-drawing/dist/es/util/value-or-default.js","../node_modules/@progress/kendo-drawing/dist/es/util/bind-events.js","../node_modules/@progress/kendo-drawing/dist/es/util/element-offset.js","../node_modules/@progress/kendo-drawing/dist/es/util/element-styles.js","../node_modules/@progress/kendo-drawing/dist/es/util/element-size.js","../node_modules/@progress/kendo-drawing/dist/es/util/unbind-events.js","../node_modules/@progress/kendo-drawing/dist/es/util/element-padding.js","../node_modules/@progress/kendo-drawing/dist/es/geometry/matrix.js","../node_modules/@progress/kendo-drawing/dist/es/util/element-scale.js","../node_modules/@progress/kendo-drawing/dist/es/text-metrics/lru-cache.js","../node_modules/@progress/kendo-drawing/dist/es/text-metrics/util.js","../node_modules/@progress/kendo-drawing/dist/es/text-metrics/text-metrics.js","../node_modules/@progress/kendo-drawing/dist/es/text-metrics/measure-text.js","../node_modules/@progress/kendo-charts/dist/es/drawing-utils.js","../node_modules/@progress/kendo-charts/dist/es/common/font-loader.js","../node_modules/@progress/kendo-charts/dist/es/common/set-default-options.js","../node_modules/@progress/kendo-charts/dist/es/common/render-icon.js","../node_modules/@progress/kendo-charts/dist/es/common/is-plain-object.js","../node_modules/@progress/kendo-charts/dist/es/common/sparse-array-limits.js","../node_modules/@progress/kendo-charts/dist/es/common/find.js","../node_modules/@progress/kendo-charts/dist/es/common/element-scale.js","../node_modules/@progress/kendo-drawing/dist/es/common/color/named-colors.js","../node_modules/@progress/kendo-drawing/dist/es/common/color/parse-color.js","../node_modules/@progress/kendo-drawing/dist/es/common/color/color.js","../node_modules/@progress/kendo-charts/dist/es/common/auto-text-color.js","../node_modules/@progress/kendo-charts/dist/es/common/create-hash-set.js","../node_modules/@progress/kendo-charts/dist/es/common/default-error-handler.js","../node_modules/@progress/kendo-charts/dist/es/common/keys.js","../node_modules/@progress/kendo-charts/dist/es/common/has-own-property.js","../node_modules/@progress/kendo-charts/dist/es/common/matrix.js","../node_modules/@progress/kendo-charts/dist/es/common/event-map.js","../node_modules/@progress/kendo-charts/dist/es/core/utils/guid.js","../node_modules/@progress/kendo-charts/dist/es/common/event-utils.js","../node_modules/@progress/kendo-charts/dist/es/common/get-supported-features.js","../node_modules/@progress/kendo-charts/dist/es/common/noop.js","../node_modules/@progress/kendo-charts/dist/es/common/now.js","../node_modules/@progress/kendo-charts/dist/es/common/observable.js","../node_modules/@progress/kendo-charts/dist/es/common/user-events.js","../node_modules/@progress/kendo-charts/dist/es/core/utils/auto-major-unit.js","../node_modules/@progress/kendo-charts/dist/es/core/point.js","../node_modules/@progress/kendo-drawing/dist/es/core/has-observers.js","../node_modules/@progress/kendo-drawing/dist/es/mixins/with-accessors.js","../node_modules/@progress/kendo-drawing/dist/es/geometry/to-matrix.js","../node_modules/@progress/kendo-drawing/dist/es/geometry/point.js","../node_modules/@progress/kendo-drawing/dist/es/geometry/size.js","../node_modules/@progress/kendo-drawing/dist/es/geometry/rect.js","../node_modules/@progress/kendo-charts/dist/es/core/box.js","../node_modules/@progress/kendo-charts/dist/es/core/ring.js","../node_modules/@progress/kendo-charts/dist/es/core/sector.js","../node_modules/@progress/kendo-drawing/dist/es/geometry/constants.js","../node_modules/@progress/kendo-drawing/dist/es/geometry/math/close.js","../node_modules/@progress/kendo-drawing/dist/es/geometry/math/close-or-less.js","../node_modules/@progress/kendo-drawing/dist/es/geometry/math/ellipse-extreme-angles.js","../node_modules/@progress/kendo-drawing/dist/es/geometry/transformation.js","../node_modules/@progress/kendo-drawing/dist/es/geometry/transform.js","../node_modules/@progress/kendo-drawing/dist/es/geometry/arc.js","../node_modules/@progress/kendo-drawing/dist/es/geometry/math/line-intersection.js","../node_modules/@progress/kendo-drawing/dist/es/shapes/elements-array.js","../node_modules/@progress/kendo-drawing/dist/es/shapes/geometry-elements-array.js","../node_modules/@progress/kendo-drawing/dist/es/core/options-store.js","../node_modules/@progress/kendo-drawing/dist/es/core/constants.js","../node_modules/@progress/kendo-drawing/dist/es/shapes/element.js","../node_modules/@progress/kendo-drawing/dist/es/geometry/math/is-out-of-end-point.js","../node_modules/@progress/kendo-drawing/dist/es/geometry/math/calculate-curve-at.js","../node_modules/@progress/kendo-drawing/dist/es/geometry/math/to-cubic-polynomial.js","../node_modules/@progress/kendo-drawing/dist/es/geometry/math/complex-number.js","../node_modules/@progress/kendo-drawing/dist/es/geometry/math/solve-cubic-equation.js","../node_modules/@progress/kendo-drawing/dist/es/geometry/math/has-roots-in-range.js","../node_modules/@progress/kendo-drawing/dist/es/geometry/math/line-intersections-count.js","../node_modules/@progress/kendo-drawing/dist/es/mixins/with-points.js","../node_modules/@progress/kendo-drawing/dist/es/geometry/segment.js","../node_modules/@progress/kendo-drawing/dist/es/geometry/math/curve-intersections-count.js","../node_modules/@progress/kendo-drawing/dist/es/shapes/utils/points-to-curve.js","../node_modules/@progress/kendo-drawing/dist/es/mixins/paintable.js","../node_modules/@progress/kendo-drawing/dist/es/mixins/measurable.js","../node_modules/@progress/kendo-drawing/dist/es/parsing/shape-map.js","../node_modules/@progress/kendo-drawing/dist/es/parsing/parse-path.js","../node_modules/@progress/kendo-drawing/dist/es/shapes/utils/elements-bounding-box.js","../node_modules/@progress/kendo-drawing/dist/es/shapes/utils/elements-clippend-bounding-box.js","../node_modules/@progress/kendo-drawing/dist/es/shapes/path.js","../node_modules/@progress/kendo-charts/dist/es/core/shape-builder.js","../node_modules/@progress/kendo-drawing/dist/es/geometry/circle.js","../node_modules/@progress/kendo-drawing/dist/es/mixins/with-geometry.js","../node_modules/@progress/kendo-drawing/dist/es/shapes/circle.js","../node_modules/@progress/kendo-drawing/dist/es/mixins/traversable.js","../node_modules/@progress/kendo-drawing/dist/es/shapes/group.js","../node_modules/@progress/kendo-drawing/dist/es/animations/easing-functions.js","../node_modules/@progress/kendo-drawing/dist/es/common/animation-frame.js","../node_modules/@progress/kendo-drawing/dist/es/animations/animation-factory.js","../node_modules/@progress/kendo-drawing/dist/es/animations/animation.js","../node_modules/@progress/kendo-charts/dist/es/core/chart-element.js","../node_modules/@progress/kendo-charts/dist/es/core/box-element.js","../node_modules/@progress/kendo-charts/dist/es/core/utils/add-accessibility-attributes-to-visual.js","../node_modules/@progress/kendo-charts/dist/es/core/shape-element.js","../node_modules/@progress/kendo-drawing/dist/es/gradients/stops-array.js","../node_modules/@progress/kendo-drawing/dist/es/mixins/with-options.js","../node_modules/@progress/kendo-drawing/dist/es/gradients/gradient-stop.js","../node_modules/@progress/kendo-drawing/dist/es/gradients/gradient.js","../node_modules/@progress/kendo-drawing/dist/es/gradients/linear-gradient.js","../node_modules/@progress/kendo-drawing/dist/es/gradients/radial-gradient.js","../node_modules/@progress/kendo-charts/dist/es/core/gradients.js","../node_modules/@progress/kendo-charts/dist/es/core/utils/box-diff.js","../node_modules/@progress/kendo-charts/dist/es/core/root-element.js","../node_modules/@progress/kendo-charts/dist/es/core/float-element.js","../node_modules/@progress/kendo-drawing/dist/es/shapes/text.js","../node_modules/@progress/kendo-charts/dist/es/core/text.js","../node_modules/@progress/kendo-charts/dist/es/core/utils/rect-to-box.js","../node_modules/@progress/kendo-charts/dist/es/core/text-box.js","../node_modules/@progress/kendo-charts/dist/es/core/title.js","../node_modules/@progress/kendo-charts/dist/es/core/axis-label.js","../node_modules/@progress/kendo-charts/dist/es/core/note.js","../node_modules/@progress/kendo-charts/dist/es/services/intl-service.js","../node_modules/@progress/kendo-charts/dist/es/services/format-service.js","../node_modules/@progress/kendo-charts/dist/es/services/chart-service.js","../node_modules/@progress/kendo-charts/dist/es/services/dom-events-builder.js","../node_modules/@progress/kendo-charts/dist/es/core/utils/create-axis-tick.js","../node_modules/@progress/kendo-charts/dist/es/core/utils/create-axis-grid-line.js","../node_modules/@progress/kendo-charts/dist/es/core/axis.js","../node_modules/@progress/kendo-charts/dist/es/date-utils/constants.js","../node_modules/@progress/kendo-charts/dist/es/date-utils/absolute-date-diff.js","../node_modules/@progress/kendo-charts/dist/es/date-utils/add-ticks.js","../node_modules/@progress/kendo-charts/dist/es/date-utils/to-date.js","../node_modules/@progress/kendo-charts/dist/es/date-utils/add-duration.js","../node_modules/@progress/kendo-charts/dist/es/date-utils/start-of-week.js","../node_modules/@progress/kendo-charts/dist/es/date-utils/floor-date.js","../node_modules/@progress/kendo-charts/dist/es/date-utils/ceil-date.js","../node_modules/@progress/kendo-charts/dist/es/date-utils/date-comparer.js","../node_modules/@progress/kendo-charts/dist/es/date-utils/date-diff.js","../node_modules/@progress/kendo-charts/dist/es/date-utils/to-time.js","../node_modules/@progress/kendo-charts/dist/es/date-utils/date-equals.js","../node_modules/@progress/kendo-charts/dist/es/date-utils/date-index.js","../node_modules/@progress/kendo-charts/dist/es/date-utils/duration.js","../node_modules/@progress/kendo-charts/dist/es/date-utils/parse-date.js","../node_modules/@progress/kendo-charts/dist/es/date-utils/parse-dates.js","../node_modules/@progress/kendo-charts/dist/es/date-utils/first-day.js","../node_modules/@progress/kendo-charts/dist/es/core/category-axis.js","../node_modules/@progress/kendo-charts/dist/es/core/constants.js","../node_modules/@progress/kendo-charts/dist/es/core/date-category-axis.js","../node_modules/@progress/kendo-charts/dist/es/core/utils/floor.js","../node_modules/@progress/kendo-charts/dist/es/core/utils/ceil.js","../node_modules/@progress/kendo-charts/dist/es/core/utils/limit-coordinate.js","../node_modules/@progress/kendo-charts/dist/es/core/numeric-axis.js","../node_modules/@progress/kendo-charts/dist/es/core/utils/auto-axis-min.js","../node_modules/@progress/kendo-charts/dist/es/core/utils/auto-axis-max.js","../node_modules/@progress/kendo-charts/dist/es/core/date-value-axis.js","../node_modules/@progress/kendo-charts/dist/es/core/logarithmic-axis.js","../node_modules/@progress/kendo-charts/dist/es/core/mixins/grid-lines-mixin.js","../node_modules/@progress/kendo-charts/dist/es/core/radar-category-axis.js","../node_modules/@progress/kendo-charts/dist/es/core/polar-axis.js","../node_modules/@progress/kendo-charts/dist/es/core/mixins/radar-numeric-axis-mixin.js","../node_modules/@progress/kendo-charts/dist/es/core/radar-numeric-axis.js","../node_modules/@progress/kendo-charts/dist/es/core/radar-logarithmic-axis.js","../node_modules/@progress/kendo-charts/dist/es/core/curve-processor.js","../node_modules/@progress/kendo-charts/dist/es/chart/api-elements/chart-axis.js","../node_modules/@progress/kendo-charts/dist/es/chart/api-elements/find-axis-by-name.js","../node_modules/@progress/kendo-charts/dist/es/chart/api-elements/chart-pane.js","../node_modules/@progress/kendo-charts/dist/es/chart/api-elements/chart-plotarea.js","../node_modules/@progress/kendo-charts/dist/es/chart/utils/count-numbers.js","../node_modules/@progress/kendo-charts/dist/es/chart/aggregates/aggregates.js","../node_modules/@progress/kendo-charts/dist/es/chart/series-binder.js","../node_modules/@progress/kendo-charts/dist/es/chart/utils/get-field.js","../node_modules/@progress/kendo-charts/dist/es/chart/error-bars/error-range-calculator.js","../node_modules/@progress/kendo-charts/dist/es/chart/constants.js","../node_modules/@progress/kendo-charts/dist/es/chart/error-bars/error-bar-base.js","../node_modules/@progress/kendo-charts/dist/es/chart/error-bars/categorical-error-bar.js","../node_modules/@progress/kendo-charts/dist/es/chart/utils/any-has-z-index.js","../node_modules/@progress/kendo-charts/dist/es/chart/utils/append-if-not-null.js","../node_modules/@progress/kendo-charts/dist/es/chart/utils/are-numbers.js","../node_modules/@progress/kendo-charts/dist/es/chart/utils/segment-visible.js","../node_modules/@progress/kendo-charts/dist/es/chart/utils/bind-segments.js","../node_modules/@progress/kendo-charts/dist/es/chart/utils/categories-count.js","../node_modules/@progress/kendo-charts/dist/es/chart/utils/equals-ignore-case.js","../node_modules/@progress/kendo-charts/dist/es/chart/utils/eval-options.js","../node_modules/@progress/kendo-charts/dist/es/chart/utils/filter-series-by-type.js","../node_modules/@progress/kendo-charts/dist/es/chart/utils/parse-date-category.js","../node_modules/@progress/kendo-charts/dist/es/chart/utils/has-gradient-overlay.js","../node_modules/@progress/kendo-charts/dist/es/chart/utils/has-value.js","../node_modules/@progress/kendo-charts/dist/es/chart/utils/is-date-axis.js","../node_modules/@progress/kendo-charts/dist/es/chart/utils/single-item-or-array.js","../node_modules/@progress/kendo-charts/dist/es/chart/utils/create-out-of-range-points.js","../node_modules/@progress/kendo-charts/dist/es/chart/categorical-chart.js","../node_modules/@progress/kendo-charts/dist/es/chart/mixins/point-events-mixin.js","../node_modules/@progress/kendo-charts/dist/es/chart/mixins/note-mixin.js","../node_modules/@progress/kendo-charts/dist/es/chart/line-chart/line-point.js","../node_modules/@progress/kendo-charts/dist/es/chart/line-chart/line-segment.js","../node_modules/@progress/kendo-charts/dist/es/chart/line-chart/step-line-mixin.js","../node_modules/@progress/kendo-charts/dist/es/chart/line-chart/step-line-segment.js","../node_modules/@progress/kendo-charts/dist/es/chart/line-chart/spline-segment.js","../node_modules/@progress/kendo-charts/dist/es/chart/mixins/line-chart-mixin.js","../node_modules/@progress/kendo-charts/dist/es/chart/animations/clip-animation.js","../node_modules/@progress/kendo-charts/dist/es/chart/mixins/clip-animation-mixin.js","../node_modules/@progress/kendo-charts/dist/es/chart/line-chart/line-chart.js","../node_modules/@progress/kendo-charts/dist/es/chart/area-chart/area-segment.js","../node_modules/@progress/kendo-charts/dist/es/chart/area-chart/step-area-segment.js","../node_modules/@progress/kendo-charts/dist/es/chart/area-chart/spline-area-segment.js","../node_modules/@progress/kendo-charts/dist/es/chart/area-chart/area-chart.js","../node_modules/@progress/kendo-charts/dist/es/chart/axis-group-range-tracker.js","../node_modules/@progress/kendo-charts/dist/es/chart/bar-chart/bar-label.js","../node_modules/@progress/kendo-charts/dist/es/chart/mixins/accessibility-attributes-mixin.js","../node_modules/@progress/kendo-charts/dist/es/chart/bar-chart/bar.js","../node_modules/@progress/kendo-charts/dist/es/chart/layout/utils.js","../node_modules/@progress/kendo-charts/dist/es/chart/layout/cluster-layout.js","../node_modules/@progress/kendo-charts/dist/es/chart/layout/stack-wrap.js","../node_modules/@progress/kendo-charts/dist/es/chart/bar-chart/bar-chart.js","../node_modules/@progress/kendo-charts/dist/es/chart/candlestick-chart/candlestick.js","../node_modules/@progress/kendo-charts/dist/es/chart/candlestick-chart/candlestick-chart.js","../node_modules/@progress/kendo-charts/dist/es/chart/box-plot-chart/box-plot.js","../node_modules/@progress/kendo-charts/dist/es/chart/box-plot-chart/vertical-box-plot.js","../node_modules/@progress/kendo-charts/dist/es/chart/box-plot-chart/box-plot-chart.js","../node_modules/@progress/kendo-charts/dist/es/chart/error-bars/scatter-error-bar.js","../node_modules/@progress/kendo-charts/dist/es/chart/scatter-charts/scatter-chart.js","../node_modules/@progress/kendo-charts/dist/es/chart/bubble-chart/bubble.js","../node_modules/@progress/kendo-charts/dist/es/chart/bubble-chart/bubble-chart.js","../node_modules/@progress/kendo-charts/dist/es/chart/bullet-chart/target.js","../node_modules/@progress/kendo-charts/dist/es/chart/bullet-chart/bullet.js","../node_modules/@progress/kendo-charts/dist/es/chart/bullet-chart/bullet-chart.js","../node_modules/@progress/kendo-charts/dist/es/chart/tooltip/base-tooltip.js","../node_modules/@progress/kendo-charts/dist/es/chart/crosshair/crosshair-tooltip.js","../node_modules/@progress/kendo-charts/dist/es/chart/crosshair/crosshair.js","../node_modules/@progress/kendo-charts/dist/es/chart/chart-container.js","../node_modules/@progress/kendo-charts/dist/es/chart/pane.js","../node_modules/@progress/kendo-charts/dist/es/chart/plotarea/plotarea-base.js","../node_modules/@progress/kendo-charts/dist/es/chart/mixins/plotarea-events-mixin.js","../node_modules/@progress/kendo-charts/dist/es/chart/aggregates/series-aggregator.js","../node_modules/@progress/kendo-charts/dist/es/chart/aggregates/default-aggregates.js","../node_modules/@progress/kendo-charts/dist/es/chart/range-bar-chart/range-bar.js","../node_modules/@progress/kendo-charts/dist/es/chart/range-bar-chart/range-bar-chart.js","../node_modules/@progress/kendo-charts/dist/es/chart/range-area-chart/range-line-point.js","../node_modules/@progress/kendo-charts/dist/es/chart/range-area-chart/range-area-point.js","../node_modules/@progress/kendo-charts/dist/es/chart/range-area-chart/range-area-segment.js","../node_modules/@progress/kendo-charts/dist/es/chart/range-area-chart/spline-range-area-segment.js","../node_modules/@progress/kendo-charts/dist/es/chart/range-area-chart/step-range-area-segment.js","../node_modules/@progress/kendo-charts/dist/es/chart/range-area-chart/range-area-chart.js","../node_modules/@progress/kendo-charts/dist/es/chart/ohlc-chart/ohlc-point.js","../node_modules/@progress/kendo-charts/dist/es/chart/ohlc-chart/ohlc-chart.js","../node_modules/@progress/kendo-charts/dist/es/chart/waterfall-chart/waterfall-segment.js","../node_modules/@progress/kendo-charts/dist/es/chart/waterfall-chart/waterfall-chart.js","../node_modules/@progress/kendo-charts/dist/es/chart/trendlines/trendline-factory.js","../node_modules/@progress/kendo-charts/dist/es/chart/trendlines/calculate-slope.js","../node_modules/@progress/kendo-charts/dist/es/chart/trendlines/check-all-positive.js","../node_modules/@progress/kendo-charts/dist/es/chart/trendlines/get-trendline-data.js","../node_modules/@progress/kendo-charts/dist/es/chart/trendlines/exponential-trendline.js","../node_modules/@progress/kendo-charts/dist/es/chart/trendlines/linear-trendline.js","../node_modules/@progress/kendo-charts/dist/es/chart/trendlines/logarithmic-trendline.js","../node_modules/@progress/kendo-charts/dist/es/chart/trendlines/calculate-moving-average.js","../node_modules/@progress/kendo-charts/dist/es/chart/trendlines/moving-average.js","../node_modules/@progress/kendo-charts/dist/es/chart/trendlines/calculate-polynomial.js","../node_modules/@progress/kendo-charts/dist/es/chart/trendlines/polynomial-trendline.js","../node_modules/@progress/kendo-charts/dist/es/chart/trendlines/power-trendline.js","../node_modules/@progress/kendo-charts/dist/es/chart/trendlines/trendline-registry.js","../node_modules/@progress/kendo-charts/dist/es/chart/plotarea/categorical-plotarea.js","../node_modules/@progress/kendo-drawing/dist/es/common/observable.js","../node_modules/@progress/kendo-drawing/dist/es/core/surface.js","../node_modules/@progress/kendo-drawing/dist/es/core/base-node.js","../node_modules/@progress/kendo-drawing/dist/es/svg/utils/render-attribute.js","../node_modules/@progress/kendo-drawing/dist/es/svg/utils/render-all-attributes.js","../node_modules/@progress/kendo-drawing/dist/es/svg/utils/render-style.js","../node_modules/@progress/kendo-drawing/dist/es/svg/node-map.js","../node_modules/@progress/kendo-common/dist/es/util.js","../node_modules/@progress/kendo-common/dist/es/support.js","../node_modules/@progress/kendo-common/dist/es/accessors/getter.js","../node_modules/@progress/kendo-common/dist/es/parse-style.js","../node_modules/@progress/kendo-drawing/dist/es/util/element-set-styles-safe.js","../node_modules/@progress/kendo-drawing/dist/es/svg/constants.js","../node_modules/@progress/kendo-drawing/dist/es/svg/utils/render-svg.js","../node_modules/@progress/kendo-drawing/dist/es/common/html-encode.js","../node_modules/@progress/kendo-drawing/dist/es/svg/node.js","../node_modules/@progress/kendo-drawing/dist/es/svg/gradient-stop-node.js","../node_modules/@progress/kendo-drawing/dist/es/svg/gradient-node.js","../node_modules/@progress/kendo-drawing/dist/es/svg/linear-gradient-node.js","../node_modules/@progress/kendo-drawing/dist/es/svg/radial-gradient-node.js","../node_modules/@progress/kendo-drawing/dist/es/svg/pattern-node.js","../node_modules/@progress/kendo-drawing/dist/es/svg/clip-node.js","../node_modules/@progress/kendo-drawing/dist/es/svg/definition-node.js","../node_modules/@progress/kendo-drawing/dist/es/svg/root-node.js","../node_modules/@progress/kendo-drawing/dist/es/svg/path-node.js","../node_modules/@progress/kendo-drawing/dist/es/svg/arc-node.js","../node_modules/@progress/kendo-drawing/dist/es/svg/circle-node.js","../node_modules/@progress/kendo-drawing/dist/es/svg/group-node.js","../node_modules/@progress/kendo-drawing/dist/es/svg/image-node.js","../node_modules/@progress/kendo-drawing/dist/es/svg/multi-path-node.js","../node_modules/@progress/kendo-drawing/dist/es/svg/rect-node.js","../node_modules/@progress/kendo-drawing/dist/es/svg/text-node.js","../node_modules/@progress/kendo-drawing/dist/es/svg/surface.js","../node_modules/@progress/kendo-drawing/dist/es/canvas/node-map.js","../node_modules/@progress/kendo-drawing/dist/es/canvas/node.js","../node_modules/@progress/kendo-drawing/dist/es/canvas/group-node.js","../node_modules/@progress/kendo-drawing/dist/es/common/throttle.js","../node_modules/@progress/kendo-drawing/dist/es/canvas/root-node.js","../node_modules/@progress/kendo-drawing/dist/es/search/quad-root.js","../node_modules/@progress/kendo-drawing/dist/es/search/quad-node.js","../node_modules/@progress/kendo-drawing/dist/es/search/shapes-quad-tree.js","../node_modules/@progress/kendo-drawing/dist/es/canvas/surface-cursor.js","../node_modules/@progress/kendo-drawing/dist/es/canvas/utils/render-path.js","../node_modules/@progress/kendo-drawing/dist/es/canvas/path-node.js","../node_modules/@progress/kendo-drawing/dist/es/canvas/arc-node.js","../node_modules/@progress/kendo-drawing/dist/es/canvas/circle-node.js","../node_modules/@progress/kendo-drawing/dist/es/canvas/image-node.js","../node_modules/@progress/kendo-drawing/dist/es/canvas/multi-path-node.js","../node_modules/@progress/kendo-drawing/dist/es/canvas/rect-node.js","../node_modules/@progress/kendo-drawing/dist/es/canvas/text-node.js","../node_modules/@progress/kendo-drawing/dist/es/canvas/surface.js","../node_modules/@progress/kendo-drawing/dist/es/surface-factory.js","../node_modules/@progress/kendo-drawing/dist/es/surface.js","../node_modules/@progress/kendo-charts/dist/es/chart/highlight.js","../node_modules/@progress/kendo-charts/dist/es/chart/pan-and-zoom/accept-key.js","../node_modules/@progress/kendo-charts/dist/es/chart/pan-and-zoom/to-chart-axis-ranges.js","../node_modules/@progress/kendo-charts/dist/es/chart/pan-and-zoom/pannable.js","../node_modules/@progress/kendo-charts/dist/es/chart/pan-and-zoom/zoom-selection.js","../node_modules/@progress/kendo-charts/dist/es/chart/pan-and-zoom/mousewheel-zoom.js","../node_modules/@progress/kendo-drawing/dist/es/alignment/align-start.js","../node_modules/@progress/kendo-drawing/dist/es/alignment/align-start-reverse.js","../node_modules/@progress/kendo-drawing/dist/es/shapes/layout.js","../node_modules/@progress/kendo-drawing/dist/es/alignment/translate-to-point.js","../node_modules/@progress/kendo-charts/dist/es/chart/legend/legend-layout.js","../node_modules/@progress/kendo-charts/dist/es/chart/legend/legend-item-marker.js","../node_modules/@progress/kendo-charts/dist/es/chart/legend/legend-item-line-area.js","../node_modules/@progress/kendo-charts/dist/es/chart/legend/legend-item-line.js","../node_modules/@progress/kendo-charts/dist/es/chart/legend/legend-item-square.js","../node_modules/@progress/kendo-charts/dist/es/chart/legend/legend-item.js","../node_modules/@progress/kendo-charts/dist/es/chart/legend/legend.js","../node_modules/@progress/kendo-charts/dist/es/chart/plotarea/plotarea-factory.js","../node_modules/@progress/kendo-charts/dist/es/chart/selection.js","../node_modules/@progress/kendo-charts/dist/es/chart/tooltip/tooltip.js","../node_modules/@progress/kendo-charts/dist/es/chart/tooltip/shared-tooltip.js","../node_modules/@progress/kendo-charts/dist/es/chart/animations/bar-chart-animation.js","../node_modules/@progress/kendo-charts/dist/es/chart/animations/bubble-animation.js","../node_modules/@progress/kendo-charts/dist/es/chart/animations/fade-in-animation.js","../node_modules/@progress/kendo-charts/dist/es/chart/animations/pie-animation.js","../node_modules/@progress/kendo-charts/dist/es/chart/scatter-charts/scatter-line-chart.js","../node_modules/@progress/kendo-charts/dist/es/chart/trendlines/get-scatter-trendline-data.js","../node_modules/@progress/kendo-charts/dist/es/chart/trendlines/scatter-exponential-trendline.js","../node_modules/@progress/kendo-charts/dist/es/chart/trendlines/scatter-value-getter.js","../node_modules/@progress/kendo-charts/dist/es/chart/trendlines/scatter-linear-trendline.js","../node_modules/@progress/kendo-charts/dist/es/chart/trendlines/x-value-limits.js","../node_modules/@progress/kendo-charts/dist/es/chart/trendlines/scatter-logarithmic-trendline.js","../node_modules/@progress/kendo-charts/dist/es/chart/trendlines/scatter-moving-average.js","../node_modules/@progress/kendo-charts/dist/es/chart/trendlines/scatter-polynomial-trendline.js","../node_modules/@progress/kendo-charts/dist/es/chart/trendlines/scatter-power-trendline.js","../node_modules/@progress/kendo-charts/dist/es/chart/trendlines/scatter-trendline-registry.js","../node_modules/@progress/kendo-charts/dist/es/chart/plotarea/xy-plotarea.js","../node_modules/@progress/kendo-charts/dist/es/chart/pie-chart/pie-segment.js","../node_modules/@progress/kendo-charts/dist/es/chart/mixins/pie-chart-mixin.js","../node_modules/@progress/kendo-charts/dist/es/chart/pie-chart/pie-chart.js","../node_modules/@progress/kendo-charts/dist/es/chart/plotarea/pie-plotarea.js","../node_modules/@progress/kendo-charts/dist/es/chart/donut-chart/donut-segment.js","../node_modules/@progress/kendo-charts/dist/es/chart/donut-chart/donut-chart.js","../node_modules/@progress/kendo-charts/dist/es/chart/plotarea/donut-plotarea.js","../node_modules/@progress/kendo-charts/dist/es/chart/plotarea/polar-plotarea-base.js","../node_modules/@progress/kendo-charts/dist/es/chart/polar-scatter-chart/polar-scatter-chart.js","../node_modules/@progress/kendo-charts/dist/es/chart/polar-line-chart/polar-line-chart.js","../node_modules/@progress/kendo-charts/dist/es/chart/polar-area-chart/spline-polar-area-segment.js","../node_modules/@progress/kendo-charts/dist/es/chart/polar-area-chart/polar-area-segment.js","../node_modules/@progress/kendo-charts/dist/es/chart/polar-area-chart/polar-area-chart.js","../node_modules/@progress/kendo-charts/dist/es/chart/plotarea/polar-plotarea.js","../node_modules/@progress/kendo-charts/dist/es/chart/radar-line-chart/radar-line-chart.js","../node_modules/@progress/kendo-charts/dist/es/chart/radar-area-chart/spline-radar-area-segment.js","../node_modules/@progress/kendo-charts/dist/es/chart/radar-area-chart/radar-area-segment.js","../node_modules/@progress/kendo-charts/dist/es/chart/radar-area-chart/radar-area-chart.js","../node_modules/@progress/kendo-charts/dist/es/chart/radar-bar-chart/radar-segment.js","../node_modules/@progress/kendo-charts/dist/es/chart/layout/radar-cluster-layout.js","../node_modules/@progress/kendo-charts/dist/es/chart/layout/radar-stack-layout.js","../node_modules/@progress/kendo-charts/dist/es/chart/radar-bar-chart/radar-bar-chart.js","../node_modules/@progress/kendo-charts/dist/es/chart/plotarea/radar-plotarea.js","../node_modules/@progress/kendo-charts/dist/es/chart/funnel-chart/funnel-segment.js","../node_modules/@progress/kendo-charts/dist/es/chart/funnel-chart/funnel-chart.js","../node_modules/@progress/kendo-charts/dist/es/chart/funnel-chart/pyramid-chart.js","../node_modules/@progress/kendo-charts/dist/es/chart/plotarea/funnel-plotarea.js","../node_modules/@progress/kendo-charts/dist/es/chart/heatmap-chart/color-scale.js","../node_modules/@progress/kendo-charts/dist/es/chart/heatmap-chart/heatmap-point.js","../node_modules/@progress/kendo-charts/dist/es/chart/heatmap-chart/heatmap-chart.js","../node_modules/@progress/kendo-charts/dist/es/chart/plotarea/heatmap-plotarea.js","../node_modules/@progress/kendo-charts/dist/es/chart/register-charts.js","../node_modules/@progress/kendo-charts/dist/es/chart/chart.js","../node_modules/@progress/kendo-charts/dist/es/sparkline/shared-tooltip.js","../node_modules/@progress/kendo-charts/dist/es/sparkline/sparkline.js","../node_modules/@progress/kendo-charts/dist/es/stock/fade-out-animation.js","../node_modules/@progress/kendo-charts/dist/es/stock/navigator-hint.js","../node_modules/@progress/kendo-charts/dist/es/stock/constants.js","../node_modules/@progress/kendo-charts/dist/es/stock/navigator.js","../node_modules/@progress/kendo-charts/dist/es/stock/stock-chart.js","../node_modules/@progress/kendo-charts/dist/es/gauges/constants.js","../node_modules/@progress/kendo-charts/dist/es/gauges/utils/pad.js","../node_modules/@progress/kendo-charts/dist/es/gauges/utils/build-label-element.js","../node_modules/@progress/kendo-charts/dist/es/gauges/utils/get-range.js","../node_modules/@progress/kendo-charts/dist/es/gauges/utils/unpad.js","../node_modules/@progress/kendo-charts/dist/es/gauges/gauge.js","../node_modules/@progress/kendo-charts/dist/es/gauges/linear/linear-scale.js","../node_modules/@progress/kendo-charts/dist/es/gauges/pointer.js","../node_modules/@progress/kendo-charts/dist/es/gauges/linear/linear-pointer.js","../node_modules/@progress/kendo-charts/dist/es/gauges/linear/arrow-linear-pointer-animation.js","../node_modules/@progress/kendo-charts/dist/es/gauges/linear/arrow-linear-pointer.js","../node_modules/@progress/kendo-charts/dist/es/gauges/linear/bar-linear-pointer-animation.js","../node_modules/@progress/kendo-charts/dist/es/gauges/linear/bar-linear-pointer.js","../node_modules/@progress/kendo-charts/dist/es/gauges/linear/linear-gauge.js","../node_modules/@progress/kendo-drawing/dist/es/shapes/arc.js","../node_modules/@progress/kendo-charts/dist/es/gauges/radial/radial-scale.js","../node_modules/@progress/kendo-charts/dist/es/gauges/radial/radial-pointer-animation.js","../node_modules/@progress/kendo-charts/dist/es/gauges/radial/radial-pointer.js","../node_modules/@progress/kendo-charts/dist/es/gauges/radial/radial-gauge.js","../node_modules/@progress/kendo-charts/dist/es/gauges/arc/arc-scale.js","../node_modules/@progress/kendo-charts/dist/es/gauges/arc/range-pointer-animation.js","../node_modules/@progress/kendo-charts/dist/es/gauges/arc/range-pointer.js","../node_modules/@progress/kendo-charts/dist/es/gauges/arc/arc-gauge.js","../node_modules/@progress/kendo-charts/dist/es/gauges/circular/circular-gauge.js","../node_modules/@progress/kendo-charts/dist/es/barcode/encodings/encoding.js","../node_modules/@progress/kendo-charts/dist/es/barcode/encodings/code11.js","../node_modules/@progress/kendo-charts/dist/es/barcode/encodings/code39.js","../node_modules/@progress/kendo-charts/dist/es/barcode/encodings/code39-extended.js","../node_modules/@progress/kendo-charts/dist/es/barcode/encodings/code93.js","../node_modules/@progress/kendo-charts/dist/es/barcode/encodings/code93-extended.js","../node_modules/@progress/kendo-charts/dist/es/barcode/encodings/postnet.js","../node_modules/@progress/kendo-charts/dist/es/barcode/encodings/code128.js","../node_modules/@progress/kendo-charts/dist/es/barcode/encodings/msi.js","../node_modules/@progress/kendo-charts/dist/es/barcode/encodings/ean13.js","../node_modules/@progress/kendo-charts/dist/es/barcode/encodings/ean8.js","../node_modules/@progress/kendo-charts/dist/es/barcode/encodings/main.js","../node_modules/@progress/kendo-charts/dist/es/barcode/surface-size.js","../node_modules/@progress/kendo-charts/dist/es/barcode/barcode.js","../node_modules/@progress/kendo-drawing/dist/es/shapes/image.js","../node_modules/@progress/kendo-charts/dist/es/qrcode/utils.js","../node_modules/@progress/kendo-charts/dist/es/qrcode/encodings/free-cell-visitor.js","../node_modules/@progress/kendo-charts/dist/es/qrcode/encodings/encoding-result.js","../node_modules/@progress/kendo-charts/dist/es/qrcode/encodings/encoders/iso-encoder.js","../node_modules/@progress/kendo-charts/dist/es/qrcode/encodings/encoding.js","../node_modules/@progress/kendo-charts/dist/es/qrcode/encodings/data-modes/qr-data-mode.js","../node_modules/@progress/kendo-charts/dist/es/qrcode/encodings/data-modes/numeric-data-mode.js","../node_modules/@progress/kendo-charts/dist/es/qrcode/encodings/data-modes/alpha-numeric-data-mode.js","../node_modules/@progress/kendo-charts/dist/es/qrcode/encodings/data-modes/byte-data-mode.js","../node_modules/@progress/kendo-charts/dist/es/qrcode/encodings/data-modes/data-mode-instances.js","../node_modules/@progress/kendo-charts/dist/es/qrcode/encodings/encoders/utf8-encoder.js","../node_modules/@progress/kendo-charts/dist/es/qrcode/encodings/version-codewords.js","../node_modules/@progress/kendo-charts/dist/es/qrcode/qrcode.js","../node_modules/@progress/kendo-charts/dist/es/map/datums.js","../node_modules/@progress/kendo-charts/dist/es/map/location.js","../node_modules/@progress/kendo-charts/dist/es/map/crs.js","../node_modules/@progress/kendo-charts/dist/es/map/utils.js","../node_modules/@progress/kendo-charts/dist/es/map/attribution.js","../node_modules/@progress/kendo-charts/dist/es/map/navigator.js","../node_modules/@progress/kendo-charts/dist/es/map/zoom.js","../node_modules/@progress/kendo-charts/dist/es/map/extent.js","../node_modules/@progress/kendo-charts/dist/es/map/constants.js","../node_modules/@progress/kendo-charts/dist/es/map/tooltip/tooltip.js","../node_modules/@progress/kendo-charts/dist/es/map/layers/layer.js","../node_modules/@progress/kendo-charts/dist/es/map/layers/tile.js","../node_modules/@progress/kendo-charts/dist/es/map/scroller/draggable.js","../node_modules/@progress/kendo-charts/dist/es/map/layers/shape.js","../node_modules/@progress/kendo-charts/dist/es/map/layers/bubble.js","../node_modules/@progress/kendo-charts/dist/es/map/layers/marker.js","../node_modules/@progress/kendo-charts/dist/es/map/scroller/fx.js","../node_modules/@progress/kendo-charts/dist/es/map/scroller/scroller.js","../node_modules/@progress/kendo-charts/dist/es/services/map-service.js","../node_modules/@progress/kendo-charts/dist/es/map/map.js","../node_modules/@progress/kendo-charts/dist/es/sankey/calculation.js","../node_modules/@progress/kendo-charts/dist/es/sankey/element.js","../node_modules/@progress/kendo-charts/dist/es/sankey/node.js","../node_modules/@progress/kendo-charts/dist/es/sankey/link.js","../node_modules/@progress/kendo-charts/dist/es/sankey/label.js","../node_modules/@progress/kendo-charts/dist/es/sankey/title.js","../node_modules/@progress/kendo-charts/dist/es/sankey/legend.js","../node_modules/@progress/kendo-charts/dist/es/sankey/sankey.js","../node_modules/@progress/kendo-charts/dist/es/chart-wizard/state.js","../node_modules/@progress/kendo-charts/dist/es/chart-wizard/messages.js","../node_modules/@progress/kendo-charts/dist/es/chart/base-theme.js","../node_modules/@progress/kendo-charts/dist/es/chart-wizard.js","../node_modules/@progress/kendo-charts/dist/es/chart-wizard/get-wizard-data-from-data-rows.js","../node_modules/@progress/kendo-react-charts/utils/index.mjs","../node_modules/@progress/kendo-react-charts/events/base-event.mjs","../node_modules/@progress/kendo-react-charts/events/preventable-event.mjs","../node_modules/@progress/kendo-react-charts/events/drilldown-event.mjs","../node_modules/@progress/kendo-react-charts/events/chart-event-builder.mjs","../node_modules/@progress/kendo-react-charts/events/axis-label-click-event.mjs","../node_modules/@progress/kendo-react-charts/events/drag-event.mjs","../node_modules/@progress/kendo-react-charts/events/drag-end-event.mjs","../node_modules/@progress/kendo-react-charts/events/drag-start-event.mjs","../node_modules/@progress/kendo-react-charts/events/legend-item-hover-event.mjs","../node_modules/@progress/kendo-react-charts/events/legend-item-click-event.mjs","../node_modules/@progress/kendo-react-charts/events/legend-item-leave-event.mjs","../node_modules/@progress/kendo-react-charts/events/navigator-filter-event.mjs","../node_modules/@progress/kendo-react-charts/events/note-click-event.mjs","../node_modules/@progress/kendo-react-charts/events/note-hover-event.mjs","../node_modules/@progress/kendo-react-charts/events/plot-area-click-event.mjs","../node_modules/@progress/kendo-react-charts/events/plot-area-hover-event.mjs","../node_modules/@progress/kendo-react-charts/events/render-event.mjs","../node_modules/@progress/kendo-react-charts/events/select-event.mjs","../node_modules/@progress/kendo-react-charts/events/select-end-event.mjs","../node_modules/@progress/kendo-react-charts/events/select-start-event.mjs","../node_modules/@progress/kendo-react-charts/events/series-click-event.mjs","../node_modules/@progress/kendo-react-charts/events/series-hover-event.mjs","../node_modules/@progress/kendo-react-charts/events/zoom-event.mjs","../node_modules/@progress/kendo-react-charts/events/zoom-end-event.mjs","../node_modules/@progress/kendo-react-charts/events/zoom-start-event.mjs","../node_modules/@progress/kendo-react-charts/events/dom-event.mjs","../node_modules/@progress/kendo-react-charts/theming/theme-service.mjs","../node_modules/@progress/kendo-react-charts/store/store.mjs","../node_modules/@progress/kendo-react-charts/store/reducer.mjs","../node_modules/@progress/kendo-react-charts/tooltip/Point.mjs","../node_modules/@progress/kendo-react-charts/tooltip/SharedTooltipContent.mjs","../node_modules/@progress/kendo-react-charts/ChartContext.mjs","../node_modules/@progress/kendo-react-charts/tooltip/Popup.mjs","../node_modules/@progress/kendo-react-charts/tooltip/Series.mjs","../node_modules/@progress/kendo-react-charts/Container.mjs","../node_modules/@progress/kendo-react-charts/tooltip/Crosshair.mjs","../node_modules/@progress/kendo-react-charts/tooltip/CrosshairContainer.mjs","../node_modules/@progress/kendo-react-charts/package-metadata.mjs","../node_modules/@progress/kendo-react-charts/BaseChart.mjs","../node_modules/@progress/kendo-react-charts/DonutCenter.mjs","../node_modules/@progress/kendo-react-charts/Chart.mjs","../node_modules/@progress/kendo-react-charts/components/base/ConfigurationComponent.mjs","../node_modules/@progress/kendo-react-charts/components/Legend.mjs","../node_modules/@progress/kendo-react-charts/components/base/CollectionConfigurationComponent.mjs","../node_modules/@progress/kendo-react-charts/components/SeriesItem.mjs","../node_modules/@progress/kendo-react-charts/components/Series.mjs","common/links/OpggsApplicationLinkView.tsx","webpack://neats-public-portal/./src/common/help/HelpView.module.css?daac","common/help/HelpView.tsx","opggs/application/opggsApplicationTracking/components/OpggsApplicationTrackingListView.tsx","opggs/application/opggsApplicationTracking/components/OpggsApplicationTrackingController.tsx","opggs/application/opggsApplicationTrackingDetails/components/OpggsApplicationTrackingDetailsView.tsx","opggs/application/opggsApplicationTrackingDetails/components/OpggsApplicationTrackingDetailsController.tsx","common/links/LicenceLinkView.tsx","oei/licence/search/components/LicenceSearchListView.tsx","oei/licence/search/components/LicenceSearchController.tsx","oei/licence/details/components/views/LicenceSummaryRelatedLicencesField.tsx","oei/licence/details/components/views/LicenceSummaryView.tsx","oei/licence/details/components/views/LicenceHolderView.tsx","open/licence/openLicenceHelper.tsx","oei/licence/details/licenceDetailsHelper.tsx","oei/licence/details/components/views/MemorialView.tsx","oei/licence/details/components/views/LicenceDetailsView.tsx","oei/licence/details/components/LicenceDetailsController.tsx","map/components/MapController.tsx","open/title/components/OpenTitleController.tsx","open/licence/components/OpenLicenceController.tsx","common/links/OeiApplicationLinkView.tsx","oei/application/oeiApplicationTracking/components/OeiApplicationTrackingListView.tsx","oei/application/oeiApplicationTracking/components/OeiApplicationTrackingController.tsx","oei/application/oeiApplicationTrackingDetails/components/OeiApplicationTrackingDetailsView.tsx","oei/application/oeiApplicationTrackingDetails/components/OeiApplicationTrackingDetailsController.tsx","opggs/storageFormation/storageFormationsList/components/StorageFormationsListView.tsx","opggs/storageFormation/storageFormationsList/components/StorageFormationsListController.tsx","common/shell/PageLayout.tsx","../node_modules/@progress/kendo-react-layout/panelbar/PanelBarItem.mjs","../node_modules/@progress/kendo-react-layout/panelbar/interfaces/NavigationAction.mjs","../node_modules/@progress/kendo-react-layout/panelbar/util.mjs","../node_modules/@progress/kendo-react-layout/panelbar/PanelBar.mjs","nopims/shell/NopimsLhsNav.tsx","../node_modules/react-icons/lib/iconsManifest.mjs","../node_modules/react-icons/lib/iconContext.mjs","../node_modules/react-icons/lib/iconBase.mjs","../node_modules/react-icons/bs/index.mjs","common/selectedItems/SelectedItems.tsx","nopims/basket/summary/Controller.tsx","nopims/shell/NopimsPageLayout.tsx","common/odata/helper.ts","common/odata/ODataCopyLinkButton.tsx","nopims/home/Controller.tsx","common/odata/ODataAction.tsx","common/selectedItems/SelectedItemsHelper.ts","../node_modules/react-icons/io5/index.mjs","../node_modules/@progress/kendo-react-data-tools/filter/filters/DateFilter.mjs","../node_modules/@progress/kendo-react-data-tools/filter/filters/NumericFilter.mjs","../node_modules/@progress/kendo-react-data-tools/filter/filters/EnumFilter.mjs","../node_modules/@progress/kendo-react-data-tools/filter/filters/BooleanFilter.mjs","../node_modules/@progress/kendo-react-data-tools/filter/operators.mjs","common/validation/SimpleValidationMessageView.tsx","common/odata/ODataReader.tsx","common/stringHelper.ts","common/commentSummary/commentSummaryView.tsx","../node_modules/@progress/kendo-react-buttons/util.mjs","../node_modules/@progress/kendo-react-buttons/toolbar/Toolbar.mjs","../node_modules/@progress/kendo-react-buttons/ButtonGroup.mjs","../node_modules/@progress/kendo-react-buttons/toolbar/tools/ToolbarItem.mjs","../node_modules/@progress/kendo-react-data-tools/filter/Expression.mjs","../node_modules/@progress/kendo-react-data-tools/filter/Group.mjs","../node_modules/@progress/kendo-react-data-tools/filter/Filter.mjs","common/kendoGrid/GridFilter.tsx","common/kendoGrid/GridFilterOptions.ts","common/kendoGrid/GridFilterTextBoxFilter.tsx","nopims/wells/wellSearch/Controller.tsx","common/externalLink/DownloadLinkView.tsx","nopims/wells/reports/Controller.tsx","nopims/wells/slidesAndResidues/Controller.tsx","nopims/wells/coreSamples/Controller.tsx","nopims/wells/Controller.tsx","nopims/surveys/surveySearch/Controller.tsx","nopims/surveys/reports/Controller.tsx","nopims/surveys/surveyData/Controller.tsx","nopims/surveys/seismicLines/Controller.tsx","nopims/surveys/Controller.tsx","common/listSummary/listSummaryView.tsx","nopims/reprocessing/reprocessingSearch/Controller.tsx","nopims/reprocessing/reports/Controller.tsx","nopims/reprocessing/surveyData/Controller.tsx","nopims/reprocessing/Controller.tsx","nopims/releasedDocuments/documentSearch/Controller.tsx","nopims/releasedDocuments/Controller.tsx","nopims/coreLibrary/coreLibrarySearch/Controller.tsx","nopims/gisMap/Controller.tsx","common/alerts/AlertsModel.tsx","common/alerts/AlertsHelper.tsx","common/alerts/AlertsView.tsx","common/alerts/StatusMessagesAlertsView.tsx","common/alerts/ConflictAlertView.tsx","common/shell/TaskLayout.tsx","common/validation/ValidationModel.tsx","nopims/feedback/models/models.tsx","../node_modules/@progress/kendo-react-dropdowns/common/SearchBar.mjs","../node_modules/@progress/kendo-react-dropdowns/common/ClearButton.mjs","../node_modules/@progress/kendo-react-dropdowns/common/withCustomComponent.mjs","../node_modules/@progress/kendo-react-dropdowns/ComboBox/ComboBox.mjs","common/kendo/KendoComboBox.tsx","common/kendo/KendoDropDownList.tsx","common/kendo/KendoLargeComboBox.tsx","common/validation/ValidationMessageView.tsx","nopims/feedback/views/FeedbackCreateView.tsx","nopims/feedback/views/FeedbackCreateSubmittedView.tsx","nopims/feedback/Controller.tsx","nopims/feedback/actions.tsx","nopims/feedback/models/validator.tsx","nopims/coreLibrary/coreCuttingsRequest/models/models.tsx","common/kendo/KendoNumericTextBox.tsx","../node_modules/@progress/kendo-react-buttons/Chip/chip-list-contexts.mjs","../node_modules/@progress/kendo-react-buttons/Chip/focus-reducer.mjs","../node_modules/@progress/kendo-react-buttons/Chip/data-reducer.mjs","../node_modules/@progress/kendo-react-buttons/Chip/selection-reducer.mjs","../node_modules/@progress/kendo-react-buttons/Chip/Chip.mjs","../node_modules/@progress/kendo-react-dropdowns/MultiSelect/TagList.mjs","../node_modules/@progress/kendo-react-dropdowns/common/settings.mjs","../node_modules/@progress/kendo-react-dropdowns/common/AdaptiveMode.mjs","../node_modules/@progress/kendo-react-dropdowns/MultiSelect/MultiSelect.mjs","nopims/coreLibrary/coreCuttingsRequest/addSample/models.tsx","nopims/coreLibrary/coreCuttingsRequest/addSample/Controller.tsx","nopims/coreLibrary/coreCuttingsRequest/addSample/validator.tsx","nopims/coreLibrary/coreCuttingsRequest/views/CoreCuttingsRequestCreateView.tsx","nopims/coreLibrary/coreCuttingsRequest/views/CoreCuttingsRequestCreateSubmittedView.tsx","nopims/coreLibrary/coreCuttingsRequest/Controller.tsx","nopims/coreLibrary/coreCuttingsRequest/actions.tsx","nopims/coreLibrary/coreCuttingsRequest/models/validator.tsx","nopims/basket/details/BasketView.tsx","nopims/basket/submit/models/models.tsx","nopims/basket/submit/SubmitViewDetails.tsx","nopims/basket/submit/SubmitView.tsx","nopims/basket/submit/submitActions.ts","nopims/basket/submit/models/validator.tsx","nopims/basket/details/Controller.tsx","nopims/routeBuilder.tsx","App.tsx","infrastructure/routeBuilder.tsx","infrastructure/AnalyticsHelper.tsx","index.tsx"],"sourcesContent":["'use strict';\n\nvar reactIs = require('react-is');\n\n/**\n * Copyright 2015, Yahoo! Inc.\n * Copyrights licensed under the New BSD License. See the accompanying LICENSE file for terms.\n */\nvar REACT_STATICS = {\n childContextTypes: true,\n contextType: true,\n contextTypes: true,\n defaultProps: true,\n displayName: true,\n getDefaultProps: true,\n getDerivedStateFromError: true,\n getDerivedStateFromProps: true,\n mixins: true,\n propTypes: true,\n type: true\n};\nvar KNOWN_STATICS = {\n name: true,\n length: true,\n prototype: true,\n caller: true,\n callee: true,\n arguments: true,\n arity: true\n};\nvar FORWARD_REF_STATICS = {\n '$$typeof': true,\n render: true,\n defaultProps: true,\n displayName: true,\n propTypes: true\n};\nvar MEMO_STATICS = {\n '$$typeof': true,\n compare: true,\n defaultProps: true,\n displayName: true,\n propTypes: true,\n type: true\n};\nvar TYPE_STATICS = {};\nTYPE_STATICS[reactIs.ForwardRef] = FORWARD_REF_STATICS;\nTYPE_STATICS[reactIs.Memo] = MEMO_STATICS;\n\nfunction getStatics(component) {\n // React v16.11 and below\n if (reactIs.isMemo(component)) {\n return MEMO_STATICS;\n } // React v16.12 and above\n\n\n return TYPE_STATICS[component['$$typeof']] || REACT_STATICS;\n}\n\nvar defineProperty = Object.defineProperty;\nvar getOwnPropertyNames = Object.getOwnPropertyNames;\nvar getOwnPropertySymbols = Object.getOwnPropertySymbols;\nvar getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\nvar getPrototypeOf = Object.getPrototypeOf;\nvar objectPrototype = Object.prototype;\nfunction hoistNonReactStatics(targetComponent, sourceComponent, blacklist) {\n if (typeof sourceComponent !== 'string') {\n // don't hoist over string (html) components\n if (objectPrototype) {\n var inheritedComponent = getPrototypeOf(sourceComponent);\n\n if (inheritedComponent && inheritedComponent !== objectPrototype) {\n hoistNonReactStatics(targetComponent, inheritedComponent, blacklist);\n }\n }\n\n var keys = getOwnPropertyNames(sourceComponent);\n\n if (getOwnPropertySymbols) {\n keys = keys.concat(getOwnPropertySymbols(sourceComponent));\n }\n\n var targetStatics = getStatics(targetComponent);\n var sourceStatics = getStatics(sourceComponent);\n\n for (var i = 0; i < keys.length; ++i) {\n var key = keys[i];\n\n if (!KNOWN_STATICS[key] && !(blacklist && blacklist[key]) && !(sourceStatics && sourceStatics[key]) && !(targetStatics && targetStatics[key])) {\n var descriptor = getOwnPropertyDescriptor(sourceComponent, key);\n\n try {\n // Avoid failures from read-only properties\n defineProperty(targetComponent, key, descriptor);\n } catch (e) {}\n }\n }\n }\n\n return targetComponent;\n}\n\nmodule.exports = hoistNonReactStatics;\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\n/**\n * Use invariant() to assert state which your program assumes to be true.\n *\n * Provide sprintf-style format (only %s is supported) and arguments\n * to provide information about what broke and what you were\n * expecting.\n *\n * The invariant message will be stripped in production, but the invariant\n * will remain to ensure logic does not differ in production.\n */\n\nvar invariant = function(condition, format, a, b, c, d, e, f) {\n if (process.env.NODE_ENV !== 'production') {\n if (format === undefined) {\n throw new Error('invariant requires an error message argument');\n }\n }\n\n if (!condition) {\n var error;\n if (format === undefined) {\n error = new Error(\n 'Minified exception occurred; use the non-minified dev environment ' +\n 'for the full error message and additional helpful warnings.'\n );\n } else {\n var args = [a, b, c, d, e, f];\n var argIndex = 0;\n error = new Error(\n format.replace(/%s/g, function() { return args[argIndex++]; })\n );\n error.name = 'Invariant Violation';\n }\n\n error.framesToPop = 1; // we don't care about invariant's own frame\n throw error;\n }\n};\n\nmodule.exports = invariant;\n","module.exports = Array.isArray || function (arr) {\n return Object.prototype.toString.call(arr) == '[object Array]';\n};\n","exports = module.exports = stringify\nexports.getSerialize = serializer\n\nfunction stringify(obj, replacer, spaces, cycleReplacer) {\n return JSON.stringify(obj, serializer(replacer, cycleReplacer), spaces)\n}\n\nfunction serializer(replacer, cycleReplacer) {\n var stack = [], keys = []\n\n if (cycleReplacer == null) cycleReplacer = function(key, value) {\n if (stack[0] === value) return \"[Circular ~]\"\n return \"[Circular ~.\" + keys.slice(0, stack.indexOf(value)).join(\".\") + \"]\"\n }\n\n return function(key, value) {\n if (stack.length > 0) {\n var thisPos = stack.indexOf(this)\n ~thisPos ? stack.splice(thisPos + 1) : stack.push(this)\n ~thisPos ? keys.splice(thisPos, Infinity, key) : keys.push(key)\n if (~stack.indexOf(value)) value = cycleReplacer.call(this, key, value)\n }\n else stack.push(value)\n\n return replacer == null ? value : replacer.call(this, key, value)\n }\n}\n","var getNative = require('./_getNative'),\n root = require('./_root');\n\n/* Built-in method references that are verified to be native. */\nvar DataView = getNative(root, 'DataView');\n\nmodule.exports = DataView;\n","var hashClear = require('./_hashClear'),\n hashDelete = require('./_hashDelete'),\n hashGet = require('./_hashGet'),\n hashHas = require('./_hashHas'),\n hashSet = require('./_hashSet');\n\n/**\n * Creates a hash object.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction Hash(entries) {\n var index = -1,\n length = entries == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n}\n\n// Add methods to `Hash`.\nHash.prototype.clear = hashClear;\nHash.prototype['delete'] = hashDelete;\nHash.prototype.get = hashGet;\nHash.prototype.has = hashHas;\nHash.prototype.set = hashSet;\n\nmodule.exports = Hash;\n","var listCacheClear = require('./_listCacheClear'),\n listCacheDelete = require('./_listCacheDelete'),\n listCacheGet = require('./_listCacheGet'),\n listCacheHas = require('./_listCacheHas'),\n listCacheSet = require('./_listCacheSet');\n\n/**\n * Creates an list cache object.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction ListCache(entries) {\n var index = -1,\n length = entries == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n}\n\n// Add methods to `ListCache`.\nListCache.prototype.clear = listCacheClear;\nListCache.prototype['delete'] = listCacheDelete;\nListCache.prototype.get = listCacheGet;\nListCache.prototype.has = listCacheHas;\nListCache.prototype.set = listCacheSet;\n\nmodule.exports = ListCache;\n","var getNative = require('./_getNative'),\n root = require('./_root');\n\n/* Built-in method references that are verified to be native. */\nvar Map = getNative(root, 'Map');\n\nmodule.exports = Map;\n","var mapCacheClear = require('./_mapCacheClear'),\n mapCacheDelete = require('./_mapCacheDelete'),\n mapCacheGet = require('./_mapCacheGet'),\n mapCacheHas = require('./_mapCacheHas'),\n mapCacheSet = require('./_mapCacheSet');\n\n/**\n * Creates a map cache object to store key-value pairs.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction MapCache(entries) {\n var index = -1,\n length = entries == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n}\n\n// Add methods to `MapCache`.\nMapCache.prototype.clear = mapCacheClear;\nMapCache.prototype['delete'] = mapCacheDelete;\nMapCache.prototype.get = mapCacheGet;\nMapCache.prototype.has = mapCacheHas;\nMapCache.prototype.set = mapCacheSet;\n\nmodule.exports = MapCache;\n","var getNative = require('./_getNative'),\n root = require('./_root');\n\n/* Built-in method references that are verified to be native. */\nvar Promise = getNative(root, 'Promise');\n\nmodule.exports = Promise;\n","var getNative = require('./_getNative'),\n root = require('./_root');\n\n/* Built-in method references that are verified to be native. */\nvar Set = getNative(root, 'Set');\n\nmodule.exports = Set;\n","var ListCache = require('./_ListCache'),\n stackClear = require('./_stackClear'),\n stackDelete = require('./_stackDelete'),\n stackGet = require('./_stackGet'),\n stackHas = require('./_stackHas'),\n stackSet = require('./_stackSet');\n\n/**\n * Creates a stack cache object to store key-value pairs.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction Stack(entries) {\n var data = this.__data__ = new ListCache(entries);\n this.size = data.size;\n}\n\n// Add methods to `Stack`.\nStack.prototype.clear = stackClear;\nStack.prototype['delete'] = stackDelete;\nStack.prototype.get = stackGet;\nStack.prototype.has = stackHas;\nStack.prototype.set = stackSet;\n\nmodule.exports = Stack;\n","var root = require('./_root');\n\n/** Built-in value references. */\nvar Symbol = root.Symbol;\n\nmodule.exports = Symbol;\n","var root = require('./_root');\n\n/** Built-in value references. */\nvar Uint8Array = root.Uint8Array;\n\nmodule.exports = Uint8Array;\n","var getNative = require('./_getNative'),\n root = require('./_root');\n\n/* Built-in method references that are verified to be native. */\nvar WeakMap = getNative(root, 'WeakMap');\n\nmodule.exports = WeakMap;\n","/**\n * A specialized version of `_.forEach` for arrays without support for\n * iteratee shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array} Returns `array`.\n */\nfunction arrayEach(array, iteratee) {\n var index = -1,\n length = array == null ? 0 : array.length;\n\n while (++index < length) {\n if (iteratee(array[index], index, array) === false) {\n break;\n }\n }\n return array;\n}\n\nmodule.exports = arrayEach;\n","/**\n * A specialized version of `_.filter` for arrays without support for\n * iteratee shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} predicate The function invoked per iteration.\n * @returns {Array} Returns the new filtered array.\n */\nfunction arrayFilter(array, predicate) {\n var index = -1,\n length = array == null ? 0 : array.length,\n resIndex = 0,\n result = [];\n\n while (++index < length) {\n var value = array[index];\n if (predicate(value, index, array)) {\n result[resIndex++] = value;\n }\n }\n return result;\n}\n\nmodule.exports = arrayFilter;\n","var baseTimes = require('./_baseTimes'),\n isArguments = require('./isArguments'),\n isArray = require('./isArray'),\n isBuffer = require('./isBuffer'),\n isIndex = require('./_isIndex'),\n isTypedArray = require('./isTypedArray');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Creates an array of the enumerable property names of the array-like `value`.\n *\n * @private\n * @param {*} value The value to query.\n * @param {boolean} inherited Specify returning inherited property names.\n * @returns {Array} Returns the array of property names.\n */\nfunction arrayLikeKeys(value, inherited) {\n var isArr = isArray(value),\n isArg = !isArr && isArguments(value),\n isBuff = !isArr && !isArg && isBuffer(value),\n isType = !isArr && !isArg && !isBuff && isTypedArray(value),\n skipIndexes = isArr || isArg || isBuff || isType,\n result = skipIndexes ? baseTimes(value.length, String) : [],\n length = result.length;\n\n for (var key in value) {\n if ((inherited || hasOwnProperty.call(value, key)) &&\n !(skipIndexes && (\n // Safari 9 has enumerable `arguments.length` in strict mode.\n key == 'length' ||\n // Node.js 0.10 has enumerable non-index properties on buffers.\n (isBuff && (key == 'offset' || key == 'parent')) ||\n // PhantomJS 2 has enumerable non-index properties on typed arrays.\n (isType && (key == 'buffer' || key == 'byteLength' || key == 'byteOffset')) ||\n // Skip index properties.\n isIndex(key, length)\n ))) {\n result.push(key);\n }\n }\n return result;\n}\n\nmodule.exports = arrayLikeKeys;\n","/**\n * Appends the elements of `values` to `array`.\n *\n * @private\n * @param {Array} array The array to modify.\n * @param {Array} values The values to append.\n * @returns {Array} Returns `array`.\n */\nfunction arrayPush(array, values) {\n var index = -1,\n length = values.length,\n offset = array.length;\n\n while (++index < length) {\n array[offset + index] = values[index];\n }\n return array;\n}\n\nmodule.exports = arrayPush;\n","var baseAssignValue = require('./_baseAssignValue'),\n eq = require('./eq');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Assigns `value` to `key` of `object` if the existing value is not equivalent\n * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * for equality comparisons.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {string} key The key of the property to assign.\n * @param {*} value The value to assign.\n */\nfunction assignValue(object, key, value) {\n var objValue = object[key];\n if (!(hasOwnProperty.call(object, key) && eq(objValue, value)) ||\n (value === undefined && !(key in object))) {\n baseAssignValue(object, key, value);\n }\n}\n\nmodule.exports = assignValue;\n","var eq = require('./eq');\n\n/**\n * Gets the index at which the `key` is found in `array` of key-value pairs.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {*} key The key to search for.\n * @returns {number} Returns the index of the matched value, else `-1`.\n */\nfunction assocIndexOf(array, key) {\n var length = array.length;\n while (length--) {\n if (eq(array[length][0], key)) {\n return length;\n }\n }\n return -1;\n}\n\nmodule.exports = assocIndexOf;\n","var copyObject = require('./_copyObject'),\n keys = require('./keys');\n\n/**\n * The base implementation of `_.assign` without support for multiple sources\n * or `customizer` functions.\n *\n * @private\n * @param {Object} object The destination object.\n * @param {Object} source The source object.\n * @returns {Object} Returns `object`.\n */\nfunction baseAssign(object, source) {\n return object && copyObject(source, keys(source), object);\n}\n\nmodule.exports = baseAssign;\n","var copyObject = require('./_copyObject'),\n keysIn = require('./keysIn');\n\n/**\n * The base implementation of `_.assignIn` without support for multiple sources\n * or `customizer` functions.\n *\n * @private\n * @param {Object} object The destination object.\n * @param {Object} source The source object.\n * @returns {Object} Returns `object`.\n */\nfunction baseAssignIn(object, source) {\n return object && copyObject(source, keysIn(source), object);\n}\n\nmodule.exports = baseAssignIn;\n","var defineProperty = require('./_defineProperty');\n\n/**\n * The base implementation of `assignValue` and `assignMergeValue` without\n * value checks.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {string} key The key of the property to assign.\n * @param {*} value The value to assign.\n */\nfunction baseAssignValue(object, key, value) {\n if (key == '__proto__' && defineProperty) {\n defineProperty(object, key, {\n 'configurable': true,\n 'enumerable': true,\n 'value': value,\n 'writable': true\n });\n } else {\n object[key] = value;\n }\n}\n\nmodule.exports = baseAssignValue;\n","var Stack = require('./_Stack'),\n arrayEach = require('./_arrayEach'),\n assignValue = require('./_assignValue'),\n baseAssign = require('./_baseAssign'),\n baseAssignIn = require('./_baseAssignIn'),\n cloneBuffer = require('./_cloneBuffer'),\n copyArray = require('./_copyArray'),\n copySymbols = require('./_copySymbols'),\n copySymbolsIn = require('./_copySymbolsIn'),\n getAllKeys = require('./_getAllKeys'),\n getAllKeysIn = require('./_getAllKeysIn'),\n getTag = require('./_getTag'),\n initCloneArray = require('./_initCloneArray'),\n initCloneByTag = require('./_initCloneByTag'),\n initCloneObject = require('./_initCloneObject'),\n isArray = require('./isArray'),\n isBuffer = require('./isBuffer'),\n isMap = require('./isMap'),\n isObject = require('./isObject'),\n isSet = require('./isSet'),\n keys = require('./keys'),\n keysIn = require('./keysIn');\n\n/** Used to compose bitmasks for cloning. */\nvar CLONE_DEEP_FLAG = 1,\n CLONE_FLAT_FLAG = 2,\n CLONE_SYMBOLS_FLAG = 4;\n\n/** `Object#toString` result references. */\nvar argsTag = '[object Arguments]',\n arrayTag = '[object Array]',\n boolTag = '[object Boolean]',\n dateTag = '[object Date]',\n errorTag = '[object Error]',\n funcTag = '[object Function]',\n genTag = '[object GeneratorFunction]',\n mapTag = '[object Map]',\n numberTag = '[object Number]',\n objectTag = '[object Object]',\n regexpTag = '[object RegExp]',\n setTag = '[object Set]',\n stringTag = '[object String]',\n symbolTag = '[object Symbol]',\n weakMapTag = '[object WeakMap]';\n\nvar arrayBufferTag = '[object ArrayBuffer]',\n dataViewTag = '[object DataView]',\n float32Tag = '[object Float32Array]',\n float64Tag = '[object Float64Array]',\n int8Tag = '[object Int8Array]',\n int16Tag = '[object Int16Array]',\n int32Tag = '[object Int32Array]',\n uint8Tag = '[object Uint8Array]',\n uint8ClampedTag = '[object Uint8ClampedArray]',\n uint16Tag = '[object Uint16Array]',\n uint32Tag = '[object Uint32Array]';\n\n/** Used to identify `toStringTag` values supported by `_.clone`. */\nvar cloneableTags = {};\ncloneableTags[argsTag] = cloneableTags[arrayTag] =\ncloneableTags[arrayBufferTag] = cloneableTags[dataViewTag] =\ncloneableTags[boolTag] = cloneableTags[dateTag] =\ncloneableTags[float32Tag] = cloneableTags[float64Tag] =\ncloneableTags[int8Tag] = cloneableTags[int16Tag] =\ncloneableTags[int32Tag] = cloneableTags[mapTag] =\ncloneableTags[numberTag] = cloneableTags[objectTag] =\ncloneableTags[regexpTag] = cloneableTags[setTag] =\ncloneableTags[stringTag] = cloneableTags[symbolTag] =\ncloneableTags[uint8Tag] = cloneableTags[uint8ClampedTag] =\ncloneableTags[uint16Tag] = cloneableTags[uint32Tag] = true;\ncloneableTags[errorTag] = cloneableTags[funcTag] =\ncloneableTags[weakMapTag] = false;\n\n/**\n * The base implementation of `_.clone` and `_.cloneDeep` which tracks\n * traversed objects.\n *\n * @private\n * @param {*} value The value to clone.\n * @param {boolean} bitmask The bitmask flags.\n * 1 - Deep clone\n * 2 - Flatten inherited properties\n * 4 - Clone symbols\n * @param {Function} [customizer] The function to customize cloning.\n * @param {string} [key] The key of `value`.\n * @param {Object} [object] The parent object of `value`.\n * @param {Object} [stack] Tracks traversed objects and their clone counterparts.\n * @returns {*} Returns the cloned value.\n */\nfunction baseClone(value, bitmask, customizer, key, object, stack) {\n var result,\n isDeep = bitmask & CLONE_DEEP_FLAG,\n isFlat = bitmask & CLONE_FLAT_FLAG,\n isFull = bitmask & CLONE_SYMBOLS_FLAG;\n\n if (customizer) {\n result = object ? customizer(value, key, object, stack) : customizer(value);\n }\n if (result !== undefined) {\n return result;\n }\n if (!isObject(value)) {\n return value;\n }\n var isArr = isArray(value);\n if (isArr) {\n result = initCloneArray(value);\n if (!isDeep) {\n return copyArray(value, result);\n }\n } else {\n var tag = getTag(value),\n isFunc = tag == funcTag || tag == genTag;\n\n if (isBuffer(value)) {\n return cloneBuffer(value, isDeep);\n }\n if (tag == objectTag || tag == argsTag || (isFunc && !object)) {\n result = (isFlat || isFunc) ? {} : initCloneObject(value);\n if (!isDeep) {\n return isFlat\n ? copySymbolsIn(value, baseAssignIn(result, value))\n : copySymbols(value, baseAssign(result, value));\n }\n } else {\n if (!cloneableTags[tag]) {\n return object ? value : {};\n }\n result = initCloneByTag(value, tag, isDeep);\n }\n }\n // Check for circular references and return its corresponding clone.\n stack || (stack = new Stack);\n var stacked = stack.get(value);\n if (stacked) {\n return stacked;\n }\n stack.set(value, result);\n\n if (isSet(value)) {\n value.forEach(function(subValue) {\n result.add(baseClone(subValue, bitmask, customizer, subValue, value, stack));\n });\n } else if (isMap(value)) {\n value.forEach(function(subValue, key) {\n result.set(key, baseClone(subValue, bitmask, customizer, key, value, stack));\n });\n }\n\n var keysFunc = isFull\n ? (isFlat ? getAllKeysIn : getAllKeys)\n : (isFlat ? keysIn : keys);\n\n var props = isArr ? undefined : keysFunc(value);\n arrayEach(props || value, function(subValue, key) {\n if (props) {\n key = subValue;\n subValue = value[key];\n }\n // Recursively populate clone (susceptible to call stack limits).\n assignValue(result, key, baseClone(subValue, bitmask, customizer, key, value, stack));\n });\n return result;\n}\n\nmodule.exports = baseClone;\n","var isObject = require('./isObject');\n\n/** Built-in value references. */\nvar objectCreate = Object.create;\n\n/**\n * The base implementation of `_.create` without support for assigning\n * properties to the created object.\n *\n * @private\n * @param {Object} proto The object to inherit from.\n * @returns {Object} Returns the new object.\n */\nvar baseCreate = (function() {\n function object() {}\n return function(proto) {\n if (!isObject(proto)) {\n return {};\n }\n if (objectCreate) {\n return objectCreate(proto);\n }\n object.prototype = proto;\n var result = new object;\n object.prototype = undefined;\n return result;\n };\n}());\n\nmodule.exports = baseCreate;\n","var arrayPush = require('./_arrayPush'),\n isArray = require('./isArray');\n\n/**\n * The base implementation of `getAllKeys` and `getAllKeysIn` which uses\n * `keysFunc` and `symbolsFunc` to get the enumerable property names and\n * symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Function} keysFunc The function to get the keys of `object`.\n * @param {Function} symbolsFunc The function to get the symbols of `object`.\n * @returns {Array} Returns the array of property names and symbols.\n */\nfunction baseGetAllKeys(object, keysFunc, symbolsFunc) {\n var result = keysFunc(object);\n return isArray(object) ? result : arrayPush(result, symbolsFunc(object));\n}\n\nmodule.exports = baseGetAllKeys;\n","var Symbol = require('./_Symbol'),\n getRawTag = require('./_getRawTag'),\n objectToString = require('./_objectToString');\n\n/** `Object#toString` result references. */\nvar nullTag = '[object Null]',\n undefinedTag = '[object Undefined]';\n\n/** Built-in value references. */\nvar symToStringTag = Symbol ? Symbol.toStringTag : undefined;\n\n/**\n * The base implementation of `getTag` without fallbacks for buggy environments.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the `toStringTag`.\n */\nfunction baseGetTag(value) {\n if (value == null) {\n return value === undefined ? undefinedTag : nullTag;\n }\n return (symToStringTag && symToStringTag in Object(value))\n ? getRawTag(value)\n : objectToString(value);\n}\n\nmodule.exports = baseGetTag;\n","var baseGetTag = require('./_baseGetTag'),\n isObjectLike = require('./isObjectLike');\n\n/** `Object#toString` result references. */\nvar argsTag = '[object Arguments]';\n\n/**\n * The base implementation of `_.isArguments`.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an `arguments` object,\n */\nfunction baseIsArguments(value) {\n return isObjectLike(value) && baseGetTag(value) == argsTag;\n}\n\nmodule.exports = baseIsArguments;\n","var getTag = require('./_getTag'),\n isObjectLike = require('./isObjectLike');\n\n/** `Object#toString` result references. */\nvar mapTag = '[object Map]';\n\n/**\n * The base implementation of `_.isMap` without Node.js optimizations.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a map, else `false`.\n */\nfunction baseIsMap(value) {\n return isObjectLike(value) && getTag(value) == mapTag;\n}\n\nmodule.exports = baseIsMap;\n","var isFunction = require('./isFunction'),\n isMasked = require('./_isMasked'),\n isObject = require('./isObject'),\n toSource = require('./_toSource');\n\n/**\n * Used to match `RegExp`\n * [syntax characters](http://ecma-international.org/ecma-262/7.0/#sec-patterns).\n */\nvar reRegExpChar = /[\\\\^$.*+?()[\\]{}|]/g;\n\n/** Used to detect host constructors (Safari). */\nvar reIsHostCtor = /^\\[object .+?Constructor\\]$/;\n\n/** Used for built-in method references. */\nvar funcProto = Function.prototype,\n objectProto = Object.prototype;\n\n/** Used to resolve the decompiled source of functions. */\nvar funcToString = funcProto.toString;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/** Used to detect if a method is native. */\nvar reIsNative = RegExp('^' +\n funcToString.call(hasOwnProperty).replace(reRegExpChar, '\\\\$&')\n .replace(/hasOwnProperty|(function).*?(?=\\\\\\()| for .+?(?=\\\\\\])/g, '$1.*?') + '$'\n);\n\n/**\n * The base implementation of `_.isNative` without bad shim checks.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a native function,\n * else `false`.\n */\nfunction baseIsNative(value) {\n if (!isObject(value) || isMasked(value)) {\n return false;\n }\n var pattern = isFunction(value) ? reIsNative : reIsHostCtor;\n return pattern.test(toSource(value));\n}\n\nmodule.exports = baseIsNative;\n","var getTag = require('./_getTag'),\n isObjectLike = require('./isObjectLike');\n\n/** `Object#toString` result references. */\nvar setTag = '[object Set]';\n\n/**\n * The base implementation of `_.isSet` without Node.js optimizations.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a set, else `false`.\n */\nfunction baseIsSet(value) {\n return isObjectLike(value) && getTag(value) == setTag;\n}\n\nmodule.exports = baseIsSet;\n","var baseGetTag = require('./_baseGetTag'),\n isLength = require('./isLength'),\n isObjectLike = require('./isObjectLike');\n\n/** `Object#toString` result references. */\nvar argsTag = '[object Arguments]',\n arrayTag = '[object Array]',\n boolTag = '[object Boolean]',\n dateTag = '[object Date]',\n errorTag = '[object Error]',\n funcTag = '[object Function]',\n mapTag = '[object Map]',\n numberTag = '[object Number]',\n objectTag = '[object Object]',\n regexpTag = '[object RegExp]',\n setTag = '[object Set]',\n stringTag = '[object String]',\n weakMapTag = '[object WeakMap]';\n\nvar arrayBufferTag = '[object ArrayBuffer]',\n dataViewTag = '[object DataView]',\n float32Tag = '[object Float32Array]',\n float64Tag = '[object Float64Array]',\n int8Tag = '[object Int8Array]',\n int16Tag = '[object Int16Array]',\n int32Tag = '[object Int32Array]',\n uint8Tag = '[object Uint8Array]',\n uint8ClampedTag = '[object Uint8ClampedArray]',\n uint16Tag = '[object Uint16Array]',\n uint32Tag = '[object Uint32Array]';\n\n/** Used to identify `toStringTag` values of typed arrays. */\nvar typedArrayTags = {};\ntypedArrayTags[float32Tag] = typedArrayTags[float64Tag] =\ntypedArrayTags[int8Tag] = typedArrayTags[int16Tag] =\ntypedArrayTags[int32Tag] = typedArrayTags[uint8Tag] =\ntypedArrayTags[uint8ClampedTag] = typedArrayTags[uint16Tag] =\ntypedArrayTags[uint32Tag] = true;\ntypedArrayTags[argsTag] = typedArrayTags[arrayTag] =\ntypedArrayTags[arrayBufferTag] = typedArrayTags[boolTag] =\ntypedArrayTags[dataViewTag] = typedArrayTags[dateTag] =\ntypedArrayTags[errorTag] = typedArrayTags[funcTag] =\ntypedArrayTags[mapTag] = typedArrayTags[numberTag] =\ntypedArrayTags[objectTag] = typedArrayTags[regexpTag] =\ntypedArrayTags[setTag] = typedArrayTags[stringTag] =\ntypedArrayTags[weakMapTag] = false;\n\n/**\n * The base implementation of `_.isTypedArray` without Node.js optimizations.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a typed array, else `false`.\n */\nfunction baseIsTypedArray(value) {\n return isObjectLike(value) &&\n isLength(value.length) && !!typedArrayTags[baseGetTag(value)];\n}\n\nmodule.exports = baseIsTypedArray;\n","var isPrototype = require('./_isPrototype'),\n nativeKeys = require('./_nativeKeys');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * The base implementation of `_.keys` which doesn't treat sparse arrays as dense.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n */\nfunction baseKeys(object) {\n if (!isPrototype(object)) {\n return nativeKeys(object);\n }\n var result = [];\n for (var key in Object(object)) {\n if (hasOwnProperty.call(object, key) && key != 'constructor') {\n result.push(key);\n }\n }\n return result;\n}\n\nmodule.exports = baseKeys;\n","var isObject = require('./isObject'),\n isPrototype = require('./_isPrototype'),\n nativeKeysIn = require('./_nativeKeysIn');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * The base implementation of `_.keysIn` which doesn't treat sparse arrays as dense.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n */\nfunction baseKeysIn(object) {\n if (!isObject(object)) {\n return nativeKeysIn(object);\n }\n var isProto = isPrototype(object),\n result = [];\n\n for (var key in object) {\n if (!(key == 'constructor' && (isProto || !hasOwnProperty.call(object, key)))) {\n result.push(key);\n }\n }\n return result;\n}\n\nmodule.exports = baseKeysIn;\n","/**\n * The base implementation of `_.times` without support for iteratee shorthands\n * or max array length checks.\n *\n * @private\n * @param {number} n The number of times to invoke `iteratee`.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array} Returns the array of results.\n */\nfunction baseTimes(n, iteratee) {\n var index = -1,\n result = Array(n);\n\n while (++index < n) {\n result[index] = iteratee(index);\n }\n return result;\n}\n\nmodule.exports = baseTimes;\n","var trimmedEndIndex = require('./_trimmedEndIndex');\n\n/** Used to match leading whitespace. */\nvar reTrimStart = /^\\s+/;\n\n/**\n * The base implementation of `_.trim`.\n *\n * @private\n * @param {string} string The string to trim.\n * @returns {string} Returns the trimmed string.\n */\nfunction baseTrim(string) {\n return string\n ? string.slice(0, trimmedEndIndex(string) + 1).replace(reTrimStart, '')\n : string;\n}\n\nmodule.exports = baseTrim;\n","/**\n * The base implementation of `_.unary` without support for storing metadata.\n *\n * @private\n * @param {Function} func The function to cap arguments for.\n * @returns {Function} Returns the new capped function.\n */\nfunction baseUnary(func) {\n return function(value) {\n return func(value);\n };\n}\n\nmodule.exports = baseUnary;\n","var Uint8Array = require('./_Uint8Array');\n\n/**\n * Creates a clone of `arrayBuffer`.\n *\n * @private\n * @param {ArrayBuffer} arrayBuffer The array buffer to clone.\n * @returns {ArrayBuffer} Returns the cloned array buffer.\n */\nfunction cloneArrayBuffer(arrayBuffer) {\n var result = new arrayBuffer.constructor(arrayBuffer.byteLength);\n new Uint8Array(result).set(new Uint8Array(arrayBuffer));\n return result;\n}\n\nmodule.exports = cloneArrayBuffer;\n","var root = require('./_root');\n\n/** Detect free variable `exports`. */\nvar freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports;\n\n/** Detect free variable `module`. */\nvar freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module;\n\n/** Detect the popular CommonJS extension `module.exports`. */\nvar moduleExports = freeModule && freeModule.exports === freeExports;\n\n/** Built-in value references. */\nvar Buffer = moduleExports ? root.Buffer : undefined,\n allocUnsafe = Buffer ? Buffer.allocUnsafe : undefined;\n\n/**\n * Creates a clone of `buffer`.\n *\n * @private\n * @param {Buffer} buffer The buffer to clone.\n * @param {boolean} [isDeep] Specify a deep clone.\n * @returns {Buffer} Returns the cloned buffer.\n */\nfunction cloneBuffer(buffer, isDeep) {\n if (isDeep) {\n return buffer.slice();\n }\n var length = buffer.length,\n result = allocUnsafe ? allocUnsafe(length) : new buffer.constructor(length);\n\n buffer.copy(result);\n return result;\n}\n\nmodule.exports = cloneBuffer;\n","var cloneArrayBuffer = require('./_cloneArrayBuffer');\n\n/**\n * Creates a clone of `dataView`.\n *\n * @private\n * @param {Object} dataView The data view to clone.\n * @param {boolean} [isDeep] Specify a deep clone.\n * @returns {Object} Returns the cloned data view.\n */\nfunction cloneDataView(dataView, isDeep) {\n var buffer = isDeep ? cloneArrayBuffer(dataView.buffer) : dataView.buffer;\n return new dataView.constructor(buffer, dataView.byteOffset, dataView.byteLength);\n}\n\nmodule.exports = cloneDataView;\n","/** Used to match `RegExp` flags from their coerced string values. */\nvar reFlags = /\\w*$/;\n\n/**\n * Creates a clone of `regexp`.\n *\n * @private\n * @param {Object} regexp The regexp to clone.\n * @returns {Object} Returns the cloned regexp.\n */\nfunction cloneRegExp(regexp) {\n var result = new regexp.constructor(regexp.source, reFlags.exec(regexp));\n result.lastIndex = regexp.lastIndex;\n return result;\n}\n\nmodule.exports = cloneRegExp;\n","var Symbol = require('./_Symbol');\n\n/** Used to convert symbols to primitives and strings. */\nvar symbolProto = Symbol ? Symbol.prototype : undefined,\n symbolValueOf = symbolProto ? symbolProto.valueOf : undefined;\n\n/**\n * Creates a clone of the `symbol` object.\n *\n * @private\n * @param {Object} symbol The symbol object to clone.\n * @returns {Object} Returns the cloned symbol object.\n */\nfunction cloneSymbol(symbol) {\n return symbolValueOf ? Object(symbolValueOf.call(symbol)) : {};\n}\n\nmodule.exports = cloneSymbol;\n","var cloneArrayBuffer = require('./_cloneArrayBuffer');\n\n/**\n * Creates a clone of `typedArray`.\n *\n * @private\n * @param {Object} typedArray The typed array to clone.\n * @param {boolean} [isDeep] Specify a deep clone.\n * @returns {Object} Returns the cloned typed array.\n */\nfunction cloneTypedArray(typedArray, isDeep) {\n var buffer = isDeep ? cloneArrayBuffer(typedArray.buffer) : typedArray.buffer;\n return new typedArray.constructor(buffer, typedArray.byteOffset, typedArray.length);\n}\n\nmodule.exports = cloneTypedArray;\n","/**\n * Copies the values of `source` to `array`.\n *\n * @private\n * @param {Array} source The array to copy values from.\n * @param {Array} [array=[]] The array to copy values to.\n * @returns {Array} Returns `array`.\n */\nfunction copyArray(source, array) {\n var index = -1,\n length = source.length;\n\n array || (array = Array(length));\n while (++index < length) {\n array[index] = source[index];\n }\n return array;\n}\n\nmodule.exports = copyArray;\n","var assignValue = require('./_assignValue'),\n baseAssignValue = require('./_baseAssignValue');\n\n/**\n * Copies properties of `source` to `object`.\n *\n * @private\n * @param {Object} source The object to copy properties from.\n * @param {Array} props The property identifiers to copy.\n * @param {Object} [object={}] The object to copy properties to.\n * @param {Function} [customizer] The function to customize copied values.\n * @returns {Object} Returns `object`.\n */\nfunction copyObject(source, props, object, customizer) {\n var isNew = !object;\n object || (object = {});\n\n var index = -1,\n length = props.length;\n\n while (++index < length) {\n var key = props[index];\n\n var newValue = customizer\n ? customizer(object[key], source[key], key, object, source)\n : undefined;\n\n if (newValue === undefined) {\n newValue = source[key];\n }\n if (isNew) {\n baseAssignValue(object, key, newValue);\n } else {\n assignValue(object, key, newValue);\n }\n }\n return object;\n}\n\nmodule.exports = copyObject;\n","var copyObject = require('./_copyObject'),\n getSymbols = require('./_getSymbols');\n\n/**\n * Copies own symbols of `source` to `object`.\n *\n * @private\n * @param {Object} source The object to copy symbols from.\n * @param {Object} [object={}] The object to copy symbols to.\n * @returns {Object} Returns `object`.\n */\nfunction copySymbols(source, object) {\n return copyObject(source, getSymbols(source), object);\n}\n\nmodule.exports = copySymbols;\n","var copyObject = require('./_copyObject'),\n getSymbolsIn = require('./_getSymbolsIn');\n\n/**\n * Copies own and inherited symbols of `source` to `object`.\n *\n * @private\n * @param {Object} source The object to copy symbols from.\n * @param {Object} [object={}] The object to copy symbols to.\n * @returns {Object} Returns `object`.\n */\nfunction copySymbolsIn(source, object) {\n return copyObject(source, getSymbolsIn(source), object);\n}\n\nmodule.exports = copySymbolsIn;\n","var root = require('./_root');\n\n/** Used to detect overreaching core-js shims. */\nvar coreJsData = root['__core-js_shared__'];\n\nmodule.exports = coreJsData;\n","var getNative = require('./_getNative');\n\nvar defineProperty = (function() {\n try {\n var func = getNative(Object, 'defineProperty');\n func({}, '', {});\n return func;\n } catch (e) {}\n}());\n\nmodule.exports = defineProperty;\n","/** Detect free variable `global` from Node.js. */\nvar freeGlobal = typeof global == 'object' && global && global.Object === Object && global;\n\nmodule.exports = freeGlobal;\n","var baseGetAllKeys = require('./_baseGetAllKeys'),\n getSymbols = require('./_getSymbols'),\n keys = require('./keys');\n\n/**\n * Creates an array of own enumerable property names and symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names and symbols.\n */\nfunction getAllKeys(object) {\n return baseGetAllKeys(object, keys, getSymbols);\n}\n\nmodule.exports = getAllKeys;\n","var baseGetAllKeys = require('./_baseGetAllKeys'),\n getSymbolsIn = require('./_getSymbolsIn'),\n keysIn = require('./keysIn');\n\n/**\n * Creates an array of own and inherited enumerable property names and\n * symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names and symbols.\n */\nfunction getAllKeysIn(object) {\n return baseGetAllKeys(object, keysIn, getSymbolsIn);\n}\n\nmodule.exports = getAllKeysIn;\n","var isKeyable = require('./_isKeyable');\n\n/**\n * Gets the data for `map`.\n *\n * @private\n * @param {Object} map The map to query.\n * @param {string} key The reference key.\n * @returns {*} Returns the map data.\n */\nfunction getMapData(map, key) {\n var data = map.__data__;\n return isKeyable(key)\n ? data[typeof key == 'string' ? 'string' : 'hash']\n : data.map;\n}\n\nmodule.exports = getMapData;\n","var baseIsNative = require('./_baseIsNative'),\n getValue = require('./_getValue');\n\n/**\n * Gets the native function at `key` of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {string} key The key of the method to get.\n * @returns {*} Returns the function if it's native, else `undefined`.\n */\nfunction getNative(object, key) {\n var value = getValue(object, key);\n return baseIsNative(value) ? value : undefined;\n}\n\nmodule.exports = getNative;\n","var overArg = require('./_overArg');\n\n/** Built-in value references. */\nvar getPrototype = overArg(Object.getPrototypeOf, Object);\n\nmodule.exports = getPrototype;\n","var Symbol = require('./_Symbol');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar nativeObjectToString = objectProto.toString;\n\n/** Built-in value references. */\nvar symToStringTag = Symbol ? Symbol.toStringTag : undefined;\n\n/**\n * A specialized version of `baseGetTag` which ignores `Symbol.toStringTag` values.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the raw `toStringTag`.\n */\nfunction getRawTag(value) {\n var isOwn = hasOwnProperty.call(value, symToStringTag),\n tag = value[symToStringTag];\n\n try {\n value[symToStringTag] = undefined;\n var unmasked = true;\n } catch (e) {}\n\n var result = nativeObjectToString.call(value);\n if (unmasked) {\n if (isOwn) {\n value[symToStringTag] = tag;\n } else {\n delete value[symToStringTag];\n }\n }\n return result;\n}\n\nmodule.exports = getRawTag;\n","var arrayFilter = require('./_arrayFilter'),\n stubArray = require('./stubArray');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Built-in value references. */\nvar propertyIsEnumerable = objectProto.propertyIsEnumerable;\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeGetSymbols = Object.getOwnPropertySymbols;\n\n/**\n * Creates an array of the own enumerable symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of symbols.\n */\nvar getSymbols = !nativeGetSymbols ? stubArray : function(object) {\n if (object == null) {\n return [];\n }\n object = Object(object);\n return arrayFilter(nativeGetSymbols(object), function(symbol) {\n return propertyIsEnumerable.call(object, symbol);\n });\n};\n\nmodule.exports = getSymbols;\n","var arrayPush = require('./_arrayPush'),\n getPrototype = require('./_getPrototype'),\n getSymbols = require('./_getSymbols'),\n stubArray = require('./stubArray');\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeGetSymbols = Object.getOwnPropertySymbols;\n\n/**\n * Creates an array of the own and inherited enumerable symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of symbols.\n */\nvar getSymbolsIn = !nativeGetSymbols ? stubArray : function(object) {\n var result = [];\n while (object) {\n arrayPush(result, getSymbols(object));\n object = getPrototype(object);\n }\n return result;\n};\n\nmodule.exports = getSymbolsIn;\n","var DataView = require('./_DataView'),\n Map = require('./_Map'),\n Promise = require('./_Promise'),\n Set = require('./_Set'),\n WeakMap = require('./_WeakMap'),\n baseGetTag = require('./_baseGetTag'),\n toSource = require('./_toSource');\n\n/** `Object#toString` result references. */\nvar mapTag = '[object Map]',\n objectTag = '[object Object]',\n promiseTag = '[object Promise]',\n setTag = '[object Set]',\n weakMapTag = '[object WeakMap]';\n\nvar dataViewTag = '[object DataView]';\n\n/** Used to detect maps, sets, and weakmaps. */\nvar dataViewCtorString = toSource(DataView),\n mapCtorString = toSource(Map),\n promiseCtorString = toSource(Promise),\n setCtorString = toSource(Set),\n weakMapCtorString = toSource(WeakMap);\n\n/**\n * Gets the `toStringTag` of `value`.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the `toStringTag`.\n */\nvar getTag = baseGetTag;\n\n// Fallback for data views, maps, sets, and weak maps in IE 11 and promises in Node.js < 6.\nif ((DataView && getTag(new DataView(new ArrayBuffer(1))) != dataViewTag) ||\n (Map && getTag(new Map) != mapTag) ||\n (Promise && getTag(Promise.resolve()) != promiseTag) ||\n (Set && getTag(new Set) != setTag) ||\n (WeakMap && getTag(new WeakMap) != weakMapTag)) {\n getTag = function(value) {\n var result = baseGetTag(value),\n Ctor = result == objectTag ? value.constructor : undefined,\n ctorString = Ctor ? toSource(Ctor) : '';\n\n if (ctorString) {\n switch (ctorString) {\n case dataViewCtorString: return dataViewTag;\n case mapCtorString: return mapTag;\n case promiseCtorString: return promiseTag;\n case setCtorString: return setTag;\n case weakMapCtorString: return weakMapTag;\n }\n }\n return result;\n };\n}\n\nmodule.exports = getTag;\n","/**\n * Gets the value at `key` of `object`.\n *\n * @private\n * @param {Object} [object] The object to query.\n * @param {string} key The key of the property to get.\n * @returns {*} Returns the property value.\n */\nfunction getValue(object, key) {\n return object == null ? undefined : object[key];\n}\n\nmodule.exports = getValue;\n","var nativeCreate = require('./_nativeCreate');\n\n/**\n * Removes all key-value entries from the hash.\n *\n * @private\n * @name clear\n * @memberOf Hash\n */\nfunction hashClear() {\n this.__data__ = nativeCreate ? nativeCreate(null) : {};\n this.size = 0;\n}\n\nmodule.exports = hashClear;\n","/**\n * Removes `key` and its value from the hash.\n *\n * @private\n * @name delete\n * @memberOf Hash\n * @param {Object} hash The hash to modify.\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction hashDelete(key) {\n var result = this.has(key) && delete this.__data__[key];\n this.size -= result ? 1 : 0;\n return result;\n}\n\nmodule.exports = hashDelete;\n","var nativeCreate = require('./_nativeCreate');\n\n/** Used to stand-in for `undefined` hash values. */\nvar HASH_UNDEFINED = '__lodash_hash_undefined__';\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Gets the hash value for `key`.\n *\n * @private\n * @name get\n * @memberOf Hash\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction hashGet(key) {\n var data = this.__data__;\n if (nativeCreate) {\n var result = data[key];\n return result === HASH_UNDEFINED ? undefined : result;\n }\n return hasOwnProperty.call(data, key) ? data[key] : undefined;\n}\n\nmodule.exports = hashGet;\n","var nativeCreate = require('./_nativeCreate');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Checks if a hash value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf Hash\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction hashHas(key) {\n var data = this.__data__;\n return nativeCreate ? (data[key] !== undefined) : hasOwnProperty.call(data, key);\n}\n\nmodule.exports = hashHas;\n","var nativeCreate = require('./_nativeCreate');\n\n/** Used to stand-in for `undefined` hash values. */\nvar HASH_UNDEFINED = '__lodash_hash_undefined__';\n\n/**\n * Sets the hash `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf Hash\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the hash instance.\n */\nfunction hashSet(key, value) {\n var data = this.__data__;\n this.size += this.has(key) ? 0 : 1;\n data[key] = (nativeCreate && value === undefined) ? HASH_UNDEFINED : value;\n return this;\n}\n\nmodule.exports = hashSet;\n","/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Initializes an array clone.\n *\n * @private\n * @param {Array} array The array to clone.\n * @returns {Array} Returns the initialized clone.\n */\nfunction initCloneArray(array) {\n var length = array.length,\n result = new array.constructor(length);\n\n // Add properties assigned by `RegExp#exec`.\n if (length && typeof array[0] == 'string' && hasOwnProperty.call(array, 'index')) {\n result.index = array.index;\n result.input = array.input;\n }\n return result;\n}\n\nmodule.exports = initCloneArray;\n","var cloneArrayBuffer = require('./_cloneArrayBuffer'),\n cloneDataView = require('./_cloneDataView'),\n cloneRegExp = require('./_cloneRegExp'),\n cloneSymbol = require('./_cloneSymbol'),\n cloneTypedArray = require('./_cloneTypedArray');\n\n/** `Object#toString` result references. */\nvar boolTag = '[object Boolean]',\n dateTag = '[object Date]',\n mapTag = '[object Map]',\n numberTag = '[object Number]',\n regexpTag = '[object RegExp]',\n setTag = '[object Set]',\n stringTag = '[object String]',\n symbolTag = '[object Symbol]';\n\nvar arrayBufferTag = '[object ArrayBuffer]',\n dataViewTag = '[object DataView]',\n float32Tag = '[object Float32Array]',\n float64Tag = '[object Float64Array]',\n int8Tag = '[object Int8Array]',\n int16Tag = '[object Int16Array]',\n int32Tag = '[object Int32Array]',\n uint8Tag = '[object Uint8Array]',\n uint8ClampedTag = '[object Uint8ClampedArray]',\n uint16Tag = '[object Uint16Array]',\n uint32Tag = '[object Uint32Array]';\n\n/**\n * Initializes an object clone based on its `toStringTag`.\n *\n * **Note:** This function only supports cloning values with tags of\n * `Boolean`, `Date`, `Error`, `Map`, `Number`, `RegExp`, `Set`, or `String`.\n *\n * @private\n * @param {Object} object The object to clone.\n * @param {string} tag The `toStringTag` of the object to clone.\n * @param {boolean} [isDeep] Specify a deep clone.\n * @returns {Object} Returns the initialized clone.\n */\nfunction initCloneByTag(object, tag, isDeep) {\n var Ctor = object.constructor;\n switch (tag) {\n case arrayBufferTag:\n return cloneArrayBuffer(object);\n\n case boolTag:\n case dateTag:\n return new Ctor(+object);\n\n case dataViewTag:\n return cloneDataView(object, isDeep);\n\n case float32Tag: case float64Tag:\n case int8Tag: case int16Tag: case int32Tag:\n case uint8Tag: case uint8ClampedTag: case uint16Tag: case uint32Tag:\n return cloneTypedArray(object, isDeep);\n\n case mapTag:\n return new Ctor;\n\n case numberTag:\n case stringTag:\n return new Ctor(object);\n\n case regexpTag:\n return cloneRegExp(object);\n\n case setTag:\n return new Ctor;\n\n case symbolTag:\n return cloneSymbol(object);\n }\n}\n\nmodule.exports = initCloneByTag;\n","var baseCreate = require('./_baseCreate'),\n getPrototype = require('./_getPrototype'),\n isPrototype = require('./_isPrototype');\n\n/**\n * Initializes an object clone.\n *\n * @private\n * @param {Object} object The object to clone.\n * @returns {Object} Returns the initialized clone.\n */\nfunction initCloneObject(object) {\n return (typeof object.constructor == 'function' && !isPrototype(object))\n ? baseCreate(getPrototype(object))\n : {};\n}\n\nmodule.exports = initCloneObject;\n","/** Used as references for various `Number` constants. */\nvar MAX_SAFE_INTEGER = 9007199254740991;\n\n/** Used to detect unsigned integer values. */\nvar reIsUint = /^(?:0|[1-9]\\d*)$/;\n\n/**\n * Checks if `value` is a valid array-like index.\n *\n * @private\n * @param {*} value The value to check.\n * @param {number} [length=MAX_SAFE_INTEGER] The upper bounds of a valid index.\n * @returns {boolean} Returns `true` if `value` is a valid index, else `false`.\n */\nfunction isIndex(value, length) {\n var type = typeof value;\n length = length == null ? MAX_SAFE_INTEGER : length;\n\n return !!length &&\n (type == 'number' ||\n (type != 'symbol' && reIsUint.test(value))) &&\n (value > -1 && value % 1 == 0 && value < length);\n}\n\nmodule.exports = isIndex;\n","/**\n * Checks if `value` is suitable for use as unique object key.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is suitable, else `false`.\n */\nfunction isKeyable(value) {\n var type = typeof value;\n return (type == 'string' || type == 'number' || type == 'symbol' || type == 'boolean')\n ? (value !== '__proto__')\n : (value === null);\n}\n\nmodule.exports = isKeyable;\n","var coreJsData = require('./_coreJsData');\n\n/** Used to detect methods masquerading as native. */\nvar maskSrcKey = (function() {\n var uid = /[^.]+$/.exec(coreJsData && coreJsData.keys && coreJsData.keys.IE_PROTO || '');\n return uid ? ('Symbol(src)_1.' + uid) : '';\n}());\n\n/**\n * Checks if `func` has its source masked.\n *\n * @private\n * @param {Function} func The function to check.\n * @returns {boolean} Returns `true` if `func` is masked, else `false`.\n */\nfunction isMasked(func) {\n return !!maskSrcKey && (maskSrcKey in func);\n}\n\nmodule.exports = isMasked;\n","/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/**\n * Checks if `value` is likely a prototype object.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a prototype, else `false`.\n */\nfunction isPrototype(value) {\n var Ctor = value && value.constructor,\n proto = (typeof Ctor == 'function' && Ctor.prototype) || objectProto;\n\n return value === proto;\n}\n\nmodule.exports = isPrototype;\n","/**\n * Removes all key-value entries from the list cache.\n *\n * @private\n * @name clear\n * @memberOf ListCache\n */\nfunction listCacheClear() {\n this.__data__ = [];\n this.size = 0;\n}\n\nmodule.exports = listCacheClear;\n","var assocIndexOf = require('./_assocIndexOf');\n\n/** Used for built-in method references. */\nvar arrayProto = Array.prototype;\n\n/** Built-in value references. */\nvar splice = arrayProto.splice;\n\n/**\n * Removes `key` and its value from the list cache.\n *\n * @private\n * @name delete\n * @memberOf ListCache\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction listCacheDelete(key) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n if (index < 0) {\n return false;\n }\n var lastIndex = data.length - 1;\n if (index == lastIndex) {\n data.pop();\n } else {\n splice.call(data, index, 1);\n }\n --this.size;\n return true;\n}\n\nmodule.exports = listCacheDelete;\n","var assocIndexOf = require('./_assocIndexOf');\n\n/**\n * Gets the list cache value for `key`.\n *\n * @private\n * @name get\n * @memberOf ListCache\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction listCacheGet(key) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n return index < 0 ? undefined : data[index][1];\n}\n\nmodule.exports = listCacheGet;\n","var assocIndexOf = require('./_assocIndexOf');\n\n/**\n * Checks if a list cache value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf ListCache\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction listCacheHas(key) {\n return assocIndexOf(this.__data__, key) > -1;\n}\n\nmodule.exports = listCacheHas;\n","var assocIndexOf = require('./_assocIndexOf');\n\n/**\n * Sets the list cache `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf ListCache\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the list cache instance.\n */\nfunction listCacheSet(key, value) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n if (index < 0) {\n ++this.size;\n data.push([key, value]);\n } else {\n data[index][1] = value;\n }\n return this;\n}\n\nmodule.exports = listCacheSet;\n","var Hash = require('./_Hash'),\n ListCache = require('./_ListCache'),\n Map = require('./_Map');\n\n/**\n * Removes all key-value entries from the map.\n *\n * @private\n * @name clear\n * @memberOf MapCache\n */\nfunction mapCacheClear() {\n this.size = 0;\n this.__data__ = {\n 'hash': new Hash,\n 'map': new (Map || ListCache),\n 'string': new Hash\n };\n}\n\nmodule.exports = mapCacheClear;\n","var getMapData = require('./_getMapData');\n\n/**\n * Removes `key` and its value from the map.\n *\n * @private\n * @name delete\n * @memberOf MapCache\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction mapCacheDelete(key) {\n var result = getMapData(this, key)['delete'](key);\n this.size -= result ? 1 : 0;\n return result;\n}\n\nmodule.exports = mapCacheDelete;\n","var getMapData = require('./_getMapData');\n\n/**\n * Gets the map value for `key`.\n *\n * @private\n * @name get\n * @memberOf MapCache\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction mapCacheGet(key) {\n return getMapData(this, key).get(key);\n}\n\nmodule.exports = mapCacheGet;\n","var getMapData = require('./_getMapData');\n\n/**\n * Checks if a map value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf MapCache\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction mapCacheHas(key) {\n return getMapData(this, key).has(key);\n}\n\nmodule.exports = mapCacheHas;\n","var getMapData = require('./_getMapData');\n\n/**\n * Sets the map `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf MapCache\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the map cache instance.\n */\nfunction mapCacheSet(key, value) {\n var data = getMapData(this, key),\n size = data.size;\n\n data.set(key, value);\n this.size += data.size == size ? 0 : 1;\n return this;\n}\n\nmodule.exports = mapCacheSet;\n","var getNative = require('./_getNative');\n\n/* Built-in method references that are verified to be native. */\nvar nativeCreate = getNative(Object, 'create');\n\nmodule.exports = nativeCreate;\n","var overArg = require('./_overArg');\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeKeys = overArg(Object.keys, Object);\n\nmodule.exports = nativeKeys;\n","/**\n * This function is like\n * [`Object.keys`](http://ecma-international.org/ecma-262/7.0/#sec-object.keys)\n * except that it includes inherited enumerable properties.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n */\nfunction nativeKeysIn(object) {\n var result = [];\n if (object != null) {\n for (var key in Object(object)) {\n result.push(key);\n }\n }\n return result;\n}\n\nmodule.exports = nativeKeysIn;\n","var freeGlobal = require('./_freeGlobal');\n\n/** Detect free variable `exports`. */\nvar freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports;\n\n/** Detect free variable `module`. */\nvar freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module;\n\n/** Detect the popular CommonJS extension `module.exports`. */\nvar moduleExports = freeModule && freeModule.exports === freeExports;\n\n/** Detect free variable `process` from Node.js. */\nvar freeProcess = moduleExports && freeGlobal.process;\n\n/** Used to access faster Node.js helpers. */\nvar nodeUtil = (function() {\n try {\n // Use `util.types` for Node.js 10+.\n var types = freeModule && freeModule.require && freeModule.require('util').types;\n\n if (types) {\n return types;\n }\n\n // Legacy `process.binding('util')` for Node.js < 10.\n return freeProcess && freeProcess.binding && freeProcess.binding('util');\n } catch (e) {}\n}());\n\nmodule.exports = nodeUtil;\n","/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar nativeObjectToString = objectProto.toString;\n\n/**\n * Converts `value` to a string using `Object.prototype.toString`.\n *\n * @private\n * @param {*} value The value to convert.\n * @returns {string} Returns the converted string.\n */\nfunction objectToString(value) {\n return nativeObjectToString.call(value);\n}\n\nmodule.exports = objectToString;\n","/**\n * Creates a unary function that invokes `func` with its argument transformed.\n *\n * @private\n * @param {Function} func The function to wrap.\n * @param {Function} transform The argument transform.\n * @returns {Function} Returns the new function.\n */\nfunction overArg(func, transform) {\n return function(arg) {\n return func(transform(arg));\n };\n}\n\nmodule.exports = overArg;\n","var freeGlobal = require('./_freeGlobal');\n\n/** Detect free variable `self`. */\nvar freeSelf = typeof self == 'object' && self && self.Object === Object && self;\n\n/** Used as a reference to the global object. */\nvar root = freeGlobal || freeSelf || Function('return this')();\n\nmodule.exports = root;\n","var ListCache = require('./_ListCache');\n\n/**\n * Removes all key-value entries from the stack.\n *\n * @private\n * @name clear\n * @memberOf Stack\n */\nfunction stackClear() {\n this.__data__ = new ListCache;\n this.size = 0;\n}\n\nmodule.exports = stackClear;\n","/**\n * Removes `key` and its value from the stack.\n *\n * @private\n * @name delete\n * @memberOf Stack\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction stackDelete(key) {\n var data = this.__data__,\n result = data['delete'](key);\n\n this.size = data.size;\n return result;\n}\n\nmodule.exports = stackDelete;\n","/**\n * Gets the stack value for `key`.\n *\n * @private\n * @name get\n * @memberOf Stack\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction stackGet(key) {\n return this.__data__.get(key);\n}\n\nmodule.exports = stackGet;\n","/**\n * Checks if a stack value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf Stack\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction stackHas(key) {\n return this.__data__.has(key);\n}\n\nmodule.exports = stackHas;\n","var ListCache = require('./_ListCache'),\n Map = require('./_Map'),\n MapCache = require('./_MapCache');\n\n/** Used as the size to enable large array optimizations. */\nvar LARGE_ARRAY_SIZE = 200;\n\n/**\n * Sets the stack `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf Stack\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the stack cache instance.\n */\nfunction stackSet(key, value) {\n var data = this.__data__;\n if (data instanceof ListCache) {\n var pairs = data.__data__;\n if (!Map || (pairs.length < LARGE_ARRAY_SIZE - 1)) {\n pairs.push([key, value]);\n this.size = ++data.size;\n return this;\n }\n data = this.__data__ = new MapCache(pairs);\n }\n data.set(key, value);\n this.size = data.size;\n return this;\n}\n\nmodule.exports = stackSet;\n","/** Used for built-in method references. */\nvar funcProto = Function.prototype;\n\n/** Used to resolve the decompiled source of functions. */\nvar funcToString = funcProto.toString;\n\n/**\n * Converts `func` to its source code.\n *\n * @private\n * @param {Function} func The function to convert.\n * @returns {string} Returns the source code.\n */\nfunction toSource(func) {\n if (func != null) {\n try {\n return funcToString.call(func);\n } catch (e) {}\n try {\n return (func + '');\n } catch (e) {}\n }\n return '';\n}\n\nmodule.exports = toSource;\n","/** Used to match a single whitespace character. */\nvar reWhitespace = /\\s/;\n\n/**\n * Used by `_.trim` and `_.trimEnd` to get the index of the last non-whitespace\n * character of `string`.\n *\n * @private\n * @param {string} string The string to inspect.\n * @returns {number} Returns the index of the last non-whitespace character.\n */\nfunction trimmedEndIndex(string) {\n var index = string.length;\n\n while (index-- && reWhitespace.test(string.charAt(index))) {}\n return index;\n}\n\nmodule.exports = trimmedEndIndex;\n","var baseClone = require('./_baseClone');\n\n/** Used to compose bitmasks for cloning. */\nvar CLONE_DEEP_FLAG = 1,\n CLONE_SYMBOLS_FLAG = 4;\n\n/**\n * This method is like `_.clone` except that it recursively clones `value`.\n *\n * @static\n * @memberOf _\n * @since 1.0.0\n * @category Lang\n * @param {*} value The value to recursively clone.\n * @returns {*} Returns the deep cloned value.\n * @see _.clone\n * @example\n *\n * var objects = [{ 'a': 1 }, { 'b': 2 }];\n *\n * var deep = _.cloneDeep(objects);\n * console.log(deep[0] === objects[0]);\n * // => false\n */\nfunction cloneDeep(value) {\n return baseClone(value, CLONE_DEEP_FLAG | CLONE_SYMBOLS_FLAG);\n}\n\nmodule.exports = cloneDeep;\n","var isObject = require('./isObject'),\n now = require('./now'),\n toNumber = require('./toNumber');\n\n/** Error message constants. */\nvar FUNC_ERROR_TEXT = 'Expected a function';\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeMax = Math.max,\n nativeMin = Math.min;\n\n/**\n * Creates a debounced function that delays invoking `func` until after `wait`\n * milliseconds have elapsed since the last time the debounced function was\n * invoked. The debounced function comes with a `cancel` method to cancel\n * delayed `func` invocations and a `flush` method to immediately invoke them.\n * Provide `options` to indicate whether `func` should be invoked on the\n * leading and/or trailing edge of the `wait` timeout. The `func` is invoked\n * with the last arguments provided to the debounced function. Subsequent\n * calls to the debounced function return the result of the last `func`\n * invocation.\n *\n * **Note:** If `leading` and `trailing` options are `true`, `func` is\n * invoked on the trailing edge of the timeout only if the debounced function\n * is invoked more than once during the `wait` timeout.\n *\n * If `wait` is `0` and `leading` is `false`, `func` invocation is deferred\n * until to the next tick, similar to `setTimeout` with a timeout of `0`.\n *\n * See [David Corbacho's article](https://css-tricks.com/debouncing-throttling-explained-examples/)\n * for details over the differences between `_.debounce` and `_.throttle`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {Function} func The function to debounce.\n * @param {number} [wait=0] The number of milliseconds to delay.\n * @param {Object} [options={}] The options object.\n * @param {boolean} [options.leading=false]\n * Specify invoking on the leading edge of the timeout.\n * @param {number} [options.maxWait]\n * The maximum time `func` is allowed to be delayed before it's invoked.\n * @param {boolean} [options.trailing=true]\n * Specify invoking on the trailing edge of the timeout.\n * @returns {Function} Returns the new debounced function.\n * @example\n *\n * // Avoid costly calculations while the window size is in flux.\n * jQuery(window).on('resize', _.debounce(calculateLayout, 150));\n *\n * // Invoke `sendMail` when clicked, debouncing subsequent calls.\n * jQuery(element).on('click', _.debounce(sendMail, 300, {\n * 'leading': true,\n * 'trailing': false\n * }));\n *\n * // Ensure `batchLog` is invoked once after 1 second of debounced calls.\n * var debounced = _.debounce(batchLog, 250, { 'maxWait': 1000 });\n * var source = new EventSource('/stream');\n * jQuery(source).on('message', debounced);\n *\n * // Cancel the trailing debounced invocation.\n * jQuery(window).on('popstate', debounced.cancel);\n */\nfunction debounce(func, wait, options) {\n var lastArgs,\n lastThis,\n maxWait,\n result,\n timerId,\n lastCallTime,\n lastInvokeTime = 0,\n leading = false,\n maxing = false,\n trailing = true;\n\n if (typeof func != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n wait = toNumber(wait) || 0;\n if (isObject(options)) {\n leading = !!options.leading;\n maxing = 'maxWait' in options;\n maxWait = maxing ? nativeMax(toNumber(options.maxWait) || 0, wait) : maxWait;\n trailing = 'trailing' in options ? !!options.trailing : trailing;\n }\n\n function invokeFunc(time) {\n var args = lastArgs,\n thisArg = lastThis;\n\n lastArgs = lastThis = undefined;\n lastInvokeTime = time;\n result = func.apply(thisArg, args);\n return result;\n }\n\n function leadingEdge(time) {\n // Reset any `maxWait` timer.\n lastInvokeTime = time;\n // Start the timer for the trailing edge.\n timerId = setTimeout(timerExpired, wait);\n // Invoke the leading edge.\n return leading ? invokeFunc(time) : result;\n }\n\n function remainingWait(time) {\n var timeSinceLastCall = time - lastCallTime,\n timeSinceLastInvoke = time - lastInvokeTime,\n timeWaiting = wait - timeSinceLastCall;\n\n return maxing\n ? nativeMin(timeWaiting, maxWait - timeSinceLastInvoke)\n : timeWaiting;\n }\n\n function shouldInvoke(time) {\n var timeSinceLastCall = time - lastCallTime,\n timeSinceLastInvoke = time - lastInvokeTime;\n\n // Either this is the first call, activity has stopped and we're at the\n // trailing edge, the system time has gone backwards and we're treating\n // it as the trailing edge, or we've hit the `maxWait` limit.\n return (lastCallTime === undefined || (timeSinceLastCall >= wait) ||\n (timeSinceLastCall < 0) || (maxing && timeSinceLastInvoke >= maxWait));\n }\n\n function timerExpired() {\n var time = now();\n if (shouldInvoke(time)) {\n return trailingEdge(time);\n }\n // Restart the timer.\n timerId = setTimeout(timerExpired, remainingWait(time));\n }\n\n function trailingEdge(time) {\n timerId = undefined;\n\n // Only invoke if we have `lastArgs` which means `func` has been\n // debounced at least once.\n if (trailing && lastArgs) {\n return invokeFunc(time);\n }\n lastArgs = lastThis = undefined;\n return result;\n }\n\n function cancel() {\n if (timerId !== undefined) {\n clearTimeout(timerId);\n }\n lastInvokeTime = 0;\n lastArgs = lastCallTime = lastThis = timerId = undefined;\n }\n\n function flush() {\n return timerId === undefined ? result : trailingEdge(now());\n }\n\n function debounced() {\n var time = now(),\n isInvoking = shouldInvoke(time);\n\n lastArgs = arguments;\n lastThis = this;\n lastCallTime = time;\n\n if (isInvoking) {\n if (timerId === undefined) {\n return leadingEdge(lastCallTime);\n }\n if (maxing) {\n // Handle invocations in a tight loop.\n clearTimeout(timerId);\n timerId = setTimeout(timerExpired, wait);\n return invokeFunc(lastCallTime);\n }\n }\n if (timerId === undefined) {\n timerId = setTimeout(timerExpired, wait);\n }\n return result;\n }\n debounced.cancel = cancel;\n debounced.flush = flush;\n return debounced;\n}\n\nmodule.exports = debounce;\n","/**\n * Performs a\n * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * comparison between two values to determine if they are equivalent.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if the values are equivalent, else `false`.\n * @example\n *\n * var object = { 'a': 1 };\n * var other = { 'a': 1 };\n *\n * _.eq(object, object);\n * // => true\n *\n * _.eq(object, other);\n * // => false\n *\n * _.eq('a', 'a');\n * // => true\n *\n * _.eq('a', Object('a'));\n * // => false\n *\n * _.eq(NaN, NaN);\n * // => true\n */\nfunction eq(value, other) {\n return value === other || (value !== value && other !== other);\n}\n\nmodule.exports = eq;\n","var baseIsArguments = require('./_baseIsArguments'),\n isObjectLike = require('./isObjectLike');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/** Built-in value references. */\nvar propertyIsEnumerable = objectProto.propertyIsEnumerable;\n\n/**\n * Checks if `value` is likely an `arguments` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an `arguments` object,\n * else `false`.\n * @example\n *\n * _.isArguments(function() { return arguments; }());\n * // => true\n *\n * _.isArguments([1, 2, 3]);\n * // => false\n */\nvar isArguments = baseIsArguments(function() { return arguments; }()) ? baseIsArguments : function(value) {\n return isObjectLike(value) && hasOwnProperty.call(value, 'callee') &&\n !propertyIsEnumerable.call(value, 'callee');\n};\n\nmodule.exports = isArguments;\n","/**\n * Checks if `value` is classified as an `Array` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an array, else `false`.\n * @example\n *\n * _.isArray([1, 2, 3]);\n * // => true\n *\n * _.isArray(document.body.children);\n * // => false\n *\n * _.isArray('abc');\n * // => false\n *\n * _.isArray(_.noop);\n * // => false\n */\nvar isArray = Array.isArray;\n\nmodule.exports = isArray;\n","var isFunction = require('./isFunction'),\n isLength = require('./isLength');\n\n/**\n * Checks if `value` is array-like. A value is considered array-like if it's\n * not a function and has a `value.length` that's an integer greater than or\n * equal to `0` and less than or equal to `Number.MAX_SAFE_INTEGER`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is array-like, else `false`.\n * @example\n *\n * _.isArrayLike([1, 2, 3]);\n * // => true\n *\n * _.isArrayLike(document.body.children);\n * // => true\n *\n * _.isArrayLike('abc');\n * // => true\n *\n * _.isArrayLike(_.noop);\n * // => false\n */\nfunction isArrayLike(value) {\n return value != null && isLength(value.length) && !isFunction(value);\n}\n\nmodule.exports = isArrayLike;\n","var root = require('./_root'),\n stubFalse = require('./stubFalse');\n\n/** Detect free variable `exports`. */\nvar freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports;\n\n/** Detect free variable `module`. */\nvar freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module;\n\n/** Detect the popular CommonJS extension `module.exports`. */\nvar moduleExports = freeModule && freeModule.exports === freeExports;\n\n/** Built-in value references. */\nvar Buffer = moduleExports ? root.Buffer : undefined;\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeIsBuffer = Buffer ? Buffer.isBuffer : undefined;\n\n/**\n * Checks if `value` is a buffer.\n *\n * @static\n * @memberOf _\n * @since 4.3.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a buffer, else `false`.\n * @example\n *\n * _.isBuffer(new Buffer(2));\n * // => true\n *\n * _.isBuffer(new Uint8Array(2));\n * // => false\n */\nvar isBuffer = nativeIsBuffer || stubFalse;\n\nmodule.exports = isBuffer;\n","var baseGetTag = require('./_baseGetTag'),\n isObject = require('./isObject');\n\n/** `Object#toString` result references. */\nvar asyncTag = '[object AsyncFunction]',\n funcTag = '[object Function]',\n genTag = '[object GeneratorFunction]',\n proxyTag = '[object Proxy]';\n\n/**\n * Checks if `value` is classified as a `Function` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a function, else `false`.\n * @example\n *\n * _.isFunction(_);\n * // => true\n *\n * _.isFunction(/abc/);\n * // => false\n */\nfunction isFunction(value) {\n if (!isObject(value)) {\n return false;\n }\n // The use of `Object#toString` avoids issues with the `typeof` operator\n // in Safari 9 which returns 'object' for typed arrays and other constructors.\n var tag = baseGetTag(value);\n return tag == funcTag || tag == genTag || tag == asyncTag || tag == proxyTag;\n}\n\nmodule.exports = isFunction;\n","/** Used as references for various `Number` constants. */\nvar MAX_SAFE_INTEGER = 9007199254740991;\n\n/**\n * Checks if `value` is a valid array-like length.\n *\n * **Note:** This method is loosely based on\n * [`ToLength`](http://ecma-international.org/ecma-262/7.0/#sec-tolength).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a valid length, else `false`.\n * @example\n *\n * _.isLength(3);\n * // => true\n *\n * _.isLength(Number.MIN_VALUE);\n * // => false\n *\n * _.isLength(Infinity);\n * // => false\n *\n * _.isLength('3');\n * // => false\n */\nfunction isLength(value) {\n return typeof value == 'number' &&\n value > -1 && value % 1 == 0 && value <= MAX_SAFE_INTEGER;\n}\n\nmodule.exports = isLength;\n","var baseIsMap = require('./_baseIsMap'),\n baseUnary = require('./_baseUnary'),\n nodeUtil = require('./_nodeUtil');\n\n/* Node.js helper references. */\nvar nodeIsMap = nodeUtil && nodeUtil.isMap;\n\n/**\n * Checks if `value` is classified as a `Map` object.\n *\n * @static\n * @memberOf _\n * @since 4.3.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a map, else `false`.\n * @example\n *\n * _.isMap(new Map);\n * // => true\n *\n * _.isMap(new WeakMap);\n * // => false\n */\nvar isMap = nodeIsMap ? baseUnary(nodeIsMap) : baseIsMap;\n\nmodule.exports = isMap;\n","/**\n * Checks if `value` is the\n * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)\n * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an object, else `false`.\n * @example\n *\n * _.isObject({});\n * // => true\n *\n * _.isObject([1, 2, 3]);\n * // => true\n *\n * _.isObject(_.noop);\n * // => true\n *\n * _.isObject(null);\n * // => false\n */\nfunction isObject(value) {\n var type = typeof value;\n return value != null && (type == 'object' || type == 'function');\n}\n\nmodule.exports = isObject;\n","/**\n * Checks if `value` is object-like. A value is object-like if it's not `null`\n * and has a `typeof` result of \"object\".\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is object-like, else `false`.\n * @example\n *\n * _.isObjectLike({});\n * // => true\n *\n * _.isObjectLike([1, 2, 3]);\n * // => true\n *\n * _.isObjectLike(_.noop);\n * // => false\n *\n * _.isObjectLike(null);\n * // => false\n */\nfunction isObjectLike(value) {\n return value != null && typeof value == 'object';\n}\n\nmodule.exports = isObjectLike;\n","var baseIsSet = require('./_baseIsSet'),\n baseUnary = require('./_baseUnary'),\n nodeUtil = require('./_nodeUtil');\n\n/* Node.js helper references. */\nvar nodeIsSet = nodeUtil && nodeUtil.isSet;\n\n/**\n * Checks if `value` is classified as a `Set` object.\n *\n * @static\n * @memberOf _\n * @since 4.3.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a set, else `false`.\n * @example\n *\n * _.isSet(new Set);\n * // => true\n *\n * _.isSet(new WeakSet);\n * // => false\n */\nvar isSet = nodeIsSet ? baseUnary(nodeIsSet) : baseIsSet;\n\nmodule.exports = isSet;\n","var baseGetTag = require('./_baseGetTag'),\n isObjectLike = require('./isObjectLike');\n\n/** `Object#toString` result references. */\nvar symbolTag = '[object Symbol]';\n\n/**\n * Checks if `value` is classified as a `Symbol` primitive or object.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a symbol, else `false`.\n * @example\n *\n * _.isSymbol(Symbol.iterator);\n * // => true\n *\n * _.isSymbol('abc');\n * // => false\n */\nfunction isSymbol(value) {\n return typeof value == 'symbol' ||\n (isObjectLike(value) && baseGetTag(value) == symbolTag);\n}\n\nmodule.exports = isSymbol;\n","var baseIsTypedArray = require('./_baseIsTypedArray'),\n baseUnary = require('./_baseUnary'),\n nodeUtil = require('./_nodeUtil');\n\n/* Node.js helper references. */\nvar nodeIsTypedArray = nodeUtil && nodeUtil.isTypedArray;\n\n/**\n * Checks if `value` is classified as a typed array.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a typed array, else `false`.\n * @example\n *\n * _.isTypedArray(new Uint8Array);\n * // => true\n *\n * _.isTypedArray([]);\n * // => false\n */\nvar isTypedArray = nodeIsTypedArray ? baseUnary(nodeIsTypedArray) : baseIsTypedArray;\n\nmodule.exports = isTypedArray;\n","var arrayLikeKeys = require('./_arrayLikeKeys'),\n baseKeys = require('./_baseKeys'),\n isArrayLike = require('./isArrayLike');\n\n/**\n * Creates an array of the own enumerable property names of `object`.\n *\n * **Note:** Non-object values are coerced to objects. See the\n * [ES spec](http://ecma-international.org/ecma-262/7.0/#sec-object.keys)\n * for more details.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Object\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.keys(new Foo);\n * // => ['a', 'b'] (iteration order is not guaranteed)\n *\n * _.keys('hi');\n * // => ['0', '1']\n */\nfunction keys(object) {\n return isArrayLike(object) ? arrayLikeKeys(object) : baseKeys(object);\n}\n\nmodule.exports = keys;\n","var arrayLikeKeys = require('./_arrayLikeKeys'),\n baseKeysIn = require('./_baseKeysIn'),\n isArrayLike = require('./isArrayLike');\n\n/**\n * Creates an array of the own and inherited enumerable property names of `object`.\n *\n * **Note:** Non-object values are coerced to objects.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Object\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.keysIn(new Foo);\n * // => ['a', 'b', 'c'] (iteration order is not guaranteed)\n */\nfunction keysIn(object) {\n return isArrayLike(object) ? arrayLikeKeys(object, true) : baseKeysIn(object);\n}\n\nmodule.exports = keysIn;\n","/**\n * @license\n * Lodash \n * Copyright OpenJS Foundation and other contributors \n * Released under MIT license \n * Based on Underscore.js 1.8.3 \n * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors\n */\n;(function() {\n\n /** Used as a safe reference for `undefined` in pre-ES5 environments. */\n var undefined;\n\n /** Used as the semantic version number. */\n var VERSION = '4.17.21';\n\n /** Used as the size to enable large array optimizations. */\n var LARGE_ARRAY_SIZE = 200;\n\n /** Error message constants. */\n var CORE_ERROR_TEXT = 'Unsupported core-js use. Try https://npms.io/search?q=ponyfill.',\n FUNC_ERROR_TEXT = 'Expected a function',\n INVALID_TEMPL_VAR_ERROR_TEXT = 'Invalid `variable` option passed into `_.template`';\n\n /** Used to stand-in for `undefined` hash values. */\n var HASH_UNDEFINED = '__lodash_hash_undefined__';\n\n /** Used as the maximum memoize cache size. */\n var MAX_MEMOIZE_SIZE = 500;\n\n /** Used as the internal argument placeholder. */\n var PLACEHOLDER = '__lodash_placeholder__';\n\n /** Used to compose bitmasks for cloning. */\n var CLONE_DEEP_FLAG = 1,\n CLONE_FLAT_FLAG = 2,\n CLONE_SYMBOLS_FLAG = 4;\n\n /** Used to compose bitmasks for value comparisons. */\n var COMPARE_PARTIAL_FLAG = 1,\n COMPARE_UNORDERED_FLAG = 2;\n\n /** Used to compose bitmasks for function metadata. */\n var WRAP_BIND_FLAG = 1,\n WRAP_BIND_KEY_FLAG = 2,\n WRAP_CURRY_BOUND_FLAG = 4,\n WRAP_CURRY_FLAG = 8,\n WRAP_CURRY_RIGHT_FLAG = 16,\n WRAP_PARTIAL_FLAG = 32,\n WRAP_PARTIAL_RIGHT_FLAG = 64,\n WRAP_ARY_FLAG = 128,\n WRAP_REARG_FLAG = 256,\n WRAP_FLIP_FLAG = 512;\n\n /** Used as default options for `_.truncate`. */\n var DEFAULT_TRUNC_LENGTH = 30,\n DEFAULT_TRUNC_OMISSION = '...';\n\n /** Used to detect hot functions by number of calls within a span of milliseconds. */\n var HOT_COUNT = 800,\n HOT_SPAN = 16;\n\n /** Used to indicate the type of lazy iteratees. */\n var LAZY_FILTER_FLAG = 1,\n LAZY_MAP_FLAG = 2,\n LAZY_WHILE_FLAG = 3;\n\n /** Used as references for various `Number` constants. */\n var INFINITY = 1 / 0,\n MAX_SAFE_INTEGER = 9007199254740991,\n MAX_INTEGER = 1.7976931348623157e+308,\n NAN = 0 / 0;\n\n /** Used as references for the maximum length and index of an array. */\n var MAX_ARRAY_LENGTH = 4294967295,\n MAX_ARRAY_INDEX = MAX_ARRAY_LENGTH - 1,\n HALF_MAX_ARRAY_LENGTH = MAX_ARRAY_LENGTH >>> 1;\n\n /** Used to associate wrap methods with their bit flags. */\n var wrapFlags = [\n ['ary', WRAP_ARY_FLAG],\n ['bind', WRAP_BIND_FLAG],\n ['bindKey', WRAP_BIND_KEY_FLAG],\n ['curry', WRAP_CURRY_FLAG],\n ['curryRight', WRAP_CURRY_RIGHT_FLAG],\n ['flip', WRAP_FLIP_FLAG],\n ['partial', WRAP_PARTIAL_FLAG],\n ['partialRight', WRAP_PARTIAL_RIGHT_FLAG],\n ['rearg', WRAP_REARG_FLAG]\n ];\n\n /** `Object#toString` result references. */\n var argsTag = '[object Arguments]',\n arrayTag = '[object Array]',\n asyncTag = '[object AsyncFunction]',\n boolTag = '[object Boolean]',\n dateTag = '[object Date]',\n domExcTag = '[object DOMException]',\n errorTag = '[object Error]',\n funcTag = '[object Function]',\n genTag = '[object GeneratorFunction]',\n mapTag = '[object Map]',\n numberTag = '[object Number]',\n nullTag = '[object Null]',\n objectTag = '[object Object]',\n promiseTag = '[object Promise]',\n proxyTag = '[object Proxy]',\n regexpTag = '[object RegExp]',\n setTag = '[object Set]',\n stringTag = '[object String]',\n symbolTag = '[object Symbol]',\n undefinedTag = '[object Undefined]',\n weakMapTag = '[object WeakMap]',\n weakSetTag = '[object WeakSet]';\n\n var arrayBufferTag = '[object ArrayBuffer]',\n dataViewTag = '[object DataView]',\n float32Tag = '[object Float32Array]',\n float64Tag = '[object Float64Array]',\n int8Tag = '[object Int8Array]',\n int16Tag = '[object Int16Array]',\n int32Tag = '[object Int32Array]',\n uint8Tag = '[object Uint8Array]',\n uint8ClampedTag = '[object Uint8ClampedArray]',\n uint16Tag = '[object Uint16Array]',\n uint32Tag = '[object Uint32Array]';\n\n /** Used to match empty string literals in compiled template source. */\n var reEmptyStringLeading = /\\b__p \\+= '';/g,\n reEmptyStringMiddle = /\\b(__p \\+=) '' \\+/g,\n reEmptyStringTrailing = /(__e\\(.*?\\)|\\b__t\\)) \\+\\n'';/g;\n\n /** Used to match HTML entities and HTML characters. */\n var reEscapedHtml = /&(?:amp|lt|gt|quot|#39);/g,\n reUnescapedHtml = /[&<>\"']/g,\n reHasEscapedHtml = RegExp(reEscapedHtml.source),\n reHasUnescapedHtml = RegExp(reUnescapedHtml.source);\n\n /** Used to match template delimiters. */\n var reEscape = /<%-([\\s\\S]+?)%>/g,\n reEvaluate = /<%([\\s\\S]+?)%>/g,\n reInterpolate = /<%=([\\s\\S]+?)%>/g;\n\n /** Used to match property names within property paths. */\n var reIsDeepProp = /\\.|\\[(?:[^[\\]]*|([\"'])(?:(?!\\1)[^\\\\]|\\\\.)*?\\1)\\]/,\n reIsPlainProp = /^\\w*$/,\n rePropName = /[^.[\\]]+|\\[(?:(-?\\d+(?:\\.\\d+)?)|([\"'])((?:(?!\\2)[^\\\\]|\\\\.)*?)\\2)\\]|(?=(?:\\.|\\[\\])(?:\\.|\\[\\]|$))/g;\n\n /**\n * Used to match `RegExp`\n * [syntax characters](http://ecma-international.org/ecma-262/7.0/#sec-patterns).\n */\n var reRegExpChar = /[\\\\^$.*+?()[\\]{}|]/g,\n reHasRegExpChar = RegExp(reRegExpChar.source);\n\n /** Used to match leading whitespace. */\n var reTrimStart = /^\\s+/;\n\n /** Used to match a single whitespace character. */\n var reWhitespace = /\\s/;\n\n /** Used to match wrap detail comments. */\n var reWrapComment = /\\{(?:\\n\\/\\* \\[wrapped with .+\\] \\*\\/)?\\n?/,\n reWrapDetails = /\\{\\n\\/\\* \\[wrapped with (.+)\\] \\*/,\n reSplitDetails = /,? & /;\n\n /** Used to match words composed of alphanumeric characters. */\n var reAsciiWord = /[^\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\x7f]+/g;\n\n /**\n * Used to validate the `validate` option in `_.template` variable.\n *\n * Forbids characters which could potentially change the meaning of the function argument definition:\n * - \"(),\" (modification of function parameters)\n * - \"=\" (default value)\n * - \"[]{}\" (destructuring of function parameters)\n * - \"/\" (beginning of a comment)\n * - whitespace\n */\n var reForbiddenIdentifierChars = /[()=,{}\\[\\]\\/\\s]/;\n\n /** Used to match backslashes in property paths. */\n var reEscapeChar = /\\\\(\\\\)?/g;\n\n /**\n * Used to match\n * [ES template delimiters](http://ecma-international.org/ecma-262/7.0/#sec-template-literal-lexical-components).\n */\n var reEsTemplate = /\\$\\{([^\\\\}]*(?:\\\\.[^\\\\}]*)*)\\}/g;\n\n /** Used to match `RegExp` flags from their coerced string values. */\n var reFlags = /\\w*$/;\n\n /** Used to detect bad signed hexadecimal string values. */\n var reIsBadHex = /^[-+]0x[0-9a-f]+$/i;\n\n /** Used to detect binary string values. */\n var reIsBinary = /^0b[01]+$/i;\n\n /** Used to detect host constructors (Safari). */\n var reIsHostCtor = /^\\[object .+?Constructor\\]$/;\n\n /** Used to detect octal string values. */\n var reIsOctal = /^0o[0-7]+$/i;\n\n /** Used to detect unsigned integer values. */\n var reIsUint = /^(?:0|[1-9]\\d*)$/;\n\n /** Used to match Latin Unicode letters (excluding mathematical operators). */\n var reLatin = /[\\xc0-\\xd6\\xd8-\\xf6\\xf8-\\xff\\u0100-\\u017f]/g;\n\n /** Used to ensure capturing order of template delimiters. */\n var reNoMatch = /($^)/;\n\n /** Used to match unescaped characters in compiled string literals. */\n var reUnescapedString = /['\\n\\r\\u2028\\u2029\\\\]/g;\n\n /** Used to compose unicode character classes. */\n var rsAstralRange = '\\\\ud800-\\\\udfff',\n rsComboMarksRange = '\\\\u0300-\\\\u036f',\n reComboHalfMarksRange = '\\\\ufe20-\\\\ufe2f',\n rsComboSymbolsRange = '\\\\u20d0-\\\\u20ff',\n rsComboRange = rsComboMarksRange + reComboHalfMarksRange + rsComboSymbolsRange,\n rsDingbatRange = '\\\\u2700-\\\\u27bf',\n rsLowerRange = 'a-z\\\\xdf-\\\\xf6\\\\xf8-\\\\xff',\n rsMathOpRange = '\\\\xac\\\\xb1\\\\xd7\\\\xf7',\n rsNonCharRange = '\\\\x00-\\\\x2f\\\\x3a-\\\\x40\\\\x5b-\\\\x60\\\\x7b-\\\\xbf',\n rsPunctuationRange = '\\\\u2000-\\\\u206f',\n rsSpaceRange = ' \\\\t\\\\x0b\\\\f\\\\xa0\\\\ufeff\\\\n\\\\r\\\\u2028\\\\u2029\\\\u1680\\\\u180e\\\\u2000\\\\u2001\\\\u2002\\\\u2003\\\\u2004\\\\u2005\\\\u2006\\\\u2007\\\\u2008\\\\u2009\\\\u200a\\\\u202f\\\\u205f\\\\u3000',\n rsUpperRange = 'A-Z\\\\xc0-\\\\xd6\\\\xd8-\\\\xde',\n rsVarRange = '\\\\ufe0e\\\\ufe0f',\n rsBreakRange = rsMathOpRange + rsNonCharRange + rsPunctuationRange + rsSpaceRange;\n\n /** Used to compose unicode capture groups. */\n var rsApos = \"['\\u2019]\",\n rsAstral = '[' + rsAstralRange + ']',\n rsBreak = '[' + rsBreakRange + ']',\n rsCombo = '[' + rsComboRange + ']',\n rsDigits = '\\\\d+',\n rsDingbat = '[' + rsDingbatRange + ']',\n rsLower = '[' + rsLowerRange + ']',\n rsMisc = '[^' + rsAstralRange + rsBreakRange + rsDigits + rsDingbatRange + rsLowerRange + rsUpperRange + ']',\n rsFitz = '\\\\ud83c[\\\\udffb-\\\\udfff]',\n rsModifier = '(?:' + rsCombo + '|' + rsFitz + ')',\n rsNonAstral = '[^' + rsAstralRange + ']',\n rsRegional = '(?:\\\\ud83c[\\\\udde6-\\\\uddff]){2}',\n rsSurrPair = '[\\\\ud800-\\\\udbff][\\\\udc00-\\\\udfff]',\n rsUpper = '[' + rsUpperRange + ']',\n rsZWJ = '\\\\u200d';\n\n /** Used to compose unicode regexes. */\n var rsMiscLower = '(?:' + rsLower + '|' + rsMisc + ')',\n rsMiscUpper = '(?:' + rsUpper + '|' + rsMisc + ')',\n rsOptContrLower = '(?:' + rsApos + '(?:d|ll|m|re|s|t|ve))?',\n rsOptContrUpper = '(?:' + rsApos + '(?:D|LL|M|RE|S|T|VE))?',\n reOptMod = rsModifier + '?',\n rsOptVar = '[' + rsVarRange + ']?',\n rsOptJoin = '(?:' + rsZWJ + '(?:' + [rsNonAstral, rsRegional, rsSurrPair].join('|') + ')' + rsOptVar + reOptMod + ')*',\n rsOrdLower = '\\\\d*(?:1st|2nd|3rd|(?![123])\\\\dth)(?=\\\\b|[A-Z_])',\n rsOrdUpper = '\\\\d*(?:1ST|2ND|3RD|(?![123])\\\\dTH)(?=\\\\b|[a-z_])',\n rsSeq = rsOptVar + reOptMod + rsOptJoin,\n rsEmoji = '(?:' + [rsDingbat, rsRegional, rsSurrPair].join('|') + ')' + rsSeq,\n rsSymbol = '(?:' + [rsNonAstral + rsCombo + '?', rsCombo, rsRegional, rsSurrPair, rsAstral].join('|') + ')';\n\n /** Used to match apostrophes. */\n var reApos = RegExp(rsApos, 'g');\n\n /**\n * Used to match [combining diacritical marks](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks) and\n * [combining diacritical marks for symbols](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks_for_Symbols).\n */\n var reComboMark = RegExp(rsCombo, 'g');\n\n /** Used to match [string symbols](https://mathiasbynens.be/notes/javascript-unicode). */\n var reUnicode = RegExp(rsFitz + '(?=' + rsFitz + ')|' + rsSymbol + rsSeq, 'g');\n\n /** Used to match complex or compound words. */\n var reUnicodeWord = RegExp([\n rsUpper + '?' + rsLower + '+' + rsOptContrLower + '(?=' + [rsBreak, rsUpper, '$'].join('|') + ')',\n rsMiscUpper + '+' + rsOptContrUpper + '(?=' + [rsBreak, rsUpper + rsMiscLower, '$'].join('|') + ')',\n rsUpper + '?' + rsMiscLower + '+' + rsOptContrLower,\n rsUpper + '+' + rsOptContrUpper,\n rsOrdUpper,\n rsOrdLower,\n rsDigits,\n rsEmoji\n ].join('|'), 'g');\n\n /** Used to detect strings with [zero-width joiners or code points from the astral planes](http://eev.ee/blog/2015/09/12/dark-corners-of-unicode/). */\n var reHasUnicode = RegExp('[' + rsZWJ + rsAstralRange + rsComboRange + rsVarRange + ']');\n\n /** Used to detect strings that need a more robust regexp to match words. */\n var reHasUnicodeWord = /[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/;\n\n /** Used to assign default `context` object properties. */\n var contextProps = [\n 'Array', 'Buffer', 'DataView', 'Date', 'Error', 'Float32Array', 'Float64Array',\n 'Function', 'Int8Array', 'Int16Array', 'Int32Array', 'Map', 'Math', 'Object',\n 'Promise', 'RegExp', 'Set', 'String', 'Symbol', 'TypeError', 'Uint8Array',\n 'Uint8ClampedArray', 'Uint16Array', 'Uint32Array', 'WeakMap',\n '_', 'clearTimeout', 'isFinite', 'parseInt', 'setTimeout'\n ];\n\n /** Used to make template sourceURLs easier to identify. */\n var templateCounter = -1;\n\n /** Used to identify `toStringTag` values of typed arrays. */\n var typedArrayTags = {};\n typedArrayTags[float32Tag] = typedArrayTags[float64Tag] =\n typedArrayTags[int8Tag] = typedArrayTags[int16Tag] =\n typedArrayTags[int32Tag] = typedArrayTags[uint8Tag] =\n typedArrayTags[uint8ClampedTag] = typedArrayTags[uint16Tag] =\n typedArrayTags[uint32Tag] = true;\n typedArrayTags[argsTag] = typedArrayTags[arrayTag] =\n typedArrayTags[arrayBufferTag] = typedArrayTags[boolTag] =\n typedArrayTags[dataViewTag] = typedArrayTags[dateTag] =\n typedArrayTags[errorTag] = typedArrayTags[funcTag] =\n typedArrayTags[mapTag] = typedArrayTags[numberTag] =\n typedArrayTags[objectTag] = typedArrayTags[regexpTag] =\n typedArrayTags[setTag] = typedArrayTags[stringTag] =\n typedArrayTags[weakMapTag] = false;\n\n /** Used to identify `toStringTag` values supported by `_.clone`. */\n var cloneableTags = {};\n cloneableTags[argsTag] = cloneableTags[arrayTag] =\n cloneableTags[arrayBufferTag] = cloneableTags[dataViewTag] =\n cloneableTags[boolTag] = cloneableTags[dateTag] =\n cloneableTags[float32Tag] = cloneableTags[float64Tag] =\n cloneableTags[int8Tag] = cloneableTags[int16Tag] =\n cloneableTags[int32Tag] = cloneableTags[mapTag] =\n cloneableTags[numberTag] = cloneableTags[objectTag] =\n cloneableTags[regexpTag] = cloneableTags[setTag] =\n cloneableTags[stringTag] = cloneableTags[symbolTag] =\n cloneableTags[uint8Tag] = cloneableTags[uint8ClampedTag] =\n cloneableTags[uint16Tag] = cloneableTags[uint32Tag] = true;\n cloneableTags[errorTag] = cloneableTags[funcTag] =\n cloneableTags[weakMapTag] = false;\n\n /** Used to map Latin Unicode letters to basic Latin letters. */\n var deburredLetters = {\n // Latin-1 Supplement block.\n '\\xc0': 'A', '\\xc1': 'A', '\\xc2': 'A', '\\xc3': 'A', '\\xc4': 'A', '\\xc5': 'A',\n '\\xe0': 'a', '\\xe1': 'a', '\\xe2': 'a', '\\xe3': 'a', '\\xe4': 'a', '\\xe5': 'a',\n '\\xc7': 'C', '\\xe7': 'c',\n '\\xd0': 'D', '\\xf0': 'd',\n '\\xc8': 'E', '\\xc9': 'E', '\\xca': 'E', '\\xcb': 'E',\n '\\xe8': 'e', '\\xe9': 'e', '\\xea': 'e', '\\xeb': 'e',\n '\\xcc': 'I', '\\xcd': 'I', '\\xce': 'I', '\\xcf': 'I',\n '\\xec': 'i', '\\xed': 'i', '\\xee': 'i', '\\xef': 'i',\n '\\xd1': 'N', '\\xf1': 'n',\n '\\xd2': 'O', '\\xd3': 'O', '\\xd4': 'O', '\\xd5': 'O', '\\xd6': 'O', '\\xd8': 'O',\n '\\xf2': 'o', '\\xf3': 'o', '\\xf4': 'o', '\\xf5': 'o', '\\xf6': 'o', '\\xf8': 'o',\n '\\xd9': 'U', '\\xda': 'U', '\\xdb': 'U', '\\xdc': 'U',\n '\\xf9': 'u', '\\xfa': 'u', '\\xfb': 'u', '\\xfc': 'u',\n '\\xdd': 'Y', '\\xfd': 'y', '\\xff': 'y',\n '\\xc6': 'Ae', '\\xe6': 'ae',\n '\\xde': 'Th', '\\xfe': 'th',\n '\\xdf': 'ss',\n // Latin Extended-A block.\n '\\u0100': 'A', '\\u0102': 'A', '\\u0104': 'A',\n '\\u0101': 'a', '\\u0103': 'a', '\\u0105': 'a',\n '\\u0106': 'C', '\\u0108': 'C', '\\u010a': 'C', '\\u010c': 'C',\n '\\u0107': 'c', '\\u0109': 'c', '\\u010b': 'c', '\\u010d': 'c',\n '\\u010e': 'D', '\\u0110': 'D', '\\u010f': 'd', '\\u0111': 'd',\n '\\u0112': 'E', '\\u0114': 'E', '\\u0116': 'E', '\\u0118': 'E', '\\u011a': 'E',\n '\\u0113': 'e', '\\u0115': 'e', '\\u0117': 'e', '\\u0119': 'e', '\\u011b': 'e',\n '\\u011c': 'G', '\\u011e': 'G', '\\u0120': 'G', '\\u0122': 'G',\n '\\u011d': 'g', '\\u011f': 'g', '\\u0121': 'g', '\\u0123': 'g',\n '\\u0124': 'H', '\\u0126': 'H', '\\u0125': 'h', '\\u0127': 'h',\n '\\u0128': 'I', '\\u012a': 'I', '\\u012c': 'I', '\\u012e': 'I', '\\u0130': 'I',\n '\\u0129': 'i', '\\u012b': 'i', '\\u012d': 'i', '\\u012f': 'i', '\\u0131': 'i',\n '\\u0134': 'J', '\\u0135': 'j',\n '\\u0136': 'K', '\\u0137': 'k', '\\u0138': 'k',\n '\\u0139': 'L', '\\u013b': 'L', '\\u013d': 'L', '\\u013f': 'L', '\\u0141': 'L',\n '\\u013a': 'l', '\\u013c': 'l', '\\u013e': 'l', '\\u0140': 'l', '\\u0142': 'l',\n '\\u0143': 'N', '\\u0145': 'N', '\\u0147': 'N', '\\u014a': 'N',\n '\\u0144': 'n', '\\u0146': 'n', '\\u0148': 'n', '\\u014b': 'n',\n '\\u014c': 'O', '\\u014e': 'O', '\\u0150': 'O',\n '\\u014d': 'o', '\\u014f': 'o', '\\u0151': 'o',\n '\\u0154': 'R', '\\u0156': 'R', '\\u0158': 'R',\n '\\u0155': 'r', '\\u0157': 'r', '\\u0159': 'r',\n '\\u015a': 'S', '\\u015c': 'S', '\\u015e': 'S', '\\u0160': 'S',\n '\\u015b': 's', '\\u015d': 's', '\\u015f': 's', '\\u0161': 's',\n '\\u0162': 'T', '\\u0164': 'T', '\\u0166': 'T',\n '\\u0163': 't', '\\u0165': 't', '\\u0167': 't',\n '\\u0168': 'U', '\\u016a': 'U', '\\u016c': 'U', '\\u016e': 'U', '\\u0170': 'U', '\\u0172': 'U',\n '\\u0169': 'u', '\\u016b': 'u', '\\u016d': 'u', '\\u016f': 'u', '\\u0171': 'u', '\\u0173': 'u',\n '\\u0174': 'W', '\\u0175': 'w',\n '\\u0176': 'Y', '\\u0177': 'y', '\\u0178': 'Y',\n '\\u0179': 'Z', '\\u017b': 'Z', '\\u017d': 'Z',\n '\\u017a': 'z', '\\u017c': 'z', '\\u017e': 'z',\n '\\u0132': 'IJ', '\\u0133': 'ij',\n '\\u0152': 'Oe', '\\u0153': 'oe',\n '\\u0149': \"'n\", '\\u017f': 's'\n };\n\n /** Used to map characters to HTML entities. */\n var htmlEscapes = {\n '&': '&',\n '<': '<',\n '>': '>',\n '\"': '"',\n \"'\": '''\n };\n\n /** Used to map HTML entities to characters. */\n var htmlUnescapes = {\n '&': '&',\n '<': '<',\n '>': '>',\n '"': '\"',\n ''': \"'\"\n };\n\n /** Used to escape characters for inclusion in compiled string literals. */\n var stringEscapes = {\n '\\\\': '\\\\',\n \"'\": \"'\",\n '\\n': 'n',\n '\\r': 'r',\n '\\u2028': 'u2028',\n '\\u2029': 'u2029'\n };\n\n /** Built-in method references without a dependency on `root`. */\n var freeParseFloat = parseFloat,\n freeParseInt = parseInt;\n\n /** Detect free variable `global` from Node.js. */\n var freeGlobal = typeof global == 'object' && global && global.Object === Object && global;\n\n /** Detect free variable `self`. */\n var freeSelf = typeof self == 'object' && self && self.Object === Object && self;\n\n /** Used as a reference to the global object. */\n var root = freeGlobal || freeSelf || Function('return this')();\n\n /** Detect free variable `exports`. */\n var freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports;\n\n /** Detect free variable `module`. */\n var freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module;\n\n /** Detect the popular CommonJS extension `module.exports`. */\n var moduleExports = freeModule && freeModule.exports === freeExports;\n\n /** Detect free variable `process` from Node.js. */\n var freeProcess = moduleExports && freeGlobal.process;\n\n /** Used to access faster Node.js helpers. */\n var nodeUtil = (function() {\n try {\n // Use `util.types` for Node.js 10+.\n var types = freeModule && freeModule.require && freeModule.require('util').types;\n\n if (types) {\n return types;\n }\n\n // Legacy `process.binding('util')` for Node.js < 10.\n return freeProcess && freeProcess.binding && freeProcess.binding('util');\n } catch (e) {}\n }());\n\n /* Node.js helper references. */\n var nodeIsArrayBuffer = nodeUtil && nodeUtil.isArrayBuffer,\n nodeIsDate = nodeUtil && nodeUtil.isDate,\n nodeIsMap = nodeUtil && nodeUtil.isMap,\n nodeIsRegExp = nodeUtil && nodeUtil.isRegExp,\n nodeIsSet = nodeUtil && nodeUtil.isSet,\n nodeIsTypedArray = nodeUtil && nodeUtil.isTypedArray;\n\n /*--------------------------------------------------------------------------*/\n\n /**\n * A faster alternative to `Function#apply`, this function invokes `func`\n * with the `this` binding of `thisArg` and the arguments of `args`.\n *\n * @private\n * @param {Function} func The function to invoke.\n * @param {*} thisArg The `this` binding of `func`.\n * @param {Array} args The arguments to invoke `func` with.\n * @returns {*} Returns the result of `func`.\n */\n function apply(func, thisArg, args) {\n switch (args.length) {\n case 0: return func.call(thisArg);\n case 1: return func.call(thisArg, args[0]);\n case 2: return func.call(thisArg, args[0], args[1]);\n case 3: return func.call(thisArg, args[0], args[1], args[2]);\n }\n return func.apply(thisArg, args);\n }\n\n /**\n * A specialized version of `baseAggregator` for arrays.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} setter The function to set `accumulator` values.\n * @param {Function} iteratee The iteratee to transform keys.\n * @param {Object} accumulator The initial aggregated object.\n * @returns {Function} Returns `accumulator`.\n */\n function arrayAggregator(array, setter, iteratee, accumulator) {\n var index = -1,\n length = array == null ? 0 : array.length;\n\n while (++index < length) {\n var value = array[index];\n setter(accumulator, value, iteratee(value), array);\n }\n return accumulator;\n }\n\n /**\n * A specialized version of `_.forEach` for arrays without support for\n * iteratee shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array} Returns `array`.\n */\n function arrayEach(array, iteratee) {\n var index = -1,\n length = array == null ? 0 : array.length;\n\n while (++index < length) {\n if (iteratee(array[index], index, array) === false) {\n break;\n }\n }\n return array;\n }\n\n /**\n * A specialized version of `_.forEachRight` for arrays without support for\n * iteratee shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array} Returns `array`.\n */\n function arrayEachRight(array, iteratee) {\n var length = array == null ? 0 : array.length;\n\n while (length--) {\n if (iteratee(array[length], length, array) === false) {\n break;\n }\n }\n return array;\n }\n\n /**\n * A specialized version of `_.every` for arrays without support for\n * iteratee shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} predicate The function invoked per iteration.\n * @returns {boolean} Returns `true` if all elements pass the predicate check,\n * else `false`.\n */\n function arrayEvery(array, predicate) {\n var index = -1,\n length = array == null ? 0 : array.length;\n\n while (++index < length) {\n if (!predicate(array[index], index, array)) {\n return false;\n }\n }\n return true;\n }\n\n /**\n * A specialized version of `_.filter` for arrays without support for\n * iteratee shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} predicate The function invoked per iteration.\n * @returns {Array} Returns the new filtered array.\n */\n function arrayFilter(array, predicate) {\n var index = -1,\n length = array == null ? 0 : array.length,\n resIndex = 0,\n result = [];\n\n while (++index < length) {\n var value = array[index];\n if (predicate(value, index, array)) {\n result[resIndex++] = value;\n }\n }\n return result;\n }\n\n /**\n * A specialized version of `_.includes` for arrays without support for\n * specifying an index to search from.\n *\n * @private\n * @param {Array} [array] The array to inspect.\n * @param {*} target The value to search for.\n * @returns {boolean} Returns `true` if `target` is found, else `false`.\n */\n function arrayIncludes(array, value) {\n var length = array == null ? 0 : array.length;\n return !!length && baseIndexOf(array, value, 0) > -1;\n }\n\n /**\n * This function is like `arrayIncludes` except that it accepts a comparator.\n *\n * @private\n * @param {Array} [array] The array to inspect.\n * @param {*} target The value to search for.\n * @param {Function} comparator The comparator invoked per element.\n * @returns {boolean} Returns `true` if `target` is found, else `false`.\n */\n function arrayIncludesWith(array, value, comparator) {\n var index = -1,\n length = array == null ? 0 : array.length;\n\n while (++index < length) {\n if (comparator(value, array[index])) {\n return true;\n }\n }\n return false;\n }\n\n /**\n * A specialized version of `_.map` for arrays without support for iteratee\n * shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array} Returns the new mapped array.\n */\n function arrayMap(array, iteratee) {\n var index = -1,\n length = array == null ? 0 : array.length,\n result = Array(length);\n\n while (++index < length) {\n result[index] = iteratee(array[index], index, array);\n }\n return result;\n }\n\n /**\n * Appends the elements of `values` to `array`.\n *\n * @private\n * @param {Array} array The array to modify.\n * @param {Array} values The values to append.\n * @returns {Array} Returns `array`.\n */\n function arrayPush(array, values) {\n var index = -1,\n length = values.length,\n offset = array.length;\n\n while (++index < length) {\n array[offset + index] = values[index];\n }\n return array;\n }\n\n /**\n * A specialized version of `_.reduce` for arrays without support for\n * iteratee shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @param {*} [accumulator] The initial value.\n * @param {boolean} [initAccum] Specify using the first element of `array` as\n * the initial value.\n * @returns {*} Returns the accumulated value.\n */\n function arrayReduce(array, iteratee, accumulator, initAccum) {\n var index = -1,\n length = array == null ? 0 : array.length;\n\n if (initAccum && length) {\n accumulator = array[++index];\n }\n while (++index < length) {\n accumulator = iteratee(accumulator, array[index], index, array);\n }\n return accumulator;\n }\n\n /**\n * A specialized version of `_.reduceRight` for arrays without support for\n * iteratee shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @param {*} [accumulator] The initial value.\n * @param {boolean} [initAccum] Specify using the last element of `array` as\n * the initial value.\n * @returns {*} Returns the accumulated value.\n */\n function arrayReduceRight(array, iteratee, accumulator, initAccum) {\n var length = array == null ? 0 : array.length;\n if (initAccum && length) {\n accumulator = array[--length];\n }\n while (length--) {\n accumulator = iteratee(accumulator, array[length], length, array);\n }\n return accumulator;\n }\n\n /**\n * A specialized version of `_.some` for arrays without support for iteratee\n * shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} predicate The function invoked per iteration.\n * @returns {boolean} Returns `true` if any element passes the predicate check,\n * else `false`.\n */\n function arraySome(array, predicate) {\n var index = -1,\n length = array == null ? 0 : array.length;\n\n while (++index < length) {\n if (predicate(array[index], index, array)) {\n return true;\n }\n }\n return false;\n }\n\n /**\n * Gets the size of an ASCII `string`.\n *\n * @private\n * @param {string} string The string inspect.\n * @returns {number} Returns the string size.\n */\n var asciiSize = baseProperty('length');\n\n /**\n * Converts an ASCII `string` to an array.\n *\n * @private\n * @param {string} string The string to convert.\n * @returns {Array} Returns the converted array.\n */\n function asciiToArray(string) {\n return string.split('');\n }\n\n /**\n * Splits an ASCII `string` into an array of its words.\n *\n * @private\n * @param {string} The string to inspect.\n * @returns {Array} Returns the words of `string`.\n */\n function asciiWords(string) {\n return string.match(reAsciiWord) || [];\n }\n\n /**\n * The base implementation of methods like `_.findKey` and `_.findLastKey`,\n * without support for iteratee shorthands, which iterates over `collection`\n * using `eachFunc`.\n *\n * @private\n * @param {Array|Object} collection The collection to inspect.\n * @param {Function} predicate The function invoked per iteration.\n * @param {Function} eachFunc The function to iterate over `collection`.\n * @returns {*} Returns the found element or its key, else `undefined`.\n */\n function baseFindKey(collection, predicate, eachFunc) {\n var result;\n eachFunc(collection, function(value, key, collection) {\n if (predicate(value, key, collection)) {\n result = key;\n return false;\n }\n });\n return result;\n }\n\n /**\n * The base implementation of `_.findIndex` and `_.findLastIndex` without\n * support for iteratee shorthands.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {Function} predicate The function invoked per iteration.\n * @param {number} fromIndex The index to search from.\n * @param {boolean} [fromRight] Specify iterating from right to left.\n * @returns {number} Returns the index of the matched value, else `-1`.\n */\n function baseFindIndex(array, predicate, fromIndex, fromRight) {\n var length = array.length,\n index = fromIndex + (fromRight ? 1 : -1);\n\n while ((fromRight ? index-- : ++index < length)) {\n if (predicate(array[index], index, array)) {\n return index;\n }\n }\n return -1;\n }\n\n /**\n * The base implementation of `_.indexOf` without `fromIndex` bounds checks.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {*} value The value to search for.\n * @param {number} fromIndex The index to search from.\n * @returns {number} Returns the index of the matched value, else `-1`.\n */\n function baseIndexOf(array, value, fromIndex) {\n return value === value\n ? strictIndexOf(array, value, fromIndex)\n : baseFindIndex(array, baseIsNaN, fromIndex);\n }\n\n /**\n * This function is like `baseIndexOf` except that it accepts a comparator.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {*} value The value to search for.\n * @param {number} fromIndex The index to search from.\n * @param {Function} comparator The comparator invoked per element.\n * @returns {number} Returns the index of the matched value, else `-1`.\n */\n function baseIndexOfWith(array, value, fromIndex, comparator) {\n var index = fromIndex - 1,\n length = array.length;\n\n while (++index < length) {\n if (comparator(array[index], value)) {\n return index;\n }\n }\n return -1;\n }\n\n /**\n * The base implementation of `_.isNaN` without support for number objects.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is `NaN`, else `false`.\n */\n function baseIsNaN(value) {\n return value !== value;\n }\n\n /**\n * The base implementation of `_.mean` and `_.meanBy` without support for\n * iteratee shorthands.\n *\n * @private\n * @param {Array} array The array to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {number} Returns the mean.\n */\n function baseMean(array, iteratee) {\n var length = array == null ? 0 : array.length;\n return length ? (baseSum(array, iteratee) / length) : NAN;\n }\n\n /**\n * The base implementation of `_.property` without support for deep paths.\n *\n * @private\n * @param {string} key The key of the property to get.\n * @returns {Function} Returns the new accessor function.\n */\n function baseProperty(key) {\n return function(object) {\n return object == null ? undefined : object[key];\n };\n }\n\n /**\n * The base implementation of `_.propertyOf` without support for deep paths.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Function} Returns the new accessor function.\n */\n function basePropertyOf(object) {\n return function(key) {\n return object == null ? undefined : object[key];\n };\n }\n\n /**\n * The base implementation of `_.reduce` and `_.reduceRight`, without support\n * for iteratee shorthands, which iterates over `collection` using `eachFunc`.\n *\n * @private\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @param {*} accumulator The initial value.\n * @param {boolean} initAccum Specify using the first or last element of\n * `collection` as the initial value.\n * @param {Function} eachFunc The function to iterate over `collection`.\n * @returns {*} Returns the accumulated value.\n */\n function baseReduce(collection, iteratee, accumulator, initAccum, eachFunc) {\n eachFunc(collection, function(value, index, collection) {\n accumulator = initAccum\n ? (initAccum = false, value)\n : iteratee(accumulator, value, index, collection);\n });\n return accumulator;\n }\n\n /**\n * The base implementation of `_.sortBy` which uses `comparer` to define the\n * sort order of `array` and replaces criteria objects with their corresponding\n * values.\n *\n * @private\n * @param {Array} array The array to sort.\n * @param {Function} comparer The function to define sort order.\n * @returns {Array} Returns `array`.\n */\n function baseSortBy(array, comparer) {\n var length = array.length;\n\n array.sort(comparer);\n while (length--) {\n array[length] = array[length].value;\n }\n return array;\n }\n\n /**\n * The base implementation of `_.sum` and `_.sumBy` without support for\n * iteratee shorthands.\n *\n * @private\n * @param {Array} array The array to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {number} Returns the sum.\n */\n function baseSum(array, iteratee) {\n var result,\n index = -1,\n length = array.length;\n\n while (++index < length) {\n var current = iteratee(array[index]);\n if (current !== undefined) {\n result = result === undefined ? current : (result + current);\n }\n }\n return result;\n }\n\n /**\n * The base implementation of `_.times` without support for iteratee shorthands\n * or max array length checks.\n *\n * @private\n * @param {number} n The number of times to invoke `iteratee`.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array} Returns the array of results.\n */\n function baseTimes(n, iteratee) {\n var index = -1,\n result = Array(n);\n\n while (++index < n) {\n result[index] = iteratee(index);\n }\n return result;\n }\n\n /**\n * The base implementation of `_.toPairs` and `_.toPairsIn` which creates an array\n * of key-value pairs for `object` corresponding to the property names of `props`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Array} props The property names to get values for.\n * @returns {Object} Returns the key-value pairs.\n */\n function baseToPairs(object, props) {\n return arrayMap(props, function(key) {\n return [key, object[key]];\n });\n }\n\n /**\n * The base implementation of `_.trim`.\n *\n * @private\n * @param {string} string The string to trim.\n * @returns {string} Returns the trimmed string.\n */\n function baseTrim(string) {\n return string\n ? string.slice(0, trimmedEndIndex(string) + 1).replace(reTrimStart, '')\n : string;\n }\n\n /**\n * The base implementation of `_.unary` without support for storing metadata.\n *\n * @private\n * @param {Function} func The function to cap arguments for.\n * @returns {Function} Returns the new capped function.\n */\n function baseUnary(func) {\n return function(value) {\n return func(value);\n };\n }\n\n /**\n * The base implementation of `_.values` and `_.valuesIn` which creates an\n * array of `object` property values corresponding to the property names\n * of `props`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Array} props The property names to get values for.\n * @returns {Object} Returns the array of property values.\n */\n function baseValues(object, props) {\n return arrayMap(props, function(key) {\n return object[key];\n });\n }\n\n /**\n * Checks if a `cache` value for `key` exists.\n *\n * @private\n * @param {Object} cache The cache to query.\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\n function cacheHas(cache, key) {\n return cache.has(key);\n }\n\n /**\n * Used by `_.trim` and `_.trimStart` to get the index of the first string symbol\n * that is not found in the character symbols.\n *\n * @private\n * @param {Array} strSymbols The string symbols to inspect.\n * @param {Array} chrSymbols The character symbols to find.\n * @returns {number} Returns the index of the first unmatched string symbol.\n */\n function charsStartIndex(strSymbols, chrSymbols) {\n var index = -1,\n length = strSymbols.length;\n\n while (++index < length && baseIndexOf(chrSymbols, strSymbols[index], 0) > -1) {}\n return index;\n }\n\n /**\n * Used by `_.trim` and `_.trimEnd` to get the index of the last string symbol\n * that is not found in the character symbols.\n *\n * @private\n * @param {Array} strSymbols The string symbols to inspect.\n * @param {Array} chrSymbols The character symbols to find.\n * @returns {number} Returns the index of the last unmatched string symbol.\n */\n function charsEndIndex(strSymbols, chrSymbols) {\n var index = strSymbols.length;\n\n while (index-- && baseIndexOf(chrSymbols, strSymbols[index], 0) > -1) {}\n return index;\n }\n\n /**\n * Gets the number of `placeholder` occurrences in `array`.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {*} placeholder The placeholder to search for.\n * @returns {number} Returns the placeholder count.\n */\n function countHolders(array, placeholder) {\n var length = array.length,\n result = 0;\n\n while (length--) {\n if (array[length] === placeholder) {\n ++result;\n }\n }\n return result;\n }\n\n /**\n * Used by `_.deburr` to convert Latin-1 Supplement and Latin Extended-A\n * letters to basic Latin letters.\n *\n * @private\n * @param {string} letter The matched letter to deburr.\n * @returns {string} Returns the deburred letter.\n */\n var deburrLetter = basePropertyOf(deburredLetters);\n\n /**\n * Used by `_.escape` to convert characters to HTML entities.\n *\n * @private\n * @param {string} chr The matched character to escape.\n * @returns {string} Returns the escaped character.\n */\n var escapeHtmlChar = basePropertyOf(htmlEscapes);\n\n /**\n * Used by `_.template` to escape characters for inclusion in compiled string literals.\n *\n * @private\n * @param {string} chr The matched character to escape.\n * @returns {string} Returns the escaped character.\n */\n function escapeStringChar(chr) {\n return '\\\\' + stringEscapes[chr];\n }\n\n /**\n * Gets the value at `key` of `object`.\n *\n * @private\n * @param {Object} [object] The object to query.\n * @param {string} key The key of the property to get.\n * @returns {*} Returns the property value.\n */\n function getValue(object, key) {\n return object == null ? undefined : object[key];\n }\n\n /**\n * Checks if `string` contains Unicode symbols.\n *\n * @private\n * @param {string} string The string to inspect.\n * @returns {boolean} Returns `true` if a symbol is found, else `false`.\n */\n function hasUnicode(string) {\n return reHasUnicode.test(string);\n }\n\n /**\n * Checks if `string` contains a word composed of Unicode symbols.\n *\n * @private\n * @param {string} string The string to inspect.\n * @returns {boolean} Returns `true` if a word is found, else `false`.\n */\n function hasUnicodeWord(string) {\n return reHasUnicodeWord.test(string);\n }\n\n /**\n * Converts `iterator` to an array.\n *\n * @private\n * @param {Object} iterator The iterator to convert.\n * @returns {Array} Returns the converted array.\n */\n function iteratorToArray(iterator) {\n var data,\n result = [];\n\n while (!(data = iterator.next()).done) {\n result.push(data.value);\n }\n return result;\n }\n\n /**\n * Converts `map` to its key-value pairs.\n *\n * @private\n * @param {Object} map The map to convert.\n * @returns {Array} Returns the key-value pairs.\n */\n function mapToArray(map) {\n var index = -1,\n result = Array(map.size);\n\n map.forEach(function(value, key) {\n result[++index] = [key, value];\n });\n return result;\n }\n\n /**\n * Creates a unary function that invokes `func` with its argument transformed.\n *\n * @private\n * @param {Function} func The function to wrap.\n * @param {Function} transform The argument transform.\n * @returns {Function} Returns the new function.\n */\n function overArg(func, transform) {\n return function(arg) {\n return func(transform(arg));\n };\n }\n\n /**\n * Replaces all `placeholder` elements in `array` with an internal placeholder\n * and returns an array of their indexes.\n *\n * @private\n * @param {Array} array The array to modify.\n * @param {*} placeholder The placeholder to replace.\n * @returns {Array} Returns the new array of placeholder indexes.\n */\n function replaceHolders(array, placeholder) {\n var index = -1,\n length = array.length,\n resIndex = 0,\n result = [];\n\n while (++index < length) {\n var value = array[index];\n if (value === placeholder || value === PLACEHOLDER) {\n array[index] = PLACEHOLDER;\n result[resIndex++] = index;\n }\n }\n return result;\n }\n\n /**\n * Converts `set` to an array of its values.\n *\n * @private\n * @param {Object} set The set to convert.\n * @returns {Array} Returns the values.\n */\n function setToArray(set) {\n var index = -1,\n result = Array(set.size);\n\n set.forEach(function(value) {\n result[++index] = value;\n });\n return result;\n }\n\n /**\n * Converts `set` to its value-value pairs.\n *\n * @private\n * @param {Object} set The set to convert.\n * @returns {Array} Returns the value-value pairs.\n */\n function setToPairs(set) {\n var index = -1,\n result = Array(set.size);\n\n set.forEach(function(value) {\n result[++index] = [value, value];\n });\n return result;\n }\n\n /**\n * A specialized version of `_.indexOf` which performs strict equality\n * comparisons of values, i.e. `===`.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {*} value The value to search for.\n * @param {number} fromIndex The index to search from.\n * @returns {number} Returns the index of the matched value, else `-1`.\n */\n function strictIndexOf(array, value, fromIndex) {\n var index = fromIndex - 1,\n length = array.length;\n\n while (++index < length) {\n if (array[index] === value) {\n return index;\n }\n }\n return -1;\n }\n\n /**\n * A specialized version of `_.lastIndexOf` which performs strict equality\n * comparisons of values, i.e. `===`.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {*} value The value to search for.\n * @param {number} fromIndex The index to search from.\n * @returns {number} Returns the index of the matched value, else `-1`.\n */\n function strictLastIndexOf(array, value, fromIndex) {\n var index = fromIndex + 1;\n while (index--) {\n if (array[index] === value) {\n return index;\n }\n }\n return index;\n }\n\n /**\n * Gets the number of symbols in `string`.\n *\n * @private\n * @param {string} string The string to inspect.\n * @returns {number} Returns the string size.\n */\n function stringSize(string) {\n return hasUnicode(string)\n ? unicodeSize(string)\n : asciiSize(string);\n }\n\n /**\n * Converts `string` to an array.\n *\n * @private\n * @param {string} string The string to convert.\n * @returns {Array} Returns the converted array.\n */\n function stringToArray(string) {\n return hasUnicode(string)\n ? unicodeToArray(string)\n : asciiToArray(string);\n }\n\n /**\n * Used by `_.trim` and `_.trimEnd` to get the index of the last non-whitespace\n * character of `string`.\n *\n * @private\n * @param {string} string The string to inspect.\n * @returns {number} Returns the index of the last non-whitespace character.\n */\n function trimmedEndIndex(string) {\n var index = string.length;\n\n while (index-- && reWhitespace.test(string.charAt(index))) {}\n return index;\n }\n\n /**\n * Used by `_.unescape` to convert HTML entities to characters.\n *\n * @private\n * @param {string} chr The matched character to unescape.\n * @returns {string} Returns the unescaped character.\n */\n var unescapeHtmlChar = basePropertyOf(htmlUnescapes);\n\n /**\n * Gets the size of a Unicode `string`.\n *\n * @private\n * @param {string} string The string inspect.\n * @returns {number} Returns the string size.\n */\n function unicodeSize(string) {\n var result = reUnicode.lastIndex = 0;\n while (reUnicode.test(string)) {\n ++result;\n }\n return result;\n }\n\n /**\n * Converts a Unicode `string` to an array.\n *\n * @private\n * @param {string} string The string to convert.\n * @returns {Array} Returns the converted array.\n */\n function unicodeToArray(string) {\n return string.match(reUnicode) || [];\n }\n\n /**\n * Splits a Unicode `string` into an array of its words.\n *\n * @private\n * @param {string} The string to inspect.\n * @returns {Array} Returns the words of `string`.\n */\n function unicodeWords(string) {\n return string.match(reUnicodeWord) || [];\n }\n\n /*--------------------------------------------------------------------------*/\n\n /**\n * Create a new pristine `lodash` function using the `context` object.\n *\n * @static\n * @memberOf _\n * @since 1.1.0\n * @category Util\n * @param {Object} [context=root] The context object.\n * @returns {Function} Returns a new `lodash` function.\n * @example\n *\n * _.mixin({ 'foo': _.constant('foo') });\n *\n * var lodash = _.runInContext();\n * lodash.mixin({ 'bar': lodash.constant('bar') });\n *\n * _.isFunction(_.foo);\n * // => true\n * _.isFunction(_.bar);\n * // => false\n *\n * lodash.isFunction(lodash.foo);\n * // => false\n * lodash.isFunction(lodash.bar);\n * // => true\n *\n * // Create a suped-up `defer` in Node.js.\n * var defer = _.runInContext({ 'setTimeout': setImmediate }).defer;\n */\n var runInContext = (function runInContext(context) {\n context = context == null ? root : _.defaults(root.Object(), context, _.pick(root, contextProps));\n\n /** Built-in constructor references. */\n var Array = context.Array,\n Date = context.Date,\n Error = context.Error,\n Function = context.Function,\n Math = context.Math,\n Object = context.Object,\n RegExp = context.RegExp,\n String = context.String,\n TypeError = context.TypeError;\n\n /** Used for built-in method references. */\n var arrayProto = Array.prototype,\n funcProto = Function.prototype,\n objectProto = Object.prototype;\n\n /** Used to detect overreaching core-js shims. */\n var coreJsData = context['__core-js_shared__'];\n\n /** Used to resolve the decompiled source of functions. */\n var funcToString = funcProto.toString;\n\n /** Used to check objects for own properties. */\n var hasOwnProperty = objectProto.hasOwnProperty;\n\n /** Used to generate unique IDs. */\n var idCounter = 0;\n\n /** Used to detect methods masquerading as native. */\n var maskSrcKey = (function() {\n var uid = /[^.]+$/.exec(coreJsData && coreJsData.keys && coreJsData.keys.IE_PROTO || '');\n return uid ? ('Symbol(src)_1.' + uid) : '';\n }());\n\n /**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\n var nativeObjectToString = objectProto.toString;\n\n /** Used to infer the `Object` constructor. */\n var objectCtorString = funcToString.call(Object);\n\n /** Used to restore the original `_` reference in `_.noConflict`. */\n var oldDash = root._;\n\n /** Used to detect if a method is native. */\n var reIsNative = RegExp('^' +\n funcToString.call(hasOwnProperty).replace(reRegExpChar, '\\\\$&')\n .replace(/hasOwnProperty|(function).*?(?=\\\\\\()| for .+?(?=\\\\\\])/g, '$1.*?') + '$'\n );\n\n /** Built-in value references. */\n var Buffer = moduleExports ? context.Buffer : undefined,\n Symbol = context.Symbol,\n Uint8Array = context.Uint8Array,\n allocUnsafe = Buffer ? Buffer.allocUnsafe : undefined,\n getPrototype = overArg(Object.getPrototypeOf, Object),\n objectCreate = Object.create,\n propertyIsEnumerable = objectProto.propertyIsEnumerable,\n splice = arrayProto.splice,\n spreadableSymbol = Symbol ? Symbol.isConcatSpreadable : undefined,\n symIterator = Symbol ? Symbol.iterator : undefined,\n symToStringTag = Symbol ? Symbol.toStringTag : undefined;\n\n var defineProperty = (function() {\n try {\n var func = getNative(Object, 'defineProperty');\n func({}, '', {});\n return func;\n } catch (e) {}\n }());\n\n /** Mocked built-ins. */\n var ctxClearTimeout = context.clearTimeout !== root.clearTimeout && context.clearTimeout,\n ctxNow = Date && Date.now !== root.Date.now && Date.now,\n ctxSetTimeout = context.setTimeout !== root.setTimeout && context.setTimeout;\n\n /* Built-in method references for those with the same name as other `lodash` methods. */\n var nativeCeil = Math.ceil,\n nativeFloor = Math.floor,\n nativeGetSymbols = Object.getOwnPropertySymbols,\n nativeIsBuffer = Buffer ? Buffer.isBuffer : undefined,\n nativeIsFinite = context.isFinite,\n nativeJoin = arrayProto.join,\n nativeKeys = overArg(Object.keys, Object),\n nativeMax = Math.max,\n nativeMin = Math.min,\n nativeNow = Date.now,\n nativeParseInt = context.parseInt,\n nativeRandom = Math.random,\n nativeReverse = arrayProto.reverse;\n\n /* Built-in method references that are verified to be native. */\n var DataView = getNative(context, 'DataView'),\n Map = getNative(context, 'Map'),\n Promise = getNative(context, 'Promise'),\n Set = getNative(context, 'Set'),\n WeakMap = getNative(context, 'WeakMap'),\n nativeCreate = getNative(Object, 'create');\n\n /** Used to store function metadata. */\n var metaMap = WeakMap && new WeakMap;\n\n /** Used to lookup unminified function names. */\n var realNames = {};\n\n /** Used to detect maps, sets, and weakmaps. */\n var dataViewCtorString = toSource(DataView),\n mapCtorString = toSource(Map),\n promiseCtorString = toSource(Promise),\n setCtorString = toSource(Set),\n weakMapCtorString = toSource(WeakMap);\n\n /** Used to convert symbols to primitives and strings. */\n var symbolProto = Symbol ? Symbol.prototype : undefined,\n symbolValueOf = symbolProto ? symbolProto.valueOf : undefined,\n symbolToString = symbolProto ? symbolProto.toString : undefined;\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Creates a `lodash` object which wraps `value` to enable implicit method\n * chain sequences. Methods that operate on and return arrays, collections,\n * and functions can be chained together. Methods that retrieve a single value\n * or may return a primitive value will automatically end the chain sequence\n * and return the unwrapped value. Otherwise, the value must be unwrapped\n * with `_#value`.\n *\n * Explicit chain sequences, which must be unwrapped with `_#value`, may be\n * enabled using `_.chain`.\n *\n * The execution of chained methods is lazy, that is, it's deferred until\n * `_#value` is implicitly or explicitly called.\n *\n * Lazy evaluation allows several methods to support shortcut fusion.\n * Shortcut fusion is an optimization to merge iteratee calls; this avoids\n * the creation of intermediate arrays and can greatly reduce the number of\n * iteratee executions. Sections of a chain sequence qualify for shortcut\n * fusion if the section is applied to an array and iteratees accept only\n * one argument. The heuristic for whether a section qualifies for shortcut\n * fusion is subject to change.\n *\n * Chaining is supported in custom builds as long as the `_#value` method is\n * directly or indirectly included in the build.\n *\n * In addition to lodash methods, wrappers have `Array` and `String` methods.\n *\n * The wrapper `Array` methods are:\n * `concat`, `join`, `pop`, `push`, `shift`, `sort`, `splice`, and `unshift`\n *\n * The wrapper `String` methods are:\n * `replace` and `split`\n *\n * The wrapper methods that support shortcut fusion are:\n * `at`, `compact`, `drop`, `dropRight`, `dropWhile`, `filter`, `find`,\n * `findLast`, `head`, `initial`, `last`, `map`, `reject`, `reverse`, `slice`,\n * `tail`, `take`, `takeRight`, `takeRightWhile`, `takeWhile`, and `toArray`\n *\n * The chainable wrapper methods are:\n * `after`, `ary`, `assign`, `assignIn`, `assignInWith`, `assignWith`, `at`,\n * `before`, `bind`, `bindAll`, `bindKey`, `castArray`, `chain`, `chunk`,\n * `commit`, `compact`, `concat`, `conforms`, `constant`, `countBy`, `create`,\n * `curry`, `debounce`, `defaults`, `defaultsDeep`, `defer`, `delay`,\n * `difference`, `differenceBy`, `differenceWith`, `drop`, `dropRight`,\n * `dropRightWhile`, `dropWhile`, `extend`, `extendWith`, `fill`, `filter`,\n * `flatMap`, `flatMapDeep`, `flatMapDepth`, `flatten`, `flattenDeep`,\n * `flattenDepth`, `flip`, `flow`, `flowRight`, `fromPairs`, `functions`,\n * `functionsIn`, `groupBy`, `initial`, `intersection`, `intersectionBy`,\n * `intersectionWith`, `invert`, `invertBy`, `invokeMap`, `iteratee`, `keyBy`,\n * `keys`, `keysIn`, `map`, `mapKeys`, `mapValues`, `matches`, `matchesProperty`,\n * `memoize`, `merge`, `mergeWith`, `method`, `methodOf`, `mixin`, `negate`,\n * `nthArg`, `omit`, `omitBy`, `once`, `orderBy`, `over`, `overArgs`,\n * `overEvery`, `overSome`, `partial`, `partialRight`, `partition`, `pick`,\n * `pickBy`, `plant`, `property`, `propertyOf`, `pull`, `pullAll`, `pullAllBy`,\n * `pullAllWith`, `pullAt`, `push`, `range`, `rangeRight`, `rearg`, `reject`,\n * `remove`, `rest`, `reverse`, `sampleSize`, `set`, `setWith`, `shuffle`,\n * `slice`, `sort`, `sortBy`, `splice`, `spread`, `tail`, `take`, `takeRight`,\n * `takeRightWhile`, `takeWhile`, `tap`, `throttle`, `thru`, `toArray`,\n * `toPairs`, `toPairsIn`, `toPath`, `toPlainObject`, `transform`, `unary`,\n * `union`, `unionBy`, `unionWith`, `uniq`, `uniqBy`, `uniqWith`, `unset`,\n * `unshift`, `unzip`, `unzipWith`, `update`, `updateWith`, `values`,\n * `valuesIn`, `without`, `wrap`, `xor`, `xorBy`, `xorWith`, `zip`,\n * `zipObject`, `zipObjectDeep`, and `zipWith`\n *\n * The wrapper methods that are **not** chainable by default are:\n * `add`, `attempt`, `camelCase`, `capitalize`, `ceil`, `clamp`, `clone`,\n * `cloneDeep`, `cloneDeepWith`, `cloneWith`, `conformsTo`, `deburr`,\n * `defaultTo`, `divide`, `each`, `eachRight`, `endsWith`, `eq`, `escape`,\n * `escapeRegExp`, `every`, `find`, `findIndex`, `findKey`, `findLast`,\n * `findLastIndex`, `findLastKey`, `first`, `floor`, `forEach`, `forEachRight`,\n * `forIn`, `forInRight`, `forOwn`, `forOwnRight`, `get`, `gt`, `gte`, `has`,\n * `hasIn`, `head`, `identity`, `includes`, `indexOf`, `inRange`, `invoke`,\n * `isArguments`, `isArray`, `isArrayBuffer`, `isArrayLike`, `isArrayLikeObject`,\n * `isBoolean`, `isBuffer`, `isDate`, `isElement`, `isEmpty`, `isEqual`,\n * `isEqualWith`, `isError`, `isFinite`, `isFunction`, `isInteger`, `isLength`,\n * `isMap`, `isMatch`, `isMatchWith`, `isNaN`, `isNative`, `isNil`, `isNull`,\n * `isNumber`, `isObject`, `isObjectLike`, `isPlainObject`, `isRegExp`,\n * `isSafeInteger`, `isSet`, `isString`, `isUndefined`, `isTypedArray`,\n * `isWeakMap`, `isWeakSet`, `join`, `kebabCase`, `last`, `lastIndexOf`,\n * `lowerCase`, `lowerFirst`, `lt`, `lte`, `max`, `maxBy`, `mean`, `meanBy`,\n * `min`, `minBy`, `multiply`, `noConflict`, `noop`, `now`, `nth`, `pad`,\n * `padEnd`, `padStart`, `parseInt`, `pop`, `random`, `reduce`, `reduceRight`,\n * `repeat`, `result`, `round`, `runInContext`, `sample`, `shift`, `size`,\n * `snakeCase`, `some`, `sortedIndex`, `sortedIndexBy`, `sortedLastIndex`,\n * `sortedLastIndexBy`, `startCase`, `startsWith`, `stubArray`, `stubFalse`,\n * `stubObject`, `stubString`, `stubTrue`, `subtract`, `sum`, `sumBy`,\n * `template`, `times`, `toFinite`, `toInteger`, `toJSON`, `toLength`,\n * `toLower`, `toNumber`, `toSafeInteger`, `toString`, `toUpper`, `trim`,\n * `trimEnd`, `trimStart`, `truncate`, `unescape`, `uniqueId`, `upperCase`,\n * `upperFirst`, `value`, and `words`\n *\n * @name _\n * @constructor\n * @category Seq\n * @param {*} value The value to wrap in a `lodash` instance.\n * @returns {Object} Returns the new `lodash` wrapper instance.\n * @example\n *\n * function square(n) {\n * return n * n;\n * }\n *\n * var wrapped = _([1, 2, 3]);\n *\n * // Returns an unwrapped value.\n * wrapped.reduce(_.add);\n * // => 6\n *\n * // Returns a wrapped value.\n * var squares = wrapped.map(square);\n *\n * _.isArray(squares);\n * // => false\n *\n * _.isArray(squares.value());\n * // => true\n */\n function lodash(value) {\n if (isObjectLike(value) && !isArray(value) && !(value instanceof LazyWrapper)) {\n if (value instanceof LodashWrapper) {\n return value;\n }\n if (hasOwnProperty.call(value, '__wrapped__')) {\n return wrapperClone(value);\n }\n }\n return new LodashWrapper(value);\n }\n\n /**\n * The base implementation of `_.create` without support for assigning\n * properties to the created object.\n *\n * @private\n * @param {Object} proto The object to inherit from.\n * @returns {Object} Returns the new object.\n */\n var baseCreate = (function() {\n function object() {}\n return function(proto) {\n if (!isObject(proto)) {\n return {};\n }\n if (objectCreate) {\n return objectCreate(proto);\n }\n object.prototype = proto;\n var result = new object;\n object.prototype = undefined;\n return result;\n };\n }());\n\n /**\n * The function whose prototype chain sequence wrappers inherit from.\n *\n * @private\n */\n function baseLodash() {\n // No operation performed.\n }\n\n /**\n * The base constructor for creating `lodash` wrapper objects.\n *\n * @private\n * @param {*} value The value to wrap.\n * @param {boolean} [chainAll] Enable explicit method chain sequences.\n */\n function LodashWrapper(value, chainAll) {\n this.__wrapped__ = value;\n this.__actions__ = [];\n this.__chain__ = !!chainAll;\n this.__index__ = 0;\n this.__values__ = undefined;\n }\n\n /**\n * By default, the template delimiters used by lodash are like those in\n * embedded Ruby (ERB) as well as ES2015 template strings. Change the\n * following template settings to use alternative delimiters.\n *\n * @static\n * @memberOf _\n * @type {Object}\n */\n lodash.templateSettings = {\n\n /**\n * Used to detect `data` property values to be HTML-escaped.\n *\n * @memberOf _.templateSettings\n * @type {RegExp}\n */\n 'escape': reEscape,\n\n /**\n * Used to detect code to be evaluated.\n *\n * @memberOf _.templateSettings\n * @type {RegExp}\n */\n 'evaluate': reEvaluate,\n\n /**\n * Used to detect `data` property values to inject.\n *\n * @memberOf _.templateSettings\n * @type {RegExp}\n */\n 'interpolate': reInterpolate,\n\n /**\n * Used to reference the data object in the template text.\n *\n * @memberOf _.templateSettings\n * @type {string}\n */\n 'variable': '',\n\n /**\n * Used to import variables into the compiled template.\n *\n * @memberOf _.templateSettings\n * @type {Object}\n */\n 'imports': {\n\n /**\n * A reference to the `lodash` function.\n *\n * @memberOf _.templateSettings.imports\n * @type {Function}\n */\n '_': lodash\n }\n };\n\n // Ensure wrappers are instances of `baseLodash`.\n lodash.prototype = baseLodash.prototype;\n lodash.prototype.constructor = lodash;\n\n LodashWrapper.prototype = baseCreate(baseLodash.prototype);\n LodashWrapper.prototype.constructor = LodashWrapper;\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Creates a lazy wrapper object which wraps `value` to enable lazy evaluation.\n *\n * @private\n * @constructor\n * @param {*} value The value to wrap.\n */\n function LazyWrapper(value) {\n this.__wrapped__ = value;\n this.__actions__ = [];\n this.__dir__ = 1;\n this.__filtered__ = false;\n this.__iteratees__ = [];\n this.__takeCount__ = MAX_ARRAY_LENGTH;\n this.__views__ = [];\n }\n\n /**\n * Creates a clone of the lazy wrapper object.\n *\n * @private\n * @name clone\n * @memberOf LazyWrapper\n * @returns {Object} Returns the cloned `LazyWrapper` object.\n */\n function lazyClone() {\n var result = new LazyWrapper(this.__wrapped__);\n result.__actions__ = copyArray(this.__actions__);\n result.__dir__ = this.__dir__;\n result.__filtered__ = this.__filtered__;\n result.__iteratees__ = copyArray(this.__iteratees__);\n result.__takeCount__ = this.__takeCount__;\n result.__views__ = copyArray(this.__views__);\n return result;\n }\n\n /**\n * Reverses the direction of lazy iteration.\n *\n * @private\n * @name reverse\n * @memberOf LazyWrapper\n * @returns {Object} Returns the new reversed `LazyWrapper` object.\n */\n function lazyReverse() {\n if (this.__filtered__) {\n var result = new LazyWrapper(this);\n result.__dir__ = -1;\n result.__filtered__ = true;\n } else {\n result = this.clone();\n result.__dir__ *= -1;\n }\n return result;\n }\n\n /**\n * Extracts the unwrapped value from its lazy wrapper.\n *\n * @private\n * @name value\n * @memberOf LazyWrapper\n * @returns {*} Returns the unwrapped value.\n */\n function lazyValue() {\n var array = this.__wrapped__.value(),\n dir = this.__dir__,\n isArr = isArray(array),\n isRight = dir < 0,\n arrLength = isArr ? array.length : 0,\n view = getView(0, arrLength, this.__views__),\n start = view.start,\n end = view.end,\n length = end - start,\n index = isRight ? end : (start - 1),\n iteratees = this.__iteratees__,\n iterLength = iteratees.length,\n resIndex = 0,\n takeCount = nativeMin(length, this.__takeCount__);\n\n if (!isArr || (!isRight && arrLength == length && takeCount == length)) {\n return baseWrapperValue(array, this.__actions__);\n }\n var result = [];\n\n outer:\n while (length-- && resIndex < takeCount) {\n index += dir;\n\n var iterIndex = -1,\n value = array[index];\n\n while (++iterIndex < iterLength) {\n var data = iteratees[iterIndex],\n iteratee = data.iteratee,\n type = data.type,\n computed = iteratee(value);\n\n if (type == LAZY_MAP_FLAG) {\n value = computed;\n } else if (!computed) {\n if (type == LAZY_FILTER_FLAG) {\n continue outer;\n } else {\n break outer;\n }\n }\n }\n result[resIndex++] = value;\n }\n return result;\n }\n\n // Ensure `LazyWrapper` is an instance of `baseLodash`.\n LazyWrapper.prototype = baseCreate(baseLodash.prototype);\n LazyWrapper.prototype.constructor = LazyWrapper;\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Creates a hash object.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\n function Hash(entries) {\n var index = -1,\n length = entries == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n }\n\n /**\n * Removes all key-value entries from the hash.\n *\n * @private\n * @name clear\n * @memberOf Hash\n */\n function hashClear() {\n this.__data__ = nativeCreate ? nativeCreate(null) : {};\n this.size = 0;\n }\n\n /**\n * Removes `key` and its value from the hash.\n *\n * @private\n * @name delete\n * @memberOf Hash\n * @param {Object} hash The hash to modify.\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\n function hashDelete(key) {\n var result = this.has(key) && delete this.__data__[key];\n this.size -= result ? 1 : 0;\n return result;\n }\n\n /**\n * Gets the hash value for `key`.\n *\n * @private\n * @name get\n * @memberOf Hash\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\n function hashGet(key) {\n var data = this.__data__;\n if (nativeCreate) {\n var result = data[key];\n return result === HASH_UNDEFINED ? undefined : result;\n }\n return hasOwnProperty.call(data, key) ? data[key] : undefined;\n }\n\n /**\n * Checks if a hash value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf Hash\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\n function hashHas(key) {\n var data = this.__data__;\n return nativeCreate ? (data[key] !== undefined) : hasOwnProperty.call(data, key);\n }\n\n /**\n * Sets the hash `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf Hash\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the hash instance.\n */\n function hashSet(key, value) {\n var data = this.__data__;\n this.size += this.has(key) ? 0 : 1;\n data[key] = (nativeCreate && value === undefined) ? HASH_UNDEFINED : value;\n return this;\n }\n\n // Add methods to `Hash`.\n Hash.prototype.clear = hashClear;\n Hash.prototype['delete'] = hashDelete;\n Hash.prototype.get = hashGet;\n Hash.prototype.has = hashHas;\n Hash.prototype.set = hashSet;\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Creates an list cache object.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\n function ListCache(entries) {\n var index = -1,\n length = entries == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n }\n\n /**\n * Removes all key-value entries from the list cache.\n *\n * @private\n * @name clear\n * @memberOf ListCache\n */\n function listCacheClear() {\n this.__data__ = [];\n this.size = 0;\n }\n\n /**\n * Removes `key` and its value from the list cache.\n *\n * @private\n * @name delete\n * @memberOf ListCache\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\n function listCacheDelete(key) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n if (index < 0) {\n return false;\n }\n var lastIndex = data.length - 1;\n if (index == lastIndex) {\n data.pop();\n } else {\n splice.call(data, index, 1);\n }\n --this.size;\n return true;\n }\n\n /**\n * Gets the list cache value for `key`.\n *\n * @private\n * @name get\n * @memberOf ListCache\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\n function listCacheGet(key) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n return index < 0 ? undefined : data[index][1];\n }\n\n /**\n * Checks if a list cache value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf ListCache\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\n function listCacheHas(key) {\n return assocIndexOf(this.__data__, key) > -1;\n }\n\n /**\n * Sets the list cache `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf ListCache\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the list cache instance.\n */\n function listCacheSet(key, value) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n if (index < 0) {\n ++this.size;\n data.push([key, value]);\n } else {\n data[index][1] = value;\n }\n return this;\n }\n\n // Add methods to `ListCache`.\n ListCache.prototype.clear = listCacheClear;\n ListCache.prototype['delete'] = listCacheDelete;\n ListCache.prototype.get = listCacheGet;\n ListCache.prototype.has = listCacheHas;\n ListCache.prototype.set = listCacheSet;\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Creates a map cache object to store key-value pairs.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\n function MapCache(entries) {\n var index = -1,\n length = entries == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n }\n\n /**\n * Removes all key-value entries from the map.\n *\n * @private\n * @name clear\n * @memberOf MapCache\n */\n function mapCacheClear() {\n this.size = 0;\n this.__data__ = {\n 'hash': new Hash,\n 'map': new (Map || ListCache),\n 'string': new Hash\n };\n }\n\n /**\n * Removes `key` and its value from the map.\n *\n * @private\n * @name delete\n * @memberOf MapCache\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\n function mapCacheDelete(key) {\n var result = getMapData(this, key)['delete'](key);\n this.size -= result ? 1 : 0;\n return result;\n }\n\n /**\n * Gets the map value for `key`.\n *\n * @private\n * @name get\n * @memberOf MapCache\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\n function mapCacheGet(key) {\n return getMapData(this, key).get(key);\n }\n\n /**\n * Checks if a map value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf MapCache\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\n function mapCacheHas(key) {\n return getMapData(this, key).has(key);\n }\n\n /**\n * Sets the map `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf MapCache\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the map cache instance.\n */\n function mapCacheSet(key, value) {\n var data = getMapData(this, key),\n size = data.size;\n\n data.set(key, value);\n this.size += data.size == size ? 0 : 1;\n return this;\n }\n\n // Add methods to `MapCache`.\n MapCache.prototype.clear = mapCacheClear;\n MapCache.prototype['delete'] = mapCacheDelete;\n MapCache.prototype.get = mapCacheGet;\n MapCache.prototype.has = mapCacheHas;\n MapCache.prototype.set = mapCacheSet;\n\n /*------------------------------------------------------------------------*/\n\n /**\n *\n * Creates an array cache object to store unique values.\n *\n * @private\n * @constructor\n * @param {Array} [values] The values to cache.\n */\n function SetCache(values) {\n var index = -1,\n length = values == null ? 0 : values.length;\n\n this.__data__ = new MapCache;\n while (++index < length) {\n this.add(values[index]);\n }\n }\n\n /**\n * Adds `value` to the array cache.\n *\n * @private\n * @name add\n * @memberOf SetCache\n * @alias push\n * @param {*} value The value to cache.\n * @returns {Object} Returns the cache instance.\n */\n function setCacheAdd(value) {\n this.__data__.set(value, HASH_UNDEFINED);\n return this;\n }\n\n /**\n * Checks if `value` is in the array cache.\n *\n * @private\n * @name has\n * @memberOf SetCache\n * @param {*} value The value to search for.\n * @returns {number} Returns `true` if `value` is found, else `false`.\n */\n function setCacheHas(value) {\n return this.__data__.has(value);\n }\n\n // Add methods to `SetCache`.\n SetCache.prototype.add = SetCache.prototype.push = setCacheAdd;\n SetCache.prototype.has = setCacheHas;\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Creates a stack cache object to store key-value pairs.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\n function Stack(entries) {\n var data = this.__data__ = new ListCache(entries);\n this.size = data.size;\n }\n\n /**\n * Removes all key-value entries from the stack.\n *\n * @private\n * @name clear\n * @memberOf Stack\n */\n function stackClear() {\n this.__data__ = new ListCache;\n this.size = 0;\n }\n\n /**\n * Removes `key` and its value from the stack.\n *\n * @private\n * @name delete\n * @memberOf Stack\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\n function stackDelete(key) {\n var data = this.__data__,\n result = data['delete'](key);\n\n this.size = data.size;\n return result;\n }\n\n /**\n * Gets the stack value for `key`.\n *\n * @private\n * @name get\n * @memberOf Stack\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\n function stackGet(key) {\n return this.__data__.get(key);\n }\n\n /**\n * Checks if a stack value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf Stack\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\n function stackHas(key) {\n return this.__data__.has(key);\n }\n\n /**\n * Sets the stack `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf Stack\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the stack cache instance.\n */\n function stackSet(key, value) {\n var data = this.__data__;\n if (data instanceof ListCache) {\n var pairs = data.__data__;\n if (!Map || (pairs.length < LARGE_ARRAY_SIZE - 1)) {\n pairs.push([key, value]);\n this.size = ++data.size;\n return this;\n }\n data = this.__data__ = new MapCache(pairs);\n }\n data.set(key, value);\n this.size = data.size;\n return this;\n }\n\n // Add methods to `Stack`.\n Stack.prototype.clear = stackClear;\n Stack.prototype['delete'] = stackDelete;\n Stack.prototype.get = stackGet;\n Stack.prototype.has = stackHas;\n Stack.prototype.set = stackSet;\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Creates an array of the enumerable property names of the array-like `value`.\n *\n * @private\n * @param {*} value The value to query.\n * @param {boolean} inherited Specify returning inherited property names.\n * @returns {Array} Returns the array of property names.\n */\n function arrayLikeKeys(value, inherited) {\n var isArr = isArray(value),\n isArg = !isArr && isArguments(value),\n isBuff = !isArr && !isArg && isBuffer(value),\n isType = !isArr && !isArg && !isBuff && isTypedArray(value),\n skipIndexes = isArr || isArg || isBuff || isType,\n result = skipIndexes ? baseTimes(value.length, String) : [],\n length = result.length;\n\n for (var key in value) {\n if ((inherited || hasOwnProperty.call(value, key)) &&\n !(skipIndexes && (\n // Safari 9 has enumerable `arguments.length` in strict mode.\n key == 'length' ||\n // Node.js 0.10 has enumerable non-index properties on buffers.\n (isBuff && (key == 'offset' || key == 'parent')) ||\n // PhantomJS 2 has enumerable non-index properties on typed arrays.\n (isType && (key == 'buffer' || key == 'byteLength' || key == 'byteOffset')) ||\n // Skip index properties.\n isIndex(key, length)\n ))) {\n result.push(key);\n }\n }\n return result;\n }\n\n /**\n * A specialized version of `_.sample` for arrays.\n *\n * @private\n * @param {Array} array The array to sample.\n * @returns {*} Returns the random element.\n */\n function arraySample(array) {\n var length = array.length;\n return length ? array[baseRandom(0, length - 1)] : undefined;\n }\n\n /**\n * A specialized version of `_.sampleSize` for arrays.\n *\n * @private\n * @param {Array} array The array to sample.\n * @param {number} n The number of elements to sample.\n * @returns {Array} Returns the random elements.\n */\n function arraySampleSize(array, n) {\n return shuffleSelf(copyArray(array), baseClamp(n, 0, array.length));\n }\n\n /**\n * A specialized version of `_.shuffle` for arrays.\n *\n * @private\n * @param {Array} array The array to shuffle.\n * @returns {Array} Returns the new shuffled array.\n */\n function arrayShuffle(array) {\n return shuffleSelf(copyArray(array));\n }\n\n /**\n * This function is like `assignValue` except that it doesn't assign\n * `undefined` values.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {string} key The key of the property to assign.\n * @param {*} value The value to assign.\n */\n function assignMergeValue(object, key, value) {\n if ((value !== undefined && !eq(object[key], value)) ||\n (value === undefined && !(key in object))) {\n baseAssignValue(object, key, value);\n }\n }\n\n /**\n * Assigns `value` to `key` of `object` if the existing value is not equivalent\n * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * for equality comparisons.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {string} key The key of the property to assign.\n * @param {*} value The value to assign.\n */\n function assignValue(object, key, value) {\n var objValue = object[key];\n if (!(hasOwnProperty.call(object, key) && eq(objValue, value)) ||\n (value === undefined && !(key in object))) {\n baseAssignValue(object, key, value);\n }\n }\n\n /**\n * Gets the index at which the `key` is found in `array` of key-value pairs.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {*} key The key to search for.\n * @returns {number} Returns the index of the matched value, else `-1`.\n */\n function assocIndexOf(array, key) {\n var length = array.length;\n while (length--) {\n if (eq(array[length][0], key)) {\n return length;\n }\n }\n return -1;\n }\n\n /**\n * Aggregates elements of `collection` on `accumulator` with keys transformed\n * by `iteratee` and values set by `setter`.\n *\n * @private\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} setter The function to set `accumulator` values.\n * @param {Function} iteratee The iteratee to transform keys.\n * @param {Object} accumulator The initial aggregated object.\n * @returns {Function} Returns `accumulator`.\n */\n function baseAggregator(collection, setter, iteratee, accumulator) {\n baseEach(collection, function(value, key, collection) {\n setter(accumulator, value, iteratee(value), collection);\n });\n return accumulator;\n }\n\n /**\n * The base implementation of `_.assign` without support for multiple sources\n * or `customizer` functions.\n *\n * @private\n * @param {Object} object The destination object.\n * @param {Object} source The source object.\n * @returns {Object} Returns `object`.\n */\n function baseAssign(object, source) {\n return object && copyObject(source, keys(source), object);\n }\n\n /**\n * The base implementation of `_.assignIn` without support for multiple sources\n * or `customizer` functions.\n *\n * @private\n * @param {Object} object The destination object.\n * @param {Object} source The source object.\n * @returns {Object} Returns `object`.\n */\n function baseAssignIn(object, source) {\n return object && copyObject(source, keysIn(source), object);\n }\n\n /**\n * The base implementation of `assignValue` and `assignMergeValue` without\n * value checks.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {string} key The key of the property to assign.\n * @param {*} value The value to assign.\n */\n function baseAssignValue(object, key, value) {\n if (key == '__proto__' && defineProperty) {\n defineProperty(object, key, {\n 'configurable': true,\n 'enumerable': true,\n 'value': value,\n 'writable': true\n });\n } else {\n object[key] = value;\n }\n }\n\n /**\n * The base implementation of `_.at` without support for individual paths.\n *\n * @private\n * @param {Object} object The object to iterate over.\n * @param {string[]} paths The property paths to pick.\n * @returns {Array} Returns the picked elements.\n */\n function baseAt(object, paths) {\n var index = -1,\n length = paths.length,\n result = Array(length),\n skip = object == null;\n\n while (++index < length) {\n result[index] = skip ? undefined : get(object, paths[index]);\n }\n return result;\n }\n\n /**\n * The base implementation of `_.clamp` which doesn't coerce arguments.\n *\n * @private\n * @param {number} number The number to clamp.\n * @param {number} [lower] The lower bound.\n * @param {number} upper The upper bound.\n * @returns {number} Returns the clamped number.\n */\n function baseClamp(number, lower, upper) {\n if (number === number) {\n if (upper !== undefined) {\n number = number <= upper ? number : upper;\n }\n if (lower !== undefined) {\n number = number >= lower ? number : lower;\n }\n }\n return number;\n }\n\n /**\n * The base implementation of `_.clone` and `_.cloneDeep` which tracks\n * traversed objects.\n *\n * @private\n * @param {*} value The value to clone.\n * @param {boolean} bitmask The bitmask flags.\n * 1 - Deep clone\n * 2 - Flatten inherited properties\n * 4 - Clone symbols\n * @param {Function} [customizer] The function to customize cloning.\n * @param {string} [key] The key of `value`.\n * @param {Object} [object] The parent object of `value`.\n * @param {Object} [stack] Tracks traversed objects and their clone counterparts.\n * @returns {*} Returns the cloned value.\n */\n function baseClone(value, bitmask, customizer, key, object, stack) {\n var result,\n isDeep = bitmask & CLONE_DEEP_FLAG,\n isFlat = bitmask & CLONE_FLAT_FLAG,\n isFull = bitmask & CLONE_SYMBOLS_FLAG;\n\n if (customizer) {\n result = object ? customizer(value, key, object, stack) : customizer(value);\n }\n if (result !== undefined) {\n return result;\n }\n if (!isObject(value)) {\n return value;\n }\n var isArr = isArray(value);\n if (isArr) {\n result = initCloneArray(value);\n if (!isDeep) {\n return copyArray(value, result);\n }\n } else {\n var tag = getTag(value),\n isFunc = tag == funcTag || tag == genTag;\n\n if (isBuffer(value)) {\n return cloneBuffer(value, isDeep);\n }\n if (tag == objectTag || tag == argsTag || (isFunc && !object)) {\n result = (isFlat || isFunc) ? {} : initCloneObject(value);\n if (!isDeep) {\n return isFlat\n ? copySymbolsIn(value, baseAssignIn(result, value))\n : copySymbols(value, baseAssign(result, value));\n }\n } else {\n if (!cloneableTags[tag]) {\n return object ? value : {};\n }\n result = initCloneByTag(value, tag, isDeep);\n }\n }\n // Check for circular references and return its corresponding clone.\n stack || (stack = new Stack);\n var stacked = stack.get(value);\n if (stacked) {\n return stacked;\n }\n stack.set(value, result);\n\n if (isSet(value)) {\n value.forEach(function(subValue) {\n result.add(baseClone(subValue, bitmask, customizer, subValue, value, stack));\n });\n } else if (isMap(value)) {\n value.forEach(function(subValue, key) {\n result.set(key, baseClone(subValue, bitmask, customizer, key, value, stack));\n });\n }\n\n var keysFunc = isFull\n ? (isFlat ? getAllKeysIn : getAllKeys)\n : (isFlat ? keysIn : keys);\n\n var props = isArr ? undefined : keysFunc(value);\n arrayEach(props || value, function(subValue, key) {\n if (props) {\n key = subValue;\n subValue = value[key];\n }\n // Recursively populate clone (susceptible to call stack limits).\n assignValue(result, key, baseClone(subValue, bitmask, customizer, key, value, stack));\n });\n return result;\n }\n\n /**\n * The base implementation of `_.conforms` which doesn't clone `source`.\n *\n * @private\n * @param {Object} source The object of property predicates to conform to.\n * @returns {Function} Returns the new spec function.\n */\n function baseConforms(source) {\n var props = keys(source);\n return function(object) {\n return baseConformsTo(object, source, props);\n };\n }\n\n /**\n * The base implementation of `_.conformsTo` which accepts `props` to check.\n *\n * @private\n * @param {Object} object The object to inspect.\n * @param {Object} source The object of property predicates to conform to.\n * @returns {boolean} Returns `true` if `object` conforms, else `false`.\n */\n function baseConformsTo(object, source, props) {\n var length = props.length;\n if (object == null) {\n return !length;\n }\n object = Object(object);\n while (length--) {\n var key = props[length],\n predicate = source[key],\n value = object[key];\n\n if ((value === undefined && !(key in object)) || !predicate(value)) {\n return false;\n }\n }\n return true;\n }\n\n /**\n * The base implementation of `_.delay` and `_.defer` which accepts `args`\n * to provide to `func`.\n *\n * @private\n * @param {Function} func The function to delay.\n * @param {number} wait The number of milliseconds to delay invocation.\n * @param {Array} args The arguments to provide to `func`.\n * @returns {number|Object} Returns the timer id or timeout object.\n */\n function baseDelay(func, wait, args) {\n if (typeof func != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n return setTimeout(function() { func.apply(undefined, args); }, wait);\n }\n\n /**\n * The base implementation of methods like `_.difference` without support\n * for excluding multiple arrays or iteratee shorthands.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {Array} values The values to exclude.\n * @param {Function} [iteratee] The iteratee invoked per element.\n * @param {Function} [comparator] The comparator invoked per element.\n * @returns {Array} Returns the new array of filtered values.\n */\n function baseDifference(array, values, iteratee, comparator) {\n var index = -1,\n includes = arrayIncludes,\n isCommon = true,\n length = array.length,\n result = [],\n valuesLength = values.length;\n\n if (!length) {\n return result;\n }\n if (iteratee) {\n values = arrayMap(values, baseUnary(iteratee));\n }\n if (comparator) {\n includes = arrayIncludesWith;\n isCommon = false;\n }\n else if (values.length >= LARGE_ARRAY_SIZE) {\n includes = cacheHas;\n isCommon = false;\n values = new SetCache(values);\n }\n outer:\n while (++index < length) {\n var value = array[index],\n computed = iteratee == null ? value : iteratee(value);\n\n value = (comparator || value !== 0) ? value : 0;\n if (isCommon && computed === computed) {\n var valuesIndex = valuesLength;\n while (valuesIndex--) {\n if (values[valuesIndex] === computed) {\n continue outer;\n }\n }\n result.push(value);\n }\n else if (!includes(values, computed, comparator)) {\n result.push(value);\n }\n }\n return result;\n }\n\n /**\n * The base implementation of `_.forEach` without support for iteratee shorthands.\n *\n * @private\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array|Object} Returns `collection`.\n */\n var baseEach = createBaseEach(baseForOwn);\n\n /**\n * The base implementation of `_.forEachRight` without support for iteratee shorthands.\n *\n * @private\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array|Object} Returns `collection`.\n */\n var baseEachRight = createBaseEach(baseForOwnRight, true);\n\n /**\n * The base implementation of `_.every` without support for iteratee shorthands.\n *\n * @private\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} predicate The function invoked per iteration.\n * @returns {boolean} Returns `true` if all elements pass the predicate check,\n * else `false`\n */\n function baseEvery(collection, predicate) {\n var result = true;\n baseEach(collection, function(value, index, collection) {\n result = !!predicate(value, index, collection);\n return result;\n });\n return result;\n }\n\n /**\n * The base implementation of methods like `_.max` and `_.min` which accepts a\n * `comparator` to determine the extremum value.\n *\n * @private\n * @param {Array} array The array to iterate over.\n * @param {Function} iteratee The iteratee invoked per iteration.\n * @param {Function} comparator The comparator used to compare values.\n * @returns {*} Returns the extremum value.\n */\n function baseExtremum(array, iteratee, comparator) {\n var index = -1,\n length = array.length;\n\n while (++index < length) {\n var value = array[index],\n current = iteratee(value);\n\n if (current != null && (computed === undefined\n ? (current === current && !isSymbol(current))\n : comparator(current, computed)\n )) {\n var computed = current,\n result = value;\n }\n }\n return result;\n }\n\n /**\n * The base implementation of `_.fill` without an iteratee call guard.\n *\n * @private\n * @param {Array} array The array to fill.\n * @param {*} value The value to fill `array` with.\n * @param {number} [start=0] The start position.\n * @param {number} [end=array.length] The end position.\n * @returns {Array} Returns `array`.\n */\n function baseFill(array, value, start, end) {\n var length = array.length;\n\n start = toInteger(start);\n if (start < 0) {\n start = -start > length ? 0 : (length + start);\n }\n end = (end === undefined || end > length) ? length : toInteger(end);\n if (end < 0) {\n end += length;\n }\n end = start > end ? 0 : toLength(end);\n while (start < end) {\n array[start++] = value;\n }\n return array;\n }\n\n /**\n * The base implementation of `_.filter` without support for iteratee shorthands.\n *\n * @private\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} predicate The function invoked per iteration.\n * @returns {Array} Returns the new filtered array.\n */\n function baseFilter(collection, predicate) {\n var result = [];\n baseEach(collection, function(value, index, collection) {\n if (predicate(value, index, collection)) {\n result.push(value);\n }\n });\n return result;\n }\n\n /**\n * The base implementation of `_.flatten` with support for restricting flattening.\n *\n * @private\n * @param {Array} array The array to flatten.\n * @param {number} depth The maximum recursion depth.\n * @param {boolean} [predicate=isFlattenable] The function invoked per iteration.\n * @param {boolean} [isStrict] Restrict to values that pass `predicate` checks.\n * @param {Array} [result=[]] The initial result value.\n * @returns {Array} Returns the new flattened array.\n */\n function baseFlatten(array, depth, predicate, isStrict, result) {\n var index = -1,\n length = array.length;\n\n predicate || (predicate = isFlattenable);\n result || (result = []);\n\n while (++index < length) {\n var value = array[index];\n if (depth > 0 && predicate(value)) {\n if (depth > 1) {\n // Recursively flatten arrays (susceptible to call stack limits).\n baseFlatten(value, depth - 1, predicate, isStrict, result);\n } else {\n arrayPush(result, value);\n }\n } else if (!isStrict) {\n result[result.length] = value;\n }\n }\n return result;\n }\n\n /**\n * The base implementation of `baseForOwn` which iterates over `object`\n * properties returned by `keysFunc` and invokes `iteratee` for each property.\n * Iteratee functions may exit iteration early by explicitly returning `false`.\n *\n * @private\n * @param {Object} object The object to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @param {Function} keysFunc The function to get the keys of `object`.\n * @returns {Object} Returns `object`.\n */\n var baseFor = createBaseFor();\n\n /**\n * This function is like `baseFor` except that it iterates over properties\n * in the opposite order.\n *\n * @private\n * @param {Object} object The object to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @param {Function} keysFunc The function to get the keys of `object`.\n * @returns {Object} Returns `object`.\n */\n var baseForRight = createBaseFor(true);\n\n /**\n * The base implementation of `_.forOwn` without support for iteratee shorthands.\n *\n * @private\n * @param {Object} object The object to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Object} Returns `object`.\n */\n function baseForOwn(object, iteratee) {\n return object && baseFor(object, iteratee, keys);\n }\n\n /**\n * The base implementation of `_.forOwnRight` without support for iteratee shorthands.\n *\n * @private\n * @param {Object} object The object to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Object} Returns `object`.\n */\n function baseForOwnRight(object, iteratee) {\n return object && baseForRight(object, iteratee, keys);\n }\n\n /**\n * The base implementation of `_.functions` which creates an array of\n * `object` function property names filtered from `props`.\n *\n * @private\n * @param {Object} object The object to inspect.\n * @param {Array} props The property names to filter.\n * @returns {Array} Returns the function names.\n */\n function baseFunctions(object, props) {\n return arrayFilter(props, function(key) {\n return isFunction(object[key]);\n });\n }\n\n /**\n * The base implementation of `_.get` without support for default values.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Array|string} path The path of the property to get.\n * @returns {*} Returns the resolved value.\n */\n function baseGet(object, path) {\n path = castPath(path, object);\n\n var index = 0,\n length = path.length;\n\n while (object != null && index < length) {\n object = object[toKey(path[index++])];\n }\n return (index && index == length) ? object : undefined;\n }\n\n /**\n * The base implementation of `getAllKeys` and `getAllKeysIn` which uses\n * `keysFunc` and `symbolsFunc` to get the enumerable property names and\n * symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Function} keysFunc The function to get the keys of `object`.\n * @param {Function} symbolsFunc The function to get the symbols of `object`.\n * @returns {Array} Returns the array of property names and symbols.\n */\n function baseGetAllKeys(object, keysFunc, symbolsFunc) {\n var result = keysFunc(object);\n return isArray(object) ? result : arrayPush(result, symbolsFunc(object));\n }\n\n /**\n * The base implementation of `getTag` without fallbacks for buggy environments.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the `toStringTag`.\n */\n function baseGetTag(value) {\n if (value == null) {\n return value === undefined ? undefinedTag : nullTag;\n }\n return (symToStringTag && symToStringTag in Object(value))\n ? getRawTag(value)\n : objectToString(value);\n }\n\n /**\n * The base implementation of `_.gt` which doesn't coerce arguments.\n *\n * @private\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if `value` is greater than `other`,\n * else `false`.\n */\n function baseGt(value, other) {\n return value > other;\n }\n\n /**\n * The base implementation of `_.has` without support for deep paths.\n *\n * @private\n * @param {Object} [object] The object to query.\n * @param {Array|string} key The key to check.\n * @returns {boolean} Returns `true` if `key` exists, else `false`.\n */\n function baseHas(object, key) {\n return object != null && hasOwnProperty.call(object, key);\n }\n\n /**\n * The base implementation of `_.hasIn` without support for deep paths.\n *\n * @private\n * @param {Object} [object] The object to query.\n * @param {Array|string} key The key to check.\n * @returns {boolean} Returns `true` if `key` exists, else `false`.\n */\n function baseHasIn(object, key) {\n return object != null && key in Object(object);\n }\n\n /**\n * The base implementation of `_.inRange` which doesn't coerce arguments.\n *\n * @private\n * @param {number} number The number to check.\n * @param {number} start The start of the range.\n * @param {number} end The end of the range.\n * @returns {boolean} Returns `true` if `number` is in the range, else `false`.\n */\n function baseInRange(number, start, end) {\n return number >= nativeMin(start, end) && number < nativeMax(start, end);\n }\n\n /**\n * The base implementation of methods like `_.intersection`, without support\n * for iteratee shorthands, that accepts an array of arrays to inspect.\n *\n * @private\n * @param {Array} arrays The arrays to inspect.\n * @param {Function} [iteratee] The iteratee invoked per element.\n * @param {Function} [comparator] The comparator invoked per element.\n * @returns {Array} Returns the new array of shared values.\n */\n function baseIntersection(arrays, iteratee, comparator) {\n var includes = comparator ? arrayIncludesWith : arrayIncludes,\n length = arrays[0].length,\n othLength = arrays.length,\n othIndex = othLength,\n caches = Array(othLength),\n maxLength = Infinity,\n result = [];\n\n while (othIndex--) {\n var array = arrays[othIndex];\n if (othIndex && iteratee) {\n array = arrayMap(array, baseUnary(iteratee));\n }\n maxLength = nativeMin(array.length, maxLength);\n caches[othIndex] = !comparator && (iteratee || (length >= 120 && array.length >= 120))\n ? new SetCache(othIndex && array)\n : undefined;\n }\n array = arrays[0];\n\n var index = -1,\n seen = caches[0];\n\n outer:\n while (++index < length && result.length < maxLength) {\n var value = array[index],\n computed = iteratee ? iteratee(value) : value;\n\n value = (comparator || value !== 0) ? value : 0;\n if (!(seen\n ? cacheHas(seen, computed)\n : includes(result, computed, comparator)\n )) {\n othIndex = othLength;\n while (--othIndex) {\n var cache = caches[othIndex];\n if (!(cache\n ? cacheHas(cache, computed)\n : includes(arrays[othIndex], computed, comparator))\n ) {\n continue outer;\n }\n }\n if (seen) {\n seen.push(computed);\n }\n result.push(value);\n }\n }\n return result;\n }\n\n /**\n * The base implementation of `_.invert` and `_.invertBy` which inverts\n * `object` with values transformed by `iteratee` and set by `setter`.\n *\n * @private\n * @param {Object} object The object to iterate over.\n * @param {Function} setter The function to set `accumulator` values.\n * @param {Function} iteratee The iteratee to transform values.\n * @param {Object} accumulator The initial inverted object.\n * @returns {Function} Returns `accumulator`.\n */\n function baseInverter(object, setter, iteratee, accumulator) {\n baseForOwn(object, function(value, key, object) {\n setter(accumulator, iteratee(value), key, object);\n });\n return accumulator;\n }\n\n /**\n * The base implementation of `_.invoke` without support for individual\n * method arguments.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Array|string} path The path of the method to invoke.\n * @param {Array} args The arguments to invoke the method with.\n * @returns {*} Returns the result of the invoked method.\n */\n function baseInvoke(object, path, args) {\n path = castPath(path, object);\n object = parent(object, path);\n var func = object == null ? object : object[toKey(last(path))];\n return func == null ? undefined : apply(func, object, args);\n }\n\n /**\n * The base implementation of `_.isArguments`.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an `arguments` object,\n */\n function baseIsArguments(value) {\n return isObjectLike(value) && baseGetTag(value) == argsTag;\n }\n\n /**\n * The base implementation of `_.isArrayBuffer` without Node.js optimizations.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an array buffer, else `false`.\n */\n function baseIsArrayBuffer(value) {\n return isObjectLike(value) && baseGetTag(value) == arrayBufferTag;\n }\n\n /**\n * The base implementation of `_.isDate` without Node.js optimizations.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a date object, else `false`.\n */\n function baseIsDate(value) {\n return isObjectLike(value) && baseGetTag(value) == dateTag;\n }\n\n /**\n * The base implementation of `_.isEqual` which supports partial comparisons\n * and tracks traversed objects.\n *\n * @private\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @param {boolean} bitmask The bitmask flags.\n * 1 - Unordered comparison\n * 2 - Partial comparison\n * @param {Function} [customizer] The function to customize comparisons.\n * @param {Object} [stack] Tracks traversed `value` and `other` objects.\n * @returns {boolean} Returns `true` if the values are equivalent, else `false`.\n */\n function baseIsEqual(value, other, bitmask, customizer, stack) {\n if (value === other) {\n return true;\n }\n if (value == null || other == null || (!isObjectLike(value) && !isObjectLike(other))) {\n return value !== value && other !== other;\n }\n return baseIsEqualDeep(value, other, bitmask, customizer, baseIsEqual, stack);\n }\n\n /**\n * A specialized version of `baseIsEqual` for arrays and objects which performs\n * deep comparisons and tracks traversed objects enabling objects with circular\n * references to be compared.\n *\n * @private\n * @param {Object} object The object to compare.\n * @param {Object} other The other object to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} [stack] Tracks traversed `object` and `other` objects.\n * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.\n */\n function baseIsEqualDeep(object, other, bitmask, customizer, equalFunc, stack) {\n var objIsArr = isArray(object),\n othIsArr = isArray(other),\n objTag = objIsArr ? arrayTag : getTag(object),\n othTag = othIsArr ? arrayTag : getTag(other);\n\n objTag = objTag == argsTag ? objectTag : objTag;\n othTag = othTag == argsTag ? objectTag : othTag;\n\n var objIsObj = objTag == objectTag,\n othIsObj = othTag == objectTag,\n isSameTag = objTag == othTag;\n\n if (isSameTag && isBuffer(object)) {\n if (!isBuffer(other)) {\n return false;\n }\n objIsArr = true;\n objIsObj = false;\n }\n if (isSameTag && !objIsObj) {\n stack || (stack = new Stack);\n return (objIsArr || isTypedArray(object))\n ? equalArrays(object, other, bitmask, customizer, equalFunc, stack)\n : equalByTag(object, other, objTag, bitmask, customizer, equalFunc, stack);\n }\n if (!(bitmask & COMPARE_PARTIAL_FLAG)) {\n var objIsWrapped = objIsObj && hasOwnProperty.call(object, '__wrapped__'),\n othIsWrapped = othIsObj && hasOwnProperty.call(other, '__wrapped__');\n\n if (objIsWrapped || othIsWrapped) {\n var objUnwrapped = objIsWrapped ? object.value() : object,\n othUnwrapped = othIsWrapped ? other.value() : other;\n\n stack || (stack = new Stack);\n return equalFunc(objUnwrapped, othUnwrapped, bitmask, customizer, stack);\n }\n }\n if (!isSameTag) {\n return false;\n }\n stack || (stack = new Stack);\n return equalObjects(object, other, bitmask, customizer, equalFunc, stack);\n }\n\n /**\n * The base implementation of `_.isMap` without Node.js optimizations.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a map, else `false`.\n */\n function baseIsMap(value) {\n return isObjectLike(value) && getTag(value) == mapTag;\n }\n\n /**\n * The base implementation of `_.isMatch` without support for iteratee shorthands.\n *\n * @private\n * @param {Object} object The object to inspect.\n * @param {Object} source The object of property values to match.\n * @param {Array} matchData The property names, values, and compare flags to match.\n * @param {Function} [customizer] The function to customize comparisons.\n * @returns {boolean} Returns `true` if `object` is a match, else `false`.\n */\n function baseIsMatch(object, source, matchData, customizer) {\n var index = matchData.length,\n length = index,\n noCustomizer = !customizer;\n\n if (object == null) {\n return !length;\n }\n object = Object(object);\n while (index--) {\n var data = matchData[index];\n if ((noCustomizer && data[2])\n ? data[1] !== object[data[0]]\n : !(data[0] in object)\n ) {\n return false;\n }\n }\n while (++index < length) {\n data = matchData[index];\n var key = data[0],\n objValue = object[key],\n srcValue = data[1];\n\n if (noCustomizer && data[2]) {\n if (objValue === undefined && !(key in object)) {\n return false;\n }\n } else {\n var stack = new Stack;\n if (customizer) {\n var result = customizer(objValue, srcValue, key, object, source, stack);\n }\n if (!(result === undefined\n ? baseIsEqual(srcValue, objValue, COMPARE_PARTIAL_FLAG | COMPARE_UNORDERED_FLAG, customizer, stack)\n : result\n )) {\n return false;\n }\n }\n }\n return true;\n }\n\n /**\n * The base implementation of `_.isNative` without bad shim checks.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a native function,\n * else `false`.\n */\n function baseIsNative(value) {\n if (!isObject(value) || isMasked(value)) {\n return false;\n }\n var pattern = isFunction(value) ? reIsNative : reIsHostCtor;\n return pattern.test(toSource(value));\n }\n\n /**\n * The base implementation of `_.isRegExp` without Node.js optimizations.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a regexp, else `false`.\n */\n function baseIsRegExp(value) {\n return isObjectLike(value) && baseGetTag(value) == regexpTag;\n }\n\n /**\n * The base implementation of `_.isSet` without Node.js optimizations.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a set, else `false`.\n */\n function baseIsSet(value) {\n return isObjectLike(value) && getTag(value) == setTag;\n }\n\n /**\n * The base implementation of `_.isTypedArray` without Node.js optimizations.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a typed array, else `false`.\n */\n function baseIsTypedArray(value) {\n return isObjectLike(value) &&\n isLength(value.length) && !!typedArrayTags[baseGetTag(value)];\n }\n\n /**\n * The base implementation of `_.iteratee`.\n *\n * @private\n * @param {*} [value=_.identity] The value to convert to an iteratee.\n * @returns {Function} Returns the iteratee.\n */\n function baseIteratee(value) {\n // Don't store the `typeof` result in a variable to avoid a JIT bug in Safari 9.\n // See https://bugs.webkit.org/show_bug.cgi?id=156034 for more details.\n if (typeof value == 'function') {\n return value;\n }\n if (value == null) {\n return identity;\n }\n if (typeof value == 'object') {\n return isArray(value)\n ? baseMatchesProperty(value[0], value[1])\n : baseMatches(value);\n }\n return property(value);\n }\n\n /**\n * The base implementation of `_.keys` which doesn't treat sparse arrays as dense.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n */\n function baseKeys(object) {\n if (!isPrototype(object)) {\n return nativeKeys(object);\n }\n var result = [];\n for (var key in Object(object)) {\n if (hasOwnProperty.call(object, key) && key != 'constructor') {\n result.push(key);\n }\n }\n return result;\n }\n\n /**\n * The base implementation of `_.keysIn` which doesn't treat sparse arrays as dense.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n */\n function baseKeysIn(object) {\n if (!isObject(object)) {\n return nativeKeysIn(object);\n }\n var isProto = isPrototype(object),\n result = [];\n\n for (var key in object) {\n if (!(key == 'constructor' && (isProto || !hasOwnProperty.call(object, key)))) {\n result.push(key);\n }\n }\n return result;\n }\n\n /**\n * The base implementation of `_.lt` which doesn't coerce arguments.\n *\n * @private\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if `value` is less than `other`,\n * else `false`.\n */\n function baseLt(value, other) {\n return value < other;\n }\n\n /**\n * The base implementation of `_.map` without support for iteratee shorthands.\n *\n * @private\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array} Returns the new mapped array.\n */\n function baseMap(collection, iteratee) {\n var index = -1,\n result = isArrayLike(collection) ? Array(collection.length) : [];\n\n baseEach(collection, function(value, key, collection) {\n result[++index] = iteratee(value, key, collection);\n });\n return result;\n }\n\n /**\n * The base implementation of `_.matches` which doesn't clone `source`.\n *\n * @private\n * @param {Object} source The object of property values to match.\n * @returns {Function} Returns the new spec function.\n */\n function baseMatches(source) {\n var matchData = getMatchData(source);\n if (matchData.length == 1 && matchData[0][2]) {\n return matchesStrictComparable(matchData[0][0], matchData[0][1]);\n }\n return function(object) {\n return object === source || baseIsMatch(object, source, matchData);\n };\n }\n\n /**\n * The base implementation of `_.matchesProperty` which doesn't clone `srcValue`.\n *\n * @private\n * @param {string} path The path of the property to get.\n * @param {*} srcValue The value to match.\n * @returns {Function} Returns the new spec function.\n */\n function baseMatchesProperty(path, srcValue) {\n if (isKey(path) && isStrictComparable(srcValue)) {\n return matchesStrictComparable(toKey(path), srcValue);\n }\n return function(object) {\n var objValue = get(object, path);\n return (objValue === undefined && objValue === srcValue)\n ? hasIn(object, path)\n : baseIsEqual(srcValue, objValue, COMPARE_PARTIAL_FLAG | COMPARE_UNORDERED_FLAG);\n };\n }\n\n /**\n * The base implementation of `_.merge` without support for multiple sources.\n *\n * @private\n * @param {Object} object The destination object.\n * @param {Object} source The source object.\n * @param {number} srcIndex The index of `source`.\n * @param {Function} [customizer] The function to customize merged values.\n * @param {Object} [stack] Tracks traversed source values and their merged\n * counterparts.\n */\n function baseMerge(object, source, srcIndex, customizer, stack) {\n if (object === source) {\n return;\n }\n baseFor(source, function(srcValue, key) {\n stack || (stack = new Stack);\n if (isObject(srcValue)) {\n baseMergeDeep(object, source, key, srcIndex, baseMerge, customizer, stack);\n }\n else {\n var newValue = customizer\n ? customizer(safeGet(object, key), srcValue, (key + ''), object, source, stack)\n : undefined;\n\n if (newValue === undefined) {\n newValue = srcValue;\n }\n assignMergeValue(object, key, newValue);\n }\n }, keysIn);\n }\n\n /**\n * A specialized version of `baseMerge` for arrays and objects which performs\n * deep merges and tracks traversed objects enabling objects with circular\n * references to be merged.\n *\n * @private\n * @param {Object} object The destination object.\n * @param {Object} source The source object.\n * @param {string} key The key of the value to merge.\n * @param {number} srcIndex The index of `source`.\n * @param {Function} mergeFunc The function to merge values.\n * @param {Function} [customizer] The function to customize assigned values.\n * @param {Object} [stack] Tracks traversed source values and their merged\n * counterparts.\n */\n function baseMergeDeep(object, source, key, srcIndex, mergeFunc, customizer, stack) {\n var objValue = safeGet(object, key),\n srcValue = safeGet(source, key),\n stacked = stack.get(srcValue);\n\n if (stacked) {\n assignMergeValue(object, key, stacked);\n return;\n }\n var newValue = customizer\n ? customizer(objValue, srcValue, (key + ''), object, source, stack)\n : undefined;\n\n var isCommon = newValue === undefined;\n\n if (isCommon) {\n var isArr = isArray(srcValue),\n isBuff = !isArr && isBuffer(srcValue),\n isTyped = !isArr && !isBuff && isTypedArray(srcValue);\n\n newValue = srcValue;\n if (isArr || isBuff || isTyped) {\n if (isArray(objValue)) {\n newValue = objValue;\n }\n else if (isArrayLikeObject(objValue)) {\n newValue = copyArray(objValue);\n }\n else if (isBuff) {\n isCommon = false;\n newValue = cloneBuffer(srcValue, true);\n }\n else if (isTyped) {\n isCommon = false;\n newValue = cloneTypedArray(srcValue, true);\n }\n else {\n newValue = [];\n }\n }\n else if (isPlainObject(srcValue) || isArguments(srcValue)) {\n newValue = objValue;\n if (isArguments(objValue)) {\n newValue = toPlainObject(objValue);\n }\n else if (!isObject(objValue) || isFunction(objValue)) {\n newValue = initCloneObject(srcValue);\n }\n }\n else {\n isCommon = false;\n }\n }\n if (isCommon) {\n // Recursively merge objects and arrays (susceptible to call stack limits).\n stack.set(srcValue, newValue);\n mergeFunc(newValue, srcValue, srcIndex, customizer, stack);\n stack['delete'](srcValue);\n }\n assignMergeValue(object, key, newValue);\n }\n\n /**\n * The base implementation of `_.nth` which doesn't coerce arguments.\n *\n * @private\n * @param {Array} array The array to query.\n * @param {number} n The index of the element to return.\n * @returns {*} Returns the nth element of `array`.\n */\n function baseNth(array, n) {\n var length = array.length;\n if (!length) {\n return;\n }\n n += n < 0 ? length : 0;\n return isIndex(n, length) ? array[n] : undefined;\n }\n\n /**\n * The base implementation of `_.orderBy` without param guards.\n *\n * @private\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function[]|Object[]|string[]} iteratees The iteratees to sort by.\n * @param {string[]} orders The sort orders of `iteratees`.\n * @returns {Array} Returns the new sorted array.\n */\n function baseOrderBy(collection, iteratees, orders) {\n if (iteratees.length) {\n iteratees = arrayMap(iteratees, function(iteratee) {\n if (isArray(iteratee)) {\n return function(value) {\n return baseGet(value, iteratee.length === 1 ? iteratee[0] : iteratee);\n }\n }\n return iteratee;\n });\n } else {\n iteratees = [identity];\n }\n\n var index = -1;\n iteratees = arrayMap(iteratees, baseUnary(getIteratee()));\n\n var result = baseMap(collection, function(value, key, collection) {\n var criteria = arrayMap(iteratees, function(iteratee) {\n return iteratee(value);\n });\n return { 'criteria': criteria, 'index': ++index, 'value': value };\n });\n\n return baseSortBy(result, function(object, other) {\n return compareMultiple(object, other, orders);\n });\n }\n\n /**\n * The base implementation of `_.pick` without support for individual\n * property identifiers.\n *\n * @private\n * @param {Object} object The source object.\n * @param {string[]} paths The property paths to pick.\n * @returns {Object} Returns the new object.\n */\n function basePick(object, paths) {\n return basePickBy(object, paths, function(value, path) {\n return hasIn(object, path);\n });\n }\n\n /**\n * The base implementation of `_.pickBy` without support for iteratee shorthands.\n *\n * @private\n * @param {Object} object The source object.\n * @param {string[]} paths The property paths to pick.\n * @param {Function} predicate The function invoked per property.\n * @returns {Object} Returns the new object.\n */\n function basePickBy(object, paths, predicate) {\n var index = -1,\n length = paths.length,\n result = {};\n\n while (++index < length) {\n var path = paths[index],\n value = baseGet(object, path);\n\n if (predicate(value, path)) {\n baseSet(result, castPath(path, object), value);\n }\n }\n return result;\n }\n\n /**\n * A specialized version of `baseProperty` which supports deep paths.\n *\n * @private\n * @param {Array|string} path The path of the property to get.\n * @returns {Function} Returns the new accessor function.\n */\n function basePropertyDeep(path) {\n return function(object) {\n return baseGet(object, path);\n };\n }\n\n /**\n * The base implementation of `_.pullAllBy` without support for iteratee\n * shorthands.\n *\n * @private\n * @param {Array} array The array to modify.\n * @param {Array} values The values to remove.\n * @param {Function} [iteratee] The iteratee invoked per element.\n * @param {Function} [comparator] The comparator invoked per element.\n * @returns {Array} Returns `array`.\n */\n function basePullAll(array, values, iteratee, comparator) {\n var indexOf = comparator ? baseIndexOfWith : baseIndexOf,\n index = -1,\n length = values.length,\n seen = array;\n\n if (array === values) {\n values = copyArray(values);\n }\n if (iteratee) {\n seen = arrayMap(array, baseUnary(iteratee));\n }\n while (++index < length) {\n var fromIndex = 0,\n value = values[index],\n computed = iteratee ? iteratee(value) : value;\n\n while ((fromIndex = indexOf(seen, computed, fromIndex, comparator)) > -1) {\n if (seen !== array) {\n splice.call(seen, fromIndex, 1);\n }\n splice.call(array, fromIndex, 1);\n }\n }\n return array;\n }\n\n /**\n * The base implementation of `_.pullAt` without support for individual\n * indexes or capturing the removed elements.\n *\n * @private\n * @param {Array} array The array to modify.\n * @param {number[]} indexes The indexes of elements to remove.\n * @returns {Array} Returns `array`.\n */\n function basePullAt(array, indexes) {\n var length = array ? indexes.length : 0,\n lastIndex = length - 1;\n\n while (length--) {\n var index = indexes[length];\n if (length == lastIndex || index !== previous) {\n var previous = index;\n if (isIndex(index)) {\n splice.call(array, index, 1);\n } else {\n baseUnset(array, index);\n }\n }\n }\n return array;\n }\n\n /**\n * The base implementation of `_.random` without support for returning\n * floating-point numbers.\n *\n * @private\n * @param {number} lower The lower bound.\n * @param {number} upper The upper bound.\n * @returns {number} Returns the random number.\n */\n function baseRandom(lower, upper) {\n return lower + nativeFloor(nativeRandom() * (upper - lower + 1));\n }\n\n /**\n * The base implementation of `_.range` and `_.rangeRight` which doesn't\n * coerce arguments.\n *\n * @private\n * @param {number} start The start of the range.\n * @param {number} end The end of the range.\n * @param {number} step The value to increment or decrement by.\n * @param {boolean} [fromRight] Specify iterating from right to left.\n * @returns {Array} Returns the range of numbers.\n */\n function baseRange(start, end, step, fromRight) {\n var index = -1,\n length = nativeMax(nativeCeil((end - start) / (step || 1)), 0),\n result = Array(length);\n\n while (length--) {\n result[fromRight ? length : ++index] = start;\n start += step;\n }\n return result;\n }\n\n /**\n * The base implementation of `_.repeat` which doesn't coerce arguments.\n *\n * @private\n * @param {string} string The string to repeat.\n * @param {number} n The number of times to repeat the string.\n * @returns {string} Returns the repeated string.\n */\n function baseRepeat(string, n) {\n var result = '';\n if (!string || n < 1 || n > MAX_SAFE_INTEGER) {\n return result;\n }\n // Leverage the exponentiation by squaring algorithm for a faster repeat.\n // See https://en.wikipedia.org/wiki/Exponentiation_by_squaring for more details.\n do {\n if (n % 2) {\n result += string;\n }\n n = nativeFloor(n / 2);\n if (n) {\n string += string;\n }\n } while (n);\n\n return result;\n }\n\n /**\n * The base implementation of `_.rest` which doesn't validate or coerce arguments.\n *\n * @private\n * @param {Function} func The function to apply a rest parameter to.\n * @param {number} [start=func.length-1] The start position of the rest parameter.\n * @returns {Function} Returns the new function.\n */\n function baseRest(func, start) {\n return setToString(overRest(func, start, identity), func + '');\n }\n\n /**\n * The base implementation of `_.sample`.\n *\n * @private\n * @param {Array|Object} collection The collection to sample.\n * @returns {*} Returns the random element.\n */\n function baseSample(collection) {\n return arraySample(values(collection));\n }\n\n /**\n * The base implementation of `_.sampleSize` without param guards.\n *\n * @private\n * @param {Array|Object} collection The collection to sample.\n * @param {number} n The number of elements to sample.\n * @returns {Array} Returns the random elements.\n */\n function baseSampleSize(collection, n) {\n var array = values(collection);\n return shuffleSelf(array, baseClamp(n, 0, array.length));\n }\n\n /**\n * The base implementation of `_.set`.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {Array|string} path The path of the property to set.\n * @param {*} value The value to set.\n * @param {Function} [customizer] The function to customize path creation.\n * @returns {Object} Returns `object`.\n */\n function baseSet(object, path, value, customizer) {\n if (!isObject(object)) {\n return object;\n }\n path = castPath(path, object);\n\n var index = -1,\n length = path.length,\n lastIndex = length - 1,\n nested = object;\n\n while (nested != null && ++index < length) {\n var key = toKey(path[index]),\n newValue = value;\n\n if (key === '__proto__' || key === 'constructor' || key === 'prototype') {\n return object;\n }\n\n if (index != lastIndex) {\n var objValue = nested[key];\n newValue = customizer ? customizer(objValue, key, nested) : undefined;\n if (newValue === undefined) {\n newValue = isObject(objValue)\n ? objValue\n : (isIndex(path[index + 1]) ? [] : {});\n }\n }\n assignValue(nested, key, newValue);\n nested = nested[key];\n }\n return object;\n }\n\n /**\n * The base implementation of `setData` without support for hot loop shorting.\n *\n * @private\n * @param {Function} func The function to associate metadata with.\n * @param {*} data The metadata.\n * @returns {Function} Returns `func`.\n */\n var baseSetData = !metaMap ? identity : function(func, data) {\n metaMap.set(func, data);\n return func;\n };\n\n /**\n * The base implementation of `setToString` without support for hot loop shorting.\n *\n * @private\n * @param {Function} func The function to modify.\n * @param {Function} string The `toString` result.\n * @returns {Function} Returns `func`.\n */\n var baseSetToString = !defineProperty ? identity : function(func, string) {\n return defineProperty(func, 'toString', {\n 'configurable': true,\n 'enumerable': false,\n 'value': constant(string),\n 'writable': true\n });\n };\n\n /**\n * The base implementation of `_.shuffle`.\n *\n * @private\n * @param {Array|Object} collection The collection to shuffle.\n * @returns {Array} Returns the new shuffled array.\n */\n function baseShuffle(collection) {\n return shuffleSelf(values(collection));\n }\n\n /**\n * The base implementation of `_.slice` without an iteratee call guard.\n *\n * @private\n * @param {Array} array The array to slice.\n * @param {number} [start=0] The start position.\n * @param {number} [end=array.length] The end position.\n * @returns {Array} Returns the slice of `array`.\n */\n function baseSlice(array, start, end) {\n var index = -1,\n length = array.length;\n\n if (start < 0) {\n start = -start > length ? 0 : (length + start);\n }\n end = end > length ? length : end;\n if (end < 0) {\n end += length;\n }\n length = start > end ? 0 : ((end - start) >>> 0);\n start >>>= 0;\n\n var result = Array(length);\n while (++index < length) {\n result[index] = array[index + start];\n }\n return result;\n }\n\n /**\n * The base implementation of `_.some` without support for iteratee shorthands.\n *\n * @private\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} predicate The function invoked per iteration.\n * @returns {boolean} Returns `true` if any element passes the predicate check,\n * else `false`.\n */\n function baseSome(collection, predicate) {\n var result;\n\n baseEach(collection, function(value, index, collection) {\n result = predicate(value, index, collection);\n return !result;\n });\n return !!result;\n }\n\n /**\n * The base implementation of `_.sortedIndex` and `_.sortedLastIndex` which\n * performs a binary search of `array` to determine the index at which `value`\n * should be inserted into `array` in order to maintain its sort order.\n *\n * @private\n * @param {Array} array The sorted array to inspect.\n * @param {*} value The value to evaluate.\n * @param {boolean} [retHighest] Specify returning the highest qualified index.\n * @returns {number} Returns the index at which `value` should be inserted\n * into `array`.\n */\n function baseSortedIndex(array, value, retHighest) {\n var low = 0,\n high = array == null ? low : array.length;\n\n if (typeof value == 'number' && value === value && high <= HALF_MAX_ARRAY_LENGTH) {\n while (low < high) {\n var mid = (low + high) >>> 1,\n computed = array[mid];\n\n if (computed !== null && !isSymbol(computed) &&\n (retHighest ? (computed <= value) : (computed < value))) {\n low = mid + 1;\n } else {\n high = mid;\n }\n }\n return high;\n }\n return baseSortedIndexBy(array, value, identity, retHighest);\n }\n\n /**\n * The base implementation of `_.sortedIndexBy` and `_.sortedLastIndexBy`\n * which invokes `iteratee` for `value` and each element of `array` to compute\n * their sort ranking. The iteratee is invoked with one argument; (value).\n *\n * @private\n * @param {Array} array The sorted array to inspect.\n * @param {*} value The value to evaluate.\n * @param {Function} iteratee The iteratee invoked per element.\n * @param {boolean} [retHighest] Specify returning the highest qualified index.\n * @returns {number} Returns the index at which `value` should be inserted\n * into `array`.\n */\n function baseSortedIndexBy(array, value, iteratee, retHighest) {\n var low = 0,\n high = array == null ? 0 : array.length;\n if (high === 0) {\n return 0;\n }\n\n value = iteratee(value);\n var valIsNaN = value !== value,\n valIsNull = value === null,\n valIsSymbol = isSymbol(value),\n valIsUndefined = value === undefined;\n\n while (low < high) {\n var mid = nativeFloor((low + high) / 2),\n computed = iteratee(array[mid]),\n othIsDefined = computed !== undefined,\n othIsNull = computed === null,\n othIsReflexive = computed === computed,\n othIsSymbol = isSymbol(computed);\n\n if (valIsNaN) {\n var setLow = retHighest || othIsReflexive;\n } else if (valIsUndefined) {\n setLow = othIsReflexive && (retHighest || othIsDefined);\n } else if (valIsNull) {\n setLow = othIsReflexive && othIsDefined && (retHighest || !othIsNull);\n } else if (valIsSymbol) {\n setLow = othIsReflexive && othIsDefined && !othIsNull && (retHighest || !othIsSymbol);\n } else if (othIsNull || othIsSymbol) {\n setLow = false;\n } else {\n setLow = retHighest ? (computed <= value) : (computed < value);\n }\n if (setLow) {\n low = mid + 1;\n } else {\n high = mid;\n }\n }\n return nativeMin(high, MAX_ARRAY_INDEX);\n }\n\n /**\n * The base implementation of `_.sortedUniq` and `_.sortedUniqBy` without\n * support for iteratee shorthands.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {Function} [iteratee] The iteratee invoked per element.\n * @returns {Array} Returns the new duplicate free array.\n */\n function baseSortedUniq(array, iteratee) {\n var index = -1,\n length = array.length,\n resIndex = 0,\n result = [];\n\n while (++index < length) {\n var value = array[index],\n computed = iteratee ? iteratee(value) : value;\n\n if (!index || !eq(computed, seen)) {\n var seen = computed;\n result[resIndex++] = value === 0 ? 0 : value;\n }\n }\n return result;\n }\n\n /**\n * The base implementation of `_.toNumber` which doesn't ensure correct\n * conversions of binary, hexadecimal, or octal string values.\n *\n * @private\n * @param {*} value The value to process.\n * @returns {number} Returns the number.\n */\n function baseToNumber(value) {\n if (typeof value == 'number') {\n return value;\n }\n if (isSymbol(value)) {\n return NAN;\n }\n return +value;\n }\n\n /**\n * The base implementation of `_.toString` which doesn't convert nullish\n * values to empty strings.\n *\n * @private\n * @param {*} value The value to process.\n * @returns {string} Returns the string.\n */\n function baseToString(value) {\n // Exit early for strings to avoid a performance hit in some environments.\n if (typeof value == 'string') {\n return value;\n }\n if (isArray(value)) {\n // Recursively convert values (susceptible to call stack limits).\n return arrayMap(value, baseToString) + '';\n }\n if (isSymbol(value)) {\n return symbolToString ? symbolToString.call(value) : '';\n }\n var result = (value + '');\n return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result;\n }\n\n /**\n * The base implementation of `_.uniqBy` without support for iteratee shorthands.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {Function} [iteratee] The iteratee invoked per element.\n * @param {Function} [comparator] The comparator invoked per element.\n * @returns {Array} Returns the new duplicate free array.\n */\n function baseUniq(array, iteratee, comparator) {\n var index = -1,\n includes = arrayIncludes,\n length = array.length,\n isCommon = true,\n result = [],\n seen = result;\n\n if (comparator) {\n isCommon = false;\n includes = arrayIncludesWith;\n }\n else if (length >= LARGE_ARRAY_SIZE) {\n var set = iteratee ? null : createSet(array);\n if (set) {\n return setToArray(set);\n }\n isCommon = false;\n includes = cacheHas;\n seen = new SetCache;\n }\n else {\n seen = iteratee ? [] : result;\n }\n outer:\n while (++index < length) {\n var value = array[index],\n computed = iteratee ? iteratee(value) : value;\n\n value = (comparator || value !== 0) ? value : 0;\n if (isCommon && computed === computed) {\n var seenIndex = seen.length;\n while (seenIndex--) {\n if (seen[seenIndex] === computed) {\n continue outer;\n }\n }\n if (iteratee) {\n seen.push(computed);\n }\n result.push(value);\n }\n else if (!includes(seen, computed, comparator)) {\n if (seen !== result) {\n seen.push(computed);\n }\n result.push(value);\n }\n }\n return result;\n }\n\n /**\n * The base implementation of `_.unset`.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {Array|string} path The property path to unset.\n * @returns {boolean} Returns `true` if the property is deleted, else `false`.\n */\n function baseUnset(object, path) {\n path = castPath(path, object);\n object = parent(object, path);\n return object == null || delete object[toKey(last(path))];\n }\n\n /**\n * The base implementation of `_.update`.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {Array|string} path The path of the property to update.\n * @param {Function} updater The function to produce the updated value.\n * @param {Function} [customizer] The function to customize path creation.\n * @returns {Object} Returns `object`.\n */\n function baseUpdate(object, path, updater, customizer) {\n return baseSet(object, path, updater(baseGet(object, path)), customizer);\n }\n\n /**\n * The base implementation of methods like `_.dropWhile` and `_.takeWhile`\n * without support for iteratee shorthands.\n *\n * @private\n * @param {Array} array The array to query.\n * @param {Function} predicate The function invoked per iteration.\n * @param {boolean} [isDrop] Specify dropping elements instead of taking them.\n * @param {boolean} [fromRight] Specify iterating from right to left.\n * @returns {Array} Returns the slice of `array`.\n */\n function baseWhile(array, predicate, isDrop, fromRight) {\n var length = array.length,\n index = fromRight ? length : -1;\n\n while ((fromRight ? index-- : ++index < length) &&\n predicate(array[index], index, array)) {}\n\n return isDrop\n ? baseSlice(array, (fromRight ? 0 : index), (fromRight ? index + 1 : length))\n : baseSlice(array, (fromRight ? index + 1 : 0), (fromRight ? length : index));\n }\n\n /**\n * The base implementation of `wrapperValue` which returns the result of\n * performing a sequence of actions on the unwrapped `value`, where each\n * successive action is supplied the return value of the previous.\n *\n * @private\n * @param {*} value The unwrapped value.\n * @param {Array} actions Actions to perform to resolve the unwrapped value.\n * @returns {*} Returns the resolved value.\n */\n function baseWrapperValue(value, actions) {\n var result = value;\n if (result instanceof LazyWrapper) {\n result = result.value();\n }\n return arrayReduce(actions, function(result, action) {\n return action.func.apply(action.thisArg, arrayPush([result], action.args));\n }, result);\n }\n\n /**\n * The base implementation of methods like `_.xor`, without support for\n * iteratee shorthands, that accepts an array of arrays to inspect.\n *\n * @private\n * @param {Array} arrays The arrays to inspect.\n * @param {Function} [iteratee] The iteratee invoked per element.\n * @param {Function} [comparator] The comparator invoked per element.\n * @returns {Array} Returns the new array of values.\n */\n function baseXor(arrays, iteratee, comparator) {\n var length = arrays.length;\n if (length < 2) {\n return length ? baseUniq(arrays[0]) : [];\n }\n var index = -1,\n result = Array(length);\n\n while (++index < length) {\n var array = arrays[index],\n othIndex = -1;\n\n while (++othIndex < length) {\n if (othIndex != index) {\n result[index] = baseDifference(result[index] || array, arrays[othIndex], iteratee, comparator);\n }\n }\n }\n return baseUniq(baseFlatten(result, 1), iteratee, comparator);\n }\n\n /**\n * This base implementation of `_.zipObject` which assigns values using `assignFunc`.\n *\n * @private\n * @param {Array} props The property identifiers.\n * @param {Array} values The property values.\n * @param {Function} assignFunc The function to assign values.\n * @returns {Object} Returns the new object.\n */\n function baseZipObject(props, values, assignFunc) {\n var index = -1,\n length = props.length,\n valsLength = values.length,\n result = {};\n\n while (++index < length) {\n var value = index < valsLength ? values[index] : undefined;\n assignFunc(result, props[index], value);\n }\n return result;\n }\n\n /**\n * Casts `value` to an empty array if it's not an array like object.\n *\n * @private\n * @param {*} value The value to inspect.\n * @returns {Array|Object} Returns the cast array-like object.\n */\n function castArrayLikeObject(value) {\n return isArrayLikeObject(value) ? value : [];\n }\n\n /**\n * Casts `value` to `identity` if it's not a function.\n *\n * @private\n * @param {*} value The value to inspect.\n * @returns {Function} Returns cast function.\n */\n function castFunction(value) {\n return typeof value == 'function' ? value : identity;\n }\n\n /**\n * Casts `value` to a path array if it's not one.\n *\n * @private\n * @param {*} value The value to inspect.\n * @param {Object} [object] The object to query keys on.\n * @returns {Array} Returns the cast property path array.\n */\n function castPath(value, object) {\n if (isArray(value)) {\n return value;\n }\n return isKey(value, object) ? [value] : stringToPath(toString(value));\n }\n\n /**\n * A `baseRest` alias which can be replaced with `identity` by module\n * replacement plugins.\n *\n * @private\n * @type {Function}\n * @param {Function} func The function to apply a rest parameter to.\n * @returns {Function} Returns the new function.\n */\n var castRest = baseRest;\n\n /**\n * Casts `array` to a slice if it's needed.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {number} start The start position.\n * @param {number} [end=array.length] The end position.\n * @returns {Array} Returns the cast slice.\n */\n function castSlice(array, start, end) {\n var length = array.length;\n end = end === undefined ? length : end;\n return (!start && end >= length) ? array : baseSlice(array, start, end);\n }\n\n /**\n * A simple wrapper around the global [`clearTimeout`](https://mdn.io/clearTimeout).\n *\n * @private\n * @param {number|Object} id The timer id or timeout object of the timer to clear.\n */\n var clearTimeout = ctxClearTimeout || function(id) {\n return root.clearTimeout(id);\n };\n\n /**\n * Creates a clone of `buffer`.\n *\n * @private\n * @param {Buffer} buffer The buffer to clone.\n * @param {boolean} [isDeep] Specify a deep clone.\n * @returns {Buffer} Returns the cloned buffer.\n */\n function cloneBuffer(buffer, isDeep) {\n if (isDeep) {\n return buffer.slice();\n }\n var length = buffer.length,\n result = allocUnsafe ? allocUnsafe(length) : new buffer.constructor(length);\n\n buffer.copy(result);\n return result;\n }\n\n /**\n * Creates a clone of `arrayBuffer`.\n *\n * @private\n * @param {ArrayBuffer} arrayBuffer The array buffer to clone.\n * @returns {ArrayBuffer} Returns the cloned array buffer.\n */\n function cloneArrayBuffer(arrayBuffer) {\n var result = new arrayBuffer.constructor(arrayBuffer.byteLength);\n new Uint8Array(result).set(new Uint8Array(arrayBuffer));\n return result;\n }\n\n /**\n * Creates a clone of `dataView`.\n *\n * @private\n * @param {Object} dataView The data view to clone.\n * @param {boolean} [isDeep] Specify a deep clone.\n * @returns {Object} Returns the cloned data view.\n */\n function cloneDataView(dataView, isDeep) {\n var buffer = isDeep ? cloneArrayBuffer(dataView.buffer) : dataView.buffer;\n return new dataView.constructor(buffer, dataView.byteOffset, dataView.byteLength);\n }\n\n /**\n * Creates a clone of `regexp`.\n *\n * @private\n * @param {Object} regexp The regexp to clone.\n * @returns {Object} Returns the cloned regexp.\n */\n function cloneRegExp(regexp) {\n var result = new regexp.constructor(regexp.source, reFlags.exec(regexp));\n result.lastIndex = regexp.lastIndex;\n return result;\n }\n\n /**\n * Creates a clone of the `symbol` object.\n *\n * @private\n * @param {Object} symbol The symbol object to clone.\n * @returns {Object} Returns the cloned symbol object.\n */\n function cloneSymbol(symbol) {\n return symbolValueOf ? Object(symbolValueOf.call(symbol)) : {};\n }\n\n /**\n * Creates a clone of `typedArray`.\n *\n * @private\n * @param {Object} typedArray The typed array to clone.\n * @param {boolean} [isDeep] Specify a deep clone.\n * @returns {Object} Returns the cloned typed array.\n */\n function cloneTypedArray(typedArray, isDeep) {\n var buffer = isDeep ? cloneArrayBuffer(typedArray.buffer) : typedArray.buffer;\n return new typedArray.constructor(buffer, typedArray.byteOffset, typedArray.length);\n }\n\n /**\n * Compares values to sort them in ascending order.\n *\n * @private\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {number} Returns the sort order indicator for `value`.\n */\n function compareAscending(value, other) {\n if (value !== other) {\n var valIsDefined = value !== undefined,\n valIsNull = value === null,\n valIsReflexive = value === value,\n valIsSymbol = isSymbol(value);\n\n var othIsDefined = other !== undefined,\n othIsNull = other === null,\n othIsReflexive = other === other,\n othIsSymbol = isSymbol(other);\n\n if ((!othIsNull && !othIsSymbol && !valIsSymbol && value > other) ||\n (valIsSymbol && othIsDefined && othIsReflexive && !othIsNull && !othIsSymbol) ||\n (valIsNull && othIsDefined && othIsReflexive) ||\n (!valIsDefined && othIsReflexive) ||\n !valIsReflexive) {\n return 1;\n }\n if ((!valIsNull && !valIsSymbol && !othIsSymbol && value < other) ||\n (othIsSymbol && valIsDefined && valIsReflexive && !valIsNull && !valIsSymbol) ||\n (othIsNull && valIsDefined && valIsReflexive) ||\n (!othIsDefined && valIsReflexive) ||\n !othIsReflexive) {\n return -1;\n }\n }\n return 0;\n }\n\n /**\n * Used by `_.orderBy` to compare multiple properties of a value to another\n * and stable sort them.\n *\n * If `orders` is unspecified, all values are sorted in ascending order. Otherwise,\n * specify an order of \"desc\" for descending or \"asc\" for ascending sort order\n * of corresponding values.\n *\n * @private\n * @param {Object} object The object to compare.\n * @param {Object} other The other object to compare.\n * @param {boolean[]|string[]} orders The order to sort by for each property.\n * @returns {number} Returns the sort order indicator for `object`.\n */\n function compareMultiple(object, other, orders) {\n var index = -1,\n objCriteria = object.criteria,\n othCriteria = other.criteria,\n length = objCriteria.length,\n ordersLength = orders.length;\n\n while (++index < length) {\n var result = compareAscending(objCriteria[index], othCriteria[index]);\n if (result) {\n if (index >= ordersLength) {\n return result;\n }\n var order = orders[index];\n return result * (order == 'desc' ? -1 : 1);\n }\n }\n // Fixes an `Array#sort` bug in the JS engine embedded in Adobe applications\n // that causes it, under certain circumstances, to provide the same value for\n // `object` and `other`. See https://github.com/jashkenas/underscore/pull/1247\n // for more details.\n //\n // This also ensures a stable sort in V8 and other engines.\n // See https://bugs.chromium.org/p/v8/issues/detail?id=90 for more details.\n return object.index - other.index;\n }\n\n /**\n * Creates an array that is the composition of partially applied arguments,\n * placeholders, and provided arguments into a single array of arguments.\n *\n * @private\n * @param {Array} args The provided arguments.\n * @param {Array} partials The arguments to prepend to those provided.\n * @param {Array} holders The `partials` placeholder indexes.\n * @params {boolean} [isCurried] Specify composing for a curried function.\n * @returns {Array} Returns the new array of composed arguments.\n */\n function composeArgs(args, partials, holders, isCurried) {\n var argsIndex = -1,\n argsLength = args.length,\n holdersLength = holders.length,\n leftIndex = -1,\n leftLength = partials.length,\n rangeLength = nativeMax(argsLength - holdersLength, 0),\n result = Array(leftLength + rangeLength),\n isUncurried = !isCurried;\n\n while (++leftIndex < leftLength) {\n result[leftIndex] = partials[leftIndex];\n }\n while (++argsIndex < holdersLength) {\n if (isUncurried || argsIndex < argsLength) {\n result[holders[argsIndex]] = args[argsIndex];\n }\n }\n while (rangeLength--) {\n result[leftIndex++] = args[argsIndex++];\n }\n return result;\n }\n\n /**\n * This function is like `composeArgs` except that the arguments composition\n * is tailored for `_.partialRight`.\n *\n * @private\n * @param {Array} args The provided arguments.\n * @param {Array} partials The arguments to append to those provided.\n * @param {Array} holders The `partials` placeholder indexes.\n * @params {boolean} [isCurried] Specify composing for a curried function.\n * @returns {Array} Returns the new array of composed arguments.\n */\n function composeArgsRight(args, partials, holders, isCurried) {\n var argsIndex = -1,\n argsLength = args.length,\n holdersIndex = -1,\n holdersLength = holders.length,\n rightIndex = -1,\n rightLength = partials.length,\n rangeLength = nativeMax(argsLength - holdersLength, 0),\n result = Array(rangeLength + rightLength),\n isUncurried = !isCurried;\n\n while (++argsIndex < rangeLength) {\n result[argsIndex] = args[argsIndex];\n }\n var offset = argsIndex;\n while (++rightIndex < rightLength) {\n result[offset + rightIndex] = partials[rightIndex];\n }\n while (++holdersIndex < holdersLength) {\n if (isUncurried || argsIndex < argsLength) {\n result[offset + holders[holdersIndex]] = args[argsIndex++];\n }\n }\n return result;\n }\n\n /**\n * Copies the values of `source` to `array`.\n *\n * @private\n * @param {Array} source The array to copy values from.\n * @param {Array} [array=[]] The array to copy values to.\n * @returns {Array} Returns `array`.\n */\n function copyArray(source, array) {\n var index = -1,\n length = source.length;\n\n array || (array = Array(length));\n while (++index < length) {\n array[index] = source[index];\n }\n return array;\n }\n\n /**\n * Copies properties of `source` to `object`.\n *\n * @private\n * @param {Object} source The object to copy properties from.\n * @param {Array} props The property identifiers to copy.\n * @param {Object} [object={}] The object to copy properties to.\n * @param {Function} [customizer] The function to customize copied values.\n * @returns {Object} Returns `object`.\n */\n function copyObject(source, props, object, customizer) {\n var isNew = !object;\n object || (object = {});\n\n var index = -1,\n length = props.length;\n\n while (++index < length) {\n var key = props[index];\n\n var newValue = customizer\n ? customizer(object[key], source[key], key, object, source)\n : undefined;\n\n if (newValue === undefined) {\n newValue = source[key];\n }\n if (isNew) {\n baseAssignValue(object, key, newValue);\n } else {\n assignValue(object, key, newValue);\n }\n }\n return object;\n }\n\n /**\n * Copies own symbols of `source` to `object`.\n *\n * @private\n * @param {Object} source The object to copy symbols from.\n * @param {Object} [object={}] The object to copy symbols to.\n * @returns {Object} Returns `object`.\n */\n function copySymbols(source, object) {\n return copyObject(source, getSymbols(source), object);\n }\n\n /**\n * Copies own and inherited symbols of `source` to `object`.\n *\n * @private\n * @param {Object} source The object to copy symbols from.\n * @param {Object} [object={}] The object to copy symbols to.\n * @returns {Object} Returns `object`.\n */\n function copySymbolsIn(source, object) {\n return copyObject(source, getSymbolsIn(source), object);\n }\n\n /**\n * Creates a function like `_.groupBy`.\n *\n * @private\n * @param {Function} setter The function to set accumulator values.\n * @param {Function} [initializer] The accumulator object initializer.\n * @returns {Function} Returns the new aggregator function.\n */\n function createAggregator(setter, initializer) {\n return function(collection, iteratee) {\n var func = isArray(collection) ? arrayAggregator : baseAggregator,\n accumulator = initializer ? initializer() : {};\n\n return func(collection, setter, getIteratee(iteratee, 2), accumulator);\n };\n }\n\n /**\n * Creates a function like `_.assign`.\n *\n * @private\n * @param {Function} assigner The function to assign values.\n * @returns {Function} Returns the new assigner function.\n */\n function createAssigner(assigner) {\n return baseRest(function(object, sources) {\n var index = -1,\n length = sources.length,\n customizer = length > 1 ? sources[length - 1] : undefined,\n guard = length > 2 ? sources[2] : undefined;\n\n customizer = (assigner.length > 3 && typeof customizer == 'function')\n ? (length--, customizer)\n : undefined;\n\n if (guard && isIterateeCall(sources[0], sources[1], guard)) {\n customizer = length < 3 ? undefined : customizer;\n length = 1;\n }\n object = Object(object);\n while (++index < length) {\n var source = sources[index];\n if (source) {\n assigner(object, source, index, customizer);\n }\n }\n return object;\n });\n }\n\n /**\n * Creates a `baseEach` or `baseEachRight` function.\n *\n * @private\n * @param {Function} eachFunc The function to iterate over a collection.\n * @param {boolean} [fromRight] Specify iterating from right to left.\n * @returns {Function} Returns the new base function.\n */\n function createBaseEach(eachFunc, fromRight) {\n return function(collection, iteratee) {\n if (collection == null) {\n return collection;\n }\n if (!isArrayLike(collection)) {\n return eachFunc(collection, iteratee);\n }\n var length = collection.length,\n index = fromRight ? length : -1,\n iterable = Object(collection);\n\n while ((fromRight ? index-- : ++index < length)) {\n if (iteratee(iterable[index], index, iterable) === false) {\n break;\n }\n }\n return collection;\n };\n }\n\n /**\n * Creates a base function for methods like `_.forIn` and `_.forOwn`.\n *\n * @private\n * @param {boolean} [fromRight] Specify iterating from right to left.\n * @returns {Function} Returns the new base function.\n */\n function createBaseFor(fromRight) {\n return function(object, iteratee, keysFunc) {\n var index = -1,\n iterable = Object(object),\n props = keysFunc(object),\n length = props.length;\n\n while (length--) {\n var key = props[fromRight ? length : ++index];\n if (iteratee(iterable[key], key, iterable) === false) {\n break;\n }\n }\n return object;\n };\n }\n\n /**\n * Creates a function that wraps `func` to invoke it with the optional `this`\n * binding of `thisArg`.\n *\n * @private\n * @param {Function} func The function to wrap.\n * @param {number} bitmask The bitmask flags. See `createWrap` for more details.\n * @param {*} [thisArg] The `this` binding of `func`.\n * @returns {Function} Returns the new wrapped function.\n */\n function createBind(func, bitmask, thisArg) {\n var isBind = bitmask & WRAP_BIND_FLAG,\n Ctor = createCtor(func);\n\n function wrapper() {\n var fn = (this && this !== root && this instanceof wrapper) ? Ctor : func;\n return fn.apply(isBind ? thisArg : this, arguments);\n }\n return wrapper;\n }\n\n /**\n * Creates a function like `_.lowerFirst`.\n *\n * @private\n * @param {string} methodName The name of the `String` case method to use.\n * @returns {Function} Returns the new case function.\n */\n function createCaseFirst(methodName) {\n return function(string) {\n string = toString(string);\n\n var strSymbols = hasUnicode(string)\n ? stringToArray(string)\n : undefined;\n\n var chr = strSymbols\n ? strSymbols[0]\n : string.charAt(0);\n\n var trailing = strSymbols\n ? castSlice(strSymbols, 1).join('')\n : string.slice(1);\n\n return chr[methodName]() + trailing;\n };\n }\n\n /**\n * Creates a function like `_.camelCase`.\n *\n * @private\n * @param {Function} callback The function to combine each word.\n * @returns {Function} Returns the new compounder function.\n */\n function createCompounder(callback) {\n return function(string) {\n return arrayReduce(words(deburr(string).replace(reApos, '')), callback, '');\n };\n }\n\n /**\n * Creates a function that produces an instance of `Ctor` regardless of\n * whether it was invoked as part of a `new` expression or by `call` or `apply`.\n *\n * @private\n * @param {Function} Ctor The constructor to wrap.\n * @returns {Function} Returns the new wrapped function.\n */\n function createCtor(Ctor) {\n return function() {\n // Use a `switch` statement to work with class constructors. See\n // http://ecma-international.org/ecma-262/7.0/#sec-ecmascript-function-objects-call-thisargument-argumentslist\n // for more details.\n var args = arguments;\n switch (args.length) {\n case 0: return new Ctor;\n case 1: return new Ctor(args[0]);\n case 2: return new Ctor(args[0], args[1]);\n case 3: return new Ctor(args[0], args[1], args[2]);\n case 4: return new Ctor(args[0], args[1], args[2], args[3]);\n case 5: return new Ctor(args[0], args[1], args[2], args[3], args[4]);\n case 6: return new Ctor(args[0], args[1], args[2], args[3], args[4], args[5]);\n case 7: return new Ctor(args[0], args[1], args[2], args[3], args[4], args[5], args[6]);\n }\n var thisBinding = baseCreate(Ctor.prototype),\n result = Ctor.apply(thisBinding, args);\n\n // Mimic the constructor's `return` behavior.\n // See https://es5.github.io/#x13.2.2 for more details.\n return isObject(result) ? result : thisBinding;\n };\n }\n\n /**\n * Creates a function that wraps `func` to enable currying.\n *\n * @private\n * @param {Function} func The function to wrap.\n * @param {number} bitmask The bitmask flags. See `createWrap` for more details.\n * @param {number} arity The arity of `func`.\n * @returns {Function} Returns the new wrapped function.\n */\n function createCurry(func, bitmask, arity) {\n var Ctor = createCtor(func);\n\n function wrapper() {\n var length = arguments.length,\n args = Array(length),\n index = length,\n placeholder = getHolder(wrapper);\n\n while (index--) {\n args[index] = arguments[index];\n }\n var holders = (length < 3 && args[0] !== placeholder && args[length - 1] !== placeholder)\n ? []\n : replaceHolders(args, placeholder);\n\n length -= holders.length;\n if (length < arity) {\n return createRecurry(\n func, bitmask, createHybrid, wrapper.placeholder, undefined,\n args, holders, undefined, undefined, arity - length);\n }\n var fn = (this && this !== root && this instanceof wrapper) ? Ctor : func;\n return apply(fn, this, args);\n }\n return wrapper;\n }\n\n /**\n * Creates a `_.find` or `_.findLast` function.\n *\n * @private\n * @param {Function} findIndexFunc The function to find the collection index.\n * @returns {Function} Returns the new find function.\n */\n function createFind(findIndexFunc) {\n return function(collection, predicate, fromIndex) {\n var iterable = Object(collection);\n if (!isArrayLike(collection)) {\n var iteratee = getIteratee(predicate, 3);\n collection = keys(collection);\n predicate = function(key) { return iteratee(iterable[key], key, iterable); };\n }\n var index = findIndexFunc(collection, predicate, fromIndex);\n return index > -1 ? iterable[iteratee ? collection[index] : index] : undefined;\n };\n }\n\n /**\n * Creates a `_.flow` or `_.flowRight` function.\n *\n * @private\n * @param {boolean} [fromRight] Specify iterating from right to left.\n * @returns {Function} Returns the new flow function.\n */\n function createFlow(fromRight) {\n return flatRest(function(funcs) {\n var length = funcs.length,\n index = length,\n prereq = LodashWrapper.prototype.thru;\n\n if (fromRight) {\n funcs.reverse();\n }\n while (index--) {\n var func = funcs[index];\n if (typeof func != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n if (prereq && !wrapper && getFuncName(func) == 'wrapper') {\n var wrapper = new LodashWrapper([], true);\n }\n }\n index = wrapper ? index : length;\n while (++index < length) {\n func = funcs[index];\n\n var funcName = getFuncName(func),\n data = funcName == 'wrapper' ? getData(func) : undefined;\n\n if (data && isLaziable(data[0]) &&\n data[1] == (WRAP_ARY_FLAG | WRAP_CURRY_FLAG | WRAP_PARTIAL_FLAG | WRAP_REARG_FLAG) &&\n !data[4].length && data[9] == 1\n ) {\n wrapper = wrapper[getFuncName(data[0])].apply(wrapper, data[3]);\n } else {\n wrapper = (func.length == 1 && isLaziable(func))\n ? wrapper[funcName]()\n : wrapper.thru(func);\n }\n }\n return function() {\n var args = arguments,\n value = args[0];\n\n if (wrapper && args.length == 1 && isArray(value)) {\n return wrapper.plant(value).value();\n }\n var index = 0,\n result = length ? funcs[index].apply(this, args) : value;\n\n while (++index < length) {\n result = funcs[index].call(this, result);\n }\n return result;\n };\n });\n }\n\n /**\n * Creates a function that wraps `func` to invoke it with optional `this`\n * binding of `thisArg`, partial application, and currying.\n *\n * @private\n * @param {Function|string} func The function or method name to wrap.\n * @param {number} bitmask The bitmask flags. See `createWrap` for more details.\n * @param {*} [thisArg] The `this` binding of `func`.\n * @param {Array} [partials] The arguments to prepend to those provided to\n * the new function.\n * @param {Array} [holders] The `partials` placeholder indexes.\n * @param {Array} [partialsRight] The arguments to append to those provided\n * to the new function.\n * @param {Array} [holdersRight] The `partialsRight` placeholder indexes.\n * @param {Array} [argPos] The argument positions of the new function.\n * @param {number} [ary] The arity cap of `func`.\n * @param {number} [arity] The arity of `func`.\n * @returns {Function} Returns the new wrapped function.\n */\n function createHybrid(func, bitmask, thisArg, partials, holders, partialsRight, holdersRight, argPos, ary, arity) {\n var isAry = bitmask & WRAP_ARY_FLAG,\n isBind = bitmask & WRAP_BIND_FLAG,\n isBindKey = bitmask & WRAP_BIND_KEY_FLAG,\n isCurried = bitmask & (WRAP_CURRY_FLAG | WRAP_CURRY_RIGHT_FLAG),\n isFlip = bitmask & WRAP_FLIP_FLAG,\n Ctor = isBindKey ? undefined : createCtor(func);\n\n function wrapper() {\n var length = arguments.length,\n args = Array(length),\n index = length;\n\n while (index--) {\n args[index] = arguments[index];\n }\n if (isCurried) {\n var placeholder = getHolder(wrapper),\n holdersCount = countHolders(args, placeholder);\n }\n if (partials) {\n args = composeArgs(args, partials, holders, isCurried);\n }\n if (partialsRight) {\n args = composeArgsRight(args, partialsRight, holdersRight, isCurried);\n }\n length -= holdersCount;\n if (isCurried && length < arity) {\n var newHolders = replaceHolders(args, placeholder);\n return createRecurry(\n func, bitmask, createHybrid, wrapper.placeholder, thisArg,\n args, newHolders, argPos, ary, arity - length\n );\n }\n var thisBinding = isBind ? thisArg : this,\n fn = isBindKey ? thisBinding[func] : func;\n\n length = args.length;\n if (argPos) {\n args = reorder(args, argPos);\n } else if (isFlip && length > 1) {\n args.reverse();\n }\n if (isAry && ary < length) {\n args.length = ary;\n }\n if (this && this !== root && this instanceof wrapper) {\n fn = Ctor || createCtor(fn);\n }\n return fn.apply(thisBinding, args);\n }\n return wrapper;\n }\n\n /**\n * Creates a function like `_.invertBy`.\n *\n * @private\n * @param {Function} setter The function to set accumulator values.\n * @param {Function} toIteratee The function to resolve iteratees.\n * @returns {Function} Returns the new inverter function.\n */\n function createInverter(setter, toIteratee) {\n return function(object, iteratee) {\n return baseInverter(object, setter, toIteratee(iteratee), {});\n };\n }\n\n /**\n * Creates a function that performs a mathematical operation on two values.\n *\n * @private\n * @param {Function} operator The function to perform the operation.\n * @param {number} [defaultValue] The value used for `undefined` arguments.\n * @returns {Function} Returns the new mathematical operation function.\n */\n function createMathOperation(operator, defaultValue) {\n return function(value, other) {\n var result;\n if (value === undefined && other === undefined) {\n return defaultValue;\n }\n if (value !== undefined) {\n result = value;\n }\n if (other !== undefined) {\n if (result === undefined) {\n return other;\n }\n if (typeof value == 'string' || typeof other == 'string') {\n value = baseToString(value);\n other = baseToString(other);\n } else {\n value = baseToNumber(value);\n other = baseToNumber(other);\n }\n result = operator(value, other);\n }\n return result;\n };\n }\n\n /**\n * Creates a function like `_.over`.\n *\n * @private\n * @param {Function} arrayFunc The function to iterate over iteratees.\n * @returns {Function} Returns the new over function.\n */\n function createOver(arrayFunc) {\n return flatRest(function(iteratees) {\n iteratees = arrayMap(iteratees, baseUnary(getIteratee()));\n return baseRest(function(args) {\n var thisArg = this;\n return arrayFunc(iteratees, function(iteratee) {\n return apply(iteratee, thisArg, args);\n });\n });\n });\n }\n\n /**\n * Creates the padding for `string` based on `length`. The `chars` string\n * is truncated if the number of characters exceeds `length`.\n *\n * @private\n * @param {number} length The padding length.\n * @param {string} [chars=' '] The string used as padding.\n * @returns {string} Returns the padding for `string`.\n */\n function createPadding(length, chars) {\n chars = chars === undefined ? ' ' : baseToString(chars);\n\n var charsLength = chars.length;\n if (charsLength < 2) {\n return charsLength ? baseRepeat(chars, length) : chars;\n }\n var result = baseRepeat(chars, nativeCeil(length / stringSize(chars)));\n return hasUnicode(chars)\n ? castSlice(stringToArray(result), 0, length).join('')\n : result.slice(0, length);\n }\n\n /**\n * Creates a function that wraps `func` to invoke it with the `this` binding\n * of `thisArg` and `partials` prepended to the arguments it receives.\n *\n * @private\n * @param {Function} func The function to wrap.\n * @param {number} bitmask The bitmask flags. See `createWrap` for more details.\n * @param {*} thisArg The `this` binding of `func`.\n * @param {Array} partials The arguments to prepend to those provided to\n * the new function.\n * @returns {Function} Returns the new wrapped function.\n */\n function createPartial(func, bitmask, thisArg, partials) {\n var isBind = bitmask & WRAP_BIND_FLAG,\n Ctor = createCtor(func);\n\n function wrapper() {\n var argsIndex = -1,\n argsLength = arguments.length,\n leftIndex = -1,\n leftLength = partials.length,\n args = Array(leftLength + argsLength),\n fn = (this && this !== root && this instanceof wrapper) ? Ctor : func;\n\n while (++leftIndex < leftLength) {\n args[leftIndex] = partials[leftIndex];\n }\n while (argsLength--) {\n args[leftIndex++] = arguments[++argsIndex];\n }\n return apply(fn, isBind ? thisArg : this, args);\n }\n return wrapper;\n }\n\n /**\n * Creates a `_.range` or `_.rangeRight` function.\n *\n * @private\n * @param {boolean} [fromRight] Specify iterating from right to left.\n * @returns {Function} Returns the new range function.\n */\n function createRange(fromRight) {\n return function(start, end, step) {\n if (step && typeof step != 'number' && isIterateeCall(start, end, step)) {\n end = step = undefined;\n }\n // Ensure the sign of `-0` is preserved.\n start = toFinite(start);\n if (end === undefined) {\n end = start;\n start = 0;\n } else {\n end = toFinite(end);\n }\n step = step === undefined ? (start < end ? 1 : -1) : toFinite(step);\n return baseRange(start, end, step, fromRight);\n };\n }\n\n /**\n * Creates a function that performs a relational operation on two values.\n *\n * @private\n * @param {Function} operator The function to perform the operation.\n * @returns {Function} Returns the new relational operation function.\n */\n function createRelationalOperation(operator) {\n return function(value, other) {\n if (!(typeof value == 'string' && typeof other == 'string')) {\n value = toNumber(value);\n other = toNumber(other);\n }\n return operator(value, other);\n };\n }\n\n /**\n * Creates a function that wraps `func` to continue currying.\n *\n * @private\n * @param {Function} func The function to wrap.\n * @param {number} bitmask The bitmask flags. See `createWrap` for more details.\n * @param {Function} wrapFunc The function to create the `func` wrapper.\n * @param {*} placeholder The placeholder value.\n * @param {*} [thisArg] The `this` binding of `func`.\n * @param {Array} [partials] The arguments to prepend to those provided to\n * the new function.\n * @param {Array} [holders] The `partials` placeholder indexes.\n * @param {Array} [argPos] The argument positions of the new function.\n * @param {number} [ary] The arity cap of `func`.\n * @param {number} [arity] The arity of `func`.\n * @returns {Function} Returns the new wrapped function.\n */\n function createRecurry(func, bitmask, wrapFunc, placeholder, thisArg, partials, holders, argPos, ary, arity) {\n var isCurry = bitmask & WRAP_CURRY_FLAG,\n newHolders = isCurry ? holders : undefined,\n newHoldersRight = isCurry ? undefined : holders,\n newPartials = isCurry ? partials : undefined,\n newPartialsRight = isCurry ? undefined : partials;\n\n bitmask |= (isCurry ? WRAP_PARTIAL_FLAG : WRAP_PARTIAL_RIGHT_FLAG);\n bitmask &= ~(isCurry ? WRAP_PARTIAL_RIGHT_FLAG : WRAP_PARTIAL_FLAG);\n\n if (!(bitmask & WRAP_CURRY_BOUND_FLAG)) {\n bitmask &= ~(WRAP_BIND_FLAG | WRAP_BIND_KEY_FLAG);\n }\n var newData = [\n func, bitmask, thisArg, newPartials, newHolders, newPartialsRight,\n newHoldersRight, argPos, ary, arity\n ];\n\n var result = wrapFunc.apply(undefined, newData);\n if (isLaziable(func)) {\n setData(result, newData);\n }\n result.placeholder = placeholder;\n return setWrapToString(result, func, bitmask);\n }\n\n /**\n * Creates a function like `_.round`.\n *\n * @private\n * @param {string} methodName The name of the `Math` method to use when rounding.\n * @returns {Function} Returns the new round function.\n */\n function createRound(methodName) {\n var func = Math[methodName];\n return function(number, precision) {\n number = toNumber(number);\n precision = precision == null ? 0 : nativeMin(toInteger(precision), 292);\n if (precision && nativeIsFinite(number)) {\n // Shift with exponential notation to avoid floating-point issues.\n // See [MDN](https://mdn.io/round#Examples) for more details.\n var pair = (toString(number) + 'e').split('e'),\n value = func(pair[0] + 'e' + (+pair[1] + precision));\n\n pair = (toString(value) + 'e').split('e');\n return +(pair[0] + 'e' + (+pair[1] - precision));\n }\n return func(number);\n };\n }\n\n /**\n * Creates a set object of `values`.\n *\n * @private\n * @param {Array} values The values to add to the set.\n * @returns {Object} Returns the new set.\n */\n var createSet = !(Set && (1 / setToArray(new Set([,-0]))[1]) == INFINITY) ? noop : function(values) {\n return new Set(values);\n };\n\n /**\n * Creates a `_.toPairs` or `_.toPairsIn` function.\n *\n * @private\n * @param {Function} keysFunc The function to get the keys of a given object.\n * @returns {Function} Returns the new pairs function.\n */\n function createToPairs(keysFunc) {\n return function(object) {\n var tag = getTag(object);\n if (tag == mapTag) {\n return mapToArray(object);\n }\n if (tag == setTag) {\n return setToPairs(object);\n }\n return baseToPairs(object, keysFunc(object));\n };\n }\n\n /**\n * Creates a function that either curries or invokes `func` with optional\n * `this` binding and partially applied arguments.\n *\n * @private\n * @param {Function|string} func The function or method name to wrap.\n * @param {number} bitmask The bitmask flags.\n * 1 - `_.bind`\n * 2 - `_.bindKey`\n * 4 - `_.curry` or `_.curryRight` of a bound function\n * 8 - `_.curry`\n * 16 - `_.curryRight`\n * 32 - `_.partial`\n * 64 - `_.partialRight`\n * 128 - `_.rearg`\n * 256 - `_.ary`\n * 512 - `_.flip`\n * @param {*} [thisArg] The `this` binding of `func`.\n * @param {Array} [partials] The arguments to be partially applied.\n * @param {Array} [holders] The `partials` placeholder indexes.\n * @param {Array} [argPos] The argument positions of the new function.\n * @param {number} [ary] The arity cap of `func`.\n * @param {number} [arity] The arity of `func`.\n * @returns {Function} Returns the new wrapped function.\n */\n function createWrap(func, bitmask, thisArg, partials, holders, argPos, ary, arity) {\n var isBindKey = bitmask & WRAP_BIND_KEY_FLAG;\n if (!isBindKey && typeof func != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n var length = partials ? partials.length : 0;\n if (!length) {\n bitmask &= ~(WRAP_PARTIAL_FLAG | WRAP_PARTIAL_RIGHT_FLAG);\n partials = holders = undefined;\n }\n ary = ary === undefined ? ary : nativeMax(toInteger(ary), 0);\n arity = arity === undefined ? arity : toInteger(arity);\n length -= holders ? holders.length : 0;\n\n if (bitmask & WRAP_PARTIAL_RIGHT_FLAG) {\n var partialsRight = partials,\n holdersRight = holders;\n\n partials = holders = undefined;\n }\n var data = isBindKey ? undefined : getData(func);\n\n var newData = [\n func, bitmask, thisArg, partials, holders, partialsRight, holdersRight,\n argPos, ary, arity\n ];\n\n if (data) {\n mergeData(newData, data);\n }\n func = newData[0];\n bitmask = newData[1];\n thisArg = newData[2];\n partials = newData[3];\n holders = newData[4];\n arity = newData[9] = newData[9] === undefined\n ? (isBindKey ? 0 : func.length)\n : nativeMax(newData[9] - length, 0);\n\n if (!arity && bitmask & (WRAP_CURRY_FLAG | WRAP_CURRY_RIGHT_FLAG)) {\n bitmask &= ~(WRAP_CURRY_FLAG | WRAP_CURRY_RIGHT_FLAG);\n }\n if (!bitmask || bitmask == WRAP_BIND_FLAG) {\n var result = createBind(func, bitmask, thisArg);\n } else if (bitmask == WRAP_CURRY_FLAG || bitmask == WRAP_CURRY_RIGHT_FLAG) {\n result = createCurry(func, bitmask, arity);\n } else if ((bitmask == WRAP_PARTIAL_FLAG || bitmask == (WRAP_BIND_FLAG | WRAP_PARTIAL_FLAG)) && !holders.length) {\n result = createPartial(func, bitmask, thisArg, partials);\n } else {\n result = createHybrid.apply(undefined, newData);\n }\n var setter = data ? baseSetData : setData;\n return setWrapToString(setter(result, newData), func, bitmask);\n }\n\n /**\n * Used by `_.defaults` to customize its `_.assignIn` use to assign properties\n * of source objects to the destination object for all destination properties\n * that resolve to `undefined`.\n *\n * @private\n * @param {*} objValue The destination value.\n * @param {*} srcValue The source value.\n * @param {string} key The key of the property to assign.\n * @param {Object} object The parent object of `objValue`.\n * @returns {*} Returns the value to assign.\n */\n function customDefaultsAssignIn(objValue, srcValue, key, object) {\n if (objValue === undefined ||\n (eq(objValue, objectProto[key]) && !hasOwnProperty.call(object, key))) {\n return srcValue;\n }\n return objValue;\n }\n\n /**\n * Used by `_.defaultsDeep` to customize its `_.merge` use to merge source\n * objects into destination objects that are passed thru.\n *\n * @private\n * @param {*} objValue The destination value.\n * @param {*} srcValue The source value.\n * @param {string} key The key of the property to merge.\n * @param {Object} object The parent object of `objValue`.\n * @param {Object} source The parent object of `srcValue`.\n * @param {Object} [stack] Tracks traversed source values and their merged\n * counterparts.\n * @returns {*} Returns the value to assign.\n */\n function customDefaultsMerge(objValue, srcValue, key, object, source, stack) {\n if (isObject(objValue) && isObject(srcValue)) {\n // Recursively merge objects and arrays (susceptible to call stack limits).\n stack.set(srcValue, objValue);\n baseMerge(objValue, srcValue, undefined, customDefaultsMerge, stack);\n stack['delete'](srcValue);\n }\n return objValue;\n }\n\n /**\n * Used by `_.omit` to customize its `_.cloneDeep` use to only clone plain\n * objects.\n *\n * @private\n * @param {*} value The value to inspect.\n * @param {string} key The key of the property to inspect.\n * @returns {*} Returns the uncloned value or `undefined` to defer cloning to `_.cloneDeep`.\n */\n function customOmitClone(value) {\n return isPlainObject(value) ? undefined : value;\n }\n\n /**\n * A specialized version of `baseIsEqualDeep` for arrays with support for\n * partial deep comparisons.\n *\n * @private\n * @param {Array} array The array to compare.\n * @param {Array} other The other array to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} stack Tracks traversed `array` and `other` objects.\n * @returns {boolean} Returns `true` if the arrays are equivalent, else `false`.\n */\n function equalArrays(array, other, bitmask, customizer, equalFunc, stack) {\n var isPartial = bitmask & COMPARE_PARTIAL_FLAG,\n arrLength = array.length,\n othLength = other.length;\n\n if (arrLength != othLength && !(isPartial && othLength > arrLength)) {\n return false;\n }\n // Check that cyclic values are equal.\n var arrStacked = stack.get(array);\n var othStacked = stack.get(other);\n if (arrStacked && othStacked) {\n return arrStacked == other && othStacked == array;\n }\n var index = -1,\n result = true,\n seen = (bitmask & COMPARE_UNORDERED_FLAG) ? new SetCache : undefined;\n\n stack.set(array, other);\n stack.set(other, array);\n\n // Ignore non-index properties.\n while (++index < arrLength) {\n var arrValue = array[index],\n othValue = other[index];\n\n if (customizer) {\n var compared = isPartial\n ? customizer(othValue, arrValue, index, other, array, stack)\n : customizer(arrValue, othValue, index, array, other, stack);\n }\n if (compared !== undefined) {\n if (compared) {\n continue;\n }\n result = false;\n break;\n }\n // Recursively compare arrays (susceptible to call stack limits).\n if (seen) {\n if (!arraySome(other, function(othValue, othIndex) {\n if (!cacheHas(seen, othIndex) &&\n (arrValue === othValue || equalFunc(arrValue, othValue, bitmask, customizer, stack))) {\n return seen.push(othIndex);\n }\n })) {\n result = false;\n break;\n }\n } else if (!(\n arrValue === othValue ||\n equalFunc(arrValue, othValue, bitmask, customizer, stack)\n )) {\n result = false;\n break;\n }\n }\n stack['delete'](array);\n stack['delete'](other);\n return result;\n }\n\n /**\n * A specialized version of `baseIsEqualDeep` for comparing objects of\n * the same `toStringTag`.\n *\n * **Note:** This function only supports comparing values with tags of\n * `Boolean`, `Date`, `Error`, `Number`, `RegExp`, or `String`.\n *\n * @private\n * @param {Object} object The object to compare.\n * @param {Object} other The other object to compare.\n * @param {string} tag The `toStringTag` of the objects to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} stack Tracks traversed `object` and `other` objects.\n * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.\n */\n function equalByTag(object, other, tag, bitmask, customizer, equalFunc, stack) {\n switch (tag) {\n case dataViewTag:\n if ((object.byteLength != other.byteLength) ||\n (object.byteOffset != other.byteOffset)) {\n return false;\n }\n object = object.buffer;\n other = other.buffer;\n\n case arrayBufferTag:\n if ((object.byteLength != other.byteLength) ||\n !equalFunc(new Uint8Array(object), new Uint8Array(other))) {\n return false;\n }\n return true;\n\n case boolTag:\n case dateTag:\n case numberTag:\n // Coerce booleans to `1` or `0` and dates to milliseconds.\n // Invalid dates are coerced to `NaN`.\n return eq(+object, +other);\n\n case errorTag:\n return object.name == other.name && object.message == other.message;\n\n case regexpTag:\n case stringTag:\n // Coerce regexes to strings and treat strings, primitives and objects,\n // as equal. See http://www.ecma-international.org/ecma-262/7.0/#sec-regexp.prototype.tostring\n // for more details.\n return object == (other + '');\n\n case mapTag:\n var convert = mapToArray;\n\n case setTag:\n var isPartial = bitmask & COMPARE_PARTIAL_FLAG;\n convert || (convert = setToArray);\n\n if (object.size != other.size && !isPartial) {\n return false;\n }\n // Assume cyclic values are equal.\n var stacked = stack.get(object);\n if (stacked) {\n return stacked == other;\n }\n bitmask |= COMPARE_UNORDERED_FLAG;\n\n // Recursively compare objects (susceptible to call stack limits).\n stack.set(object, other);\n var result = equalArrays(convert(object), convert(other), bitmask, customizer, equalFunc, stack);\n stack['delete'](object);\n return result;\n\n case symbolTag:\n if (symbolValueOf) {\n return symbolValueOf.call(object) == symbolValueOf.call(other);\n }\n }\n return false;\n }\n\n /**\n * A specialized version of `baseIsEqualDeep` for objects with support for\n * partial deep comparisons.\n *\n * @private\n * @param {Object} object The object to compare.\n * @param {Object} other The other object to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} stack Tracks traversed `object` and `other` objects.\n * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.\n */\n function equalObjects(object, other, bitmask, customizer, equalFunc, stack) {\n var isPartial = bitmask & COMPARE_PARTIAL_FLAG,\n objProps = getAllKeys(object),\n objLength = objProps.length,\n othProps = getAllKeys(other),\n othLength = othProps.length;\n\n if (objLength != othLength && !isPartial) {\n return false;\n }\n var index = objLength;\n while (index--) {\n var key = objProps[index];\n if (!(isPartial ? key in other : hasOwnProperty.call(other, key))) {\n return false;\n }\n }\n // Check that cyclic values are equal.\n var objStacked = stack.get(object);\n var othStacked = stack.get(other);\n if (objStacked && othStacked) {\n return objStacked == other && othStacked == object;\n }\n var result = true;\n stack.set(object, other);\n stack.set(other, object);\n\n var skipCtor = isPartial;\n while (++index < objLength) {\n key = objProps[index];\n var objValue = object[key],\n othValue = other[key];\n\n if (customizer) {\n var compared = isPartial\n ? customizer(othValue, objValue, key, other, object, stack)\n : customizer(objValue, othValue, key, object, other, stack);\n }\n // Recursively compare objects (susceptible to call stack limits).\n if (!(compared === undefined\n ? (objValue === othValue || equalFunc(objValue, othValue, bitmask, customizer, stack))\n : compared\n )) {\n result = false;\n break;\n }\n skipCtor || (skipCtor = key == 'constructor');\n }\n if (result && !skipCtor) {\n var objCtor = object.constructor,\n othCtor = other.constructor;\n\n // Non `Object` object instances with different constructors are not equal.\n if (objCtor != othCtor &&\n ('constructor' in object && 'constructor' in other) &&\n !(typeof objCtor == 'function' && objCtor instanceof objCtor &&\n typeof othCtor == 'function' && othCtor instanceof othCtor)) {\n result = false;\n }\n }\n stack['delete'](object);\n stack['delete'](other);\n return result;\n }\n\n /**\n * A specialized version of `baseRest` which flattens the rest array.\n *\n * @private\n * @param {Function} func The function to apply a rest parameter to.\n * @returns {Function} Returns the new function.\n */\n function flatRest(func) {\n return setToString(overRest(func, undefined, flatten), func + '');\n }\n\n /**\n * Creates an array of own enumerable property names and symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names and symbols.\n */\n function getAllKeys(object) {\n return baseGetAllKeys(object, keys, getSymbols);\n }\n\n /**\n * Creates an array of own and inherited enumerable property names and\n * symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names and symbols.\n */\n function getAllKeysIn(object) {\n return baseGetAllKeys(object, keysIn, getSymbolsIn);\n }\n\n /**\n * Gets metadata for `func`.\n *\n * @private\n * @param {Function} func The function to query.\n * @returns {*} Returns the metadata for `func`.\n */\n var getData = !metaMap ? noop : function(func) {\n return metaMap.get(func);\n };\n\n /**\n * Gets the name of `func`.\n *\n * @private\n * @param {Function} func The function to query.\n * @returns {string} Returns the function name.\n */\n function getFuncName(func) {\n var result = (func.name + ''),\n array = realNames[result],\n length = hasOwnProperty.call(realNames, result) ? array.length : 0;\n\n while (length--) {\n var data = array[length],\n otherFunc = data.func;\n if (otherFunc == null || otherFunc == func) {\n return data.name;\n }\n }\n return result;\n }\n\n /**\n * Gets the argument placeholder value for `func`.\n *\n * @private\n * @param {Function} func The function to inspect.\n * @returns {*} Returns the placeholder value.\n */\n function getHolder(func) {\n var object = hasOwnProperty.call(lodash, 'placeholder') ? lodash : func;\n return object.placeholder;\n }\n\n /**\n * Gets the appropriate \"iteratee\" function. If `_.iteratee` is customized,\n * this function returns the custom method, otherwise it returns `baseIteratee`.\n * If arguments are provided, the chosen function is invoked with them and\n * its result is returned.\n *\n * @private\n * @param {*} [value] The value to convert to an iteratee.\n * @param {number} [arity] The arity of the created iteratee.\n * @returns {Function} Returns the chosen function or its result.\n */\n function getIteratee() {\n var result = lodash.iteratee || iteratee;\n result = result === iteratee ? baseIteratee : result;\n return arguments.length ? result(arguments[0], arguments[1]) : result;\n }\n\n /**\n * Gets the data for `map`.\n *\n * @private\n * @param {Object} map The map to query.\n * @param {string} key The reference key.\n * @returns {*} Returns the map data.\n */\n function getMapData(map, key) {\n var data = map.__data__;\n return isKeyable(key)\n ? data[typeof key == 'string' ? 'string' : 'hash']\n : data.map;\n }\n\n /**\n * Gets the property names, values, and compare flags of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the match data of `object`.\n */\n function getMatchData(object) {\n var result = keys(object),\n length = result.length;\n\n while (length--) {\n var key = result[length],\n value = object[key];\n\n result[length] = [key, value, isStrictComparable(value)];\n }\n return result;\n }\n\n /**\n * Gets the native function at `key` of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {string} key The key of the method to get.\n * @returns {*} Returns the function if it's native, else `undefined`.\n */\n function getNative(object, key) {\n var value = getValue(object, key);\n return baseIsNative(value) ? value : undefined;\n }\n\n /**\n * A specialized version of `baseGetTag` which ignores `Symbol.toStringTag` values.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the raw `toStringTag`.\n */\n function getRawTag(value) {\n var isOwn = hasOwnProperty.call(value, symToStringTag),\n tag = value[symToStringTag];\n\n try {\n value[symToStringTag] = undefined;\n var unmasked = true;\n } catch (e) {}\n\n var result = nativeObjectToString.call(value);\n if (unmasked) {\n if (isOwn) {\n value[symToStringTag] = tag;\n } else {\n delete value[symToStringTag];\n }\n }\n return result;\n }\n\n /**\n * Creates an array of the own enumerable symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of symbols.\n */\n var getSymbols = !nativeGetSymbols ? stubArray : function(object) {\n if (object == null) {\n return [];\n }\n object = Object(object);\n return arrayFilter(nativeGetSymbols(object), function(symbol) {\n return propertyIsEnumerable.call(object, symbol);\n });\n };\n\n /**\n * Creates an array of the own and inherited enumerable symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of symbols.\n */\n var getSymbolsIn = !nativeGetSymbols ? stubArray : function(object) {\n var result = [];\n while (object) {\n arrayPush(result, getSymbols(object));\n object = getPrototype(object);\n }\n return result;\n };\n\n /**\n * Gets the `toStringTag` of `value`.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the `toStringTag`.\n */\n var getTag = baseGetTag;\n\n // Fallback for data views, maps, sets, and weak maps in IE 11 and promises in Node.js < 6.\n if ((DataView && getTag(new DataView(new ArrayBuffer(1))) != dataViewTag) ||\n (Map && getTag(new Map) != mapTag) ||\n (Promise && getTag(Promise.resolve()) != promiseTag) ||\n (Set && getTag(new Set) != setTag) ||\n (WeakMap && getTag(new WeakMap) != weakMapTag)) {\n getTag = function(value) {\n var result = baseGetTag(value),\n Ctor = result == objectTag ? value.constructor : undefined,\n ctorString = Ctor ? toSource(Ctor) : '';\n\n if (ctorString) {\n switch (ctorString) {\n case dataViewCtorString: return dataViewTag;\n case mapCtorString: return mapTag;\n case promiseCtorString: return promiseTag;\n case setCtorString: return setTag;\n case weakMapCtorString: return weakMapTag;\n }\n }\n return result;\n };\n }\n\n /**\n * Gets the view, applying any `transforms` to the `start` and `end` positions.\n *\n * @private\n * @param {number} start The start of the view.\n * @param {number} end The end of the view.\n * @param {Array} transforms The transformations to apply to the view.\n * @returns {Object} Returns an object containing the `start` and `end`\n * positions of the view.\n */\n function getView(start, end, transforms) {\n var index = -1,\n length = transforms.length;\n\n while (++index < length) {\n var data = transforms[index],\n size = data.size;\n\n switch (data.type) {\n case 'drop': start += size; break;\n case 'dropRight': end -= size; break;\n case 'take': end = nativeMin(end, start + size); break;\n case 'takeRight': start = nativeMax(start, end - size); break;\n }\n }\n return { 'start': start, 'end': end };\n }\n\n /**\n * Extracts wrapper details from the `source` body comment.\n *\n * @private\n * @param {string} source The source to inspect.\n * @returns {Array} Returns the wrapper details.\n */\n function getWrapDetails(source) {\n var match = source.match(reWrapDetails);\n return match ? match[1].split(reSplitDetails) : [];\n }\n\n /**\n * Checks if `path` exists on `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Array|string} path The path to check.\n * @param {Function} hasFunc The function to check properties.\n * @returns {boolean} Returns `true` if `path` exists, else `false`.\n */\n function hasPath(object, path, hasFunc) {\n path = castPath(path, object);\n\n var index = -1,\n length = path.length,\n result = false;\n\n while (++index < length) {\n var key = toKey(path[index]);\n if (!(result = object != null && hasFunc(object, key))) {\n break;\n }\n object = object[key];\n }\n if (result || ++index != length) {\n return result;\n }\n length = object == null ? 0 : object.length;\n return !!length && isLength(length) && isIndex(key, length) &&\n (isArray(object) || isArguments(object));\n }\n\n /**\n * Initializes an array clone.\n *\n * @private\n * @param {Array} array The array to clone.\n * @returns {Array} Returns the initialized clone.\n */\n function initCloneArray(array) {\n var length = array.length,\n result = new array.constructor(length);\n\n // Add properties assigned by `RegExp#exec`.\n if (length && typeof array[0] == 'string' && hasOwnProperty.call(array, 'index')) {\n result.index = array.index;\n result.input = array.input;\n }\n return result;\n }\n\n /**\n * Initializes an object clone.\n *\n * @private\n * @param {Object} object The object to clone.\n * @returns {Object} Returns the initialized clone.\n */\n function initCloneObject(object) {\n return (typeof object.constructor == 'function' && !isPrototype(object))\n ? baseCreate(getPrototype(object))\n : {};\n }\n\n /**\n * Initializes an object clone based on its `toStringTag`.\n *\n * **Note:** This function only supports cloning values with tags of\n * `Boolean`, `Date`, `Error`, `Map`, `Number`, `RegExp`, `Set`, or `String`.\n *\n * @private\n * @param {Object} object The object to clone.\n * @param {string} tag The `toStringTag` of the object to clone.\n * @param {boolean} [isDeep] Specify a deep clone.\n * @returns {Object} Returns the initialized clone.\n */\n function initCloneByTag(object, tag, isDeep) {\n var Ctor = object.constructor;\n switch (tag) {\n case arrayBufferTag:\n return cloneArrayBuffer(object);\n\n case boolTag:\n case dateTag:\n return new Ctor(+object);\n\n case dataViewTag:\n return cloneDataView(object, isDeep);\n\n case float32Tag: case float64Tag:\n case int8Tag: case int16Tag: case int32Tag:\n case uint8Tag: case uint8ClampedTag: case uint16Tag: case uint32Tag:\n return cloneTypedArray(object, isDeep);\n\n case mapTag:\n return new Ctor;\n\n case numberTag:\n case stringTag:\n return new Ctor(object);\n\n case regexpTag:\n return cloneRegExp(object);\n\n case setTag:\n return new Ctor;\n\n case symbolTag:\n return cloneSymbol(object);\n }\n }\n\n /**\n * Inserts wrapper `details` in a comment at the top of the `source` body.\n *\n * @private\n * @param {string} source The source to modify.\n * @returns {Array} details The details to insert.\n * @returns {string} Returns the modified source.\n */\n function insertWrapDetails(source, details) {\n var length = details.length;\n if (!length) {\n return source;\n }\n var lastIndex = length - 1;\n details[lastIndex] = (length > 1 ? '& ' : '') + details[lastIndex];\n details = details.join(length > 2 ? ', ' : ' ');\n return source.replace(reWrapComment, '{\\n/* [wrapped with ' + details + '] */\\n');\n }\n\n /**\n * Checks if `value` is a flattenable `arguments` object or array.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is flattenable, else `false`.\n */\n function isFlattenable(value) {\n return isArray(value) || isArguments(value) ||\n !!(spreadableSymbol && value && value[spreadableSymbol]);\n }\n\n /**\n * Checks if `value` is a valid array-like index.\n *\n * @private\n * @param {*} value The value to check.\n * @param {number} [length=MAX_SAFE_INTEGER] The upper bounds of a valid index.\n * @returns {boolean} Returns `true` if `value` is a valid index, else `false`.\n */\n function isIndex(value, length) {\n var type = typeof value;\n length = length == null ? MAX_SAFE_INTEGER : length;\n\n return !!length &&\n (type == 'number' ||\n (type != 'symbol' && reIsUint.test(value))) &&\n (value > -1 && value % 1 == 0 && value < length);\n }\n\n /**\n * Checks if the given arguments are from an iteratee call.\n *\n * @private\n * @param {*} value The potential iteratee value argument.\n * @param {*} index The potential iteratee index or key argument.\n * @param {*} object The potential iteratee object argument.\n * @returns {boolean} Returns `true` if the arguments are from an iteratee call,\n * else `false`.\n */\n function isIterateeCall(value, index, object) {\n if (!isObject(object)) {\n return false;\n }\n var type = typeof index;\n if (type == 'number'\n ? (isArrayLike(object) && isIndex(index, object.length))\n : (type == 'string' && index in object)\n ) {\n return eq(object[index], value);\n }\n return false;\n }\n\n /**\n * Checks if `value` is a property name and not a property path.\n *\n * @private\n * @param {*} value The value to check.\n * @param {Object} [object] The object to query keys on.\n * @returns {boolean} Returns `true` if `value` is a property name, else `false`.\n */\n function isKey(value, object) {\n if (isArray(value)) {\n return false;\n }\n var type = typeof value;\n if (type == 'number' || type == 'symbol' || type == 'boolean' ||\n value == null || isSymbol(value)) {\n return true;\n }\n return reIsPlainProp.test(value) || !reIsDeepProp.test(value) ||\n (object != null && value in Object(object));\n }\n\n /**\n * Checks if `value` is suitable for use as unique object key.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is suitable, else `false`.\n */\n function isKeyable(value) {\n var type = typeof value;\n return (type == 'string' || type == 'number' || type == 'symbol' || type == 'boolean')\n ? (value !== '__proto__')\n : (value === null);\n }\n\n /**\n * Checks if `func` has a lazy counterpart.\n *\n * @private\n * @param {Function} func The function to check.\n * @returns {boolean} Returns `true` if `func` has a lazy counterpart,\n * else `false`.\n */\n function isLaziable(func) {\n var funcName = getFuncName(func),\n other = lodash[funcName];\n\n if (typeof other != 'function' || !(funcName in LazyWrapper.prototype)) {\n return false;\n }\n if (func === other) {\n return true;\n }\n var data = getData(other);\n return !!data && func === data[0];\n }\n\n /**\n * Checks if `func` has its source masked.\n *\n * @private\n * @param {Function} func The function to check.\n * @returns {boolean} Returns `true` if `func` is masked, else `false`.\n */\n function isMasked(func) {\n return !!maskSrcKey && (maskSrcKey in func);\n }\n\n /**\n * Checks if `func` is capable of being masked.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `func` is maskable, else `false`.\n */\n var isMaskable = coreJsData ? isFunction : stubFalse;\n\n /**\n * Checks if `value` is likely a prototype object.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a prototype, else `false`.\n */\n function isPrototype(value) {\n var Ctor = value && value.constructor,\n proto = (typeof Ctor == 'function' && Ctor.prototype) || objectProto;\n\n return value === proto;\n }\n\n /**\n * Checks if `value` is suitable for strict equality comparisons, i.e. `===`.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` if suitable for strict\n * equality comparisons, else `false`.\n */\n function isStrictComparable(value) {\n return value === value && !isObject(value);\n }\n\n /**\n * A specialized version of `matchesProperty` for source values suitable\n * for strict equality comparisons, i.e. `===`.\n *\n * @private\n * @param {string} key The key of the property to get.\n * @param {*} srcValue The value to match.\n * @returns {Function} Returns the new spec function.\n */\n function matchesStrictComparable(key, srcValue) {\n return function(object) {\n if (object == null) {\n return false;\n }\n return object[key] === srcValue &&\n (srcValue !== undefined || (key in Object(object)));\n };\n }\n\n /**\n * A specialized version of `_.memoize` which clears the memoized function's\n * cache when it exceeds `MAX_MEMOIZE_SIZE`.\n *\n * @private\n * @param {Function} func The function to have its output memoized.\n * @returns {Function} Returns the new memoized function.\n */\n function memoizeCapped(func) {\n var result = memoize(func, function(key) {\n if (cache.size === MAX_MEMOIZE_SIZE) {\n cache.clear();\n }\n return key;\n });\n\n var cache = result.cache;\n return result;\n }\n\n /**\n * Merges the function metadata of `source` into `data`.\n *\n * Merging metadata reduces the number of wrappers used to invoke a function.\n * This is possible because methods like `_.bind`, `_.curry`, and `_.partial`\n * may be applied regardless of execution order. Methods like `_.ary` and\n * `_.rearg` modify function arguments, making the order in which they are\n * executed important, preventing the merging of metadata. However, we make\n * an exception for a safe combined case where curried functions have `_.ary`\n * and or `_.rearg` applied.\n *\n * @private\n * @param {Array} data The destination metadata.\n * @param {Array} source The source metadata.\n * @returns {Array} Returns `data`.\n */\n function mergeData(data, source) {\n var bitmask = data[1],\n srcBitmask = source[1],\n newBitmask = bitmask | srcBitmask,\n isCommon = newBitmask < (WRAP_BIND_FLAG | WRAP_BIND_KEY_FLAG | WRAP_ARY_FLAG);\n\n var isCombo =\n ((srcBitmask == WRAP_ARY_FLAG) && (bitmask == WRAP_CURRY_FLAG)) ||\n ((srcBitmask == WRAP_ARY_FLAG) && (bitmask == WRAP_REARG_FLAG) && (data[7].length <= source[8])) ||\n ((srcBitmask == (WRAP_ARY_FLAG | WRAP_REARG_FLAG)) && (source[7].length <= source[8]) && (bitmask == WRAP_CURRY_FLAG));\n\n // Exit early if metadata can't be merged.\n if (!(isCommon || isCombo)) {\n return data;\n }\n // Use source `thisArg` if available.\n if (srcBitmask & WRAP_BIND_FLAG) {\n data[2] = source[2];\n // Set when currying a bound function.\n newBitmask |= bitmask & WRAP_BIND_FLAG ? 0 : WRAP_CURRY_BOUND_FLAG;\n }\n // Compose partial arguments.\n var value = source[3];\n if (value) {\n var partials = data[3];\n data[3] = partials ? composeArgs(partials, value, source[4]) : value;\n data[4] = partials ? replaceHolders(data[3], PLACEHOLDER) : source[4];\n }\n // Compose partial right arguments.\n value = source[5];\n if (value) {\n partials = data[5];\n data[5] = partials ? composeArgsRight(partials, value, source[6]) : value;\n data[6] = partials ? replaceHolders(data[5], PLACEHOLDER) : source[6];\n }\n // Use source `argPos` if available.\n value = source[7];\n if (value) {\n data[7] = value;\n }\n // Use source `ary` if it's smaller.\n if (srcBitmask & WRAP_ARY_FLAG) {\n data[8] = data[8] == null ? source[8] : nativeMin(data[8], source[8]);\n }\n // Use source `arity` if one is not provided.\n if (data[9] == null) {\n data[9] = source[9];\n }\n // Use source `func` and merge bitmasks.\n data[0] = source[0];\n data[1] = newBitmask;\n\n return data;\n }\n\n /**\n * This function is like\n * [`Object.keys`](http://ecma-international.org/ecma-262/7.0/#sec-object.keys)\n * except that it includes inherited enumerable properties.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n */\n function nativeKeysIn(object) {\n var result = [];\n if (object != null) {\n for (var key in Object(object)) {\n result.push(key);\n }\n }\n return result;\n }\n\n /**\n * Converts `value` to a string using `Object.prototype.toString`.\n *\n * @private\n * @param {*} value The value to convert.\n * @returns {string} Returns the converted string.\n */\n function objectToString(value) {\n return nativeObjectToString.call(value);\n }\n\n /**\n * A specialized version of `baseRest` which transforms the rest array.\n *\n * @private\n * @param {Function} func The function to apply a rest parameter to.\n * @param {number} [start=func.length-1] The start position of the rest parameter.\n * @param {Function} transform The rest array transform.\n * @returns {Function} Returns the new function.\n */\n function overRest(func, start, transform) {\n start = nativeMax(start === undefined ? (func.length - 1) : start, 0);\n return function() {\n var args = arguments,\n index = -1,\n length = nativeMax(args.length - start, 0),\n array = Array(length);\n\n while (++index < length) {\n array[index] = args[start + index];\n }\n index = -1;\n var otherArgs = Array(start + 1);\n while (++index < start) {\n otherArgs[index] = args[index];\n }\n otherArgs[start] = transform(array);\n return apply(func, this, otherArgs);\n };\n }\n\n /**\n * Gets the parent value at `path` of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Array} path The path to get the parent value of.\n * @returns {*} Returns the parent value.\n */\n function parent(object, path) {\n return path.length < 2 ? object : baseGet(object, baseSlice(path, 0, -1));\n }\n\n /**\n * Reorder `array` according to the specified indexes where the element at\n * the first index is assigned as the first element, the element at\n * the second index is assigned as the second element, and so on.\n *\n * @private\n * @param {Array} array The array to reorder.\n * @param {Array} indexes The arranged array indexes.\n * @returns {Array} Returns `array`.\n */\n function reorder(array, indexes) {\n var arrLength = array.length,\n length = nativeMin(indexes.length, arrLength),\n oldArray = copyArray(array);\n\n while (length--) {\n var index = indexes[length];\n array[length] = isIndex(index, arrLength) ? oldArray[index] : undefined;\n }\n return array;\n }\n\n /**\n * Gets the value at `key`, unless `key` is \"__proto__\" or \"constructor\".\n *\n * @private\n * @param {Object} object The object to query.\n * @param {string} key The key of the property to get.\n * @returns {*} Returns the property value.\n */\n function safeGet(object, key) {\n if (key === 'constructor' && typeof object[key] === 'function') {\n return;\n }\n\n if (key == '__proto__') {\n return;\n }\n\n return object[key];\n }\n\n /**\n * Sets metadata for `func`.\n *\n * **Note:** If this function becomes hot, i.e. is invoked a lot in a short\n * period of time, it will trip its breaker and transition to an identity\n * function to avoid garbage collection pauses in V8. See\n * [V8 issue 2070](https://bugs.chromium.org/p/v8/issues/detail?id=2070)\n * for more details.\n *\n * @private\n * @param {Function} func The function to associate metadata with.\n * @param {*} data The metadata.\n * @returns {Function} Returns `func`.\n */\n var setData = shortOut(baseSetData);\n\n /**\n * A simple wrapper around the global [`setTimeout`](https://mdn.io/setTimeout).\n *\n * @private\n * @param {Function} func The function to delay.\n * @param {number} wait The number of milliseconds to delay invocation.\n * @returns {number|Object} Returns the timer id or timeout object.\n */\n var setTimeout = ctxSetTimeout || function(func, wait) {\n return root.setTimeout(func, wait);\n };\n\n /**\n * Sets the `toString` method of `func` to return `string`.\n *\n * @private\n * @param {Function} func The function to modify.\n * @param {Function} string The `toString` result.\n * @returns {Function} Returns `func`.\n */\n var setToString = shortOut(baseSetToString);\n\n /**\n * Sets the `toString` method of `wrapper` to mimic the source of `reference`\n * with wrapper details in a comment at the top of the source body.\n *\n * @private\n * @param {Function} wrapper The function to modify.\n * @param {Function} reference The reference function.\n * @param {number} bitmask The bitmask flags. See `createWrap` for more details.\n * @returns {Function} Returns `wrapper`.\n */\n function setWrapToString(wrapper, reference, bitmask) {\n var source = (reference + '');\n return setToString(wrapper, insertWrapDetails(source, updateWrapDetails(getWrapDetails(source), bitmask)));\n }\n\n /**\n * Creates a function that'll short out and invoke `identity` instead\n * of `func` when it's called `HOT_COUNT` or more times in `HOT_SPAN`\n * milliseconds.\n *\n * @private\n * @param {Function} func The function to restrict.\n * @returns {Function} Returns the new shortable function.\n */\n function shortOut(func) {\n var count = 0,\n lastCalled = 0;\n\n return function() {\n var stamp = nativeNow(),\n remaining = HOT_SPAN - (stamp - lastCalled);\n\n lastCalled = stamp;\n if (remaining > 0) {\n if (++count >= HOT_COUNT) {\n return arguments[0];\n }\n } else {\n count = 0;\n }\n return func.apply(undefined, arguments);\n };\n }\n\n /**\n * A specialized version of `_.shuffle` which mutates and sets the size of `array`.\n *\n * @private\n * @param {Array} array The array to shuffle.\n * @param {number} [size=array.length] The size of `array`.\n * @returns {Array} Returns `array`.\n */\n function shuffleSelf(array, size) {\n var index = -1,\n length = array.length,\n lastIndex = length - 1;\n\n size = size === undefined ? length : size;\n while (++index < size) {\n var rand = baseRandom(index, lastIndex),\n value = array[rand];\n\n array[rand] = array[index];\n array[index] = value;\n }\n array.length = size;\n return array;\n }\n\n /**\n * Converts `string` to a property path array.\n *\n * @private\n * @param {string} string The string to convert.\n * @returns {Array} Returns the property path array.\n */\n var stringToPath = memoizeCapped(function(string) {\n var result = [];\n if (string.charCodeAt(0) === 46 /* . */) {\n result.push('');\n }\n string.replace(rePropName, function(match, number, quote, subString) {\n result.push(quote ? subString.replace(reEscapeChar, '$1') : (number || match));\n });\n return result;\n });\n\n /**\n * Converts `value` to a string key if it's not a string or symbol.\n *\n * @private\n * @param {*} value The value to inspect.\n * @returns {string|symbol} Returns the key.\n */\n function toKey(value) {\n if (typeof value == 'string' || isSymbol(value)) {\n return value;\n }\n var result = (value + '');\n return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result;\n }\n\n /**\n * Converts `func` to its source code.\n *\n * @private\n * @param {Function} func The function to convert.\n * @returns {string} Returns the source code.\n */\n function toSource(func) {\n if (func != null) {\n try {\n return funcToString.call(func);\n } catch (e) {}\n try {\n return (func + '');\n } catch (e) {}\n }\n return '';\n }\n\n /**\n * Updates wrapper `details` based on `bitmask` flags.\n *\n * @private\n * @returns {Array} details The details to modify.\n * @param {number} bitmask The bitmask flags. See `createWrap` for more details.\n * @returns {Array} Returns `details`.\n */\n function updateWrapDetails(details, bitmask) {\n arrayEach(wrapFlags, function(pair) {\n var value = '_.' + pair[0];\n if ((bitmask & pair[1]) && !arrayIncludes(details, value)) {\n details.push(value);\n }\n });\n return details.sort();\n }\n\n /**\n * Creates a clone of `wrapper`.\n *\n * @private\n * @param {Object} wrapper The wrapper to clone.\n * @returns {Object} Returns the cloned wrapper.\n */\n function wrapperClone(wrapper) {\n if (wrapper instanceof LazyWrapper) {\n return wrapper.clone();\n }\n var result = new LodashWrapper(wrapper.__wrapped__, wrapper.__chain__);\n result.__actions__ = copyArray(wrapper.__actions__);\n result.__index__ = wrapper.__index__;\n result.__values__ = wrapper.__values__;\n return result;\n }\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Creates an array of elements split into groups the length of `size`.\n * If `array` can't be split evenly, the final chunk will be the remaining\n * elements.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Array\n * @param {Array} array The array to process.\n * @param {number} [size=1] The length of each chunk\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {Array} Returns the new array of chunks.\n * @example\n *\n * _.chunk(['a', 'b', 'c', 'd'], 2);\n * // => [['a', 'b'], ['c', 'd']]\n *\n * _.chunk(['a', 'b', 'c', 'd'], 3);\n * // => [['a', 'b', 'c'], ['d']]\n */\n function chunk(array, size, guard) {\n if ((guard ? isIterateeCall(array, size, guard) : size === undefined)) {\n size = 1;\n } else {\n size = nativeMax(toInteger(size), 0);\n }\n var length = array == null ? 0 : array.length;\n if (!length || size < 1) {\n return [];\n }\n var index = 0,\n resIndex = 0,\n result = Array(nativeCeil(length / size));\n\n while (index < length) {\n result[resIndex++] = baseSlice(array, index, (index += size));\n }\n return result;\n }\n\n /**\n * Creates an array with all falsey values removed. The values `false`, `null`,\n * `0`, `\"\"`, `undefined`, and `NaN` are falsey.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {Array} array The array to compact.\n * @returns {Array} Returns the new array of filtered values.\n * @example\n *\n * _.compact([0, 1, false, 2, '', 3]);\n * // => [1, 2, 3]\n */\n function compact(array) {\n var index = -1,\n length = array == null ? 0 : array.length,\n resIndex = 0,\n result = [];\n\n while (++index < length) {\n var value = array[index];\n if (value) {\n result[resIndex++] = value;\n }\n }\n return result;\n }\n\n /**\n * Creates a new array concatenating `array` with any additional arrays\n * and/or values.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The array to concatenate.\n * @param {...*} [values] The values to concatenate.\n * @returns {Array} Returns the new concatenated array.\n * @example\n *\n * var array = [1];\n * var other = _.concat(array, 2, [3], [[4]]);\n *\n * console.log(other);\n * // => [1, 2, 3, [4]]\n *\n * console.log(array);\n * // => [1]\n */\n function concat() {\n var length = arguments.length;\n if (!length) {\n return [];\n }\n var args = Array(length - 1),\n array = arguments[0],\n index = length;\n\n while (index--) {\n args[index - 1] = arguments[index];\n }\n return arrayPush(isArray(array) ? copyArray(array) : [array], baseFlatten(args, 1));\n }\n\n /**\n * Creates an array of `array` values not included in the other given arrays\n * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * for equality comparisons. The order and references of result values are\n * determined by the first array.\n *\n * **Note:** Unlike `_.pullAll`, this method returns a new array.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @param {...Array} [values] The values to exclude.\n * @returns {Array} Returns the new array of filtered values.\n * @see _.without, _.xor\n * @example\n *\n * _.difference([2, 1], [2, 3]);\n * // => [1]\n */\n var difference = baseRest(function(array, values) {\n return isArrayLikeObject(array)\n ? baseDifference(array, baseFlatten(values, 1, isArrayLikeObject, true))\n : [];\n });\n\n /**\n * This method is like `_.difference` except that it accepts `iteratee` which\n * is invoked for each element of `array` and `values` to generate the criterion\n * by which they're compared. The order and references of result values are\n * determined by the first array. The iteratee is invoked with one argument:\n * (value).\n *\n * **Note:** Unlike `_.pullAllBy`, this method returns a new array.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @param {...Array} [values] The values to exclude.\n * @param {Function} [iteratee=_.identity] The iteratee invoked per element.\n * @returns {Array} Returns the new array of filtered values.\n * @example\n *\n * _.differenceBy([2.1, 1.2], [2.3, 3.4], Math.floor);\n * // => [1.2]\n *\n * // The `_.property` iteratee shorthand.\n * _.differenceBy([{ 'x': 2 }, { 'x': 1 }], [{ 'x': 1 }], 'x');\n * // => [{ 'x': 2 }]\n */\n var differenceBy = baseRest(function(array, values) {\n var iteratee = last(values);\n if (isArrayLikeObject(iteratee)) {\n iteratee = undefined;\n }\n return isArrayLikeObject(array)\n ? baseDifference(array, baseFlatten(values, 1, isArrayLikeObject, true), getIteratee(iteratee, 2))\n : [];\n });\n\n /**\n * This method is like `_.difference` except that it accepts `comparator`\n * which is invoked to compare elements of `array` to `values`. The order and\n * references of result values are determined by the first array. The comparator\n * is invoked with two arguments: (arrVal, othVal).\n *\n * **Note:** Unlike `_.pullAllWith`, this method returns a new array.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @param {...Array} [values] The values to exclude.\n * @param {Function} [comparator] The comparator invoked per element.\n * @returns {Array} Returns the new array of filtered values.\n * @example\n *\n * var objects = [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }];\n *\n * _.differenceWith(objects, [{ 'x': 1, 'y': 2 }], _.isEqual);\n * // => [{ 'x': 2, 'y': 1 }]\n */\n var differenceWith = baseRest(function(array, values) {\n var comparator = last(values);\n if (isArrayLikeObject(comparator)) {\n comparator = undefined;\n }\n return isArrayLikeObject(array)\n ? baseDifference(array, baseFlatten(values, 1, isArrayLikeObject, true), undefined, comparator)\n : [];\n });\n\n /**\n * Creates a slice of `array` with `n` elements dropped from the beginning.\n *\n * @static\n * @memberOf _\n * @since 0.5.0\n * @category Array\n * @param {Array} array The array to query.\n * @param {number} [n=1] The number of elements to drop.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {Array} Returns the slice of `array`.\n * @example\n *\n * _.drop([1, 2, 3]);\n * // => [2, 3]\n *\n * _.drop([1, 2, 3], 2);\n * // => [3]\n *\n * _.drop([1, 2, 3], 5);\n * // => []\n *\n * _.drop([1, 2, 3], 0);\n * // => [1, 2, 3]\n */\n function drop(array, n, guard) {\n var length = array == null ? 0 : array.length;\n if (!length) {\n return [];\n }\n n = (guard || n === undefined) ? 1 : toInteger(n);\n return baseSlice(array, n < 0 ? 0 : n, length);\n }\n\n /**\n * Creates a slice of `array` with `n` elements dropped from the end.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Array\n * @param {Array} array The array to query.\n * @param {number} [n=1] The number of elements to drop.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {Array} Returns the slice of `array`.\n * @example\n *\n * _.dropRight([1, 2, 3]);\n * // => [1, 2]\n *\n * _.dropRight([1, 2, 3], 2);\n * // => [1]\n *\n * _.dropRight([1, 2, 3], 5);\n * // => []\n *\n * _.dropRight([1, 2, 3], 0);\n * // => [1, 2, 3]\n */\n function dropRight(array, n, guard) {\n var length = array == null ? 0 : array.length;\n if (!length) {\n return [];\n }\n n = (guard || n === undefined) ? 1 : toInteger(n);\n n = length - n;\n return baseSlice(array, 0, n < 0 ? 0 : n);\n }\n\n /**\n * Creates a slice of `array` excluding elements dropped from the end.\n * Elements are dropped until `predicate` returns falsey. The predicate is\n * invoked with three arguments: (value, index, array).\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Array\n * @param {Array} array The array to query.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @returns {Array} Returns the slice of `array`.\n * @example\n *\n * var users = [\n * { 'user': 'barney', 'active': true },\n * { 'user': 'fred', 'active': false },\n * { 'user': 'pebbles', 'active': false }\n * ];\n *\n * _.dropRightWhile(users, function(o) { return !o.active; });\n * // => objects for ['barney']\n *\n * // The `_.matches` iteratee shorthand.\n * _.dropRightWhile(users, { 'user': 'pebbles', 'active': false });\n * // => objects for ['barney', 'fred']\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.dropRightWhile(users, ['active', false]);\n * // => objects for ['barney']\n *\n * // The `_.property` iteratee shorthand.\n * _.dropRightWhile(users, 'active');\n * // => objects for ['barney', 'fred', 'pebbles']\n */\n function dropRightWhile(array, predicate) {\n return (array && array.length)\n ? baseWhile(array, getIteratee(predicate, 3), true, true)\n : [];\n }\n\n /**\n * Creates a slice of `array` excluding elements dropped from the beginning.\n * Elements are dropped until `predicate` returns falsey. The predicate is\n * invoked with three arguments: (value, index, array).\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Array\n * @param {Array} array The array to query.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @returns {Array} Returns the slice of `array`.\n * @example\n *\n * var users = [\n * { 'user': 'barney', 'active': false },\n * { 'user': 'fred', 'active': false },\n * { 'user': 'pebbles', 'active': true }\n * ];\n *\n * _.dropWhile(users, function(o) { return !o.active; });\n * // => objects for ['pebbles']\n *\n * // The `_.matches` iteratee shorthand.\n * _.dropWhile(users, { 'user': 'barney', 'active': false });\n * // => objects for ['fred', 'pebbles']\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.dropWhile(users, ['active', false]);\n * // => objects for ['pebbles']\n *\n * // The `_.property` iteratee shorthand.\n * _.dropWhile(users, 'active');\n * // => objects for ['barney', 'fred', 'pebbles']\n */\n function dropWhile(array, predicate) {\n return (array && array.length)\n ? baseWhile(array, getIteratee(predicate, 3), true)\n : [];\n }\n\n /**\n * Fills elements of `array` with `value` from `start` up to, but not\n * including, `end`.\n *\n * **Note:** This method mutates `array`.\n *\n * @static\n * @memberOf _\n * @since 3.2.0\n * @category Array\n * @param {Array} array The array to fill.\n * @param {*} value The value to fill `array` with.\n * @param {number} [start=0] The start position.\n * @param {number} [end=array.length] The end position.\n * @returns {Array} Returns `array`.\n * @example\n *\n * var array = [1, 2, 3];\n *\n * _.fill(array, 'a');\n * console.log(array);\n * // => ['a', 'a', 'a']\n *\n * _.fill(Array(3), 2);\n * // => [2, 2, 2]\n *\n * _.fill([4, 6, 8, 10], '*', 1, 3);\n * // => [4, '*', '*', 10]\n */\n function fill(array, value, start, end) {\n var length = array == null ? 0 : array.length;\n if (!length) {\n return [];\n }\n if (start && typeof start != 'number' && isIterateeCall(array, value, start)) {\n start = 0;\n end = length;\n }\n return baseFill(array, value, start, end);\n }\n\n /**\n * This method is like `_.find` except that it returns the index of the first\n * element `predicate` returns truthy for instead of the element itself.\n *\n * @static\n * @memberOf _\n * @since 1.1.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @param {number} [fromIndex=0] The index to search from.\n * @returns {number} Returns the index of the found element, else `-1`.\n * @example\n *\n * var users = [\n * { 'user': 'barney', 'active': false },\n * { 'user': 'fred', 'active': false },\n * { 'user': 'pebbles', 'active': true }\n * ];\n *\n * _.findIndex(users, function(o) { return o.user == 'barney'; });\n * // => 0\n *\n * // The `_.matches` iteratee shorthand.\n * _.findIndex(users, { 'user': 'fred', 'active': false });\n * // => 1\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.findIndex(users, ['active', false]);\n * // => 0\n *\n * // The `_.property` iteratee shorthand.\n * _.findIndex(users, 'active');\n * // => 2\n */\n function findIndex(array, predicate, fromIndex) {\n var length = array == null ? 0 : array.length;\n if (!length) {\n return -1;\n }\n var index = fromIndex == null ? 0 : toInteger(fromIndex);\n if (index < 0) {\n index = nativeMax(length + index, 0);\n }\n return baseFindIndex(array, getIteratee(predicate, 3), index);\n }\n\n /**\n * This method is like `_.findIndex` except that it iterates over elements\n * of `collection` from right to left.\n *\n * @static\n * @memberOf _\n * @since 2.0.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @param {number} [fromIndex=array.length-1] The index to search from.\n * @returns {number} Returns the index of the found element, else `-1`.\n * @example\n *\n * var users = [\n * { 'user': 'barney', 'active': true },\n * { 'user': 'fred', 'active': false },\n * { 'user': 'pebbles', 'active': false }\n * ];\n *\n * _.findLastIndex(users, function(o) { return o.user == 'pebbles'; });\n * // => 2\n *\n * // The `_.matches` iteratee shorthand.\n * _.findLastIndex(users, { 'user': 'barney', 'active': true });\n * // => 0\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.findLastIndex(users, ['active', false]);\n * // => 2\n *\n * // The `_.property` iteratee shorthand.\n * _.findLastIndex(users, 'active');\n * // => 0\n */\n function findLastIndex(array, predicate, fromIndex) {\n var length = array == null ? 0 : array.length;\n if (!length) {\n return -1;\n }\n var index = length - 1;\n if (fromIndex !== undefined) {\n index = toInteger(fromIndex);\n index = fromIndex < 0\n ? nativeMax(length + index, 0)\n : nativeMin(index, length - 1);\n }\n return baseFindIndex(array, getIteratee(predicate, 3), index, true);\n }\n\n /**\n * Flattens `array` a single level deep.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {Array} array The array to flatten.\n * @returns {Array} Returns the new flattened array.\n * @example\n *\n * _.flatten([1, [2, [3, [4]], 5]]);\n * // => [1, 2, [3, [4]], 5]\n */\n function flatten(array) {\n var length = array == null ? 0 : array.length;\n return length ? baseFlatten(array, 1) : [];\n }\n\n /**\n * Recursively flattens `array`.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Array\n * @param {Array} array The array to flatten.\n * @returns {Array} Returns the new flattened array.\n * @example\n *\n * _.flattenDeep([1, [2, [3, [4]], 5]]);\n * // => [1, 2, 3, 4, 5]\n */\n function flattenDeep(array) {\n var length = array == null ? 0 : array.length;\n return length ? baseFlatten(array, INFINITY) : [];\n }\n\n /**\n * Recursively flatten `array` up to `depth` times.\n *\n * @static\n * @memberOf _\n * @since 4.4.0\n * @category Array\n * @param {Array} array The array to flatten.\n * @param {number} [depth=1] The maximum recursion depth.\n * @returns {Array} Returns the new flattened array.\n * @example\n *\n * var array = [1, [2, [3, [4]], 5]];\n *\n * _.flattenDepth(array, 1);\n * // => [1, 2, [3, [4]], 5]\n *\n * _.flattenDepth(array, 2);\n * // => [1, 2, 3, [4], 5]\n */\n function flattenDepth(array, depth) {\n var length = array == null ? 0 : array.length;\n if (!length) {\n return [];\n }\n depth = depth === undefined ? 1 : toInteger(depth);\n return baseFlatten(array, depth);\n }\n\n /**\n * The inverse of `_.toPairs`; this method returns an object composed\n * from key-value `pairs`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} pairs The key-value pairs.\n * @returns {Object} Returns the new object.\n * @example\n *\n * _.fromPairs([['a', 1], ['b', 2]]);\n * // => { 'a': 1, 'b': 2 }\n */\n function fromPairs(pairs) {\n var index = -1,\n length = pairs == null ? 0 : pairs.length,\n result = {};\n\n while (++index < length) {\n var pair = pairs[index];\n result[pair[0]] = pair[1];\n }\n return result;\n }\n\n /**\n * Gets the first element of `array`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @alias first\n * @category Array\n * @param {Array} array The array to query.\n * @returns {*} Returns the first element of `array`.\n * @example\n *\n * _.head([1, 2, 3]);\n * // => 1\n *\n * _.head([]);\n * // => undefined\n */\n function head(array) {\n return (array && array.length) ? array[0] : undefined;\n }\n\n /**\n * Gets the index at which the first occurrence of `value` is found in `array`\n * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * for equality comparisons. If `fromIndex` is negative, it's used as the\n * offset from the end of `array`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @param {*} value The value to search for.\n * @param {number} [fromIndex=0] The index to search from.\n * @returns {number} Returns the index of the matched value, else `-1`.\n * @example\n *\n * _.indexOf([1, 2, 1, 2], 2);\n * // => 1\n *\n * // Search from the `fromIndex`.\n * _.indexOf([1, 2, 1, 2], 2, 2);\n * // => 3\n */\n function indexOf(array, value, fromIndex) {\n var length = array == null ? 0 : array.length;\n if (!length) {\n return -1;\n }\n var index = fromIndex == null ? 0 : toInteger(fromIndex);\n if (index < 0) {\n index = nativeMax(length + index, 0);\n }\n return baseIndexOf(array, value, index);\n }\n\n /**\n * Gets all but the last element of `array`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {Array} array The array to query.\n * @returns {Array} Returns the slice of `array`.\n * @example\n *\n * _.initial([1, 2, 3]);\n * // => [1, 2]\n */\n function initial(array) {\n var length = array == null ? 0 : array.length;\n return length ? baseSlice(array, 0, -1) : [];\n }\n\n /**\n * Creates an array of unique values that are included in all given arrays\n * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * for equality comparisons. The order and references of result values are\n * determined by the first array.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {...Array} [arrays] The arrays to inspect.\n * @returns {Array} Returns the new array of intersecting values.\n * @example\n *\n * _.intersection([2, 1], [2, 3]);\n * // => [2]\n */\n var intersection = baseRest(function(arrays) {\n var mapped = arrayMap(arrays, castArrayLikeObject);\n return (mapped.length && mapped[0] === arrays[0])\n ? baseIntersection(mapped)\n : [];\n });\n\n /**\n * This method is like `_.intersection` except that it accepts `iteratee`\n * which is invoked for each element of each `arrays` to generate the criterion\n * by which they're compared. The order and references of result values are\n * determined by the first array. The iteratee is invoked with one argument:\n * (value).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {...Array} [arrays] The arrays to inspect.\n * @param {Function} [iteratee=_.identity] The iteratee invoked per element.\n * @returns {Array} Returns the new array of intersecting values.\n * @example\n *\n * _.intersectionBy([2.1, 1.2], [2.3, 3.4], Math.floor);\n * // => [2.1]\n *\n * // The `_.property` iteratee shorthand.\n * _.intersectionBy([{ 'x': 1 }], [{ 'x': 2 }, { 'x': 1 }], 'x');\n * // => [{ 'x': 1 }]\n */\n var intersectionBy = baseRest(function(arrays) {\n var iteratee = last(arrays),\n mapped = arrayMap(arrays, castArrayLikeObject);\n\n if (iteratee === last(mapped)) {\n iteratee = undefined;\n } else {\n mapped.pop();\n }\n return (mapped.length && mapped[0] === arrays[0])\n ? baseIntersection(mapped, getIteratee(iteratee, 2))\n : [];\n });\n\n /**\n * This method is like `_.intersection` except that it accepts `comparator`\n * which is invoked to compare elements of `arrays`. The order and references\n * of result values are determined by the first array. The comparator is\n * invoked with two arguments: (arrVal, othVal).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {...Array} [arrays] The arrays to inspect.\n * @param {Function} [comparator] The comparator invoked per element.\n * @returns {Array} Returns the new array of intersecting values.\n * @example\n *\n * var objects = [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }];\n * var others = [{ 'x': 1, 'y': 1 }, { 'x': 1, 'y': 2 }];\n *\n * _.intersectionWith(objects, others, _.isEqual);\n * // => [{ 'x': 1, 'y': 2 }]\n */\n var intersectionWith = baseRest(function(arrays) {\n var comparator = last(arrays),\n mapped = arrayMap(arrays, castArrayLikeObject);\n\n comparator = typeof comparator == 'function' ? comparator : undefined;\n if (comparator) {\n mapped.pop();\n }\n return (mapped.length && mapped[0] === arrays[0])\n ? baseIntersection(mapped, undefined, comparator)\n : [];\n });\n\n /**\n * Converts all elements in `array` into a string separated by `separator`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The array to convert.\n * @param {string} [separator=','] The element separator.\n * @returns {string} Returns the joined string.\n * @example\n *\n * _.join(['a', 'b', 'c'], '~');\n * // => 'a~b~c'\n */\n function join(array, separator) {\n return array == null ? '' : nativeJoin.call(array, separator);\n }\n\n /**\n * Gets the last element of `array`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {Array} array The array to query.\n * @returns {*} Returns the last element of `array`.\n * @example\n *\n * _.last([1, 2, 3]);\n * // => 3\n */\n function last(array) {\n var length = array == null ? 0 : array.length;\n return length ? array[length - 1] : undefined;\n }\n\n /**\n * This method is like `_.indexOf` except that it iterates over elements of\n * `array` from right to left.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @param {*} value The value to search for.\n * @param {number} [fromIndex=array.length-1] The index to search from.\n * @returns {number} Returns the index of the matched value, else `-1`.\n * @example\n *\n * _.lastIndexOf([1, 2, 1, 2], 2);\n * // => 3\n *\n * // Search from the `fromIndex`.\n * _.lastIndexOf([1, 2, 1, 2], 2, 2);\n * // => 1\n */\n function lastIndexOf(array, value, fromIndex) {\n var length = array == null ? 0 : array.length;\n if (!length) {\n return -1;\n }\n var index = length;\n if (fromIndex !== undefined) {\n index = toInteger(fromIndex);\n index = index < 0 ? nativeMax(length + index, 0) : nativeMin(index, length - 1);\n }\n return value === value\n ? strictLastIndexOf(array, value, index)\n : baseFindIndex(array, baseIsNaN, index, true);\n }\n\n /**\n * Gets the element at index `n` of `array`. If `n` is negative, the nth\n * element from the end is returned.\n *\n * @static\n * @memberOf _\n * @since 4.11.0\n * @category Array\n * @param {Array} array The array to query.\n * @param {number} [n=0] The index of the element to return.\n * @returns {*} Returns the nth element of `array`.\n * @example\n *\n * var array = ['a', 'b', 'c', 'd'];\n *\n * _.nth(array, 1);\n * // => 'b'\n *\n * _.nth(array, -2);\n * // => 'c';\n */\n function nth(array, n) {\n return (array && array.length) ? baseNth(array, toInteger(n)) : undefined;\n }\n\n /**\n * Removes all given values from `array` using\n * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * for equality comparisons.\n *\n * **Note:** Unlike `_.without`, this method mutates `array`. Use `_.remove`\n * to remove elements from an array by predicate.\n *\n * @static\n * @memberOf _\n * @since 2.0.0\n * @category Array\n * @param {Array} array The array to modify.\n * @param {...*} [values] The values to remove.\n * @returns {Array} Returns `array`.\n * @example\n *\n * var array = ['a', 'b', 'c', 'a', 'b', 'c'];\n *\n * _.pull(array, 'a', 'c');\n * console.log(array);\n * // => ['b', 'b']\n */\n var pull = baseRest(pullAll);\n\n /**\n * This method is like `_.pull` except that it accepts an array of values to remove.\n *\n * **Note:** Unlike `_.difference`, this method mutates `array`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The array to modify.\n * @param {Array} values The values to remove.\n * @returns {Array} Returns `array`.\n * @example\n *\n * var array = ['a', 'b', 'c', 'a', 'b', 'c'];\n *\n * _.pullAll(array, ['a', 'c']);\n * console.log(array);\n * // => ['b', 'b']\n */\n function pullAll(array, values) {\n return (array && array.length && values && values.length)\n ? basePullAll(array, values)\n : array;\n }\n\n /**\n * This method is like `_.pullAll` except that it accepts `iteratee` which is\n * invoked for each element of `array` and `values` to generate the criterion\n * by which they're compared. The iteratee is invoked with one argument: (value).\n *\n * **Note:** Unlike `_.differenceBy`, this method mutates `array`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The array to modify.\n * @param {Array} values The values to remove.\n * @param {Function} [iteratee=_.identity] The iteratee invoked per element.\n * @returns {Array} Returns `array`.\n * @example\n *\n * var array = [{ 'x': 1 }, { 'x': 2 }, { 'x': 3 }, { 'x': 1 }];\n *\n * _.pullAllBy(array, [{ 'x': 1 }, { 'x': 3 }], 'x');\n * console.log(array);\n * // => [{ 'x': 2 }]\n */\n function pullAllBy(array, values, iteratee) {\n return (array && array.length && values && values.length)\n ? basePullAll(array, values, getIteratee(iteratee, 2))\n : array;\n }\n\n /**\n * This method is like `_.pullAll` except that it accepts `comparator` which\n * is invoked to compare elements of `array` to `values`. The comparator is\n * invoked with two arguments: (arrVal, othVal).\n *\n * **Note:** Unlike `_.differenceWith`, this method mutates `array`.\n *\n * @static\n * @memberOf _\n * @since 4.6.0\n * @category Array\n * @param {Array} array The array to modify.\n * @param {Array} values The values to remove.\n * @param {Function} [comparator] The comparator invoked per element.\n * @returns {Array} Returns `array`.\n * @example\n *\n * var array = [{ 'x': 1, 'y': 2 }, { 'x': 3, 'y': 4 }, { 'x': 5, 'y': 6 }];\n *\n * _.pullAllWith(array, [{ 'x': 3, 'y': 4 }], _.isEqual);\n * console.log(array);\n * // => [{ 'x': 1, 'y': 2 }, { 'x': 5, 'y': 6 }]\n */\n function pullAllWith(array, values, comparator) {\n return (array && array.length && values && values.length)\n ? basePullAll(array, values, undefined, comparator)\n : array;\n }\n\n /**\n * Removes elements from `array` corresponding to `indexes` and returns an\n * array of removed elements.\n *\n * **Note:** Unlike `_.at`, this method mutates `array`.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Array\n * @param {Array} array The array to modify.\n * @param {...(number|number[])} [indexes] The indexes of elements to remove.\n * @returns {Array} Returns the new array of removed elements.\n * @example\n *\n * var array = ['a', 'b', 'c', 'd'];\n * var pulled = _.pullAt(array, [1, 3]);\n *\n * console.log(array);\n * // => ['a', 'c']\n *\n * console.log(pulled);\n * // => ['b', 'd']\n */\n var pullAt = flatRest(function(array, indexes) {\n var length = array == null ? 0 : array.length,\n result = baseAt(array, indexes);\n\n basePullAt(array, arrayMap(indexes, function(index) {\n return isIndex(index, length) ? +index : index;\n }).sort(compareAscending));\n\n return result;\n });\n\n /**\n * Removes all elements from `array` that `predicate` returns truthy for\n * and returns an array of the removed elements. The predicate is invoked\n * with three arguments: (value, index, array).\n *\n * **Note:** Unlike `_.filter`, this method mutates `array`. Use `_.pull`\n * to pull elements from an array by value.\n *\n * @static\n * @memberOf _\n * @since 2.0.0\n * @category Array\n * @param {Array} array The array to modify.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @returns {Array} Returns the new array of removed elements.\n * @example\n *\n * var array = [1, 2, 3, 4];\n * var evens = _.remove(array, function(n) {\n * return n % 2 == 0;\n * });\n *\n * console.log(array);\n * // => [1, 3]\n *\n * console.log(evens);\n * // => [2, 4]\n */\n function remove(array, predicate) {\n var result = [];\n if (!(array && array.length)) {\n return result;\n }\n var index = -1,\n indexes = [],\n length = array.length;\n\n predicate = getIteratee(predicate, 3);\n while (++index < length) {\n var value = array[index];\n if (predicate(value, index, array)) {\n result.push(value);\n indexes.push(index);\n }\n }\n basePullAt(array, indexes);\n return result;\n }\n\n /**\n * Reverses `array` so that the first element becomes the last, the second\n * element becomes the second to last, and so on.\n *\n * **Note:** This method mutates `array` and is based on\n * [`Array#reverse`](https://mdn.io/Array/reverse).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The array to modify.\n * @returns {Array} Returns `array`.\n * @example\n *\n * var array = [1, 2, 3];\n *\n * _.reverse(array);\n * // => [3, 2, 1]\n *\n * console.log(array);\n * // => [3, 2, 1]\n */\n function reverse(array) {\n return array == null ? array : nativeReverse.call(array);\n }\n\n /**\n * Creates a slice of `array` from `start` up to, but not including, `end`.\n *\n * **Note:** This method is used instead of\n * [`Array#slice`](https://mdn.io/Array/slice) to ensure dense arrays are\n * returned.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Array\n * @param {Array} array The array to slice.\n * @param {number} [start=0] The start position.\n * @param {number} [end=array.length] The end position.\n * @returns {Array} Returns the slice of `array`.\n */\n function slice(array, start, end) {\n var length = array == null ? 0 : array.length;\n if (!length) {\n return [];\n }\n if (end && typeof end != 'number' && isIterateeCall(array, start, end)) {\n start = 0;\n end = length;\n }\n else {\n start = start == null ? 0 : toInteger(start);\n end = end === undefined ? length : toInteger(end);\n }\n return baseSlice(array, start, end);\n }\n\n /**\n * Uses a binary search to determine the lowest index at which `value`\n * should be inserted into `array` in order to maintain its sort order.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {Array} array The sorted array to inspect.\n * @param {*} value The value to evaluate.\n * @returns {number} Returns the index at which `value` should be inserted\n * into `array`.\n * @example\n *\n * _.sortedIndex([30, 50], 40);\n * // => 1\n */\n function sortedIndex(array, value) {\n return baseSortedIndex(array, value);\n }\n\n /**\n * This method is like `_.sortedIndex` except that it accepts `iteratee`\n * which is invoked for `value` and each element of `array` to compute their\n * sort ranking. The iteratee is invoked with one argument: (value).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The sorted array to inspect.\n * @param {*} value The value to evaluate.\n * @param {Function} [iteratee=_.identity] The iteratee invoked per element.\n * @returns {number} Returns the index at which `value` should be inserted\n * into `array`.\n * @example\n *\n * var objects = [{ 'x': 4 }, { 'x': 5 }];\n *\n * _.sortedIndexBy(objects, { 'x': 4 }, function(o) { return o.x; });\n * // => 0\n *\n * // The `_.property` iteratee shorthand.\n * _.sortedIndexBy(objects, { 'x': 4 }, 'x');\n * // => 0\n */\n function sortedIndexBy(array, value, iteratee) {\n return baseSortedIndexBy(array, value, getIteratee(iteratee, 2));\n }\n\n /**\n * This method is like `_.indexOf` except that it performs a binary\n * search on a sorted `array`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @param {*} value The value to search for.\n * @returns {number} Returns the index of the matched value, else `-1`.\n * @example\n *\n * _.sortedIndexOf([4, 5, 5, 5, 6], 5);\n * // => 1\n */\n function sortedIndexOf(array, value) {\n var length = array == null ? 0 : array.length;\n if (length) {\n var index = baseSortedIndex(array, value);\n if (index < length && eq(array[index], value)) {\n return index;\n }\n }\n return -1;\n }\n\n /**\n * This method is like `_.sortedIndex` except that it returns the highest\n * index at which `value` should be inserted into `array` in order to\n * maintain its sort order.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Array\n * @param {Array} array The sorted array to inspect.\n * @param {*} value The value to evaluate.\n * @returns {number} Returns the index at which `value` should be inserted\n * into `array`.\n * @example\n *\n * _.sortedLastIndex([4, 5, 5, 5, 6], 5);\n * // => 4\n */\n function sortedLastIndex(array, value) {\n return baseSortedIndex(array, value, true);\n }\n\n /**\n * This method is like `_.sortedLastIndex` except that it accepts `iteratee`\n * which is invoked for `value` and each element of `array` to compute their\n * sort ranking. The iteratee is invoked with one argument: (value).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The sorted array to inspect.\n * @param {*} value The value to evaluate.\n * @param {Function} [iteratee=_.identity] The iteratee invoked per element.\n * @returns {number} Returns the index at which `value` should be inserted\n * into `array`.\n * @example\n *\n * var objects = [{ 'x': 4 }, { 'x': 5 }];\n *\n * _.sortedLastIndexBy(objects, { 'x': 4 }, function(o) { return o.x; });\n * // => 1\n *\n * // The `_.property` iteratee shorthand.\n * _.sortedLastIndexBy(objects, { 'x': 4 }, 'x');\n * // => 1\n */\n function sortedLastIndexBy(array, value, iteratee) {\n return baseSortedIndexBy(array, value, getIteratee(iteratee, 2), true);\n }\n\n /**\n * This method is like `_.lastIndexOf` except that it performs a binary\n * search on a sorted `array`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @param {*} value The value to search for.\n * @returns {number} Returns the index of the matched value, else `-1`.\n * @example\n *\n * _.sortedLastIndexOf([4, 5, 5, 5, 6], 5);\n * // => 3\n */\n function sortedLastIndexOf(array, value) {\n var length = array == null ? 0 : array.length;\n if (length) {\n var index = baseSortedIndex(array, value, true) - 1;\n if (eq(array[index], value)) {\n return index;\n }\n }\n return -1;\n }\n\n /**\n * This method is like `_.uniq` except that it's designed and optimized\n * for sorted arrays.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @returns {Array} Returns the new duplicate free array.\n * @example\n *\n * _.sortedUniq([1, 1, 2]);\n * // => [1, 2]\n */\n function sortedUniq(array) {\n return (array && array.length)\n ? baseSortedUniq(array)\n : [];\n }\n\n /**\n * This method is like `_.uniqBy` except that it's designed and optimized\n * for sorted arrays.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @param {Function} [iteratee] The iteratee invoked per element.\n * @returns {Array} Returns the new duplicate free array.\n * @example\n *\n * _.sortedUniqBy([1.1, 1.2, 2.3, 2.4], Math.floor);\n * // => [1.1, 2.3]\n */\n function sortedUniqBy(array, iteratee) {\n return (array && array.length)\n ? baseSortedUniq(array, getIteratee(iteratee, 2))\n : [];\n }\n\n /**\n * Gets all but the first element of `array`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The array to query.\n * @returns {Array} Returns the slice of `array`.\n * @example\n *\n * _.tail([1, 2, 3]);\n * // => [2, 3]\n */\n function tail(array) {\n var length = array == null ? 0 : array.length;\n return length ? baseSlice(array, 1, length) : [];\n }\n\n /**\n * Creates a slice of `array` with `n` elements taken from the beginning.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {Array} array The array to query.\n * @param {number} [n=1] The number of elements to take.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {Array} Returns the slice of `array`.\n * @example\n *\n * _.take([1, 2, 3]);\n * // => [1]\n *\n * _.take([1, 2, 3], 2);\n * // => [1, 2]\n *\n * _.take([1, 2, 3], 5);\n * // => [1, 2, 3]\n *\n * _.take([1, 2, 3], 0);\n * // => []\n */\n function take(array, n, guard) {\n if (!(array && array.length)) {\n return [];\n }\n n = (guard || n === undefined) ? 1 : toInteger(n);\n return baseSlice(array, 0, n < 0 ? 0 : n);\n }\n\n /**\n * Creates a slice of `array` with `n` elements taken from the end.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Array\n * @param {Array} array The array to query.\n * @param {number} [n=1] The number of elements to take.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {Array} Returns the slice of `array`.\n * @example\n *\n * _.takeRight([1, 2, 3]);\n * // => [3]\n *\n * _.takeRight([1, 2, 3], 2);\n * // => [2, 3]\n *\n * _.takeRight([1, 2, 3], 5);\n * // => [1, 2, 3]\n *\n * _.takeRight([1, 2, 3], 0);\n * // => []\n */\n function takeRight(array, n, guard) {\n var length = array == null ? 0 : array.length;\n if (!length) {\n return [];\n }\n n = (guard || n === undefined) ? 1 : toInteger(n);\n n = length - n;\n return baseSlice(array, n < 0 ? 0 : n, length);\n }\n\n /**\n * Creates a slice of `array` with elements taken from the end. Elements are\n * taken until `predicate` returns falsey. The predicate is invoked with\n * three arguments: (value, index, array).\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Array\n * @param {Array} array The array to query.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @returns {Array} Returns the slice of `array`.\n * @example\n *\n * var users = [\n * { 'user': 'barney', 'active': true },\n * { 'user': 'fred', 'active': false },\n * { 'user': 'pebbles', 'active': false }\n * ];\n *\n * _.takeRightWhile(users, function(o) { return !o.active; });\n * // => objects for ['fred', 'pebbles']\n *\n * // The `_.matches` iteratee shorthand.\n * _.takeRightWhile(users, { 'user': 'pebbles', 'active': false });\n * // => objects for ['pebbles']\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.takeRightWhile(users, ['active', false]);\n * // => objects for ['fred', 'pebbles']\n *\n * // The `_.property` iteratee shorthand.\n * _.takeRightWhile(users, 'active');\n * // => []\n */\n function takeRightWhile(array, predicate) {\n return (array && array.length)\n ? baseWhile(array, getIteratee(predicate, 3), false, true)\n : [];\n }\n\n /**\n * Creates a slice of `array` with elements taken from the beginning. Elements\n * are taken until `predicate` returns falsey. The predicate is invoked with\n * three arguments: (value, index, array).\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Array\n * @param {Array} array The array to query.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @returns {Array} Returns the slice of `array`.\n * @example\n *\n * var users = [\n * { 'user': 'barney', 'active': false },\n * { 'user': 'fred', 'active': false },\n * { 'user': 'pebbles', 'active': true }\n * ];\n *\n * _.takeWhile(users, function(o) { return !o.active; });\n * // => objects for ['barney', 'fred']\n *\n * // The `_.matches` iteratee shorthand.\n * _.takeWhile(users, { 'user': 'barney', 'active': false });\n * // => objects for ['barney']\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.takeWhile(users, ['active', false]);\n * // => objects for ['barney', 'fred']\n *\n * // The `_.property` iteratee shorthand.\n * _.takeWhile(users, 'active');\n * // => []\n */\n function takeWhile(array, predicate) {\n return (array && array.length)\n ? baseWhile(array, getIteratee(predicate, 3))\n : [];\n }\n\n /**\n * Creates an array of unique values, in order, from all given arrays using\n * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * for equality comparisons.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {...Array} [arrays] The arrays to inspect.\n * @returns {Array} Returns the new array of combined values.\n * @example\n *\n * _.union([2], [1, 2]);\n * // => [2, 1]\n */\n var union = baseRest(function(arrays) {\n return baseUniq(baseFlatten(arrays, 1, isArrayLikeObject, true));\n });\n\n /**\n * This method is like `_.union` except that it accepts `iteratee` which is\n * invoked for each element of each `arrays` to generate the criterion by\n * which uniqueness is computed. Result values are chosen from the first\n * array in which the value occurs. The iteratee is invoked with one argument:\n * (value).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {...Array} [arrays] The arrays to inspect.\n * @param {Function} [iteratee=_.identity] The iteratee invoked per element.\n * @returns {Array} Returns the new array of combined values.\n * @example\n *\n * _.unionBy([2.1], [1.2, 2.3], Math.floor);\n * // => [2.1, 1.2]\n *\n * // The `_.property` iteratee shorthand.\n * _.unionBy([{ 'x': 1 }], [{ 'x': 2 }, { 'x': 1 }], 'x');\n * // => [{ 'x': 1 }, { 'x': 2 }]\n */\n var unionBy = baseRest(function(arrays) {\n var iteratee = last(arrays);\n if (isArrayLikeObject(iteratee)) {\n iteratee = undefined;\n }\n return baseUniq(baseFlatten(arrays, 1, isArrayLikeObject, true), getIteratee(iteratee, 2));\n });\n\n /**\n * This method is like `_.union` except that it accepts `comparator` which\n * is invoked to compare elements of `arrays`. Result values are chosen from\n * the first array in which the value occurs. The comparator is invoked\n * with two arguments: (arrVal, othVal).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {...Array} [arrays] The arrays to inspect.\n * @param {Function} [comparator] The comparator invoked per element.\n * @returns {Array} Returns the new array of combined values.\n * @example\n *\n * var objects = [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }];\n * var others = [{ 'x': 1, 'y': 1 }, { 'x': 1, 'y': 2 }];\n *\n * _.unionWith(objects, others, _.isEqual);\n * // => [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }, { 'x': 1, 'y': 1 }]\n */\n var unionWith = baseRest(function(arrays) {\n var comparator = last(arrays);\n comparator = typeof comparator == 'function' ? comparator : undefined;\n return baseUniq(baseFlatten(arrays, 1, isArrayLikeObject, true), undefined, comparator);\n });\n\n /**\n * Creates a duplicate-free version of an array, using\n * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * for equality comparisons, in which only the first occurrence of each element\n * is kept. The order of result values is determined by the order they occur\n * in the array.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @returns {Array} Returns the new duplicate free array.\n * @example\n *\n * _.uniq([2, 1, 2]);\n * // => [2, 1]\n */\n function uniq(array) {\n return (array && array.length) ? baseUniq(array) : [];\n }\n\n /**\n * This method is like `_.uniq` except that it accepts `iteratee` which is\n * invoked for each element in `array` to generate the criterion by which\n * uniqueness is computed. The order of result values is determined by the\n * order they occur in the array. The iteratee is invoked with one argument:\n * (value).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @param {Function} [iteratee=_.identity] The iteratee invoked per element.\n * @returns {Array} Returns the new duplicate free array.\n * @example\n *\n * _.uniqBy([2.1, 1.2, 2.3], Math.floor);\n * // => [2.1, 1.2]\n *\n * // The `_.property` iteratee shorthand.\n * _.uniqBy([{ 'x': 1 }, { 'x': 2 }, { 'x': 1 }], 'x');\n * // => [{ 'x': 1 }, { 'x': 2 }]\n */\n function uniqBy(array, iteratee) {\n return (array && array.length) ? baseUniq(array, getIteratee(iteratee, 2)) : [];\n }\n\n /**\n * This method is like `_.uniq` except that it accepts `comparator` which\n * is invoked to compare elements of `array`. The order of result values is\n * determined by the order they occur in the array.The comparator is invoked\n * with two arguments: (arrVal, othVal).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @param {Function} [comparator] The comparator invoked per element.\n * @returns {Array} Returns the new duplicate free array.\n * @example\n *\n * var objects = [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }, { 'x': 1, 'y': 2 }];\n *\n * _.uniqWith(objects, _.isEqual);\n * // => [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }]\n */\n function uniqWith(array, comparator) {\n comparator = typeof comparator == 'function' ? comparator : undefined;\n return (array && array.length) ? baseUniq(array, undefined, comparator) : [];\n }\n\n /**\n * This method is like `_.zip` except that it accepts an array of grouped\n * elements and creates an array regrouping the elements to their pre-zip\n * configuration.\n *\n * @static\n * @memberOf _\n * @since 1.2.0\n * @category Array\n * @param {Array} array The array of grouped elements to process.\n * @returns {Array} Returns the new array of regrouped elements.\n * @example\n *\n * var zipped = _.zip(['a', 'b'], [1, 2], [true, false]);\n * // => [['a', 1, true], ['b', 2, false]]\n *\n * _.unzip(zipped);\n * // => [['a', 'b'], [1, 2], [true, false]]\n */\n function unzip(array) {\n if (!(array && array.length)) {\n return [];\n }\n var length = 0;\n array = arrayFilter(array, function(group) {\n if (isArrayLikeObject(group)) {\n length = nativeMax(group.length, length);\n return true;\n }\n });\n return baseTimes(length, function(index) {\n return arrayMap(array, baseProperty(index));\n });\n }\n\n /**\n * This method is like `_.unzip` except that it accepts `iteratee` to specify\n * how regrouped values should be combined. The iteratee is invoked with the\n * elements of each group: (...group).\n *\n * @static\n * @memberOf _\n * @since 3.8.0\n * @category Array\n * @param {Array} array The array of grouped elements to process.\n * @param {Function} [iteratee=_.identity] The function to combine\n * regrouped values.\n * @returns {Array} Returns the new array of regrouped elements.\n * @example\n *\n * var zipped = _.zip([1, 2], [10, 20], [100, 200]);\n * // => [[1, 10, 100], [2, 20, 200]]\n *\n * _.unzipWith(zipped, _.add);\n * // => [3, 30, 300]\n */\n function unzipWith(array, iteratee) {\n if (!(array && array.length)) {\n return [];\n }\n var result = unzip(array);\n if (iteratee == null) {\n return result;\n }\n return arrayMap(result, function(group) {\n return apply(iteratee, undefined, group);\n });\n }\n\n /**\n * Creates an array excluding all given values using\n * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * for equality comparisons.\n *\n * **Note:** Unlike `_.pull`, this method returns a new array.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @param {...*} [values] The values to exclude.\n * @returns {Array} Returns the new array of filtered values.\n * @see _.difference, _.xor\n * @example\n *\n * _.without([2, 1, 2, 3], 1, 2);\n * // => [3]\n */\n var without = baseRest(function(array, values) {\n return isArrayLikeObject(array)\n ? baseDifference(array, values)\n : [];\n });\n\n /**\n * Creates an array of unique values that is the\n * [symmetric difference](https://en.wikipedia.org/wiki/Symmetric_difference)\n * of the given arrays. The order of result values is determined by the order\n * they occur in the arrays.\n *\n * @static\n * @memberOf _\n * @since 2.4.0\n * @category Array\n * @param {...Array} [arrays] The arrays to inspect.\n * @returns {Array} Returns the new array of filtered values.\n * @see _.difference, _.without\n * @example\n *\n * _.xor([2, 1], [2, 3]);\n * // => [1, 3]\n */\n var xor = baseRest(function(arrays) {\n return baseXor(arrayFilter(arrays, isArrayLikeObject));\n });\n\n /**\n * This method is like `_.xor` except that it accepts `iteratee` which is\n * invoked for each element of each `arrays` to generate the criterion by\n * which by which they're compared. The order of result values is determined\n * by the order they occur in the arrays. The iteratee is invoked with one\n * argument: (value).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {...Array} [arrays] The arrays to inspect.\n * @param {Function} [iteratee=_.identity] The iteratee invoked per element.\n * @returns {Array} Returns the new array of filtered values.\n * @example\n *\n * _.xorBy([2.1, 1.2], [2.3, 3.4], Math.floor);\n * // => [1.2, 3.4]\n *\n * // The `_.property` iteratee shorthand.\n * _.xorBy([{ 'x': 1 }], [{ 'x': 2 }, { 'x': 1 }], 'x');\n * // => [{ 'x': 2 }]\n */\n var xorBy = baseRest(function(arrays) {\n var iteratee = last(arrays);\n if (isArrayLikeObject(iteratee)) {\n iteratee = undefined;\n }\n return baseXor(arrayFilter(arrays, isArrayLikeObject), getIteratee(iteratee, 2));\n });\n\n /**\n * This method is like `_.xor` except that it accepts `comparator` which is\n * invoked to compare elements of `arrays`. The order of result values is\n * determined by the order they occur in the arrays. The comparator is invoked\n * with two arguments: (arrVal, othVal).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {...Array} [arrays] The arrays to inspect.\n * @param {Function} [comparator] The comparator invoked per element.\n * @returns {Array} Returns the new array of filtered values.\n * @example\n *\n * var objects = [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }];\n * var others = [{ 'x': 1, 'y': 1 }, { 'x': 1, 'y': 2 }];\n *\n * _.xorWith(objects, others, _.isEqual);\n * // => [{ 'x': 2, 'y': 1 }, { 'x': 1, 'y': 1 }]\n */\n var xorWith = baseRest(function(arrays) {\n var comparator = last(arrays);\n comparator = typeof comparator == 'function' ? comparator : undefined;\n return baseXor(arrayFilter(arrays, isArrayLikeObject), undefined, comparator);\n });\n\n /**\n * Creates an array of grouped elements, the first of which contains the\n * first elements of the given arrays, the second of which contains the\n * second elements of the given arrays, and so on.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {...Array} [arrays] The arrays to process.\n * @returns {Array} Returns the new array of grouped elements.\n * @example\n *\n * _.zip(['a', 'b'], [1, 2], [true, false]);\n * // => [['a', 1, true], ['b', 2, false]]\n */\n var zip = baseRest(unzip);\n\n /**\n * This method is like `_.fromPairs` except that it accepts two arrays,\n * one of property identifiers and one of corresponding values.\n *\n * @static\n * @memberOf _\n * @since 0.4.0\n * @category Array\n * @param {Array} [props=[]] The property identifiers.\n * @param {Array} [values=[]] The property values.\n * @returns {Object} Returns the new object.\n * @example\n *\n * _.zipObject(['a', 'b'], [1, 2]);\n * // => { 'a': 1, 'b': 2 }\n */\n function zipObject(props, values) {\n return baseZipObject(props || [], values || [], assignValue);\n }\n\n /**\n * This method is like `_.zipObject` except that it supports property paths.\n *\n * @static\n * @memberOf _\n * @since 4.1.0\n * @category Array\n * @param {Array} [props=[]] The property identifiers.\n * @param {Array} [values=[]] The property values.\n * @returns {Object} Returns the new object.\n * @example\n *\n * _.zipObjectDeep(['a.b[0].c', 'a.b[1].d'], [1, 2]);\n * // => { 'a': { 'b': [{ 'c': 1 }, { 'd': 2 }] } }\n */\n function zipObjectDeep(props, values) {\n return baseZipObject(props || [], values || [], baseSet);\n }\n\n /**\n * This method is like `_.zip` except that it accepts `iteratee` to specify\n * how grouped values should be combined. The iteratee is invoked with the\n * elements of each group: (...group).\n *\n * @static\n * @memberOf _\n * @since 3.8.0\n * @category Array\n * @param {...Array} [arrays] The arrays to process.\n * @param {Function} [iteratee=_.identity] The function to combine\n * grouped values.\n * @returns {Array} Returns the new array of grouped elements.\n * @example\n *\n * _.zipWith([1, 2], [10, 20], [100, 200], function(a, b, c) {\n * return a + b + c;\n * });\n * // => [111, 222]\n */\n var zipWith = baseRest(function(arrays) {\n var length = arrays.length,\n iteratee = length > 1 ? arrays[length - 1] : undefined;\n\n iteratee = typeof iteratee == 'function' ? (arrays.pop(), iteratee) : undefined;\n return unzipWith(arrays, iteratee);\n });\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Creates a `lodash` wrapper instance that wraps `value` with explicit method\n * chain sequences enabled. The result of such sequences must be unwrapped\n * with `_#value`.\n *\n * @static\n * @memberOf _\n * @since 1.3.0\n * @category Seq\n * @param {*} value The value to wrap.\n * @returns {Object} Returns the new `lodash` wrapper instance.\n * @example\n *\n * var users = [\n * { 'user': 'barney', 'age': 36 },\n * { 'user': 'fred', 'age': 40 },\n * { 'user': 'pebbles', 'age': 1 }\n * ];\n *\n * var youngest = _\n * .chain(users)\n * .sortBy('age')\n * .map(function(o) {\n * return o.user + ' is ' + o.age;\n * })\n * .head()\n * .value();\n * // => 'pebbles is 1'\n */\n function chain(value) {\n var result = lodash(value);\n result.__chain__ = true;\n return result;\n }\n\n /**\n * This method invokes `interceptor` and returns `value`. The interceptor\n * is invoked with one argument; (value). The purpose of this method is to\n * \"tap into\" a method chain sequence in order to modify intermediate results.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Seq\n * @param {*} value The value to provide to `interceptor`.\n * @param {Function} interceptor The function to invoke.\n * @returns {*} Returns `value`.\n * @example\n *\n * _([1, 2, 3])\n * .tap(function(array) {\n * // Mutate input array.\n * array.pop();\n * })\n * .reverse()\n * .value();\n * // => [2, 1]\n */\n function tap(value, interceptor) {\n interceptor(value);\n return value;\n }\n\n /**\n * This method is like `_.tap` except that it returns the result of `interceptor`.\n * The purpose of this method is to \"pass thru\" values replacing intermediate\n * results in a method chain sequence.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Seq\n * @param {*} value The value to provide to `interceptor`.\n * @param {Function} interceptor The function to invoke.\n * @returns {*} Returns the result of `interceptor`.\n * @example\n *\n * _(' abc ')\n * .chain()\n * .trim()\n * .thru(function(value) {\n * return [value];\n * })\n * .value();\n * // => ['abc']\n */\n function thru(value, interceptor) {\n return interceptor(value);\n }\n\n /**\n * This method is the wrapper version of `_.at`.\n *\n * @name at\n * @memberOf _\n * @since 1.0.0\n * @category Seq\n * @param {...(string|string[])} [paths] The property paths to pick.\n * @returns {Object} Returns the new `lodash` wrapper instance.\n * @example\n *\n * var object = { 'a': [{ 'b': { 'c': 3 } }, 4] };\n *\n * _(object).at(['a[0].b.c', 'a[1]']).value();\n * // => [3, 4]\n */\n var wrapperAt = flatRest(function(paths) {\n var length = paths.length,\n start = length ? paths[0] : 0,\n value = this.__wrapped__,\n interceptor = function(object) { return baseAt(object, paths); };\n\n if (length > 1 || this.__actions__.length ||\n !(value instanceof LazyWrapper) || !isIndex(start)) {\n return this.thru(interceptor);\n }\n value = value.slice(start, +start + (length ? 1 : 0));\n value.__actions__.push({\n 'func': thru,\n 'args': [interceptor],\n 'thisArg': undefined\n });\n return new LodashWrapper(value, this.__chain__).thru(function(array) {\n if (length && !array.length) {\n array.push(undefined);\n }\n return array;\n });\n });\n\n /**\n * Creates a `lodash` wrapper instance with explicit method chain sequences enabled.\n *\n * @name chain\n * @memberOf _\n * @since 0.1.0\n * @category Seq\n * @returns {Object} Returns the new `lodash` wrapper instance.\n * @example\n *\n * var users = [\n * { 'user': 'barney', 'age': 36 },\n * { 'user': 'fred', 'age': 40 }\n * ];\n *\n * // A sequence without explicit chaining.\n * _(users).head();\n * // => { 'user': 'barney', 'age': 36 }\n *\n * // A sequence with explicit chaining.\n * _(users)\n * .chain()\n * .head()\n * .pick('user')\n * .value();\n * // => { 'user': 'barney' }\n */\n function wrapperChain() {\n return chain(this);\n }\n\n /**\n * Executes the chain sequence and returns the wrapped result.\n *\n * @name commit\n * @memberOf _\n * @since 3.2.0\n * @category Seq\n * @returns {Object} Returns the new `lodash` wrapper instance.\n * @example\n *\n * var array = [1, 2];\n * var wrapped = _(array).push(3);\n *\n * console.log(array);\n * // => [1, 2]\n *\n * wrapped = wrapped.commit();\n * console.log(array);\n * // => [1, 2, 3]\n *\n * wrapped.last();\n * // => 3\n *\n * console.log(array);\n * // => [1, 2, 3]\n */\n function wrapperCommit() {\n return new LodashWrapper(this.value(), this.__chain__);\n }\n\n /**\n * Gets the next value on a wrapped object following the\n * [iterator protocol](https://mdn.io/iteration_protocols#iterator).\n *\n * @name next\n * @memberOf _\n * @since 4.0.0\n * @category Seq\n * @returns {Object} Returns the next iterator value.\n * @example\n *\n * var wrapped = _([1, 2]);\n *\n * wrapped.next();\n * // => { 'done': false, 'value': 1 }\n *\n * wrapped.next();\n * // => { 'done': false, 'value': 2 }\n *\n * wrapped.next();\n * // => { 'done': true, 'value': undefined }\n */\n function wrapperNext() {\n if (this.__values__ === undefined) {\n this.__values__ = toArray(this.value());\n }\n var done = this.__index__ >= this.__values__.length,\n value = done ? undefined : this.__values__[this.__index__++];\n\n return { 'done': done, 'value': value };\n }\n\n /**\n * Enables the wrapper to be iterable.\n *\n * @name Symbol.iterator\n * @memberOf _\n * @since 4.0.0\n * @category Seq\n * @returns {Object} Returns the wrapper object.\n * @example\n *\n * var wrapped = _([1, 2]);\n *\n * wrapped[Symbol.iterator]() === wrapped;\n * // => true\n *\n * Array.from(wrapped);\n * // => [1, 2]\n */\n function wrapperToIterator() {\n return this;\n }\n\n /**\n * Creates a clone of the chain sequence planting `value` as the wrapped value.\n *\n * @name plant\n * @memberOf _\n * @since 3.2.0\n * @category Seq\n * @param {*} value The value to plant.\n * @returns {Object} Returns the new `lodash` wrapper instance.\n * @example\n *\n * function square(n) {\n * return n * n;\n * }\n *\n * var wrapped = _([1, 2]).map(square);\n * var other = wrapped.plant([3, 4]);\n *\n * other.value();\n * // => [9, 16]\n *\n * wrapped.value();\n * // => [1, 4]\n */\n function wrapperPlant(value) {\n var result,\n parent = this;\n\n while (parent instanceof baseLodash) {\n var clone = wrapperClone(parent);\n clone.__index__ = 0;\n clone.__values__ = undefined;\n if (result) {\n previous.__wrapped__ = clone;\n } else {\n result = clone;\n }\n var previous = clone;\n parent = parent.__wrapped__;\n }\n previous.__wrapped__ = value;\n return result;\n }\n\n /**\n * This method is the wrapper version of `_.reverse`.\n *\n * **Note:** This method mutates the wrapped array.\n *\n * @name reverse\n * @memberOf _\n * @since 0.1.0\n * @category Seq\n * @returns {Object} Returns the new `lodash` wrapper instance.\n * @example\n *\n * var array = [1, 2, 3];\n *\n * _(array).reverse().value()\n * // => [3, 2, 1]\n *\n * console.log(array);\n * // => [3, 2, 1]\n */\n function wrapperReverse() {\n var value = this.__wrapped__;\n if (value instanceof LazyWrapper) {\n var wrapped = value;\n if (this.__actions__.length) {\n wrapped = new LazyWrapper(this);\n }\n wrapped = wrapped.reverse();\n wrapped.__actions__.push({\n 'func': thru,\n 'args': [reverse],\n 'thisArg': undefined\n });\n return new LodashWrapper(wrapped, this.__chain__);\n }\n return this.thru(reverse);\n }\n\n /**\n * Executes the chain sequence to resolve the unwrapped value.\n *\n * @name value\n * @memberOf _\n * @since 0.1.0\n * @alias toJSON, valueOf\n * @category Seq\n * @returns {*} Returns the resolved unwrapped value.\n * @example\n *\n * _([1, 2, 3]).value();\n * // => [1, 2, 3]\n */\n function wrapperValue() {\n return baseWrapperValue(this.__wrapped__, this.__actions__);\n }\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Creates an object composed of keys generated from the results of running\n * each element of `collection` thru `iteratee`. The corresponding value of\n * each key is the number of times the key was returned by `iteratee`. The\n * iteratee is invoked with one argument: (value).\n *\n * @static\n * @memberOf _\n * @since 0.5.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [iteratee=_.identity] The iteratee to transform keys.\n * @returns {Object} Returns the composed aggregate object.\n * @example\n *\n * _.countBy([6.1, 4.2, 6.3], Math.floor);\n * // => { '4': 1, '6': 2 }\n *\n * // The `_.property` iteratee shorthand.\n * _.countBy(['one', 'two', 'three'], 'length');\n * // => { '3': 2, '5': 1 }\n */\n var countBy = createAggregator(function(result, value, key) {\n if (hasOwnProperty.call(result, key)) {\n ++result[key];\n } else {\n baseAssignValue(result, key, 1);\n }\n });\n\n /**\n * Checks if `predicate` returns truthy for **all** elements of `collection`.\n * Iteration is stopped once `predicate` returns falsey. The predicate is\n * invoked with three arguments: (value, index|key, collection).\n *\n * **Note:** This method returns `true` for\n * [empty collections](https://en.wikipedia.org/wiki/Empty_set) because\n * [everything is true](https://en.wikipedia.org/wiki/Vacuous_truth) of\n * elements of empty collections.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {boolean} Returns `true` if all elements pass the predicate check,\n * else `false`.\n * @example\n *\n * _.every([true, 1, null, 'yes'], Boolean);\n * // => false\n *\n * var users = [\n * { 'user': 'barney', 'age': 36, 'active': false },\n * { 'user': 'fred', 'age': 40, 'active': false }\n * ];\n *\n * // The `_.matches` iteratee shorthand.\n * _.every(users, { 'user': 'barney', 'active': false });\n * // => false\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.every(users, ['active', false]);\n * // => true\n *\n * // The `_.property` iteratee shorthand.\n * _.every(users, 'active');\n * // => false\n */\n function every(collection, predicate, guard) {\n var func = isArray(collection) ? arrayEvery : baseEvery;\n if (guard && isIterateeCall(collection, predicate, guard)) {\n predicate = undefined;\n }\n return func(collection, getIteratee(predicate, 3));\n }\n\n /**\n * Iterates over elements of `collection`, returning an array of all elements\n * `predicate` returns truthy for. The predicate is invoked with three\n * arguments: (value, index|key, collection).\n *\n * **Note:** Unlike `_.remove`, this method returns a new array.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @returns {Array} Returns the new filtered array.\n * @see _.reject\n * @example\n *\n * var users = [\n * { 'user': 'barney', 'age': 36, 'active': true },\n * { 'user': 'fred', 'age': 40, 'active': false }\n * ];\n *\n * _.filter(users, function(o) { return !o.active; });\n * // => objects for ['fred']\n *\n * // The `_.matches` iteratee shorthand.\n * _.filter(users, { 'age': 36, 'active': true });\n * // => objects for ['barney']\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.filter(users, ['active', false]);\n * // => objects for ['fred']\n *\n * // The `_.property` iteratee shorthand.\n * _.filter(users, 'active');\n * // => objects for ['barney']\n *\n * // Combining several predicates using `_.overEvery` or `_.overSome`.\n * _.filter(users, _.overSome([{ 'age': 36 }, ['age', 40]]));\n * // => objects for ['fred', 'barney']\n */\n function filter(collection, predicate) {\n var func = isArray(collection) ? arrayFilter : baseFilter;\n return func(collection, getIteratee(predicate, 3));\n }\n\n /**\n * Iterates over elements of `collection`, returning the first element\n * `predicate` returns truthy for. The predicate is invoked with three\n * arguments: (value, index|key, collection).\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Collection\n * @param {Array|Object} collection The collection to inspect.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @param {number} [fromIndex=0] The index to search from.\n * @returns {*} Returns the matched element, else `undefined`.\n * @example\n *\n * var users = [\n * { 'user': 'barney', 'age': 36, 'active': true },\n * { 'user': 'fred', 'age': 40, 'active': false },\n * { 'user': 'pebbles', 'age': 1, 'active': true }\n * ];\n *\n * _.find(users, function(o) { return o.age < 40; });\n * // => object for 'barney'\n *\n * // The `_.matches` iteratee shorthand.\n * _.find(users, { 'age': 1, 'active': true });\n * // => object for 'pebbles'\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.find(users, ['active', false]);\n * // => object for 'fred'\n *\n * // The `_.property` iteratee shorthand.\n * _.find(users, 'active');\n * // => object for 'barney'\n */\n var find = createFind(findIndex);\n\n /**\n * This method is like `_.find` except that it iterates over elements of\n * `collection` from right to left.\n *\n * @static\n * @memberOf _\n * @since 2.0.0\n * @category Collection\n * @param {Array|Object} collection The collection to inspect.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @param {number} [fromIndex=collection.length-1] The index to search from.\n * @returns {*} Returns the matched element, else `undefined`.\n * @example\n *\n * _.findLast([1, 2, 3, 4], function(n) {\n * return n % 2 == 1;\n * });\n * // => 3\n */\n var findLast = createFind(findLastIndex);\n\n /**\n * Creates a flattened array of values by running each element in `collection`\n * thru `iteratee` and flattening the mapped results. The iteratee is invoked\n * with three arguments: (value, index|key, collection).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @returns {Array} Returns the new flattened array.\n * @example\n *\n * function duplicate(n) {\n * return [n, n];\n * }\n *\n * _.flatMap([1, 2], duplicate);\n * // => [1, 1, 2, 2]\n */\n function flatMap(collection, iteratee) {\n return baseFlatten(map(collection, iteratee), 1);\n }\n\n /**\n * This method is like `_.flatMap` except that it recursively flattens the\n * mapped results.\n *\n * @static\n * @memberOf _\n * @since 4.7.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @returns {Array} Returns the new flattened array.\n * @example\n *\n * function duplicate(n) {\n * return [[[n, n]]];\n * }\n *\n * _.flatMapDeep([1, 2], duplicate);\n * // => [1, 1, 2, 2]\n */\n function flatMapDeep(collection, iteratee) {\n return baseFlatten(map(collection, iteratee), INFINITY);\n }\n\n /**\n * This method is like `_.flatMap` except that it recursively flattens the\n * mapped results up to `depth` times.\n *\n * @static\n * @memberOf _\n * @since 4.7.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @param {number} [depth=1] The maximum recursion depth.\n * @returns {Array} Returns the new flattened array.\n * @example\n *\n * function duplicate(n) {\n * return [[[n, n]]];\n * }\n *\n * _.flatMapDepth([1, 2], duplicate, 2);\n * // => [[1, 1], [2, 2]]\n */\n function flatMapDepth(collection, iteratee, depth) {\n depth = depth === undefined ? 1 : toInteger(depth);\n return baseFlatten(map(collection, iteratee), depth);\n }\n\n /**\n * Iterates over elements of `collection` and invokes `iteratee` for each element.\n * The iteratee is invoked with three arguments: (value, index|key, collection).\n * Iteratee functions may exit iteration early by explicitly returning `false`.\n *\n * **Note:** As with other \"Collections\" methods, objects with a \"length\"\n * property are iterated like arrays. To avoid this behavior use `_.forIn`\n * or `_.forOwn` for object iteration.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @alias each\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @returns {Array|Object} Returns `collection`.\n * @see _.forEachRight\n * @example\n *\n * _.forEach([1, 2], function(value) {\n * console.log(value);\n * });\n * // => Logs `1` then `2`.\n *\n * _.forEach({ 'a': 1, 'b': 2 }, function(value, key) {\n * console.log(key);\n * });\n * // => Logs 'a' then 'b' (iteration order is not guaranteed).\n */\n function forEach(collection, iteratee) {\n var func = isArray(collection) ? arrayEach : baseEach;\n return func(collection, getIteratee(iteratee, 3));\n }\n\n /**\n * This method is like `_.forEach` except that it iterates over elements of\n * `collection` from right to left.\n *\n * @static\n * @memberOf _\n * @since 2.0.0\n * @alias eachRight\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @returns {Array|Object} Returns `collection`.\n * @see _.forEach\n * @example\n *\n * _.forEachRight([1, 2], function(value) {\n * console.log(value);\n * });\n * // => Logs `2` then `1`.\n */\n function forEachRight(collection, iteratee) {\n var func = isArray(collection) ? arrayEachRight : baseEachRight;\n return func(collection, getIteratee(iteratee, 3));\n }\n\n /**\n * Creates an object composed of keys generated from the results of running\n * each element of `collection` thru `iteratee`. The order of grouped values\n * is determined by the order they occur in `collection`. The corresponding\n * value of each key is an array of elements responsible for generating the\n * key. The iteratee is invoked with one argument: (value).\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [iteratee=_.identity] The iteratee to transform keys.\n * @returns {Object} Returns the composed aggregate object.\n * @example\n *\n * _.groupBy([6.1, 4.2, 6.3], Math.floor);\n * // => { '4': [4.2], '6': [6.1, 6.3] }\n *\n * // The `_.property` iteratee shorthand.\n * _.groupBy(['one', 'two', 'three'], 'length');\n * // => { '3': ['one', 'two'], '5': ['three'] }\n */\n var groupBy = createAggregator(function(result, value, key) {\n if (hasOwnProperty.call(result, key)) {\n result[key].push(value);\n } else {\n baseAssignValue(result, key, [value]);\n }\n });\n\n /**\n * Checks if `value` is in `collection`. If `collection` is a string, it's\n * checked for a substring of `value`, otherwise\n * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * is used for equality comparisons. If `fromIndex` is negative, it's used as\n * the offset from the end of `collection`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Collection\n * @param {Array|Object|string} collection The collection to inspect.\n * @param {*} value The value to search for.\n * @param {number} [fromIndex=0] The index to search from.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.reduce`.\n * @returns {boolean} Returns `true` if `value` is found, else `false`.\n * @example\n *\n * _.includes([1, 2, 3], 1);\n * // => true\n *\n * _.includes([1, 2, 3], 1, 2);\n * // => false\n *\n * _.includes({ 'a': 1, 'b': 2 }, 1);\n * // => true\n *\n * _.includes('abcd', 'bc');\n * // => true\n */\n function includes(collection, value, fromIndex, guard) {\n collection = isArrayLike(collection) ? collection : values(collection);\n fromIndex = (fromIndex && !guard) ? toInteger(fromIndex) : 0;\n\n var length = collection.length;\n if (fromIndex < 0) {\n fromIndex = nativeMax(length + fromIndex, 0);\n }\n return isString(collection)\n ? (fromIndex <= length && collection.indexOf(value, fromIndex) > -1)\n : (!!length && baseIndexOf(collection, value, fromIndex) > -1);\n }\n\n /**\n * Invokes the method at `path` of each element in `collection`, returning\n * an array of the results of each invoked method. Any additional arguments\n * are provided to each invoked method. If `path` is a function, it's invoked\n * for, and `this` bound to, each element in `collection`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Array|Function|string} path The path of the method to invoke or\n * the function invoked per iteration.\n * @param {...*} [args] The arguments to invoke each method with.\n * @returns {Array} Returns the array of results.\n * @example\n *\n * _.invokeMap([[5, 1, 7], [3, 2, 1]], 'sort');\n * // => [[1, 5, 7], [1, 2, 3]]\n *\n * _.invokeMap([123, 456], String.prototype.split, '');\n * // => [['1', '2', '3'], ['4', '5', '6']]\n */\n var invokeMap = baseRest(function(collection, path, args) {\n var index = -1,\n isFunc = typeof path == 'function',\n result = isArrayLike(collection) ? Array(collection.length) : [];\n\n baseEach(collection, function(value) {\n result[++index] = isFunc ? apply(path, value, args) : baseInvoke(value, path, args);\n });\n return result;\n });\n\n /**\n * Creates an object composed of keys generated from the results of running\n * each element of `collection` thru `iteratee`. The corresponding value of\n * each key is the last element responsible for generating the key. The\n * iteratee is invoked with one argument: (value).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [iteratee=_.identity] The iteratee to transform keys.\n * @returns {Object} Returns the composed aggregate object.\n * @example\n *\n * var array = [\n * { 'dir': 'left', 'code': 97 },\n * { 'dir': 'right', 'code': 100 }\n * ];\n *\n * _.keyBy(array, function(o) {\n * return String.fromCharCode(o.code);\n * });\n * // => { 'a': { 'dir': 'left', 'code': 97 }, 'd': { 'dir': 'right', 'code': 100 } }\n *\n * _.keyBy(array, 'dir');\n * // => { 'left': { 'dir': 'left', 'code': 97 }, 'right': { 'dir': 'right', 'code': 100 } }\n */\n var keyBy = createAggregator(function(result, value, key) {\n baseAssignValue(result, key, value);\n });\n\n /**\n * Creates an array of values by running each element in `collection` thru\n * `iteratee`. The iteratee is invoked with three arguments:\n * (value, index|key, collection).\n *\n * Many lodash methods are guarded to work as iteratees for methods like\n * `_.every`, `_.filter`, `_.map`, `_.mapValues`, `_.reject`, and `_.some`.\n *\n * The guarded methods are:\n * `ary`, `chunk`, `curry`, `curryRight`, `drop`, `dropRight`, `every`,\n * `fill`, `invert`, `parseInt`, `random`, `range`, `rangeRight`, `repeat`,\n * `sampleSize`, `slice`, `some`, `sortBy`, `split`, `take`, `takeRight`,\n * `template`, `trim`, `trimEnd`, `trimStart`, and `words`\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @returns {Array} Returns the new mapped array.\n * @example\n *\n * function square(n) {\n * return n * n;\n * }\n *\n * _.map([4, 8], square);\n * // => [16, 64]\n *\n * _.map({ 'a': 4, 'b': 8 }, square);\n * // => [16, 64] (iteration order is not guaranteed)\n *\n * var users = [\n * { 'user': 'barney' },\n * { 'user': 'fred' }\n * ];\n *\n * // The `_.property` iteratee shorthand.\n * _.map(users, 'user');\n * // => ['barney', 'fred']\n */\n function map(collection, iteratee) {\n var func = isArray(collection) ? arrayMap : baseMap;\n return func(collection, getIteratee(iteratee, 3));\n }\n\n /**\n * This method is like `_.sortBy` except that it allows specifying the sort\n * orders of the iteratees to sort by. If `orders` is unspecified, all values\n * are sorted in ascending order. Otherwise, specify an order of \"desc\" for\n * descending or \"asc\" for ascending sort order of corresponding values.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Array[]|Function[]|Object[]|string[]} [iteratees=[_.identity]]\n * The iteratees to sort by.\n * @param {string[]} [orders] The sort orders of `iteratees`.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.reduce`.\n * @returns {Array} Returns the new sorted array.\n * @example\n *\n * var users = [\n * { 'user': 'fred', 'age': 48 },\n * { 'user': 'barney', 'age': 34 },\n * { 'user': 'fred', 'age': 40 },\n * { 'user': 'barney', 'age': 36 }\n * ];\n *\n * // Sort by `user` in ascending order and by `age` in descending order.\n * _.orderBy(users, ['user', 'age'], ['asc', 'desc']);\n * // => objects for [['barney', 36], ['barney', 34], ['fred', 48], ['fred', 40]]\n */\n function orderBy(collection, iteratees, orders, guard) {\n if (collection == null) {\n return [];\n }\n if (!isArray(iteratees)) {\n iteratees = iteratees == null ? [] : [iteratees];\n }\n orders = guard ? undefined : orders;\n if (!isArray(orders)) {\n orders = orders == null ? [] : [orders];\n }\n return baseOrderBy(collection, iteratees, orders);\n }\n\n /**\n * Creates an array of elements split into two groups, the first of which\n * contains elements `predicate` returns truthy for, the second of which\n * contains elements `predicate` returns falsey for. The predicate is\n * invoked with one argument: (value).\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @returns {Array} Returns the array of grouped elements.\n * @example\n *\n * var users = [\n * { 'user': 'barney', 'age': 36, 'active': false },\n * { 'user': 'fred', 'age': 40, 'active': true },\n * { 'user': 'pebbles', 'age': 1, 'active': false }\n * ];\n *\n * _.partition(users, function(o) { return o.active; });\n * // => objects for [['fred'], ['barney', 'pebbles']]\n *\n * // The `_.matches` iteratee shorthand.\n * _.partition(users, { 'age': 1, 'active': false });\n * // => objects for [['pebbles'], ['barney', 'fred']]\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.partition(users, ['active', false]);\n * // => objects for [['barney', 'pebbles'], ['fred']]\n *\n * // The `_.property` iteratee shorthand.\n * _.partition(users, 'active');\n * // => objects for [['fred'], ['barney', 'pebbles']]\n */\n var partition = createAggregator(function(result, value, key) {\n result[key ? 0 : 1].push(value);\n }, function() { return [[], []]; });\n\n /**\n * Reduces `collection` to a value which is the accumulated result of running\n * each element in `collection` thru `iteratee`, where each successive\n * invocation is supplied the return value of the previous. If `accumulator`\n * is not given, the first element of `collection` is used as the initial\n * value. The iteratee is invoked with four arguments:\n * (accumulator, value, index|key, collection).\n *\n * Many lodash methods are guarded to work as iteratees for methods like\n * `_.reduce`, `_.reduceRight`, and `_.transform`.\n *\n * The guarded methods are:\n * `assign`, `defaults`, `defaultsDeep`, `includes`, `merge`, `orderBy`,\n * and `sortBy`\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @param {*} [accumulator] The initial value.\n * @returns {*} Returns the accumulated value.\n * @see _.reduceRight\n * @example\n *\n * _.reduce([1, 2], function(sum, n) {\n * return sum + n;\n * }, 0);\n * // => 3\n *\n * _.reduce({ 'a': 1, 'b': 2, 'c': 1 }, function(result, value, key) {\n * (result[value] || (result[value] = [])).push(key);\n * return result;\n * }, {});\n * // => { '1': ['a', 'c'], '2': ['b'] } (iteration order is not guaranteed)\n */\n function reduce(collection, iteratee, accumulator) {\n var func = isArray(collection) ? arrayReduce : baseReduce,\n initAccum = arguments.length < 3;\n\n return func(collection, getIteratee(iteratee, 4), accumulator, initAccum, baseEach);\n }\n\n /**\n * This method is like `_.reduce` except that it iterates over elements of\n * `collection` from right to left.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @param {*} [accumulator] The initial value.\n * @returns {*} Returns the accumulated value.\n * @see _.reduce\n * @example\n *\n * var array = [[0, 1], [2, 3], [4, 5]];\n *\n * _.reduceRight(array, function(flattened, other) {\n * return flattened.concat(other);\n * }, []);\n * // => [4, 5, 2, 3, 0, 1]\n */\n function reduceRight(collection, iteratee, accumulator) {\n var func = isArray(collection) ? arrayReduceRight : baseReduce,\n initAccum = arguments.length < 3;\n\n return func(collection, getIteratee(iteratee, 4), accumulator, initAccum, baseEachRight);\n }\n\n /**\n * The opposite of `_.filter`; this method returns the elements of `collection`\n * that `predicate` does **not** return truthy for.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @returns {Array} Returns the new filtered array.\n * @see _.filter\n * @example\n *\n * var users = [\n * { 'user': 'barney', 'age': 36, 'active': false },\n * { 'user': 'fred', 'age': 40, 'active': true }\n * ];\n *\n * _.reject(users, function(o) { return !o.active; });\n * // => objects for ['fred']\n *\n * // The `_.matches` iteratee shorthand.\n * _.reject(users, { 'age': 40, 'active': true });\n * // => objects for ['barney']\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.reject(users, ['active', false]);\n * // => objects for ['fred']\n *\n * // The `_.property` iteratee shorthand.\n * _.reject(users, 'active');\n * // => objects for ['barney']\n */\n function reject(collection, predicate) {\n var func = isArray(collection) ? arrayFilter : baseFilter;\n return func(collection, negate(getIteratee(predicate, 3)));\n }\n\n /**\n * Gets a random element from `collection`.\n *\n * @static\n * @memberOf _\n * @since 2.0.0\n * @category Collection\n * @param {Array|Object} collection The collection to sample.\n * @returns {*} Returns the random element.\n * @example\n *\n * _.sample([1, 2, 3, 4]);\n * // => 2\n */\n function sample(collection) {\n var func = isArray(collection) ? arraySample : baseSample;\n return func(collection);\n }\n\n /**\n * Gets `n` random elements at unique keys from `collection` up to the\n * size of `collection`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Collection\n * @param {Array|Object} collection The collection to sample.\n * @param {number} [n=1] The number of elements to sample.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {Array} Returns the random elements.\n * @example\n *\n * _.sampleSize([1, 2, 3], 2);\n * // => [3, 1]\n *\n * _.sampleSize([1, 2, 3], 4);\n * // => [2, 3, 1]\n */\n function sampleSize(collection, n, guard) {\n if ((guard ? isIterateeCall(collection, n, guard) : n === undefined)) {\n n = 1;\n } else {\n n = toInteger(n);\n }\n var func = isArray(collection) ? arraySampleSize : baseSampleSize;\n return func(collection, n);\n }\n\n /**\n * Creates an array of shuffled values, using a version of the\n * [Fisher-Yates shuffle](https://en.wikipedia.org/wiki/Fisher-Yates_shuffle).\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Collection\n * @param {Array|Object} collection The collection to shuffle.\n * @returns {Array} Returns the new shuffled array.\n * @example\n *\n * _.shuffle([1, 2, 3, 4]);\n * // => [4, 1, 3, 2]\n */\n function shuffle(collection) {\n var func = isArray(collection) ? arrayShuffle : baseShuffle;\n return func(collection);\n }\n\n /**\n * Gets the size of `collection` by returning its length for array-like\n * values or the number of own enumerable string keyed properties for objects.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Collection\n * @param {Array|Object|string} collection The collection to inspect.\n * @returns {number} Returns the collection size.\n * @example\n *\n * _.size([1, 2, 3]);\n * // => 3\n *\n * _.size({ 'a': 1, 'b': 2 });\n * // => 2\n *\n * _.size('pebbles');\n * // => 7\n */\n function size(collection) {\n if (collection == null) {\n return 0;\n }\n if (isArrayLike(collection)) {\n return isString(collection) ? stringSize(collection) : collection.length;\n }\n var tag = getTag(collection);\n if (tag == mapTag || tag == setTag) {\n return collection.size;\n }\n return baseKeys(collection).length;\n }\n\n /**\n * Checks if `predicate` returns truthy for **any** element of `collection`.\n * Iteration is stopped once `predicate` returns truthy. The predicate is\n * invoked with three arguments: (value, index|key, collection).\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {boolean} Returns `true` if any element passes the predicate check,\n * else `false`.\n * @example\n *\n * _.some([null, 0, 'yes', false], Boolean);\n * // => true\n *\n * var users = [\n * { 'user': 'barney', 'active': true },\n * { 'user': 'fred', 'active': false }\n * ];\n *\n * // The `_.matches` iteratee shorthand.\n * _.some(users, { 'user': 'barney', 'active': false });\n * // => false\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.some(users, ['active', false]);\n * // => true\n *\n * // The `_.property` iteratee shorthand.\n * _.some(users, 'active');\n * // => true\n */\n function some(collection, predicate, guard) {\n var func = isArray(collection) ? arraySome : baseSome;\n if (guard && isIterateeCall(collection, predicate, guard)) {\n predicate = undefined;\n }\n return func(collection, getIteratee(predicate, 3));\n }\n\n /**\n * Creates an array of elements, sorted in ascending order by the results of\n * running each element in a collection thru each iteratee. This method\n * performs a stable sort, that is, it preserves the original sort order of\n * equal elements. The iteratees are invoked with one argument: (value).\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {...(Function|Function[])} [iteratees=[_.identity]]\n * The iteratees to sort by.\n * @returns {Array} Returns the new sorted array.\n * @example\n *\n * var users = [\n * { 'user': 'fred', 'age': 48 },\n * { 'user': 'barney', 'age': 36 },\n * { 'user': 'fred', 'age': 30 },\n * { 'user': 'barney', 'age': 34 }\n * ];\n *\n * _.sortBy(users, [function(o) { return o.user; }]);\n * // => objects for [['barney', 36], ['barney', 34], ['fred', 48], ['fred', 30]]\n *\n * _.sortBy(users, ['user', 'age']);\n * // => objects for [['barney', 34], ['barney', 36], ['fred', 30], ['fred', 48]]\n */\n var sortBy = baseRest(function(collection, iteratees) {\n if (collection == null) {\n return [];\n }\n var length = iteratees.length;\n if (length > 1 && isIterateeCall(collection, iteratees[0], iteratees[1])) {\n iteratees = [];\n } else if (length > 2 && isIterateeCall(iteratees[0], iteratees[1], iteratees[2])) {\n iteratees = [iteratees[0]];\n }\n return baseOrderBy(collection, baseFlatten(iteratees, 1), []);\n });\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Gets the timestamp of the number of milliseconds that have elapsed since\n * the Unix epoch (1 January 1970 00:00:00 UTC).\n *\n * @static\n * @memberOf _\n * @since 2.4.0\n * @category Date\n * @returns {number} Returns the timestamp.\n * @example\n *\n * _.defer(function(stamp) {\n * console.log(_.now() - stamp);\n * }, _.now());\n * // => Logs the number of milliseconds it took for the deferred invocation.\n */\n var now = ctxNow || function() {\n return root.Date.now();\n };\n\n /*------------------------------------------------------------------------*/\n\n /**\n * The opposite of `_.before`; this method creates a function that invokes\n * `func` once it's called `n` or more times.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {number} n The number of calls before `func` is invoked.\n * @param {Function} func The function to restrict.\n * @returns {Function} Returns the new restricted function.\n * @example\n *\n * var saves = ['profile', 'settings'];\n *\n * var done = _.after(saves.length, function() {\n * console.log('done saving!');\n * });\n *\n * _.forEach(saves, function(type) {\n * asyncSave({ 'type': type, 'complete': done });\n * });\n * // => Logs 'done saving!' after the two async saves have completed.\n */\n function after(n, func) {\n if (typeof func != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n n = toInteger(n);\n return function() {\n if (--n < 1) {\n return func.apply(this, arguments);\n }\n };\n }\n\n /**\n * Creates a function that invokes `func`, with up to `n` arguments,\n * ignoring any additional arguments.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Function\n * @param {Function} func The function to cap arguments for.\n * @param {number} [n=func.length] The arity cap.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {Function} Returns the new capped function.\n * @example\n *\n * _.map(['6', '8', '10'], _.ary(parseInt, 1));\n * // => [6, 8, 10]\n */\n function ary(func, n, guard) {\n n = guard ? undefined : n;\n n = (func && n == null) ? func.length : n;\n return createWrap(func, WRAP_ARY_FLAG, undefined, undefined, undefined, undefined, n);\n }\n\n /**\n * Creates a function that invokes `func`, with the `this` binding and arguments\n * of the created function, while it's called less than `n` times. Subsequent\n * calls to the created function return the result of the last `func` invocation.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Function\n * @param {number} n The number of calls at which `func` is no longer invoked.\n * @param {Function} func The function to restrict.\n * @returns {Function} Returns the new restricted function.\n * @example\n *\n * jQuery(element).on('click', _.before(5, addContactToList));\n * // => Allows adding up to 4 contacts to the list.\n */\n function before(n, func) {\n var result;\n if (typeof func != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n n = toInteger(n);\n return function() {\n if (--n > 0) {\n result = func.apply(this, arguments);\n }\n if (n <= 1) {\n func = undefined;\n }\n return result;\n };\n }\n\n /**\n * Creates a function that invokes `func` with the `this` binding of `thisArg`\n * and `partials` prepended to the arguments it receives.\n *\n * The `_.bind.placeholder` value, which defaults to `_` in monolithic builds,\n * may be used as a placeholder for partially applied arguments.\n *\n * **Note:** Unlike native `Function#bind`, this method doesn't set the \"length\"\n * property of bound functions.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {Function} func The function to bind.\n * @param {*} thisArg The `this` binding of `func`.\n * @param {...*} [partials] The arguments to be partially applied.\n * @returns {Function} Returns the new bound function.\n * @example\n *\n * function greet(greeting, punctuation) {\n * return greeting + ' ' + this.user + punctuation;\n * }\n *\n * var object = { 'user': 'fred' };\n *\n * var bound = _.bind(greet, object, 'hi');\n * bound('!');\n * // => 'hi fred!'\n *\n * // Bound with placeholders.\n * var bound = _.bind(greet, object, _, '!');\n * bound('hi');\n * // => 'hi fred!'\n */\n var bind = baseRest(function(func, thisArg, partials) {\n var bitmask = WRAP_BIND_FLAG;\n if (partials.length) {\n var holders = replaceHolders(partials, getHolder(bind));\n bitmask |= WRAP_PARTIAL_FLAG;\n }\n return createWrap(func, bitmask, thisArg, partials, holders);\n });\n\n /**\n * Creates a function that invokes the method at `object[key]` with `partials`\n * prepended to the arguments it receives.\n *\n * This method differs from `_.bind` by allowing bound functions to reference\n * methods that may be redefined or don't yet exist. See\n * [Peter Michaux's article](http://peter.michaux.ca/articles/lazy-function-definition-pattern)\n * for more details.\n *\n * The `_.bindKey.placeholder` value, which defaults to `_` in monolithic\n * builds, may be used as a placeholder for partially applied arguments.\n *\n * @static\n * @memberOf _\n * @since 0.10.0\n * @category Function\n * @param {Object} object The object to invoke the method on.\n * @param {string} key The key of the method.\n * @param {...*} [partials] The arguments to be partially applied.\n * @returns {Function} Returns the new bound function.\n * @example\n *\n * var object = {\n * 'user': 'fred',\n * 'greet': function(greeting, punctuation) {\n * return greeting + ' ' + this.user + punctuation;\n * }\n * };\n *\n * var bound = _.bindKey(object, 'greet', 'hi');\n * bound('!');\n * // => 'hi fred!'\n *\n * object.greet = function(greeting, punctuation) {\n * return greeting + 'ya ' + this.user + punctuation;\n * };\n *\n * bound('!');\n * // => 'hiya fred!'\n *\n * // Bound with placeholders.\n * var bound = _.bindKey(object, 'greet', _, '!');\n * bound('hi');\n * // => 'hiya fred!'\n */\n var bindKey = baseRest(function(object, key, partials) {\n var bitmask = WRAP_BIND_FLAG | WRAP_BIND_KEY_FLAG;\n if (partials.length) {\n var holders = replaceHolders(partials, getHolder(bindKey));\n bitmask |= WRAP_PARTIAL_FLAG;\n }\n return createWrap(key, bitmask, object, partials, holders);\n });\n\n /**\n * Creates a function that accepts arguments of `func` and either invokes\n * `func` returning its result, if at least `arity` number of arguments have\n * been provided, or returns a function that accepts the remaining `func`\n * arguments, and so on. The arity of `func` may be specified if `func.length`\n * is not sufficient.\n *\n * The `_.curry.placeholder` value, which defaults to `_` in monolithic builds,\n * may be used as a placeholder for provided arguments.\n *\n * **Note:** This method doesn't set the \"length\" property of curried functions.\n *\n * @static\n * @memberOf _\n * @since 2.0.0\n * @category Function\n * @param {Function} func The function to curry.\n * @param {number} [arity=func.length] The arity of `func`.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {Function} Returns the new curried function.\n * @example\n *\n * var abc = function(a, b, c) {\n * return [a, b, c];\n * };\n *\n * var curried = _.curry(abc);\n *\n * curried(1)(2)(3);\n * // => [1, 2, 3]\n *\n * curried(1, 2)(3);\n * // => [1, 2, 3]\n *\n * curried(1, 2, 3);\n * // => [1, 2, 3]\n *\n * // Curried with placeholders.\n * curried(1)(_, 3)(2);\n * // => [1, 2, 3]\n */\n function curry(func, arity, guard) {\n arity = guard ? undefined : arity;\n var result = createWrap(func, WRAP_CURRY_FLAG, undefined, undefined, undefined, undefined, undefined, arity);\n result.placeholder = curry.placeholder;\n return result;\n }\n\n /**\n * This method is like `_.curry` except that arguments are applied to `func`\n * in the manner of `_.partialRight` instead of `_.partial`.\n *\n * The `_.curryRight.placeholder` value, which defaults to `_` in monolithic\n * builds, may be used as a placeholder for provided arguments.\n *\n * **Note:** This method doesn't set the \"length\" property of curried functions.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Function\n * @param {Function} func The function to curry.\n * @param {number} [arity=func.length] The arity of `func`.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {Function} Returns the new curried function.\n * @example\n *\n * var abc = function(a, b, c) {\n * return [a, b, c];\n * };\n *\n * var curried = _.curryRight(abc);\n *\n * curried(3)(2)(1);\n * // => [1, 2, 3]\n *\n * curried(2, 3)(1);\n * // => [1, 2, 3]\n *\n * curried(1, 2, 3);\n * // => [1, 2, 3]\n *\n * // Curried with placeholders.\n * curried(3)(1, _)(2);\n * // => [1, 2, 3]\n */\n function curryRight(func, arity, guard) {\n arity = guard ? undefined : arity;\n var result = createWrap(func, WRAP_CURRY_RIGHT_FLAG, undefined, undefined, undefined, undefined, undefined, arity);\n result.placeholder = curryRight.placeholder;\n return result;\n }\n\n /**\n * Creates a debounced function that delays invoking `func` until after `wait`\n * milliseconds have elapsed since the last time the debounced function was\n * invoked. The debounced function comes with a `cancel` method to cancel\n * delayed `func` invocations and a `flush` method to immediately invoke them.\n * Provide `options` to indicate whether `func` should be invoked on the\n * leading and/or trailing edge of the `wait` timeout. The `func` is invoked\n * with the last arguments provided to the debounced function. Subsequent\n * calls to the debounced function return the result of the last `func`\n * invocation.\n *\n * **Note:** If `leading` and `trailing` options are `true`, `func` is\n * invoked on the trailing edge of the timeout only if the debounced function\n * is invoked more than once during the `wait` timeout.\n *\n * If `wait` is `0` and `leading` is `false`, `func` invocation is deferred\n * until to the next tick, similar to `setTimeout` with a timeout of `0`.\n *\n * See [David Corbacho's article](https://css-tricks.com/debouncing-throttling-explained-examples/)\n * for details over the differences between `_.debounce` and `_.throttle`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {Function} func The function to debounce.\n * @param {number} [wait=0] The number of milliseconds to delay.\n * @param {Object} [options={}] The options object.\n * @param {boolean} [options.leading=false]\n * Specify invoking on the leading edge of the timeout.\n * @param {number} [options.maxWait]\n * The maximum time `func` is allowed to be delayed before it's invoked.\n * @param {boolean} [options.trailing=true]\n * Specify invoking on the trailing edge of the timeout.\n * @returns {Function} Returns the new debounced function.\n * @example\n *\n * // Avoid costly calculations while the window size is in flux.\n * jQuery(window).on('resize', _.debounce(calculateLayout, 150));\n *\n * // Invoke `sendMail` when clicked, debouncing subsequent calls.\n * jQuery(element).on('click', _.debounce(sendMail, 300, {\n * 'leading': true,\n * 'trailing': false\n * }));\n *\n * // Ensure `batchLog` is invoked once after 1 second of debounced calls.\n * var debounced = _.debounce(batchLog, 250, { 'maxWait': 1000 });\n * var source = new EventSource('/stream');\n * jQuery(source).on('message', debounced);\n *\n * // Cancel the trailing debounced invocation.\n * jQuery(window).on('popstate', debounced.cancel);\n */\n function debounce(func, wait, options) {\n var lastArgs,\n lastThis,\n maxWait,\n result,\n timerId,\n lastCallTime,\n lastInvokeTime = 0,\n leading = false,\n maxing = false,\n trailing = true;\n\n if (typeof func != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n wait = toNumber(wait) || 0;\n if (isObject(options)) {\n leading = !!options.leading;\n maxing = 'maxWait' in options;\n maxWait = maxing ? nativeMax(toNumber(options.maxWait) || 0, wait) : maxWait;\n trailing = 'trailing' in options ? !!options.trailing : trailing;\n }\n\n function invokeFunc(time) {\n var args = lastArgs,\n thisArg = lastThis;\n\n lastArgs = lastThis = undefined;\n lastInvokeTime = time;\n result = func.apply(thisArg, args);\n return result;\n }\n\n function leadingEdge(time) {\n // Reset any `maxWait` timer.\n lastInvokeTime = time;\n // Start the timer for the trailing edge.\n timerId = setTimeout(timerExpired, wait);\n // Invoke the leading edge.\n return leading ? invokeFunc(time) : result;\n }\n\n function remainingWait(time) {\n var timeSinceLastCall = time - lastCallTime,\n timeSinceLastInvoke = time - lastInvokeTime,\n timeWaiting = wait - timeSinceLastCall;\n\n return maxing\n ? nativeMin(timeWaiting, maxWait - timeSinceLastInvoke)\n : timeWaiting;\n }\n\n function shouldInvoke(time) {\n var timeSinceLastCall = time - lastCallTime,\n timeSinceLastInvoke = time - lastInvokeTime;\n\n // Either this is the first call, activity has stopped and we're at the\n // trailing edge, the system time has gone backwards and we're treating\n // it as the trailing edge, or we've hit the `maxWait` limit.\n return (lastCallTime === undefined || (timeSinceLastCall >= wait) ||\n (timeSinceLastCall < 0) || (maxing && timeSinceLastInvoke >= maxWait));\n }\n\n function timerExpired() {\n var time = now();\n if (shouldInvoke(time)) {\n return trailingEdge(time);\n }\n // Restart the timer.\n timerId = setTimeout(timerExpired, remainingWait(time));\n }\n\n function trailingEdge(time) {\n timerId = undefined;\n\n // Only invoke if we have `lastArgs` which means `func` has been\n // debounced at least once.\n if (trailing && lastArgs) {\n return invokeFunc(time);\n }\n lastArgs = lastThis = undefined;\n return result;\n }\n\n function cancel() {\n if (timerId !== undefined) {\n clearTimeout(timerId);\n }\n lastInvokeTime = 0;\n lastArgs = lastCallTime = lastThis = timerId = undefined;\n }\n\n function flush() {\n return timerId === undefined ? result : trailingEdge(now());\n }\n\n function debounced() {\n var time = now(),\n isInvoking = shouldInvoke(time);\n\n lastArgs = arguments;\n lastThis = this;\n lastCallTime = time;\n\n if (isInvoking) {\n if (timerId === undefined) {\n return leadingEdge(lastCallTime);\n }\n if (maxing) {\n // Handle invocations in a tight loop.\n clearTimeout(timerId);\n timerId = setTimeout(timerExpired, wait);\n return invokeFunc(lastCallTime);\n }\n }\n if (timerId === undefined) {\n timerId = setTimeout(timerExpired, wait);\n }\n return result;\n }\n debounced.cancel = cancel;\n debounced.flush = flush;\n return debounced;\n }\n\n /**\n * Defers invoking the `func` until the current call stack has cleared. Any\n * additional arguments are provided to `func` when it's invoked.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {Function} func The function to defer.\n * @param {...*} [args] The arguments to invoke `func` with.\n * @returns {number} Returns the timer id.\n * @example\n *\n * _.defer(function(text) {\n * console.log(text);\n * }, 'deferred');\n * // => Logs 'deferred' after one millisecond.\n */\n var defer = baseRest(function(func, args) {\n return baseDelay(func, 1, args);\n });\n\n /**\n * Invokes `func` after `wait` milliseconds. Any additional arguments are\n * provided to `func` when it's invoked.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {Function} func The function to delay.\n * @param {number} wait The number of milliseconds to delay invocation.\n * @param {...*} [args] The arguments to invoke `func` with.\n * @returns {number} Returns the timer id.\n * @example\n *\n * _.delay(function(text) {\n * console.log(text);\n * }, 1000, 'later');\n * // => Logs 'later' after one second.\n */\n var delay = baseRest(function(func, wait, args) {\n return baseDelay(func, toNumber(wait) || 0, args);\n });\n\n /**\n * Creates a function that invokes `func` with arguments reversed.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Function\n * @param {Function} func The function to flip arguments for.\n * @returns {Function} Returns the new flipped function.\n * @example\n *\n * var flipped = _.flip(function() {\n * return _.toArray(arguments);\n * });\n *\n * flipped('a', 'b', 'c', 'd');\n * // => ['d', 'c', 'b', 'a']\n */\n function flip(func) {\n return createWrap(func, WRAP_FLIP_FLAG);\n }\n\n /**\n * Creates a function that memoizes the result of `func`. If `resolver` is\n * provided, it determines the cache key for storing the result based on the\n * arguments provided to the memoized function. By default, the first argument\n * provided to the memoized function is used as the map cache key. The `func`\n * is invoked with the `this` binding of the memoized function.\n *\n * **Note:** The cache is exposed as the `cache` property on the memoized\n * function. Its creation may be customized by replacing the `_.memoize.Cache`\n * constructor with one whose instances implement the\n * [`Map`](http://ecma-international.org/ecma-262/7.0/#sec-properties-of-the-map-prototype-object)\n * method interface of `clear`, `delete`, `get`, `has`, and `set`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {Function} func The function to have its output memoized.\n * @param {Function} [resolver] The function to resolve the cache key.\n * @returns {Function} Returns the new memoized function.\n * @example\n *\n * var object = { 'a': 1, 'b': 2 };\n * var other = { 'c': 3, 'd': 4 };\n *\n * var values = _.memoize(_.values);\n * values(object);\n * // => [1, 2]\n *\n * values(other);\n * // => [3, 4]\n *\n * object.a = 2;\n * values(object);\n * // => [1, 2]\n *\n * // Modify the result cache.\n * values.cache.set(object, ['a', 'b']);\n * values(object);\n * // => ['a', 'b']\n *\n * // Replace `_.memoize.Cache`.\n * _.memoize.Cache = WeakMap;\n */\n function memoize(func, resolver) {\n if (typeof func != 'function' || (resolver != null && typeof resolver != 'function')) {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n var memoized = function() {\n var args = arguments,\n key = resolver ? resolver.apply(this, args) : args[0],\n cache = memoized.cache;\n\n if (cache.has(key)) {\n return cache.get(key);\n }\n var result = func.apply(this, args);\n memoized.cache = cache.set(key, result) || cache;\n return result;\n };\n memoized.cache = new (memoize.Cache || MapCache);\n return memoized;\n }\n\n // Expose `MapCache`.\n memoize.Cache = MapCache;\n\n /**\n * Creates a function that negates the result of the predicate `func`. The\n * `func` predicate is invoked with the `this` binding and arguments of the\n * created function.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Function\n * @param {Function} predicate The predicate to negate.\n * @returns {Function} Returns the new negated function.\n * @example\n *\n * function isEven(n) {\n * return n % 2 == 0;\n * }\n *\n * _.filter([1, 2, 3, 4, 5, 6], _.negate(isEven));\n * // => [1, 3, 5]\n */\n function negate(predicate) {\n if (typeof predicate != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n return function() {\n var args = arguments;\n switch (args.length) {\n case 0: return !predicate.call(this);\n case 1: return !predicate.call(this, args[0]);\n case 2: return !predicate.call(this, args[0], args[1]);\n case 3: return !predicate.call(this, args[0], args[1], args[2]);\n }\n return !predicate.apply(this, args);\n };\n }\n\n /**\n * Creates a function that is restricted to invoking `func` once. Repeat calls\n * to the function return the value of the first invocation. The `func` is\n * invoked with the `this` binding and arguments of the created function.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {Function} func The function to restrict.\n * @returns {Function} Returns the new restricted function.\n * @example\n *\n * var initialize = _.once(createApplication);\n * initialize();\n * initialize();\n * // => `createApplication` is invoked once\n */\n function once(func) {\n return before(2, func);\n }\n\n /**\n * Creates a function that invokes `func` with its arguments transformed.\n *\n * @static\n * @since 4.0.0\n * @memberOf _\n * @category Function\n * @param {Function} func The function to wrap.\n * @param {...(Function|Function[])} [transforms=[_.identity]]\n * The argument transforms.\n * @returns {Function} Returns the new function.\n * @example\n *\n * function doubled(n) {\n * return n * 2;\n * }\n *\n * function square(n) {\n * return n * n;\n * }\n *\n * var func = _.overArgs(function(x, y) {\n * return [x, y];\n * }, [square, doubled]);\n *\n * func(9, 3);\n * // => [81, 6]\n *\n * func(10, 5);\n * // => [100, 10]\n */\n var overArgs = castRest(function(func, transforms) {\n transforms = (transforms.length == 1 && isArray(transforms[0]))\n ? arrayMap(transforms[0], baseUnary(getIteratee()))\n : arrayMap(baseFlatten(transforms, 1), baseUnary(getIteratee()));\n\n var funcsLength = transforms.length;\n return baseRest(function(args) {\n var index = -1,\n length = nativeMin(args.length, funcsLength);\n\n while (++index < length) {\n args[index] = transforms[index].call(this, args[index]);\n }\n return apply(func, this, args);\n });\n });\n\n /**\n * Creates a function that invokes `func` with `partials` prepended to the\n * arguments it receives. This method is like `_.bind` except it does **not**\n * alter the `this` binding.\n *\n * The `_.partial.placeholder` value, which defaults to `_` in monolithic\n * builds, may be used as a placeholder for partially applied arguments.\n *\n * **Note:** This method doesn't set the \"length\" property of partially\n * applied functions.\n *\n * @static\n * @memberOf _\n * @since 0.2.0\n * @category Function\n * @param {Function} func The function to partially apply arguments to.\n * @param {...*} [partials] The arguments to be partially applied.\n * @returns {Function} Returns the new partially applied function.\n * @example\n *\n * function greet(greeting, name) {\n * return greeting + ' ' + name;\n * }\n *\n * var sayHelloTo = _.partial(greet, 'hello');\n * sayHelloTo('fred');\n * // => 'hello fred'\n *\n * // Partially applied with placeholders.\n * var greetFred = _.partial(greet, _, 'fred');\n * greetFred('hi');\n * // => 'hi fred'\n */\n var partial = baseRest(function(func, partials) {\n var holders = replaceHolders(partials, getHolder(partial));\n return createWrap(func, WRAP_PARTIAL_FLAG, undefined, partials, holders);\n });\n\n /**\n * This method is like `_.partial` except that partially applied arguments\n * are appended to the arguments it receives.\n *\n * The `_.partialRight.placeholder` value, which defaults to `_` in monolithic\n * builds, may be used as a placeholder for partially applied arguments.\n *\n * **Note:** This method doesn't set the \"length\" property of partially\n * applied functions.\n *\n * @static\n * @memberOf _\n * @since 1.0.0\n * @category Function\n * @param {Function} func The function to partially apply arguments to.\n * @param {...*} [partials] The arguments to be partially applied.\n * @returns {Function} Returns the new partially applied function.\n * @example\n *\n * function greet(greeting, name) {\n * return greeting + ' ' + name;\n * }\n *\n * var greetFred = _.partialRight(greet, 'fred');\n * greetFred('hi');\n * // => 'hi fred'\n *\n * // Partially applied with placeholders.\n * var sayHelloTo = _.partialRight(greet, 'hello', _);\n * sayHelloTo('fred');\n * // => 'hello fred'\n */\n var partialRight = baseRest(function(func, partials) {\n var holders = replaceHolders(partials, getHolder(partialRight));\n return createWrap(func, WRAP_PARTIAL_RIGHT_FLAG, undefined, partials, holders);\n });\n\n /**\n * Creates a function that invokes `func` with arguments arranged according\n * to the specified `indexes` where the argument value at the first index is\n * provided as the first argument, the argument value at the second index is\n * provided as the second argument, and so on.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Function\n * @param {Function} func The function to rearrange arguments for.\n * @param {...(number|number[])} indexes The arranged argument indexes.\n * @returns {Function} Returns the new function.\n * @example\n *\n * var rearged = _.rearg(function(a, b, c) {\n * return [a, b, c];\n * }, [2, 0, 1]);\n *\n * rearged('b', 'c', 'a')\n * // => ['a', 'b', 'c']\n */\n var rearg = flatRest(function(func, indexes) {\n return createWrap(func, WRAP_REARG_FLAG, undefined, undefined, undefined, indexes);\n });\n\n /**\n * Creates a function that invokes `func` with the `this` binding of the\n * created function and arguments from `start` and beyond provided as\n * an array.\n *\n * **Note:** This method is based on the\n * [rest parameter](https://mdn.io/rest_parameters).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Function\n * @param {Function} func The function to apply a rest parameter to.\n * @param {number} [start=func.length-1] The start position of the rest parameter.\n * @returns {Function} Returns the new function.\n * @example\n *\n * var say = _.rest(function(what, names) {\n * return what + ' ' + _.initial(names).join(', ') +\n * (_.size(names) > 1 ? ', & ' : '') + _.last(names);\n * });\n *\n * say('hello', 'fred', 'barney', 'pebbles');\n * // => 'hello fred, barney, & pebbles'\n */\n function rest(func, start) {\n if (typeof func != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n start = start === undefined ? start : toInteger(start);\n return baseRest(func, start);\n }\n\n /**\n * Creates a function that invokes `func` with the `this` binding of the\n * create function and an array of arguments much like\n * [`Function#apply`](http://www.ecma-international.org/ecma-262/7.0/#sec-function.prototype.apply).\n *\n * **Note:** This method is based on the\n * [spread operator](https://mdn.io/spread_operator).\n *\n * @static\n * @memberOf _\n * @since 3.2.0\n * @category Function\n * @param {Function} func The function to spread arguments over.\n * @param {number} [start=0] The start position of the spread.\n * @returns {Function} Returns the new function.\n * @example\n *\n * var say = _.spread(function(who, what) {\n * return who + ' says ' + what;\n * });\n *\n * say(['fred', 'hello']);\n * // => 'fred says hello'\n *\n * var numbers = Promise.all([\n * Promise.resolve(40),\n * Promise.resolve(36)\n * ]);\n *\n * numbers.then(_.spread(function(x, y) {\n * return x + y;\n * }));\n * // => a Promise of 76\n */\n function spread(func, start) {\n if (typeof func != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n start = start == null ? 0 : nativeMax(toInteger(start), 0);\n return baseRest(function(args) {\n var array = args[start],\n otherArgs = castSlice(args, 0, start);\n\n if (array) {\n arrayPush(otherArgs, array);\n }\n return apply(func, this, otherArgs);\n });\n }\n\n /**\n * Creates a throttled function that only invokes `func` at most once per\n * every `wait` milliseconds. The throttled function comes with a `cancel`\n * method to cancel delayed `func` invocations and a `flush` method to\n * immediately invoke them. Provide `options` to indicate whether `func`\n * should be invoked on the leading and/or trailing edge of the `wait`\n * timeout. The `func` is invoked with the last arguments provided to the\n * throttled function. Subsequent calls to the throttled function return the\n * result of the last `func` invocation.\n *\n * **Note:** If `leading` and `trailing` options are `true`, `func` is\n * invoked on the trailing edge of the timeout only if the throttled function\n * is invoked more than once during the `wait` timeout.\n *\n * If `wait` is `0` and `leading` is `false`, `func` invocation is deferred\n * until to the next tick, similar to `setTimeout` with a timeout of `0`.\n *\n * See [David Corbacho's article](https://css-tricks.com/debouncing-throttling-explained-examples/)\n * for details over the differences between `_.throttle` and `_.debounce`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {Function} func The function to throttle.\n * @param {number} [wait=0] The number of milliseconds to throttle invocations to.\n * @param {Object} [options={}] The options object.\n * @param {boolean} [options.leading=true]\n * Specify invoking on the leading edge of the timeout.\n * @param {boolean} [options.trailing=true]\n * Specify invoking on the trailing edge of the timeout.\n * @returns {Function} Returns the new throttled function.\n * @example\n *\n * // Avoid excessively updating the position while scrolling.\n * jQuery(window).on('scroll', _.throttle(updatePosition, 100));\n *\n * // Invoke `renewToken` when the click event is fired, but not more than once every 5 minutes.\n * var throttled = _.throttle(renewToken, 300000, { 'trailing': false });\n * jQuery(element).on('click', throttled);\n *\n * // Cancel the trailing throttled invocation.\n * jQuery(window).on('popstate', throttled.cancel);\n */\n function throttle(func, wait, options) {\n var leading = true,\n trailing = true;\n\n if (typeof func != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n if (isObject(options)) {\n leading = 'leading' in options ? !!options.leading : leading;\n trailing = 'trailing' in options ? !!options.trailing : trailing;\n }\n return debounce(func, wait, {\n 'leading': leading,\n 'maxWait': wait,\n 'trailing': trailing\n });\n }\n\n /**\n * Creates a function that accepts up to one argument, ignoring any\n * additional arguments.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Function\n * @param {Function} func The function to cap arguments for.\n * @returns {Function} Returns the new capped function.\n * @example\n *\n * _.map(['6', '8', '10'], _.unary(parseInt));\n * // => [6, 8, 10]\n */\n function unary(func) {\n return ary(func, 1);\n }\n\n /**\n * Creates a function that provides `value` to `wrapper` as its first\n * argument. Any additional arguments provided to the function are appended\n * to those provided to the `wrapper`. The wrapper is invoked with the `this`\n * binding of the created function.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {*} value The value to wrap.\n * @param {Function} [wrapper=identity] The wrapper function.\n * @returns {Function} Returns the new function.\n * @example\n *\n * var p = _.wrap(_.escape, function(func, text) {\n * return '

' + func(text) + '

';\n * });\n *\n * p('fred, barney, & pebbles');\n * // => '

fred, barney, & pebbles

'\n */\n function wrap(value, wrapper) {\n return partial(castFunction(wrapper), value);\n }\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Casts `value` as an array if it's not one.\n *\n * @static\n * @memberOf _\n * @since 4.4.0\n * @category Lang\n * @param {*} value The value to inspect.\n * @returns {Array} Returns the cast array.\n * @example\n *\n * _.castArray(1);\n * // => [1]\n *\n * _.castArray({ 'a': 1 });\n * // => [{ 'a': 1 }]\n *\n * _.castArray('abc');\n * // => ['abc']\n *\n * _.castArray(null);\n * // => [null]\n *\n * _.castArray(undefined);\n * // => [undefined]\n *\n * _.castArray();\n * // => []\n *\n * var array = [1, 2, 3];\n * console.log(_.castArray(array) === array);\n * // => true\n */\n function castArray() {\n if (!arguments.length) {\n return [];\n }\n var value = arguments[0];\n return isArray(value) ? value : [value];\n }\n\n /**\n * Creates a shallow clone of `value`.\n *\n * **Note:** This method is loosely based on the\n * [structured clone algorithm](https://mdn.io/Structured_clone_algorithm)\n * and supports cloning arrays, array buffers, booleans, date objects, maps,\n * numbers, `Object` objects, regexes, sets, strings, symbols, and typed\n * arrays. The own enumerable properties of `arguments` objects are cloned\n * as plain objects. An empty object is returned for uncloneable values such\n * as error objects, functions, DOM nodes, and WeakMaps.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to clone.\n * @returns {*} Returns the cloned value.\n * @see _.cloneDeep\n * @example\n *\n * var objects = [{ 'a': 1 }, { 'b': 2 }];\n *\n * var shallow = _.clone(objects);\n * console.log(shallow[0] === objects[0]);\n * // => true\n */\n function clone(value) {\n return baseClone(value, CLONE_SYMBOLS_FLAG);\n }\n\n /**\n * This method is like `_.clone` except that it accepts `customizer` which\n * is invoked to produce the cloned value. If `customizer` returns `undefined`,\n * cloning is handled by the method instead. The `customizer` is invoked with\n * up to four arguments; (value [, index|key, object, stack]).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to clone.\n * @param {Function} [customizer] The function to customize cloning.\n * @returns {*} Returns the cloned value.\n * @see _.cloneDeepWith\n * @example\n *\n * function customizer(value) {\n * if (_.isElement(value)) {\n * return value.cloneNode(false);\n * }\n * }\n *\n * var el = _.cloneWith(document.body, customizer);\n *\n * console.log(el === document.body);\n * // => false\n * console.log(el.nodeName);\n * // => 'BODY'\n * console.log(el.childNodes.length);\n * // => 0\n */\n function cloneWith(value, customizer) {\n customizer = typeof customizer == 'function' ? customizer : undefined;\n return baseClone(value, CLONE_SYMBOLS_FLAG, customizer);\n }\n\n /**\n * This method is like `_.clone` except that it recursively clones `value`.\n *\n * @static\n * @memberOf _\n * @since 1.0.0\n * @category Lang\n * @param {*} value The value to recursively clone.\n * @returns {*} Returns the deep cloned value.\n * @see _.clone\n * @example\n *\n * var objects = [{ 'a': 1 }, { 'b': 2 }];\n *\n * var deep = _.cloneDeep(objects);\n * console.log(deep[0] === objects[0]);\n * // => false\n */\n function cloneDeep(value) {\n return baseClone(value, CLONE_DEEP_FLAG | CLONE_SYMBOLS_FLAG);\n }\n\n /**\n * This method is like `_.cloneWith` except that it recursively clones `value`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to recursively clone.\n * @param {Function} [customizer] The function to customize cloning.\n * @returns {*} Returns the deep cloned value.\n * @see _.cloneWith\n * @example\n *\n * function customizer(value) {\n * if (_.isElement(value)) {\n * return value.cloneNode(true);\n * }\n * }\n *\n * var el = _.cloneDeepWith(document.body, customizer);\n *\n * console.log(el === document.body);\n * // => false\n * console.log(el.nodeName);\n * // => 'BODY'\n * console.log(el.childNodes.length);\n * // => 20\n */\n function cloneDeepWith(value, customizer) {\n customizer = typeof customizer == 'function' ? customizer : undefined;\n return baseClone(value, CLONE_DEEP_FLAG | CLONE_SYMBOLS_FLAG, customizer);\n }\n\n /**\n * Checks if `object` conforms to `source` by invoking the predicate\n * properties of `source` with the corresponding property values of `object`.\n *\n * **Note:** This method is equivalent to `_.conforms` when `source` is\n * partially applied.\n *\n * @static\n * @memberOf _\n * @since 4.14.0\n * @category Lang\n * @param {Object} object The object to inspect.\n * @param {Object} source The object of property predicates to conform to.\n * @returns {boolean} Returns `true` if `object` conforms, else `false`.\n * @example\n *\n * var object = { 'a': 1, 'b': 2 };\n *\n * _.conformsTo(object, { 'b': function(n) { return n > 1; } });\n * // => true\n *\n * _.conformsTo(object, { 'b': function(n) { return n > 2; } });\n * // => false\n */\n function conformsTo(object, source) {\n return source == null || baseConformsTo(object, source, keys(source));\n }\n\n /**\n * Performs a\n * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * comparison between two values to determine if they are equivalent.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if the values are equivalent, else `false`.\n * @example\n *\n * var object = { 'a': 1 };\n * var other = { 'a': 1 };\n *\n * _.eq(object, object);\n * // => true\n *\n * _.eq(object, other);\n * // => false\n *\n * _.eq('a', 'a');\n * // => true\n *\n * _.eq('a', Object('a'));\n * // => false\n *\n * _.eq(NaN, NaN);\n * // => true\n */\n function eq(value, other) {\n return value === other || (value !== value && other !== other);\n }\n\n /**\n * Checks if `value` is greater than `other`.\n *\n * @static\n * @memberOf _\n * @since 3.9.0\n * @category Lang\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if `value` is greater than `other`,\n * else `false`.\n * @see _.lt\n * @example\n *\n * _.gt(3, 1);\n * // => true\n *\n * _.gt(3, 3);\n * // => false\n *\n * _.gt(1, 3);\n * // => false\n */\n var gt = createRelationalOperation(baseGt);\n\n /**\n * Checks if `value` is greater than or equal to `other`.\n *\n * @static\n * @memberOf _\n * @since 3.9.0\n * @category Lang\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if `value` is greater than or equal to\n * `other`, else `false`.\n * @see _.lte\n * @example\n *\n * _.gte(3, 1);\n * // => true\n *\n * _.gte(3, 3);\n * // => true\n *\n * _.gte(1, 3);\n * // => false\n */\n var gte = createRelationalOperation(function(value, other) {\n return value >= other;\n });\n\n /**\n * Checks if `value` is likely an `arguments` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an `arguments` object,\n * else `false`.\n * @example\n *\n * _.isArguments(function() { return arguments; }());\n * // => true\n *\n * _.isArguments([1, 2, 3]);\n * // => false\n */\n var isArguments = baseIsArguments(function() { return arguments; }()) ? baseIsArguments : function(value) {\n return isObjectLike(value) && hasOwnProperty.call(value, 'callee') &&\n !propertyIsEnumerable.call(value, 'callee');\n };\n\n /**\n * Checks if `value` is classified as an `Array` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an array, else `false`.\n * @example\n *\n * _.isArray([1, 2, 3]);\n * // => true\n *\n * _.isArray(document.body.children);\n * // => false\n *\n * _.isArray('abc');\n * // => false\n *\n * _.isArray(_.noop);\n * // => false\n */\n var isArray = Array.isArray;\n\n /**\n * Checks if `value` is classified as an `ArrayBuffer` object.\n *\n * @static\n * @memberOf _\n * @since 4.3.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an array buffer, else `false`.\n * @example\n *\n * _.isArrayBuffer(new ArrayBuffer(2));\n * // => true\n *\n * _.isArrayBuffer(new Array(2));\n * // => false\n */\n var isArrayBuffer = nodeIsArrayBuffer ? baseUnary(nodeIsArrayBuffer) : baseIsArrayBuffer;\n\n /**\n * Checks if `value` is array-like. A value is considered array-like if it's\n * not a function and has a `value.length` that's an integer greater than or\n * equal to `0` and less than or equal to `Number.MAX_SAFE_INTEGER`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is array-like, else `false`.\n * @example\n *\n * _.isArrayLike([1, 2, 3]);\n * // => true\n *\n * _.isArrayLike(document.body.children);\n * // => true\n *\n * _.isArrayLike('abc');\n * // => true\n *\n * _.isArrayLike(_.noop);\n * // => false\n */\n function isArrayLike(value) {\n return value != null && isLength(value.length) && !isFunction(value);\n }\n\n /**\n * This method is like `_.isArrayLike` except that it also checks if `value`\n * is an object.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an array-like object,\n * else `false`.\n * @example\n *\n * _.isArrayLikeObject([1, 2, 3]);\n * // => true\n *\n * _.isArrayLikeObject(document.body.children);\n * // => true\n *\n * _.isArrayLikeObject('abc');\n * // => false\n *\n * _.isArrayLikeObject(_.noop);\n * // => false\n */\n function isArrayLikeObject(value) {\n return isObjectLike(value) && isArrayLike(value);\n }\n\n /**\n * Checks if `value` is classified as a boolean primitive or object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a boolean, else `false`.\n * @example\n *\n * _.isBoolean(false);\n * // => true\n *\n * _.isBoolean(null);\n * // => false\n */\n function isBoolean(value) {\n return value === true || value === false ||\n (isObjectLike(value) && baseGetTag(value) == boolTag);\n }\n\n /**\n * Checks if `value` is a buffer.\n *\n * @static\n * @memberOf _\n * @since 4.3.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a buffer, else `false`.\n * @example\n *\n * _.isBuffer(new Buffer(2));\n * // => true\n *\n * _.isBuffer(new Uint8Array(2));\n * // => false\n */\n var isBuffer = nativeIsBuffer || stubFalse;\n\n /**\n * Checks if `value` is classified as a `Date` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a date object, else `false`.\n * @example\n *\n * _.isDate(new Date);\n * // => true\n *\n * _.isDate('Mon April 23 2012');\n * // => false\n */\n var isDate = nodeIsDate ? baseUnary(nodeIsDate) : baseIsDate;\n\n /**\n * Checks if `value` is likely a DOM element.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a DOM element, else `false`.\n * @example\n *\n * _.isElement(document.body);\n * // => true\n *\n * _.isElement('');\n * // => false\n */\n function isElement(value) {\n return isObjectLike(value) && value.nodeType === 1 && !isPlainObject(value);\n }\n\n /**\n * Checks if `value` is an empty object, collection, map, or set.\n *\n * Objects are considered empty if they have no own enumerable string keyed\n * properties.\n *\n * Array-like values such as `arguments` objects, arrays, buffers, strings, or\n * jQuery-like collections are considered empty if they have a `length` of `0`.\n * Similarly, maps and sets are considered empty if they have a `size` of `0`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is empty, else `false`.\n * @example\n *\n * _.isEmpty(null);\n * // => true\n *\n * _.isEmpty(true);\n * // => true\n *\n * _.isEmpty(1);\n * // => true\n *\n * _.isEmpty([1, 2, 3]);\n * // => false\n *\n * _.isEmpty({ 'a': 1 });\n * // => false\n */\n function isEmpty(value) {\n if (value == null) {\n return true;\n }\n if (isArrayLike(value) &&\n (isArray(value) || typeof value == 'string' || typeof value.splice == 'function' ||\n isBuffer(value) || isTypedArray(value) || isArguments(value))) {\n return !value.length;\n }\n var tag = getTag(value);\n if (tag == mapTag || tag == setTag) {\n return !value.size;\n }\n if (isPrototype(value)) {\n return !baseKeys(value).length;\n }\n for (var key in value) {\n if (hasOwnProperty.call(value, key)) {\n return false;\n }\n }\n return true;\n }\n\n /**\n * Performs a deep comparison between two values to determine if they are\n * equivalent.\n *\n * **Note:** This method supports comparing arrays, array buffers, booleans,\n * date objects, error objects, maps, numbers, `Object` objects, regexes,\n * sets, strings, symbols, and typed arrays. `Object` objects are compared\n * by their own, not inherited, enumerable properties. Functions and DOM\n * nodes are compared by strict equality, i.e. `===`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if the values are equivalent, else `false`.\n * @example\n *\n * var object = { 'a': 1 };\n * var other = { 'a': 1 };\n *\n * _.isEqual(object, other);\n * // => true\n *\n * object === other;\n * // => false\n */\n function isEqual(value, other) {\n return baseIsEqual(value, other);\n }\n\n /**\n * This method is like `_.isEqual` except that it accepts `customizer` which\n * is invoked to compare values. If `customizer` returns `undefined`, comparisons\n * are handled by the method instead. The `customizer` is invoked with up to\n * six arguments: (objValue, othValue [, index|key, object, other, stack]).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @param {Function} [customizer] The function to customize comparisons.\n * @returns {boolean} Returns `true` if the values are equivalent, else `false`.\n * @example\n *\n * function isGreeting(value) {\n * return /^h(?:i|ello)$/.test(value);\n * }\n *\n * function customizer(objValue, othValue) {\n * if (isGreeting(objValue) && isGreeting(othValue)) {\n * return true;\n * }\n * }\n *\n * var array = ['hello', 'goodbye'];\n * var other = ['hi', 'goodbye'];\n *\n * _.isEqualWith(array, other, customizer);\n * // => true\n */\n function isEqualWith(value, other, customizer) {\n customizer = typeof customizer == 'function' ? customizer : undefined;\n var result = customizer ? customizer(value, other) : undefined;\n return result === undefined ? baseIsEqual(value, other, undefined, customizer) : !!result;\n }\n\n /**\n * Checks if `value` is an `Error`, `EvalError`, `RangeError`, `ReferenceError`,\n * `SyntaxError`, `TypeError`, or `URIError` object.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an error object, else `false`.\n * @example\n *\n * _.isError(new Error);\n * // => true\n *\n * _.isError(Error);\n * // => false\n */\n function isError(value) {\n if (!isObjectLike(value)) {\n return false;\n }\n var tag = baseGetTag(value);\n return tag == errorTag || tag == domExcTag ||\n (typeof value.message == 'string' && typeof value.name == 'string' && !isPlainObject(value));\n }\n\n /**\n * Checks if `value` is a finite primitive number.\n *\n * **Note:** This method is based on\n * [`Number.isFinite`](https://mdn.io/Number/isFinite).\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a finite number, else `false`.\n * @example\n *\n * _.isFinite(3);\n * // => true\n *\n * _.isFinite(Number.MIN_VALUE);\n * // => true\n *\n * _.isFinite(Infinity);\n * // => false\n *\n * _.isFinite('3');\n * // => false\n */\n function isFinite(value) {\n return typeof value == 'number' && nativeIsFinite(value);\n }\n\n /**\n * Checks if `value` is classified as a `Function` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a function, else `false`.\n * @example\n *\n * _.isFunction(_);\n * // => true\n *\n * _.isFunction(/abc/);\n * // => false\n */\n function isFunction(value) {\n if (!isObject(value)) {\n return false;\n }\n // The use of `Object#toString` avoids issues with the `typeof` operator\n // in Safari 9 which returns 'object' for typed arrays and other constructors.\n var tag = baseGetTag(value);\n return tag == funcTag || tag == genTag || tag == asyncTag || tag == proxyTag;\n }\n\n /**\n * Checks if `value` is an integer.\n *\n * **Note:** This method is based on\n * [`Number.isInteger`](https://mdn.io/Number/isInteger).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an integer, else `false`.\n * @example\n *\n * _.isInteger(3);\n * // => true\n *\n * _.isInteger(Number.MIN_VALUE);\n * // => false\n *\n * _.isInteger(Infinity);\n * // => false\n *\n * _.isInteger('3');\n * // => false\n */\n function isInteger(value) {\n return typeof value == 'number' && value == toInteger(value);\n }\n\n /**\n * Checks if `value` is a valid array-like length.\n *\n * **Note:** This method is loosely based on\n * [`ToLength`](http://ecma-international.org/ecma-262/7.0/#sec-tolength).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a valid length, else `false`.\n * @example\n *\n * _.isLength(3);\n * // => true\n *\n * _.isLength(Number.MIN_VALUE);\n * // => false\n *\n * _.isLength(Infinity);\n * // => false\n *\n * _.isLength('3');\n * // => false\n */\n function isLength(value) {\n return typeof value == 'number' &&\n value > -1 && value % 1 == 0 && value <= MAX_SAFE_INTEGER;\n }\n\n /**\n * Checks if `value` is the\n * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)\n * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an object, else `false`.\n * @example\n *\n * _.isObject({});\n * // => true\n *\n * _.isObject([1, 2, 3]);\n * // => true\n *\n * _.isObject(_.noop);\n * // => true\n *\n * _.isObject(null);\n * // => false\n */\n function isObject(value) {\n var type = typeof value;\n return value != null && (type == 'object' || type == 'function');\n }\n\n /**\n * Checks if `value` is object-like. A value is object-like if it's not `null`\n * and has a `typeof` result of \"object\".\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is object-like, else `false`.\n * @example\n *\n * _.isObjectLike({});\n * // => true\n *\n * _.isObjectLike([1, 2, 3]);\n * // => true\n *\n * _.isObjectLike(_.noop);\n * // => false\n *\n * _.isObjectLike(null);\n * // => false\n */\n function isObjectLike(value) {\n return value != null && typeof value == 'object';\n }\n\n /**\n * Checks if `value` is classified as a `Map` object.\n *\n * @static\n * @memberOf _\n * @since 4.3.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a map, else `false`.\n * @example\n *\n * _.isMap(new Map);\n * // => true\n *\n * _.isMap(new WeakMap);\n * // => false\n */\n var isMap = nodeIsMap ? baseUnary(nodeIsMap) : baseIsMap;\n\n /**\n * Performs a partial deep comparison between `object` and `source` to\n * determine if `object` contains equivalent property values.\n *\n * **Note:** This method is equivalent to `_.matches` when `source` is\n * partially applied.\n *\n * Partial comparisons will match empty array and empty object `source`\n * values against any array or object value, respectively. See `_.isEqual`\n * for a list of supported value comparisons.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Lang\n * @param {Object} object The object to inspect.\n * @param {Object} source The object of property values to match.\n * @returns {boolean} Returns `true` if `object` is a match, else `false`.\n * @example\n *\n * var object = { 'a': 1, 'b': 2 };\n *\n * _.isMatch(object, { 'b': 2 });\n * // => true\n *\n * _.isMatch(object, { 'b': 1 });\n * // => false\n */\n function isMatch(object, source) {\n return object === source || baseIsMatch(object, source, getMatchData(source));\n }\n\n /**\n * This method is like `_.isMatch` except that it accepts `customizer` which\n * is invoked to compare values. If `customizer` returns `undefined`, comparisons\n * are handled by the method instead. The `customizer` is invoked with five\n * arguments: (objValue, srcValue, index|key, object, source).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {Object} object The object to inspect.\n * @param {Object} source The object of property values to match.\n * @param {Function} [customizer] The function to customize comparisons.\n * @returns {boolean} Returns `true` if `object` is a match, else `false`.\n * @example\n *\n * function isGreeting(value) {\n * return /^h(?:i|ello)$/.test(value);\n * }\n *\n * function customizer(objValue, srcValue) {\n * if (isGreeting(objValue) && isGreeting(srcValue)) {\n * return true;\n * }\n * }\n *\n * var object = { 'greeting': 'hello' };\n * var source = { 'greeting': 'hi' };\n *\n * _.isMatchWith(object, source, customizer);\n * // => true\n */\n function isMatchWith(object, source, customizer) {\n customizer = typeof customizer == 'function' ? customizer : undefined;\n return baseIsMatch(object, source, getMatchData(source), customizer);\n }\n\n /**\n * Checks if `value` is `NaN`.\n *\n * **Note:** This method is based on\n * [`Number.isNaN`](https://mdn.io/Number/isNaN) and is not the same as\n * global [`isNaN`](https://mdn.io/isNaN) which returns `true` for\n * `undefined` and other non-number values.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is `NaN`, else `false`.\n * @example\n *\n * _.isNaN(NaN);\n * // => true\n *\n * _.isNaN(new Number(NaN));\n * // => true\n *\n * isNaN(undefined);\n * // => true\n *\n * _.isNaN(undefined);\n * // => false\n */\n function isNaN(value) {\n // An `NaN` primitive is the only value that is not equal to itself.\n // Perform the `toStringTag` check first to avoid errors with some\n // ActiveX objects in IE.\n return isNumber(value) && value != +value;\n }\n\n /**\n * Checks if `value` is a pristine native function.\n *\n * **Note:** This method can't reliably detect native functions in the presence\n * of the core-js package because core-js circumvents this kind of detection.\n * Despite multiple requests, the core-js maintainer has made it clear: any\n * attempt to fix the detection will be obstructed. As a result, we're left\n * with little choice but to throw an error. Unfortunately, this also affects\n * packages, like [babel-polyfill](https://www.npmjs.com/package/babel-polyfill),\n * which rely on core-js.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a native function,\n * else `false`.\n * @example\n *\n * _.isNative(Array.prototype.push);\n * // => true\n *\n * _.isNative(_);\n * // => false\n */\n function isNative(value) {\n if (isMaskable(value)) {\n throw new Error(CORE_ERROR_TEXT);\n }\n return baseIsNative(value);\n }\n\n /**\n * Checks if `value` is `null`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is `null`, else `false`.\n * @example\n *\n * _.isNull(null);\n * // => true\n *\n * _.isNull(void 0);\n * // => false\n */\n function isNull(value) {\n return value === null;\n }\n\n /**\n * Checks if `value` is `null` or `undefined`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is nullish, else `false`.\n * @example\n *\n * _.isNil(null);\n * // => true\n *\n * _.isNil(void 0);\n * // => true\n *\n * _.isNil(NaN);\n * // => false\n */\n function isNil(value) {\n return value == null;\n }\n\n /**\n * Checks if `value` is classified as a `Number` primitive or object.\n *\n * **Note:** To exclude `Infinity`, `-Infinity`, and `NaN`, which are\n * classified as numbers, use the `_.isFinite` method.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a number, else `false`.\n * @example\n *\n * _.isNumber(3);\n * // => true\n *\n * _.isNumber(Number.MIN_VALUE);\n * // => true\n *\n * _.isNumber(Infinity);\n * // => true\n *\n * _.isNumber('3');\n * // => false\n */\n function isNumber(value) {\n return typeof value == 'number' ||\n (isObjectLike(value) && baseGetTag(value) == numberTag);\n }\n\n /**\n * Checks if `value` is a plain object, that is, an object created by the\n * `Object` constructor or one with a `[[Prototype]]` of `null`.\n *\n * @static\n * @memberOf _\n * @since 0.8.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a plain object, else `false`.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * }\n *\n * _.isPlainObject(new Foo);\n * // => false\n *\n * _.isPlainObject([1, 2, 3]);\n * // => false\n *\n * _.isPlainObject({ 'x': 0, 'y': 0 });\n * // => true\n *\n * _.isPlainObject(Object.create(null));\n * // => true\n */\n function isPlainObject(value) {\n if (!isObjectLike(value) || baseGetTag(value) != objectTag) {\n return false;\n }\n var proto = getPrototype(value);\n if (proto === null) {\n return true;\n }\n var Ctor = hasOwnProperty.call(proto, 'constructor') && proto.constructor;\n return typeof Ctor == 'function' && Ctor instanceof Ctor &&\n funcToString.call(Ctor) == objectCtorString;\n }\n\n /**\n * Checks if `value` is classified as a `RegExp` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a regexp, else `false`.\n * @example\n *\n * _.isRegExp(/abc/);\n * // => true\n *\n * _.isRegExp('/abc/');\n * // => false\n */\n var isRegExp = nodeIsRegExp ? baseUnary(nodeIsRegExp) : baseIsRegExp;\n\n /**\n * Checks if `value` is a safe integer. An integer is safe if it's an IEEE-754\n * double precision number which isn't the result of a rounded unsafe integer.\n *\n * **Note:** This method is based on\n * [`Number.isSafeInteger`](https://mdn.io/Number/isSafeInteger).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a safe integer, else `false`.\n * @example\n *\n * _.isSafeInteger(3);\n * // => true\n *\n * _.isSafeInteger(Number.MIN_VALUE);\n * // => false\n *\n * _.isSafeInteger(Infinity);\n * // => false\n *\n * _.isSafeInteger('3');\n * // => false\n */\n function isSafeInteger(value) {\n return isInteger(value) && value >= -MAX_SAFE_INTEGER && value <= MAX_SAFE_INTEGER;\n }\n\n /**\n * Checks if `value` is classified as a `Set` object.\n *\n * @static\n * @memberOf _\n * @since 4.3.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a set, else `false`.\n * @example\n *\n * _.isSet(new Set);\n * // => true\n *\n * _.isSet(new WeakSet);\n * // => false\n */\n var isSet = nodeIsSet ? baseUnary(nodeIsSet) : baseIsSet;\n\n /**\n * Checks if `value` is classified as a `String` primitive or object.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a string, else `false`.\n * @example\n *\n * _.isString('abc');\n * // => true\n *\n * _.isString(1);\n * // => false\n */\n function isString(value) {\n return typeof value == 'string' ||\n (!isArray(value) && isObjectLike(value) && baseGetTag(value) == stringTag);\n }\n\n /**\n * Checks if `value` is classified as a `Symbol` primitive or object.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a symbol, else `false`.\n * @example\n *\n * _.isSymbol(Symbol.iterator);\n * // => true\n *\n * _.isSymbol('abc');\n * // => false\n */\n function isSymbol(value) {\n return typeof value == 'symbol' ||\n (isObjectLike(value) && baseGetTag(value) == symbolTag);\n }\n\n /**\n * Checks if `value` is classified as a typed array.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a typed array, else `false`.\n * @example\n *\n * _.isTypedArray(new Uint8Array);\n * // => true\n *\n * _.isTypedArray([]);\n * // => false\n */\n var isTypedArray = nodeIsTypedArray ? baseUnary(nodeIsTypedArray) : baseIsTypedArray;\n\n /**\n * Checks if `value` is `undefined`.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is `undefined`, else `false`.\n * @example\n *\n * _.isUndefined(void 0);\n * // => true\n *\n * _.isUndefined(null);\n * // => false\n */\n function isUndefined(value) {\n return value === undefined;\n }\n\n /**\n * Checks if `value` is classified as a `WeakMap` object.\n *\n * @static\n * @memberOf _\n * @since 4.3.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a weak map, else `false`.\n * @example\n *\n * _.isWeakMap(new WeakMap);\n * // => true\n *\n * _.isWeakMap(new Map);\n * // => false\n */\n function isWeakMap(value) {\n return isObjectLike(value) && getTag(value) == weakMapTag;\n }\n\n /**\n * Checks if `value` is classified as a `WeakSet` object.\n *\n * @static\n * @memberOf _\n * @since 4.3.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a weak set, else `false`.\n * @example\n *\n * _.isWeakSet(new WeakSet);\n * // => true\n *\n * _.isWeakSet(new Set);\n * // => false\n */\n function isWeakSet(value) {\n return isObjectLike(value) && baseGetTag(value) == weakSetTag;\n }\n\n /**\n * Checks if `value` is less than `other`.\n *\n * @static\n * @memberOf _\n * @since 3.9.0\n * @category Lang\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if `value` is less than `other`,\n * else `false`.\n * @see _.gt\n * @example\n *\n * _.lt(1, 3);\n * // => true\n *\n * _.lt(3, 3);\n * // => false\n *\n * _.lt(3, 1);\n * // => false\n */\n var lt = createRelationalOperation(baseLt);\n\n /**\n * Checks if `value` is less than or equal to `other`.\n *\n * @static\n * @memberOf _\n * @since 3.9.0\n * @category Lang\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if `value` is less than or equal to\n * `other`, else `false`.\n * @see _.gte\n * @example\n *\n * _.lte(1, 3);\n * // => true\n *\n * _.lte(3, 3);\n * // => true\n *\n * _.lte(3, 1);\n * // => false\n */\n var lte = createRelationalOperation(function(value, other) {\n return value <= other;\n });\n\n /**\n * Converts `value` to an array.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Lang\n * @param {*} value The value to convert.\n * @returns {Array} Returns the converted array.\n * @example\n *\n * _.toArray({ 'a': 1, 'b': 2 });\n * // => [1, 2]\n *\n * _.toArray('abc');\n * // => ['a', 'b', 'c']\n *\n * _.toArray(1);\n * // => []\n *\n * _.toArray(null);\n * // => []\n */\n function toArray(value) {\n if (!value) {\n return [];\n }\n if (isArrayLike(value)) {\n return isString(value) ? stringToArray(value) : copyArray(value);\n }\n if (symIterator && value[symIterator]) {\n return iteratorToArray(value[symIterator]());\n }\n var tag = getTag(value),\n func = tag == mapTag ? mapToArray : (tag == setTag ? setToArray : values);\n\n return func(value);\n }\n\n /**\n * Converts `value` to a finite number.\n *\n * @static\n * @memberOf _\n * @since 4.12.0\n * @category Lang\n * @param {*} value The value to convert.\n * @returns {number} Returns the converted number.\n * @example\n *\n * _.toFinite(3.2);\n * // => 3.2\n *\n * _.toFinite(Number.MIN_VALUE);\n * // => 5e-324\n *\n * _.toFinite(Infinity);\n * // => 1.7976931348623157e+308\n *\n * _.toFinite('3.2');\n * // => 3.2\n */\n function toFinite(value) {\n if (!value) {\n return value === 0 ? value : 0;\n }\n value = toNumber(value);\n if (value === INFINITY || value === -INFINITY) {\n var sign = (value < 0 ? -1 : 1);\n return sign * MAX_INTEGER;\n }\n return value === value ? value : 0;\n }\n\n /**\n * Converts `value` to an integer.\n *\n * **Note:** This method is loosely based on\n * [`ToInteger`](http://www.ecma-international.org/ecma-262/7.0/#sec-tointeger).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to convert.\n * @returns {number} Returns the converted integer.\n * @example\n *\n * _.toInteger(3.2);\n * // => 3\n *\n * _.toInteger(Number.MIN_VALUE);\n * // => 0\n *\n * _.toInteger(Infinity);\n * // => 1.7976931348623157e+308\n *\n * _.toInteger('3.2');\n * // => 3\n */\n function toInteger(value) {\n var result = toFinite(value),\n remainder = result % 1;\n\n return result === result ? (remainder ? result - remainder : result) : 0;\n }\n\n /**\n * Converts `value` to an integer suitable for use as the length of an\n * array-like object.\n *\n * **Note:** This method is based on\n * [`ToLength`](http://ecma-international.org/ecma-262/7.0/#sec-tolength).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to convert.\n * @returns {number} Returns the converted integer.\n * @example\n *\n * _.toLength(3.2);\n * // => 3\n *\n * _.toLength(Number.MIN_VALUE);\n * // => 0\n *\n * _.toLength(Infinity);\n * // => 4294967295\n *\n * _.toLength('3.2');\n * // => 3\n */\n function toLength(value) {\n return value ? baseClamp(toInteger(value), 0, MAX_ARRAY_LENGTH) : 0;\n }\n\n /**\n * Converts `value` to a number.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to process.\n * @returns {number} Returns the number.\n * @example\n *\n * _.toNumber(3.2);\n * // => 3.2\n *\n * _.toNumber(Number.MIN_VALUE);\n * // => 5e-324\n *\n * _.toNumber(Infinity);\n * // => Infinity\n *\n * _.toNumber('3.2');\n * // => 3.2\n */\n function toNumber(value) {\n if (typeof value == 'number') {\n return value;\n }\n if (isSymbol(value)) {\n return NAN;\n }\n if (isObject(value)) {\n var other = typeof value.valueOf == 'function' ? value.valueOf() : value;\n value = isObject(other) ? (other + '') : other;\n }\n if (typeof value != 'string') {\n return value === 0 ? value : +value;\n }\n value = baseTrim(value);\n var isBinary = reIsBinary.test(value);\n return (isBinary || reIsOctal.test(value))\n ? freeParseInt(value.slice(2), isBinary ? 2 : 8)\n : (reIsBadHex.test(value) ? NAN : +value);\n }\n\n /**\n * Converts `value` to a plain object flattening inherited enumerable string\n * keyed properties of `value` to own properties of the plain object.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Lang\n * @param {*} value The value to convert.\n * @returns {Object} Returns the converted plain object.\n * @example\n *\n * function Foo() {\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.assign({ 'a': 1 }, new Foo);\n * // => { 'a': 1, 'b': 2 }\n *\n * _.assign({ 'a': 1 }, _.toPlainObject(new Foo));\n * // => { 'a': 1, 'b': 2, 'c': 3 }\n */\n function toPlainObject(value) {\n return copyObject(value, keysIn(value));\n }\n\n /**\n * Converts `value` to a safe integer. A safe integer can be compared and\n * represented correctly.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to convert.\n * @returns {number} Returns the converted integer.\n * @example\n *\n * _.toSafeInteger(3.2);\n * // => 3\n *\n * _.toSafeInteger(Number.MIN_VALUE);\n * // => 0\n *\n * _.toSafeInteger(Infinity);\n * // => 9007199254740991\n *\n * _.toSafeInteger('3.2');\n * // => 3\n */\n function toSafeInteger(value) {\n return value\n ? baseClamp(toInteger(value), -MAX_SAFE_INTEGER, MAX_SAFE_INTEGER)\n : (value === 0 ? value : 0);\n }\n\n /**\n * Converts `value` to a string. An empty string is returned for `null`\n * and `undefined` values. The sign of `-0` is preserved.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to convert.\n * @returns {string} Returns the converted string.\n * @example\n *\n * _.toString(null);\n * // => ''\n *\n * _.toString(-0);\n * // => '-0'\n *\n * _.toString([1, 2, 3]);\n * // => '1,2,3'\n */\n function toString(value) {\n return value == null ? '' : baseToString(value);\n }\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Assigns own enumerable string keyed properties of source objects to the\n * destination object. Source objects are applied from left to right.\n * Subsequent sources overwrite property assignments of previous sources.\n *\n * **Note:** This method mutates `object` and is loosely based on\n * [`Object.assign`](https://mdn.io/Object/assign).\n *\n * @static\n * @memberOf _\n * @since 0.10.0\n * @category Object\n * @param {Object} object The destination object.\n * @param {...Object} [sources] The source objects.\n * @returns {Object} Returns `object`.\n * @see _.assignIn\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * }\n *\n * function Bar() {\n * this.c = 3;\n * }\n *\n * Foo.prototype.b = 2;\n * Bar.prototype.d = 4;\n *\n * _.assign({ 'a': 0 }, new Foo, new Bar);\n * // => { 'a': 1, 'c': 3 }\n */\n var assign = createAssigner(function(object, source) {\n if (isPrototype(source) || isArrayLike(source)) {\n copyObject(source, keys(source), object);\n return;\n }\n for (var key in source) {\n if (hasOwnProperty.call(source, key)) {\n assignValue(object, key, source[key]);\n }\n }\n });\n\n /**\n * This method is like `_.assign` except that it iterates over own and\n * inherited source properties.\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @alias extend\n * @category Object\n * @param {Object} object The destination object.\n * @param {...Object} [sources] The source objects.\n * @returns {Object} Returns `object`.\n * @see _.assign\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * }\n *\n * function Bar() {\n * this.c = 3;\n * }\n *\n * Foo.prototype.b = 2;\n * Bar.prototype.d = 4;\n *\n * _.assignIn({ 'a': 0 }, new Foo, new Bar);\n * // => { 'a': 1, 'b': 2, 'c': 3, 'd': 4 }\n */\n var assignIn = createAssigner(function(object, source) {\n copyObject(source, keysIn(source), object);\n });\n\n /**\n * This method is like `_.assignIn` except that it accepts `customizer`\n * which is invoked to produce the assigned values. If `customizer` returns\n * `undefined`, assignment is handled by the method instead. The `customizer`\n * is invoked with five arguments: (objValue, srcValue, key, object, source).\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @alias extendWith\n * @category Object\n * @param {Object} object The destination object.\n * @param {...Object} sources The source objects.\n * @param {Function} [customizer] The function to customize assigned values.\n * @returns {Object} Returns `object`.\n * @see _.assignWith\n * @example\n *\n * function customizer(objValue, srcValue) {\n * return _.isUndefined(objValue) ? srcValue : objValue;\n * }\n *\n * var defaults = _.partialRight(_.assignInWith, customizer);\n *\n * defaults({ 'a': 1 }, { 'b': 2 }, { 'a': 3 });\n * // => { 'a': 1, 'b': 2 }\n */\n var assignInWith = createAssigner(function(object, source, srcIndex, customizer) {\n copyObject(source, keysIn(source), object, customizer);\n });\n\n /**\n * This method is like `_.assign` except that it accepts `customizer`\n * which is invoked to produce the assigned values. If `customizer` returns\n * `undefined`, assignment is handled by the method instead. The `customizer`\n * is invoked with five arguments: (objValue, srcValue, key, object, source).\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Object\n * @param {Object} object The destination object.\n * @param {...Object} sources The source objects.\n * @param {Function} [customizer] The function to customize assigned values.\n * @returns {Object} Returns `object`.\n * @see _.assignInWith\n * @example\n *\n * function customizer(objValue, srcValue) {\n * return _.isUndefined(objValue) ? srcValue : objValue;\n * }\n *\n * var defaults = _.partialRight(_.assignWith, customizer);\n *\n * defaults({ 'a': 1 }, { 'b': 2 }, { 'a': 3 });\n * // => { 'a': 1, 'b': 2 }\n */\n var assignWith = createAssigner(function(object, source, srcIndex, customizer) {\n copyObject(source, keys(source), object, customizer);\n });\n\n /**\n * Creates an array of values corresponding to `paths` of `object`.\n *\n * @static\n * @memberOf _\n * @since 1.0.0\n * @category Object\n * @param {Object} object The object to iterate over.\n * @param {...(string|string[])} [paths] The property paths to pick.\n * @returns {Array} Returns the picked values.\n * @example\n *\n * var object = { 'a': [{ 'b': { 'c': 3 } }, 4] };\n *\n * _.at(object, ['a[0].b.c', 'a[1]']);\n * // => [3, 4]\n */\n var at = flatRest(baseAt);\n\n /**\n * Creates an object that inherits from the `prototype` object. If a\n * `properties` object is given, its own enumerable string keyed properties\n * are assigned to the created object.\n *\n * @static\n * @memberOf _\n * @since 2.3.0\n * @category Object\n * @param {Object} prototype The object to inherit from.\n * @param {Object} [properties] The properties to assign to the object.\n * @returns {Object} Returns the new object.\n * @example\n *\n * function Shape() {\n * this.x = 0;\n * this.y = 0;\n * }\n *\n * function Circle() {\n * Shape.call(this);\n * }\n *\n * Circle.prototype = _.create(Shape.prototype, {\n * 'constructor': Circle\n * });\n *\n * var circle = new Circle;\n * circle instanceof Circle;\n * // => true\n *\n * circle instanceof Shape;\n * // => true\n */\n function create(prototype, properties) {\n var result = baseCreate(prototype);\n return properties == null ? result : baseAssign(result, properties);\n }\n\n /**\n * Assigns own and inherited enumerable string keyed properties of source\n * objects to the destination object for all destination properties that\n * resolve to `undefined`. Source objects are applied from left to right.\n * Once a property is set, additional values of the same property are ignored.\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Object\n * @param {Object} object The destination object.\n * @param {...Object} [sources] The source objects.\n * @returns {Object} Returns `object`.\n * @see _.defaultsDeep\n * @example\n *\n * _.defaults({ 'a': 1 }, { 'b': 2 }, { 'a': 3 });\n * // => { 'a': 1, 'b': 2 }\n */\n var defaults = baseRest(function(object, sources) {\n object = Object(object);\n\n var index = -1;\n var length = sources.length;\n var guard = length > 2 ? sources[2] : undefined;\n\n if (guard && isIterateeCall(sources[0], sources[1], guard)) {\n length = 1;\n }\n\n while (++index < length) {\n var source = sources[index];\n var props = keysIn(source);\n var propsIndex = -1;\n var propsLength = props.length;\n\n while (++propsIndex < propsLength) {\n var key = props[propsIndex];\n var value = object[key];\n\n if (value === undefined ||\n (eq(value, objectProto[key]) && !hasOwnProperty.call(object, key))) {\n object[key] = source[key];\n }\n }\n }\n\n return object;\n });\n\n /**\n * This method is like `_.defaults` except that it recursively assigns\n * default properties.\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 3.10.0\n * @category Object\n * @param {Object} object The destination object.\n * @param {...Object} [sources] The source objects.\n * @returns {Object} Returns `object`.\n * @see _.defaults\n * @example\n *\n * _.defaultsDeep({ 'a': { 'b': 2 } }, { 'a': { 'b': 1, 'c': 3 } });\n * // => { 'a': { 'b': 2, 'c': 3 } }\n */\n var defaultsDeep = baseRest(function(args) {\n args.push(undefined, customDefaultsMerge);\n return apply(mergeWith, undefined, args);\n });\n\n /**\n * This method is like `_.find` except that it returns the key of the first\n * element `predicate` returns truthy for instead of the element itself.\n *\n * @static\n * @memberOf _\n * @since 1.1.0\n * @category Object\n * @param {Object} object The object to inspect.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @returns {string|undefined} Returns the key of the matched element,\n * else `undefined`.\n * @example\n *\n * var users = {\n * 'barney': { 'age': 36, 'active': true },\n * 'fred': { 'age': 40, 'active': false },\n * 'pebbles': { 'age': 1, 'active': true }\n * };\n *\n * _.findKey(users, function(o) { return o.age < 40; });\n * // => 'barney' (iteration order is not guaranteed)\n *\n * // The `_.matches` iteratee shorthand.\n * _.findKey(users, { 'age': 1, 'active': true });\n * // => 'pebbles'\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.findKey(users, ['active', false]);\n * // => 'fred'\n *\n * // The `_.property` iteratee shorthand.\n * _.findKey(users, 'active');\n * // => 'barney'\n */\n function findKey(object, predicate) {\n return baseFindKey(object, getIteratee(predicate, 3), baseForOwn);\n }\n\n /**\n * This method is like `_.findKey` except that it iterates over elements of\n * a collection in the opposite order.\n *\n * @static\n * @memberOf _\n * @since 2.0.0\n * @category Object\n * @param {Object} object The object to inspect.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @returns {string|undefined} Returns the key of the matched element,\n * else `undefined`.\n * @example\n *\n * var users = {\n * 'barney': { 'age': 36, 'active': true },\n * 'fred': { 'age': 40, 'active': false },\n * 'pebbles': { 'age': 1, 'active': true }\n * };\n *\n * _.findLastKey(users, function(o) { return o.age < 40; });\n * // => returns 'pebbles' assuming `_.findKey` returns 'barney'\n *\n * // The `_.matches` iteratee shorthand.\n * _.findLastKey(users, { 'age': 36, 'active': true });\n * // => 'barney'\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.findLastKey(users, ['active', false]);\n * // => 'fred'\n *\n * // The `_.property` iteratee shorthand.\n * _.findLastKey(users, 'active');\n * // => 'pebbles'\n */\n function findLastKey(object, predicate) {\n return baseFindKey(object, getIteratee(predicate, 3), baseForOwnRight);\n }\n\n /**\n * Iterates over own and inherited enumerable string keyed properties of an\n * object and invokes `iteratee` for each property. The iteratee is invoked\n * with three arguments: (value, key, object). Iteratee functions may exit\n * iteration early by explicitly returning `false`.\n *\n * @static\n * @memberOf _\n * @since 0.3.0\n * @category Object\n * @param {Object} object The object to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @returns {Object} Returns `object`.\n * @see _.forInRight\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.forIn(new Foo, function(value, key) {\n * console.log(key);\n * });\n * // => Logs 'a', 'b', then 'c' (iteration order is not guaranteed).\n */\n function forIn(object, iteratee) {\n return object == null\n ? object\n : baseFor(object, getIteratee(iteratee, 3), keysIn);\n }\n\n /**\n * This method is like `_.forIn` except that it iterates over properties of\n * `object` in the opposite order.\n *\n * @static\n * @memberOf _\n * @since 2.0.0\n * @category Object\n * @param {Object} object The object to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @returns {Object} Returns `object`.\n * @see _.forIn\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.forInRight(new Foo, function(value, key) {\n * console.log(key);\n * });\n * // => Logs 'c', 'b', then 'a' assuming `_.forIn` logs 'a', 'b', then 'c'.\n */\n function forInRight(object, iteratee) {\n return object == null\n ? object\n : baseForRight(object, getIteratee(iteratee, 3), keysIn);\n }\n\n /**\n * Iterates over own enumerable string keyed properties of an object and\n * invokes `iteratee` for each property. The iteratee is invoked with three\n * arguments: (value, key, object). Iteratee functions may exit iteration\n * early by explicitly returning `false`.\n *\n * @static\n * @memberOf _\n * @since 0.3.0\n * @category Object\n * @param {Object} object The object to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @returns {Object} Returns `object`.\n * @see _.forOwnRight\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.forOwn(new Foo, function(value, key) {\n * console.log(key);\n * });\n * // => Logs 'a' then 'b' (iteration order is not guaranteed).\n */\n function forOwn(object, iteratee) {\n return object && baseForOwn(object, getIteratee(iteratee, 3));\n }\n\n /**\n * This method is like `_.forOwn` except that it iterates over properties of\n * `object` in the opposite order.\n *\n * @static\n * @memberOf _\n * @since 2.0.0\n * @category Object\n * @param {Object} object The object to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @returns {Object} Returns `object`.\n * @see _.forOwn\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.forOwnRight(new Foo, function(value, key) {\n * console.log(key);\n * });\n * // => Logs 'b' then 'a' assuming `_.forOwn` logs 'a' then 'b'.\n */\n function forOwnRight(object, iteratee) {\n return object && baseForOwnRight(object, getIteratee(iteratee, 3));\n }\n\n /**\n * Creates an array of function property names from own enumerable properties\n * of `object`.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Object\n * @param {Object} object The object to inspect.\n * @returns {Array} Returns the function names.\n * @see _.functionsIn\n * @example\n *\n * function Foo() {\n * this.a = _.constant('a');\n * this.b = _.constant('b');\n * }\n *\n * Foo.prototype.c = _.constant('c');\n *\n * _.functions(new Foo);\n * // => ['a', 'b']\n */\n function functions(object) {\n return object == null ? [] : baseFunctions(object, keys(object));\n }\n\n /**\n * Creates an array of function property names from own and inherited\n * enumerable properties of `object`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Object\n * @param {Object} object The object to inspect.\n * @returns {Array} Returns the function names.\n * @see _.functions\n * @example\n *\n * function Foo() {\n * this.a = _.constant('a');\n * this.b = _.constant('b');\n * }\n *\n * Foo.prototype.c = _.constant('c');\n *\n * _.functionsIn(new Foo);\n * // => ['a', 'b', 'c']\n */\n function functionsIn(object) {\n return object == null ? [] : baseFunctions(object, keysIn(object));\n }\n\n /**\n * Gets the value at `path` of `object`. If the resolved value is\n * `undefined`, the `defaultValue` is returned in its place.\n *\n * @static\n * @memberOf _\n * @since 3.7.0\n * @category Object\n * @param {Object} object The object to query.\n * @param {Array|string} path The path of the property to get.\n * @param {*} [defaultValue] The value returned for `undefined` resolved values.\n * @returns {*} Returns the resolved value.\n * @example\n *\n * var object = { 'a': [{ 'b': { 'c': 3 } }] };\n *\n * _.get(object, 'a[0].b.c');\n * // => 3\n *\n * _.get(object, ['a', '0', 'b', 'c']);\n * // => 3\n *\n * _.get(object, 'a.b.c', 'default');\n * // => 'default'\n */\n function get(object, path, defaultValue) {\n var result = object == null ? undefined : baseGet(object, path);\n return result === undefined ? defaultValue : result;\n }\n\n /**\n * Checks if `path` is a direct property of `object`.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Object\n * @param {Object} object The object to query.\n * @param {Array|string} path The path to check.\n * @returns {boolean} Returns `true` if `path` exists, else `false`.\n * @example\n *\n * var object = { 'a': { 'b': 2 } };\n * var other = _.create({ 'a': _.create({ 'b': 2 }) });\n *\n * _.has(object, 'a');\n * // => true\n *\n * _.has(object, 'a.b');\n * // => true\n *\n * _.has(object, ['a', 'b']);\n * // => true\n *\n * _.has(other, 'a');\n * // => false\n */\n function has(object, path) {\n return object != null && hasPath(object, path, baseHas);\n }\n\n /**\n * Checks if `path` is a direct or inherited property of `object`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Object\n * @param {Object} object The object to query.\n * @param {Array|string} path The path to check.\n * @returns {boolean} Returns `true` if `path` exists, else `false`.\n * @example\n *\n * var object = _.create({ 'a': _.create({ 'b': 2 }) });\n *\n * _.hasIn(object, 'a');\n * // => true\n *\n * _.hasIn(object, 'a.b');\n * // => true\n *\n * _.hasIn(object, ['a', 'b']);\n * // => true\n *\n * _.hasIn(object, 'b');\n * // => false\n */\n function hasIn(object, path) {\n return object != null && hasPath(object, path, baseHasIn);\n }\n\n /**\n * Creates an object composed of the inverted keys and values of `object`.\n * If `object` contains duplicate values, subsequent values overwrite\n * property assignments of previous values.\n *\n * @static\n * @memberOf _\n * @since 0.7.0\n * @category Object\n * @param {Object} object The object to invert.\n * @returns {Object} Returns the new inverted object.\n * @example\n *\n * var object = { 'a': 1, 'b': 2, 'c': 1 };\n *\n * _.invert(object);\n * // => { '1': 'c', '2': 'b' }\n */\n var invert = createInverter(function(result, value, key) {\n if (value != null &&\n typeof value.toString != 'function') {\n value = nativeObjectToString.call(value);\n }\n\n result[value] = key;\n }, constant(identity));\n\n /**\n * This method is like `_.invert` except that the inverted object is generated\n * from the results of running each element of `object` thru `iteratee`. The\n * corresponding inverted value of each inverted key is an array of keys\n * responsible for generating the inverted value. The iteratee is invoked\n * with one argument: (value).\n *\n * @static\n * @memberOf _\n * @since 4.1.0\n * @category Object\n * @param {Object} object The object to invert.\n * @param {Function} [iteratee=_.identity] The iteratee invoked per element.\n * @returns {Object} Returns the new inverted object.\n * @example\n *\n * var object = { 'a': 1, 'b': 2, 'c': 1 };\n *\n * _.invertBy(object);\n * // => { '1': ['a', 'c'], '2': ['b'] }\n *\n * _.invertBy(object, function(value) {\n * return 'group' + value;\n * });\n * // => { 'group1': ['a', 'c'], 'group2': ['b'] }\n */\n var invertBy = createInverter(function(result, value, key) {\n if (value != null &&\n typeof value.toString != 'function') {\n value = nativeObjectToString.call(value);\n }\n\n if (hasOwnProperty.call(result, value)) {\n result[value].push(key);\n } else {\n result[value] = [key];\n }\n }, getIteratee);\n\n /**\n * Invokes the method at `path` of `object`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Object\n * @param {Object} object The object to query.\n * @param {Array|string} path The path of the method to invoke.\n * @param {...*} [args] The arguments to invoke the method with.\n * @returns {*} Returns the result of the invoked method.\n * @example\n *\n * var object = { 'a': [{ 'b': { 'c': [1, 2, 3, 4] } }] };\n *\n * _.invoke(object, 'a[0].b.c.slice', 1, 3);\n * // => [2, 3]\n */\n var invoke = baseRest(baseInvoke);\n\n /**\n * Creates an array of the own enumerable property names of `object`.\n *\n * **Note:** Non-object values are coerced to objects. See the\n * [ES spec](http://ecma-international.org/ecma-262/7.0/#sec-object.keys)\n * for more details.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Object\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.keys(new Foo);\n * // => ['a', 'b'] (iteration order is not guaranteed)\n *\n * _.keys('hi');\n * // => ['0', '1']\n */\n function keys(object) {\n return isArrayLike(object) ? arrayLikeKeys(object) : baseKeys(object);\n }\n\n /**\n * Creates an array of the own and inherited enumerable property names of `object`.\n *\n * **Note:** Non-object values are coerced to objects.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Object\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.keysIn(new Foo);\n * // => ['a', 'b', 'c'] (iteration order is not guaranteed)\n */\n function keysIn(object) {\n return isArrayLike(object) ? arrayLikeKeys(object, true) : baseKeysIn(object);\n }\n\n /**\n * The opposite of `_.mapValues`; this method creates an object with the\n * same values as `object` and keys generated by running each own enumerable\n * string keyed property of `object` thru `iteratee`. The iteratee is invoked\n * with three arguments: (value, key, object).\n *\n * @static\n * @memberOf _\n * @since 3.8.0\n * @category Object\n * @param {Object} object The object to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @returns {Object} Returns the new mapped object.\n * @see _.mapValues\n * @example\n *\n * _.mapKeys({ 'a': 1, 'b': 2 }, function(value, key) {\n * return key + value;\n * });\n * // => { 'a1': 1, 'b2': 2 }\n */\n function mapKeys(object, iteratee) {\n var result = {};\n iteratee = getIteratee(iteratee, 3);\n\n baseForOwn(object, function(value, key, object) {\n baseAssignValue(result, iteratee(value, key, object), value);\n });\n return result;\n }\n\n /**\n * Creates an object with the same keys as `object` and values generated\n * by running each own enumerable string keyed property of `object` thru\n * `iteratee`. The iteratee is invoked with three arguments:\n * (value, key, object).\n *\n * @static\n * @memberOf _\n * @since 2.4.0\n * @category Object\n * @param {Object} object The object to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @returns {Object} Returns the new mapped object.\n * @see _.mapKeys\n * @example\n *\n * var users = {\n * 'fred': { 'user': 'fred', 'age': 40 },\n * 'pebbles': { 'user': 'pebbles', 'age': 1 }\n * };\n *\n * _.mapValues(users, function(o) { return o.age; });\n * // => { 'fred': 40, 'pebbles': 1 } (iteration order is not guaranteed)\n *\n * // The `_.property` iteratee shorthand.\n * _.mapValues(users, 'age');\n * // => { 'fred': 40, 'pebbles': 1 } (iteration order is not guaranteed)\n */\n function mapValues(object, iteratee) {\n var result = {};\n iteratee = getIteratee(iteratee, 3);\n\n baseForOwn(object, function(value, key, object) {\n baseAssignValue(result, key, iteratee(value, key, object));\n });\n return result;\n }\n\n /**\n * This method is like `_.assign` except that it recursively merges own and\n * inherited enumerable string keyed properties of source objects into the\n * destination object. Source properties that resolve to `undefined` are\n * skipped if a destination value exists. Array and plain object properties\n * are merged recursively. Other objects and value types are overridden by\n * assignment. Source objects are applied from left to right. Subsequent\n * sources overwrite property assignments of previous sources.\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 0.5.0\n * @category Object\n * @param {Object} object The destination object.\n * @param {...Object} [sources] The source objects.\n * @returns {Object} Returns `object`.\n * @example\n *\n * var object = {\n * 'a': [{ 'b': 2 }, { 'd': 4 }]\n * };\n *\n * var other = {\n * 'a': [{ 'c': 3 }, { 'e': 5 }]\n * };\n *\n * _.merge(object, other);\n * // => { 'a': [{ 'b': 2, 'c': 3 }, { 'd': 4, 'e': 5 }] }\n */\n var merge = createAssigner(function(object, source, srcIndex) {\n baseMerge(object, source, srcIndex);\n });\n\n /**\n * This method is like `_.merge` except that it accepts `customizer` which\n * is invoked to produce the merged values of the destination and source\n * properties. If `customizer` returns `undefined`, merging is handled by the\n * method instead. The `customizer` is invoked with six arguments:\n * (objValue, srcValue, key, object, source, stack).\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Object\n * @param {Object} object The destination object.\n * @param {...Object} sources The source objects.\n * @param {Function} customizer The function to customize assigned values.\n * @returns {Object} Returns `object`.\n * @example\n *\n * function customizer(objValue, srcValue) {\n * if (_.isArray(objValue)) {\n * return objValue.concat(srcValue);\n * }\n * }\n *\n * var object = { 'a': [1], 'b': [2] };\n * var other = { 'a': [3], 'b': [4] };\n *\n * _.mergeWith(object, other, customizer);\n * // => { 'a': [1, 3], 'b': [2, 4] }\n */\n var mergeWith = createAssigner(function(object, source, srcIndex, customizer) {\n baseMerge(object, source, srcIndex, customizer);\n });\n\n /**\n * The opposite of `_.pick`; this method creates an object composed of the\n * own and inherited enumerable property paths of `object` that are not omitted.\n *\n * **Note:** This method is considerably slower than `_.pick`.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Object\n * @param {Object} object The source object.\n * @param {...(string|string[])} [paths] The property paths to omit.\n * @returns {Object} Returns the new object.\n * @example\n *\n * var object = { 'a': 1, 'b': '2', 'c': 3 };\n *\n * _.omit(object, ['a', 'c']);\n * // => { 'b': '2' }\n */\n var omit = flatRest(function(object, paths) {\n var result = {};\n if (object == null) {\n return result;\n }\n var isDeep = false;\n paths = arrayMap(paths, function(path) {\n path = castPath(path, object);\n isDeep || (isDeep = path.length > 1);\n return path;\n });\n copyObject(object, getAllKeysIn(object), result);\n if (isDeep) {\n result = baseClone(result, CLONE_DEEP_FLAG | CLONE_FLAT_FLAG | CLONE_SYMBOLS_FLAG, customOmitClone);\n }\n var length = paths.length;\n while (length--) {\n baseUnset(result, paths[length]);\n }\n return result;\n });\n\n /**\n * The opposite of `_.pickBy`; this method creates an object composed of\n * the own and inherited enumerable string keyed properties of `object` that\n * `predicate` doesn't return truthy for. The predicate is invoked with two\n * arguments: (value, key).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Object\n * @param {Object} object The source object.\n * @param {Function} [predicate=_.identity] The function invoked per property.\n * @returns {Object} Returns the new object.\n * @example\n *\n * var object = { 'a': 1, 'b': '2', 'c': 3 };\n *\n * _.omitBy(object, _.isNumber);\n * // => { 'b': '2' }\n */\n function omitBy(object, predicate) {\n return pickBy(object, negate(getIteratee(predicate)));\n }\n\n /**\n * Creates an object composed of the picked `object` properties.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Object\n * @param {Object} object The source object.\n * @param {...(string|string[])} [paths] The property paths to pick.\n * @returns {Object} Returns the new object.\n * @example\n *\n * var object = { 'a': 1, 'b': '2', 'c': 3 };\n *\n * _.pick(object, ['a', 'c']);\n * // => { 'a': 1, 'c': 3 }\n */\n var pick = flatRest(function(object, paths) {\n return object == null ? {} : basePick(object, paths);\n });\n\n /**\n * Creates an object composed of the `object` properties `predicate` returns\n * truthy for. The predicate is invoked with two arguments: (value, key).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Object\n * @param {Object} object The source object.\n * @param {Function} [predicate=_.identity] The function invoked per property.\n * @returns {Object} Returns the new object.\n * @example\n *\n * var object = { 'a': 1, 'b': '2', 'c': 3 };\n *\n * _.pickBy(object, _.isNumber);\n * // => { 'a': 1, 'c': 3 }\n */\n function pickBy(object, predicate) {\n if (object == null) {\n return {};\n }\n var props = arrayMap(getAllKeysIn(object), function(prop) {\n return [prop];\n });\n predicate = getIteratee(predicate);\n return basePickBy(object, props, function(value, path) {\n return predicate(value, path[0]);\n });\n }\n\n /**\n * This method is like `_.get` except that if the resolved value is a\n * function it's invoked with the `this` binding of its parent object and\n * its result is returned.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Object\n * @param {Object} object The object to query.\n * @param {Array|string} path The path of the property to resolve.\n * @param {*} [defaultValue] The value returned for `undefined` resolved values.\n * @returns {*} Returns the resolved value.\n * @example\n *\n * var object = { 'a': [{ 'b': { 'c1': 3, 'c2': _.constant(4) } }] };\n *\n * _.result(object, 'a[0].b.c1');\n * // => 3\n *\n * _.result(object, 'a[0].b.c2');\n * // => 4\n *\n * _.result(object, 'a[0].b.c3', 'default');\n * // => 'default'\n *\n * _.result(object, 'a[0].b.c3', _.constant('default'));\n * // => 'default'\n */\n function result(object, path, defaultValue) {\n path = castPath(path, object);\n\n var index = -1,\n length = path.length;\n\n // Ensure the loop is entered when path is empty.\n if (!length) {\n length = 1;\n object = undefined;\n }\n while (++index < length) {\n var value = object == null ? undefined : object[toKey(path[index])];\n if (value === undefined) {\n index = length;\n value = defaultValue;\n }\n object = isFunction(value) ? value.call(object) : value;\n }\n return object;\n }\n\n /**\n * Sets the value at `path` of `object`. If a portion of `path` doesn't exist,\n * it's created. Arrays are created for missing index properties while objects\n * are created for all other missing properties. Use `_.setWith` to customize\n * `path` creation.\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 3.7.0\n * @category Object\n * @param {Object} object The object to modify.\n * @param {Array|string} path The path of the property to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns `object`.\n * @example\n *\n * var object = { 'a': [{ 'b': { 'c': 3 } }] };\n *\n * _.set(object, 'a[0].b.c', 4);\n * console.log(object.a[0].b.c);\n * // => 4\n *\n * _.set(object, ['x', '0', 'y', 'z'], 5);\n * console.log(object.x[0].y.z);\n * // => 5\n */\n function set(object, path, value) {\n return object == null ? object : baseSet(object, path, value);\n }\n\n /**\n * This method is like `_.set` except that it accepts `customizer` which is\n * invoked to produce the objects of `path`. If `customizer` returns `undefined`\n * path creation is handled by the method instead. The `customizer` is invoked\n * with three arguments: (nsValue, key, nsObject).\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Object\n * @param {Object} object The object to modify.\n * @param {Array|string} path The path of the property to set.\n * @param {*} value The value to set.\n * @param {Function} [customizer] The function to customize assigned values.\n * @returns {Object} Returns `object`.\n * @example\n *\n * var object = {};\n *\n * _.setWith(object, '[0][1]', 'a', Object);\n * // => { '0': { '1': 'a' } }\n */\n function setWith(object, path, value, customizer) {\n customizer = typeof customizer == 'function' ? customizer : undefined;\n return object == null ? object : baseSet(object, path, value, customizer);\n }\n\n /**\n * Creates an array of own enumerable string keyed-value pairs for `object`\n * which can be consumed by `_.fromPairs`. If `object` is a map or set, its\n * entries are returned.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @alias entries\n * @category Object\n * @param {Object} object The object to query.\n * @returns {Array} Returns the key-value pairs.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.toPairs(new Foo);\n * // => [['a', 1], ['b', 2]] (iteration order is not guaranteed)\n */\n var toPairs = createToPairs(keys);\n\n /**\n * Creates an array of own and inherited enumerable string keyed-value pairs\n * for `object` which can be consumed by `_.fromPairs`. If `object` is a map\n * or set, its entries are returned.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @alias entriesIn\n * @category Object\n * @param {Object} object The object to query.\n * @returns {Array} Returns the key-value pairs.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.toPairsIn(new Foo);\n * // => [['a', 1], ['b', 2], ['c', 3]] (iteration order is not guaranteed)\n */\n var toPairsIn = createToPairs(keysIn);\n\n /**\n * An alternative to `_.reduce`; this method transforms `object` to a new\n * `accumulator` object which is the result of running each of its own\n * enumerable string keyed properties thru `iteratee`, with each invocation\n * potentially mutating the `accumulator` object. If `accumulator` is not\n * provided, a new object with the same `[[Prototype]]` will be used. The\n * iteratee is invoked with four arguments: (accumulator, value, key, object).\n * Iteratee functions may exit iteration early by explicitly returning `false`.\n *\n * @static\n * @memberOf _\n * @since 1.3.0\n * @category Object\n * @param {Object} object The object to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @param {*} [accumulator] The custom accumulator value.\n * @returns {*} Returns the accumulated value.\n * @example\n *\n * _.transform([2, 3, 4], function(result, n) {\n * result.push(n *= n);\n * return n % 2 == 0;\n * }, []);\n * // => [4, 9]\n *\n * _.transform({ 'a': 1, 'b': 2, 'c': 1 }, function(result, value, key) {\n * (result[value] || (result[value] = [])).push(key);\n * }, {});\n * // => { '1': ['a', 'c'], '2': ['b'] }\n */\n function transform(object, iteratee, accumulator) {\n var isArr = isArray(object),\n isArrLike = isArr || isBuffer(object) || isTypedArray(object);\n\n iteratee = getIteratee(iteratee, 4);\n if (accumulator == null) {\n var Ctor = object && object.constructor;\n if (isArrLike) {\n accumulator = isArr ? new Ctor : [];\n }\n else if (isObject(object)) {\n accumulator = isFunction(Ctor) ? baseCreate(getPrototype(object)) : {};\n }\n else {\n accumulator = {};\n }\n }\n (isArrLike ? arrayEach : baseForOwn)(object, function(value, index, object) {\n return iteratee(accumulator, value, index, object);\n });\n return accumulator;\n }\n\n /**\n * Removes the property at `path` of `object`.\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Object\n * @param {Object} object The object to modify.\n * @param {Array|string} path The path of the property to unset.\n * @returns {boolean} Returns `true` if the property is deleted, else `false`.\n * @example\n *\n * var object = { 'a': [{ 'b': { 'c': 7 } }] };\n * _.unset(object, 'a[0].b.c');\n * // => true\n *\n * console.log(object);\n * // => { 'a': [{ 'b': {} }] };\n *\n * _.unset(object, ['a', '0', 'b', 'c']);\n * // => true\n *\n * console.log(object);\n * // => { 'a': [{ 'b': {} }] };\n */\n function unset(object, path) {\n return object == null ? true : baseUnset(object, path);\n }\n\n /**\n * This method is like `_.set` except that accepts `updater` to produce the\n * value to set. Use `_.updateWith` to customize `path` creation. The `updater`\n * is invoked with one argument: (value).\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 4.6.0\n * @category Object\n * @param {Object} object The object to modify.\n * @param {Array|string} path The path of the property to set.\n * @param {Function} updater The function to produce the updated value.\n * @returns {Object} Returns `object`.\n * @example\n *\n * var object = { 'a': [{ 'b': { 'c': 3 } }] };\n *\n * _.update(object, 'a[0].b.c', function(n) { return n * n; });\n * console.log(object.a[0].b.c);\n * // => 9\n *\n * _.update(object, 'x[0].y.z', function(n) { return n ? n + 1 : 0; });\n * console.log(object.x[0].y.z);\n * // => 0\n */\n function update(object, path, updater) {\n return object == null ? object : baseUpdate(object, path, castFunction(updater));\n }\n\n /**\n * This method is like `_.update` except that it accepts `customizer` which is\n * invoked to produce the objects of `path`. If `customizer` returns `undefined`\n * path creation is handled by the method instead. The `customizer` is invoked\n * with three arguments: (nsValue, key, nsObject).\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 4.6.0\n * @category Object\n * @param {Object} object The object to modify.\n * @param {Array|string} path The path of the property to set.\n * @param {Function} updater The function to produce the updated value.\n * @param {Function} [customizer] The function to customize assigned values.\n * @returns {Object} Returns `object`.\n * @example\n *\n * var object = {};\n *\n * _.updateWith(object, '[0][1]', _.constant('a'), Object);\n * // => { '0': { '1': 'a' } }\n */\n function updateWith(object, path, updater, customizer) {\n customizer = typeof customizer == 'function' ? customizer : undefined;\n return object == null ? object : baseUpdate(object, path, castFunction(updater), customizer);\n }\n\n /**\n * Creates an array of the own enumerable string keyed property values of `object`.\n *\n * **Note:** Non-object values are coerced to objects.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Object\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property values.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.values(new Foo);\n * // => [1, 2] (iteration order is not guaranteed)\n *\n * _.values('hi');\n * // => ['h', 'i']\n */\n function values(object) {\n return object == null ? [] : baseValues(object, keys(object));\n }\n\n /**\n * Creates an array of the own and inherited enumerable string keyed property\n * values of `object`.\n *\n * **Note:** Non-object values are coerced to objects.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Object\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property values.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.valuesIn(new Foo);\n * // => [1, 2, 3] (iteration order is not guaranteed)\n */\n function valuesIn(object) {\n return object == null ? [] : baseValues(object, keysIn(object));\n }\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Clamps `number` within the inclusive `lower` and `upper` bounds.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Number\n * @param {number} number The number to clamp.\n * @param {number} [lower] The lower bound.\n * @param {number} upper The upper bound.\n * @returns {number} Returns the clamped number.\n * @example\n *\n * _.clamp(-10, -5, 5);\n * // => -5\n *\n * _.clamp(10, -5, 5);\n * // => 5\n */\n function clamp(number, lower, upper) {\n if (upper === undefined) {\n upper = lower;\n lower = undefined;\n }\n if (upper !== undefined) {\n upper = toNumber(upper);\n upper = upper === upper ? upper : 0;\n }\n if (lower !== undefined) {\n lower = toNumber(lower);\n lower = lower === lower ? lower : 0;\n }\n return baseClamp(toNumber(number), lower, upper);\n }\n\n /**\n * Checks if `n` is between `start` and up to, but not including, `end`. If\n * `end` is not specified, it's set to `start` with `start` then set to `0`.\n * If `start` is greater than `end` the params are swapped to support\n * negative ranges.\n *\n * @static\n * @memberOf _\n * @since 3.3.0\n * @category Number\n * @param {number} number The number to check.\n * @param {number} [start=0] The start of the range.\n * @param {number} end The end of the range.\n * @returns {boolean} Returns `true` if `number` is in the range, else `false`.\n * @see _.range, _.rangeRight\n * @example\n *\n * _.inRange(3, 2, 4);\n * // => true\n *\n * _.inRange(4, 8);\n * // => true\n *\n * _.inRange(4, 2);\n * // => false\n *\n * _.inRange(2, 2);\n * // => false\n *\n * _.inRange(1.2, 2);\n * // => true\n *\n * _.inRange(5.2, 4);\n * // => false\n *\n * _.inRange(-3, -2, -6);\n * // => true\n */\n function inRange(number, start, end) {\n start = toFinite(start);\n if (end === undefined) {\n end = start;\n start = 0;\n } else {\n end = toFinite(end);\n }\n number = toNumber(number);\n return baseInRange(number, start, end);\n }\n\n /**\n * Produces a random number between the inclusive `lower` and `upper` bounds.\n * If only one argument is provided a number between `0` and the given number\n * is returned. If `floating` is `true`, or either `lower` or `upper` are\n * floats, a floating-point number is returned instead of an integer.\n *\n * **Note:** JavaScript follows the IEEE-754 standard for resolving\n * floating-point values which can produce unexpected results.\n *\n * @static\n * @memberOf _\n * @since 0.7.0\n * @category Number\n * @param {number} [lower=0] The lower bound.\n * @param {number} [upper=1] The upper bound.\n * @param {boolean} [floating] Specify returning a floating-point number.\n * @returns {number} Returns the random number.\n * @example\n *\n * _.random(0, 5);\n * // => an integer between 0 and 5\n *\n * _.random(5);\n * // => also an integer between 0 and 5\n *\n * _.random(5, true);\n * // => a floating-point number between 0 and 5\n *\n * _.random(1.2, 5.2);\n * // => a floating-point number between 1.2 and 5.2\n */\n function random(lower, upper, floating) {\n if (floating && typeof floating != 'boolean' && isIterateeCall(lower, upper, floating)) {\n upper = floating = undefined;\n }\n if (floating === undefined) {\n if (typeof upper == 'boolean') {\n floating = upper;\n upper = undefined;\n }\n else if (typeof lower == 'boolean') {\n floating = lower;\n lower = undefined;\n }\n }\n if (lower === undefined && upper === undefined) {\n lower = 0;\n upper = 1;\n }\n else {\n lower = toFinite(lower);\n if (upper === undefined) {\n upper = lower;\n lower = 0;\n } else {\n upper = toFinite(upper);\n }\n }\n if (lower > upper) {\n var temp = lower;\n lower = upper;\n upper = temp;\n }\n if (floating || lower % 1 || upper % 1) {\n var rand = nativeRandom();\n return nativeMin(lower + (rand * (upper - lower + freeParseFloat('1e-' + ((rand + '').length - 1)))), upper);\n }\n return baseRandom(lower, upper);\n }\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Converts `string` to [camel case](https://en.wikipedia.org/wiki/CamelCase).\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category String\n * @param {string} [string=''] The string to convert.\n * @returns {string} Returns the camel cased string.\n * @example\n *\n * _.camelCase('Foo Bar');\n * // => 'fooBar'\n *\n * _.camelCase('--foo-bar--');\n * // => 'fooBar'\n *\n * _.camelCase('__FOO_BAR__');\n * // => 'fooBar'\n */\n var camelCase = createCompounder(function(result, word, index) {\n word = word.toLowerCase();\n return result + (index ? capitalize(word) : word);\n });\n\n /**\n * Converts the first character of `string` to upper case and the remaining\n * to lower case.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category String\n * @param {string} [string=''] The string to capitalize.\n * @returns {string} Returns the capitalized string.\n * @example\n *\n * _.capitalize('FRED');\n * // => 'Fred'\n */\n function capitalize(string) {\n return upperFirst(toString(string).toLowerCase());\n }\n\n /**\n * Deburrs `string` by converting\n * [Latin-1 Supplement](https://en.wikipedia.org/wiki/Latin-1_Supplement_(Unicode_block)#Character_table)\n * and [Latin Extended-A](https://en.wikipedia.org/wiki/Latin_Extended-A)\n * letters to basic Latin letters and removing\n * [combining diacritical marks](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks).\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category String\n * @param {string} [string=''] The string to deburr.\n * @returns {string} Returns the deburred string.\n * @example\n *\n * _.deburr('déjà vu');\n * // => 'deja vu'\n */\n function deburr(string) {\n string = toString(string);\n return string && string.replace(reLatin, deburrLetter).replace(reComboMark, '');\n }\n\n /**\n * Checks if `string` ends with the given target string.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category String\n * @param {string} [string=''] The string to inspect.\n * @param {string} [target] The string to search for.\n * @param {number} [position=string.length] The position to search up to.\n * @returns {boolean} Returns `true` if `string` ends with `target`,\n * else `false`.\n * @example\n *\n * _.endsWith('abc', 'c');\n * // => true\n *\n * _.endsWith('abc', 'b');\n * // => false\n *\n * _.endsWith('abc', 'b', 2);\n * // => true\n */\n function endsWith(string, target, position) {\n string = toString(string);\n target = baseToString(target);\n\n var length = string.length;\n position = position === undefined\n ? length\n : baseClamp(toInteger(position), 0, length);\n\n var end = position;\n position -= target.length;\n return position >= 0 && string.slice(position, end) == target;\n }\n\n /**\n * Converts the characters \"&\", \"<\", \">\", '\"', and \"'\" in `string` to their\n * corresponding HTML entities.\n *\n * **Note:** No other characters are escaped. To escape additional\n * characters use a third-party library like [_he_](https://mths.be/he).\n *\n * Though the \">\" character is escaped for symmetry, characters like\n * \">\" and \"/\" don't need escaping in HTML and have no special meaning\n * unless they're part of a tag or unquoted attribute value. See\n * [Mathias Bynens's article](https://mathiasbynens.be/notes/ambiguous-ampersands)\n * (under \"semi-related fun fact\") for more details.\n *\n * When working with HTML you should always\n * [quote attribute values](http://wonko.com/post/html-escaping) to reduce\n * XSS vectors.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category String\n * @param {string} [string=''] The string to escape.\n * @returns {string} Returns the escaped string.\n * @example\n *\n * _.escape('fred, barney, & pebbles');\n * // => 'fred, barney, & pebbles'\n */\n function escape(string) {\n string = toString(string);\n return (string && reHasUnescapedHtml.test(string))\n ? string.replace(reUnescapedHtml, escapeHtmlChar)\n : string;\n }\n\n /**\n * Escapes the `RegExp` special characters \"^\", \"$\", \"\\\", \".\", \"*\", \"+\",\n * \"?\", \"(\", \")\", \"[\", \"]\", \"{\", \"}\", and \"|\" in `string`.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category String\n * @param {string} [string=''] The string to escape.\n * @returns {string} Returns the escaped string.\n * @example\n *\n * _.escapeRegExp('[lodash](https://lodash.com/)');\n * // => '\\[lodash\\]\\(https://lodash\\.com/\\)'\n */\n function escapeRegExp(string) {\n string = toString(string);\n return (string && reHasRegExpChar.test(string))\n ? string.replace(reRegExpChar, '\\\\$&')\n : string;\n }\n\n /**\n * Converts `string` to\n * [kebab case](https://en.wikipedia.org/wiki/Letter_case#Special_case_styles).\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category String\n * @param {string} [string=''] The string to convert.\n * @returns {string} Returns the kebab cased string.\n * @example\n *\n * _.kebabCase('Foo Bar');\n * // => 'foo-bar'\n *\n * _.kebabCase('fooBar');\n * // => 'foo-bar'\n *\n * _.kebabCase('__FOO_BAR__');\n * // => 'foo-bar'\n */\n var kebabCase = createCompounder(function(result, word, index) {\n return result + (index ? '-' : '') + word.toLowerCase();\n });\n\n /**\n * Converts `string`, as space separated words, to lower case.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category String\n * @param {string} [string=''] The string to convert.\n * @returns {string} Returns the lower cased string.\n * @example\n *\n * _.lowerCase('--Foo-Bar--');\n * // => 'foo bar'\n *\n * _.lowerCase('fooBar');\n * // => 'foo bar'\n *\n * _.lowerCase('__FOO_BAR__');\n * // => 'foo bar'\n */\n var lowerCase = createCompounder(function(result, word, index) {\n return result + (index ? ' ' : '') + word.toLowerCase();\n });\n\n /**\n * Converts the first character of `string` to lower case.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category String\n * @param {string} [string=''] The string to convert.\n * @returns {string} Returns the converted string.\n * @example\n *\n * _.lowerFirst('Fred');\n * // => 'fred'\n *\n * _.lowerFirst('FRED');\n * // => 'fRED'\n */\n var lowerFirst = createCaseFirst('toLowerCase');\n\n /**\n * Pads `string` on the left and right sides if it's shorter than `length`.\n * Padding characters are truncated if they can't be evenly divided by `length`.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category String\n * @param {string} [string=''] The string to pad.\n * @param {number} [length=0] The padding length.\n * @param {string} [chars=' '] The string used as padding.\n * @returns {string} Returns the padded string.\n * @example\n *\n * _.pad('abc', 8);\n * // => ' abc '\n *\n * _.pad('abc', 8, '_-');\n * // => '_-abc_-_'\n *\n * _.pad('abc', 3);\n * // => 'abc'\n */\n function pad(string, length, chars) {\n string = toString(string);\n length = toInteger(length);\n\n var strLength = length ? stringSize(string) : 0;\n if (!length || strLength >= length) {\n return string;\n }\n var mid = (length - strLength) / 2;\n return (\n createPadding(nativeFloor(mid), chars) +\n string +\n createPadding(nativeCeil(mid), chars)\n );\n }\n\n /**\n * Pads `string` on the right side if it's shorter than `length`. Padding\n * characters are truncated if they exceed `length`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category String\n * @param {string} [string=''] The string to pad.\n * @param {number} [length=0] The padding length.\n * @param {string} [chars=' '] The string used as padding.\n * @returns {string} Returns the padded string.\n * @example\n *\n * _.padEnd('abc', 6);\n * // => 'abc '\n *\n * _.padEnd('abc', 6, '_-');\n * // => 'abc_-_'\n *\n * _.padEnd('abc', 3);\n * // => 'abc'\n */\n function padEnd(string, length, chars) {\n string = toString(string);\n length = toInteger(length);\n\n var strLength = length ? stringSize(string) : 0;\n return (length && strLength < length)\n ? (string + createPadding(length - strLength, chars))\n : string;\n }\n\n /**\n * Pads `string` on the left side if it's shorter than `length`. Padding\n * characters are truncated if they exceed `length`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category String\n * @param {string} [string=''] The string to pad.\n * @param {number} [length=0] The padding length.\n * @param {string} [chars=' '] The string used as padding.\n * @returns {string} Returns the padded string.\n * @example\n *\n * _.padStart('abc', 6);\n * // => ' abc'\n *\n * _.padStart('abc', 6, '_-');\n * // => '_-_abc'\n *\n * _.padStart('abc', 3);\n * // => 'abc'\n */\n function padStart(string, length, chars) {\n string = toString(string);\n length = toInteger(length);\n\n var strLength = length ? stringSize(string) : 0;\n return (length && strLength < length)\n ? (createPadding(length - strLength, chars) + string)\n : string;\n }\n\n /**\n * Converts `string` to an integer of the specified radix. If `radix` is\n * `undefined` or `0`, a `radix` of `10` is used unless `value` is a\n * hexadecimal, in which case a `radix` of `16` is used.\n *\n * **Note:** This method aligns with the\n * [ES5 implementation](https://es5.github.io/#x15.1.2.2) of `parseInt`.\n *\n * @static\n * @memberOf _\n * @since 1.1.0\n * @category String\n * @param {string} string The string to convert.\n * @param {number} [radix=10] The radix to interpret `value` by.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {number} Returns the converted integer.\n * @example\n *\n * _.parseInt('08');\n * // => 8\n *\n * _.map(['6', '08', '10'], _.parseInt);\n * // => [6, 8, 10]\n */\n function parseInt(string, radix, guard) {\n if (guard || radix == null) {\n radix = 0;\n } else if (radix) {\n radix = +radix;\n }\n return nativeParseInt(toString(string).replace(reTrimStart, ''), radix || 0);\n }\n\n /**\n * Repeats the given string `n` times.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category String\n * @param {string} [string=''] The string to repeat.\n * @param {number} [n=1] The number of times to repeat the string.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {string} Returns the repeated string.\n * @example\n *\n * _.repeat('*', 3);\n * // => '***'\n *\n * _.repeat('abc', 2);\n * // => 'abcabc'\n *\n * _.repeat('abc', 0);\n * // => ''\n */\n function repeat(string, n, guard) {\n if ((guard ? isIterateeCall(string, n, guard) : n === undefined)) {\n n = 1;\n } else {\n n = toInteger(n);\n }\n return baseRepeat(toString(string), n);\n }\n\n /**\n * Replaces matches for `pattern` in `string` with `replacement`.\n *\n * **Note:** This method is based on\n * [`String#replace`](https://mdn.io/String/replace).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category String\n * @param {string} [string=''] The string to modify.\n * @param {RegExp|string} pattern The pattern to replace.\n * @param {Function|string} replacement The match replacement.\n * @returns {string} Returns the modified string.\n * @example\n *\n * _.replace('Hi Fred', 'Fred', 'Barney');\n * // => 'Hi Barney'\n */\n function replace() {\n var args = arguments,\n string = toString(args[0]);\n\n return args.length < 3 ? string : string.replace(args[1], args[2]);\n }\n\n /**\n * Converts `string` to\n * [snake case](https://en.wikipedia.org/wiki/Snake_case).\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category String\n * @param {string} [string=''] The string to convert.\n * @returns {string} Returns the snake cased string.\n * @example\n *\n * _.snakeCase('Foo Bar');\n * // => 'foo_bar'\n *\n * _.snakeCase('fooBar');\n * // => 'foo_bar'\n *\n * _.snakeCase('--FOO-BAR--');\n * // => 'foo_bar'\n */\n var snakeCase = createCompounder(function(result, word, index) {\n return result + (index ? '_' : '') + word.toLowerCase();\n });\n\n /**\n * Splits `string` by `separator`.\n *\n * **Note:** This method is based on\n * [`String#split`](https://mdn.io/String/split).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category String\n * @param {string} [string=''] The string to split.\n * @param {RegExp|string} separator The separator pattern to split by.\n * @param {number} [limit] The length to truncate results to.\n * @returns {Array} Returns the string segments.\n * @example\n *\n * _.split('a-b-c', '-', 2);\n * // => ['a', 'b']\n */\n function split(string, separator, limit) {\n if (limit && typeof limit != 'number' && isIterateeCall(string, separator, limit)) {\n separator = limit = undefined;\n }\n limit = limit === undefined ? MAX_ARRAY_LENGTH : limit >>> 0;\n if (!limit) {\n return [];\n }\n string = toString(string);\n if (string && (\n typeof separator == 'string' ||\n (separator != null && !isRegExp(separator))\n )) {\n separator = baseToString(separator);\n if (!separator && hasUnicode(string)) {\n return castSlice(stringToArray(string), 0, limit);\n }\n }\n return string.split(separator, limit);\n }\n\n /**\n * Converts `string` to\n * [start case](https://en.wikipedia.org/wiki/Letter_case#Stylistic_or_specialised_usage).\n *\n * @static\n * @memberOf _\n * @since 3.1.0\n * @category String\n * @param {string} [string=''] The string to convert.\n * @returns {string} Returns the start cased string.\n * @example\n *\n * _.startCase('--foo-bar--');\n * // => 'Foo Bar'\n *\n * _.startCase('fooBar');\n * // => 'Foo Bar'\n *\n * _.startCase('__FOO_BAR__');\n * // => 'FOO BAR'\n */\n var startCase = createCompounder(function(result, word, index) {\n return result + (index ? ' ' : '') + upperFirst(word);\n });\n\n /**\n * Checks if `string` starts with the given target string.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category String\n * @param {string} [string=''] The string to inspect.\n * @param {string} [target] The string to search for.\n * @param {number} [position=0] The position to search from.\n * @returns {boolean} Returns `true` if `string` starts with `target`,\n * else `false`.\n * @example\n *\n * _.startsWith('abc', 'a');\n * // => true\n *\n * _.startsWith('abc', 'b');\n * // => false\n *\n * _.startsWith('abc', 'b', 1);\n * // => true\n */\n function startsWith(string, target, position) {\n string = toString(string);\n position = position == null\n ? 0\n : baseClamp(toInteger(position), 0, string.length);\n\n target = baseToString(target);\n return string.slice(position, position + target.length) == target;\n }\n\n /**\n * Creates a compiled template function that can interpolate data properties\n * in \"interpolate\" delimiters, HTML-escape interpolated data properties in\n * \"escape\" delimiters, and execute JavaScript in \"evaluate\" delimiters. Data\n * properties may be accessed as free variables in the template. If a setting\n * object is given, it takes precedence over `_.templateSettings` values.\n *\n * **Note:** In the development build `_.template` utilizes\n * [sourceURLs](http://www.html5rocks.com/en/tutorials/developertools/sourcemaps/#toc-sourceurl)\n * for easier debugging.\n *\n * For more information on precompiling templates see\n * [lodash's custom builds documentation](https://lodash.com/custom-builds).\n *\n * For more information on Chrome extension sandboxes see\n * [Chrome's extensions documentation](https://developer.chrome.com/extensions/sandboxingEval).\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category String\n * @param {string} [string=''] The template string.\n * @param {Object} [options={}] The options object.\n * @param {RegExp} [options.escape=_.templateSettings.escape]\n * The HTML \"escape\" delimiter.\n * @param {RegExp} [options.evaluate=_.templateSettings.evaluate]\n * The \"evaluate\" delimiter.\n * @param {Object} [options.imports=_.templateSettings.imports]\n * An object to import into the template as free variables.\n * @param {RegExp} [options.interpolate=_.templateSettings.interpolate]\n * The \"interpolate\" delimiter.\n * @param {string} [options.sourceURL='lodash.templateSources[n]']\n * The sourceURL of the compiled template.\n * @param {string} [options.variable='obj']\n * The data object variable name.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {Function} Returns the compiled template function.\n * @example\n *\n * // Use the \"interpolate\" delimiter to create a compiled template.\n * var compiled = _.template('hello <%= user %>!');\n * compiled({ 'user': 'fred' });\n * // => 'hello fred!'\n *\n * // Use the HTML \"escape\" delimiter to escape data property values.\n * var compiled = _.template('<%- value %>');\n * compiled({ 'value': '\"); // \"<script src="javascript:alert('Hello');"></script>\"\r\n * ```\r\n */\r\n/*#__NO_SIDE_EFFECTS__*/\r\nexport function encodeAsHtml(value: string) {\r\n !_htmlEntityCache && (_htmlEntityCache = {\r\n \"&\": \"amp\",\r\n \"<\": \"lt\",\r\n \">\": \"gt\",\r\n \"\\\"\": \"quot\",\r\n \"'\": \"#39\"\r\n });\r\n \r\n return asString(value).replace(/[&<>\"']/g, match => \"&\" + _htmlEntityCache[match] + \";\");\r\n}\r\n","/*\r\n * @nevware21/ts-utils\r\n * https://github.com/nevware21/ts-utils\r\n *\r\n * Copyright (c) 2022 NevWare21 Solutions LLC\r\n * Licensed under the MIT license.\r\n */\r\n\r\nimport { getWindow, hasWindow } from \"../helpers/environment\";\r\nimport { CALL, CONSTRUCTOR, FUNCTION, ObjClass, OBJECT, PROTOTYPE, TO_STRING } from \"../internal/constants\";\r\nimport { objHasOwnProperty } from \"./has_own_prop\";\r\nimport { objGetPrototypeOf } from \"./object\";\r\n\r\n// Use to cache the result of Object.cont\r\nlet _fnToString: () => string;\r\nlet _objCtrFnString: string;\r\nlet _gblWindow: Window;\r\n\r\n/**\r\n * Checks to see if the past value is a plain object (not a class/array) value.\r\n * Object are considered to be \"plain\" if they are created with no prototype `Object.create(null)`\r\n * or by using the Object global (native) function, all other \"objects\" ar\r\n * @since 0.4.4\r\n * @group Type Identity\r\n * @group Object\r\n * @param value - The value to check\r\n * @returns true if `value` is a normal plain object\r\n * @example\r\n * ```ts\r\n * console.log(isPlainObject({ 0: 'a', 1: 'b', 2: 'c' })); // true\r\n * console.log(isPlainObject({ 100: 'a', 2: 'b', 7: 'c' })); // true\r\n * console.log(isPlainObject(objCreate(null))); // true\r\n *\r\n * const myObj = objCreate({}, {\r\n * getFoo: {\r\n * value() { return this.foo; }\r\n * }\r\n * });\r\n * myObj.foo = 1;\r\n * console.log(isPlainObject(myObj)); // true\r\n *\r\n * console.log(isPlainObject(['a', 'b', 'c'])); // false\r\n * console.log(isPlainObject(new Date())); // false\r\n * console.log(isPlainObject(new Error(\"An Error\"))); // false\r\n * console.log(isPlainObject(null)); // false\r\n * console.log(isPlainObject(undefined)); // false\r\n * console.log(isPlainObject(\"null\")); // false\r\n * console.log(isPlainObject(\"undefined\")); // false\r\n * console.log(isPlainObject(\"1\")); // false\r\n * console.log(isPlainObject(\"aa\")); // false\r\n * ```\r\n */\r\n/*#__NO_SIDE_EFFECTS__*/\r\nexport function isPlainObject(value: any): value is object {\r\n if (!value || typeof value !== OBJECT) {\r\n return false;\r\n }\r\n\r\n if (!_gblWindow) {\r\n // Lazily cache the current global window value and default it to \"true\" (so we bypass this check in the future)\r\n _gblWindow = hasWindow() ? getWindow() : (true as any);\r\n }\r\n\r\n let result = false;\r\n if (value !== _gblWindow) {\r\n\r\n if (!_objCtrFnString) {\r\n // Lazily caching what the runtime reports as the object function constructor (as a string)\r\n // Using an current function lookup to find what this runtime calls a \"native\" function\r\n _fnToString = Function[PROTOTYPE][TO_STRING];\r\n _objCtrFnString = _fnToString[CALL](ObjClass);\r\n }\r\n\r\n try {\r\n let proto = objGetPrototypeOf(value);\r\n\r\n // No prototype so looks like an object created with Object.create(null)\r\n result = !proto;\r\n if (!result) {\r\n if (objHasOwnProperty(proto, CONSTRUCTOR)) {\r\n proto = proto[CONSTRUCTOR]\r\n }\r\n \r\n result = !!(proto && typeof proto === FUNCTION && _fnToString[CALL](proto) === _objCtrFnString);\r\n }\r\n } catch (ex) {\r\n // Something went wrong, so it's not an object we are playing with\r\n }\r\n }\r\n\r\n return result;\r\n}\r\n","/*\r\n * @nevware21/ts-utils\r\n * https://github.com/nevware21/ts-utils\r\n *\r\n * Copyright (c) 2022 NevWare21 Solutions LLC\r\n * Licensed under the MIT license.\r\n */\r\n\r\nimport { arrForEach } from \"../array/forEach\";\r\nimport { isArray, isDate, isNullOrUndefined, isPrimitiveType } from \"../helpers/base\";\r\nimport { CALL, FUNCTION, NULL_VALUE, OBJECT } from \"../internal/constants\";\r\nimport { objDefine } from \"./define\";\r\nimport { isPlainObject } from \"./is_plain_object\";\r\n\r\n/**\r\n * @internal\r\n * @ignore\r\n * Provides the current context while performing a deep copy\r\n */\r\ninterface _DeepCopyContext {\r\n handler: ObjDeepCopyHandler;\r\n src: any;\r\n path?: Array;\r\n}\r\n\r\n/**\r\n * @internal\r\n * @ignore\r\n * Defines the type used for tracking visited objects during deep copy to identify recursive\r\n * objects.\r\n */\r\ninterface _RecursiveVisitMap {\r\n k: any;\r\n v: any;\r\n}\r\n\r\n/**\r\n * @internal\r\n * @ignore\r\n * Generic Object deep copy handler which creates a new plain object and copies enumerable properties from\r\n * the source to the new target plain object. The source object does not have to be a plain object.\r\n * @param details - The details object for the current property being copied\r\n * @returns true if the handler processed the field.\r\n */\r\n/*#__NO_SIDE_EFFECTS__*/\r\nfunction _defaultDeepCopyHandler(details: IObjDeepCopyHandlerDetails): boolean {\r\n // Make sure we at least copy plain objects\r\n details.value && plainObjDeepCopyHandler(details);\r\n\r\n // Always return true so that the iteration completes\r\n return true;\r\n}\r\n\r\n/**\r\n * @internal\r\n * @ignore\r\n * The ordered default deep copy handlers\r\n */\r\nconst defaultDeepCopyHandlers: ObjDeepCopyHandler[] = [\r\n arrayDeepCopyHandler,\r\n plainObjDeepCopyHandler,\r\n functionDeepCopyHandler,\r\n dateDeepCopyHandler\r\n];\r\n\r\n/**\r\n * @internal\r\n * @ignore\r\n * Helper function used for detecting and handling recursive properties\r\n * @param visitMap - The current map of objects that have been visited\r\n * @param source - The value (object) to be copied\r\n * @param newPath - The new access path from the origin to the current property\r\n * @param cb - The callback function to call if the current object has not already been processed.\r\n * @returns The new deep copied property, may be incomplete as the object is recursive and is still in the process of being copied\r\n */\r\n/*#__NO_SIDE_EFFECTS__*/\r\nfunction _getSetVisited(visitMap: _RecursiveVisitMap[], source: any, newPath: Array, cb: (newEntry: _RecursiveVisitMap) => void) {\r\n let theEntry: _RecursiveVisitMap;\r\n arrForEach(visitMap, (entry) => {\r\n if (entry.k === source) {\r\n theEntry = entry;\r\n return -1;\r\n }\r\n });\r\n\r\n if (!theEntry) {\r\n // Add the target to the visit map so that deep nested objects refer to the single instance\r\n // Even if we have not finished processing it yet.\r\n theEntry = { k: source, v: source };\r\n visitMap.push(theEntry);\r\n\r\n // Now call the copy callback so that it populates the target\r\n cb(theEntry);\r\n }\r\n\r\n return theEntry.v;\r\n}\r\n\r\n/**\r\n * @internal\r\n * @ignore\r\n * Internal helper which performs the recursive deep copy\r\n * @param visitMap - The current map of objects that have been visited\r\n * @param value - The value being copied\r\n * @param ctx - The current copy context\r\n * @param key - [Optional] the current `key` for the value from the source object\r\n * @returns The new deep copied instance of the value.\r\n */\r\nfunction _deepCopy(visitMap: _RecursiveVisitMap[], value: T, ctx: _DeepCopyContext, key?: string | number | symbol): T {\r\n let userHandler = ctx.handler;\r\n let newPath = ctx.path ? (key ? ctx.path.concat(key) : ctx.path) : [];\r\n\r\n let newCtx: _DeepCopyContext = {\r\n handler: ctx.handler,\r\n src: ctx.src,\r\n path: newPath\r\n };\r\n\r\n const theType = typeof value;\r\n let isPlain = false;\r\n let isPrim = value === NULL_VALUE;\r\n if (!isPrim) {\r\n if (value && theType === OBJECT) {\r\n isPlain = isPlainObject(value);\r\n } else {\r\n isPrim = isPrimitiveType(theType);\r\n }\r\n }\r\n\r\n let details: IObjDeepCopyHandlerDetails = {\r\n type: theType,\r\n isPrim: isPrim,\r\n isPlain: isPlain,\r\n value: value,\r\n result: value,\r\n path: newPath,\r\n origin: ctx.src,\r\n copy: (source: T, newKey?: string | number | symbol): T => {\r\n return _deepCopy(visitMap, source, newKey ? newCtx : ctx, newKey);\r\n },\r\n copyTo: (target: T, source: T): T => {\r\n return _copyProps(visitMap, target, source, newCtx);\r\n }\r\n };\r\n\r\n if (!details.isPrim) {\r\n return _getSetVisited(visitMap, value, newPath, (newEntry) => {\r\n\r\n // Use an accessor to set the new value onto the new entry\r\n objDefine(details, \"result\", {\r\n g: function () {\r\n return newEntry.v;\r\n },\r\n s: function (newValue: any) {\r\n newEntry.v = newValue;\r\n }\r\n });\r\n\r\n let idx = 0;\r\n let handler = userHandler;\r\n while (!(handler || (idx < defaultDeepCopyHandlers.length ? defaultDeepCopyHandlers[idx++] : _defaultDeepCopyHandler))[CALL](ctx, details)) {\r\n handler = NULL_VALUE;\r\n }\r\n });\r\n }\r\n\r\n // Allow the user handler to override the provided value\r\n if (userHandler && userHandler[CALL](ctx, details)) {\r\n return details.result;\r\n }\r\n\r\n return value;\r\n}\r\n\r\n/**\r\n * @internal\r\n * @ignore\r\n * Internal helper to copy all of the enumerable properties from the source object to the new target object\r\n * @param visitMap - The current map of objects that have been visited\r\n * @param target - The target object to copy the properties to.\r\n * @param source - The source object to copy the properties from.\r\n * @param ctx - The current deep copy context\r\n * @returns The populated target object\r\n */\r\nfunction _copyProps(visitMap: _RecursiveVisitMap[], target: T, source: T, ctx: _DeepCopyContext) {\r\n if (!isNullOrUndefined(source)) {\r\n // Copy all properties (not just own properties)\r\n for (const key in source) {\r\n // Perform a deep copy of the object\r\n target[key] = _deepCopy(visitMap, source[key], ctx, key);\r\n }\r\n }\r\n\r\n return target;\r\n}\r\n\r\n/**\r\n * Object helper to copy all of the enumerable properties from the source object to the target, the\r\n * properties are copied via {@link objDeepCopy}. Automatic handling of recursive properties was added in v0.4.4\r\n * @group Object\r\n * @param target - The target object to populated\r\n * @param source - The source object to copy the properties from\r\n * @param handler - An optional callback that lets you provide / overide the deep cloning (Since 0.4.4)\r\n * @returns The target object\r\n * @example\r\n * ```ts\r\n * let a: any = { a: 1 };\r\n * let b: any = { b: 2, d: new Date(), e: new TestClass(\"Hello Darkness\") };\r\n * a.b = b; // { a: 1, b: { b: 2} }\r\n * b.a = a; // { a: 1, b: { b: 2, a: { a: 1, { b: 2, a: ... }}}}\r\n *\r\n * function copyHandler(details: IObjDeepCopyHandlerDetails) {\r\n * // details.origin === a\r\n * // details.path[] is the path to the current value\r\n * if (details.value && isDate(details.value)) {\r\n * // So for the date path === [ \"b\", \"d\" ] which represents\r\n * // details.origin[\"b\"][\"d\"] === The Date\r\n *\r\n * // Create a clone the Date object and set as the \"newValue\"\r\n * details.value = new Date(details.value.getTime());\r\n *\r\n * // Return true to indicate that we have \"handled\" the conversion\r\n * // See objDeepCopy example for just reusing the original value (just don't replace details.value)\r\n * return true;\r\n * }\r\n *\r\n * return false;\r\n * }\r\n *\r\n * let c: any = objCopyProps({}, a, copyHandler);\r\n *\r\n * assert.notEqual(a, c, \"check a and c are not the same\");\r\n * assert.ok(c !== c.b.a, \"The root object won't be the same for the target reference as are are copying properties to our target\");\r\n * assert.ok(c.b === c.b.a.b, \"Check that the 2 'b' references are the same object\");\r\n * assert.ok(c.b.a === c.b.a.b.a, \"Check that the 2 'a' references are the same object\");\r\n * assert.ok(c.b.d === c.b.a.b.d, \"Check that the 2 'd' references are the same object\");\r\n * assert.ok(isDate(c.b.d), \"The copied date is still real 'Date' instance\");\r\n * assert.notEqual(c.b.d, a.b.d, \"And the copied date is not the same as the original\");\r\n * assert.equal(c.b.d.getTime(), a.b.d.getTime(), \"But the dates are the same\");\r\n *\r\n * assert.ok(isObject(c.b.d), \"The copied date is now an object\");\r\n * ```\r\n */\r\nexport function objCopyProps(target: T, source: any, handler?: ObjDeepCopyHandler) {\r\n let ctx: _DeepCopyContext = {\r\n handler: handler,\r\n src: source,\r\n path: []\r\n };\r\n\r\n return _copyProps([], target, source, ctx);\r\n}\r\n\r\n/**\r\n * Context details passed to the deep copy handler to allow it parse the current value based on the original source\r\n * and path to reach the current value. The provided value should be updated with the value to by copied into the\r\n * new deep copy and will be used when the handler returns true.\r\n * @since 0.4.4\r\n * @group Object - Deep Copy\r\n */\r\nexport interface IObjDeepCopyHandlerDetails {\r\n /**\r\n * Identifies the type of the value as per `typeof value`, saves each check having to process this value.\r\n */\r\n type: string;\r\n\r\n /**\r\n * Identifies whether the type of the value is considered to be a primitive value\r\n */\r\n isPrim: boolean;\r\n\r\n /**\r\n * Identifies whether the type is a plain object or not, this also saves each handler from checking\r\n * the `type`, currently the type will also be \"object\" if this is `true`.\r\n * @since 0.9.6\r\n */\r\n isPlain: boolean;\r\n\r\n /**\r\n * The current value to be processed, replace this value with the new deep copied value to use when returning\r\n * true from the handler. Ignored when the handler returns false.\r\n */\r\n readonly value: any;\r\n\r\n /**\r\n * Replace this value with the new deep copied value (defaults to the same as the value property) this value will be\r\n * used when returning true from the handler. Ignored when the handler returns false.\r\n */\r\n result: any;\r\n\r\n /**\r\n * A array of keys from the orginal source (origin) object which lead to the current value\r\n */\r\n path: Array;\r\n\r\n /**\r\n * The original source object passed into the `objDeepCopy()` or `objCopyProps()` functions.\r\n */\r\n origin?: any;\r\n\r\n /**\r\n * Continue the deep copy with the current context and recursive checks, effectively calls {@link objDeepCopy}\r\n * but keeps the current context and recursive references.\r\n * @param source - The source object to be copied\r\n */\r\n copy(source: T, key?: string | number | symbol): T;\r\n\r\n /**\r\n * Continue the deep copy with the current context and recursive checks by copying all of the properties\r\n * from the source to the target instance, effectively calls {@link objCopyProps} but keeps the current context\r\n * and recursive references.\r\n * @param target - The target object to populated\r\n * @param source - The source object to copy the properties from\r\n */\r\n copyTo(target: T, source: T): T;\r\n}\r\n\r\n/**\r\n * An optional deep copy handler that lets you provide your own logic for deep copying objects, will\r\n * only be called once per object/property combination, so if an object is recursively included it\r\n * will only get called for the first instance.\r\n * Handlers SHOULD assign the \"result\" value with the new target instance BEFORE performing any additional deep copying,\r\n * so any recursive objects will get a reference to the new instance and not keep attempting to create new copies.\r\n * @since 0.4.4\r\n * @group Object - Deep Copy\r\n * @return true if handled and the value in details should be used otherwise false to continue with the default handling\r\n * The library includes several helpers which can be reused by any user provided handler\r\n * - {@link functionDeepCopyHandler} - Used to copy functions\r\n * - {@link arrayDeepCopyHandler} - Used to copy arrays\r\n * - {@link plainObjDeepCopyHandler} - Used to copy plain objects\r\n * - {@link dateDeepCopyHandler} - Used to copy date instances\r\n */\r\nexport type ObjDeepCopyHandler = (details: IObjDeepCopyHandlerDetails) => boolean;\r\n\r\n/**\r\n * Performs a deep copy of the source object, this is designed to work with base (plain) objects, arrays and primitives\r\n * if the source object contains class objects they will either be not cloned or may be considered non-operational after\r\n * performing a deep copy. ie. This is performing a deep copy of the objects properties so that altering the copy will\r\n * not mutate the source object hierarchy.\r\n * Automatic handling of recursive properties was added in v0.4.4.\r\n * @group Object\r\n * @group Object - Deep Copy\r\n * @param source - The source object to be copied\r\n * @param handler - An optional callback that lets you provide / overide the deep cloning (Since 0.4.4)\r\n * @return A new object which contains a deep copy of the source properties\r\n * @example\r\n * ```ts\r\n * let a: any = { a: 1 };\r\n * let b: any = { b: 2, d: new Date(), e: new TestClass(\"Hello Darkness\") };\r\n * a.b = b; // { a: 1, b: { b: 2} }\r\n * b.a = a; // { a: 1, b: { b: 2, a: { a: 1, { b: 2, a: ... }}}}\r\n *\r\n * function copyHandler(details: IObjDeepCopyHandlerDetails) {\r\n * // details.origin === a\r\n * // details.path[] is the path to the current value\r\n * if (details.value && isDate(details.value)) {\r\n * // So for the date path === [ \"b\", \"d\" ] which represents\r\n * // details.origin[\"b\"][\"d\"] === The Date\r\n *\r\n * // Return true to indicate that we have \"handled\" the conversion\r\n * // Which in this case will reuse the existing instance (as we didn't replace details.value)\r\n * // See objCopyProps example for replacing the Date instance\r\n * return true;\r\n * }\r\n *\r\n * return false;\r\n * }\r\n *\r\n * let c: any = objDeepCopy(a, copyHandler);\r\n *\r\n * assert.notEqual(a, c, \"check a and c are not the same\");\r\n * assert.ok(c === c.b.a, \"The root object won't be the same for the target reference\");\r\n * assert.ok(c.b === c.b.a.b, \"Check that the 2 'b' references are the same object\");\r\n * assert.ok(c.b.a === c.b.a.b.a, \"Check that the 2 'a' references are the same object\");\r\n * assert.ok(c.b.d === c.b.a.b.d, \"Check that the 2 'd' references are the same object\");\r\n * assert.ok(isDate(c.b.d), \"The copied date is still real 'Date' instance\");\r\n * assert.equal(c.b.d, a.b.d, \"And the copied date is the original date\");\r\n * assert.equal(c.b.d.getTime(), a.b.d.getTime(), \"But the dates are the same\");\r\n * assert.ok(isObject(c.b.d), \"The copied date is now an object\");\r\n * assert.ok(!isError(c.b.e), \"The copied error is no longer a real 'Error' instance\");\r\n * assert.ok(isObject(c.b.e), \"The copied error is now an object\");\r\n * assert.equal(42, c.b.e.value, \"Expect that the local property was copied\");\r\n * ```\r\n */\r\n/*#__NO_SIDE_EFFECTS__*/\r\nexport function objDeepCopy(source: T, handler?: ObjDeepCopyHandler): T {\r\n let ctx: _DeepCopyContext = {\r\n handler: handler,\r\n src: source\r\n };\r\n\r\n return _deepCopy([], source, ctx);\r\n}\r\n\r\n/**\r\n * Deep copy handler to identify and copy arrays.\r\n * @since 0.4.4\r\n * @group Object - Deep Copy\r\n * @param details - The details object for the current property being copied\r\n * @returns `true` if the current value is a function otherwise `false`\r\n */\r\nexport function arrayDeepCopyHandler(details: IObjDeepCopyHandlerDetails): boolean {\r\n let value = details.value;\r\n if (isArray(value)) {\r\n // Assign the \"result\" value before performing any additional deep Copying, so any recursive object get a reference to this instance\r\n let target: any[] = details.result = [];\r\n target.length = value.length;\r\n\r\n // Copying all properties as arrays can contain non-indexed based properties\r\n details.copyTo(target, value);\r\n return true;\r\n }\r\n\r\n return false;\r\n}\r\n\r\n/**\r\n * Deep copy handler to identify and copy Date instances.\r\n * @since 0.4.4\r\n * @group Object - Deep Copy\r\n * @param details - The details object for the current property being copied\r\n * @returns `true` if the current value is a function otherwise `false`\r\n */\r\nexport function dateDeepCopyHandler(details: IObjDeepCopyHandlerDetails) {\r\n let value = details.value;\r\n if (isDate(value)) {\r\n details.result = new Date(value.getTime());\r\n return true;\r\n }\r\n\r\n return false;\r\n}\r\n\r\n/**\r\n * Deep copy handler to identify and copy functions. This handler just returns the original\r\n * function so the original function will be assigned to any new deep copied instance.\r\n * @since 0.4.4\r\n * @group Object - Deep Copy\r\n * @param details - The details object for the current property being copied\r\n * @returns `true` if the current value is a function otherwise `false`\r\n */\r\nexport function functionDeepCopyHandler(details: IObjDeepCopyHandlerDetails): boolean {\r\n if (details.type === FUNCTION) {\r\n return true;\r\n }\r\n\r\n return false;\r\n}\r\n\r\n/**\r\n * Deep copy handler to identify and copy plain objects.\r\n * @since 0.4.4\r\n * @group Object - Deep Copy\r\n * @param details - The details object for the current property being copied\r\n * @returns `true` if the current value is a function otherwise `false`\r\n */\r\nexport function plainObjDeepCopyHandler(details: IObjDeepCopyHandlerDetails): boolean {\r\n let value = details.value;\r\n if (value && details.isPlain) {\r\n // Assign the \"result\" value before performing any additional deep Copying, so any recursive object get a reference to this instance\r\n let target = details.result = {};\r\n details.copyTo(target, value);\r\n return true;\r\n }\r\n\r\n return false;\r\n}\r\n","/*\r\n * @nevware21/ts-utils\r\n * https://github.com/nevware21/ts-utils\r\n *\r\n * Copyright (c) 2022 NevWare21 Solutions LLC\r\n * Licensed under the MIT license.\r\n */\r\n\r\nimport { arrForEach } from \"../array/forEach\";\r\nimport { ArrSlice, CALL } from \"../internal/constants\";\r\nimport { objCopyProps, objDeepCopy } from \"../object/copy\";\r\n\r\n/**\r\n * @internal\r\n * @ignore\r\n */\r\nfunction _doExtend(target: T, theArgs: any[]): any {\r\n arrForEach(theArgs, (theArg) => {\r\n objCopyProps(target, theArg);\r\n });\r\n\r\n return target;\r\n}\r\n\r\n/**\r\n * Create a new object by merging the passed arguments, this is effectively the same as calling `objExtend({}, ...theArgs)` where\r\n * all of the arguments are added to a new object that is returned.\r\n * @group Object\r\n * @param target - The original object to be extended.\r\n * @param theArgs - The optional number of arguments to be copied\r\n * @returns - A new object or the original\r\n */\r\nexport function deepExtend(target: T, ...theArgs: any): T & any;\r\n\r\n/**\r\n * Create a new object by merging the passed arguments, this is effectively the same as calling `objExtend({}, ...theArgs)` where\r\n * all of the arguments are added to a new object that is returned.\r\n * @group Object\r\n * @param target - The original object to be extended.\r\n * @param objN - The optional number of arguments to be copied\r\n * @returns - A new object or the original\r\n */\r\nexport function deepExtend(target: T, obj1?: T1, obj2?: T2, obj3?: T3, obj4?: T4, obj5?: T5, obj6?: T6): T & T1 & T2 & T3 & T4 & T5 & T6 {\r\n return _doExtend(objDeepCopy(target) || {}, ArrSlice[CALL](arguments));\r\n}\r\n \r\n/**\r\n * Extend the target object by merging the passed arguments into it\r\n * @group Object\r\n * @param target - The object to be extended or overwritten\r\n * @param theArgs - The optional number of arguments to be copied\r\n * @returns - A new object or the original\r\n */\r\nexport function objExtend(target: T, ...theArgs: any): T & any;\r\n\r\n/**\r\n * Extend the target object by merging the passed arguments into it\r\n * @group Object\r\n * @param target - The object to be extended or overwritten\r\n * @param objN - The optional number of arguments to be copied\r\n * @returns - A new object or the original\r\n */\r\nexport function objExtend(target: T, obj1?: T1, obj2?: T2, obj3?: T3, obj4?: T4, obj5?: T5, obj6?: T6): T & T1 & T2 & T3 & T4 & T5 & T6 {\r\n return _doExtend(target || {}, ArrSlice[CALL](arguments));\r\n}\r\n\r\n ","/*\r\n * @nevware21/ts-utils\r\n * https://github.com/nevware21/ts-utils\r\n *\r\n * Copyright (c) 2022 NevWare21 Solutions LLC\r\n * Licensed under the MIT license.\r\n */\r\n\r\nimport { LENGTH } from \"../internal/constants\";\r\nimport { _unwrapProp } from \"../internal/unwrapFunction\";\r\n\r\n/**\r\n * Interface to identify that an object contains the length property used as a type\r\n * constraint for {@link getLength}\r\n *\r\n * @since 0.4.2\r\n * @group String\r\n * @group Array\r\n * @group Object\r\n */\r\nexport interface IGetLength {\r\n\r\n /**\r\n * Identifies the property that returns the length of the instance\r\n */\r\n length: unknown;\r\n}\r\n\r\n/**\r\n * Helper to return the length value of an object, this will return the value\r\n * of the \"length\" property. Generally used to return the length of a string or array.\r\n *\r\n * @since 0.4.2\r\n * @group Array\r\n * @group String\r\n * @group String\r\n * @group Array\r\n * @group Object\r\n * @param value - The value to return the length property from, must contain a `length` property\r\n * @example\r\n * ```ts\r\n * getLength(\"\"); // returns 0\r\n * getLength(\"Hello World\"); // returns 11\r\n * getLength([]); // returns 0;\r\n * getLength([0, 1, 2, 3]); // returns 4;\r\n * getLength({ length: 42}); // returns 42\r\n * getLength({ length: () => 53; }); // returns the function that if called would return 53\r\n * ```\r\n */\r\nexport const getLength: (value: T) => T[\"length\"] = (/*#__PURE__*/_unwrapProp(LENGTH));\r\n","/*\r\n * @nevware21/ts-utils\r\n * https://github.com/nevware21/ts-utils\r\n *\r\n * Copyright (c) 2022 NevWare21 Solutions LLC\r\n * Licensed under the MIT license.\r\n */\r\n\r\nimport { ICachedValue, createCachedValue } from \"./cache\";\r\nimport { utcNow } from \"./date\";\r\nimport { getInst } from \"./environment\";\r\nimport { _globalLazyTestHooks, _initTestHooks } from \"./lazy\";\r\nimport { safe } from \"./safe\";\r\n\r\nlet _perf: ICachedValue\r\n\r\n/**\r\n * Identify whether the runtimne contains a `performance` object\r\n *\r\n * @since 0.4.4\r\n * @group Environment\r\n * @returns\r\n */\r\n/*#__NO_SIDE_EFFECTS__*/\r\nexport function hasPerformance(): boolean {\r\n return !!getPerformance();\r\n}\r\n\r\n/**\r\n * Returns the global `performance` Object if available, which can be used to\r\n * gather performance information about the current document. It serves as the\r\n * point of exposure for the Performance Timeline API, the High Resolution Time\r\n * API, the Navigation Timing API, the User Timing API, and the Resource Timing API.\r\n *\r\n * @since 0.4.4\r\n * @group Environment\r\n * @returns The global performance object if available.\r\n */\r\n/*#__NO_SIDE_EFFECTS__*/\r\nexport function getPerformance(): Performance {\r\n !_globalLazyTestHooks && _initTestHooks();\r\n if (!_perf || _globalLazyTestHooks.lzy) {\r\n _perf = createCachedValue(safe(getInst, [\"performance\"]).v);\r\n }\r\n \r\n return _perf.v;\r\n}\r\n\r\n/**\r\n * Returns the number of milliseconds that has elapsed since the time origin, if\r\n * the runtime does not support the `performance` API it will fallback to return\r\n * the number of milliseconds since the unix epoch.\r\n *\r\n * @since 0.4.4\r\n * @group Timer\r\n *\r\n * @returns The number of milliseconds as a `DOMHighResTimeStamp` double value or\r\n * an integer depending on the runtime.\r\n * @example\r\n * ```ts\r\n * let now = perfNow();\r\n * ```\r\n */\r\n/*#__NO_SIDE_EFFECTS__*/\r\nexport function perfNow(): number {\r\n let perf = getPerformance();\r\n if (perf && perf.now) {\r\n return perf.now();\r\n }\r\n\r\n return utcNow();\r\n}\r\n\r\n/**\r\n * Return the number of milliseconds that have elapsed since the provided `startTime`\r\n * the `startTime` MUST be obtained from {@link perfNow} to ensure the correct elapsed\r\n * value is returned.\r\n *\r\n * @since 0.4.4\r\n * @group Timer\r\n *\r\n * @param startTime - The startTime obtained from `perfNow`\r\n * @returns The number of milliseconds that have elapsed since the startTime.\r\n * @example\r\n * ```ts\r\n * let start = perfNow();\r\n * // Do some work\r\n * let totalTime = elapsedTime(start);\r\n * ```\r\n */\r\n/*#__NO_SIDE_EFFECTS__*/\r\nexport function elapsedTime(startTime: number): number {\r\n return perfNow() - startTime;\r\n}","/*\r\n * @nevware21/ts-utils\r\n * https://github.com/nevware21/ts-utils\r\n *\r\n * Copyright (c) 2023 NevWare21 Solutions LLC\r\n * Licensed under the MIT license.\r\n */\r\n\r\nimport { NULL_VALUE, StrProto } from \"../internal/constants\";\r\nimport { _unwrapFunction, _unwrapFunctionWithPoly } from \"../internal/unwrapFunction\";\r\nimport { polyStrSymSplit } from \"../polyfills/split\";\r\nimport { hasSymbol } from \"../symbol/symbol\";\r\n\r\n/**\r\n * The `strSplit()` splits a string into substrings using the pattern and divides a String\r\n * into an ordered list of substrings by searching for the pattern, puts these substrings\r\n * into an array, and returns the array.\r\n * @since 0.9.1\r\n * @group String\r\n * @param value - The string value to be split into substrings.\r\n * @param separator - The pattern describing where each split should occur. Can be undefined, a\r\n * string, or an object with a [`Symbol.split`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Symbol/split)\r\n * method (if supported) — the typical example being a regular expression. Omitting separator or\r\n * passing undefined causes strSplit() to return an array with the calling string as a single\r\n * element. All values that are not undefined or objects with a `@@split` method are coerced to strings.\r\n * @param limit - A non-negative integer specifying a limit on the number of substrings to be\r\n * included in the array. If provided, splits the string at each occurrence of the specified\r\n * separator, but stops when limit entries have been placed in the array. Any leftover text is\r\n * not included in the array at all.\r\n * - The array may contain fewer entries than limit if the end of the string is reached before\r\n * the limit is reached.\r\n * - If limit is 0, [] is returned.\r\n * @return An Array of strings, split at each point where the separator occurs in the given string.\r\n * @example\r\n * ```ts\r\n * strSplit(\"Oh brave new world that has such people in it.\", \" \");\r\n * // [ \"Oh\", \"brave\", \"new\", \"world\", \"that\", \"has\", \"such\", \"people\", \"in\", \"it.\" ]\r\n *\r\n * strSplit(\"Jan,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,Dec\", \",\");\r\n * // [ \"Jan\", \"Feb\", \"Mar\", \"Apr\", \"May\", \"Jun\", \"Jul\", \"Aug\", \"Sep\", \"Oct\", \"Nov\", \"Dec\" ]\r\n * ```\r\n */\r\nexport const strSplit: (value: string, separator: string | RegExp, limit?: number) => string[] = (/*#__PURE__*/_unwrapFunction(\"split\", StrProto));\r\n\r\n/**\r\n * The `strSymSplit()` splits a string into substrings using the [`Symbol.split`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Symbol/split)\r\n * method from the splitter object to provide custom behavior. If the runtime supports symbols\r\n * then the default runtime `split` method will be called, It will use {@link getKnownSymbol}\r\n * to get the {@link WellKnownSymbols.split} symbol which will return the runtime symbol or the\r\n * polyfill symbol when not supported by the runtime.\r\n * @since 0.9.1\r\n * @group String\r\n * @param value - The string value to be split into substrings.\r\n * @param splitter - The object which contains a Symbol.split method, Omitting splitter or passing\r\n * an object that doesn't contain a Symbol.split causes it to return an array with the calling\r\n * string as a single element.\r\n * @param limit - A non-negative integer specifying a limit on the number of substrings to be\r\n * included in the array. If provided, splits the string at each occurrence of the specified\r\n * separator, but stops when limit entries have been placed in the array. Any leftover text is\r\n * not included in the array at all.\r\n * - The array may contain fewer entries than limit if the end of the string is reached before\r\n * the limit is reached.\r\n * - If limit is 0, [] is returned.\r\n * @return An Array of strings, split at each point where the separator occurs in the given string.\r\n * @example\r\n * ```ts\r\n * const splitByNumber = {\r\n * [Symbol.split]: (str: string) => {\r\n * let num = 1;\r\n * let pos = 0;\r\n * const result = [];\r\n * while (pos < str.length) {\r\n * const matchPos = strIndexOf(str, asString(num), pos);\r\n * if (matchPos === -1) {\r\n * result.push(strSubstring(str, pos));\r\n * break;\r\n * }\r\n * result.push(strSubstring(str, pos, matchPos));\r\n * pos = matchPos + asString(num).length;\r\n * num++;\r\n * }\r\n * return result;\r\n * }\r\n * };\r\n *\r\n * const myString = \"a1bc2c5d3e4f\";\r\n * console.log(strSymSplit(myString, splitByNumber)); // [ \"a\", \"bc\", \"c5d\", \"e\", \"f\" ]\r\n * ```\r\n */\r\nexport const strSymSplit: (value: string, splitter: { [Symbol.split](string: string, limit?: number): string[]; }, limit?: number) => string[] = (/*#__PURE__*/_unwrapFunctionWithPoly(\"split\", StrProto, !hasSymbol() ? polyStrSymSplit : NULL_VALUE));\r\n","/*\r\n * @nevware21/ts-utils\r\n * https://github.com/nevware21/ts-utils\r\n *\r\n * Copyright (c) 2022 NevWare21 Solutions LLC\r\n * Licensed under the MIT license.\r\n */\r\n\r\nimport { arrForEach } from \"../array/forEach\";\r\nimport { isNullOrUndefined } from \"./base\";\r\nimport { strSplit } from \"../string/split\";\r\nimport { iterForOf } from \"../iterator/forOf\";\r\n\r\n/**\r\n * Get the named value from the target object where the path may be presented by a string which\r\n * contains \".\" characters to separate the nested objects of the heirarchy / path to the value.\r\n * @since 0.9.1\r\n * @group Value\r\n * @param target - The source object that contains the value\r\n * @param path - The path identifing the location where the value should be located\r\n * @param defValue - If the final value or any intervening object in the heirarchy is not present\r\n * the default value will be returned\r\n * @returns The value located based on the path or the defaule value\r\n * @example\r\n * ```ts\r\n * let theValue = {\r\n * Hello: {\r\n * Darkness: {\r\n * my: \"old\"\r\n * }\r\n * },\r\n * friend: \"I've\",\r\n * come: {\r\n * to: {\r\n * see: \"you\"\r\n * }\r\n * }\r\n * };\r\n *\r\n * let value = getValueByKey(theValue, \"Hello.Darkness.my\", \"friend\");\r\n * // value === \"my\"\r\n *\r\n * let value = getValueByKey(theValue, \"My.Old\", \"friend\");\r\n * // value === \"friend\"\r\n *\r\n * let value = getValueByKey(theValue, \"come.to\", \"friend\");\r\n * // value === { see: \"you\" }\r\n *\r\n * let value = getValueByKey(theValue, \"friend\", \"friend\");\r\n * // value === \"I've\"\r\n * ```\r\n */\r\n/*#__NO_SIDE_EFFECTS__*/\r\nexport function getValueByKey(target: T, path: string, defValue?: V): V {\r\n if (!path || !target) {\r\n return defValue;\r\n }\r\n\r\n let parts = strSplit(path, \".\");\r\n let cnt = parts.length;\r\n\r\n for (let lp = 0; lp < cnt && !isNullOrUndefined(target); lp++) {\r\n target = target[parts[lp]];\r\n }\r\n\r\n return (!isNullOrUndefined(target) ? target : defValue) as V;\r\n}\r\n\r\n/**\r\n * Get the named value from the target object where the path is represented by the string iterator\r\n * or iterable to separate the nested objects of the heirarchy / path to the value. If the target\r\n * does not contain the full path the iterator will not be completed.\r\n *\r\n * The order of processing of the iterator is not reset if you add or remove elements to the iterator,\r\n * the actual behavior will depend on the iterator imeplementation.\r\n *\r\n * If the passed `iter` is both an Iterable and Iterator the Iterator interface takes preceedence.\r\n * @since 0.9.1\r\n * @group Value\r\n * @param target - The source object that contains the value\r\n * @param iter - The iter identifying the path of the final key value\r\n * @param defValue - If the final value or any intervening object in the heirarchy is not present\r\n * the default value will be returned\r\n * @returns The value located based on the path or the defaule value\r\n * @example\r\n * ```ts\r\n * let theValue = {\r\n * Hello: {\r\n * Darkness: {\r\n * my: \"old\"\r\n * }\r\n * },\r\n * friend: \"I've\",\r\n * come: {\r\n * to: {\r\n * see: \"you\"\r\n * }\r\n * }\r\n * };\r\n *\r\n * let value = getValueByKey(theValue, [\"Hello\", \"Darkness\", \"my\"], \"friend\");\r\n * // value === \"my\"\r\n *\r\n * let value = getValueByKey(theValue, [\"My\", \"Old\"], \"friend\");\r\n * // value === \"friend\"\r\n *\r\n * let value = getValueByKey(theValue, [\"come\", \"to\"], \"friend\");\r\n * // value === { see: \"you\" }\r\n *\r\n * let value = getValueByKey(theValue, [\"friend\"], \"friend\");\r\n * // value === \"I've\"\r\n * ```\r\n */\r\n/*#__NO_SIDE_EFFECTS__*/\r\nexport function getValueByIter(target: T, iter: Iterator | Iterable, defValue?: V): V {\r\n if (!iter || !target) {\r\n return defValue;\r\n }\r\n\r\n iterForOf(iter, (value) => {\r\n if (isNullOrUndefined(target)) {\r\n return -1;\r\n }\r\n\r\n target = target[value];\r\n });\r\n\r\n return (!isNullOrUndefined(target) ? target : defValue) as V;\r\n}\r\n\r\n/**\r\n * Set the named value on the target object where the path may be presented by a string which\r\n * contains \".\" characters to separate the nested objects of the heirarchy / path to the value.\r\n * @since 0.9.1\r\n * @group Value\r\n * @param target - The target object\r\n * @param path - The path identifying the location of the final key value\r\n * @param value - The value to set\r\n * @example\r\n * ```ts\r\n * let theValue = { };\r\n * setValueByKey(theValue, \"Hello.Darkness.my\", \"old\");\r\n * // Resulting Object: { Hello: { Darkness: { my: \"old\" } } }\r\n * setValueByKey(theValue, \"friend\", \"I've\");\r\n * // Resulting Object: { Hello: { Darkness: { my: \"old\" } }, friend: \"I've\" }\r\n * setValueByKey(theValue, \"come.to.see\", \"you\");\r\n * // Resulting Object: { Hello: { Darkness: { my: \"old\" } }, friend: \"I've\", come: { to : { see: \"you\" } } }\r\n * ```\r\n */\r\nexport function setValueByKey(target: any, path: string, value: T) {\r\n if (target && path) {\r\n let parts = strSplit(path, \".\");\r\n let lastKey = parts.pop();\r\n \r\n arrForEach(parts, (key) => {\r\n if (isNullOrUndefined(target[key])) {\r\n // Add an empty object / map\r\n target[key] = {};\r\n }\r\n \r\n target = target[key];\r\n });\r\n \r\n target[lastKey] = value;\r\n }\r\n}\r\n\r\n/**\r\n * Set the named value on the target object where the path is represented by the string iterator\r\n * or iterable to separate the nested objects of the heirarchy / path to the value.\r\n *\r\n * The order of processing of the iterator is not reset if you add or remove elements to the iterator,\r\n * the actual behavior will depend on the iterator imeplementation.\r\n *\r\n * If the passed `iter` is both an Iterable and Iterator the Iterator interface takes preceedence.\r\n * @since 0.9.1\r\n * @group Value\r\n * @param target - The target object\r\n * @param iter - The iter identifying the path of the final key value\r\n * @param value - The value to set\r\n * @example\r\n * ```ts\r\n * let theValue = { };\r\n * setValueByIter(theValue, [\"Hello\", \"Darkness\", \"my\"], \"old\");\r\n * // Resulting Object: { Hello: { Darkness: { my: \"old\" } } }\r\n * setValueByIter(theValue, [\"friend\"], \"I've\");\r\n * // Resulting Object: { Hello: { Darkness: { my: \"old\" } }, friend: \"I've\" }\r\n * setValueByIter(theValue, [\"come\", \"to\", \"see\"], \"you\");\r\n * // Resulting Object: { Hello: { Darkness: { my: \"old\" } }, friend: \"I've\", come: { to : { see: \"you\" } } }\r\n * ```\r\n */\r\nexport function setValueByIter(target: any, iter: Iterator | Iterable, value: T) {\r\n if (target && iter) {\r\n let lastKey: string;\r\n \r\n iterForOf(iter, (key: string) => {\r\n if (lastKey) {\r\n if (isNullOrUndefined(target[lastKey])) {\r\n // Add an empty object / map\r\n target[lastKey] = {};\r\n }\r\n \r\n target = target[lastKey];\r\n }\r\n\r\n lastKey = key;\r\n });\r\n \r\n target[lastKey] = value;\r\n }\r\n}","/*\r\n * @nevware21/ts-utils\r\n * https://github.com/nevware21/ts-utils\r\n *\r\n * Copyright (c) 2022 NevWare21 Solutions LLC\r\n * Licensed under the MIT license.\r\n */\r\n\r\nimport { isString, isUndefined } from \"../helpers/base\";\r\nimport { dumpObj } from \"../helpers/diagnostics\";\r\nimport { throwTypeError } from \"../helpers/throw\";\r\nimport { LENGTH, StrProto } from \"../internal/constants\";\r\nimport { _unwrapFunctionWithPoly } from \"../internal/unwrapFunction\";\r\nimport { asString } from \"./as_string\";\r\nimport { strSubstring } from \"./substring\";\r\n\r\n/**\r\n * This method lets you determine whether or not a string ends with another string. This method is case-sensitive.\r\n * @group String\r\n * @param value - The value to be checked\r\n * @param searchString - The characters to be searched for at the end of `value` string.\r\n * @param length - If provided, it is used as the length of `value`. Defaults to value.length.\r\n */\r\nexport const strEndsWith: (value: string, searchString: string, length?: number) => boolean = (/*#__PURE__*/_unwrapFunctionWithPoly(\"endsWith\", StrProto, polyStrEndsWith));\r\n\r\n/**\r\n * This method lets you determine whether or not a string ends with another string. This method is case-sensitive.\r\n * @group Polyfill\r\n * @group String\r\n * @param value - The value to be checked\r\n * @param searchString - The characters to be searched for at the end of `value` string.\r\n * @param length - If provided, it is used as the length of `value`. Defaults to value.length.\r\n */\r\n/*#__NO_SIDE_EFFECTS__*/\r\nexport function polyStrEndsWith(value: string, searchString: string, length?: number): boolean {\r\n if (!isString(value)) {\r\n throwTypeError(\"'\" + dumpObj(value) + \"' is not a string\");\r\n }\r\n\r\n let searchValue = isString(searchString) ? searchString : asString(searchString);\r\n let end = (!isUndefined(length) && length < value[LENGTH]) ? length : value[LENGTH];\r\n\r\n return strSubstring(value, end - searchValue[LENGTH], end) === searchValue;\r\n}\r\n","/*\r\n * @nevware21/ts-utils\r\n * https://github.com/nevware21/ts-utils\r\n *\r\n * Copyright (c) 2022 NevWare21 Solutions LLC\r\n * Licensed under the MIT license.\r\n */\r\n\r\nimport { StrProto } from \"../internal/constants\";\r\nimport { _unwrapFunction } from \"../internal/unwrapFunction\";\r\n\r\n/**\r\n * The `strIndexOf()` method, given two arguments: the string and a substring to search for, searches\r\n * the entire calling string, and returns the index of the first occurrence of the specified substring.\r\n * Given a thrid argument: a number, the method returns the first occurrence of the specified substring\r\n * at an index greater than or equal to the specified number.\r\n * @group String\r\n * @param value - The value to be checked for the seeach string\r\n * @param searchString - The substring to search for in the value\r\n * @param position - The starting position to search from\r\n * @example\r\n * ```ts\r\n * strIndexOf('hello world', '') // returns 0\r\n * strIndexOf('hello world', '', 0) // returns 0\r\n * strIndexOf('hello world', '', 3) // returns 3\r\n * strIndexOf('hello world', '', 8) // returns 8\r\n *\r\n * // However, if the thrid argument is greater than the length of the string\r\n * strIndexOf('hello world', '', 11) // returns 11\r\n * strIndexOf('hello world', '', 13) // returns 11\r\n * strIndexOf('hello world', '', 22) // returns 11\r\n *\r\n * strIndexOf('Blue Whale', 'Blue') // returns 0\r\n * strIndexOf('Blue Whale', 'Blute') // returns -1\r\n * strIndexOf('Blue Whale', 'Whale', 0) // returns 5\r\n * strIndexOf('Blue Whale', 'Whale', 5) // returns 5\r\n * strIndexOf('Blue Whale', 'Whale', 7) // returns -1\r\n * strIndexOf('Blue Whale', '') // returns 0\r\n * strIndexOf('Blue Whale', '', 9) // returns 9\r\n * strIndexOf('Blue Whale', '', 10) // returns 10\r\n * strIndexOf('Blue Whale', '', 11) // returns 10\r\n * ```\r\n */\r\nexport const strIndexOf: (value: string, searchString: string, position?: number) => number = (/*#__PURE__*/_unwrapFunction(\"indexOf\", StrProto));\r\n\r\n/**\r\n * The `strLastIndexOf()` method, given two arguments: the string and a substring to search for, searches\r\n * the entire calling string, and returns the index of the last occurrence of the specified substring.\r\n * Given a third argument: a number, the method returns the last occurrence of the specified substring\r\n * at an index less than or equal to the specified number.\r\n * @group String\r\n * @param value - The value to be checked for the seeach string\r\n * @param searchString - The substring to search for in the value\r\n * @param position - The starting position to search from\r\n * @example\r\n * ```ts\r\n * strLastIndexOf('canal', 'a'); // returns 3\r\n * strLastIndexOf('canal', 'a', 2); // returns 1\r\n * strLastIndexOf('canal', 'a', 0); // returns -1\r\n * strLastIndexOf('canal', 'x'); // returns -1\r\n * strLastIndexOf('canal', 'c', -5); // returns 0\r\n * strLastIndexOf('canal', 'c', 0); // returns 0\r\n * strLastIndexOf('canal', ''); // returns 5\r\n * strLastIndexOf('canal', '', 2); // returns 2\r\n * ```\r\n */\r\nexport const strLastIndexOf: (value: string, searchString: string, position?: number) => number = (/*#__PURE__*/_unwrapFunction(\"lastIndexOf\", StrProto));\r\n","/*\r\n * @nevware21/ts-utils\r\n * https://github.com/nevware21/ts-utils\r\n *\r\n * Copyright (c) 2022 NevWare21 Solutions LLC\r\n * Licensed under the MIT license.\r\n */\r\n\r\nimport { NULL_VALUE } from \"../internal/constants\";\r\nimport { objDefineProp } from \"../object/define\";\r\n\r\nconst REF = \"ref\";\r\nconst UNREF = \"unref\";\r\nconst HAS_REF = \"hasRef\";\r\nconst ENABLED = \"enabled\";\r\n\r\n/**\r\n * A Timer handler which is returned from {@link scheduleTimeout} which contains functions to\r\n * cancel or restart (refresh) the timeout function.\r\n *\r\n * @since 0.4.4\r\n * @group Timer\r\n */\r\nexport interface ITimerHandler {\r\n /**\r\n * Cancels a timeout that was previously scheduled, after calling this function any previously\r\n * scheduled timer will not execute.\r\n * @example\r\n * ```ts\r\n * let theTimer = scheduleTimeout(...);\r\n * theTimer.cancel();\r\n * ```\r\n */\r\n cancel(): void;\r\n\r\n /**\r\n * Reschedules the timer to call its callback at the previously specified duration\r\n * adjusted to the current time. This is useful for refreshing a timer without allocating\r\n * a new JavaScript object.\r\n *\r\n * Using this on a timer that has already called its callback will reactivate the timer.\r\n * Calling on a timer that has not yet executed will just reschedule the current timer.\r\n * @example\r\n * ```ts\r\n * let theTimer = scheduleTimeout(...);\r\n * // The timer will be restarted (if already executed) or rescheduled (if it has not yet executed)\r\n * theTimer.refresh();\r\n * ```\r\n */\r\n refresh(): ITimerHandler;\r\n\r\n /**\r\n * When called, requests that the event loop not exit so long when the ITimerHandler is active.\r\n * Calling timer.ref() multiple times will have no effect. By default, all ITimerHandler objects\r\n * will create \"ref'ed\" instances, making it normally unnecessary to call timer.ref() unless\r\n * timer.unref() had been called previously.\r\n * @since 0.7.0\r\n * @returns the ITimerHandler instance\r\n * @example\r\n * ```ts\r\n * let theTimer = createTimeout(...);\r\n *\r\n * // Make sure the timer is referenced (the default) so that the runtime (Node) does not terminate\r\n * // if there is a waiting referenced timer.\r\n * theTimer.ref();\r\n * ```\r\n */\r\n ref(): this;\r\n\r\n /**\r\n * When called, the any active ITimerHandler instance will not require the event loop to remain\r\n * active (Node.js). If there is no other activity keeping the event loop running, the process may\r\n * exit before the ITimerHandler instance callback is invoked. Calling timer.unref() multiple times\r\n * will have no effect.\r\n * @since 0.7.0\r\n * @returns the ITimerHandler instance\r\n * @example\r\n * ```ts\r\n * let theTimer = createTimeout(...);\r\n *\r\n * // Unreference the timer so that the runtime (Node) may terminate if nothing else is running.\r\n * theTimer.unref();\r\n * ```\r\n */\r\n unref(): this;\r\n\r\n /**\r\n * If true, any running referenced `ITimerHandler` instance will keep the Node.js event loop active.\r\n * @since 0.7.0\r\n * @example\r\n * ```ts\r\n * let theTimer = createTimeout(...);\r\n *\r\n * // Unreference the timer so that the runtime (Node) may terminate if nothing else is running.\r\n * theTimer.unref();\r\n * let hasRef = theTimer.hasRef(); // false\r\n *\r\n * theTimer.ref();\r\n * hasRef = theTimer.hasRef(); // true\r\n * ```\r\n */\r\n hasRef(): boolean;\r\n\r\n /**\r\n * Gets or Sets a flag indicating if the underlying timer is currently enabled and running.\r\n * Setting the enabled flag to the same as it's current value has no effect, setting to `true`\r\n * when already `true` will not {@link ITimerHandler.refresh | refresh}() the timer.\r\n * And setting to `false` will {@link ITimerHandler.cancel | cancel}() the timer.\r\n * @since 0.8.1\r\n * @example\r\n * ```ts\r\n * let theTimer = createTimeout(...);\r\n *\r\n * // Check if enabled\r\n * theTimer.enabled; // false\r\n *\r\n * // Start the timer\r\n * theTimer.enabled = true; // Same as calling refresh()\r\n * theTimer.enabled; //true\r\n *\r\n * // Has no effect as it's already running\r\n * theTimer.enabled = true;\r\n *\r\n * // Will refresh / restart the time\r\n * theTimer.refresh()\r\n *\r\n * let theTimer = scheduleTimeout(...);\r\n *\r\n * // Check if enabled\r\n * theTimer.enabled; // true\r\n * ```\r\n */\r\n enabled: boolean;\r\n}\r\n\r\n/**\r\n * @ignore\r\n * @internal\r\n */\r\nexport interface _TimerHandler {\r\n /**\r\n * The public handler to return to the caller\r\n */\r\n h: ITimerHandler,\r\n\r\n /**\r\n * The callback function that should be called when the timer operation\r\n * has completed and will not automatically rescheduled\r\n * @returns\r\n */\r\n dn: () => void\r\n}\r\n\r\n/**\r\n * @ignore\r\n * @internal\r\n * Internal function to create and manage an ITimerHandler implementation, the object returned from this function\r\n * it directly used / returned by the pulic functions used to create timers (idle, interval and timeout)\r\n * @param startTimer - Should the timer be started as part of creating the handler\r\n * @param refreshFn - The function used to create/start or refresh the timer\r\n * @param cancelFn - The function used to cancel the timer.\r\n * @returns The new ITimerHandler instance\r\n */\r\n/*#__NO_SIDE_EFFECTS__*/\r\nexport function _createTimerHandler(startTimer: boolean, refreshFn: (timerId: T) => T, cancelFn: (timerId: T) => void): _TimerHandler {\r\n let ref = true;\r\n let timerId: T = startTimer ? refreshFn(NULL_VALUE) : NULL_VALUE;\r\n let theTimerHandler: ITimerHandler;\r\n\r\n function _unref() {\r\n ref = false;\r\n timerId && timerId[UNREF] && timerId[UNREF]();\r\n return theTimerHandler;\r\n }\r\n\r\n function _cancel() {\r\n timerId && cancelFn(timerId);\r\n timerId = NULL_VALUE;\r\n }\r\n\r\n function _refresh() {\r\n timerId = refreshFn(timerId);\r\n if (!ref) {\r\n _unref();\r\n }\r\n\r\n return theTimerHandler;\r\n }\r\n\r\n function _setEnabled(value: boolean) {\r\n !value && timerId && _cancel();\r\n value && !timerId && _refresh();\r\n }\r\n\r\n theTimerHandler = {\r\n cancel: _cancel,\r\n refresh: _refresh\r\n } as any;\r\n\r\n theTimerHandler[HAS_REF] = () => {\r\n if (timerId && timerId[HAS_REF]) {\r\n return timerId[HAS_REF]();\r\n }\r\n\r\n return ref;\r\n };\r\n\r\n theTimerHandler[REF] = () => {\r\n ref = true;\r\n timerId && timerId[REF] && timerId[REF]();\r\n return theTimerHandler;\r\n };\r\n\r\n theTimerHandler[UNREF] = _unref;\r\n\r\n theTimerHandler = objDefineProp(theTimerHandler, ENABLED, {\r\n get: () => !!timerId,\r\n set: _setEnabled\r\n });\r\n\r\n return {\r\n h: theTimerHandler,\r\n dn: () => {\r\n timerId = NULL_VALUE;\r\n }\r\n };\r\n}\r\n","/*\r\n * @nevware21/ts-utils\r\n * https://github.com/nevware21/ts-utils\r\n *\r\n * Copyright (c) 2022 NevWare21 Solutions LLC\r\n * Licensed under the MIT license.\r\n */\r\n\r\nimport { fnApply } from \"../funcs/funcs\";\r\nimport { isArray } from \"../helpers/base\";\r\nimport { ArrSlice, CALL, UNDEF_VALUE } from \"../internal/constants\";\r\nimport { ITimerHandler, _createTimerHandler } from \"./handler\";\r\n\r\nfunction _createTimeoutWith(startTimer: boolean, overrideFn: TimeoutOverrideFn | TimeoutOverrideFuncs, theArgs: any[]): ITimerHandler {\r\n let isArr = isArray(overrideFn);\r\n let len = isArr ? overrideFn.length : 0;\r\n let setFn: TimeoutOverrideFn = (len > 0 ? overrideFn[0] : (!isArr ? overrideFn : UNDEF_VALUE)) || setTimeout;\r\n let clearFn: ClearTimeoutOverrideFn = (len > 1 ? overrideFn[1] : UNDEF_VALUE) || clearTimeout;\r\n\r\n let timerFn = theArgs[0];\r\n theArgs[0] = function () {\r\n handler.dn();\r\n fnApply(timerFn, UNDEF_VALUE, ArrSlice[CALL](arguments));\r\n };\r\n \r\n let handler = _createTimerHandler(startTimer, (timerId?: any) => {\r\n if (timerId) {\r\n if (timerId.refresh) {\r\n timerId.refresh();\r\n return timerId;\r\n }\r\n\r\n fnApply(clearFn, UNDEF_VALUE, [ timerId ]);\r\n }\r\n\r\n return fnApply(setFn, UNDEF_VALUE, theArgs);\r\n }, function (timerId: any) {\r\n fnApply(clearFn, UNDEF_VALUE, [ timerId ]);\r\n });\r\n\r\n return handler.h;\r\n}\r\n\r\n/**\r\n * The signature of the override timeout function used to create a new timeout instance, it follows the same signature as\r\n * the native `setTimeout` API.\r\n * @since 0.4.4\r\n * @group Timer\r\n * @param callback - A function to be executed after the timer expires.\r\n * @param ms - The time, in milliseconds that the timer should wait before the specified function or code is executed.\r\n * If this parameter is omitted, a value of 0 is used, meaning execute \"immediately\", or more accurately, the next event cycle.\r\n * @param args - Additional arguments which are passed through to the function specified by callback.\r\n * @return The returned timeoutID is a positive integer value which identifies the timer created by the call to setTimeout().\r\n * This value can be passed to clearTimeout() to cancel the timeout.\r\n */\r\nexport type TimeoutOverrideFn = (callback: (...args: TArgs) => void, ms?: number, ...args: TArgs) => number | any;\r\n\r\n/**\r\n * The signatire of the function to override clearing a previous timeout created with the {@link TimeoutOverrideFn}, it will be passed\r\n * the result returned from the {@link TimeoutOverrideFn} call.\r\n * @since 0.4.5\r\n * @group Timer\r\n * @param timeoutId - The value returned from the previous {@link TimeoutOverrideFn}.\r\n */\r\nexport type ClearTimeoutOverrideFn = (timeoutId: number | any) => void;\r\n\r\n/**\r\n * Defines the array signature used to pass the override set and clean functions for creating a timeout.\r\n * The first index [0] is the set function to be used and the second index [1] is the clear function to be used.\r\n * @since 0.4.5\r\n * @group Timer\r\n */\r\nexport type TimeoutOverrideFuncs = [ TimeoutOverrideFn | null, ClearTimeoutOverrideFn | null ];\r\n\r\n/**\r\n * Creates and starts a timer which executes a function or specified piece of code once the timer expires, this is simular\r\n * to using `setTimeout` but provides a return object for cancelling and restarting (refresh) the timer.\r\n *\r\n * The timer may be cancelled (cleared) by calling the `cancel()` function on the returned {@link ITimerHandler}, or\r\n * you can \"reschedule\" and/or \"restart\" the timer by calling the `refresh()` function on the returned {@link ITimerHandler}\r\n * instance\r\n *\r\n * @since 0.4.4\r\n * @group Timer\r\n *\r\n * @param callback - The function to be executed after the timer expires.\r\n * @param timeout - The time, in milliseconds that the timer should wait before the specified\r\n * function or code is executed. If this parameter is omitted, a value of 0 is used, meaning\r\n * execute \"immediately\", or more accurately, the next event cycle.\r\n * @param args - Additional arguments which are passed through to the function specified by `callback`.\r\n * @returns A {@link ITimerHandler} instance which can be used to cancel the timeout.\r\n * @example\r\n * ```ts\r\n * let timeoutCalled = false;\r\n * let theTimeout = scheduleTimeout(() => {\r\n * // This callback will be called after 100ms as this uses setTimeout()\r\n * timeoutCalled = true;\r\n * }, 100);\r\n *\r\n * // Instead of calling clearTimeout() with the returned value from setTimeout() the returned\r\n * // handler instance can be used instead to cancel the timer\r\n * theTimeout.cancel();\r\n * theTimeout.enabled; // false\r\n *\r\n * // You can start the timer via enabled\r\n * theTimeout.enabled = true;\r\n *\r\n * // You can also \"restart\" the timer, whether it has previously triggered not not via the `refresh()`\r\n * theTimeout.refresh();\r\n * ```\r\n */\r\nexport function scheduleTimeout(callback: (...args: A) => void, timeout: number, ...args: A): ITimerHandler;\r\n\r\n/**\r\n * Creates and starts a timer which executes a function or specified piece of code once the timer expires, this is simular\r\n * to using `setTimeout` but provides a return object for cancelling and restarting (refresh) the timer.\r\n *\r\n * The timer may be cancelled (cleared) by calling the `cancel()` function on the returned {@link ITimerHandler}, or\r\n * you can \"reschedule\" and/or \"restart\" the timer by calling the `refresh()` function on the returned {@link ITimerHandler}\r\n * instance\r\n *\r\n * @since 0.4.4\r\n * @group Timer\r\n *\r\n * @param callback - The function to be executed after the timer expires.\r\n * @param timeout - The time, in milliseconds that the timer should wait before the specified\r\n * function or code is executed. If this parameter is omitted, a value of 0 is used, meaning\r\n * execute \"immediately\", or more accurately, the next event cycle.\r\n * @param args - Additional arguments which are passed through to the function specified by `callback`.\r\n * @returns A {@link ITimerHandler} instance which can be used to cancel the timeout.\r\n * @example\r\n * ```ts\r\n * let timeoutCalled = false;\r\n * let theTimeout = scheduleTimeout(() => {\r\n * // This callback will be called after 100ms as this uses setTimeout()\r\n * timeoutCalled = true;\r\n * }, 100);\r\n *\r\n * // Instead of calling clearTimeout() with the returned value from setTimeout() the returned\r\n * // handler instance can be used instead to cancel the timer\r\n * theTimeout.cancel();\r\n * theTimeout.enabled; // false\r\n *\r\n * // You can start the timer via enabled\r\n * theTimeout.enabled = true;\r\n *\r\n * // You can also \"restart\" the timer, whether it has previously triggered not not via the `refresh()`\r\n * theTimeout.refresh();\r\n * ```\r\n */\r\nexport function scheduleTimeout(callback: (...args: A) => void, timeout: number): ITimerHandler {\r\n return _createTimeoutWith(true, UNDEF_VALUE, ArrSlice[CALL](arguments));\r\n}\r\n\r\n/**\r\n * Creates and starts a timer which executes a function or specified piece of code once the timer expires. The overrideFn will be\r\n * used to create the timer, this is simular to using `setTimeout` but provides a return object for cancelling and restarting\r\n * (refresh) the timer.\r\n *\r\n * The timer may be cancelled (cleared) by calling the `cancel()` function on the returned {@link ITimerHandler}, or\r\n * you can \"reschedule\" and/or \"restart\" the timer by calling the `refresh()` function on the returned {@link ITimerHandler}\r\n * instance\r\n *\r\n * @since 0.4.4\r\n * @group Timer\r\n *\r\n * @param overrideFn - setTimeout override function this will be called instead of the `setTimeout`, if the value\r\n * of `overrideFn` is null or undefined it will revert back to the native `setTimeout`. May also be an array with contains\r\n * both the setTimeout and clearTimeout override functions, if either is not provided the default native functions will be used\r\n * @param callback - The function to be executed after the timer expires.\r\n * @param timeout - The time, in milliseconds that the timer should wait before the specified\r\n * function or code is executed. If this parameter is omitted, a value of 0 is used, meaning\r\n * execute \"immediately\", or more accurately, the next event cycle.\r\n * @param args - Additional arguments which are passed through to the function specified by `callback`.\r\n * @returns A {@link ITimerHandler} instance which can be used to cancel the timeout.\r\n * @example\r\n * ```ts\r\n * let timeoutCalled = false;\r\n * // Your own \"setTimeout\" implementation to allow you to perform additional operations or possible wrap\r\n * // the callback to add timings.\r\n * function newSetTimeoutFn(callback: TimeoutOverrideFn) {\r\n * overrideCalled ++;\r\n * return setTimeout(callback, timeout);\r\n * }\r\n *\r\n * let theTimeout = scheduleTimeoutWith(newSetTimeoutFn, () => {\r\n * // This callback will be called after 100ms as this uses setTimeout()\r\n * timeoutCalled = true;\r\n * }, 100);\r\n *\r\n * // Instead of calling clearTimeout() with the returned value from setTimeout() the returned\r\n * // handler instance can be used instead to cancel the timer\r\n * theTimeout.cancel();\r\n * theTimeout.enabled; // false\r\n *\r\n * // You can start the timer via enabled\r\n * theTimeout.enabled = true;\r\n *\r\n * // You can also \"restart\" the timer, whether it has previously triggered not not via the `refresh()`\r\n * theTimeout.refresh();\r\n * ```\r\n * @example\r\n * ```ts\r\n * let timeoutCalled = false;\r\n * // Your own \"setTimeout\" implementation to allow you to perform additional operations or possible wrap\r\n * // the callback to add timings.\r\n * function newSetTimeoutFn(callback: TimeoutOverrideFn) {\r\n * overrideCalled ++;\r\n * return setTimeout(callback, timeout);\r\n * }\r\n *\r\n * // Your own \"clearTimeout\" implementation to allow you to perform additional operations or possible wrap\r\n * // the callback to add timings.\r\n * function newClearTimeoutFn(timeoutId: number) {\r\n * overrideCalled ++;\r\n * return clearTimeout( timeout);\r\n * }\r\n *\r\n * let theTimeout = scheduleTimeoutWith([newSetTimeoutFn, newClearTimeoutFn], () => {\r\n * // This callback will be called after 100ms as this uses setTimeout()\r\n * timeoutCalled = true;\r\n * }, 100);\r\n *\r\n * // Instead of calling clearTimeout() with the returned value from setTimeout() the returned\r\n * // handler instance can be used instead to cancel the timer, internally this will call the newClearTimeoutFn\r\n * theTimeout.cancel();\r\n * theTimeout.enabled; // false\r\n *\r\n * // You can start the timer via enabled\r\n * theTimeout.enabled = true;\r\n *\r\n * // You can also \"restart\" the timer, whether it has previously triggered not not via the `refresh()`\r\n * theTimeout.refresh();\r\n * ```\r\n */\r\nexport function scheduleTimeoutWith(overrideFn: TimeoutOverrideFn | TimeoutOverrideFuncs, callback: (...args: A) => void, timeout: number, ...args: A): ITimerHandler;\r\n\r\n/**\r\n * Creates and starts a timer which executes a function or specified piece of code once the timer expires. The overrideFn will be\r\n * used to create the timer, this is simular to using `setTimeout` but provides a return object for cancelling and restarting\r\n * (refresh) the timer.\r\n *\r\n * The timer may be cancelled (cleared) by calling the `cancel()` function on the returned {@link ITimerHandler}, or\r\n * you can \"reschedule\" and/or \"restart\" the timer by calling the `refresh()` function on the returned {@link ITimerHandler}\r\n * instance\r\n *\r\n * @since 0.4.4\r\n * @group Timer\r\n *\r\n * @param overrideFn - setTimeout override function this will be called instead of the `setTimeout`, if the value\r\n * of `overrideFn` is null or undefined it will revert back to the native `setTimeout`. May also be an array with contains\r\n * both the setTimeout and clearTimeout override functions, if either is not provided the default native functions will be used\r\n * @param callback - The function to be executed after the timer expires.\r\n * @param timeout - The time, in milliseconds that the timer should wait before the specified\r\n * function or code is executed. If this parameter is omitted, a value of 0 is used, meaning\r\n * execute \"immediately\", or more accurately, the next event cycle.\r\n * @param args - Additional arguments which are passed through to the function specified by `callback`.\r\n * @returns A {@link ITimerHandler} instance which can be used to cancel the timeout.\r\n * @example\r\n * ```ts\r\n * let timeoutCalled = false;\r\n * // Your own \"setTimeout\" implementation to allow you to perform additional operations or possible wrap\r\n * // the callback to add timings.\r\n * function newSetTimeoutFn(callback: TimeoutOverrideFn) {\r\n * overrideCalled ++;\r\n * return setTimeout(callback, timeout);\r\n * }\r\n *\r\n * let theTimeout = scheduleTimeoutWith(newSetTimeoutFn, () => {\r\n * // This callback will be called after 100ms as this uses setTimeout()\r\n * timeoutCalled = true;\r\n * }, 100);\r\n *\r\n * // Instead of calling clearTimeout() with the returned value from setTimeout() the returned\r\n * // handler instance can be used instead to cancel the timer\r\n * theTimeout.cancel();\r\n * theTimeout.enabled; // false\r\n *\r\n * // You can start the timer via enabled\r\n * theTimeout.enabled = true;\r\n *\r\n * // You can also \"restart\" the timer, whether it has previously triggered not not via the `refresh()`\r\n * theTimeout.refresh();\r\n * ```\r\n * @example\r\n * ```ts\r\n * let timeoutCalled = false;\r\n * // Your own \"setTimeout\" implementation to allow you to perform additional operations or possible wrap\r\n * // the callback to add timings.\r\n * function newSetTimeoutFn(callback: TimeoutOverrideFn) {\r\n * overrideCalled ++;\r\n * return setTimeout(callback, timeout);\r\n * }\r\n *\r\n * // Your own \"clearTimeout\" implementation to allow you to perform additional operations or possible wrap\r\n * // the callback to add timings.\r\n * function newClearTimeoutFn(timeoutId: number) {\r\n * overrideCalled ++;\r\n * return clearTimeout( timeout);\r\n * }\r\n *\r\n * let theTimeout = scheduleTimeoutWith([newSetTimeoutFn, newClearTimeoutFn], () => {\r\n * // This callback will be called after 100ms as this uses setTimeout()\r\n * timeoutCalled = true;\r\n * }, 100);\r\n *\r\n * // Instead of calling clearTimeout() with the returned value from setTimeout() the returned\r\n * // handler instance can be used instead to cancel the timer, internally this will call the newClearTimeoutFn\r\n * theTimeout.cancel();\r\n * theTimeout.enabled; // false\r\n *\r\n * // You can start the timer via enabled\r\n * theTimeout.enabled = true;\r\n *\r\n * // You can also \"restart\" the timer, whether it has previously triggered not not via the `refresh()`\r\n * theTimeout.refresh();\r\n * ```\r\n */\r\nexport function scheduleTimeoutWith(overrideFn: TimeoutOverrideFn | TimeoutOverrideFuncs, callback: (...args: A) => void, timeout: number): ITimerHandler {\r\n return _createTimeoutWith(true, overrideFn, ArrSlice[CALL](arguments, 1));\r\n}\r\n\r\n/**\r\n * Creates a non-running (paused) timer which will execute a function or specified piece of code when enabled and the timer expires,\r\n * this is simular to using `scheduleTimeout` but the timer is not enabled (running) and you MUST call `refresh` to start the timer.\r\n *\r\n * The timer may be cancelled (cleared) by calling the `cancel()` function on the returned {@link ITimerHandler}, or\r\n * you can \"reschedule\" and/or \"restart\" the timer by calling the `refresh()` function on the returned {@link ITimerHandler}\r\n * instance\r\n *\r\n * @since 0.7.0\r\n * @group Timer\r\n *\r\n * @param callback - The function to be executed after the timer expires.\r\n * @param timeout - The time, in milliseconds that the timer should wait before the specified\r\n * function or code is executed. If this parameter is omitted, a value of 0 is used, meaning\r\n * execute \"immediately\", or more accurately, the next event cycle.\r\n * @param args - Additional arguments which are passed through to the function specified by `callback`.\r\n * @returns A {@link ITimerHandler} instance which can be used to cancel the timeout.\r\n * @example\r\n * ```ts\r\n * let timeoutCalled = false;\r\n * let theTimeout = createTimeout(() => {\r\n * // This callback will be called after 100ms as this uses setTimeout()\r\n * timeoutCalled = true;\r\n * }, 100);\r\n *\r\n * // As the timer is not started you will need to call \"refresh\" to start the timer\r\n * theTimeout.refresh();\r\n *\r\n * // or set enabled to true\r\n * theTimeout.enabled = true;\r\n * ```\r\n */\r\nexport function createTimeout(callback: (...args: A) => void, timeout: number, ...args: A): ITimerHandler;\r\n\r\n/**\r\n * Creates a non-running (paused) timer which will execute a function or specified piece of code when enabled and the timer expires,\r\n * this is simular to using `scheduleTimeout` but the timer is not enabled (running) and you MUST call `refresh` to start the timer.\r\n *\r\n * The timer may be cancelled (cleared) by calling the `cancel()` function on the returned {@link ITimerHandler}, or\r\n * you can \"reschedule\" and/or \"restart\" the timer by calling the `refresh()` function on the returned {@link ITimerHandler}\r\n * instance\r\n *\r\n * @since 0.7.0\r\n * @group Timer\r\n *\r\n * @param callback - The function to be executed after the timer expires.\r\n * @param timeout - The time, in milliseconds that the timer should wait before the specified\r\n * function or code is executed. If this parameter is omitted, a value of 0 is used, meaning\r\n * execute \"immediately\", or more accurately, the next event cycle.\r\n * @param args - Additional arguments which are passed through to the function specified by `callback`.\r\n * @returns A {@link ITimerHandler} instance which can be used to cancel the timeout.\r\n * @example\r\n * ```ts\r\n * let timeoutCalled = false;\r\n * let theTimeout = createTimeout(() => {\r\n * // This callback will be called after 100ms as this uses setTimeout()\r\n * timeoutCalled = true;\r\n * }, 100);\r\n *\r\n * // As the timer is not started you will need to call \"refresh\" to start the timer\r\n * theTimeout.refresh();\r\n *\r\n * // or set enabled to true\r\n * theTimeout.enabled = true;\r\n * ```\r\n */\r\nexport function createTimeout(callback: (...args: A) => void, timeout: number): ITimerHandler {\r\n return _createTimeoutWith(false, UNDEF_VALUE, ArrSlice[CALL](arguments));\r\n}\r\n\r\n/**\r\n * Creates a non-running (paused) timer which will execute a function or specified piece of code when enabled once the timer expires.\r\n * The overrideFn will be used to create the timer, this is simular to using `scheduleTimeoutWith` but the timer is not enabled (running)\r\n * and you MUST call `refresh` to start the timer.\r\n *\r\n * The timer may be cancelled (cleared) by calling the `cancel()` function on the returned {@link ITimerHandler}, or\r\n * you can \"reschedule\" and/or \"restart\" the timer by calling the `refresh()` function on the returned {@link ITimerHandler}\r\n * instance\r\n *\r\n * @since 0.7.0\r\n * @group Timer\r\n *\r\n * @param overrideFn - setTimeout override function this will be called instead of the `setTimeout`, if the value\r\n * of `overrideFn` is null or undefined it will revert back to the native `setTimeout`. May also be an array with contains\r\n * both the setTimeout and clearTimeout override functions, if either is not provided the default native functions will be used\r\n * @param callback - The function to be executed after the timer expires.\r\n * @param timeout - The time, in milliseconds that the timer should wait before the specified\r\n * function or code is executed. If this parameter is omitted, a value of 0 is used, meaning\r\n * execute \"immediately\", or more accurately, the next event cycle.\r\n * @param args - Additional arguments which are passed through to the function specified by `callback`.\r\n * @returns A {@link ITimerHandler} instance which can be used to cancel the timeout.\r\n * @example\r\n * ```ts\r\n * let timeoutCalled = false;\r\n * // Your own \"setTimeout\" implementation to allow you to perform additional operations or possible wrap\r\n * // the callback to add timings.\r\n * function newSetTimeoutFn(callback: TimeoutOverrideFn) {\r\n * overrideCalled ++;\r\n * return setTimeout(callback, timeout);\r\n * }\r\n *\r\n * let theTimeout = createTimeoutWith(newSetTimeoutFn, () => {\r\n * // This callback will be called after 100ms as this uses setTimeout()\r\n * timeoutCalled = true;\r\n * }, 100);\r\n *\r\n * // As the timer is not started you will need to call \"refresh\" to start the timer\r\n * theTimeout.refresh();\r\n *\r\n * // or set enabled to true\r\n * theTimeout.enabled = true;\r\n * ```\r\n * @example\r\n * ```ts\r\n * let timeoutCalled = false;\r\n * // Your own \"setTimeout\" implementation to allow you to perform additional operations or possible wrap\r\n * // the callback to add timings.\r\n * function newSetTimeoutFn(callback: TimeoutOverrideFn) {\r\n * overrideCalled ++;\r\n * return setTimeout(callback, timeout);\r\n * }\r\n *\r\n * // Your own \"clearTimeout\" implementation to allow you to perform additional operations or possible wrap\r\n * // the callback to add timings.\r\n * function newClearTimeoutFn(timeoutId: number) {\r\n * overrideCalled ++;\r\n * return clearTimeout( timeout);\r\n * }\r\n *\r\n * let theTimeout = createTimeoutWith([newSetTimeoutFn, newClearTimeoutFn], () => {\r\n * // This callback will be called after 100ms as this uses setTimeout()\r\n * timeoutCalled = true;\r\n * }, 100);\r\n *\r\n * // As the timer is not started you will need to call \"refresh\" to start the timer\r\n * theTimeout.refresh();\r\n *\r\n * // or set enabled to true\r\n * theTimeout.enabled = true;\r\n * ```\r\n */\r\nexport function createTimeoutWith(overrideFn: TimeoutOverrideFn | TimeoutOverrideFuncs, callback: (...args: A) => void, timeout: number, ...args: A): ITimerHandler;\r\n\r\n/**\r\n * Creates a non-running (paused) timer which will execute a function or specified piece of code when enabled once the timer expires.\r\n * The overrideFn will be used to create the timer, this is simular to using `scheduleTimeoutWith` but the timer is not enabled (running)\r\n * and you MUST call `refresh` to start the timer.\r\n *\r\n * The timer may be cancelled (cleared) by calling the `cancel()` function on the returned {@link ITimerHandler}, or\r\n * you can \"reschedule\" and/or \"restart\" the timer by calling the `refresh()` function on the returned {@link ITimerHandler}\r\n * instance\r\n *\r\n * @since 0.7.0\r\n * @group Timer\r\n *\r\n * @param overrideFn - setTimeout override function this will be called instead of the `setTimeout`, if the value\r\n * of `overrideFn` is null or undefined it will revert back to the native `setTimeout`. May also be an array with contains\r\n * both the setTimeout and clearTimeout override functions, if either is not provided the default native functions will be used\r\n * @param callback - The function to be executed after the timer expires.\r\n * @param timeout - The time, in milliseconds that the timer should wait before the specified\r\n * function or code is executed. If this parameter is omitted, a value of 0 is used, meaning\r\n * execute \"immediately\", or more accurately, the next event cycle.\r\n * @param args - Additional arguments which are passed through to the function specified by `callback`.\r\n * @returns A {@link ITimerHandler} instance which can be used to cancel the timeout.\r\n * @example\r\n * ```ts\r\n * let timeoutCalled = false;\r\n * // Your own \"setTimeout\" implementation to allow you to perform additional operations or possible wrap\r\n * // the callback to add timings.\r\n * function newSetTimeoutFn(callback: TimeoutOverrideFn) {\r\n * overrideCalled ++;\r\n * return setTimeout(callback, timeout);\r\n * }\r\n *\r\n * let theTimeout = createTimeoutWith(newSetTimeoutFn, () => {\r\n * // This callback will be called after 100ms as this uses setTimeout()\r\n * timeoutCalled = true;\r\n * }, 100);\r\n *\r\n * // As the timer is not started you will need to call \"refresh\" to start the timer\r\n * theTimeout.refresh();\r\n *\r\n * // or set enabled to true\r\n * theTimeout.enabled = true;\r\n * ```\r\n * @example\r\n * ```ts\r\n * let timeoutCalled = false;\r\n * // Your own \"setTimeout\" implementation to allow you to perform additional operations or possible wrap\r\n * // the callback to add timings.\r\n * function newSetTimeoutFn(callback: TimeoutOverrideFn) {\r\n * overrideCalled ++;\r\n * return setTimeout(callback, timeout);\r\n * }\r\n *\r\n * // Your own \"clearTimeout\" implementation to allow you to perform additional operations or possible wrap\r\n * // the callback to add timings.\r\n * function newClearTimeoutFn(timeoutId: number) {\r\n * overrideCalled ++;\r\n * return clearTimeout( timeout);\r\n * }\r\n *\r\n * let theTimeout = createTimeoutWith([newSetTimeoutFn, newClearTimeoutFn], () => {\r\n * // This callback will be called after 100ms as this uses setTimeout()\r\n * timeoutCalled = true;\r\n * }, 100);\r\n *\r\n * // As the timer is not started you will need to call \"refresh\" to start the timer\r\n * theTimeout.refresh();\r\n *\r\n * // or set enabled to true\r\n * theTimeout.enabled = true;\r\n * ```\r\n */\r\nexport function createTimeoutWith(overrideFn: TimeoutOverrideFn | TimeoutOverrideFuncs, callback: (...args: A) => void, timeout: number): ITimerHandler {\r\n return _createTimeoutWith(false, overrideFn, ArrSlice[CALL](arguments, 1));\r\n}\r\n","/*\r\n * @nevware21/ts-utils\r\n * https://github.com/nevware21/ts-utils\r\n *\r\n * Copyright (c) 2022 NevWare21 Solutions LLC\r\n * Licensed under the MIT license.\r\n */\r\n\r\nimport { isUndefined } from \"../helpers/base\";\r\nimport { _getGlobalInstFn, getInst } from \"../helpers/environment\";\r\nimport { elapsedTime, perfNow } from \"../helpers/perf\";\r\nimport { ITimerHandler, _createTimerHandler } from \"./handler\";\r\nimport { scheduleTimeout } from \"./timeout\";\r\n\r\nlet _defaultIdleTimeout = 100;\r\nlet _maxExecutionTime = 50;\r\n\r\n/**\r\n * Type that represents the global `requestIdleCallback` function, which can be used to\r\n * schedule work when there is free time in the event loop. Defined as a type alias for\r\n * easier reference and to support older TypeScript versions.\r\n * @since 0.11.2\r\n * @param callback - A callback function that should be called in the near future, when\r\n * the event loop is idle. The callback function is passed an [IdleDeadline](https://developer.mozilla.org/en-US/docs/Web/API/IdleDeadline)\r\n * object describing the amount of time available and whether or not the callback has\r\n * been run because the timeout period expired.\r\n * @param options - Contains optional configuration parameters. Currently only one property is defined:\r\n * - `timeout` If the number of milliseconds represented by this parameter has elapsed and the callback\r\n * has not already been called, then a task to execute the callback is queued in the event loop (even\r\n * if doing so risks causing a negative performance impact). timeout must be a positive value or it\r\n * is ignored.\r\n * @returns A handle which can be used to cancel the callback by passing it into the `cancelIdleCallback()` method.\r\n */\r\nexport type RequestIdleCallback = (callback: IdleRequestCallback, options?: IdleRequestOptions) => number;\r\n\r\n/**\r\n * Type that represents the global `cancelIdleCallback` function, which can be used to\r\n * cancel a previously scheduled idle callback. Defined as a type alias for easier reference\r\n * and to support older TypeScript versions.\r\n * @since 0.11.2\r\n * @param handle - The handle returned by the `requestIdleCallback` function that identifies\r\n * the idle callback to cancel.\r\n */\r\nexport type CancelIdleCallback = (handle: number) => void;\r\n\r\n/**\r\n * Identifies if the runtime supports the `requestIdleCallback` API.\r\n *\r\n * @since 0.4.4\r\n * @group Timer\r\n * @group Idle\r\n * @group Environment\r\n *\r\n * @returns True if the runtime supports `requestIdleCallback` otherwise false.\r\n * @example\r\n * ```ts\r\n * let nativeIdleTimeouts = hasIdleCallback();\r\n * // true === idle timeouts are supported by the runtime otherwise false and the {@linke scheduleIdleCallback}\r\n * will use `setTimeout` instead.\r\n * ```\r\n */\r\n/*#__NO_SIDE_EFFECTS__*/\r\nexport function hasIdleCallback(): boolean {\r\n return !!( /*#__PURE__*/getIdleCallback());\r\n}\r\n\r\n/**\r\n * Returns the global `requestIdleCallback` function if available, which can be used to\r\n * schedule work when there is free time in the event loop, or if the runtime does not\r\n * support the `requestIdleCallback` it will return `null`.\r\n * @since 0.11.2\r\n * @group Idle\r\n * @group Environment\r\n */\r\nexport const getIdleCallback = (/*#__PURE__*/_getGlobalInstFn(getInst, [\"requestIdleCallback\"]));\r\n\r\n/**\r\n * Returns the global `cancelIdleCallback` function if available, which can be used to\r\n * cancel a previously scheduled idle callback, or if the runtime does not support the\r\n * `cancelIdleCallback` it will return `null`.\r\n * @since 0.11.2\r\n * @group Idle\r\n * @group Environment\r\n */\r\nexport const getCancelIdleCallback = (/*#__PURE__*/_getGlobalInstFn(getInst, [\"cancelIdleCallback\"]));\r\n\r\n/**\r\n * Set the idle timeout fallback timeout which is used when the runtime does not support `requestIdleCallback`\r\n * the default idle timeout will be used for the scheduled timer. Defaults to 100ms\r\n *\r\n * @since 0.4.4\r\n * @group Timer\r\n *\r\n * @param timeout - The time in milliseconds that the timer should wait before calling the idle function.\r\n */\r\nexport function setDefaultIdleTimeout(timeout: number) {\r\n _defaultIdleTimeout = timeout;\r\n}\r\n\r\n/**\r\n * Set the idle timeout fallback simulated maximum execution time, used when the runtime doesn't\r\n * support `requestIdleTimeout` to simulate the [IdleDeadline](https://w3c.github.io/requestidlecallback/#dom-idledeadline)\r\n * `timeRemaining` value.\r\n * This value is used as the base time of the [IdleDeadline.timeRemaining](https://developer.mozilla.org/en-US/docs/Web/API/IdleDeadline/timeRemaining)\r\n * less the start time the callback was called. Defaults to 50ms.\r\n *\r\n * @since 0.4.4\r\n * @group Timer\r\n *\r\n * @param maxTime - The maximum execution time in milliseconds.\r\n */\r\nexport function setDefaultMaxExecutionTime(maxTime: number) {\r\n _maxExecutionTime = maxTime;\r\n}\r\n\r\n/**\r\n * Queues a function to be called during a browser's idle periods. This enables developers to\r\n * perform background and low priority work on the main event loop, without impacting latency-critical\r\n * events such as animation and input response. Functions are generally called in first-in-first-out\r\n * order; however, callbacks which have a timeout specified may be called out-of-order if necessary\r\n * in order to run them before the timeout elapses.\r\n *\r\n * You can call scheduledleCallback() within an idle callback function to schedule another callback to\r\n * take place no sooner than the next pass through the event loop.\r\n *\r\n * If the runtime does not support the [requestIdleCallback](https://developer.mozilla.org/en-US/docs/Web/API/Window/requestIdleCallback)\r\n * it will fallback to use `setTimeout` with either the provided timeout or the current default idle\r\n * timeout, which can be set via {@link setDefaultIdleTimeout}. It will always supply a deadline which\r\n * indicates that the request timed out.\r\n *\r\n * @since 0.4.4\r\n * @group Timer\r\n *\r\n * @param callback - A reference to a function that should be called in the near future, when the\r\n * event loop is idle. The callback function is passed an [IdleDeadline](https://w3c.github.io/requestidlecallback/#dom-idledeadline)\r\n * object describing the amount of time available and whether or not the callback has been run because\r\n * the timeout period expired.\r\n * @param options - Contains optional configuration parameters. Currently only one property is defined:\r\n * `timeout` If the number of milliseconds represented by this parameter has elapsed and the callback\r\n * has not already been called, then a task to execute the callback is queued in the event loop (even\r\n * if doing so risks causing a negative performance impact). timeout must be a positive value or it\r\n * is ignored.\r\n * @returns A handle which can be used to cancel the callback by passing it into the `cancelIdleCallback()`\r\n * method.\r\n * @example\r\n * ```ts\r\n * let idleCalled = false;\r\n * let idleTimedOut = false;\r\n * let theIdleTimer = scheduleIdleCallback((idleDeadline: IdleDeadline) => {\r\n * // This callback will be called when the system is idle (via requestIdleCallback) or after the provided timeout 100ms\r\n * idleCalled = true;\r\n * idleTimedOut = idleDeadline?.didTimeout;\r\n * while ((idleDeadline.timeRemaining() > 0 || deadline.didTimeout)) {\r\n * // Do some background operations while there is time remaining or we timed out\r\n * // Unlike interval timers this callback will NOT be called again unless you call \"refresh\"\r\n * // to restart it or create a new idle timer\r\n * }\r\n * }, 100);\r\n *\r\n * // Instead of calling cancelIdleCallback() with the returned value from requestIdleCallback() the returned\r\n * // handler instance can be used instead to cancel the idle timer\r\n * theIdleTimer.cancel();\r\n * theIdleTimer.enabled; // false\r\n *\r\n * // You can start the timer via enabled\r\n * theIdleTimer.enabled = true;\r\n *\r\n * // You can also \"restart\" the timer, whether it has previously triggered not not via the `refresh()`\r\n * theIdleTimer.refresh();\r\n * ```\r\n */\r\nexport function scheduleIdleCallback(callback: IdleRequestCallback, options?: IdleRequestOptions): ITimerHandler {\r\n function _createDeadline(timedOut: boolean) {\r\n let startTime = perfNow();\r\n return {\r\n didTimeout: timedOut,\r\n timeRemaining: () => {\r\n return _maxExecutionTime - elapsedTime(startTime);\r\n }\r\n };\r\n }\r\n\r\n if (hasIdleCallback()) {\r\n let handler = _createTimerHandler(true, (idleId: number) => {\r\n idleId && getCancelIdleCallback()(idleId);\r\n return getIdleCallback()((deadline: IdleDeadline) => {\r\n handler.dn();\r\n callback(deadline || _createDeadline(false));\r\n }, options);\r\n }, (idleId: number) => {\r\n getCancelIdleCallback()(idleId);\r\n });\r\n\r\n return handler.h;\r\n }\r\n\r\n let timeout = (options || {}).timeout;\r\n if (isUndefined(timeout)) {\r\n timeout = _defaultIdleTimeout;\r\n }\r\n \r\n return scheduleTimeout(() => {\r\n callback(_createDeadline(true));\r\n }, timeout);\r\n}\r\n","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\n\r\nimport { getGlobal, objCreate, objHasOwnProperty, throwTypeError } from \"@nevware21/ts-utils\";\r\n\r\ninterface DynamicGlobalSettings {\r\n /**\r\n * Stores the global options which will also be exposed on the runtime global\r\n */\r\n o: IDynamicProtoOpts,\r\n\r\n /**\r\n * Internal Global used to generate a unique dynamic class name, every new class will increase this value\r\n * @ignore\r\n */ \r\n n: number\r\n};\r\n\r\nconst UNDEFINED = \"undefined\";\r\n\r\n/**\r\n * Constant string defined to support minimization\r\n * @ignore\r\n */ \r\nconst Constructor = 'constructor';\r\n\r\n/**\r\n * Constant string defined to support minimization\r\n * @ignore\r\n */ \r\nconst Prototype = 'prototype';\r\n \r\n/**\r\n * Constant string defined to support minimization\r\n * @ignore\r\n */\r\nconst strFunction = 'function';\r\n\r\n/**\r\n * Used to define the name of the instance function lookup table\r\n * @ignore\r\n */ \r\nconst DynInstFuncTable = '_dynInstFuncs';\r\n \r\n/**\r\n * Name used to tag the dynamic prototype function\r\n * @ignore\r\n */ \r\nconst DynProxyTag = '_isDynProxy';\r\n \r\n/**\r\n * Name added to a prototype to define the dynamic prototype \"class\" name used to lookup the function table\r\n * @ignore\r\n */ \r\nconst DynClassName = '_dynClass';\r\n \r\n/**\r\n * Prefix added to the classname to avoid any name clashes with other instance level properties\r\n * @ignore\r\n */ \r\nconst DynClassNamePrefix = '_dynCls$';\r\n \r\n/**\r\n * A tag which is used to check if we have already to attempted to set the instance function if one is not present\r\n * @ignore\r\n */\r\nconst DynInstChkTag = '_dynInstChk';\r\n \r\n/**\r\n * A tag which is used to check if we are allows to try and set an instance function is one is not present. Using the same \r\n * tag name as the function level but a different const name for readability only.\r\n */\r\nconst DynAllowInstChkTag = DynInstChkTag;\r\n \r\n/**\r\n * The global (imported) instances where the global performance options are stored\r\n */\r\nconst DynProtoDefaultOptions = '_dfOpts';\r\n \r\n/**\r\n * Value used as the name of a class when it cannot be determined\r\n * @ignore\r\n */ \r\nconst UnknownValue = '_unknown_';\r\n \r\n/**\r\n * Constant string defined to support minimization\r\n * @ignore\r\n */\r\nconst str__Proto = \"__proto__\";\r\n \r\n/**\r\n * The polyfill version of __proto__ so that it doesn't cause issues for anyone not expecting it to exist\r\n */\r\nconst DynProtoBaseProto = \"_dyn\" + str__Proto;\r\n\r\n/**\r\n * Runtime Global holder for dynamicProto settings\r\n */\r\nconst DynProtoGlobalSettings = \"__dynProto$Gbl\";\r\n\r\n/**\r\n * Track the current prototype for IE8 as you can't look back to get the prototype\r\n */\r\nconst DynProtoCurrent = \"_dynInstProto\";\r\n \r\n/**\r\n * Constant string defined to support minimization\r\n * @ignore\r\n */\r\nconst strUseBaseInst = 'useBaseInst';\r\n \r\n/**\r\n * Constant string defined to support minimization\r\n * @ignore\r\n */\r\nconst strSetInstFuncs = 'setInstFuncs';\r\n \r\nconst Obj = Object;\r\n\r\n/**\r\n * Pre-lookup to check if we are running on a modern browser (i.e. not IE8)\r\n * @ignore\r\n */\r\nlet _objGetPrototypeOf = Obj[\"getPrototypeOf\"];\r\n\r\n/**\r\n * Pre-lookup to check for the existence of this function\r\n */\r\nlet _objGetOwnProps = Obj[\"getOwnPropertyNames\"];\r\n\r\n// Since 1.1.7 moving these to the runtime global to work around mixed version and module issues\r\n// See Issue https://github.com/microsoft/DynamicProto-JS/issues/57 for details\r\nlet _gbl = getGlobal();\r\nlet _gblInst: DynamicGlobalSettings = _gbl[DynProtoGlobalSettings] || (_gbl[DynProtoGlobalSettings] = {\r\n o: {\r\n [strSetInstFuncs]: true,\r\n [strUseBaseInst]: true\r\n },\r\n n: 1000 // Start new global index @ 1000 so we \"fix\" some cases when mixed with 1.1.6 or earlier\r\n});\r\n\r\n/**\r\n * Helper used to check whether the target is an Object prototype or Array prototype\r\n * @ignore\r\n */ \r\nfunction _isObjectOrArrayPrototype(target:any) {\r\n return target && (target === Obj[Prototype] || target === Array[Prototype]);\r\n}\r\n\r\n/**\r\n * Helper used to check whether the target is an Object prototype, Array prototype or Function prototype\r\n * @ignore\r\n */ \r\nfunction _isObjectArrayOrFunctionPrototype(target:any) {\r\n return _isObjectOrArrayPrototype(target) || target === Function[Prototype];\r\n}\r\n\r\n/**\r\n * Helper used to get the prototype of the target object as getPrototypeOf is not available in an ES3 environment.\r\n * @ignore\r\n */ \r\nfunction _getObjProto(target:any) {\r\n let newProto;\r\n\r\n if (target) {\r\n // This method doesn't exist in older browsers (e.g. IE8)\r\n if (_objGetPrototypeOf) {\r\n return _objGetPrototypeOf(target);\r\n }\r\n\r\n let curProto = target[str__Proto] || target[Prototype] || (target[Constructor] ? target[Constructor][Prototype] : null);\r\n\r\n // Using the pre-calculated value as IE8 doesn't support looking up the prototype of a prototype and thus fails for more than 1 base class\r\n newProto = target[DynProtoBaseProto] || curProto;\r\n if (!objHasOwnProperty(target, DynProtoBaseProto)) {\r\n // As this prototype doesn't have this property then this is from an inherited class so newProto is the base to return so save it\r\n // so we can look it up value (which for a multiple hierarchy dynamicProto will be the base class)\r\n delete target[DynProtoCurrent]; // Delete any current value allocated to this instance so we pick up the value from prototype hierarchy\r\n newProto = target[DynProtoBaseProto] = target[DynProtoCurrent] || target[DynProtoBaseProto];\r\n target[DynProtoCurrent] = curProto;\r\n }\r\n }\r\n\r\n return newProto;\r\n}\r\n\r\n/**\r\n * Helper to get the properties of an object, including none enumerable ones as functions on a prototype in ES6\r\n * are not enumerable.\r\n * @param target \r\n */\r\nfunction _forEachProp(target: any, func: (name: string) => void) {\r\n let props: string[] = [];\r\n if (_objGetOwnProps) {\r\n props = _objGetOwnProps(target);\r\n } else {\r\n for (let name in target) {\r\n if (typeof name === \"string\" && objHasOwnProperty(target, name)) {\r\n props.push(name);\r\n }\r\n }\r\n }\r\n\r\n if (props && props.length > 0) {\r\n for (let lp = 0; lp < props.length; lp++) {\r\n func(props[lp]);\r\n }\r\n }\r\n}\r\n\r\n/**\r\n * Helper function to check whether the provided function name is a potential candidate for dynamic\r\n * callback and prototype generation.\r\n * @param target The target object, may be a prototype or class object\r\n * @param funcName The function name\r\n * @param skipOwn Skips the check for own property\r\n * @ignore\r\n */\r\nfunction _isDynamicCandidate(target:any, funcName:string, skipOwn:boolean) {\r\n return (funcName !== Constructor && typeof target[funcName] === strFunction && (skipOwn || objHasOwnProperty(target, funcName)) && funcName !== str__Proto && funcName !== Prototype);\r\n}\r\n\r\n/**\r\n * Helper to throw a TypeError exception\r\n * @param message the message\r\n * @ignore\r\n */\r\nfunction _throwTypeError(message:string) {\r\n throwTypeError(\"DynamicProto: \" + message);\r\n}\r\n\r\n/**\r\n * Returns a collection of the instance functions that are defined directly on the thisTarget object, it does \r\n * not return any inherited functions\r\n * @param thisTarget The object to get the instance functions from\r\n * @ignore\r\n */\r\nfunction _getInstanceFuncs(thisTarget:any): any {\r\n // Get the base proto\r\n var instFuncs = objCreate(null);\r\n\r\n // Save any existing instance functions\r\n _forEachProp(thisTarget, (name) => {\r\n // Don't include any dynamic prototype instances - as we only want the real functions\r\n if (!instFuncs[name] && _isDynamicCandidate(thisTarget, name, false)) {\r\n // Create an instance callback for passing the base function to the caller\r\n instFuncs[name] = thisTarget[name];\r\n }\r\n });\r\n\r\n return instFuncs;\r\n}\r\n\r\n/**\r\n * Returns whether the value is included in the array\r\n * @param values The array of values\r\n * @param value The value\r\n */\r\nfunction _hasVisited(values:any[], value:any) {\r\n for (let lp = values.length - 1; lp >= 0; lp--) {\r\n if (values[lp] === value) {\r\n return true;\r\n }\r\n }\r\n\r\n return false;\r\n}\r\n\r\n/**\r\n * Returns an object that contains callback functions for all \"base/super\" functions, this is used to \"save\"\r\n * enabling calling super.xxx() functions without requiring that the base \"class\" has defined a prototype references\r\n * @param target The current instance\r\n * @ignore\r\n */\r\nfunction _getBaseFuncs(classProto:any, thisTarget:any, instFuncs:any, useBaseInst:boolean): any {\r\n function _instFuncProxy(target:any, funcHost: any, funcName: string) {\r\n let theFunc = funcHost[funcName];\r\n if (theFunc[DynProxyTag] && useBaseInst) {\r\n // grab and reuse the hosted looking function (if available) otherwise the original passed function\r\n let instFuncTable = target[DynInstFuncTable] || {};\r\n if (instFuncTable[DynAllowInstChkTag] !== false) {\r\n theFunc = (instFuncTable[funcHost[DynClassName]] || {})[funcName] || theFunc;\r\n }\r\n }\r\n\r\n return function() {\r\n // eslint-disable-next-line prefer-rest-params\r\n return theFunc.apply(target, arguments);\r\n };\r\n }\r\n\r\n // Start creating a new baseFuncs by creating proxies for the instance functions (as they may get replaced)\r\n var baseFuncs = objCreate(null);\r\n _forEachProp(instFuncs, (name) => {\r\n // Create an instance callback for passing the base function to the caller\r\n baseFuncs[name] = _instFuncProxy(thisTarget, instFuncs, name);\r\n });\r\n \r\n // Get the base prototype functions\r\n var baseProto = _getObjProto(classProto);\r\n let visited:any[] = [];\r\n\r\n // Don't include base object functions for Object, Array or Function\r\n while (baseProto && !_isObjectArrayOrFunctionPrototype(baseProto) && !_hasVisited(visited, baseProto)) {\r\n // look for prototype functions\r\n _forEachProp(baseProto, (name) => {\r\n // Don't include any dynamic prototype instances - as we only want the real functions\r\n // For IE 7/8 the prototype lookup doesn't provide the full chain so we need to bypass the \r\n // hasOwnProperty check we get all of the methods, main difference is that IE7/8 doesn't return\r\n // the Object prototype methods while bypassing the check\r\n if (!baseFuncs[name] && _isDynamicCandidate(baseProto, name, !_objGetPrototypeOf)) {\r\n // Create an instance callback for passing the base function to the caller\r\n baseFuncs[name] = _instFuncProxy(thisTarget, baseProto, name);\r\n }\r\n });\r\n\r\n // We need to find all possible functions that might be overloaded by walking the entire prototype chain\r\n // This avoids the caller from needing to check whether it's direct base class implements the function or not\r\n // by walking the entire chain it simplifies the usage and issues from upgrading any of the base classes.\r\n visited.push(baseProto);\r\n baseProto = _getObjProto(baseProto);\r\n }\r\n\r\n return baseFuncs;\r\n}\r\n\r\nfunction _getInstFunc(target: any, funcName: string, proto: any, currentDynProtoProxy: any) {\r\n let instFunc = null;\r\n\r\n // We need to check whether the class name is defined directly on this prototype otherwise\r\n // it will walk the proto chain and return any parent proto classname.\r\n if (target && objHasOwnProperty(proto, DynClassName)) {\r\n\r\n let instFuncTable = target[DynInstFuncTable] || objCreate(null);\r\n instFunc = (instFuncTable[proto[DynClassName]] || objCreate(null))[funcName];\r\n\r\n if (!instFunc) {\r\n // Avoid stack overflow from recursive calling the same function\r\n _throwTypeError(\"Missing [\" + funcName + \"] \" + strFunction);\r\n }\r\n\r\n // We have the instance function, lets check it we can speed up further calls\r\n // by adding the instance function back directly on the instance (avoiding the dynamic func lookup)\r\n if (!instFunc[DynInstChkTag] && instFuncTable[DynAllowInstChkTag] !== false) {\r\n // If the instance already has an instance function we can't replace it\r\n let canAddInst = !objHasOwnProperty(target, funcName);\r\n\r\n // Get current prototype\r\n let objProto = _getObjProto(target);\r\n let visited:any[] = [];\r\n\r\n // Lookup the function starting at the top (instance level prototype) and traverse down, if the first matching function\r\n // if nothing is found or if the first hit is a dynamic proto instance then we can safely add an instance shortcut\r\n while (canAddInst && objProto && !_isObjectArrayOrFunctionPrototype(objProto) && !_hasVisited(visited, objProto)) {\r\n let protoFunc = objProto[funcName];\r\n if (protoFunc) {\r\n canAddInst = (protoFunc === currentDynProtoProxy);\r\n break;\r\n }\r\n\r\n // We need to find all possible initial functions to ensure that we don't bypass a valid override function\r\n visited.push(objProto);\r\n objProto = _getObjProto(objProto);\r\n }\r\n\r\n try {\r\n if (canAddInst) {\r\n // This instance doesn't have an instance func and the class hierarchy does have a higher level prototype version\r\n // so it's safe to directly assign for any subsequent calls (for better performance)\r\n target[funcName] = instFunc;\r\n }\r\n\r\n // Block further attempts to set the instance function for any\r\n instFunc[DynInstChkTag] = 1;\r\n } catch (e) {\r\n // Don't crash if the object is readonly or the runtime doesn't allow changing this\r\n // And set a flag so we don't try again for any function\r\n instFuncTable[DynAllowInstChkTag] = false;\r\n }\r\n }\r\n }\r\n\r\n return instFunc;\r\n}\r\n\r\nfunction _getProtoFunc(funcName: string, proto: any, currentDynProtoProxy: any) {\r\n let protoFunc = proto[funcName];\r\n\r\n // Check that the prototype function is not a self reference -- try to avoid stack overflow!\r\n if (protoFunc === currentDynProtoProxy) {\r\n // It is so lookup the base prototype\r\n protoFunc = _getObjProto(proto)[funcName];\r\n }\r\n\r\n if (typeof protoFunc !== strFunction) {\r\n _throwTypeError(\"[\" + funcName + \"] is not a \" + strFunction);\r\n }\r\n\r\n return protoFunc;\r\n}\r\n\r\n/**\r\n * Add the required dynamic prototype methods to the the class prototype\r\n * @param proto - The class prototype\r\n * @param className - The instance classname \r\n * @param target - The target instance\r\n * @param baseInstFuncs - The base instance functions\r\n * @param setInstanceFunc - Flag to allow prototype function to reset the instance function if one does not exist\r\n * @ignore\r\n */\r\nfunction _populatePrototype(proto:any, className:string, target:any, baseInstFuncs:any, setInstanceFunc:boolean) {\r\n function _createDynamicPrototype(proto:any, funcName:string) {\r\n let dynProtoProxy = function() {\r\n // Use the instance or prototype function\r\n let instFunc = _getInstFunc(this, funcName, proto, dynProtoProxy) || _getProtoFunc(funcName, proto, dynProtoProxy);\r\n // eslint-disable-next-line prefer-rest-params\r\n return instFunc.apply(this, arguments);\r\n };\r\n \r\n // Tag this function as a proxy to support replacing dynamic proxy elements (primary use case is for unit testing\r\n // via which can dynamically replace the prototype function reference)\r\n (dynProtoProxy as any)[DynProxyTag] = 1;\r\n return dynProtoProxy;\r\n }\r\n \r\n if (!_isObjectOrArrayPrototype(proto)) {\r\n let instFuncTable = target[DynInstFuncTable] = target[DynInstFuncTable] || objCreate(null);\r\n if (!_isObjectOrArrayPrototype(instFuncTable)) {\r\n let instFuncs = instFuncTable[className] = (instFuncTable[className] || objCreate(null)); // fetch and assign if as it may not exist yet\r\n\r\n // Set whether we are allow to lookup instances, if someone has set to false then do not re-enable\r\n if (instFuncTable[DynAllowInstChkTag] !== false) {\r\n instFuncTable[DynAllowInstChkTag] = !!setInstanceFunc;\r\n }\r\n\r\n if (!_isObjectOrArrayPrototype(instFuncs)) {\r\n _forEachProp(target, (name) => {\r\n // Only add overridden functions\r\n if (_isDynamicCandidate(target, name, false) && target[name] !== baseInstFuncs[name] ) {\r\n // Save the instance Function to the lookup table and remove it from the instance as it's not a dynamic proto function\r\n instFuncs[name] = target[name];\r\n delete target[name];\r\n \r\n // Add a dynamic proto if one doesn't exist or if a prototype function exists and it's not a dynamic one\r\n if (!objHasOwnProperty(proto, name) || (proto[name] && !proto[name][DynProxyTag])) {\r\n proto[name] = _createDynamicPrototype(proto, name);\r\n }\r\n }\r\n });\r\n }\r\n }\r\n }\r\n}\r\n\r\n/**\r\n * Checks whether the passed prototype object appears to be correct by walking the prototype hierarchy of the instance\r\n * @param classProto The class prototype instance\r\n * @param thisTarget The current instance that will be checked whether the passed prototype instance is in the hierarchy\r\n * @ignore\r\n */\r\nfunction _checkPrototype(classProto:any, thisTarget:any) {\r\n // This method doesn't existing in older browsers (e.g. IE8)\r\n if (_objGetPrototypeOf) {\r\n // As this is primarily a coding time check, don't bother checking if running in IE8 or lower\r\n let visited:any[] = [];\r\n let thisProto = _getObjProto(thisTarget);\r\n while (thisProto && !_isObjectArrayOrFunctionPrototype(thisProto) && !_hasVisited(visited, thisProto)) {\r\n if (thisProto === classProto) {\r\n return true;\r\n }\r\n\r\n // This avoids the caller from needing to check whether it's direct base class implements the function or not\r\n // by walking the entire chain it simplifies the usage and issues from upgrading any of the base classes.\r\n visited.push(thisProto);\r\n thisProto = _getObjProto(thisProto);\r\n }\r\n\r\n return false;\r\n }\r\n\r\n // If objGetPrototypeOf doesn't exist then just assume everything is ok.\r\n return true;\r\n}\r\n\r\n/**\r\n * Gets the current prototype name using the ES6 name if available otherwise falling back to a use unknown as the name.\r\n * It's not critical for this to return a name, it's used to decorate the generated unique name for easier debugging only.\r\n * @param target \r\n * @param unknownValue \r\n * @ignore\r\n */\r\nfunction _getObjName(target:any, unknownValue?:string) {\r\n if (objHasOwnProperty(target, Prototype)) {\r\n // Look like a prototype\r\n return target.name || unknownValue || UnknownValue\r\n }\r\n\r\n return (((target || {})[Constructor]) || {}).name || unknownValue || UnknownValue;\r\n}\r\n\r\n/**\r\n * Interface to define additional configuration options to control how the dynamic prototype functions operate.\r\n */\r\nexport interface IDynamicProtoOpts {\r\n\r\n /**\r\n * Should the dynamic prototype attempt to set an instance function for instances that do not already have an\r\n * function of the same name or have been extended by a class with a (non-dynamic proto) prototype function.\r\n */\r\n setInstFuncs: boolean,\r\n\r\n /**\r\n * When looking for base (super) functions if it finds a dynamic proto instances can it use the instance functions\r\n * and bypass the prototype lookups. Defaults to true.\r\n */\r\n useBaseInst?: boolean\r\n}\r\n\r\n/**\r\n * The delegate signature for the function used as the callback for dynamicProto() \r\n * @typeparam DPType This is the generic type of the class, used to keep intellisense valid for the proxy instance, even \r\n * though it is only a proxy that only contains the functions \r\n * @param theTarget This is the real \"this\" of the current target object\r\n * @param baseFuncProxy The is a proxy object which ONLY contains this function that existed on the \"this\" instance before\r\n * calling dynamicProto, it does NOT contain properties of this. This is basically equivalent to using the \"super\" keyword.\r\n */\r\nexport type DynamicProtoDelegate = (theTarget:DPType, baseFuncProxy?:DPType) => void;\r\n\r\n/**\r\n * Helper function when creating dynamic (inline) functions for classes, this helper performs the following tasks :-\r\n * - Saves references to all defined base class functions\r\n * - Calls the delegateFunc with the current target (this) and a base object reference that can be used to call all \"super\" functions.\r\n * - Will populate the class prototype for all overridden functions to support class extension that call the prototype instance.\r\n * Callers should use this helper when declaring all function within the constructor of a class, as mentioned above the delegateFunc is \r\n * passed both the target \"this\" and an object that can be used to call any base (super) functions, using this based object in place of\r\n * super.XXX() (which gets expanded to _super.prototype.XXX()) provides a better minification outcome and also ensures the correct \"this\"\r\n * context is maintained as TypeScript creates incorrect references using super.XXXX() for dynamically defined functions i.e. Functions\r\n * defined in the constructor or some other function (rather than declared as complete typescript functions).\r\n * ### Usage\r\n * ```typescript\r\n * import dynamicProto from \"@microsoft/dynamicproto-js\";\r\n * class ExampleClass extends BaseClass {\r\n * constructor() {\r\n * dynamicProto(ExampleClass, this, (_self, base) => {\r\n * // This will define a function that will be converted to a prototype function\r\n * _self.newFunc = () => {\r\n * // Access any \"this\" instance property \r\n * if (_self.someProperty) {\r\n * ...\r\n * }\r\n * }\r\n * // This will define a function that will be converted to a prototype function\r\n * _self.myFunction = () => {\r\n * // Access any \"this\" instance property\r\n * if (_self.someProperty) {\r\n * // Call the base version of the function that we are overriding\r\n * base.myFunction();\r\n * }\r\n * ...\r\n * }\r\n * _self.initialize = () => {\r\n * ...\r\n * }\r\n * // Warnings: While the following will work as _self is simply a reference to\r\n * // this, if anyone overrides myFunction() the overridden will be called first\r\n * // as the normal JavaScript method resolution will occur and the defined\r\n * // _self.initialize() function is actually gets removed from the instance and\r\n * // a proxy prototype version is created to reference the created method.\r\n * _self.initialize();\r\n * });\r\n * }\r\n * }\r\n * ```\r\n * @typeparam DPType This is the generic type of the class, used to keep intellisense valid\r\n * @typeparam DPCls The type that contains the prototype of the current class\r\n * @param theClass - This is the current class instance which contains the prototype for the current class\r\n * @param target - The current \"this\" (target) reference, when the class has been extended this.prototype will not be the 'theClass' value.\r\n * @param delegateFunc - The callback function (closure) that will create the dynamic function\r\n * @param options - Additional options to configure how the dynamic prototype operates\r\n */\r\nexport default function dynamicProto(theClass:DPCls, target:DPType, delegateFunc: DynamicProtoDelegate, options?:IDynamicProtoOpts): void {\r\n // Make sure that the passed theClass argument looks correct\r\n if (!objHasOwnProperty(theClass, Prototype)) {\r\n _throwTypeError(\"theClass is an invalid class definition.\");\r\n }\r\n\r\n // Quick check to make sure that the passed theClass argument looks correct (this is a common copy/paste error)\r\n let classProto = theClass[Prototype];\r\n if (!_checkPrototype(classProto, target)) {\r\n _throwTypeError(\"[\" + _getObjName(theClass) + \"] not in hierarchy of [\" + _getObjName(target) + \"]\");\r\n }\r\n\r\n let className = null;\r\n if (objHasOwnProperty(classProto, DynClassName)) {\r\n // Only grab the class name if it's defined on this prototype (i.e. don't walk the prototype chain)\r\n className = classProto[DynClassName];\r\n } else {\r\n // As not all browser support name on the prototype creating a unique dynamic one if we have not already\r\n // assigned one, so we can use a simple string as the lookup rather than an object for the dynamic instance\r\n // function table lookup.\r\n className = DynClassNamePrefix + _getObjName(theClass, \"_\") + \"$\" + _gblInst.n ;\r\n _gblInst.n++;\r\n classProto[DynClassName] = className;\r\n }\r\n\r\n let perfOptions = dynamicProto[DynProtoDefaultOptions];\r\n let useBaseInst = !!perfOptions[strUseBaseInst];\r\n if (useBaseInst && options && options[strUseBaseInst] !== undefined) {\r\n useBaseInst = !!options[strUseBaseInst];\r\n }\r\n\r\n // Get the current instance functions\r\n let instFuncs = _getInstanceFuncs(target);\r\n\r\n // Get all of the functions for any base instance (before they are potentially overridden)\r\n let baseFuncs = _getBaseFuncs(classProto, target, instFuncs, useBaseInst);\r\n\r\n // Execute the delegate passing in both the current target \"this\" and \"base\" function references\r\n // Note casting the same type as we don't actually have the base class here and this will provide some intellisense support\r\n delegateFunc(target, baseFuncs as DPType);\r\n\r\n // Don't allow setting instance functions for older IE instances\r\n let setInstanceFunc = !!_objGetPrototypeOf && !!perfOptions[strSetInstFuncs];\r\n if (setInstanceFunc && options) {\r\n setInstanceFunc = !!options[strSetInstFuncs];\r\n }\r\n\r\n // Populate the Prototype for any overridden instance functions\r\n _populatePrototype(classProto, className, target, instFuncs, setInstanceFunc !== false);\r\n}\r\n\r\n/**\r\n * Exposes the default global options to allow global configuration, if the global values are disabled these will override\r\n * any passed values. This is primarily exposed to support unit-testing without the need for individual classes to expose\r\n * their internal usage of dynamic proto.\r\n */\r\ndynamicProto[DynProtoDefaultOptions] = _gblInst.o;\r\n","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\n\r\nexport const strShimFunction = \"function\";\r\nexport const strShimObject = \"object\";\r\nexport const strShimUndefined = \"undefined\";\r\nexport const strShimPrototype = \"prototype\";\r\nexport const strDefault = \"default\";\r\n\r\nexport const ObjClass = Object;\r\nexport const ObjProto = ObjClass[strShimPrototype];\r\n","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\n\r\nimport { getGlobal, objAssign, objCreate, objDefineProp, objHasOwnProperty, throwTypeError } from \"@nevware21/ts-utils\";\r\nimport {\r\n ObjClass, ObjProto,\r\n strDefault, strShimFunction, strShimPrototype\r\n} from \"./Constants\";\r\n\r\n// Most of these functions have been directly shamelessly \"lifted\" from the https://github.com/@microsoft/tslib and\r\n// modified to be ES5 compatible and applying several minification and tree-shaking techniques so that Application Insights\r\n// can successfully use TypeScript \"importHelpers\" which imports tslib during compilation but it will use these at runtime\r\n// Which is also why all of the functions have not been included as Application Insights currently doesn't use or require\r\n// them.\r\n\r\nexport const SymbolObj = (getGlobal()||{})[\"Symbol\"];\r\nexport const ReflectObj = (getGlobal()||{})[\"Reflect\"];\r\nexport const __hasReflect = !!ReflectObj;\r\n\r\nconst strDecorate = \"decorate\";\r\nconst strMetadata = \"metadata\";\r\nconst strGetOwnPropertySymbols = \"getOwnPropertySymbols\";\r\nconst strIterator = \"iterator\";\r\nconst strHasOwnProperty = \"hasOwnProperty\";\r\n\r\nexport declare type ObjAssignFunc = (t: any, ...sources:any[]) => any;\r\n\r\nexport var __objAssignFnImpl: ObjAssignFunc = function(t: any): any {\r\n // tslint:disable-next-line: ban-comma-operator\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) {\r\n if (ObjProto[strHasOwnProperty].call(s, p)) {\r\n (t as any)[p] = s[p];\r\n }\r\n }\r\n }\r\n return t;\r\n};\r\n\r\nexport var __assignFn: ObjAssignFunc = objAssign || __objAssignFnImpl;\r\n\r\n// tslint:disable-next-line: only-arrow-functions\r\nvar extendStaticsFn = function(d: any, b: any): any {\r\n extendStaticsFn = ObjClass[\"setPrototypeOf\"] ||\r\n // tslint:disable-next-line: only-arrow-functions\r\n ({ __proto__: [] } instanceof Array && function (d: any, b: any) {\r\n d.__proto__ = b;\r\n }) ||\r\n // tslint:disable-next-line: only-arrow-functions\r\n function (d: any, b: any) {\r\n for (var p in b) {\r\n if (b[strHasOwnProperty](p)) {\r\n d[p] = b[p];\r\n }\r\n }\r\n };\r\n return extendStaticsFn(d, b);\r\n};\r\n\r\nexport function __extendsFn(d: any, b: any) {\r\n if (typeof b !== strShimFunction && b !== null) {\r\n throwTypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n }\r\n extendStaticsFn(d, b);\r\n function __(this: any) {\r\n this.constructor = d;\r\n }\r\n // tslint:disable-next-line: ban-comma-operator\r\n d[strShimPrototype] = b === null ? objCreate(b) : (__[strShimPrototype] = b[strShimPrototype], new (__ as any)());\r\n}\r\n\r\nexport function __restFn(s: any, e: any) {\r\n var t = {};\r\n for (var k in s) {\r\n if (objHasOwnProperty(s, k) && e.indexOf(k) < 0) {\r\n t[k] = s[k];\r\n }\r\n }\r\n if (s != null && typeof ObjClass[strGetOwnPropertySymbols] === strShimFunction) {\r\n for (var i = 0, p = ObjClass[strGetOwnPropertySymbols](s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && ObjProto[\"propertyIsEnumerable\"].call(s, p[i])) {\r\n t[p[i]] = s[p[i]];\r\n }\r\n }\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorateFn(decorators: any, target: any, key: any, desc: any) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = ObjClass[\"getOwnPropertyDescriptor\"](target, key) : desc, d;\r\n if (__hasReflect && typeof ReflectObj[strDecorate] === strShimFunction) {\r\n r = ReflectObj[strDecorate](decorators, target, key, desc);\r\n } else {\r\n for (var i = decorators.length - 1; i >= 0; i--) {\r\n // eslint-disable-next-line no-cond-assign\r\n if (d = decorators[i]) {\r\n r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n }\r\n }\r\n }\r\n\r\n // tslint:disable-next-line:ban-comma-operator\r\n return c > 3 && r && objDefineProp(target, key, r), r;\r\n}\r\n\r\nexport function __paramFn(paramIndex: number, decorator: Function) {\r\n return function (target: any, key: any) {\r\n decorator(target, key, paramIndex);\r\n }\r\n}\r\n\r\nexport function __metadataFn(metadataKey: any, metadataValue: any) {\r\n if (__hasReflect && ReflectObj[strMetadata] === strShimFunction) {\r\n return ReflectObj[strMetadata](metadataKey, metadataValue);\r\n }\r\n}\r\n\r\nexport function __exportStarFn(m: any, o: any) {\r\n for (var p in m) {\r\n if (p !== strDefault && !objHasOwnProperty(o, p)) {\r\n __createBindingFn(o, m, p);\r\n }\r\n }\r\n}\r\n\r\nexport function __createBindingFn(o: any, m: any, k: any, k2?: any) {\r\n if (k2 === undefined) {\r\n k2 = k;\r\n }\r\n \r\n if (!!objDefineProp) {\r\n objDefineProp(o, k2, {\r\n enumerable: true,\r\n get() {\r\n return m[k];\r\n }\r\n });\r\n } else {\r\n o[k2] = m[k];\r\n }\r\n}\r\n\r\nexport function __valuesFn(o: any) {\r\n var s = typeof SymbolObj === strShimFunction && SymbolObj[strIterator], m = s && o[s], i = 0;\r\n if (m) {\r\n return m.call(o);\r\n }\r\n\r\n if (o && typeof o.length === \"number\") {\r\n return {\r\n next () {\r\n if (o && i >= o.length) {\r\n o = void 0;\r\n }\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n }\r\n\r\n throwTypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __readFn(o: any, n: any) {\r\n var m = typeof SymbolObj === strShimFunction && o[SymbolObj[strIterator]];\r\n if (!m) {\r\n return o;\r\n }\r\n\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) {\r\n ar.push(r.value);\r\n }\r\n } catch (error) {\r\n e = {\r\n error\r\n };\r\n } finally {\r\n try {\r\n // tslint:disable-next-line:no-conditional-assignment\r\n if (r && !r.done && (m = i[\"return\"])) {\r\n m.call(i);\r\n }\r\n } finally {\r\n if (e) {\r\n // eslint-disable-next-line no-unsafe-finally\r\n throw e.error;\r\n }\r\n }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArraysFn() {\r\n var theArgs = arguments;\r\n // Calculate new total size\r\n for (var s = 0, i = 0, il = theArgs.length; i < il; i++) {\r\n s += theArgs[i].length;\r\n }\r\n\r\n // Create new full array\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++) {\r\n for (var a = theArgs[i], j = 0, jl = a.length; j < jl; j++, k++) {\r\n r[k] = a[j];\r\n }\r\n }\r\n\r\n return r;\r\n}\r\n\r\nexport function __spreadArrayFn(to: any, from: any) {\r\n for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) {\r\n to[j] = from[i];\r\n }\r\n\r\n return to;\r\n}\r\n\r\nexport function __makeTemplateObjectFn(cooked: any, raw: any) {\r\n if (objDefineProp) {\r\n objDefineProp(cooked, \"raw\", { value: raw });\r\n } else {\r\n cooked.raw = raw;\r\n }\r\n\r\n return cooked;\r\n}\r\n\r\nexport function __importStarFn(mod: any) {\r\n if (mod && mod.__esModule) {\r\n return mod;\r\n }\r\n\r\n var result = {};\r\n if (mod != null) {\r\n for (var k in mod) {\r\n if (k !== strDefault && Object.prototype.hasOwnProperty.call(mod, k)) {\r\n __createBindingFn(result, mod, k);\r\n }\r\n }\r\n }\r\n\r\n // Set default module\r\n if (!!objDefineProp) {\r\n objDefineProp( result, strDefault, { enumerable: true, value: mod });\r\n } else {\r\n result[strDefault] = mod;\r\n }\r\n\r\n return result;\r\n}\r\n\r\nexport function __importDefaultFn(mod:any) {\r\n return (mod && mod.__esModule) ? mod : { strDefault: mod };\r\n}\r\n","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\n// @skip-file-minify\r\n// ##############################################################\r\n// AUTO GENERATED FILE: This file is Auto Generated during build.\r\n// ##############################################################\r\n// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\r\n// Note: DON'T Export these const from the package as we are still targeting ES3 this will export a mutable variables that someone could change!!!\r\n// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\r\nexport var _DYN_TO_LOWER_CASE = \"toLowerCase\"; // Count: 11\r\nexport var _DYN_BLK_VAL = \"blkVal\"; // Count: 5\r\nexport var _DYN_LENGTH = \"length\"; // Count: 55\r\nexport var _DYN_RD_ONLY = \"rdOnly\"; // Count: 4\r\nexport var _DYN_NOTIFY = \"notify\"; // Count: 4\r\nexport var _DYN_WARN_TO_CONSOLE = \"warnToConsole\"; // Count: 4\r\nexport var _DYN_THROW_INTERNAL = \"throwInternal\"; // Count: 5\r\nexport var _DYN_SET_DF = \"setDf\"; // Count: 6\r\nexport var _DYN_WATCH = \"watch\"; // Count: 8\r\nexport var _DYN_LOGGER = \"logger\"; // Count: 21\r\nexport var _DYN_APPLY = \"apply\"; // Count: 7\r\nexport var _DYN_PUSH = \"push\"; // Count: 35\r\nexport var _DYN_SPLICE = \"splice\"; // Count: 8\r\nexport var _DYN_HDLR = \"hdlr\"; // Count: 6\r\nexport var _DYN_CANCEL = \"cancel\"; // Count: 6\r\nexport var _DYN_INITIALIZE = \"initialize\"; // Count: 5\r\nexport var _DYN_IDENTIFIER = \"identifier\"; // Count: 8\r\nexport var _DYN_REMOVE_NOTIFICATION_0 = \"removeNotificationListener\"; // Count: 4\r\nexport var _DYN_ADD_NOTIFICATION_LIS1 = \"addNotificationListener\"; // Count: 4\r\nexport var _DYN_IS_INITIALIZED = \"isInitialized\"; // Count: 10\r\nexport var _DYN_INSTRUMENTATION_KEY = \"instrumentationKey\"; // Count: 2\r\nexport var _DYN__INACTIVE = \"INACTIVE\"; // Count: 3\r\nexport var _DYN_VALUE = \"value\"; // Count: 5\r\nexport var _DYN_GET_NOTIFY_MGR = \"getNotifyMgr\"; // Count: 5\r\nexport var _DYN_GET_PLUGIN = \"getPlugin\"; // Count: 6\r\nexport var _DYN_NAME = \"name\"; // Count: 12\r\nexport var _DYN_I_KEY = \"iKey\"; // Count: 5\r\nexport var _DYN_TIME = \"time\"; // Count: 6\r\nexport var _DYN_PROCESS_NEXT = \"processNext\"; // Count: 15\r\nexport var _DYN_GET_PROCESS_TEL_CONT2 = \"getProcessTelContext\"; // Count: 2\r\nexport var _DYN_POLL_INTERNAL_LOGS = \"pollInternalLogs\"; // Count: 2\r\nexport var _DYN_ENABLED = \"enabled\"; // Count: 6\r\nexport var _DYN_STOP_POLLING_INTERNA3 = \"stopPollingInternalLogs\"; // Count: 2\r\nexport var _DYN_UNLOAD = \"unload\"; // Count: 9\r\nexport var _DYN_ON_COMPLETE = \"onComplete\"; // Count: 5\r\nexport var _DYN_VERSION = \"version\"; // Count: 6\r\nexport var _DYN_LOGGING_LEVEL_CONSOL4 = \"loggingLevelConsole\"; // Count: 2\r\nexport var _DYN_CREATE_NEW = \"createNew\"; // Count: 7\r\nexport var _DYN_TEARDOWN = \"teardown\"; // Count: 9\r\nexport var _DYN_MESSAGE_ID = \"messageId\"; // Count: 4\r\nexport var _DYN_MESSAGE = \"message\"; // Count: 7\r\nexport var _DYN_IS_ASYNC = \"isAsync\"; // Count: 6\r\nexport var _DYN_DIAG_LOG = \"diagLog\"; // Count: 10\r\nexport var _DYN__DO_TEARDOWN = \"_doTeardown\"; // Count: 5\r\nexport var _DYN_UPDATE = \"update\"; // Count: 6\r\nexport var _DYN_GET_NEXT = \"getNext\"; // Count: 12\r\nexport var _DYN_SET_NEXT_PLUGIN = \"setNextPlugin\"; // Count: 5\r\nexport var _DYN_PROTOCOL = \"protocol\"; // Count: 3\r\nexport var _DYN_USER_AGENT = \"userAgent\"; // Count: 5\r\nexport var _DYN_SPLIT = \"split\"; // Count: 7\r\nexport var _DYN_NODE_TYPE = \"nodeType\"; // Count: 3\r\nexport var _DYN_REPLACE = \"replace\"; // Count: 9\r\nexport var _DYN_LOG_INTERNAL_MESSAGE = \"logInternalMessage\"; // Count: 2\r\nexport var _DYN_TYPE = \"type\"; // Count: 14\r\nexport var _DYN_HANDLER = \"handler\"; // Count: 5\r\nexport var _DYN_STATUS = \"status\"; // Count: 5\r\nexport var _DYN_GET_RESPONSE_HEADER = \"getResponseHeader\"; // Count: 2\r\nexport var _DYN_GET_ALL_RESPONSE_HEA5 = \"getAllResponseHeaders\"; // Count: 2\r\nexport var _DYN_IS_CHILD_EVT = \"isChildEvt\"; // Count: 3\r\nexport var _DYN_DATA = \"data\"; // Count: 7\r\nexport var _DYN_GET_CTX = \"getCtx\"; // Count: 6\r\nexport var _DYN_SET_CTX = \"setCtx\"; // Count: 10\r\nexport var _DYN_COMPLETE = \"complete\"; // Count: 3\r\nexport var _DYN_ITEMS_RECEIVED = \"itemsReceived\"; // Count: 3\r\nexport var _DYN_URL_STRING = \"urlString\"; // Count: 5\r\nexport var _DYN_SEND_POST = \"sendPOST\"; // Count: 3\r\nexport var _DYN_HEADERS = \"headers\"; // Count: 5\r\nexport var _DYN_TIMEOUT = \"timeout\"; // Count: 6\r\nexport var _DYN_SET_REQUEST_HEADER = \"setRequestHeader\"; // Count: 2\r\nexport var _DYN_TRACE_ID = \"traceId\"; // Count: 5\r\nexport var _DYN_SPAN_ID = \"spanId\"; // Count: 5\r\nexport var _DYN_TRACE_FLAGS = \"traceFlags\"; // Count: 6\r\nexport var _DYN_GET_ATTRIBUTE = \"getAttribute\"; // Count: 3\r\n//# sourceMappingURL=__DynamicConstants.js.map","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\n// ###################################################################################################################################################\r\n// Note: DON'T Export these const from the package as we are still targeting IE/ES5 this will export a mutable variables that someone could change ###\r\n// ###################################################################################################################################################\r\nexport var UNDEFINED_VALUE = undefined;\r\nexport var STR_EMPTY = \"\";\r\nexport var STR_CHANNELS = \"channels\";\r\nexport var STR_CORE = \"core\";\r\nexport var STR_CREATE_PERF_MGR = \"createPerfMgr\";\r\nexport var STR_DISABLED = \"disabled\";\r\nexport var STR_EXTENSION_CONFIG = \"extensionConfig\";\r\nexport var STR_EXTENSIONS = \"extensions\";\r\nexport var STR_PROCESS_TELEMETRY = \"processTelemetry\";\r\nexport var STR_PRIORITY = \"priority\";\r\nexport var STR_EVENTS_SENT = \"eventsSent\";\r\nexport var STR_EVENTS_DISCARDED = \"eventsDiscarded\";\r\nexport var STR_EVENTS_SEND_REQUEST = \"eventsSendRequest\";\r\nexport var STR_PERF_EVENT = \"perfEvent\";\r\nexport var STR_OFFLINE_STORE = \"offlineEventsStored\";\r\nexport var STR_OFFLINE_SENT = \"offlineBatchSent\";\r\nexport var STR_OFFLINE_DROP = \"offlineBatchDrop\";\r\nexport var STR_GET_PERF_MGR = \"getPerfMgr\";\r\nexport var STR_DOMAIN = \"domain\";\r\nexport var STR_PATH = \"path\";\r\nexport var STR_NOT_DYNAMIC_ERROR = \"Not dynamic - \";\r\n//# sourceMappingURL=InternalConstants.js.map","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\nimport { ObjAssign, ObjClass } from \"@microsoft/applicationinsights-shims\";\r\nimport { arrForEach, asString as asString21, isArray, isBoolean, isError, isFunction, isNullOrUndefined, isNumber, isObject, isPlainObject, isString, isUndefined, objDeepFreeze, objDefine, objForEachKey, objHasOwn, strIndexOf, strTrim } from \"@nevware21/ts-utils\";\r\nimport { _DYN_APPLY, _DYN_GET_ALL_RESPONSE_HEA5, _DYN_GET_RESPONSE_HEADER, _DYN_LENGTH, _DYN_NAME, _DYN_REPLACE, _DYN_SPLIT, _DYN_STATUS, _DYN_TO_LOWER_CASE } from \"../__DynamicConstants\";\r\nimport { STR_EMPTY } from \"./InternalConstants\";\r\n// RESTRICT and AVOID circular dependencies you should not import other contained modules or export the contents of this file directly\r\n// Added to help with minification\r\nvar strGetPrototypeOf = \"getPrototypeOf\";\r\nvar rCamelCase = /-([a-z])/g;\r\nvar rNormalizeInvalid = /([^\\w\\d_$])/g;\r\nvar rLeadingNumeric = /^(\\d+[\\w\\d_$])/;\r\nexport var _getObjProto = Object[strGetPrototypeOf];\r\nexport function isNotUndefined(value) {\r\n return !isUndefined(value);\r\n}\r\nexport function isNotNullOrUndefined(value) {\r\n return !isNullOrUndefined(value);\r\n}\r\n/**\r\n * Validates that the string name conforms to the JS IdentifierName specification and if not\r\n * normalizes the name so that it would. This method does not identify or change any keywords\r\n * meaning that if you pass in a known keyword the same value will be returned.\r\n * This is a simplified version\r\n * @param name - The name to validate\r\n */\r\nexport function normalizeJsName(name) {\r\n var value = name;\r\n if (value && isString(value)) {\r\n // CamelCase everything after the \"-\" and remove the dash\r\n value = value[_DYN_REPLACE /* @min:%2ereplace */](rCamelCase, function (_all, letter) {\r\n return letter.toUpperCase();\r\n });\r\n value = value[_DYN_REPLACE /* @min:%2ereplace */](rNormalizeInvalid, \"_\");\r\n value = value[_DYN_REPLACE /* @min:%2ereplace */](rLeadingNumeric, function (_all, match) {\r\n return \"_\" + match;\r\n });\r\n }\r\n return value;\r\n}\r\n/**\r\n * A simple wrapper (for minification support) to check if the value contains the search string.\r\n * @param value - The string value to check for the existence of the search value\r\n * @param search - The value search within the value\r\n */\r\nexport function strContains(value, search) {\r\n if (value && search) {\r\n return strIndexOf(value, search) !== -1;\r\n }\r\n return false;\r\n}\r\n/**\r\n * Convert a date to I.S.O. format in IE8\r\n */\r\nexport function toISOString(date) {\r\n return date && date.toISOString() || \"\";\r\n}\r\nexport var deepFreeze = objDeepFreeze;\r\n/**\r\n * Returns the name of object if it's an Error. Otherwise, returns empty string.\r\n */\r\nexport function getExceptionName(object) {\r\n if (isError(object)) {\r\n return object[_DYN_NAME /* @min:%2ename */];\r\n }\r\n return STR_EMPTY;\r\n}\r\n/**\r\n * Sets the provided value on the target instance using the field name when the provided chk function returns true, the chk\r\n * function will only be called if the new value is no equal to the original value.\r\n * @param target - The target object\r\n * @param field - The key of the target\r\n * @param value - The value to set\r\n * @param valChk - [Optional] Callback to check the value that if supplied will be called check if the new value can be set\r\n * @param srcChk - [Optional] Callback to check to original value that if supplied will be called if the new value should be set (if allowed)\r\n * @returns The existing or new value, depending what was set\r\n */\r\nexport function setValue(target, field, value, valChk, srcChk) {\r\n var theValue = value;\r\n if (target) {\r\n theValue = target[field];\r\n if (theValue !== value && (!srcChk || srcChk(theValue)) && (!valChk || valChk(value))) {\r\n theValue = value;\r\n target[field] = theValue;\r\n }\r\n }\r\n return theValue;\r\n}\r\n/**\r\n * Returns the current value from the target object if not null or undefined otherwise sets the new value and returns it\r\n * @param target - The target object to return or set the default value\r\n * @param field - The key for the field to set on the target\r\n * @param defValue - [Optional] The value to set if not already present, when not provided a empty object will be added\r\n */\r\nexport function getSetValue(target, field, defValue) {\r\n var theValue;\r\n if (target) {\r\n theValue = target[field];\r\n if (!theValue && isNullOrUndefined(theValue)) {\r\n // Supports having the default as null\r\n theValue = !isUndefined(defValue) ? defValue : {};\r\n target[field] = theValue;\r\n }\r\n }\r\n else {\r\n // Expanded for performance so we only check defValue if required\r\n theValue = !isUndefined(defValue) ? defValue : {};\r\n }\r\n return theValue;\r\n}\r\nfunction _createProxyFunction(source, funcName) {\r\n var srcFunc = null;\r\n var src = null;\r\n if (isFunction(source)) {\r\n srcFunc = source;\r\n }\r\n else {\r\n src = source;\r\n }\r\n return function () {\r\n // Capture the original arguments passed to the method\r\n var originalArguments = arguments;\r\n if (srcFunc) {\r\n src = srcFunc();\r\n }\r\n if (src) {\r\n return src[funcName][_DYN_APPLY /* @min:%2eapply */](src, originalArguments);\r\n }\r\n };\r\n}\r\n/**\r\n * Effectively assigns all enumerable properties (not just own properties) and functions (including inherited prototype) from\r\n * the source object to the target, it attempts to use proxy getters / setters (if possible) and proxy functions to avoid potential\r\n * implementation issues by assigning prototype functions as instance ones\r\n *\r\n * This method is the primary method used to \"update\" the snippet proxy with the ultimate implementations.\r\n *\r\n * Special ES3 Notes:\r\n * Updates (setting) of direct property values on the target or indirectly on the source object WILL NOT WORK PROPERLY, updates to the\r\n * properties of \"referenced\" object will work (target.context.newValue = 10 =\\> will be reflected in the source.context as it's the\r\n * same object). ES3 Failures: assigning target.myProp = 3 -\\> Won't change source.myProp = 3, likewise the reverse would also fail.\r\n * @param target - The target object to be assigned with the source properties and functions\r\n * @param source - The source object which will be assigned / called by setting / calling the targets proxies\r\n * @param chkSet - An optional callback to determine whether a specific property/function should be proxied\r\n */\r\nexport function proxyAssign(target, source, chkSet) {\r\n if (target && source && isObject(target) && isObject(source)) {\r\n var _loop_1 = function (field) {\r\n if (isString(field)) {\r\n var value = source[field];\r\n if (isFunction(value)) {\r\n if (!chkSet || chkSet(field, true, source, target)) {\r\n // Create a proxy function rather than just copying the (possible) prototype to the new object as an instance function\r\n target[field] = _createProxyFunction(source, field);\r\n }\r\n }\r\n else if (!chkSet || chkSet(field, false, source, target)) {\r\n if (objHasOwn(target, field)) {\r\n // Remove any previous instance property\r\n delete target[field];\r\n }\r\n objDefine(target, field, {\r\n g: function () {\r\n return source[field];\r\n },\r\n s: function (theValue) {\r\n source[field] = theValue;\r\n }\r\n });\r\n }\r\n }\r\n };\r\n // effectively apply/proxy full source to the target instance\r\n for (var field in source) {\r\n _loop_1(field);\r\n }\r\n }\r\n return target;\r\n}\r\n/**\r\n * Creates a proxy function on the target which internally will call the source version with all arguments passed to the target method.\r\n *\r\n * @param target - The target object to be assigned with the source properties and functions\r\n * @param name - The function name that will be added on the target\r\n * @param source - The source object which will be assigned / called by setting / calling the targets proxies\r\n * @param theFunc - The function name on the source that will be proxied on the target\r\n * @param overwriteTarget - If `false` this will not replace any pre-existing name otherwise (the default) it will overwrite any existing name\r\n */\r\nexport function proxyFunctionAs(target, name, source, theFunc, overwriteTarget) {\r\n if (target && name && source) {\r\n if (overwriteTarget !== false || isUndefined(target[name])) {\r\n target[name] = _createProxyFunction(source, theFunc);\r\n }\r\n }\r\n}\r\n/**\r\n * Creates proxy functions on the target which internally will call the source version with all arguments passed to the target method.\r\n *\r\n * @param target - The target object to be assigned with the source properties and functions\r\n * @param source - The source object which will be assigned / called by setting / calling the targets proxies\r\n * @param functionsToProxy - An array of function names that will be proxied on the target\r\n * @param overwriteTarget - If false this will not replace any pre-existing name otherwise (the default) it will overwrite any existing name\r\n */\r\nexport function proxyFunctions(target, source, functionsToProxy, overwriteTarget) {\r\n if (target && source && isObject(target) && isArray(functionsToProxy)) {\r\n arrForEach(functionsToProxy, function (theFuncName) {\r\n if (isString(theFuncName)) {\r\n proxyFunctionAs(target, theFuncName, source, theFuncName, overwriteTarget);\r\n }\r\n });\r\n }\r\n return target;\r\n}\r\n/**\r\n * Simpler helper to create a dynamic class that implements the interface and populates the values with the defaults.\r\n * Only instance properties (hasOwnProperty) values are copied from the defaults to the new instance\r\n * @param defaults - Simple helper\r\n */\r\nexport function createClassFromInterface(defaults) {\r\n return /** @class */ (function () {\r\n function class_1() {\r\n var _this = this;\r\n if (defaults) {\r\n objForEachKey(defaults, function (field, value) {\r\n _this[field] = value;\r\n });\r\n }\r\n }\r\n return class_1;\r\n }());\r\n}\r\n/**\r\n * A helper function to assist with JIT performance for objects that have properties added / removed dynamically\r\n * this is primarily for chromium based browsers and has limited effects on Firefox and none of IE. Only call this\r\n * function after you have finished \"updating\" the object, calling this within loops reduces or defeats the benefits.\r\n * This helps when iterating using for..in, objKeys() and objForEach()\r\n * @param theObject - The object to be optimized if possible\r\n */\r\nexport function optimizeObject(theObject) {\r\n // V8 Optimization to cause the JIT compiler to create a new optimized object for looking up the own properties\r\n // primarily for object with <= 19 properties for >= 20 the effect is reduced or non-existent\r\n if (theObject && ObjAssign) {\r\n theObject = ObjClass(ObjAssign({}, theObject));\r\n }\r\n return theObject;\r\n}\r\nexport function objExtend(obj1, obj2, obj3, obj4, obj5, obj6) {\r\n // Variables\r\n var theArgs = arguments;\r\n var extended = theArgs[0] || {};\r\n var argLen = theArgs[_DYN_LENGTH /* @min:%2elength */];\r\n var deep = false;\r\n var idx = 1;\r\n // Check for \"Deep\" flag\r\n if (argLen > 0 && isBoolean(extended)) {\r\n deep = extended;\r\n extended = theArgs[idx] || {};\r\n idx++;\r\n }\r\n // Handle case when target is a string or something (possible in deep copy)\r\n if (!isObject(extended)) {\r\n extended = {};\r\n }\r\n // Loop through each remaining object and conduct a merge\r\n for (; idx < argLen; idx++) {\r\n var arg = theArgs[idx];\r\n var isArgArray = isArray(arg);\r\n var isArgObj = isObject(arg);\r\n for (var prop in arg) {\r\n var propOk = (isArgArray && (prop in arg)) || (isArgObj && objHasOwn(arg, prop));\r\n if (!propOk) {\r\n continue;\r\n }\r\n var newValue = arg[prop];\r\n var isNewArray = void 0;\r\n // If deep merge and property is an object, merge properties\r\n if (deep && newValue && ((isNewArray = isArray(newValue)) || isPlainObject(newValue))) {\r\n // Grab the current value of the extended object\r\n var clone = extended[prop];\r\n if (isNewArray) {\r\n if (!isArray(clone)) {\r\n // We can't \"merge\" an array with a non-array so overwrite the original\r\n clone = [];\r\n }\r\n }\r\n else if (!isPlainObject(clone)) {\r\n // We can't \"merge\" an object with a non-object\r\n clone = {};\r\n }\r\n // Never move the original objects always clone them\r\n newValue = objExtend(deep, clone, newValue);\r\n }\r\n // Assign the new (or previous) value (unless undefined)\r\n if (newValue !== undefined) {\r\n extended[prop] = newValue;\r\n }\r\n }\r\n }\r\n return extended;\r\n}\r\nexport var asString = asString21;\r\nexport function isFeatureEnabled(feature, cfg) {\r\n var rlt = false;\r\n var ft = cfg && cfg.featureOptIn && cfg.featureOptIn[feature];\r\n if (feature && ft) {\r\n var mode = ft.mode;\r\n // NOTE: None will be considered as true\r\n rlt = (mode == 3 /* FeatureOptInMode.enable */) || (mode == 1 /* FeatureOptInMode.none */);\r\n }\r\n return rlt;\r\n}\r\nexport function getResponseText(xhr) {\r\n try {\r\n return xhr.responseText;\r\n }\r\n catch (e) {\r\n // Best effort, as XHR may throw while XDR wont so just ignore\r\n }\r\n return null;\r\n}\r\nexport function formatErrorMessageXdr(xdr, message) {\r\n if (xdr) {\r\n return \"XDomainRequest,Response:\" + getResponseText(xdr) || \"\";\r\n }\r\n return message;\r\n}\r\nexport function formatErrorMessageXhr(xhr, message) {\r\n if (xhr) {\r\n return \"XMLHttpRequest,Status:\" + xhr[_DYN_STATUS /* @min:%2estatus */] + \",Response:\" + getResponseText(xhr) || xhr.response || \"\";\r\n }\r\n return message;\r\n}\r\nexport function prependTransports(theTransports, newTransports) {\r\n if (newTransports) {\r\n if (isNumber(newTransports)) {\r\n theTransports = [newTransports].concat(theTransports);\r\n }\r\n else if (isArray(newTransports)) {\r\n theTransports = newTransports.concat(theTransports);\r\n }\r\n }\r\n return theTransports;\r\n}\r\nvar strDisabledPropertyName = \"Microsoft_ApplicationInsights_BypassAjaxInstrumentation\";\r\nvar strWithCredentials = \"withCredentials\";\r\nvar strTimeout = \"timeout\";\r\n/**\r\n * Create and open an XMLHttpRequest object\r\n * @param method - The request method\r\n * @param urlString - The url\r\n * @param withCredentials - Option flag indicating that credentials should be sent\r\n * @param disabled - Optional flag indicating that the XHR object should be marked as disabled and not tracked (default is false)\r\n * @param isSync - Optional flag indicating if the instance should be a synchronous request (defaults to false)\r\n * @param timeout - Optional value identifying the timeout value that should be assigned to the XHR request\r\n * @returns A new opened XHR request\r\n */\r\nexport function openXhr(method, urlString, withCredentials, disabled, isSync, timeout) {\r\n if (disabled === void 0) { disabled = false; }\r\n if (isSync === void 0) { isSync = false; }\r\n function _wrapSetXhrProp(xhr, prop, value) {\r\n try {\r\n xhr[prop] = value;\r\n }\r\n catch (e) {\r\n // - Wrapping as depending on the environment setting the property may fail (non-terminally)\r\n }\r\n }\r\n var xhr = new XMLHttpRequest();\r\n if (disabled) {\r\n // Tag the instance so it's not tracked (trackDependency)\r\n // If the environment has locked down the XMLHttpRequest (preventExtensions and/or freeze), this would\r\n // cause the request to fail and we no telemetry would be sent\r\n _wrapSetXhrProp(xhr, strDisabledPropertyName, disabled);\r\n }\r\n if (withCredentials) {\r\n // Some libraries require that the withCredentials flag is set \"before\" open and\r\n // - Wrapping as IE 10 has started throwing when setting before open\r\n _wrapSetXhrProp(xhr, strWithCredentials, withCredentials);\r\n }\r\n xhr.open(method, urlString, !isSync);\r\n if (withCredentials) {\r\n // withCredentials should be set AFTER open (https://xhr.spec.whatwg.org/#the-withcredentials-attribute)\r\n // And older firefox instances from 11+ will throw for sync events (current versions don't) which happens during unload processing\r\n _wrapSetXhrProp(xhr, strWithCredentials, withCredentials);\r\n }\r\n // Only set the timeout for asynchronous requests as\r\n // \"Timeout shouldn't be used for synchronous XMLHttpRequests requests used in a document environment or it will throw an InvalidAccessError exception.\"\"\r\n // https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest/timeout\r\n if (!isSync && timeout) {\r\n _wrapSetXhrProp(xhr, strTimeout, timeout);\r\n }\r\n return xhr;\r\n}\r\n/**\r\n* Converts the XHR getAllResponseHeaders to a map containing the header key and value.\r\n* @internal\r\n*/\r\n// tslint:disable-next-line: align\r\nexport function convertAllHeadersToMap(headersString) {\r\n var headers = {};\r\n if (isString(headersString)) {\r\n var headersArray = strTrim(headersString)[_DYN_SPLIT /* @min:%2esplit */](/[\\r\\n]+/);\r\n arrForEach(headersArray, function (headerEntry) {\r\n if (headerEntry) {\r\n var idx = headerEntry.indexOf(\": \");\r\n if (idx !== -1) {\r\n // The new spec has the headers returning all as lowercase -- but not all browsers do this yet\r\n var header = strTrim(headerEntry.substring(0, idx))[_DYN_TO_LOWER_CASE /* @min:%2etoLowerCase */]();\r\n var value = strTrim(headerEntry.substring(idx + 1));\r\n headers[header] = value;\r\n }\r\n else {\r\n headers[strTrim(headerEntry)] = 1;\r\n }\r\n }\r\n });\r\n }\r\n return headers;\r\n}\r\n/**\r\n* append the XHR headers.\r\n* @internal\r\n*/\r\nexport function _appendHeader(theHeaders, xhr, name) {\r\n if (!theHeaders[name] && xhr && xhr[_DYN_GET_RESPONSE_HEADER /* @min:%2egetResponseHeader */]) {\r\n var value = xhr[_DYN_GET_RESPONSE_HEADER /* @min:%2egetResponseHeader */](name);\r\n if (value) {\r\n theHeaders[name] = strTrim(value);\r\n }\r\n }\r\n return theHeaders;\r\n}\r\nvar STR_KILL_DURATION_HEADER = \"kill-duration\";\r\nvar STR_KILL_DURATION_SECONDS_HEADER = \"kill-duration-seconds\";\r\nvar STR_TIME_DELTA_HEADER = \"time-delta-millis\";\r\n/**\r\n* get the XHR getAllResponseHeaders.\r\n* @internal\r\n*/\r\nexport function _getAllResponseHeaders(xhr, isOneDs) {\r\n var theHeaders = {};\r\n if (!xhr[_DYN_GET_ALL_RESPONSE_HEA5 /* @min:%2egetAllResponseHeaders */]) {\r\n // Firefox 2-63 doesn't have getAllResponseHeaders function but it does have getResponseHeader\r\n // Only call these if getAllResponseHeaders doesn't exist, otherwise we can get invalid response errors\r\n // as collector is not currently returning the correct header to allow JS to access these headers\r\n if (!!isOneDs) {\r\n theHeaders = _appendHeader(theHeaders, xhr, STR_TIME_DELTA_HEADER);\r\n theHeaders = _appendHeader(theHeaders, xhr, STR_KILL_DURATION_HEADER);\r\n theHeaders = _appendHeader(theHeaders, xhr, STR_KILL_DURATION_SECONDS_HEADER);\r\n }\r\n }\r\n else {\r\n theHeaders = convertAllHeadersToMap(xhr[_DYN_GET_ALL_RESPONSE_HEA5 /* @min:%2egetAllResponseHeaders */]());\r\n }\r\n return theHeaders;\r\n}\r\n//# sourceMappingURL=HelperFuncs.js.map","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\n\"use strict\";\r\nimport { getGlobal, strShimObject, strShimPrototype, strShimUndefined } from \"@microsoft/applicationinsights-shims\";\r\nimport { getDocument, getInst, getNavigator, getPerformance, hasNavigator, isFunction, isString, isUndefined, strIndexOf } from \"@nevware21/ts-utils\";\r\nimport { _DYN_LENGTH, _DYN_NAME, _DYN_SPLIT, _DYN_TO_LOWER_CASE, _DYN_USER_AGENT } from \"../__DynamicConstants\";\r\nimport { strContains } from \"./HelperFuncs\";\r\nimport { STR_EMPTY } from \"./InternalConstants\";\r\n/**\r\n * This file exists to hold environment utilities that are required to check and\r\n * validate the current operating environment. Unless otherwise required, please\r\n * only use defined methods (functions) in this class so that users of these\r\n * functions/properties only need to include those that are used within their own modules.\r\n */\r\nvar strDocumentMode = \"documentMode\";\r\nvar strLocation = \"location\";\r\nvar strConsole = \"console\";\r\nvar strJSON = \"JSON\";\r\nvar strCrypto = \"crypto\";\r\nvar strMsCrypto = \"msCrypto\";\r\nvar strReactNative = \"ReactNative\";\r\nvar strMsie = \"msie\";\r\nvar strTrident = \"trident/\";\r\nvar strXMLHttpRequest = \"XMLHttpRequest\";\r\nvar _isTrident = null;\r\nvar _navUserAgentCheck = null;\r\nvar _enableMocks = false;\r\nvar _useXDomainRequest = null;\r\nvar _beaconsSupported = null;\r\nfunction _hasProperty(theClass, property) {\r\n var supported = false;\r\n if (theClass) {\r\n try {\r\n supported = property in theClass;\r\n if (!supported) {\r\n var proto = theClass[strShimPrototype];\r\n if (proto) {\r\n supported = property in proto;\r\n }\r\n }\r\n }\r\n catch (e) {\r\n // Do Nothing\r\n }\r\n if (!supported) {\r\n try {\r\n var tmp = new theClass();\r\n supported = !isUndefined(tmp[property]);\r\n }\r\n catch (e) {\r\n // Do Nothing\r\n }\r\n }\r\n }\r\n return supported;\r\n}\r\n/**\r\n * Enable the lookup of test mock objects if requested\r\n * @param enabled - A flag to enable or disable the mock\r\n */\r\nexport function setEnableEnvMocks(enabled) {\r\n _enableMocks = enabled;\r\n}\r\n/**\r\n * Returns the global location object if it is present otherwise null.\r\n * This helper is used to access the location object without causing an exception\r\n * \"Uncaught ReferenceError: location is not defined\"\r\n */\r\nexport function getLocation(checkForMock) {\r\n if (checkForMock && _enableMocks) {\r\n var mockLocation = getInst(\"__mockLocation\");\r\n if (mockLocation) {\r\n return mockLocation;\r\n }\r\n }\r\n if (typeof location === strShimObject && location) {\r\n return location;\r\n }\r\n return getInst(strLocation);\r\n}\r\n/**\r\n * Returns the global console object\r\n */\r\nexport function getConsole() {\r\n if (typeof console !== strShimUndefined) {\r\n return console;\r\n }\r\n return getInst(strConsole);\r\n}\r\n/**\r\n * Checks if JSON object is available, this is required as we support the API running without a\r\n * window /document (eg. Node server, electron webworkers) and if we attempt to assign a history\r\n * object to a local variable or pass as an argument an \"Uncaught ReferenceError: JSON is not defined\"\r\n * exception will be thrown.\r\n * Defined as a function to support lazy / late binding environments.\r\n */\r\nexport function hasJSON() {\r\n return Boolean((typeof JSON === strShimObject && JSON) || getInst(strJSON) !== null);\r\n}\r\n/**\r\n * Returns the global JSON object if it is present otherwise null.\r\n * This helper is used to access the JSON object without causing an exception\r\n * \"Uncaught ReferenceError: JSON is not defined\"\r\n */\r\nexport function getJSON() {\r\n if (hasJSON()) {\r\n return JSON || getInst(strJSON);\r\n }\r\n return null;\r\n}\r\n/**\r\n * Returns the crypto object if it is present otherwise null.\r\n * This helper is used to access the crypto object from the current\r\n * global instance which could be window or globalThis for a web worker\r\n */\r\nexport function getCrypto() {\r\n return getInst(strCrypto);\r\n}\r\n/**\r\n * Returns the crypto object if it is present otherwise null.\r\n * This helper is used to access the crypto object from the current\r\n * global instance which could be window or globalThis for a web worker\r\n */\r\nexport function getMsCrypto() {\r\n return getInst(strMsCrypto);\r\n}\r\n/**\r\n * Returns whether the environment is reporting that we are running in a React Native Environment\r\n */\r\nexport function isReactNative() {\r\n // If running in React Native, navigator.product will be populated\r\n var nav = getNavigator();\r\n if (nav && nav.product) {\r\n return nav.product === strReactNative;\r\n }\r\n return false;\r\n}\r\n/**\r\n * Identifies whether the current environment appears to be IE\r\n */\r\nexport function isIE() {\r\n var nav = getNavigator();\r\n if (nav && (nav[_DYN_USER_AGENT /* @min:%2euserAgent */] !== _navUserAgentCheck || _isTrident === null)) {\r\n // Added to support test mocking of the user agent\r\n _navUserAgentCheck = nav[_DYN_USER_AGENT /* @min:%2euserAgent */];\r\n var userAgent = (_navUserAgentCheck || STR_EMPTY)[_DYN_TO_LOWER_CASE /* @min:%2etoLowerCase */]();\r\n _isTrident = (strContains(userAgent, strMsie) || strContains(userAgent, strTrident));\r\n }\r\n return _isTrident;\r\n}\r\n/**\r\n * Gets IE version returning the document emulation mode if we are running on IE, or null otherwise\r\n */\r\nexport function getIEVersion(userAgentStr) {\r\n if (userAgentStr === void 0) { userAgentStr = null; }\r\n if (!userAgentStr) {\r\n var navigator_1 = getNavigator() || {};\r\n userAgentStr = navigator_1 ? (navigator_1.userAgent || STR_EMPTY)[_DYN_TO_LOWER_CASE /* @min:%2etoLowerCase */]() : STR_EMPTY;\r\n }\r\n var ua = (userAgentStr || STR_EMPTY)[_DYN_TO_LOWER_CASE /* @min:%2etoLowerCase */]();\r\n // Also check for documentMode in case X-UA-Compatible meta tag was included in HTML.\r\n if (strContains(ua, strMsie)) {\r\n var doc = getDocument() || {};\r\n return Math.max(parseInt(ua[_DYN_SPLIT /* @min:%2esplit */](strMsie)[1]), (doc[strDocumentMode] || 0));\r\n }\r\n else if (strContains(ua, strTrident)) {\r\n var tridentVer = parseInt(ua[_DYN_SPLIT /* @min:%2esplit */](strTrident)[1]);\r\n if (tridentVer) {\r\n return tridentVer + 4;\r\n }\r\n }\r\n return null;\r\n}\r\nexport function isSafari(userAgentStr) {\r\n if (!userAgentStr || !isString(userAgentStr)) {\r\n var navigator_2 = getNavigator() || {};\r\n userAgentStr = navigator_2 ? (navigator_2.userAgent || STR_EMPTY)[_DYN_TO_LOWER_CASE /* @min:%2etoLowerCase */]() : STR_EMPTY;\r\n }\r\n var ua = (userAgentStr || STR_EMPTY)[_DYN_TO_LOWER_CASE /* @min:%2etoLowerCase */]();\r\n return (strIndexOf(ua, \"safari\") >= 0);\r\n}\r\n/**\r\n * Checks if HTML5 Beacons are supported in the current environment.\r\n * @param useCached - [Optional] used for testing to bypass the cached lookup, when `true` this will\r\n * cause the cached global to be reset.\r\n * @returns True if supported, false otherwise.\r\n */\r\nexport function isBeaconsSupported(useCached) {\r\n if (_beaconsSupported === null || useCached === false) {\r\n _beaconsSupported = hasNavigator() && Boolean(getNavigator().sendBeacon);\r\n }\r\n return _beaconsSupported;\r\n}\r\n/**\r\n * Checks if the Fetch API is supported in the current environment.\r\n * @param withKeepAlive - [Optional] If True, check if fetch is available and it supports the keepalive feature, otherwise only check if fetch is supported\r\n * @returns True if supported, otherwise false\r\n */\r\nexport function isFetchSupported(withKeepAlive) {\r\n var isSupported = false;\r\n try {\r\n isSupported = !!getInst(\"fetch\");\r\n var request = getInst(\"Request\");\r\n if (isSupported && withKeepAlive && request) {\r\n isSupported = _hasProperty(request, \"keepalive\");\r\n }\r\n }\r\n catch (e) {\r\n // Just Swallow any failure during availability checks\r\n }\r\n return isSupported;\r\n}\r\nexport function useXDomainRequest() {\r\n if (_useXDomainRequest === null) {\r\n _useXDomainRequest = (typeof XDomainRequest !== strShimUndefined);\r\n if (_useXDomainRequest && isXhrSupported()) {\r\n _useXDomainRequest = _useXDomainRequest && !_hasProperty(getInst(strXMLHttpRequest), \"withCredentials\");\r\n }\r\n }\r\n return _useXDomainRequest;\r\n}\r\n/**\r\n * Checks if XMLHttpRequest is supported\r\n * @returns True if supported, otherwise false\r\n */\r\nexport function isXhrSupported() {\r\n var isSupported = false;\r\n try {\r\n var xmlHttpRequest = getInst(strXMLHttpRequest);\r\n isSupported = !!xmlHttpRequest;\r\n }\r\n catch (e) {\r\n // Just Swallow any failure during availability checks\r\n }\r\n return isSupported;\r\n}\r\nfunction _getNamedValue(values, name) {\r\n if (values) {\r\n for (var i = 0; i < values[_DYN_LENGTH /* @min:%2elength */]; i++) {\r\n var value = values[i];\r\n if (value[_DYN_NAME /* @min:%2ename */]) {\r\n if (value[_DYN_NAME /* @min:%2ename */] === name) {\r\n return value;\r\n }\r\n }\r\n }\r\n }\r\n return {};\r\n}\r\n/**\r\n * Helper function to fetch the named meta-tag from the page.\r\n * @param name - The name of the meta-tag to find.\r\n */\r\nexport function findMetaTag(name) {\r\n var doc = getDocument();\r\n if (doc && name) {\r\n // Look for a meta-tag\r\n return _getNamedValue(doc.querySelectorAll(\"meta\"), name).content;\r\n }\r\n return null;\r\n}\r\n/**\r\n * Helper function to fetch the named server timing value from the page response (first navigation event).\r\n * @param name - The name of the server timing value to find.\r\n */\r\nexport function findNamedServerTiming(name) {\r\n var value;\r\n var perf = getPerformance();\r\n if (perf) {\r\n // Try looking for a server-timing header\r\n var navPerf = perf.getEntriesByType(\"navigation\") || [];\r\n value = _getNamedValue((navPerf[_DYN_LENGTH /* @min:%2elength */] > 0 ? navPerf[0] : {}).serverTiming, name).description;\r\n }\r\n return value;\r\n}\r\n// TODO: should reuse this method for analytics plugin\r\nexport function dispatchEvent(target, evnt) {\r\n if (target && target.dispatchEvent && evnt) {\r\n target.dispatchEvent(evnt);\r\n return true;\r\n }\r\n return false;\r\n}\r\nexport function createCustomDomEvent(eventName, details) {\r\n var event = null;\r\n var detail = { detail: details || null };\r\n if (isFunction(CustomEvent)) { // Use CustomEvent constructor when available\r\n event = new CustomEvent(eventName, detail);\r\n }\r\n else { // CustomEvent has no constructor in IE\r\n var doc = getDocument();\r\n if (doc && doc.createEvent) {\r\n event = doc.createEvent(\"CustomEvent\");\r\n event.initCustomEvent(eventName, true, true, detail);\r\n }\r\n }\r\n return event;\r\n}\r\nexport function sendCustomEvent(evtName, cfg, customDetails) {\r\n var global = getGlobal();\r\n if (global && global.CustomEvent) {\r\n try {\r\n var details = { cfg: cfg || null, customDetails: customDetails || null };\r\n return dispatchEvent(global, createCustomDomEvent(evtName, details));\r\n }\r\n catch (e) {\r\n // eslint-disable-next-line no-empty\r\n }\r\n }\r\n return false;\r\n}\r\n//# sourceMappingURL=EnvUtils.js.map","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\nimport { utcNow } from \"@nevware21/ts-utils\";\r\nimport { _DYN_LENGTH } from \"../__DynamicConstants\";\r\nimport { getCrypto, getMsCrypto, isIE } from \"./EnvUtils\";\r\nimport { STR_EMPTY } from \"./InternalConstants\";\r\nvar UInt32Mask = 0x100000000;\r\nvar MaxUInt32 = 0xffffffff;\r\nvar SEED1 = 123456789;\r\nvar SEED2 = 987654321;\r\n// MWC based Random generator (for IE)\r\nvar _mwcSeeded = false;\r\nvar _mwcW = SEED1;\r\nvar _mwcZ = SEED2;\r\n// Takes any integer\r\nfunction _mwcSeed(seedValue) {\r\n if (seedValue < 0) {\r\n // Make sure we end up with a positive number and not -ve one.\r\n seedValue >>>= 0;\r\n }\r\n _mwcW = (SEED1 + seedValue) & MaxUInt32;\r\n _mwcZ = (SEED2 - seedValue) & MaxUInt32;\r\n _mwcSeeded = true;\r\n}\r\nfunction _autoSeedMwc() {\r\n // Simple initialization using default Math.random() - So we inherit any entropy from the browser\r\n // and bitwise XOR with the current milliseconds\r\n try {\r\n var now = utcNow() & 0x7fffffff;\r\n _mwcSeed(((Math.random() * UInt32Mask) ^ now) + now);\r\n }\r\n catch (e) {\r\n // Don't crash if something goes wrong\r\n }\r\n}\r\n/**\r\n * Generate a random value between 0 and maxValue, max value should be limited to a 32-bit maximum.\r\n * So maxValue(16) will produce a number from 0..16 (range of 17)\r\n * @param maxValue - The max value for the range\r\n */\r\nexport function randomValue(maxValue) {\r\n if (maxValue > 0) {\r\n return Math.floor((random32() / MaxUInt32) * (maxValue + 1)) >>> 0;\r\n }\r\n return 0;\r\n}\r\n/**\r\n * generate a random 32-bit number (0x000000..0xFFFFFFFF) or (-0x80000000..0x7FFFFFFF), defaults un-unsigned.\r\n * @param signed - True to return a signed 32-bit number (-0x80000000..0x7FFFFFFF) otherwise an unsigned one (0x000000..0xFFFFFFFF)\r\n */\r\nexport function random32(signed) {\r\n var value = 0;\r\n var c = getCrypto() || getMsCrypto();\r\n if (c && c.getRandomValues) {\r\n // Make sure the number is converted into the specified range (-0x80000000..0x7FFFFFFF)\r\n value = c.getRandomValues(new Uint32Array(1))[0] & MaxUInt32;\r\n }\r\n if (value === 0 && isIE()) {\r\n // For IE 6, 7, 8 (especially on XP) Math.random is not very random\r\n if (!_mwcSeeded) {\r\n // Set the seed for the Mwc algorithm\r\n _autoSeedMwc();\r\n }\r\n // Don't use Math.random for IE\r\n // Make sure the number is converted into the specified range (-0x80000000..0x7FFFFFFF)\r\n value = mwcRandom32() & MaxUInt32;\r\n }\r\n if (value === 0) {\r\n // Make sure the number is converted into the specified range (-0x80000000..0x7FFFFFFF)\r\n value = Math.floor((UInt32Mask * Math.random()) | 0);\r\n }\r\n if (!signed) {\r\n // Make sure we end up with a positive number and not -ve one.\r\n value >>>= 0;\r\n }\r\n return value;\r\n}\r\n/**\r\n * Seed the MWC random number generator with the specified seed or a random value\r\n * @param value - optional the number to used as the seed, if undefined, null or zero a random value will be chosen\r\n */\r\nexport function mwcRandomSeed(value) {\r\n if (!value) {\r\n _autoSeedMwc();\r\n }\r\n else {\r\n _mwcSeed(value);\r\n }\r\n}\r\n/**\r\n * Generate a random 32-bit number between (0x000000..0xFFFFFFFF) or (-0x80000000..0x7FFFFFFF), using MWC (Multiply with carry)\r\n * instead of Math.random() defaults to un-signed.\r\n * Used as a replacement random generator for IE to avoid issues with older IE instances.\r\n * @param signed - True to return a signed 32-bit number (-0x80000000..0x7FFFFFFF) otherwise an unsigned one (0x000000..0xFFFFFFFF)\r\n */\r\nexport function mwcRandom32(signed) {\r\n _mwcZ = (36969 * (_mwcZ & 0xFFFF) + (_mwcZ >> 16)) & MaxUInt32;\r\n _mwcW = (18000 * (_mwcW & 0xFFFF) + (_mwcW >> 16)) & MaxUInt32;\r\n var value = (((_mwcZ << 16) + (_mwcW & 0xFFFF)) >>> 0) & MaxUInt32 | 0;\r\n if (!signed) {\r\n // Make sure we end up with a positive number and not -ve one.\r\n value >>>= 0;\r\n }\r\n return value;\r\n}\r\n/**\r\n * Generate random base64 id string.\r\n * The default length is 22 which is 132-bits so almost the same as a GUID but as base64 (the previous default was 5)\r\n * @param maxLength - Optional value to specify the length of the id to be generated, defaults to 22\r\n */\r\nexport function newId(maxLength) {\r\n if (maxLength === void 0) { maxLength = 22; }\r\n var base64chars = \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/\";\r\n // Start with an initial random number, consuming the value in reverse byte order\r\n var number = random32() >>> 0; // Make sure it's a +ve number\r\n var chars = 0;\r\n var result = STR_EMPTY;\r\n while (result[_DYN_LENGTH /* @min:%2elength */] < maxLength) {\r\n chars++;\r\n result += base64chars.charAt(number & 0x3F);\r\n number >>>= 6; // Zero fill with right shift\r\n if (chars === 5) {\r\n // 5 base64 characters === 30 bits so we don't have enough bits for another base64 char\r\n // So add on another 30 bits and make sure it's +ve\r\n number = (((random32() << 2) & 0xFFFFFFFF) | (number & 0x03)) >>> 0;\r\n chars = 0; // We need to reset the number every 5 chars (30 bits)\r\n }\r\n }\r\n return result;\r\n}\r\n//# sourceMappingURL=RandomHelper.js.map","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\nimport { objDefine } from \"@nevware21/ts-utils\";\r\nimport { _DYN_NODE_TYPE } from \"../__DynamicConstants\";\r\nimport { normalizeJsName } from \"./HelperFuncs\";\r\nimport { STR_EMPTY } from \"./InternalConstants\";\r\nimport { newId } from \"./RandomHelper\";\r\nvar version = '3.3.5';\r\nvar instanceName = \".\" + newId(6);\r\nvar _dataUid = 0;\r\n// Accepts only:\r\n// - Node\r\n// - Node.ELEMENT_NODE\r\n// - Node.DOCUMENT_NODE\r\n// - Object\r\n// - Any\r\nfunction _canAcceptData(target) {\r\n return target[_DYN_NODE_TYPE /* @min:%2enodeType */] === 1 || target[_DYN_NODE_TYPE /* @min:%2enodeType */] === 9 || !(+target[_DYN_NODE_TYPE /* @min:%2enodeType */]);\r\n}\r\nfunction _getCache(data, target) {\r\n var theCache = target[data.id];\r\n if (!theCache) {\r\n theCache = {};\r\n try {\r\n if (_canAcceptData(target)) {\r\n objDefine(target, data.id, {\r\n e: false,\r\n v: theCache\r\n });\r\n }\r\n }\r\n catch (e) {\r\n // Not all environments allow extending all objects, so just ignore the cache in those cases\r\n }\r\n }\r\n return theCache;\r\n}\r\nexport function createUniqueNamespace(name, includeVersion) {\r\n if (includeVersion === void 0) { includeVersion = false; }\r\n return normalizeJsName(name + (_dataUid++) + (includeVersion ? \".\" + version : STR_EMPTY) + instanceName);\r\n}\r\nexport function createElmNodeData(name) {\r\n var data = {\r\n id: createUniqueNamespace(\"_aiData-\" + (name || STR_EMPTY) + \".\" + version),\r\n accept: function (target) {\r\n return _canAcceptData(target);\r\n },\r\n get: function (target, name, defValue, addDefault) {\r\n var theCache = target[data.id];\r\n if (!theCache) {\r\n if (addDefault) {\r\n // Side effect is adds the cache\r\n theCache = _getCache(data, target);\r\n theCache[normalizeJsName(name)] = defValue;\r\n }\r\n return defValue;\r\n }\r\n return theCache[normalizeJsName(name)];\r\n },\r\n kill: function (target, name) {\r\n if (target && target[name]) {\r\n try {\r\n delete target[name];\r\n }\r\n catch (e) {\r\n // Just cleaning up, so if this fails -- ignore\r\n }\r\n }\r\n }\r\n };\r\n return data;\r\n}\r\n//# sourceMappingURL=DataCacheHelper.js.map","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\nimport { asString, isArray, isDefined, isNullOrUndefined, isObject, isPlainObject, isUndefined, objForEachKey, objHasOwn } from \"@nevware21/ts-utils\";\r\nimport { _DYN_BLK_VAL, _DYN_LENGTH, _DYN_RD_ONLY } from \"../__DynamicConstants\";\r\nfunction _isConfigDefaults(value) {\r\n return (value && isObject(value) && (value.isVal || value.fb || objHasOwn(value, \"v\") || objHasOwn(value, \"mrg\") || objHasOwn(value, \"ref\") || value.set));\r\n}\r\nfunction _getDefault(dynamicHandler, theConfig, cfgDefaults) {\r\n var defValue;\r\n var isDefaultValid = cfgDefaults.dfVal || isDefined;\r\n // There is a fallback config key so try and grab that first\r\n if (theConfig && cfgDefaults.fb) {\r\n var fallbacks = cfgDefaults.fb;\r\n if (!isArray(fallbacks)) {\r\n fallbacks = [fallbacks];\r\n }\r\n for (var lp = 0; lp < fallbacks[_DYN_LENGTH /* @min:%2elength */]; lp++) {\r\n var fallback = fallbacks[lp];\r\n var fbValue = theConfig[fallback];\r\n if (isDefaultValid(fbValue)) {\r\n defValue = fbValue;\r\n }\r\n else if (dynamicHandler) {\r\n // Needed to ensure that the fallback value (and potentially) new field is also dynamic even if null/undefined\r\n fbValue = dynamicHandler.cfg[fallback];\r\n if (isDefaultValid(fbValue)) {\r\n defValue = fbValue;\r\n }\r\n // Needed to ensure that the fallback value (and potentially) new field is also dynamic even if null/undefined\r\n dynamicHandler.set(dynamicHandler.cfg, asString(fallback), fbValue);\r\n }\r\n if (isDefaultValid(defValue)) {\r\n // We have a valid default so break out of the look\r\n break;\r\n }\r\n }\r\n }\r\n // If the value is still not defined and we have a default value then use that\r\n if (!isDefaultValid(defValue) && isDefaultValid(cfgDefaults.v)) {\r\n defValue = cfgDefaults.v;\r\n }\r\n return defValue;\r\n}\r\n/**\r\n * Recursively resolve the default value\r\n * @param dynamicHandler\r\n * @param theConfig\r\n * @param cfgDefaults\r\n * @returns\r\n */\r\nfunction _resolveDefaultValue(dynamicHandler, theConfig, cfgDefaults) {\r\n var theValue = cfgDefaults;\r\n if (cfgDefaults && _isConfigDefaults(cfgDefaults)) {\r\n theValue = _getDefault(dynamicHandler, theConfig, cfgDefaults);\r\n }\r\n if (theValue) {\r\n if (_isConfigDefaults(theValue)) {\r\n theValue = _resolveDefaultValue(dynamicHandler, theConfig, theValue);\r\n }\r\n var newValue_1;\r\n if (isArray(theValue)) {\r\n newValue_1 = [];\r\n newValue_1[_DYN_LENGTH /* @min:%2elength */] = theValue[_DYN_LENGTH /* @min:%2elength */];\r\n }\r\n else if (isPlainObject(theValue)) {\r\n newValue_1 = {};\r\n }\r\n if (newValue_1) {\r\n objForEachKey(theValue, function (key, value) {\r\n if (value && _isConfigDefaults(value)) {\r\n value = _resolveDefaultValue(dynamicHandler, theConfig, value);\r\n }\r\n newValue_1[key] = value;\r\n });\r\n theValue = newValue_1;\r\n }\r\n }\r\n return theValue;\r\n}\r\n/**\r\n * Applies the default value on the config property and makes sure that it's dynamic\r\n * @param theConfig\r\n * @param name\r\n * @param defaultValue\r\n */\r\nexport function _applyDefaultValue(dynamicHandler, theConfig, name, defaultValue) {\r\n // Resolve the initial config value from the provided value or use the defined default\r\n var isValid;\r\n var setFn;\r\n var defValue;\r\n var cfgDefaults = defaultValue;\r\n var mergeDf;\r\n var reference;\r\n var readOnly;\r\n var blkDynamicValue;\r\n if (_isConfigDefaults(cfgDefaults)) {\r\n // looks like a IConfigDefault\r\n isValid = cfgDefaults.isVal;\r\n setFn = cfgDefaults.set;\r\n readOnly = cfgDefaults[_DYN_RD_ONLY /* @min:%2erdOnly */];\r\n blkDynamicValue = cfgDefaults[_DYN_BLK_VAL /* @min:%2eblkVal */];\r\n mergeDf = cfgDefaults.mrg;\r\n reference = cfgDefaults.ref;\r\n if (!reference && isUndefined(reference)) {\r\n reference = !!mergeDf;\r\n }\r\n defValue = _getDefault(dynamicHandler, theConfig, cfgDefaults);\r\n }\r\n else {\r\n defValue = defaultValue;\r\n }\r\n if (blkDynamicValue) {\r\n // Mark the property so that any value assigned will be blocked from conversion, we need to do this\r\n // before assigning or fetching the value to ensure it's not converted\r\n dynamicHandler[_DYN_BLK_VAL /* @min:%2eblkVal */](theConfig, name);\r\n }\r\n // Set the value to the default value;\r\n var theValue;\r\n var usingDefault = true;\r\n var cfgValue = theConfig[name];\r\n // try and get and user provided values\r\n if (cfgValue || !isNullOrUndefined(cfgValue)) {\r\n // Use the defined theConfig[name] value\r\n theValue = cfgValue;\r\n usingDefault = false;\r\n // The values are different and we have a special default value check, which is used to\r\n // override config values like empty strings to continue using the default\r\n if (isValid && theValue !== defValue && !isValid(theValue)) {\r\n theValue = defValue;\r\n usingDefault = true;\r\n }\r\n if (setFn) {\r\n theValue = setFn(theValue, defValue, theConfig);\r\n usingDefault = theValue === defValue;\r\n }\r\n }\r\n if (!usingDefault) {\r\n if (isPlainObject(theValue) || isArray(defValue)) {\r\n // we are using the user supplied value and it's an object\r\n if (mergeDf && defValue && (isPlainObject(defValue) || isArray(defValue))) {\r\n // Resolve/apply the defaults\r\n objForEachKey(defValue, function (dfName, dfValue) {\r\n // Sets the value and makes it dynamic (if it doesn't already exist)\r\n _applyDefaultValue(dynamicHandler, theValue, dfName, dfValue);\r\n });\r\n }\r\n }\r\n }\r\n else if (defValue) {\r\n // Just resolve the default\r\n theValue = _resolveDefaultValue(dynamicHandler, theConfig, defValue);\r\n }\r\n else {\r\n theValue = defValue;\r\n }\r\n // if (theValue && usingDefault && (isPlainObject(theValue) || isArray(theValue))) {\r\n // theValue = _cfgDeepCopy(theValue);\r\n // }\r\n // Needed to ensure that the (potentially) new field is dynamic even if null/undefined\r\n dynamicHandler.set(theConfig, name, theValue);\r\n if (reference) {\r\n dynamicHandler.ref(theConfig, name);\r\n }\r\n if (readOnly) {\r\n dynamicHandler[_DYN_RD_ONLY /* @min:%2erdOnly */](theConfig, name);\r\n }\r\n}\r\n//# sourceMappingURL=ConfigDefaults.js.map","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\nimport { isArray, isPlainObject, objForEachKey, symbolFor, throwTypeError } from \"@nevware21/ts-utils\";\r\nimport { _DYN_LENGTH } from \"../__DynamicConstants\";\r\n// Using Symbol.for so that if the same symbol was already created it would be returned\r\n// To handle multiple instances using potentially different versions we are not using\r\n// createUniqueNamespace()\r\nexport var CFG_HANDLER_LINK = symbolFor(\"[[ai_dynCfg_1]]\");\r\n/**\r\n * @internal\r\n * @ignore\r\n * The symbol to tag objects / arrays with if they should not be converted\r\n */\r\nvar BLOCK_DYNAMIC = symbolFor(\"[[ai_blkDynCfg_1]]\");\r\n/**\r\n * @internal\r\n * @ignore\r\n * The symbol to tag objects to indicate that when included into the configuration that\r\n * they should be converted into a trackable dynamic object.\r\n */\r\nvar FORCE_DYNAMIC = symbolFor(\"[[ai_frcDynCfg_1]]\");\r\nexport function _cfgDeepCopy(source) {\r\n if (source) {\r\n var target_1;\r\n if (isArray(source)) {\r\n target_1 = [];\r\n target_1[_DYN_LENGTH /* @min:%2elength */] = source[_DYN_LENGTH /* @min:%2elength */];\r\n }\r\n else if (isPlainObject(source)) {\r\n target_1 = {};\r\n }\r\n if (target_1) {\r\n // Copying index values by property name as the extensionConfig can be an array or object\r\n objForEachKey(source, function (key, value) {\r\n // Perform a deep copy of the object\r\n target_1[key] = _cfgDeepCopy(value);\r\n });\r\n return target_1;\r\n }\r\n }\r\n return source;\r\n}\r\n/**\r\n * @internal\r\n * Get the dynamic config handler if the value is already dynamic\r\n * @returns\r\n */\r\nexport function getDynamicConfigHandler(value) {\r\n if (value) {\r\n var handler = value[CFG_HANDLER_LINK] || value;\r\n if (handler.cfg && (handler.cfg === value || handler.cfg[CFG_HANDLER_LINK] === handler)) {\r\n return handler;\r\n }\r\n }\r\n return null;\r\n}\r\n/**\r\n * Mark the provided value so that if it's included into the configuration it will NOT have\r\n * its properties converted into a dynamic (reactive) object. If the object is not a plain object\r\n * or an array (ie. a class) this function has not affect as only Objects and Arrays are converted\r\n * into dynamic objects in the dynamic configuration.\r\n *\r\n * When you have tagged a value as both {@link forceDynamicConversion} and blocked force will take precedence.\r\n *\r\n * You should only need to use this function, if you are creating dynamic \"classes\" from objects\r\n * which confirm to the require interface. A common case for this is during unit testing where it's\r\n * easier to create mock extensions.\r\n *\r\n * If `value` is falsy (null / undefined / 0 / empty string etc) it will not be tagged and\r\n * if there is an exception adding the property to the value (because its frozen etc) the\r\n * exception will be swallowed\r\n *\r\n * @example\r\n * ```ts\r\n * // This is a valid \"extension\", but it is technically an object\r\n * // So when included in the config.extensions it WILL be cloned and then\r\n * // converted into a dynamic object, where all of its properties will become\r\n * // get/set object properties and will be tracked. While this WILL still\r\n * // function, when attempt to use a mocking framework on top of this the\r\n * // functions are now technically get accessors which return a function\r\n * // and this can cause some mocking frameworks to fail.\r\n * let mockChannel = {\r\n * pause: () => { },\r\n* resume: () => { },\r\n* teardown: () => { },\r\n* flush: (async: any, callBack: any) => { },\r\n* processTelemetry: (env: any) => { },\r\n* setNextPlugin: (next: any) => { },\r\n* initialize: (config: any, core: any, extensions: any) => { },\r\n* identifier: \"testChannel\",\r\n* priority: 1003\r\n* };\r\n * ```\r\n * @param value - The object that you want to block from being converted into a\r\n * trackable dynamic object\r\n * @returns The original value\r\n */\r\nexport function blockDynamicConversion(value) {\r\n if (value && (isPlainObject(value) || isArray(value))) {\r\n try {\r\n value[BLOCK_DYNAMIC] = true;\r\n }\r\n catch (e) {\r\n // Don't throw for this case as it's an ask only\r\n }\r\n }\r\n return value;\r\n}\r\n/**\r\n * This is the reverse case of {@link blockDynamicConversion} in that this will tag an\r\n * object to indicate that it should always be converted into a dynamic trackable object\r\n * even when not an object or array. So all properties of this object will become\r\n * get / set accessor functions.\r\n *\r\n * When you have tagged a value as both {@link forceDynamicConversion} and blocked force will take precedence.\r\n *\r\n * If `value` is falsy (null / undefined / 0 / empty string etc) it will not be tagged and\r\n * if there is an exception adding the property to the value (because its frozen etc) the\r\n * exception will be swallowed.\r\n * @param value - The object that should be tagged and converted if included into a dynamic\r\n * configuration.\r\n * @returns The original value\r\n */\r\nexport function forceDynamicConversion(value) {\r\n if (value) {\r\n try {\r\n value[FORCE_DYNAMIC] = true;\r\n }\r\n catch (e) {\r\n // Don't throw for this case as it's an ask only\r\n }\r\n }\r\n return value;\r\n}\r\n/**\r\n * @internal\r\n * @ignore\r\n * Helper function to check whether an object can or should be converted into a dynamic\r\n * object.\r\n * @param value - The object to check whether it should be converted\r\n * @returns `true` if the value should be converted otherwise `false`.\r\n */\r\nexport function _canMakeDynamic(getFunc, state, value) {\r\n var result = false;\r\n // Object must exist and be truthy\r\n if (value && !getFunc[state.blkVal]) {\r\n // Tagged as always convert\r\n result = value[FORCE_DYNAMIC];\r\n // Check that it's not explicitly tagged as blocked\r\n if (!result && !value[BLOCK_DYNAMIC]) {\r\n // Only convert plain objects or arrays by default\r\n result = isPlainObject(value) || isArray(value);\r\n }\r\n }\r\n return result;\r\n}\r\n/**\r\n * Throws an invalid access exception\r\n * @param message - The message to include in the exception\r\n */\r\nexport function throwInvalidAccess(message) {\r\n throwTypeError(\"InvalidAccess:\" + message);\r\n}\r\n//# sourceMappingURL=DynamicSupport.js.map","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\nimport { arrForEach, arrIndexOf, dumpObj, isArray, objDefine, objDefineProp, objForEachKey, objGetOwnPropertyDescriptor } from \"@nevware21/ts-utils\";\r\nimport { UNDEFINED_VALUE } from \"../JavaScriptSDK/InternalConstants\";\r\nimport { _DYN_APPLY, _DYN_HDLR, _DYN_LOGGER, _DYN_PUSH, _DYN_SPLICE, _DYN_THROW_INTERNAL } from \"../__DynamicConstants\";\r\nimport { CFG_HANDLER_LINK, _canMakeDynamic, blockDynamicConversion, throwInvalidAccess } from \"./DynamicSupport\";\r\nvar arrayMethodsToPatch = [\r\n \"push\",\r\n \"pop\",\r\n \"shift\",\r\n \"unshift\",\r\n \"splice\"\r\n];\r\nexport var _throwDynamicError = function (logger, name, desc, e) {\r\n logger && logger[_DYN_THROW_INTERNAL /* @min:%2ethrowInternal */](3 /* eLoggingSeverity.DEBUG */, 108 /* _eInternalMessageId.DynamicConfigException */, \"\".concat(desc, \" [\").concat(name, \"] failed - \") + dumpObj(e));\r\n};\r\nfunction _patchArray(state, target, name) {\r\n if (isArray(target)) {\r\n // Monkey Patch the methods that might change the array\r\n arrForEach(arrayMethodsToPatch, function (method) {\r\n var orgMethod = target[method];\r\n target[method] = function () {\r\n var args = [];\r\n for (var _i = 0; _i < arguments.length; _i++) {\r\n args[_i] = arguments[_i];\r\n }\r\n var result = orgMethod[_DYN_APPLY /* @min:%2eapply */](this, args);\r\n // items may be added, removed or moved so need to make some new dynamic properties\r\n _makeDynamicObject(state, target, name, \"Patching\");\r\n return result;\r\n };\r\n });\r\n }\r\n}\r\nfunction _getOwnPropGetter(target, name) {\r\n var propDesc = objGetOwnPropertyDescriptor(target, name);\r\n return propDesc && propDesc.get;\r\n}\r\nfunction _createDynamicProperty(state, theConfig, name, value) {\r\n // Does not appear to be dynamic so lets make it so\r\n var detail = {\r\n n: name,\r\n h: [],\r\n trk: function (handler) {\r\n if (handler && handler.fn) {\r\n if (arrIndexOf(detail.h, handler) === -1) {\r\n // Add this handler to the collection that should be notified when the value changes\r\n detail.h[_DYN_PUSH /* @min:%2epush */](handler);\r\n }\r\n state.trk(handler, detail);\r\n }\r\n },\r\n clr: function (handler) {\r\n var idx = arrIndexOf(detail.h, handler);\r\n if (idx !== -1) {\r\n detail.h[_DYN_SPLICE /* @min:%2esplice */](idx, 1);\r\n }\r\n }\r\n };\r\n // Flag to optimize lookup response time by avoiding additional function calls\r\n var checkDynamic = true;\r\n var isObjectOrArray = false;\r\n function _getProperty() {\r\n if (checkDynamic) {\r\n isObjectOrArray = isObjectOrArray || _canMakeDynamic(_getProperty, state, value);\r\n // Make sure that if it's an object that we make it dynamic\r\n if (value && !value[CFG_HANDLER_LINK] && isObjectOrArray) {\r\n // It doesn't look like it's already dynamic so lets make sure it's converted the object into a dynamic Config as well\r\n value = _makeDynamicObject(state, value, name, \"Converting\");\r\n }\r\n // If it needed to be converted it now has been\r\n checkDynamic = false;\r\n }\r\n // If there is an active handler then add it to the tracking set of handlers\r\n var activeHandler = state.act;\r\n if (activeHandler) {\r\n detail.trk(activeHandler);\r\n }\r\n return value;\r\n }\r\n // Tag this getter as our dynamic property and provide shortcut for notifying a change\r\n _getProperty[state.prop] = {\r\n chng: function () {\r\n state.add(detail);\r\n }\r\n };\r\n function _setProperty(newValue) {\r\n if (value !== newValue) {\r\n if (!!_getProperty[state.ro] && !state.upd) {\r\n // field is marked as readonly so return false\r\n throwInvalidAccess(\"[\" + name + \"] is read-only:\" + dumpObj(theConfig));\r\n }\r\n if (checkDynamic) {\r\n isObjectOrArray = isObjectOrArray || _canMakeDynamic(_getProperty, state, value);\r\n checkDynamic = false;\r\n }\r\n // The value must be a plain object or an array to enforce the reference (in-place updates)\r\n var isReferenced = isObjectOrArray && _getProperty[state.rf];\r\n if (isObjectOrArray) {\r\n // We are about to replace a plain object or an array\r\n if (isReferenced) {\r\n // Reassign the properties from the current value to the same properties from the newValue\r\n // This will set properties not in the newValue to undefined\r\n objForEachKey(value, function (key) {\r\n value[key] = newValue ? newValue[key] : UNDEFINED_VALUE;\r\n });\r\n // Now assign / re-assign value with all of the keys from newValue\r\n try {\r\n objForEachKey(newValue, function (key, theValue) {\r\n _setDynamicProperty(state, value, key, theValue);\r\n });\r\n // Now drop newValue so when we assign value later it keeps the existing reference\r\n newValue = value;\r\n }\r\n catch (e) {\r\n // Unable to convert to dynamic property so just leave as non-dynamic\r\n _throwDynamicError((state.hdlr || {})[_DYN_LOGGER /* @min:%2elogger */], name, \"Assigning\", e);\r\n // Mark as not an object or array so we don't try and do this again\r\n isObjectOrArray = false;\r\n }\r\n }\r\n else if (value && value[CFG_HANDLER_LINK]) {\r\n // As we are replacing the value, if it's already dynamic then we need to notify the listeners\r\n // for every property it has already\r\n objForEachKey(value, function (key) {\r\n // Check if the value is dynamic\r\n var getter = _getOwnPropGetter(value, key);\r\n if (getter) {\r\n // And if it is tell it's listeners that the value has changed\r\n var valueState = getter[state.prop];\r\n valueState && valueState.chng();\r\n }\r\n });\r\n }\r\n }\r\n if (newValue !== value) {\r\n var newIsObjectOrArray = newValue && _canMakeDynamic(_getProperty, state, newValue);\r\n if (!isReferenced && newIsObjectOrArray) {\r\n // As the newValue is an object/array lets preemptively make it dynamic\r\n newValue = _makeDynamicObject(state, newValue, name, \"Converting\");\r\n }\r\n // Now assign the internal \"value\" to the newValue\r\n value = newValue;\r\n isObjectOrArray = newIsObjectOrArray;\r\n }\r\n // Cause any listeners to be scheduled for notification\r\n state.add(detail);\r\n }\r\n }\r\n objDefine(theConfig, detail.n, { g: _getProperty, s: _setProperty });\r\n}\r\nexport function _setDynamicProperty(state, target, name, value) {\r\n if (target) {\r\n // To be a dynamic property it needs to have a get function\r\n var getter = _getOwnPropGetter(target, name);\r\n var isDynamic = getter && !!getter[state.prop];\r\n if (!isDynamic) {\r\n _createDynamicProperty(state, target, name, value);\r\n }\r\n else {\r\n // Looks like it's already dynamic just assign the new value\r\n target[name] = value;\r\n }\r\n }\r\n return target;\r\n}\r\nexport function _setDynamicPropertyState(state, target, name, flags) {\r\n if (target) {\r\n // To be a dynamic property it needs to have a get function\r\n var getter = _getOwnPropGetter(target, name);\r\n var isDynamic = getter && !!getter[state.prop];\r\n var inPlace = flags && flags[0 /* _eSetDynamicPropertyFlags.inPlace */];\r\n var rdOnly = flags && flags[1 /* _eSetDynamicPropertyFlags.readOnly */];\r\n var blkProp = flags && flags[2 /* _eSetDynamicPropertyFlags.blockDynamicProperty */];\r\n if (!isDynamic) {\r\n if (blkProp) {\r\n try {\r\n // Attempt to mark the target as blocked from conversion\r\n blockDynamicConversion(target);\r\n }\r\n catch (e) {\r\n _throwDynamicError((state.hdlr || {})[_DYN_LOGGER /* @min:%2elogger */], name, \"Blocking\", e);\r\n }\r\n }\r\n try {\r\n // Make sure it's dynamic so that we can tag the property as per the state\r\n _setDynamicProperty(state, target, name, target[name]);\r\n getter = _getOwnPropGetter(target, name);\r\n }\r\n catch (e) {\r\n // Unable to convert to dynamic property so just leave as non-dynamic\r\n _throwDynamicError((state.hdlr || {})[_DYN_LOGGER /* @min:%2elogger */], name, \"State\", e);\r\n }\r\n }\r\n // Assign the optional flags if true\r\n if (inPlace) {\r\n getter[state.rf] = inPlace;\r\n }\r\n if (rdOnly) {\r\n getter[state.ro] = rdOnly;\r\n }\r\n if (blkProp) {\r\n getter[state.blkVal] = true;\r\n }\r\n }\r\n return target;\r\n}\r\nexport function _makeDynamicObject(state, target, name, desc) {\r\n try {\r\n // Assign target with new value properties (converting into dynamic properties in the process)\r\n objForEachKey(target, function (key, value) {\r\n // Assign and/or make the property dynamic\r\n _setDynamicProperty(state, target, key, value);\r\n });\r\n if (!target[CFG_HANDLER_LINK]) {\r\n // Link the config back to the dynamic config details\r\n objDefineProp(target, CFG_HANDLER_LINK, {\r\n get: function () {\r\n return state[_DYN_HDLR /* @min:%2ehdlr */];\r\n }\r\n });\r\n _patchArray(state, target, name);\r\n }\r\n }\r\n catch (e) {\r\n // Unable to convert to dynamic property so just leave as non-dynamic\r\n _throwDynamicError((state.hdlr || {})[_DYN_LOGGER /* @min:%2elogger */], name, desc, e);\r\n }\r\n return target;\r\n}\r\n//# sourceMappingURL=DynamicProperty.js.map","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\nimport { arrForEach, createCustomError, dumpObj } from \"@nevware21/ts-utils\";\r\nimport { _DYN_LENGTH } from \"../__DynamicConstants\";\r\nvar aggregationErrorType;\r\n/**\r\n * Throws an Aggregation Error which includes all of the errors that led to this error occurring\r\n * @param message - The message describing the aggregation error (the sourceError details are added to this)\r\n * @param sourceErrors - An array of the errors that caused this situation\r\n */\r\nexport function throwAggregationError(message, sourceErrors) {\r\n if (!aggregationErrorType) {\r\n aggregationErrorType = createCustomError(\"AggregationError\", function (self, args) {\r\n if (args[_DYN_LENGTH /* @min:%2elength */] > 1) {\r\n // Save the provided errors\r\n self.errors = args[1];\r\n }\r\n });\r\n }\r\n var theMessage = message || \"One or more errors occurred.\";\r\n arrForEach(sourceErrors, function (srcError, idx) {\r\n theMessage += \"\\n\".concat(idx, \" > \").concat(dumpObj(srcError));\r\n });\r\n throw new aggregationErrorType(theMessage, sourceErrors || []);\r\n}\r\n//# sourceMappingURL=AggregationError.js.map","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\nimport { arrForEach, arrIndexOf, dumpObj, newSymbol, scheduleTimeout } from \"@nevware21/ts-utils\";\r\nimport { throwAggregationError } from \"../JavaScriptSDK/AggregationError\";\r\nimport { _DYN_BLK_VAL, _DYN_CANCEL, _DYN_HDLR, _DYN_LENGTH, _DYN_LOGGER, _DYN_NOTIFY, _DYN_PUSH, _DYN_RD_ONLY, _DYN_SET_DF, _DYN_THROW_INTERNAL } from \"../__DynamicConstants\";\r\nvar symPrefix = \"[[ai_\";\r\nvar symPostfix = \"]]\";\r\nexport function _createState(cfgHandler) {\r\n var _a;\r\n var dynamicPropertySymbol = newSymbol(symPrefix + \"get\" + cfgHandler.uid + symPostfix);\r\n var dynamicPropertyReadOnly = newSymbol(symPrefix + \"ro\" + cfgHandler.uid + symPostfix);\r\n var dynamicPropertyReferenced = newSymbol(symPrefix + \"rf\" + cfgHandler.uid + symPostfix);\r\n var dynamicPropertyBlockValue = newSymbol(symPrefix + \"blkVal\" + cfgHandler.uid + symPostfix);\r\n var dynamicPropertyDetail = newSymbol(symPrefix + \"dtl\" + cfgHandler.uid + symPostfix);\r\n var _waitingHandlers = null;\r\n var _watcherTimer = null;\r\n var theState;\r\n function _useHandler(activeHandler, callback) {\r\n var prevWatcher = theState.act;\r\n try {\r\n theState.act = activeHandler;\r\n if (activeHandler && activeHandler[dynamicPropertyDetail]) {\r\n // Clear out the previously tracked details for this handler, so that access are re-evaluated\r\n arrForEach(activeHandler[dynamicPropertyDetail], function (detail) {\r\n detail.clr(activeHandler);\r\n });\r\n activeHandler[dynamicPropertyDetail] = [];\r\n }\r\n callback({\r\n cfg: cfgHandler.cfg,\r\n set: cfgHandler.set.bind(cfgHandler),\r\n setDf: cfgHandler[_DYN_SET_DF /* @min:%2esetDf */].bind(cfgHandler),\r\n ref: cfgHandler.ref.bind(cfgHandler),\r\n rdOnly: cfgHandler[_DYN_RD_ONLY /* @min:%2erdOnly */].bind(cfgHandler)\r\n });\r\n }\r\n catch (e) {\r\n var logger = cfgHandler[_DYN_LOGGER /* @min:%2elogger */];\r\n if (logger) {\r\n // Don't let one individual failure break everyone\r\n logger[_DYN_THROW_INTERNAL /* @min:%2ethrowInternal */](1 /* eLoggingSeverity.CRITICAL */, 107 /* _eInternalMessageId.ConfigWatcherException */, dumpObj(e));\r\n }\r\n // Re-throw the exception so that any true \"error\" is reported back to the called\r\n throw e;\r\n }\r\n finally {\r\n theState.act = prevWatcher || null;\r\n }\r\n }\r\n function _notifyWatchers() {\r\n if (_waitingHandlers) {\r\n var notifyHandlers = _waitingHandlers;\r\n _waitingHandlers = null;\r\n // Stop any timer as we are running them now anyway\r\n _watcherTimer && _watcherTimer[_DYN_CANCEL /* @min:%2ecancel */]();\r\n _watcherTimer = null;\r\n var watcherFailures_1 = [];\r\n // Now run the handlers\r\n arrForEach(notifyHandlers, function (handler) {\r\n if (handler) {\r\n if (handler[dynamicPropertyDetail]) {\r\n arrForEach(handler[dynamicPropertyDetail], function (detail) {\r\n // Clear out this handler from previously tracked details, so that access are re-evaluated\r\n detail.clr(handler);\r\n });\r\n handler[dynamicPropertyDetail] = null;\r\n }\r\n // The handler may have self removed as part of another handler so re-check\r\n if (handler.fn) {\r\n try {\r\n _useHandler(handler, handler.fn);\r\n }\r\n catch (e) {\r\n // Don't let a single failing watcher cause other watches to fail\r\n watcherFailures_1[_DYN_PUSH /* @min:%2epush */](e);\r\n }\r\n }\r\n }\r\n });\r\n // During notification we may have had additional updates -- so notify those updates as well\r\n if (_waitingHandlers) {\r\n try {\r\n _notifyWatchers();\r\n }\r\n catch (e) {\r\n watcherFailures_1[_DYN_PUSH /* @min:%2epush */](e);\r\n }\r\n }\r\n if (watcherFailures_1[_DYN_LENGTH /* @min:%2elength */] > 0) {\r\n throwAggregationError(\"Watcher error(s): \", watcherFailures_1);\r\n }\r\n }\r\n }\r\n function _addWatcher(detail) {\r\n if (detail && detail.h[_DYN_LENGTH /* @min:%2elength */] > 0) {\r\n if (!_waitingHandlers) {\r\n _waitingHandlers = [];\r\n }\r\n if (!_watcherTimer) {\r\n _watcherTimer = scheduleTimeout(function () {\r\n _watcherTimer = null;\r\n _notifyWatchers();\r\n }, 0);\r\n }\r\n // Add all of the handlers for this detail (if not already present) - using normal for-loop for performance\r\n for (var idx = 0; idx < detail.h[_DYN_LENGTH /* @min:%2elength */]; idx++) {\r\n var handler = detail.h[idx];\r\n // Add this handler to the collection of handlers to re-execute\r\n if (handler && arrIndexOf(_waitingHandlers, handler) === -1) {\r\n _waitingHandlers[_DYN_PUSH /* @min:%2epush */](handler);\r\n }\r\n }\r\n }\r\n }\r\n function _trackHandler(handler, detail) {\r\n if (handler) {\r\n var details = handler[dynamicPropertyDetail] = handler[dynamicPropertyDetail] || [];\r\n if (arrIndexOf(details, detail) === -1) {\r\n // If this detail is not already listed as tracked then add it so that we re-evaluate it's usage\r\n details[_DYN_PUSH /* @min:%2epush */](detail);\r\n }\r\n }\r\n }\r\n theState = (_a = {\r\n prop: dynamicPropertySymbol,\r\n ro: dynamicPropertyReadOnly,\r\n rf: dynamicPropertyReferenced\r\n },\r\n _a[_DYN_BLK_VAL /* @min:blkVal */] = dynamicPropertyBlockValue,\r\n _a[_DYN_HDLR /* @min:hdlr */] = cfgHandler,\r\n _a.add = _addWatcher,\r\n _a[_DYN_NOTIFY /* @min:notify */] = _notifyWatchers,\r\n _a.use = _useHandler,\r\n _a.trk = _trackHandler,\r\n _a);\r\n return theState;\r\n}\r\n//# sourceMappingURL=DynamicState.js.map","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\nimport { dumpObj, isUndefined, objDefine, objForEachKey } from \"@nevware21/ts-utils\";\r\nimport { createUniqueNamespace } from \"../JavaScriptSDK/DataCacheHelper\";\r\nimport { STR_NOT_DYNAMIC_ERROR } from \"../JavaScriptSDK/InternalConstants\";\r\nimport { _DYN_BLK_VAL, _DYN_LOGGER, _DYN_NOTIFY, _DYN_RD_ONLY, _DYN_SET_DF, _DYN_THROW_INTERNAL, _DYN_WARN_TO_CONSOLE, _DYN_WATCH } from \"../__DynamicConstants\";\r\nimport { _applyDefaultValue } from \"./ConfigDefaults\";\r\nimport { _makeDynamicObject, _setDynamicProperty, _setDynamicPropertyState, _throwDynamicError } from \"./DynamicProperty\";\r\nimport { _createState } from \"./DynamicState\";\r\nimport { CFG_HANDLER_LINK, _cfgDeepCopy, getDynamicConfigHandler, throwInvalidAccess } from \"./DynamicSupport\";\r\n/**\r\n * Identifies a function which will be re-called whenever any of it's accessed configuration values\r\n * change.\r\n * @param configHandler - The callback that will be called for the initial request and then whenever any\r\n * accessed configuration changes are identified.\r\n */\r\nfunction _createAndUseHandler(state, configHandler) {\r\n var handler = {\r\n fn: configHandler,\r\n rm: function () {\r\n // Clear all references to the handler so it can be garbage collected\r\n // This will also cause this handler to never get called and eventually removed\r\n handler.fn = null;\r\n state = null;\r\n configHandler = null;\r\n }\r\n };\r\n objDefine(handler, \"toJSON\", { v: function () { return \"WatcherHandler\" + (handler.fn ? \"\" : \"[X]\"); } });\r\n state.use(handler, configHandler);\r\n return handler;\r\n}\r\n/**\r\n * Creates the dynamic config handler and associates with the target config as the root object\r\n * @param target - The config that you want to be root of the dynamic config\r\n * @param inPlace - Should the passed config be converted in-place or a new proxy returned\r\n * @returns The existing dynamic handler or a new instance with the provided config values\r\n */\r\nfunction _createDynamicHandler(logger, target, inPlace) {\r\n var _a;\r\n var dynamicHandler = getDynamicConfigHandler(target);\r\n if (dynamicHandler) {\r\n // The passed config is already dynamic so return it's tracker\r\n return dynamicHandler;\r\n }\r\n var uid = createUniqueNamespace(\"dyncfg\", true);\r\n var newTarget = (target && inPlace !== false) ? target : _cfgDeepCopy(target);\r\n var theState;\r\n function _notifyWatchers() {\r\n theState[_DYN_NOTIFY /* @min:%2enotify */]();\r\n }\r\n function _setValue(target, name, value) {\r\n try {\r\n target = _setDynamicProperty(theState, target, name, value);\r\n }\r\n catch (e) {\r\n // Unable to convert to dynamic property so just leave as non-dynamic\r\n _throwDynamicError(logger, name, \"Setting value\", e);\r\n }\r\n return target[name];\r\n }\r\n function _watch(configHandler) {\r\n return _createAndUseHandler(theState, configHandler);\r\n }\r\n function _block(configHandler, allowUpdate) {\r\n theState.use(null, function (details) {\r\n var prevUpd = theState.upd;\r\n try {\r\n if (!isUndefined(allowUpdate)) {\r\n theState.upd = allowUpdate;\r\n }\r\n configHandler(details);\r\n }\r\n finally {\r\n theState.upd = prevUpd;\r\n }\r\n });\r\n }\r\n function _ref(target, name) {\r\n var _a;\r\n // Make sure it's dynamic and mark as referenced with it's current value\r\n return _setDynamicPropertyState(theState, target, name, (_a = {}, _a[0 /* _eSetDynamicPropertyFlags.inPlace */] = true, _a))[name];\r\n }\r\n function _rdOnly(target, name) {\r\n var _a;\r\n // Make sure it's dynamic and mark as readonly with it's current value\r\n return _setDynamicPropertyState(theState, target, name, (_a = {}, _a[1 /* _eSetDynamicPropertyFlags.readOnly */] = true, _a))[name];\r\n }\r\n function _blkPropValue(target, name) {\r\n var _a;\r\n // Make sure it's dynamic and mark as readonly with it's current value\r\n return _setDynamicPropertyState(theState, target, name, (_a = {}, _a[2 /* _eSetDynamicPropertyFlags.blockDynamicProperty */] = true, _a))[name];\r\n }\r\n function _applyDefaults(theConfig, defaultValues) {\r\n if (defaultValues) {\r\n // Resolve/apply the defaults\r\n objForEachKey(defaultValues, function (name, value) {\r\n // Sets the value and makes it dynamic (if it doesn't already exist)\r\n _applyDefaultValue(cfgHandler, theConfig, name, value);\r\n });\r\n }\r\n return theConfig;\r\n }\r\n var cfgHandler = (_a = {\r\n uid: null,\r\n cfg: newTarget\r\n },\r\n _a[_DYN_LOGGER /* @min:logger */] = logger,\r\n _a[_DYN_NOTIFY /* @min:notify */] = _notifyWatchers,\r\n _a.set = _setValue,\r\n _a[_DYN_SET_DF /* @min:setDf */] = _applyDefaults,\r\n _a[_DYN_WATCH /* @min:watch */] = _watch,\r\n _a.ref = _ref,\r\n _a[_DYN_RD_ONLY /* @min:rdOnly */] = _rdOnly,\r\n _a[_DYN_BLK_VAL /* @min:blkVal */] = _blkPropValue,\r\n _a._block = _block,\r\n _a);\r\n objDefine(cfgHandler, \"uid\", {\r\n c: false,\r\n e: false,\r\n w: false,\r\n v: uid\r\n });\r\n theState = _createState(cfgHandler);\r\n // Setup tracking for all defined default keys\r\n _makeDynamicObject(theState, newTarget, \"config\", \"Creating\");\r\n return cfgHandler;\r\n}\r\n/**\r\n * Log an invalid access message to the console\r\n */\r\nfunction _logInvalidAccess(logger, message) {\r\n if (logger) {\r\n logger[_DYN_WARN_TO_CONSOLE /* @min:%2ewarnToConsole */](message);\r\n logger[_DYN_THROW_INTERNAL /* @min:%2ethrowInternal */](2 /* eLoggingSeverity.WARNING */, 108 /* _eInternalMessageId.DynamicConfigException */, message);\r\n }\r\n else {\r\n // We don't have a logger so just throw an exception\r\n throwInvalidAccess(message);\r\n }\r\n}\r\n/**\r\n * Create or return a dynamic version of the passed config, if it is not already dynamic\r\n * @param config - The config to be converted into a dynamic config\r\n * @param defaultConfig - The default values to apply on the config if the properties don't already exist\r\n * @param inPlace - Should the config be converted in-place into a dynamic config or a new instance returned, defaults to true\r\n * @returns The dynamic config handler for the config (whether new or existing)\r\n */\r\nexport function createDynamicConfig(config, defaultConfig, logger, inPlace) {\r\n var dynamicHandler = _createDynamicHandler(logger, config || {}, inPlace);\r\n if (defaultConfig) {\r\n dynamicHandler[_DYN_SET_DF /* @min:%2esetDf */](dynamicHandler.cfg, defaultConfig);\r\n }\r\n return dynamicHandler;\r\n}\r\n/**\r\n * Watch and track changes for accesses to the current config, the provided config MUST already be\r\n * a dynamic config or a child accessed via the dynamic config\r\n * @param logger - The logger instance to use if there is no existing handler\r\n * @returns A watcher handler instance that can be used to remove itself when being unloaded\r\n * @throws TypeError if the provided config is not a dynamic config instance\r\n */\r\nexport function onConfigChange(config, configHandler, logger) {\r\n var handler = config[CFG_HANDLER_LINK] || config;\r\n if (handler.cfg && (handler.cfg === config || handler.cfg[CFG_HANDLER_LINK] === handler)) {\r\n return handler[_DYN_WATCH /* @min:%2ewatch */](configHandler);\r\n }\r\n _logInvalidAccess(logger, STR_NOT_DYNAMIC_ERROR + dumpObj(config));\r\n return createDynamicConfig(config, null, logger)[_DYN_WATCH /* @min:%2ewatch */](configHandler);\r\n}\r\n//# sourceMappingURL=DynamicConfig.js.map","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\nimport { getInst } from \"@nevware21/ts-utils\";\r\nimport { _DYN_APPLY, _DYN_LENGTH } from \"../__DynamicConstants\";\r\nimport { STR_EVENTS_DISCARDED, STR_EVENTS_SEND_REQUEST, STR_EVENTS_SENT, STR_PERF_EVENT } from \"./InternalConstants\";\r\nvar listenerFuncs = [STR_EVENTS_SENT, STR_EVENTS_DISCARDED, STR_EVENTS_SEND_REQUEST, STR_PERF_EVENT];\r\nvar _aiNamespace = null;\r\nvar _debugListener;\r\nfunction _listenerProxyFunc(name, config) {\r\n return function () {\r\n var args = arguments;\r\n var dbgExt = getDebugExt(config);\r\n if (dbgExt) {\r\n var listener = dbgExt.listener;\r\n if (listener && listener[name]) {\r\n listener[name][_DYN_APPLY /* @min:%2eapply */](listener, args);\r\n }\r\n }\r\n };\r\n}\r\nfunction _getExtensionNamespace() {\r\n // Cache the lookup of the global namespace object\r\n var target = getInst(\"Microsoft\");\r\n if (target) {\r\n _aiNamespace = target[\"ApplicationInsights\"];\r\n }\r\n return _aiNamespace;\r\n}\r\nexport function getDebugExt(config) {\r\n var ns = _aiNamespace;\r\n if (!ns && config.disableDbgExt !== true) {\r\n ns = _aiNamespace || _getExtensionNamespace();\r\n }\r\n return ns ? ns[\"ChromeDbgExt\"] : null;\r\n}\r\nexport function getDebugListener(config) {\r\n if (!_debugListener) {\r\n _debugListener = {};\r\n for (var lp = 0; lp < listenerFuncs[_DYN_LENGTH /* @min:%2elength */]; lp++) {\r\n _debugListener[listenerFuncs[lp]] = _listenerProxyFunc(listenerFuncs[lp], config);\r\n }\r\n }\r\n return _debugListener;\r\n}\r\n//# sourceMappingURL=DbgExtensionUtils.js.map","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\n\"use strict\";\r\nvar _a;\r\nimport dynamicProto from \"@microsoft/dynamicproto-js\";\r\nimport { dumpObj, isFunction, isUndefined } from \"@nevware21/ts-utils\";\r\nimport { createDynamicConfig, onConfigChange } from \"../Config/DynamicConfig\";\r\nimport { _DYN_DIAG_LOG, _DYN_LOGGER, _DYN_LOGGING_LEVEL_CONSOL4, _DYN_LOG_INTERNAL_MESSAGE, _DYN_MESSAGE, _DYN_MESSAGE_ID, _DYN_PUSH, _DYN_REPLACE, _DYN_THROW_INTERNAL, _DYN_UNLOAD, _DYN_WARN_TO_CONSOLE } from \"../__DynamicConstants\";\r\nimport { getDebugExt } from \"./DbgExtensionUtils\";\r\nimport { getConsole, getJSON, hasJSON } from \"./EnvUtils\";\r\nimport { STR_EMPTY } from \"./InternalConstants\";\r\nvar STR_WARN_TO_CONSOLE = \"warnToConsole\";\r\n/**\r\n * For user non actionable traces use AI Internal prefix.\r\n */\r\nvar AiNonUserActionablePrefix = \"AI (Internal): \";\r\n/**\r\n * Prefix of the traces in portal.\r\n */\r\nvar AiUserActionablePrefix = \"AI: \";\r\n/**\r\n * Session storage key for the prefix for the key indicating message type already logged\r\n */\r\nvar AIInternalMessagePrefix = \"AITR_\";\r\nvar defaultValues = {\r\n loggingLevelConsole: 0,\r\n loggingLevelTelemetry: 1,\r\n maxMessageLimit: 25,\r\n enableDebug: false\r\n};\r\nvar _logFuncs = (_a = {},\r\n _a[0 /* eLoggingSeverity.DISABLED */] = null,\r\n _a[1 /* eLoggingSeverity.CRITICAL */] = \"errorToConsole\",\r\n _a[2 /* eLoggingSeverity.WARNING */] = STR_WARN_TO_CONSOLE,\r\n _a[3 /* eLoggingSeverity.DEBUG */] = \"debugToConsole\",\r\n _a);\r\nfunction _sanitizeDiagnosticText(text) {\r\n if (text) {\r\n return \"\\\"\" + text[_DYN_REPLACE /* @min:%2ereplace */](/\\\"/g, STR_EMPTY) + \"\\\"\";\r\n }\r\n return STR_EMPTY;\r\n}\r\nfunction _logToConsole(func, message) {\r\n var theConsole = getConsole();\r\n if (!!theConsole) {\r\n var logFunc = \"log\";\r\n if (theConsole[func]) {\r\n logFunc = func;\r\n }\r\n if (isFunction(theConsole[logFunc])) {\r\n theConsole[logFunc](message);\r\n }\r\n }\r\n}\r\nvar _InternalLogMessage = /** @class */ (function () {\r\n function _InternalLogMessage(msgId, msg, isUserAct, properties) {\r\n if (isUserAct === void 0) { isUserAct = false; }\r\n var _self = this;\r\n _self[_DYN_MESSAGE_ID /* @min:%2emessageId */] = msgId;\r\n _self[_DYN_MESSAGE /* @min:%2emessage */] =\r\n (isUserAct ? AiUserActionablePrefix : AiNonUserActionablePrefix) +\r\n msgId;\r\n var strProps = STR_EMPTY;\r\n if (hasJSON()) {\r\n strProps = getJSON().stringify(properties);\r\n }\r\n var diagnosticText = (msg ? \" message:\" + _sanitizeDiagnosticText(msg) : STR_EMPTY) +\r\n (properties ? \" props:\" + _sanitizeDiagnosticText(strProps) : STR_EMPTY);\r\n _self[_DYN_MESSAGE /* @min:%2emessage */] += diagnosticText;\r\n }\r\n _InternalLogMessage.dataType = \"MessageData\";\r\n return _InternalLogMessage;\r\n}());\r\nexport { _InternalLogMessage };\r\nexport function safeGetLogger(core, config) {\r\n return (core || {})[_DYN_LOGGER /* @min:%2elogger */] || new DiagnosticLogger(config);\r\n}\r\nvar DiagnosticLogger = /** @class */ (function () {\r\n function DiagnosticLogger(config) {\r\n this.identifier = \"DiagnosticLogger\";\r\n /**\r\n * The internal logging queue\r\n */\r\n this.queue = [];\r\n /**\r\n * Count of internal messages sent\r\n */\r\n var _messageCount = 0;\r\n /**\r\n * Holds information about what message types were already logged to console or sent to server.\r\n */\r\n var _messageLogged = {};\r\n var _loggingLevelConsole;\r\n var _loggingLevelTelemetry;\r\n var _maxInternalMessageLimit;\r\n var _enableDebug;\r\n var _unloadHandler;\r\n dynamicProto(DiagnosticLogger, this, function (_self) {\r\n _unloadHandler = _setDefaultsFromConfig(config || {});\r\n _self.consoleLoggingLevel = function () { return _loggingLevelConsole; };\r\n /**\r\n * This method will throw exceptions in debug mode or attempt to log the error as a console warning.\r\n * @param severity - The severity of the log message\r\n * @param message - The log message.\r\n */\r\n _self[_DYN_THROW_INTERNAL /* @min:%2ethrowInternal */] = function (severity, msgId, msg, properties, isUserAct) {\r\n if (isUserAct === void 0) { isUserAct = false; }\r\n var message = new _InternalLogMessage(msgId, msg, isUserAct, properties);\r\n if (_enableDebug) {\r\n throw dumpObj(message);\r\n }\r\n else {\r\n // Get the logging function and fallback to warnToConsole of for some reason errorToConsole doesn't exist\r\n var logFunc = _logFuncs[severity] || STR_WARN_TO_CONSOLE;\r\n if (!isUndefined(message[_DYN_MESSAGE /* @min:%2emessage */])) {\r\n if (isUserAct) {\r\n // check if this message type was already logged to console for this page view and if so, don't log it again\r\n var messageKey = +message[_DYN_MESSAGE_ID /* @min:%2emessageId */];\r\n if (!_messageLogged[messageKey] && _loggingLevelConsole >= severity) {\r\n _self[logFunc](message[_DYN_MESSAGE /* @min:%2emessage */]);\r\n _messageLogged[messageKey] = true;\r\n }\r\n }\r\n else {\r\n // Only log traces if the console Logging Level is >= the throwInternal severity level\r\n if (_loggingLevelConsole >= severity) {\r\n _self[logFunc](message[_DYN_MESSAGE /* @min:%2emessage */]);\r\n }\r\n }\r\n _logInternalMessage(severity, message);\r\n }\r\n else {\r\n _debugExtMsg(\"throw\" + (severity === 1 /* eLoggingSeverity.CRITICAL */ ? \"Critical\" : \"Warning\"), message);\r\n }\r\n }\r\n };\r\n _self.debugToConsole = function (message) {\r\n _logToConsole(\"debug\", message);\r\n _debugExtMsg(\"warning\", message);\r\n };\r\n _self[_DYN_WARN_TO_CONSOLE /* @min:%2ewarnToConsole */] = function (message) {\r\n _logToConsole(\"warn\", message);\r\n _debugExtMsg(\"warning\", message);\r\n };\r\n _self.errorToConsole = function (message) {\r\n _logToConsole(\"error\", message);\r\n _debugExtMsg(\"error\", message);\r\n };\r\n _self.resetInternalMessageCount = function () {\r\n _messageCount = 0;\r\n _messageLogged = {};\r\n };\r\n _self[_DYN_LOG_INTERNAL_MESSAGE /* @min:%2elogInternalMessage */] = _logInternalMessage;\r\n _self[_DYN_UNLOAD /* @min:%2eunload */] = function (isAsync) {\r\n _unloadHandler && _unloadHandler.rm();\r\n _unloadHandler = null;\r\n };\r\n function _logInternalMessage(severity, message) {\r\n if (_areInternalMessagesThrottled()) {\r\n return;\r\n }\r\n // check if this message type was already logged for this session and if so, don't log it again\r\n var logMessage = true;\r\n var messageKey = AIInternalMessagePrefix + message[_DYN_MESSAGE_ID /* @min:%2emessageId */];\r\n // if the session storage is not available, limit to only one message type per page view\r\n if (_messageLogged[messageKey]) {\r\n logMessage = false;\r\n }\r\n else {\r\n _messageLogged[messageKey] = true;\r\n }\r\n if (logMessage) {\r\n // Push the event in the internal queue\r\n if (severity <= _loggingLevelTelemetry) {\r\n _self.queue[_DYN_PUSH /* @min:%2epush */](message);\r\n _messageCount++;\r\n _debugExtMsg((severity === 1 /* eLoggingSeverity.CRITICAL */ ? \"error\" : \"warn\"), message);\r\n }\r\n // When throttle limit reached, send a special event\r\n if (_messageCount === _maxInternalMessageLimit) {\r\n var throttleLimitMessage = \"Internal events throttle limit per PageView reached for this app.\";\r\n var throttleMessage = new _InternalLogMessage(23 /* _eInternalMessageId.MessageLimitPerPVExceeded */, throttleLimitMessage, false);\r\n _self.queue[_DYN_PUSH /* @min:%2epush */](throttleMessage);\r\n if (severity === 1 /* eLoggingSeverity.CRITICAL */) {\r\n _self.errorToConsole(throttleLimitMessage);\r\n }\r\n else {\r\n _self[_DYN_WARN_TO_CONSOLE /* @min:%2ewarnToConsole */](throttleLimitMessage);\r\n }\r\n }\r\n }\r\n }\r\n function _setDefaultsFromConfig(config) {\r\n // make sure the config is dynamic\r\n return onConfigChange(createDynamicConfig(config, defaultValues, _self).cfg, function (details) {\r\n var config = details.cfg;\r\n _loggingLevelConsole = config[_DYN_LOGGING_LEVEL_CONSOL4 /* @min:%2eloggingLevelConsole */];\r\n _loggingLevelTelemetry = config.loggingLevelTelemetry;\r\n _maxInternalMessageLimit = config.maxMessageLimit;\r\n _enableDebug = config.enableDebug;\r\n });\r\n }\r\n function _areInternalMessagesThrottled() {\r\n return _messageCount >= _maxInternalMessageLimit;\r\n }\r\n function _debugExtMsg(name, data) {\r\n var dbgExt = getDebugExt(config || {});\r\n if (dbgExt && dbgExt[_DYN_DIAG_LOG /* @min:%2ediagLog */]) {\r\n dbgExt[_DYN_DIAG_LOG /* @min:%2ediagLog */](name, data);\r\n }\r\n }\r\n });\r\n }\r\n /**\r\n * 0: OFF (default)\r\n * 1: CRITICAL\r\n * 2: \\>= WARNING\r\n */\r\n DiagnosticLogger.prototype.consoleLoggingLevel = function () {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n return 0;\r\n };\r\n /**\r\n * This method will throw exceptions in debug mode or attempt to log the error as a console warning.\r\n * @param severity - The severity of the log message\r\n * @param message - The log message.\r\n */\r\n DiagnosticLogger.prototype.throwInternal = function (severity, msgId, msg, properties, isUserAct) {\r\n if (isUserAct === void 0) { isUserAct = false; }\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n /**\r\n * This will write a debug message to the console if possible\r\n * @param message - The debug message\r\n */\r\n DiagnosticLogger.prototype.debugToConsole = function (message) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n /**\r\n * This will write a warning to the console if possible\r\n * @param message - The warning message\r\n */\r\n DiagnosticLogger.prototype.warnToConsole = function (message) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n /**\r\n * This will write an error to the console if possible\r\n * @param message - The warning message\r\n */\r\n DiagnosticLogger.prototype.errorToConsole = function (message) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n /**\r\n * Resets the internal message count\r\n */\r\n DiagnosticLogger.prototype.resetInternalMessageCount = function () {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n /**\r\n * Logs a message to the internal queue.\r\n * @param severity - The severity of the log message\r\n * @param message - The message to log.\r\n */\r\n DiagnosticLogger.prototype.logInternalMessage = function (severity, message) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n /**\r\n * Unload and remove any state that this IDiagnosticLogger may be holding, this is generally called when the\r\n * owning SDK is being unloaded.\r\n * @param isAsync - Can the unload be performed asynchronously (default)\r\n * @returns If the unload occurs synchronously then nothing should be returned, if happening asynchronously then\r\n * the function should return an [IPromise](https://nevware21.github.io/ts-async/typedoc/interfaces/IPromise.html)\r\n * / Promise to allow any listeners to wait for the operation to complete.\r\n */\r\n DiagnosticLogger.prototype.unload = function (isAsync) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n return DiagnosticLogger;\r\n}());\r\nexport { DiagnosticLogger };\r\nfunction _getLogger(logger) {\r\n return (logger || new DiagnosticLogger());\r\n}\r\n/**\r\n * This is a helper method which will call throwInternal on the passed logger, will throw exceptions in\r\n * debug mode or attempt to log the error as a console warning. This helper is provided mostly to better\r\n * support minification as logger.throwInternal() will not compress the publish \"throwInternal\" used throughout\r\n * the code.\r\n * @param logger - The Diagnostic Logger instance to use.\r\n * @param severity - The severity of the log message\r\n * @param message - The log message.\r\n */\r\nexport function _throwInternal(logger, severity, msgId, msg, properties, isUserAct) {\r\n if (isUserAct === void 0) { isUserAct = false; }\r\n _getLogger(logger)[_DYN_THROW_INTERNAL /* @min:%2ethrowInternal */](severity, msgId, msg, properties, isUserAct);\r\n}\r\n/**\r\n * This is a helper method which will call warnToConsole on the passed logger with the provided message.\r\n * @param logger - The Diagnostic Logger instance to use.\r\n * @param message - The log message.\r\n */\r\nexport function _warnToConsole(logger, message) {\r\n _getLogger(logger)[_DYN_WARN_TO_CONSOLE /* @min:%2ewarnToConsole */](message);\r\n}\r\n/**\r\n * Logs a message to the internal queue.\r\n * @param logger - The Diagnostic Logger instance to use.\r\n * @param severity - The severity of the log message\r\n * @param message - The message to log.\r\n */\r\nexport function _logInternalMessage(logger, severity, message) {\r\n _getLogger(logger)[_DYN_LOG_INTERNAL_MESSAGE /* @min:%2elogInternalMessage */](severity, message);\r\n}\r\n//# sourceMappingURL=DiagnosticLogger.js.map","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\nimport { createEnum, createTypeMap } from \"@nevware21/ts-utils\";\r\n/**\r\n * Create an enum style object which has both the key \\=\\> value and value \\=\\> key mappings\r\n * @param values - The values to populate on the new object\r\n * @returns\r\n */\r\nexport var createEnumStyle = createEnum;\r\n/**\r\n * Create a 2 index map that maps an enum's key and value to the defined map value, X[\"key\"] \\=\\> mapValue and X[0] \\=\\> mapValue.\r\n * Generic values\r\n * - E = the const enum type (typeof eRequestHeaders);\r\n * - V = Identifies the valid values for the keys, this should include both the enum numeric and string key of the type. The\r\n * resulting \"Value\" of each entry identifies the valid values withing the assignments.\r\n * @param values - The values to populate on the new object\r\n * @returns\r\n */\r\nexport var createValueMap = createTypeMap;\r\n//# sourceMappingURL=EnumHelperFuncs.js.map","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\nimport { createEnumStyle } from \"@microsoft/applicationinsights-core-js\";\r\nexport var StorageType = createEnumStyle({\r\n LocalStorage: 0 /* eStorageType.LocalStorage */,\r\n SessionStorage: 1 /* eStorageType.SessionStorage */\r\n});\r\nexport var DistributedTracingModes = createEnumStyle({\r\n AI: 0 /* eDistributedTracingModes.AI */,\r\n AI_AND_W3C: 1 /* eDistributedTracingModes.AI_AND_W3C */,\r\n W3C: 2 /* eDistributedTracingModes.W3C */\r\n});\r\n/**\r\n * The EventPersistence contains a set of values that specify the event's persistence.\r\n */\r\nexport var EventPersistence = createEnumStyle({\r\n /**\r\n * Normal persistence.\r\n */\r\n Normal: 1 /* EventPersistenceValue.Normal */,\r\n /**\r\n * Critical persistence.\r\n */\r\n Critical: 2 /* EventPersistenceValue.Critical */\r\n});\r\n//# sourceMappingURL=Enums.js.map","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\n// @skip-file-minify\r\n// ##############################################################\r\n// AUTO GENERATED FILE: This file is Auto Generated during build.\r\n// ##############################################################\r\n// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\r\n// Note: DON'T Export these const from the package as we are still targeting ES3 this will export a mutable variables that someone could change!!!\r\n// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\r\nexport var _DYN_SPLIT = \"split\"; // Count: 6\r\nexport var _DYN_LENGTH = \"length\"; // Count: 46\r\nexport var _DYN_TO_LOWER_CASE = \"toLowerCase\"; // Count: 6\r\nexport var _DYN_INGESTIONENDPOINT = \"ingestionendpoint\"; // Count: 6\r\nexport var _DYN_TO_STRING = \"toString\"; // Count: 8\r\nexport var _DYN_PUSH = \"push\"; // Count: 5\r\nexport var _DYN_REMOVE_ITEM = \"removeItem\"; // Count: 3\r\nexport var _DYN_NAME = \"name\"; // Count: 11\r\nexport var _DYN_MESSAGE = \"message\"; // Count: 9\r\nexport var _DYN_COUNT = \"count\"; // Count: 8\r\nexport var _DYN_PRE_TRIGGER_DATE = \"preTriggerDate\"; // Count: 4\r\nexport var _DYN_DISABLED = \"disabled\"; // Count: 3\r\nexport var _DYN_INTERVAL = \"interval\"; // Count: 3\r\nexport var _DYN_DAYS_OF_MONTH = \"daysOfMonth\"; // Count: 3\r\nexport var _DYN_DATE = \"date\"; // Count: 5\r\nexport var _DYN_GET_UTCDATE = \"getUTCDate\"; // Count: 3\r\nexport var _DYN_STRINGIFY = \"stringify\"; // Count: 4\r\nexport var _DYN_PATHNAME = \"pathname\"; // Count: 4\r\nexport var _DYN_MATCH = \"match\"; // Count: 5\r\nexport var _DYN_CORRELATION_HEADER_E0 = \"correlationHeaderExcludePatterns\"; // Count: 2\r\nexport var _DYN_EXTENSION_CONFIG = \"extensionConfig\"; // Count: 4\r\nexport var _DYN_EXCEPTIONS = \"exceptions\"; // Count: 6\r\nexport var _DYN_PARSED_STACK = \"parsedStack\"; // Count: 9\r\nexport var _DYN_PROPERTIES = \"properties\"; // Count: 9\r\nexport var _DYN_MEASUREMENTS = \"measurements\"; // Count: 9\r\nexport var _DYN_SIZE_IN_BYTES = \"sizeInBytes\"; // Count: 6\r\nexport var _DYN_TYPE_NAME = \"typeName\"; // Count: 8\r\nexport var _DYN_SEVERITY_LEVEL = \"severityLevel\"; // Count: 5\r\nexport var _DYN_PROBLEM_GROUP = \"problemGroup\"; // Count: 3\r\nexport var _DYN_IS_MANUAL = \"isManual\"; // Count: 3\r\nexport var _DYN_HAS_FULL_STACK = \"hasFullStack\"; // Count: 5\r\nexport var _DYN_ASSEMBLY = \"assembly\"; // Count: 7\r\nexport var _DYN_FILE_NAME = \"fileName\"; // Count: 11\r\nexport var _DYN_LINE = \"line\"; // Count: 8\r\nexport var _DYN_METHOD = \"method\"; // Count: 6\r\nexport var _DYN_LEVEL = \"level\"; // Count: 5\r\nexport var _DYN_AI_DATA_CONTRACT = \"aiDataContract\"; // Count: 4\r\nexport var _DYN_DURATION = \"duration\"; // Count: 4\r\nexport var _DYN_RECEIVED_RESPONSE = \"receivedResponse\"; // Count: 2\r\n//# sourceMappingURL=__DynamicConstants.js.map","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\nimport { _throwInternal, dumpObj, getExceptionName, getGlobal, getGlobalInst, isNullOrUndefined, objForEachKey } from \"@microsoft/applicationinsights-core-js\";\r\nimport { StorageType } from \"./Enums\";\r\nimport { _DYN_PUSH, _DYN_REMOVE_ITEM, _DYN_TO_STRING } from \"./__DynamicConstants\";\r\nvar _canUseLocalStorage = undefined;\r\nvar _canUseSessionStorage = undefined;\r\nvar _storagePrefix = \"\";\r\n/**\r\n * Gets the localStorage object if available\r\n * @returns {Storage} - Returns the storage object if available else returns null\r\n */\r\nfunction _getLocalStorageObject() {\r\n if (utlCanUseLocalStorage()) {\r\n return _getVerifiedStorageObject(StorageType.LocalStorage);\r\n }\r\n return null;\r\n}\r\n/**\r\n * Tests storage object (localStorage or sessionStorage) to verify that it is usable\r\n * More details here: https://mathiasbynens.be/notes/localstorage-pattern\r\n * @param storageType - Type of storage\r\n * @returns {Storage} Returns storage object verified that it is usable\r\n */\r\nfunction _getVerifiedStorageObject(storageType) {\r\n try {\r\n if (isNullOrUndefined(getGlobal())) {\r\n return null;\r\n }\r\n var uid = (new Date)[_DYN_TO_STRING /* @min:%2etoString */]();\r\n var storage = getGlobalInst(storageType === StorageType.LocalStorage ? \"localStorage\" : \"sessionStorage\");\r\n var name_1 = _storagePrefix + uid;\r\n storage.setItem(name_1, uid);\r\n var fail = storage.getItem(name_1) !== uid;\r\n storage[_DYN_REMOVE_ITEM /* @min:%2eremoveItem */](name_1);\r\n if (!fail) {\r\n return storage;\r\n }\r\n }\r\n catch (exception) {\r\n // eslint-disable-next-line no-empty\r\n }\r\n return null;\r\n}\r\n/**\r\n * Gets the sessionStorage object if available\r\n * @returns {Storage} - Returns the storage object if available else returns null\r\n */\r\nfunction _getSessionStorageObject() {\r\n if (utlCanUseSessionStorage()) {\r\n return _getVerifiedStorageObject(StorageType.SessionStorage);\r\n }\r\n return null;\r\n}\r\n/**\r\n * Disables the global SDK usage of local or session storage if available\r\n */\r\nexport function utlDisableStorage() {\r\n _canUseLocalStorage = false;\r\n _canUseSessionStorage = false;\r\n}\r\nexport function utlSetStoragePrefix(storagePrefix) {\r\n _storagePrefix = storagePrefix || \"\";\r\n}\r\n/**\r\n * Re-enables the global SDK usage of local or session storage if available\r\n */\r\nexport function utlEnableStorage() {\r\n _canUseLocalStorage = utlCanUseLocalStorage(true);\r\n _canUseSessionStorage = utlCanUseSessionStorage(true);\r\n}\r\n/**\r\n * Returns whether LocalStorage can be used, if the reset parameter is passed a true this will override\r\n * any previous disable calls.\r\n * @param reset - Should the usage be reset and determined only based on whether LocalStorage is available\r\n */\r\nexport function utlCanUseLocalStorage(reset) {\r\n if (reset || _canUseLocalStorage === undefined) {\r\n _canUseLocalStorage = !!_getVerifiedStorageObject(StorageType.LocalStorage);\r\n }\r\n return _canUseLocalStorage;\r\n}\r\nexport function utlGetLocalStorage(logger, name) {\r\n var storage = _getLocalStorageObject();\r\n if (storage !== null) {\r\n try {\r\n return storage.getItem(name);\r\n }\r\n catch (e) {\r\n _canUseLocalStorage = false;\r\n _throwInternal(logger, 2 /* eLoggingSeverity.WARNING */, 1 /* _eInternalMessageId.BrowserCannotReadLocalStorage */, \"Browser failed read of local storage. \" + getExceptionName(e), { exception: dumpObj(e) });\r\n }\r\n }\r\n return null;\r\n}\r\nexport function utlSetLocalStorage(logger, name, data) {\r\n var storage = _getLocalStorageObject();\r\n if (storage !== null) {\r\n try {\r\n storage.setItem(name, data);\r\n return true;\r\n }\r\n catch (e) {\r\n _canUseLocalStorage = false;\r\n _throwInternal(logger, 2 /* eLoggingSeverity.WARNING */, 3 /* _eInternalMessageId.BrowserCannotWriteLocalStorage */, \"Browser failed write to local storage. \" + getExceptionName(e), { exception: dumpObj(e) });\r\n }\r\n }\r\n return false;\r\n}\r\nexport function utlRemoveStorage(logger, name) {\r\n var storage = _getLocalStorageObject();\r\n if (storage !== null) {\r\n try {\r\n storage[_DYN_REMOVE_ITEM /* @min:%2eremoveItem */](name);\r\n return true;\r\n }\r\n catch (e) {\r\n _canUseLocalStorage = false;\r\n _throwInternal(logger, 2 /* eLoggingSeverity.WARNING */, 5 /* _eInternalMessageId.BrowserFailedRemovalFromLocalStorage */, \"Browser failed removal of local storage item. \" + getExceptionName(e), { exception: dumpObj(e) });\r\n }\r\n }\r\n return false;\r\n}\r\nexport function utlCanUseSessionStorage(reset) {\r\n if (reset || _canUseSessionStorage === undefined) {\r\n _canUseSessionStorage = !!_getVerifiedStorageObject(StorageType.SessionStorage);\r\n }\r\n return _canUseSessionStorage;\r\n}\r\nexport function utlGetSessionStorageKeys() {\r\n var keys = [];\r\n if (utlCanUseSessionStorage()) {\r\n objForEachKey(getGlobalInst(\"sessionStorage\"), function (key) {\r\n keys[_DYN_PUSH /* @min:%2epush */](key);\r\n });\r\n }\r\n return keys;\r\n}\r\nexport function utlGetSessionStorage(logger, name) {\r\n var storage = _getSessionStorageObject();\r\n if (storage !== null) {\r\n try {\r\n return storage.getItem(name);\r\n }\r\n catch (e) {\r\n _canUseSessionStorage = false;\r\n _throwInternal(logger, 2 /* eLoggingSeverity.WARNING */, 2 /* _eInternalMessageId.BrowserCannotReadSessionStorage */, \"Browser failed read of session storage. \" + getExceptionName(e), { exception: dumpObj(e) });\r\n }\r\n }\r\n return null;\r\n}\r\nexport function utlSetSessionStorage(logger, name, data) {\r\n var storage = _getSessionStorageObject();\r\n if (storage !== null) {\r\n try {\r\n storage.setItem(name, data);\r\n return true;\r\n }\r\n catch (e) {\r\n _canUseSessionStorage = false;\r\n _throwInternal(logger, 2 /* eLoggingSeverity.WARNING */, 4 /* _eInternalMessageId.BrowserCannotWriteSessionStorage */, \"Browser failed write to session storage. \" + getExceptionName(e), { exception: dumpObj(e) });\r\n }\r\n }\r\n return false;\r\n}\r\nexport function utlRemoveSessionStorage(logger, name) {\r\n var storage = _getSessionStorageObject();\r\n if (storage !== null) {\r\n try {\r\n storage[_DYN_REMOVE_ITEM /* @min:%2eremoveItem */](name);\r\n return true;\r\n }\r\n catch (e) {\r\n _canUseSessionStorage = false;\r\n _throwInternal(logger, 2 /* eLoggingSeverity.WARNING */, 6 /* _eInternalMessageId.BrowserFailedRemovalFromSessionStorage */, \"Browser failed removal of session storage item. \" + getExceptionName(e), { exception: dumpObj(e) });\r\n }\r\n }\r\n return false;\r\n}\r\n//# sourceMappingURL=StorageHelperFuncs.js.map","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the\r\nexport { correlationIdSetPrefix, correlationIdGetPrefix, correlationIdCanIncludeCorrelationHeader, correlationIdGetCorrelationContext, correlationIdGetCorrelationContextValue, dateTimeUtilsNow, dateTimeUtilsDuration, isInternalApplicationInsightsEndpoint, createDistributedTraceContextFromTrace } from \"./Util\";\r\nexport { ThrottleMgr } from \"./ThrottleMgr\";\r\nexport { parseConnectionString, ConnectionStringParser } from \"./ConnectionStringParser\";\r\nexport { RequestHeaders } from \"./RequestResponseHeaders\";\r\nexport { DisabledPropertyName, ProcessLegacy, SampleRate, HttpMethod, DEFAULT_BREEZE_ENDPOINT, DEFAULT_BREEZE_PATH, strNotSpecified } from \"./Constants\";\r\nexport { Envelope } from \"./Telemetry/Common/Envelope\";\r\nexport { Event } from \"./Telemetry/Event\";\r\nexport { Exception } from \"./Telemetry/Exception\";\r\nexport { Metric } from \"./Telemetry/Metric\";\r\nexport { PageView } from \"./Telemetry/PageView\";\r\nexport { RemoteDependencyData } from \"./Telemetry/RemoteDependencyData\";\r\nexport { Trace } from \"./Telemetry/Trace\";\r\nexport { PageViewPerformance } from \"./Telemetry/PageViewPerformance\";\r\nexport { Data } from \"./Telemetry/Common/Data\";\r\nexport { SeverityLevel } from \"./Interfaces/Contracts/SeverityLevel\";\r\nexport { ConfigurationManager } from \"./Interfaces/IConfig\";\r\nexport { ContextTagKeys } from \"./Interfaces/Contracts/ContextTagKeys\";\r\nexport { dataSanitizeKeyAndAddUniqueness, dataSanitizeKey, dataSanitizeString, dataSanitizeUrl, dataSanitizeMessage, dataSanitizeException, dataSanitizeProperties, dataSanitizeMeasurements, dataSanitizeId, dataSanitizeInput, dsPadNumber } from \"./Telemetry/Common/DataSanitizer\";\r\nexport { TelemetryItemCreator, createTelemetryItem } from \"./TelemetryItemCreator\";\r\nexport { CtxTagKeys, Extensions } from \"./Interfaces/PartAExtensions\";\r\nexport { DistributedTracingModes, EventPersistence } from \"./Enums\";\r\nexport { stringToBoolOrDefault, msToTimeSpan, getExtensionByName, isCrossOriginError } from \"./HelperFuncs\";\r\nexport { isBeaconsSupported as isBeaconApiSupported, createTraceParent, parseTraceParent, isValidTraceId, isValidSpanId, isValidTraceParent, isSampledFlag, formatTraceParent, findW3cTraceParent, findAllScripts } from \"@microsoft/applicationinsights-core-js\";\r\nexport { createDomEvent } from \"./DomHelperFuncs\";\r\nexport { utlDisableStorage, utlEnableStorage, utlCanUseLocalStorage, utlGetLocalStorage, utlSetLocalStorage, utlRemoveStorage, utlCanUseSessionStorage, utlGetSessionStorageKeys, utlGetSessionStorage, utlSetSessionStorage, utlRemoveSessionStorage, utlSetStoragePrefix } from \"./StorageHelperFuncs\";\r\nexport { urlParseUrl, urlGetAbsoluteUrl, urlGetPathName, urlGetCompleteUrl, urlParseHost, urlParseFullHost } from \"./UrlHelperFuncs\";\r\nexport { createOfflineListener } from \"./Offline\";\r\nexport var PropertiesPluginIdentifier = \"AppInsightsPropertiesPlugin\";\r\nexport var BreezeChannelIdentifier = \"AppInsightsChannelPlugin\";\r\nexport var AnalyticsPluginIdentifier = \"ApplicationInsightsAnalytics\";\r\n//# sourceMappingURL=applicationinsights-common.js.map","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\n/**\r\n * This is an internal property used to cause internal (reporting) requests to be ignored from reporting\r\n * additional telemetry, to handle polyfil implementations ALL urls used with a disabled request will\r\n * also be ignored for future requests even when this property is not provided.\r\n * Tagging as Ignore as this is an internal value and is not expected to be used outside of the SDK\r\n * @ignore\r\n */\r\nexport var DisabledPropertyName = \"Microsoft_ApplicationInsights_BypassAjaxInstrumentation\";\r\nexport var SampleRate = \"sampleRate\";\r\nexport var ProcessLegacy = \"ProcessLegacy\";\r\nexport var HttpMethod = \"http.method\";\r\nexport var DEFAULT_BREEZE_ENDPOINT = \"https://dc.services.visualstudio.com\";\r\nexport var DEFAULT_BREEZE_PATH = \"/v2/track\";\r\nexport var strNotSpecified = \"not_specified\";\r\nexport var strIkey = \"iKey\";\r\n//# sourceMappingURL=Constants.js.map","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\nimport { _throwInternal, getJSON, hasJSON, isObject, objForEachKey, strTrim } from \"@microsoft/applicationinsights-core-js\";\r\nimport { asString, strSubstr, strSubstring } from \"@nevware21/ts-utils\";\r\nimport { _DYN_LENGTH, _DYN_STRINGIFY, _DYN_TO_STRING } from \"../../__DynamicConstants\";\r\nexport function dataSanitizeKeyAndAddUniqueness(logger, key, map) {\r\n var origLength = key[_DYN_LENGTH /* @min:%2elength */];\r\n var field = dataSanitizeKey(logger, key);\r\n // validation truncated the length. We need to add uniqueness\r\n if (field[_DYN_LENGTH /* @min:%2elength */] !== origLength) {\r\n var i = 0;\r\n var uniqueField = field;\r\n while (map[uniqueField] !== undefined) {\r\n i++;\r\n uniqueField = strSubstring(field, 0, 150 /* DataSanitizerValues.MAX_NAME_LENGTH */ - 3) + dsPadNumber(i);\r\n }\r\n field = uniqueField;\r\n }\r\n return field;\r\n}\r\nexport function dataSanitizeKey(logger, name) {\r\n var nameTrunc;\r\n if (name) {\r\n // Remove any leading or trailing whitespace\r\n name = strTrim(asString(name));\r\n // truncate the string to 150 chars\r\n if (name[_DYN_LENGTH /* @min:%2elength */] > 150 /* DataSanitizerValues.MAX_NAME_LENGTH */) {\r\n nameTrunc = strSubstring(name, 0, 150 /* DataSanitizerValues.MAX_NAME_LENGTH */);\r\n _throwInternal(logger, 2 /* eLoggingSeverity.WARNING */, 57 /* _eInternalMessageId.NameTooLong */, \"name is too long. It has been truncated to \" + 150 /* DataSanitizerValues.MAX_NAME_LENGTH */ + \" characters.\", { name: name }, true);\r\n }\r\n }\r\n return nameTrunc || name;\r\n}\r\nexport function dataSanitizeString(logger, value, maxLength) {\r\n if (maxLength === void 0) { maxLength = 1024 /* DataSanitizerValues.MAX_STRING_LENGTH */; }\r\n var valueTrunc;\r\n if (value) {\r\n maxLength = maxLength ? maxLength : 1024 /* DataSanitizerValues.MAX_STRING_LENGTH */; // in case default parameters dont work\r\n value = strTrim(asString(value));\r\n if (value[_DYN_LENGTH /* @min:%2elength */] > maxLength) {\r\n valueTrunc = strSubstring(value, 0, maxLength);\r\n _throwInternal(logger, 2 /* eLoggingSeverity.WARNING */, 61 /* _eInternalMessageId.StringValueTooLong */, \"string value is too long. It has been truncated to \" + maxLength + \" characters.\", { value: value }, true);\r\n }\r\n }\r\n return valueTrunc || value;\r\n}\r\nexport function dataSanitizeUrl(logger, url) {\r\n return dataSanitizeInput(logger, url, 2048 /* DataSanitizerValues.MAX_URL_LENGTH */, 66 /* _eInternalMessageId.UrlTooLong */);\r\n}\r\nexport function dataSanitizeMessage(logger, message) {\r\n var messageTrunc;\r\n if (message) {\r\n if (message[_DYN_LENGTH /* @min:%2elength */] > 32768 /* DataSanitizerValues.MAX_MESSAGE_LENGTH */) {\r\n messageTrunc = strSubstring(message, 0, 32768 /* DataSanitizerValues.MAX_MESSAGE_LENGTH */);\r\n _throwInternal(logger, 2 /* eLoggingSeverity.WARNING */, 56 /* _eInternalMessageId.MessageTruncated */, \"message is too long, it has been truncated to \" + 32768 /* DataSanitizerValues.MAX_MESSAGE_LENGTH */ + \" characters.\", { message: message }, true);\r\n }\r\n }\r\n return messageTrunc || message;\r\n}\r\nexport function dataSanitizeException(logger, exception) {\r\n var exceptionTrunc;\r\n if (exception) {\r\n // Make surte its a string\r\n var value = \"\" + exception;\r\n if (value[_DYN_LENGTH /* @min:%2elength */] > 32768 /* DataSanitizerValues.MAX_EXCEPTION_LENGTH */) {\r\n exceptionTrunc = strSubstring(value, 0, 32768 /* DataSanitizerValues.MAX_EXCEPTION_LENGTH */);\r\n _throwInternal(logger, 2 /* eLoggingSeverity.WARNING */, 52 /* _eInternalMessageId.ExceptionTruncated */, \"exception is too long, it has been truncated to \" + 32768 /* DataSanitizerValues.MAX_EXCEPTION_LENGTH */ + \" characters.\", { exception: exception }, true);\r\n }\r\n }\r\n return exceptionTrunc || exception;\r\n}\r\nexport function dataSanitizeProperties(logger, properties) {\r\n if (properties) {\r\n var tempProps_1 = {};\r\n objForEachKey(properties, function (prop, value) {\r\n if (isObject(value) && hasJSON()) {\r\n // Stringify any part C properties\r\n try {\r\n value = getJSON()[_DYN_STRINGIFY /* @min:%2estringify */](value);\r\n }\r\n catch (e) {\r\n _throwInternal(logger, 2 /* eLoggingSeverity.WARNING */, 49 /* _eInternalMessageId.CannotSerializeObjectNonSerializable */, \"custom property is not valid\", { exception: e }, true);\r\n }\r\n }\r\n value = dataSanitizeString(logger, value, 8192 /* DataSanitizerValues.MAX_PROPERTY_LENGTH */);\r\n prop = dataSanitizeKeyAndAddUniqueness(logger, prop, tempProps_1);\r\n tempProps_1[prop] = value;\r\n });\r\n properties = tempProps_1;\r\n }\r\n return properties;\r\n}\r\nexport function dataSanitizeMeasurements(logger, measurements) {\r\n if (measurements) {\r\n var tempMeasurements_1 = {};\r\n objForEachKey(measurements, function (measure, value) {\r\n measure = dataSanitizeKeyAndAddUniqueness(logger, measure, tempMeasurements_1);\r\n tempMeasurements_1[measure] = value;\r\n });\r\n measurements = tempMeasurements_1;\r\n }\r\n return measurements;\r\n}\r\nexport function dataSanitizeId(logger, id) {\r\n return id ? dataSanitizeInput(logger, id, 128 /* DataSanitizerValues.MAX_ID_LENGTH */, 69 /* _eInternalMessageId.IdTooLong */)[_DYN_TO_STRING /* @min:%2etoString */]() : id;\r\n}\r\nexport function dataSanitizeInput(logger, input, maxLength, _msgId) {\r\n var inputTrunc;\r\n if (input) {\r\n input = strTrim(asString(input));\r\n if (input[_DYN_LENGTH /* @min:%2elength */] > maxLength) {\r\n inputTrunc = strSubstring(input, 0, maxLength);\r\n _throwInternal(logger, 2 /* eLoggingSeverity.WARNING */, _msgId, \"input is too long, it has been truncated to \" + maxLength + \" characters.\", { data: input }, true);\r\n }\r\n }\r\n return inputTrunc || input;\r\n}\r\nexport function dsPadNumber(num) {\r\n var s = \"00\" + num;\r\n return strSubstr(s, s[_DYN_LENGTH /* @min:%2elength */] - 3);\r\n}\r\n//# sourceMappingURL=DataSanitizer.js.map","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\nimport { isNullOrUndefined, objForEachKey, throwError, toISOString } from \"@microsoft/applicationinsights-core-js\";\r\nimport { strIkey, strNotSpecified } from \"./Constants\";\r\nimport { dataSanitizeString } from \"./Telemetry/Common/DataSanitizer\";\r\nimport { _DYN_NAME } from \"./__DynamicConstants\";\r\n/**\r\n * Create a telemetry item that the 1DS channel understands\r\n * @param item - domain specific properties; part B\r\n * @param baseType - telemetry item type. ie PageViewData\r\n * @param envelopeName - Name of the envelope, e.g., `Microsoft.ApplicationInsights.\\.PageView`.\r\n * @param customProperties - user defined custom properties; part C\r\n * @param systemProperties - system properties that are added to the context; part A\r\n * @returns ITelemetryItem that is sent to channel\r\n */\r\nexport function createTelemetryItem(item, baseType, envelopeName, logger, customProperties, systemProperties) {\r\n var _a;\r\n envelopeName = dataSanitizeString(logger, envelopeName) || strNotSpecified;\r\n if (isNullOrUndefined(item) ||\r\n isNullOrUndefined(baseType) ||\r\n isNullOrUndefined(envelopeName)) {\r\n throwError(\"Input doesn't contain all required fields\");\r\n }\r\n var iKey = \"\";\r\n if (item[strIkey]) {\r\n iKey = item[strIkey];\r\n delete item[strIkey];\r\n }\r\n var telemetryItem = (_a = {},\r\n _a[_DYN_NAME /* @min:name */] = envelopeName,\r\n _a.time = toISOString(new Date()),\r\n _a.iKey = iKey,\r\n _a.ext = systemProperties ? systemProperties : {},\r\n _a.tags = [],\r\n _a.data = {},\r\n _a.baseType = baseType,\r\n _a.baseData = item // Part B\r\n ,\r\n _a);\r\n // Part C\r\n if (!isNullOrUndefined(customProperties)) {\r\n objForEachKey(customProperties, function (prop, value) {\r\n telemetryItem.data[prop] = value;\r\n });\r\n }\r\n return telemetryItem;\r\n}\r\nvar TelemetryItemCreator = /** @class */ (function () {\r\n function TelemetryItemCreator() {\r\n }\r\n /**\r\n * Create a telemetry item that the 1DS channel understands\r\n * @param item - domain specific properties; part B\r\n * @param baseType - telemetry item type. ie PageViewData\r\n * @param envelopeName - Name of the envelope (e.g., Microsoft.ApplicationInsights.[instrumentationKey].PageView).\r\n * @param customProperties - user defined custom properties; part C\r\n * @param systemProperties - system properties that are added to the context; part A\r\n * @returns ITelemetryItem that is sent to channel\r\n */\r\n TelemetryItemCreator.create = createTelemetryItem;\r\n return TelemetryItemCreator;\r\n}());\r\nexport { TelemetryItemCreator };\r\n//# sourceMappingURL=TelemetryItemCreator.js.map","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\nimport { strNotSpecified } from \"../Constants\";\r\nimport { _DYN_MEASUREMENTS, _DYN_NAME, _DYN_PROPERTIES } from \"../__DynamicConstants\";\r\nimport { dataSanitizeMeasurements, dataSanitizeProperties, dataSanitizeString } from \"./Common/DataSanitizer\";\r\nvar Event = /** @class */ (function () {\r\n /**\r\n * Constructs a new instance of the EventTelemetry object\r\n */\r\n function Event(logger, name, properties, measurements) {\r\n this.aiDataContract = {\r\n ver: 1 /* FieldType.Required */,\r\n name: 1 /* FieldType.Required */,\r\n properties: 0 /* FieldType.Default */,\r\n measurements: 0 /* FieldType.Default */\r\n };\r\n var _self = this;\r\n _self.ver = 2;\r\n _self[_DYN_NAME /* @min:%2ename */] = dataSanitizeString(logger, name) || strNotSpecified;\r\n _self[_DYN_PROPERTIES /* @min:%2eproperties */] = dataSanitizeProperties(logger, properties);\r\n _self[_DYN_MEASUREMENTS /* @min:%2emeasurements */] = dataSanitizeMeasurements(logger, measurements);\r\n }\r\n Event.envelopeType = \"Microsoft.ApplicationInsights.{0}.Event\";\r\n Event.dataType = \"EventData\";\r\n return Event;\r\n}());\r\nexport { Event };\r\n//# sourceMappingURL=Event.js.map","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\nimport { strNotSpecified } from \"../Constants\";\r\nimport { _DYN_MEASUREMENTS, _DYN_MESSAGE, _DYN_PROPERTIES, _DYN_SEVERITY_LEVEL } from \"../__DynamicConstants\";\r\nimport { dataSanitizeMeasurements, dataSanitizeMessage, dataSanitizeProperties } from \"./Common/DataSanitizer\";\r\nvar Trace = /** @class */ (function () {\r\n /**\r\n * Constructs a new instance of the TraceTelemetry object\r\n */\r\n function Trace(logger, message, severityLevel, properties, measurements) {\r\n this.aiDataContract = {\r\n ver: 1 /* FieldType.Required */,\r\n message: 1 /* FieldType.Required */,\r\n severityLevel: 0 /* FieldType.Default */,\r\n properties: 0 /* FieldType.Default */\r\n };\r\n var _self = this;\r\n _self.ver = 2;\r\n message = message || strNotSpecified;\r\n _self[_DYN_MESSAGE /* @min:%2emessage */] = dataSanitizeMessage(logger, message);\r\n _self[_DYN_PROPERTIES /* @min:%2eproperties */] = dataSanitizeProperties(logger, properties);\r\n _self[_DYN_MEASUREMENTS /* @min:%2emeasurements */] = dataSanitizeMeasurements(logger, measurements);\r\n if (severityLevel) {\r\n _self[_DYN_SEVERITY_LEVEL /* @min:%2eseverityLevel */] = severityLevel;\r\n }\r\n }\r\n Trace.envelopeType = \"Microsoft.ApplicationInsights.{0}.Message\";\r\n Trace.dataType = \"MessageData\";\r\n return Trace;\r\n}());\r\nexport { Trace };\r\n//# sourceMappingURL=Trace.js.map","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\nvar DataPoint = /** @class */ (function () {\r\n function DataPoint() {\r\n /**\r\n * The data contract for serializing this object.\r\n */\r\n this.aiDataContract = {\r\n name: 1 /* FieldType.Required */,\r\n kind: 0 /* FieldType.Default */,\r\n value: 1 /* FieldType.Required */,\r\n count: 0 /* FieldType.Default */,\r\n min: 0 /* FieldType.Default */,\r\n max: 0 /* FieldType.Default */,\r\n stdDev: 0 /* FieldType.Default */\r\n };\r\n /**\r\n * Metric type. Single measurement or the aggregated value.\r\n */\r\n this.kind = 0 /* DataPointType.Measurement */;\r\n }\r\n return DataPoint;\r\n}());\r\nexport { DataPoint };\r\n//# sourceMappingURL=DataPoint.js.map","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\nimport { strNotSpecified } from \"../Constants\";\r\nimport { _DYN_COUNT, _DYN_MEASUREMENTS, _DYN_NAME, _DYN_PROPERTIES } from \"../__DynamicConstants\";\r\nimport { DataPoint } from \"./Common/DataPoint\";\r\nimport { dataSanitizeMeasurements, dataSanitizeProperties, dataSanitizeString } from \"./Common/DataSanitizer\";\r\nvar Metric = /** @class */ (function () {\r\n /**\r\n * Constructs a new instance of the MetricTelemetry object\r\n */\r\n function Metric(logger, name, value, count, min, max, stdDev, properties, measurements) {\r\n this.aiDataContract = {\r\n ver: 1 /* FieldType.Required */,\r\n metrics: 1 /* FieldType.Required */,\r\n properties: 0 /* FieldType.Default */\r\n };\r\n var _self = this;\r\n _self.ver = 2;\r\n var dataPoint = new DataPoint();\r\n dataPoint[_DYN_COUNT /* @min:%2ecount */] = count > 0 ? count : undefined;\r\n dataPoint.max = isNaN(max) || max === null ? undefined : max;\r\n dataPoint.min = isNaN(min) || min === null ? undefined : min;\r\n dataPoint[_DYN_NAME /* @min:%2ename */] = dataSanitizeString(logger, name) || strNotSpecified;\r\n dataPoint.value = value;\r\n dataPoint.stdDev = isNaN(stdDev) || stdDev === null ? undefined : stdDev;\r\n _self.metrics = [dataPoint];\r\n _self[_DYN_PROPERTIES /* @min:%2eproperties */] = dataSanitizeProperties(logger, properties);\r\n _self[_DYN_MEASUREMENTS /* @min:%2emeasurements */] = dataSanitizeMeasurements(logger, measurements);\r\n }\r\n Metric.envelopeType = \"Microsoft.ApplicationInsights.{0}.Metric\";\r\n Metric.dataType = \"MetricData\";\r\n return Metric;\r\n}());\r\nexport { Metric };\r\n//# sourceMappingURL=Metric.js.map","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\nimport { arrForEach, isString } from \"@microsoft/applicationinsights-core-js\";\r\nimport { _DYN_LENGTH, _DYN_TO_LOWER_CASE } from \"./__DynamicConstants\";\r\nvar strEmpty = \"\";\r\nexport function stringToBoolOrDefault(str, defaultValue) {\r\n if (defaultValue === void 0) { defaultValue = false; }\r\n if (str === undefined || str === null) {\r\n return defaultValue;\r\n }\r\n return str.toString()[_DYN_TO_LOWER_CASE /* @min:%2etoLowerCase */]() === \"true\";\r\n}\r\n/**\r\n * Convert ms to c# time span format\r\n */\r\nexport function msToTimeSpan(totalms) {\r\n if (isNaN(totalms) || totalms < 0) {\r\n totalms = 0;\r\n }\r\n totalms = Math.round(totalms);\r\n var ms = strEmpty + totalms % 1000;\r\n var sec = strEmpty + Math.floor(totalms / 1000) % 60;\r\n var min = strEmpty + Math.floor(totalms / (1000 * 60)) % 60;\r\n var hour = strEmpty + Math.floor(totalms / (1000 * 60 * 60)) % 24;\r\n var days = Math.floor(totalms / (1000 * 60 * 60 * 24));\r\n ms = ms[_DYN_LENGTH /* @min:%2elength */] === 1 ? \"00\" + ms : ms[_DYN_LENGTH /* @min:%2elength */] === 2 ? \"0\" + ms : ms;\r\n sec = sec[_DYN_LENGTH /* @min:%2elength */] < 2 ? \"0\" + sec : sec;\r\n min = min[_DYN_LENGTH /* @min:%2elength */] < 2 ? \"0\" + min : min;\r\n hour = hour[_DYN_LENGTH /* @min:%2elength */] < 2 ? \"0\" + hour : hour;\r\n return (days > 0 ? days + \".\" : strEmpty) + hour + \":\" + min + \":\" + sec + \".\" + ms;\r\n}\r\nexport function getExtensionByName(extensions, identifier) {\r\n var extension = null;\r\n arrForEach(extensions, function (value) {\r\n if (value.identifier === identifier) {\r\n extension = value;\r\n return -1;\r\n }\r\n });\r\n return extension;\r\n}\r\nexport function isCrossOriginError(message, url, lineNumber, columnNumber, error) {\r\n return !error && isString(message) && (message === \"Script error.\" || message === \"Script error\");\r\n}\r\n//# sourceMappingURL=HelperFuncs.js.map","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\nimport { strNotSpecified } from \"../Constants\";\r\nimport { msToTimeSpan } from \"../HelperFuncs\";\r\nimport { _DYN_DURATION, _DYN_MEASUREMENTS, _DYN_NAME, _DYN_PROPERTIES } from \"../__DynamicConstants\";\r\nimport { dataSanitizeId, dataSanitizeMeasurements, dataSanitizeProperties, dataSanitizeString, dataSanitizeUrl } from \"./Common/DataSanitizer\";\r\nvar PageView = /** @class */ (function () {\r\n /**\r\n * Constructs a new instance of the PageEventTelemetry object\r\n */\r\n function PageView(logger, name, url, durationMs, properties, measurements, id) {\r\n this.aiDataContract = {\r\n ver: 1 /* FieldType.Required */,\r\n name: 0 /* FieldType.Default */,\r\n url: 0 /* FieldType.Default */,\r\n duration: 0 /* FieldType.Default */,\r\n properties: 0 /* FieldType.Default */,\r\n measurements: 0 /* FieldType.Default */,\r\n id: 0 /* FieldType.Default */\r\n };\r\n var _self = this;\r\n _self.ver = 2;\r\n _self.id = dataSanitizeId(logger, id);\r\n _self.url = dataSanitizeUrl(logger, url);\r\n _self[_DYN_NAME /* @min:%2ename */] = dataSanitizeString(logger, name) || strNotSpecified;\r\n if (!isNaN(durationMs)) {\r\n _self[_DYN_DURATION /* @min:%2eduration */] = msToTimeSpan(durationMs);\r\n }\r\n _self[_DYN_PROPERTIES /* @min:%2eproperties */] = dataSanitizeProperties(logger, properties);\r\n _self[_DYN_MEASUREMENTS /* @min:%2emeasurements */] = dataSanitizeMeasurements(logger, measurements);\r\n }\r\n PageView.envelopeType = \"Microsoft.ApplicationInsights.{0}.Pageview\";\r\n PageView.dataType = \"PageviewData\";\r\n return PageView;\r\n}());\r\nexport { PageView };\r\n//# sourceMappingURL=PageView.js.map","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\nimport { strNotSpecified } from \"../Constants\";\r\nimport { _DYN_DURATION, _DYN_MEASUREMENTS, _DYN_NAME, _DYN_PROPERTIES, _DYN_RECEIVED_RESPONSE } from \"../__DynamicConstants\";\r\nimport { dataSanitizeMeasurements, dataSanitizeProperties, dataSanitizeString, dataSanitizeUrl } from \"./Common/DataSanitizer\";\r\nvar PageViewPerformance = /** @class */ (function () {\r\n /**\r\n * Constructs a new instance of the PageEventTelemetry object\r\n */\r\n function PageViewPerformance(logger, name, url, unused, properties, measurements, cs4BaseData) {\r\n this.aiDataContract = {\r\n ver: 1 /* FieldType.Required */,\r\n name: 0 /* FieldType.Default */,\r\n url: 0 /* FieldType.Default */,\r\n duration: 0 /* FieldType.Default */,\r\n perfTotal: 0 /* FieldType.Default */,\r\n networkConnect: 0 /* FieldType.Default */,\r\n sentRequest: 0 /* FieldType.Default */,\r\n receivedResponse: 0 /* FieldType.Default */,\r\n domProcessing: 0 /* FieldType.Default */,\r\n properties: 0 /* FieldType.Default */,\r\n measurements: 0 /* FieldType.Default */\r\n };\r\n var _self = this;\r\n _self.ver = 2;\r\n _self.url = dataSanitizeUrl(logger, url);\r\n _self[_DYN_NAME /* @min:%2ename */] = dataSanitizeString(logger, name) || strNotSpecified;\r\n _self[_DYN_PROPERTIES /* @min:%2eproperties */] = dataSanitizeProperties(logger, properties);\r\n _self[_DYN_MEASUREMENTS /* @min:%2emeasurements */] = dataSanitizeMeasurements(logger, measurements);\r\n if (cs4BaseData) {\r\n _self.domProcessing = cs4BaseData.domProcessing;\r\n _self[_DYN_DURATION /* @min:%2eduration */] = cs4BaseData[_DYN_DURATION /* @min:%2eduration */];\r\n _self.networkConnect = cs4BaseData.networkConnect;\r\n _self.perfTotal = cs4BaseData.perfTotal;\r\n _self[_DYN_RECEIVED_RESPONSE /* @min:%2ereceivedResponse */] = cs4BaseData[_DYN_RECEIVED_RESPONSE /* @min:%2ereceivedResponse */];\r\n _self.sentRequest = cs4BaseData.sentRequest;\r\n }\r\n }\r\n PageViewPerformance.envelopeType = \"Microsoft.ApplicationInsights.{0}.PageviewPerformance\";\r\n PageViewPerformance.dataType = \"PageviewPerformanceData\";\r\n return PageViewPerformance;\r\n}());\r\nexport { PageViewPerformance };\r\n//# sourceMappingURL=PageViewPerformance.js.map","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\nimport { __assign } from \"tslib\";\r\nimport { arrForEach, arrMap, isArray, isError, isFunction, isNullOrUndefined, isObject, isString, strTrim } from \"@microsoft/applicationinsights-core-js\";\r\nimport { asString, getWindow, objFreeze, strIndexOf } from \"@nevware21/ts-utils\";\r\nimport { strNotSpecified } from \"../Constants\";\r\nimport { _DYN_AI_DATA_CONTRACT, _DYN_ASSEMBLY, _DYN_EXCEPTIONS, _DYN_FILE_NAME, _DYN_HAS_FULL_STACK, _DYN_IS_MANUAL, _DYN_LENGTH, _DYN_LEVEL, _DYN_LINE, _DYN_MATCH, _DYN_MEASUREMENTS, _DYN_MESSAGE, _DYN_METHOD, _DYN_NAME, _DYN_PARSED_STACK, _DYN_PROBLEM_GROUP, _DYN_PROPERTIES, _DYN_PUSH, _DYN_SEVERITY_LEVEL, _DYN_SIZE_IN_BYTES, _DYN_SPLIT, _DYN_STRINGIFY, _DYN_TO_STRING, _DYN_TYPE_NAME } from \"../__DynamicConstants\";\r\nimport { dataSanitizeException, dataSanitizeMeasurements, dataSanitizeMessage, dataSanitizeProperties, dataSanitizeString } from \"./Common/DataSanitizer\";\r\n// These Regex covers the following patterns\r\n// 1. Chrome/Firefox/IE/Edge:\r\n// at functionName (filename:lineNumber:columnNumber)\r\n// at functionName (filename:lineNumber)\r\n// at filename:lineNumber:columnNumber\r\n// at filename:lineNumber\r\n// at functionName@filename:lineNumber:columnNumber\r\n// 2. Safari / Opera:\r\n// functionName@filename:lineNumber:columnNumber\r\n// functionName@filename:lineNumber\r\n// filename:lineNumber:columnNumber\r\n// filename:lineNumber\r\n// Line ## of scriptname script filename:lineNumber:columnNumber\r\n// Line ## of scriptname script filename\r\n// 3. IE/Edge (Additional formats)\r\n// at functionName@filename:lineNumber\r\nvar STACKFRAME_BASE_SIZE = 58; // '{\"method\":\"\",\"level\":,\"assembly\":\"\",\"fileName\":\"\",\"line\":}'.length\r\n/**\r\n * Check if the string conforms to what looks like a stack frame line and not just a general message\r\n * comment or other non-stack related info.\r\n *\r\n * This should be used to filter out any leading \"message\" lines from a stack trace, before attempting to parse\r\n * the individual stack frames. Once you have estabilsted the start of the stack frames you can then use the\r\n * FULL_STACK_FRAME_1, FULL_STACK_FRAME_2, FULL_STACK_FRAME_3, and EXTRACT_FILENAME to parse the individual\r\n * stack frames to extract the method, filename, line number, and column number.\r\n * These may still provide invalid matches, so the sequence of execution is important to avoid providing\r\n * an invalid parsed stack.\r\n */\r\nvar IS_FRAME = /^\\s{0,50}(from\\s|at\\s|Line\\s{1,5}\\d{1,10}\\s{1,5}of|\\w{1,50}@\\w{1,80}|[^\\(\\s\\n]+:[0-9\\?]+(?::[0-9\\?]+)?)/;\r\n/**\r\n * Parse a well formed stack frame with both the line and column numbers\r\n * ----------------------------------\r\n * **Primary focus of the matching**\r\n * - at functionName (filename:lineNumber:columnNumber)\r\n * - at filename:lineNumber:columnNumber\r\n * - at functionName@filename:lineNumber:columnNumber\r\n * - functionName (filename:lineNumber:columnNumber)\r\n * - filename:lineNumber:columnNumber\r\n * - functionName@filename:lineNumber:columnNumber\r\n */\r\nvar FULL_STACK_FRAME_1 = /^(?:\\s{0,50}at)?\\s{0,50}([^\\@\\()\\s]+)?\\s{0,50}(?:\\s|\\@|\\()\\s{0,5}([^\\(\\s\\n\\]]+):([0-9\\?]+):([0-9\\?]+)\\)?$/;\r\n/**\r\n * Parse a well formed stack frame with only a line number.\r\n * ----------------------------------\r\n * > Note: this WILL also match with line and column number, but the line number is included with the filename\r\n * > you should attempt to match with FULL_STACK_FRAME_1 first.\r\n *\r\n * **Primary focus of the matching (run FULL_STACK_FRAME_1 first)**\r\n * - at functionName (filename:lineNumber)\r\n * - at filename:lineNumber\r\n * - at functionName@filename:lineNumber\r\n * - functionName (filename:lineNumber)\r\n * - filename:lineNumber\r\n * - functionName@filename:lineNumber\r\n *\r\n * **Secondary matches**\r\n * - at functionName (filename:lineNumber:columnNumber)\r\n * - at filename:lineNumber:columnNumber\r\n * - at functionName@filename:lineNumber:columnNumber\r\n * - functionName (filename:lineNumber:columnNumber)\r\n * - filename:lineNumber:columnNumber\r\n * - functionName@filename:lineNumber:columnNumber\r\n */\r\nvar FULL_STACK_FRAME_2 = /^(?:\\s{0,50}at)?\\s{0,50}([^\\@\\()\\s]+)?\\s{0,50}(?:\\s|\\@|\\()\\s{0,5}([^\\(\\s\\n\\]]+):([0-9\\?]+)\\)?$/;\r\n/**\r\n * Attempt to Parse a frame that doesn't include a line or column number.\r\n * ----------------------------------\r\n * > Note: this WILL also match lines with a line or line and column number, you should attempt to match with\r\n * both FULL_STACK_FRAME_1 and FULL_STACK_FRAME_2 first to avoid false positives.\r\n *\r\n * **Unexpected Invalid Matches** (Matches that should be avoided -- by using the FULL_STACK_FRAME_1 and FULL_STACK_FRAME_2 first)\r\n * - at https://localhost:44365/static/node_bundles/@microsoft/blah/js/bundle.js:144112:27\r\n * - at https://localhost:44365/static/node_bundles/@microsoft/blah/js/bundle.js:144112:27\r\n *\r\n * **Primary focus of the matching (run FULL_STACK_FRAME_1 first)**\r\n * - at functionName@filename\r\n * - at functionName (filename)\r\n * - at functionName filename\r\n * - at filename <- Will actuall match this as the \"method\" and not the filename (care should be taken to avoid this)\r\n * - functionName@filename\r\n * - functionName (filename)\r\n * - functionName filename\r\n * - functionName\r\n *\r\n * **Secondary matches** (The line and column numbers will be included with the matched filename)\r\n * - at functionName (filename:lineNumber:columnNumber)\r\n * - at functionName (filename:lineNumber)\r\n * - at filename:lineNumber:columnNumber\r\n * - at filename:lineNumber\r\n * - at functionName@filename:lineNumber:columnNumber\r\n * - at functionName@filename:lineNumber\r\n * - functionName (filename:lineNumber:columnNumber)\r\n * - functionName (filename:lineNumber)\r\n * - filename:lineNumber:columnNumber\r\n * - filename:lineNumber\r\n * - functionName@filename:lineNumber:columnNumber\r\n * - functionName@filename:lineNumber\r\n */\r\nvar FULL_STACK_FRAME_3 = /^(?:\\s{0,50}at)?\\s{0,50}([^\\@\\()\\s]+)?\\s{0,50}(?:\\s|\\@|\\()\\s{0,5}([^\\(\\s\\n\\)\\]]+)\\)?$/;\r\n/**\r\n * Attempt to extract the filename (with or without line and column numbers) from a string.\r\n * ----------------------------------\r\n * > Note: this will only match the filename (with any line or column numbers) and will\r\n * > return what looks like the filename, however, it will also match random strings that\r\n * > look like a filename, so care should be taken to ensure that the filename is actually\r\n * > a filename before using it.\r\n * >\r\n * > It is recommended to use this in conjunction with the FULL_STACK_FRAME_1, FULL_STACK_FRAME_2, and FULL_STACK_FRAME_3\r\n * > to ensure first to reduce false matches, if all of these fail then you can use this to extract the filename from a random\r\n * > strings to identify any potential filename from a known stack frame line.\r\n *\r\n * **Known Invalid matching**\r\n *\r\n * This regex will basically match any \"final\" string of a line or one that is trailed by a comma, so this should not\r\n * be used as the \"only\" matching regex, but rather as a final fallback to extract the filename from a string.\r\n * If you are certain that the string line is a stack frame and not part of the exception message (lines before the stack)\r\n * or trailing comments, then you can use this to extract the filename and then further parse with PARSE_FILENAME_LINE_COL\r\n * and PARSE_FILENAME_LINE_ONLY to extract any potential the line and column numbers.\r\n *\r\n * **Primary focus of the matching**\r\n * - at (anonymous) @ VM60:1\r\n * - Line 21 of linked script file://localhost/C:/Temp/stacktrace.js\r\n * - Line 11 of inline#1 script in http://localhost:3000/static/js/main.206f4846.js:2:296748\r\n * - Line 68 of inline#2 script in file://localhost/teststack.html\r\n * - at Global code (http://example.com/stacktrace.js:11:1)\r\n */\r\nvar EXTRACT_FILENAME = /(?:^|\\(|\\s{0,10}[\\w\\)]+\\@)?([^\\(\\n\\s\\]\\)]+)(?:\\:([0-9]+)(?:\\:([0-9]+))?)?\\)?(?:,|$)/;\r\n/**\r\n * Attempt to extract the filename, line number, and column number from a string.\r\n */\r\nvar PARSE_FILENAME_LINE_COL = /([^\\(\\s\\n]+):([0-9]+):([0-9]+)$/;\r\n/**\r\n * Attempt to extract the filename and line number from a string.\r\n */\r\nvar PARSE_FILENAME_LINE_ONLY = /([^\\(\\s\\n]+):([0-9]+)$/;\r\nvar NoMethod = \"\";\r\nvar strError = \"error\";\r\nvar strStack = \"stack\";\r\nvar strStackDetails = \"stackDetails\";\r\nvar strErrorSrc = \"errorSrc\";\r\nvar strMessage = \"message\";\r\nvar strDescription = \"description\";\r\nvar _parseSequence = [\r\n { re: FULL_STACK_FRAME_1, len: 5, m: 1, fn: 2, ln: 3, col: 4 },\r\n { chk: _ignoreNative, pre: _scrubAnonymous, re: FULL_STACK_FRAME_2, len: 4, m: 1, fn: 2, ln: 3 },\r\n { re: FULL_STACK_FRAME_3, len: 3, m: 1, fn: 2, hdl: _handleFilename },\r\n { re: EXTRACT_FILENAME, len: 2, fn: 1, hdl: _handleFilename }\r\n];\r\nfunction _scrubAnonymous(frame) {\r\n return frame.replace(/(\\(anonymous\\))/, \"\");\r\n}\r\nfunction _ignoreNative(frame) {\r\n return strIndexOf(frame, \"[native\") < 0;\r\n}\r\nfunction _stringify(value, convertToString) {\r\n var result = value;\r\n if (result && !isString(result)) {\r\n if (JSON && JSON[_DYN_STRINGIFY /* @min:%2estringify */]) {\r\n result = JSON[_DYN_STRINGIFY /* @min:%2estringify */](value);\r\n if (convertToString && (!result || result === \"{}\")) {\r\n if (isFunction(value[_DYN_TO_STRING /* @min:%2etoString */])) {\r\n result = value[_DYN_TO_STRING /* @min:%2etoString */]();\r\n }\r\n else {\r\n result = \"\" + value;\r\n }\r\n }\r\n }\r\n else {\r\n result = \"\" + value + \" - (Missing JSON.stringify)\";\r\n }\r\n }\r\n return result || \"\";\r\n}\r\nfunction _formatMessage(theEvent, errorType) {\r\n var evtMessage = theEvent;\r\n if (theEvent) {\r\n if (evtMessage && !isString(evtMessage)) {\r\n evtMessage = theEvent[strMessage] || theEvent[strDescription] || evtMessage;\r\n }\r\n // Make sure the message is a string\r\n if (evtMessage && !isString(evtMessage)) {\r\n // tslint:disable-next-line: prefer-conditional-expression\r\n evtMessage = _stringify(evtMessage, true);\r\n }\r\n if (theEvent[\"filename\"]) {\r\n // Looks like an event object with filename\r\n evtMessage = evtMessage + \" @\" + (theEvent[\"filename\"] || \"\") + \":\" + (theEvent[\"lineno\"] || \"?\") + \":\" + (theEvent[\"colno\"] || \"?\");\r\n }\r\n }\r\n // Automatically add the error type to the message if it does already appear to be present\r\n if (errorType && errorType !== \"String\" && errorType !== \"Object\" && errorType !== \"Error\" && strIndexOf(evtMessage || \"\", errorType) === -1) {\r\n evtMessage = errorType + \": \" + evtMessage;\r\n }\r\n return evtMessage || \"\";\r\n}\r\nfunction _isExceptionDetailsInternal(value) {\r\n try {\r\n if (isObject(value)) {\r\n return \"hasFullStack\" in value && \"typeName\" in value;\r\n }\r\n }\r\n catch (e) {\r\n // This can happen with some native browser objects, but should not happen for the type we are checking for\r\n }\r\n return false;\r\n}\r\nfunction _isExceptionInternal(value) {\r\n try {\r\n if (isObject(value)) {\r\n return (\"ver\" in value && \"exceptions\" in value && \"properties\" in value);\r\n }\r\n }\r\n catch (e) {\r\n // This can happen with some native browser objects, but should not happen for the type we are checking for\r\n }\r\n return false;\r\n}\r\nfunction _isStackDetails(details) {\r\n return details && details.src && isString(details.src) && details.obj && isArray(details.obj);\r\n}\r\nfunction _convertStackObj(errorStack) {\r\n var src = errorStack || \"\";\r\n if (!isString(src)) {\r\n if (isString(src[strStack])) {\r\n src = src[strStack];\r\n }\r\n else {\r\n src = \"\" + src;\r\n }\r\n }\r\n var items = src[_DYN_SPLIT /* @min:%2esplit */](\"\\n\");\r\n return {\r\n src: src,\r\n obj: items\r\n };\r\n}\r\nfunction _getOperaStack(errorMessage) {\r\n var stack = [];\r\n var lines = errorMessage[_DYN_SPLIT /* @min:%2esplit */](\"\\n\");\r\n for (var lp = 0; lp < lines[_DYN_LENGTH /* @min:%2elength */]; lp++) {\r\n var entry = lines[lp];\r\n if (lines[lp + 1]) {\r\n entry += \"@\" + lines[lp + 1];\r\n lp++;\r\n }\r\n stack[_DYN_PUSH /* @min:%2epush */](entry);\r\n }\r\n return {\r\n src: errorMessage,\r\n obj: stack\r\n };\r\n}\r\nfunction _getStackFromErrorObj(errorObj) {\r\n var details = null;\r\n if (errorObj) {\r\n try {\r\n /* Using bracket notation is support older browsers (IE 7/8 -- dont remember the version) that throw when using dot\r\n notation for undefined objects and we don't want to loose the error from being reported */\r\n if (errorObj[strStack]) {\r\n // Chrome/Firefox\r\n details = _convertStackObj(errorObj[strStack]);\r\n }\r\n else if (errorObj[strError] && errorObj[strError][strStack]) {\r\n // Edge error event provides the stack and error object\r\n details = _convertStackObj(errorObj[strError][strStack]);\r\n }\r\n else if (errorObj[\"exception\"] && errorObj.exception[strStack]) {\r\n details = _convertStackObj(errorObj.exception[strStack]);\r\n }\r\n else if (_isStackDetails(errorObj)) {\r\n details = errorObj;\r\n }\r\n else if (_isStackDetails(errorObj[strStackDetails])) {\r\n details = errorObj[strStackDetails];\r\n }\r\n else if (getWindow() && getWindow()[\"opera\"] && errorObj[strMessage]) {\r\n // Opera\r\n details = _getOperaStack(errorObj[_DYN_MESSAGE /* @min:%2emessage */]);\r\n }\r\n else if (errorObj[\"reason\"] && errorObj.reason[strStack]) {\r\n // UnhandledPromiseRejection\r\n details = _convertStackObj(errorObj.reason[strStack]);\r\n }\r\n else if (isString(errorObj)) {\r\n details = _convertStackObj(errorObj);\r\n }\r\n else {\r\n var evtMessage = errorObj[strMessage] || errorObj[strDescription] || \"\";\r\n if (isString(errorObj[strErrorSrc])) {\r\n if (evtMessage) {\r\n evtMessage += \"\\n\";\r\n }\r\n evtMessage += \" from \" + errorObj[strErrorSrc];\r\n }\r\n if (evtMessage) {\r\n details = _convertStackObj(evtMessage);\r\n }\r\n }\r\n }\r\n catch (e) {\r\n // something unexpected happened so to avoid failing to report any error lets swallow the exception\r\n // and fallback to the callee/caller method\r\n details = _convertStackObj(e);\r\n }\r\n }\r\n return details || {\r\n src: \"\",\r\n obj: null\r\n };\r\n}\r\nfunction _formatStackTrace(stackDetails) {\r\n var stack = \"\";\r\n if (stackDetails) {\r\n if (stackDetails.obj) {\r\n stack = stackDetails.obj.join(\"\\n\");\r\n }\r\n else {\r\n stack = stackDetails.src || \"\";\r\n }\r\n }\r\n return stack;\r\n}\r\nfunction _parseStack(stack) {\r\n var parsedStack;\r\n var frames = stack.obj;\r\n if (frames && frames[_DYN_LENGTH /* @min:%2elength */] > 0) {\r\n parsedStack = [];\r\n var level_1 = 0;\r\n var foundStackStart_1 = false;\r\n var totalSizeInBytes_1 = 0;\r\n arrForEach(frames, function (frame) {\r\n if (foundStackStart_1 || _isStackFrame(frame)) {\r\n var theFrame = asString(frame);\r\n // Once we have found the first stack frame we treat the rest of the lines as part of the stack\r\n foundStackStart_1 = true;\r\n var parsedFrame = _extractStackFrame(theFrame, level_1);\r\n if (parsedFrame) {\r\n totalSizeInBytes_1 += parsedFrame[_DYN_SIZE_IN_BYTES /* @min:%2esizeInBytes */];\r\n parsedStack[_DYN_PUSH /* @min:%2epush */](parsedFrame);\r\n level_1++;\r\n }\r\n }\r\n });\r\n // DP Constraint - exception parsed stack must be < 32KB\r\n // remove frames from the middle to meet the threshold\r\n var exceptionParsedStackThreshold = 32 * 1024;\r\n if (totalSizeInBytes_1 > exceptionParsedStackThreshold) {\r\n var left = 0;\r\n var right = parsedStack[_DYN_LENGTH /* @min:%2elength */] - 1;\r\n var size = 0;\r\n var acceptedLeft = left;\r\n var acceptedRight = right;\r\n while (left < right) {\r\n // check size\r\n var lSize = parsedStack[left][_DYN_SIZE_IN_BYTES /* @min:%2esizeInBytes */];\r\n var rSize = parsedStack[right][_DYN_SIZE_IN_BYTES /* @min:%2esizeInBytes */];\r\n size += lSize + rSize;\r\n if (size > exceptionParsedStackThreshold) {\r\n // remove extra frames from the middle\r\n var howMany = acceptedRight - acceptedLeft + 1;\r\n parsedStack.splice(acceptedLeft, howMany);\r\n break;\r\n }\r\n // update pointers\r\n acceptedLeft = left;\r\n acceptedRight = right;\r\n left++;\r\n right--;\r\n }\r\n }\r\n }\r\n return parsedStack;\r\n}\r\nfunction _getErrorType(errorType) {\r\n // Gets the Error Type by passing the constructor (used to get the true type of native error object).\r\n var typeName = \"\";\r\n if (errorType) {\r\n typeName = errorType.typeName || errorType[_DYN_NAME /* @min:%2ename */] || \"\";\r\n if (!typeName) {\r\n try {\r\n var funcNameRegex = /function (.{1,200})\\(/;\r\n var results = (funcNameRegex).exec((errorType).constructor[_DYN_TO_STRING /* @min:%2etoString */]());\r\n typeName = (results && results[_DYN_LENGTH /* @min:%2elength */] > 1) ? results[1] : \"\";\r\n }\r\n catch (e) {\r\n // eslint-disable-next-line no-empty -- Ignoring any failures as nothing we can do\r\n }\r\n }\r\n }\r\n return typeName;\r\n}\r\n/**\r\n * Formats the provided errorObj for display and reporting, it may be a String, Object, integer or undefined depending on the browser.\r\n * @param errorObj - The supplied errorObj\r\n */\r\nexport function _formatErrorCode(errorObj) {\r\n if (errorObj) {\r\n try {\r\n if (!isString(errorObj)) {\r\n var errorType = _getErrorType(errorObj);\r\n var result = _stringify(errorObj, false);\r\n if (!result || result === \"{}\") {\r\n if (errorObj[strError]) {\r\n // Looks like an MS Error Event\r\n errorObj = errorObj[strError];\r\n errorType = _getErrorType(errorObj);\r\n }\r\n result = _stringify(errorObj, true);\r\n }\r\n if (strIndexOf(result, errorType) !== 0 && errorType !== \"String\") {\r\n return errorType + \":\" + result;\r\n }\r\n return result;\r\n }\r\n }\r\n catch (e) {\r\n // eslint-disable-next-line no-empty -- Ignoring any failures as nothing we can do\r\n }\r\n }\r\n // Fallback to just letting the object format itself into a string\r\n return \"\" + (errorObj || \"\");\r\n}\r\nvar Exception = /** @class */ (function () {\r\n /**\r\n * Constructs a new instance of the ExceptionTelemetry object\r\n */\r\n function Exception(logger, exception, properties, measurements, severityLevel, id) {\r\n this.aiDataContract = {\r\n ver: 1 /* FieldType.Required */,\r\n exceptions: 1 /* FieldType.Required */,\r\n severityLevel: 0 /* FieldType.Default */,\r\n properties: 0 /* FieldType.Default */,\r\n measurements: 0 /* FieldType.Default */\r\n };\r\n var _self = this;\r\n _self.ver = 2; // TODO: handle the CS\"4.0\" ==> breeze 2 conversion in a better way\r\n if (!_isExceptionInternal(exception)) {\r\n if (!properties) {\r\n properties = {};\r\n }\r\n if (id) {\r\n properties.id = id;\r\n }\r\n _self[_DYN_EXCEPTIONS /* @min:%2eexceptions */] = [_createExceptionDetails(logger, exception, properties)];\r\n _self[_DYN_PROPERTIES /* @min:%2eproperties */] = dataSanitizeProperties(logger, properties);\r\n _self[_DYN_MEASUREMENTS /* @min:%2emeasurements */] = dataSanitizeMeasurements(logger, measurements);\r\n if (severityLevel) {\r\n _self[_DYN_SEVERITY_LEVEL /* @min:%2eseverityLevel */] = severityLevel;\r\n }\r\n if (id) {\r\n _self.id = id;\r\n }\r\n }\r\n else {\r\n _self[_DYN_EXCEPTIONS /* @min:%2eexceptions */] = exception[_DYN_EXCEPTIONS /* @min:%2eexceptions */] || [];\r\n _self[_DYN_PROPERTIES /* @min:%2eproperties */] = exception[_DYN_PROPERTIES /* @min:%2eproperties */];\r\n _self[_DYN_MEASUREMENTS /* @min:%2emeasurements */] = exception[_DYN_MEASUREMENTS /* @min:%2emeasurements */];\r\n if (exception[_DYN_SEVERITY_LEVEL /* @min:%2eseverityLevel */]) {\r\n _self[_DYN_SEVERITY_LEVEL /* @min:%2eseverityLevel */] = exception[_DYN_SEVERITY_LEVEL /* @min:%2eseverityLevel */];\r\n }\r\n if (exception.id) {\r\n _self.id = exception.id;\r\n exception[_DYN_PROPERTIES /* @min:%2eproperties */].id = exception.id;\r\n }\r\n if (exception[_DYN_PROBLEM_GROUP /* @min:%2eproblemGroup */]) {\r\n _self[_DYN_PROBLEM_GROUP /* @min:%2eproblemGroup */] = exception[_DYN_PROBLEM_GROUP /* @min:%2eproblemGroup */];\r\n }\r\n // bool/int types, use isNullOrUndefined\r\n if (!isNullOrUndefined(exception[_DYN_IS_MANUAL /* @min:%2eisManual */])) {\r\n _self[_DYN_IS_MANUAL /* @min:%2eisManual */] = exception[_DYN_IS_MANUAL /* @min:%2eisManual */];\r\n }\r\n }\r\n }\r\n Exception.CreateAutoException = function (message, url, lineNumber, columnNumber, error, evt, stack, errorSrc) {\r\n var _a;\r\n var errorType = _getErrorType(error || evt || message);\r\n return _a = {},\r\n _a[_DYN_MESSAGE /* @min:message */] = _formatMessage(message, errorType),\r\n _a.url = url,\r\n _a.lineNumber = lineNumber,\r\n _a.columnNumber = columnNumber,\r\n _a.error = _formatErrorCode(error || evt || message),\r\n _a.evt = _formatErrorCode(evt || message),\r\n _a[_DYN_TYPE_NAME /* @min:typeName */] = errorType,\r\n _a.stackDetails = _getStackFromErrorObj(stack || error || evt),\r\n _a.errorSrc = errorSrc,\r\n _a;\r\n };\r\n Exception.CreateFromInterface = function (logger, exception, properties, measurements) {\r\n var exceptions = exception[_DYN_EXCEPTIONS /* @min:%2eexceptions */]\r\n && arrMap(exception[_DYN_EXCEPTIONS /* @min:%2eexceptions */], function (ex) { return _createExDetailsFromInterface(logger, ex); });\r\n var exceptionData = new Exception(logger, __assign(__assign({}, exception), { exceptions: exceptions }), properties, measurements);\r\n return exceptionData;\r\n };\r\n Exception.prototype.toInterface = function () {\r\n var _a;\r\n var _b = this, exceptions = _b.exceptions, properties = _b.properties, measurements = _b.measurements, severityLevel = _b.severityLevel, problemGroup = _b.problemGroup, id = _b.id, isManual = _b.isManual;\r\n var exceptionDetailsInterface = exceptions instanceof Array\r\n && arrMap(exceptions, function (exception) { return exception.toInterface(); })\r\n || undefined;\r\n return _a = {\r\n ver: \"4.0\"\r\n },\r\n _a[_DYN_EXCEPTIONS /* @min:exceptions */] = exceptionDetailsInterface,\r\n _a.severityLevel = severityLevel,\r\n _a.properties = properties,\r\n _a.measurements = measurements,\r\n _a.problemGroup = problemGroup,\r\n _a.id = id,\r\n _a.isManual = isManual,\r\n _a;\r\n };\r\n /**\r\n * Creates a simple exception with 1 stack frame. Useful for manual constracting of exception.\r\n */\r\n Exception.CreateSimpleException = function (message, typeName, assembly, fileName, details, line) {\r\n var _a;\r\n return {\r\n exceptions: [\r\n (_a = {},\r\n _a[_DYN_HAS_FULL_STACK /* @min:hasFullStack */] = true,\r\n _a.message = message,\r\n _a.stack = details,\r\n _a.typeName = typeName,\r\n _a)\r\n ]\r\n };\r\n };\r\n Exception.envelopeType = \"Microsoft.ApplicationInsights.{0}.Exception\";\r\n Exception.dataType = \"ExceptionData\";\r\n Exception.formatError = _formatErrorCode;\r\n return Exception;\r\n}());\r\nexport { Exception };\r\nvar exDetailsAiDataContract = objFreeze({\r\n id: 0 /* FieldType.Default */,\r\n outerId: 0 /* FieldType.Default */,\r\n typeName: 1 /* FieldType.Required */,\r\n message: 1 /* FieldType.Required */,\r\n hasFullStack: 0 /* FieldType.Default */,\r\n stack: 0 /* FieldType.Default */,\r\n parsedStack: 2 /* FieldType.Array */\r\n});\r\nfunction _toInterface() {\r\n var _a;\r\n var _self = this;\r\n var parsedStack = isArray(_self[_DYN_PARSED_STACK /* @min:%2eparsedStack */])\r\n && arrMap(_self[_DYN_PARSED_STACK /* @min:%2eparsedStack */], function (frame) { return _parsedFrameToInterface(frame); });\r\n var exceptionDetailsInterface = (_a = {\r\n id: _self.id,\r\n outerId: _self.outerId,\r\n typeName: _self[_DYN_TYPE_NAME /* @min:%2etypeName */],\r\n message: _self[_DYN_MESSAGE /* @min:%2emessage */],\r\n hasFullStack: _self[_DYN_HAS_FULL_STACK /* @min:%2ehasFullStack */],\r\n stack: _self[strStack]\r\n },\r\n _a[_DYN_PARSED_STACK /* @min:parsedStack */] = parsedStack || undefined,\r\n _a);\r\n return exceptionDetailsInterface;\r\n}\r\nexport function _createExceptionDetails(logger, exception, properties) {\r\n var _a;\r\n var id;\r\n var outerId;\r\n var typeName;\r\n var message;\r\n var hasFullStack;\r\n var theStack;\r\n var parsedStack;\r\n if (!_isExceptionDetailsInternal(exception)) {\r\n var error = exception;\r\n var evt = error && error.evt;\r\n if (!isError(error)) {\r\n error = error[strError] || evt || error;\r\n }\r\n typeName = dataSanitizeString(logger, _getErrorType(error)) || strNotSpecified;\r\n message = dataSanitizeMessage(logger, _formatMessage(exception || error, typeName)) || strNotSpecified;\r\n var stack = exception[strStackDetails] || _getStackFromErrorObj(exception);\r\n parsedStack = _parseStack(stack);\r\n // after parsedStack is inited, iterate over each frame object, sanitize its assembly field\r\n if (isArray(parsedStack)) {\r\n arrMap(parsedStack, function (frame) {\r\n frame[_DYN_ASSEMBLY /* @min:%2eassembly */] = dataSanitizeString(logger, frame[_DYN_ASSEMBLY /* @min:%2eassembly */]);\r\n frame[_DYN_FILE_NAME /* @min:%2efileName */] = dataSanitizeString(logger, frame[_DYN_FILE_NAME /* @min:%2efileName */]);\r\n });\r\n }\r\n theStack = dataSanitizeException(logger, _formatStackTrace(stack));\r\n hasFullStack = isArray(parsedStack) && parsedStack[_DYN_LENGTH /* @min:%2elength */] > 0;\r\n if (properties) {\r\n properties[_DYN_TYPE_NAME /* @min:%2etypeName */] = properties[_DYN_TYPE_NAME /* @min:%2etypeName */] || typeName;\r\n }\r\n }\r\n else {\r\n typeName = exception[_DYN_TYPE_NAME /* @min:%2etypeName */];\r\n message = exception[_DYN_MESSAGE /* @min:%2emessage */];\r\n theStack = exception[strStack];\r\n parsedStack = exception[_DYN_PARSED_STACK /* @min:%2eparsedStack */] || [];\r\n hasFullStack = exception[_DYN_HAS_FULL_STACK /* @min:%2ehasFullStack */];\r\n }\r\n return _a = {},\r\n _a[_DYN_AI_DATA_CONTRACT /* @min:aiDataContract */] = exDetailsAiDataContract,\r\n _a.id = id,\r\n _a.outerId = outerId,\r\n _a[_DYN_TYPE_NAME /* @min:typeName */] = typeName,\r\n _a[_DYN_MESSAGE /* @min:message */] = message,\r\n _a[_DYN_HAS_FULL_STACK /* @min:hasFullStack */] = hasFullStack,\r\n _a.stack = theStack,\r\n _a[_DYN_PARSED_STACK /* @min:parsedStack */] = parsedStack,\r\n _a.toInterface = _toInterface,\r\n _a;\r\n}\r\nexport function _createExDetailsFromInterface(logger, exception) {\r\n var parsedStack = (isArray(exception[_DYN_PARSED_STACK /* @min:%2eparsedStack */])\r\n && arrMap(exception[_DYN_PARSED_STACK /* @min:%2eparsedStack */], function (frame) { return _stackFrameFromInterface(frame); }))\r\n || exception[_DYN_PARSED_STACK /* @min:%2eparsedStack */];\r\n var exceptionDetails = _createExceptionDetails(logger, __assign(__assign({}, exception), { parsedStack: parsedStack }));\r\n return exceptionDetails;\r\n}\r\nfunction _parseFilename(theFrame, fileName) {\r\n var lineCol = fileName[_DYN_MATCH /* @min:%2ematch */](PARSE_FILENAME_LINE_COL);\r\n if (lineCol && lineCol[_DYN_LENGTH /* @min:%2elength */] >= 4) {\r\n theFrame[_DYN_FILE_NAME /* @min:%2efileName */] = lineCol[1];\r\n theFrame[_DYN_LINE /* @min:%2eline */] = parseInt(lineCol[2]);\r\n }\r\n else {\r\n var lineNo = fileName[_DYN_MATCH /* @min:%2ematch */](PARSE_FILENAME_LINE_ONLY);\r\n if (lineNo && lineNo[_DYN_LENGTH /* @min:%2elength */] >= 3) {\r\n theFrame[_DYN_FILE_NAME /* @min:%2efileName */] = lineNo[1];\r\n theFrame[_DYN_LINE /* @min:%2eline */] = parseInt(lineNo[2]);\r\n }\r\n else {\r\n theFrame[_DYN_FILE_NAME /* @min:%2efileName */] = fileName;\r\n }\r\n }\r\n}\r\nfunction _handleFilename(theFrame, sequence, matches) {\r\n var filename = theFrame[_DYN_FILE_NAME /* @min:%2efileName */];\r\n if (sequence.fn && matches && matches[_DYN_LENGTH /* @min:%2elength */] > sequence.fn) {\r\n if (sequence.ln && matches[_DYN_LENGTH /* @min:%2elength */] > sequence.ln) {\r\n filename = strTrim(matches[sequence.fn] || \"\");\r\n theFrame[_DYN_LINE /* @min:%2eline */] = parseInt(strTrim(matches[sequence.ln] || \"\")) || 0;\r\n }\r\n else {\r\n filename = strTrim(matches[sequence.fn] || \"\");\r\n }\r\n }\r\n if (filename) {\r\n _parseFilename(theFrame, filename);\r\n }\r\n}\r\nfunction _isStackFrame(frame) {\r\n var result = false;\r\n if (frame && isString(frame)) {\r\n var trimmedFrame = strTrim(frame);\r\n if (trimmedFrame) {\r\n result = IS_FRAME.test(trimmedFrame);\r\n }\r\n }\r\n return result;\r\n}\r\nvar stackFrameAiDataContract = objFreeze({\r\n level: 1 /* FieldType.Required */,\r\n method: 1 /* FieldType.Required */,\r\n assembly: 0 /* FieldType.Default */,\r\n fileName: 0 /* FieldType.Default */,\r\n line: 0 /* FieldType.Default */\r\n});\r\nexport function _extractStackFrame(frame, level) {\r\n var _a;\r\n var theFrame;\r\n if (frame && isString(frame) && strTrim(frame)) {\r\n theFrame = (_a = {},\r\n _a[_DYN_AI_DATA_CONTRACT /* @min:aiDataContract */] = stackFrameAiDataContract,\r\n _a[_DYN_LEVEL /* @min:level */] = level,\r\n _a[_DYN_ASSEMBLY /* @min:assembly */] = strTrim(frame),\r\n _a[_DYN_METHOD /* @min:method */] = NoMethod,\r\n _a.fileName = \"\",\r\n _a.line = 0,\r\n _a[_DYN_SIZE_IN_BYTES /* @min:sizeInBytes */] = 0,\r\n _a);\r\n var idx = 0;\r\n while (idx < _parseSequence[_DYN_LENGTH /* @min:%2elength */]) {\r\n var sequence = _parseSequence[idx];\r\n if (sequence.chk && !sequence.chk(frame)) {\r\n break;\r\n }\r\n if (sequence.pre) {\r\n frame = sequence.pre(frame);\r\n }\r\n // Attempt to \"parse\" the stack frame\r\n var matches = frame[_DYN_MATCH /* @min:%2ematch */](sequence.re);\r\n if (matches && matches[_DYN_LENGTH /* @min:%2elength */] >= sequence.len) {\r\n if (sequence.m) {\r\n theFrame[_DYN_METHOD /* @min:%2emethod */] = strTrim(matches[sequence.m] || NoMethod);\r\n }\r\n if (sequence.hdl) {\r\n // Run any custom handler\r\n sequence.hdl(theFrame, sequence, matches);\r\n }\r\n else if (sequence.fn) {\r\n if (sequence.ln) {\r\n theFrame[_DYN_FILE_NAME /* @min:%2efileName */] = strTrim(matches[sequence.fn] || \"\");\r\n theFrame[_DYN_LINE /* @min:%2eline */] = parseInt(strTrim(matches[sequence.ln] || \"\")) || 0;\r\n }\r\n else {\r\n _parseFilename(theFrame, matches[sequence.fn] || \"\");\r\n }\r\n }\r\n // We found a match so stop looking\r\n break;\r\n }\r\n idx++;\r\n }\r\n }\r\n return _populateFrameSizeInBytes(theFrame);\r\n}\r\nfunction _stackFrameFromInterface(frame) {\r\n var _a;\r\n var parsedFrame = (_a = {},\r\n _a[_DYN_AI_DATA_CONTRACT /* @min:aiDataContract */] = stackFrameAiDataContract,\r\n _a.level = frame[_DYN_LEVEL /* @min:%2elevel */],\r\n _a.method = frame[_DYN_METHOD /* @min:%2emethod */],\r\n _a.assembly = frame[_DYN_ASSEMBLY /* @min:%2eassembly */],\r\n _a.fileName = frame[_DYN_FILE_NAME /* @min:%2efileName */],\r\n _a.line = frame[_DYN_LINE /* @min:%2eline */],\r\n _a[_DYN_SIZE_IN_BYTES /* @min:sizeInBytes */] = 0,\r\n _a);\r\n return _populateFrameSizeInBytes(parsedFrame);\r\n}\r\nfunction _populateFrameSizeInBytes(frame) {\r\n var sizeInBytes = STACKFRAME_BASE_SIZE;\r\n if (frame) {\r\n sizeInBytes += frame.method[_DYN_LENGTH /* @min:%2elength */];\r\n sizeInBytes += frame.assembly[_DYN_LENGTH /* @min:%2elength */];\r\n sizeInBytes += frame.fileName[_DYN_LENGTH /* @min:%2elength */];\r\n sizeInBytes += frame.level.toString()[_DYN_LENGTH /* @min:%2elength */];\r\n sizeInBytes += frame.line.toString()[_DYN_LENGTH /* @min:%2elength */];\r\n frame[_DYN_SIZE_IN_BYTES /* @min:%2esizeInBytes */] = sizeInBytes;\r\n }\r\n return frame;\r\n}\r\nexport function _parsedFrameToInterface(frame) {\r\n return {\r\n level: frame[_DYN_LEVEL /* @min:%2elevel */],\r\n method: frame[_DYN_METHOD /* @min:%2emethod */],\r\n assembly: frame[_DYN_ASSEMBLY /* @min:%2eassembly */],\r\n fileName: frame[_DYN_FILE_NAME /* @min:%2efileName */],\r\n line: frame[_DYN_LINE /* @min:%2eline */]\r\n };\r\n}\r\n//# sourceMappingURL=Exception.js.map","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\n\"use strict\";\r\nimport { strShimUndefined } from \"@microsoft/applicationinsights-shims\";\r\nimport { strSubstr, strSubstring } from \"@nevware21/ts-utils\";\r\nimport { _DYN_LENGTH } from \"../__DynamicConstants\";\r\nimport { STR_EMPTY } from \"./InternalConstants\";\r\nimport { random32 } from \"./RandomHelper\";\r\n// Added to help with minfication\r\nexport var Undefined = strShimUndefined;\r\nexport function newGuid() {\r\n var uuid = generateW3CId();\r\n return strSubstring(uuid, 0, 8) + \"-\" + strSubstring(uuid, 8, 12) + \"-\" + strSubstring(uuid, 12, 16) + \"-\" + strSubstring(uuid, 16, 20) + \"-\" + strSubstring(uuid, 20);\r\n}\r\n/**\r\n * The strEndsWith() method determines whether a string ends with the characters of a specified string, returning true or false as appropriate.\r\n * @param value - The value to check whether it ends with the search value.\r\n * @param search - The characters to be searched for at the end of the value.\r\n * @returns true if the given search value is found at the end of the string, otherwise false.\r\n */\r\nexport function strEndsWith(value, search) {\r\n if (value && search) {\r\n var len = value[_DYN_LENGTH /* @min:%2elength */];\r\n var start = len - search[_DYN_LENGTH /* @min:%2elength */];\r\n return strSubstring(value, start >= 0 ? start : 0, len) === search;\r\n }\r\n return false;\r\n}\r\n/**\r\n * generate W3C trace id\r\n */\r\nexport function generateW3CId() {\r\n var hexValues = [\"0\", \"1\", \"2\", \"3\", \"4\", \"5\", \"6\", \"7\", \"8\", \"9\", \"a\", \"b\", \"c\", \"d\", \"e\", \"f\"];\r\n // rfc4122 version 4 UUID without dashes and with lowercase letters\r\n var oct = STR_EMPTY, tmp;\r\n for (var a = 0; a < 4; a++) {\r\n tmp = random32();\r\n oct +=\r\n hexValues[tmp & 0xF] +\r\n hexValues[tmp >> 4 & 0xF] +\r\n hexValues[tmp >> 8 & 0xF] +\r\n hexValues[tmp >> 12 & 0xF] +\r\n hexValues[tmp >> 16 & 0xF] +\r\n hexValues[tmp >> 20 & 0xF] +\r\n hexValues[tmp >> 24 & 0xF] +\r\n hexValues[tmp >> 28 & 0xF];\r\n }\r\n // \"Set the two most significant bits (bits 6 and 7) of the clock_seq_hi_and_reserved to zero and one, respectively\"\r\n var clockSequenceHi = hexValues[8 + (random32() & 0x03) | 0];\r\n return strSubstr(oct, 0, 8) + strSubstr(oct, 9, 4) + \"4\" + strSubstr(oct, 13, 3) + clockSequenceHi + strSubstr(oct, 16, 3) + strSubstr(oct, 19, 12);\r\n}\r\n//# sourceMappingURL=CoreUtils.js.map","import { arrForEach, isArray, isString, strLeft, strTrim } from \"@nevware21/ts-utils\";\r\nimport { _DYN_GET_ATTRIBUTE, _DYN_LENGTH, _DYN_PUSH, _DYN_SPAN_ID, _DYN_SPLIT, _DYN_TO_LOWER_CASE, _DYN_TRACE_FLAGS, _DYN_TRACE_ID, _DYN_VERSION } from \"../__DynamicConstants\";\r\nimport { generateW3CId } from \"./CoreUtils\";\r\nimport { findMetaTag, findNamedServerTiming } from \"./EnvUtils\";\r\nimport { STR_EMPTY } from \"./InternalConstants\";\r\n// using {0,16} for leading and trailing whitespace just to constrain the possible runtime of a random string\r\nvar TRACE_PARENT_REGEX = /^([\\da-f]{2})-([\\da-f]{32})-([\\da-f]{16})-([\\da-f]{2})(-[^\\s]{1,64})?$/i;\r\nvar DEFAULT_VERSION = \"00\";\r\nvar INVALID_VERSION = \"ff\";\r\nvar INVALID_TRACE_ID = \"00000000000000000000000000000000\";\r\nvar INVALID_SPAN_ID = \"0000000000000000\";\r\nvar SAMPLED_FLAG = 0x01;\r\nfunction _isValid(value, len, invalidValue) {\r\n if (value && value[_DYN_LENGTH /* @min:%2elength */] === len && value !== invalidValue) {\r\n return !!value.match(/^[\\da-f]*$/i);\r\n }\r\n return false;\r\n}\r\nfunction _formatValue(value, len, defValue) {\r\n if (_isValid(value, len)) {\r\n return value;\r\n }\r\n return defValue;\r\n}\r\nfunction _formatFlags(value) {\r\n if (isNaN(value) || value < 0 || value > 255) {\r\n value = 0x01;\r\n }\r\n var result = value.toString(16);\r\n while (result[_DYN_LENGTH /* @min:%2elength */] < 2) {\r\n result = \"0\" + result;\r\n }\r\n return result;\r\n}\r\n/**\r\n * Create a new ITraceParent instance using the provided values.\r\n * @param traceId - The traceId to use, when invalid a new random W3C id will be generated.\r\n * @param spanId - The parent/span id to use, a new random value will be generated if it is invalid.\r\n * @param flags - The traceFlags to use, defaults to zero (0) if not supplied or invalid\r\n * @param version - The version to used, defaults to version \"01\" if not supplied or invalid.\r\n * @returns\r\n */\r\nexport function createTraceParent(traceId, spanId, flags, version) {\r\n var _a;\r\n return _a = {},\r\n _a[_DYN_VERSION /* @min:version */] = _isValid(version, 2, INVALID_VERSION) ? version : DEFAULT_VERSION,\r\n _a[_DYN_TRACE_ID /* @min:traceId */] = isValidTraceId(traceId) ? traceId : generateW3CId(),\r\n _a[_DYN_SPAN_ID /* @min:spanId */] = isValidSpanId(spanId) ? spanId : strLeft(generateW3CId(), 16),\r\n _a.traceFlags = flags >= 0 && flags <= 0xFF ? flags : 1,\r\n _a;\r\n}\r\n/**\r\n * Attempt to parse the provided string as a W3C TraceParent header value (https://www.w3.org/TR/trace-context/#traceparent-header)\r\n *\r\n * @param value - The value to be parsed\r\n * @param selectIdx - If the found value is comma separated which is the preferred entry to select, defaults to the first\r\n * @returns\r\n */\r\nexport function parseTraceParent(value, selectIdx) {\r\n var _a;\r\n if (!value) {\r\n // Don't pass a null/undefined or empty string\r\n return null;\r\n }\r\n if (isArray(value)) {\r\n // The value may have been encoded on the page into an array so handle this automatically\r\n value = value[0] || \"\";\r\n }\r\n if (!value || !isString(value) || value[_DYN_LENGTH /* @min:%2elength */] > 8192) {\r\n // limit potential processing based on total length\r\n return null;\r\n }\r\n if (value.indexOf(\",\") !== -1) {\r\n var values = value[_DYN_SPLIT /* @min:%2esplit */](\",\");\r\n value = values[selectIdx > 0 && values[_DYN_LENGTH /* @min:%2elength */] > selectIdx ? selectIdx : 0];\r\n }\r\n // See https://www.w3.org/TR/trace-context/#versioning-of-traceparent\r\n var match = TRACE_PARENT_REGEX.exec(strTrim(value));\r\n if (!match || // No match\r\n match[1] === INVALID_VERSION || // version ff is forbidden\r\n match[2] === INVALID_TRACE_ID || // All zeros is considered to be invalid\r\n match[3] === INVALID_SPAN_ID) { // All zeros is considered to be invalid\r\n return null;\r\n }\r\n return _a = {\r\n version: (match[1] || STR_EMPTY)[_DYN_TO_LOWER_CASE /* @min:%2etoLowerCase */](),\r\n traceId: (match[2] || STR_EMPTY)[_DYN_TO_LOWER_CASE /* @min:%2etoLowerCase */](),\r\n spanId: (match[3] || STR_EMPTY)[_DYN_TO_LOWER_CASE /* @min:%2etoLowerCase */]()\r\n },\r\n _a[_DYN_TRACE_FLAGS /* @min:traceFlags */] = parseInt(match[4], 16),\r\n _a;\r\n}\r\n/**\r\n * Is the provided W3c Trace Id a valid string representation, it must be a 32-character string\r\n * of lowercase hexadecimal characters for example, 4bf92f3577b34da6a3ce929d0e0e4736.\r\n * If all characters as zero (00000000000000000000000000000000) it will be considered an invalid value.\r\n * @param value - The W3c trace Id to be validated\r\n * @returns true if valid otherwise false\r\n */\r\nexport function isValidTraceId(value) {\r\n return _isValid(value, 32, INVALID_TRACE_ID);\r\n}\r\n/**\r\n * Is the provided W3c span id (aka. parent id) a valid string representation, it must be a 16-character\r\n * string of lowercase hexadecimal characters, for example, 00f067aa0ba902b7.\r\n * If all characters are zero (0000000000000000) this is considered an invalid value.\r\n * @param value - The W3c span id to be validated\r\n * @returns true if valid otherwise false\r\n */\r\nexport function isValidSpanId(value) {\r\n return _isValid(value, 16, INVALID_SPAN_ID);\r\n}\r\n/**\r\n * Validates that the provided ITraceParent instance conforms to the currently supported specifications\r\n * @param value - The parsed traceParent value\r\n * @returns\r\n */\r\nexport function isValidTraceParent(value) {\r\n if (!value ||\r\n !_isValid(value[_DYN_VERSION /* @min:%2eversion */], 2, INVALID_VERSION) ||\r\n !_isValid(value[_DYN_TRACE_ID /* @min:%2etraceId */], 32, INVALID_TRACE_ID) ||\r\n !_isValid(value[_DYN_SPAN_ID /* @min:%2espanId */], 16, INVALID_SPAN_ID) ||\r\n !_isValid(_formatFlags(value[_DYN_TRACE_FLAGS /* @min:%2etraceFlags */]), 2)) {\r\n // Each known field must contain a valid value\r\n return false;\r\n }\r\n return true;\r\n}\r\n/**\r\n * Is the parsed traceParent indicating that the trace is currently sampled.\r\n * @param value - The parsed traceParent value\r\n * @returns\r\n */\r\nexport function isSampledFlag(value) {\r\n if (isValidTraceParent(value)) {\r\n return (value[_DYN_TRACE_FLAGS /* @min:%2etraceFlags */] & SAMPLED_FLAG) === SAMPLED_FLAG;\r\n }\r\n return false;\r\n}\r\n/**\r\n * Format the ITraceParent value as a string using the supported and know version formats.\r\n * So even if the passed traceParent is a later version the string value returned from this\r\n * function will convert it to only the known version formats.\r\n * This currently only supports version \"00\" and invalid \"ff\"\r\n * @param value - The parsed traceParent value\r\n * @returns\r\n */\r\nexport function formatTraceParent(value) {\r\n if (value) {\r\n // Special Note: This only supports formatting as version 00, future versions should encode any known supported version\r\n // So parsing a future version will populate the correct version value but reformatting will reduce it to version 00.\r\n var flags = _formatFlags(value[_DYN_TRACE_FLAGS /* @min:%2etraceFlags */]);\r\n if (!_isValid(flags, 2)) {\r\n flags = \"01\";\r\n }\r\n var version = value[_DYN_VERSION /* @min:%2eversion */] || DEFAULT_VERSION;\r\n if (version !== \"00\" && version !== \"ff\") {\r\n // Reduce version to \"00\"\r\n version = DEFAULT_VERSION;\r\n }\r\n // Format as version 00\r\n return \"\".concat(version.toLowerCase(), \"-\").concat(_formatValue(value.traceId, 32, INVALID_TRACE_ID).toLowerCase(), \"-\").concat(_formatValue(value.spanId, 16, INVALID_SPAN_ID).toLowerCase(), \"-\").concat(flags.toLowerCase());\r\n }\r\n return \"\";\r\n}\r\n/**\r\n * Helper function to fetch the passed traceparent from the page, looking for it as a meta-tag or a Server-Timing header.\r\n * @param selectIdx - If the found value is comma separated which is the preferred entry to select, defaults to the first\r\n * @returns\r\n */\r\nexport function findW3cTraceParent(selectIdx) {\r\n var name = \"traceparent\";\r\n var traceParent = parseTraceParent(findMetaTag(name), selectIdx);\r\n if (!traceParent) {\r\n traceParent = parseTraceParent(findNamedServerTiming(name), selectIdx);\r\n }\r\n return traceParent;\r\n}\r\n/**\r\n * Find all script tags in the provided document and return the information about them.\r\n * @param doc - The document to search for script tags\r\n * @returns\r\n */\r\nexport function findAllScripts(doc) {\r\n var scripts = doc.getElementsByTagName(\"script\");\r\n var result = [];\r\n arrForEach(scripts, function (script) {\r\n var src = script[_DYN_GET_ATTRIBUTE /* @min:%2egetAttribute */](\"src\");\r\n if (src) {\r\n var crossOrigin = script[_DYN_GET_ATTRIBUTE /* @min:%2egetAttribute */](\"crossorigin\");\r\n var async = script.hasAttribute(\"async\") === true;\r\n var defer = script.hasAttribute(\"defer\") === true;\r\n var referrerPolicy = script[_DYN_GET_ATTRIBUTE /* @min:%2egetAttribute */](\"referrerpolicy\");\r\n var info = { url: src };\r\n if (crossOrigin) {\r\n info.crossOrigin = crossOrigin;\r\n }\r\n if (async) {\r\n info.async = async;\r\n }\r\n if (defer) {\r\n info.defer = defer;\r\n }\r\n if (referrerPolicy) {\r\n info.referrerPolicy = referrerPolicy;\r\n }\r\n result[_DYN_PUSH /* @min:%2epush */](info);\r\n }\r\n });\r\n return result;\r\n}\r\n//# sourceMappingURL=W3cTraceParent.js.map","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\nimport { createValueMap } from \"@microsoft/applicationinsights-core-js\";\r\nexport var RequestHeaders = createValueMap({\r\n requestContextHeader: [0 /* eRequestHeaders.requestContextHeader */, \"Request-Context\"],\r\n requestContextTargetKey: [1 /* eRequestHeaders.requestContextTargetKey */, \"appId\"],\r\n requestContextAppIdFormat: [2 /* eRequestHeaders.requestContextAppIdFormat */, \"appId=cid-v1:\"],\r\n requestIdHeader: [3 /* eRequestHeaders.requestIdHeader */, \"Request-Id\"],\r\n traceParentHeader: [4 /* eRequestHeaders.traceParentHeader */, \"traceparent\"],\r\n traceStateHeader: [5 /* eRequestHeaders.traceStateHeader */, \"tracestate\"],\r\n sdkContextHeader: [6 /* eRequestHeaders.sdkContextHeader */, \"Sdk-Context\"],\r\n sdkContextHeaderAppIdRequest: [7 /* eRequestHeaders.sdkContextHeaderAppIdRequest */, \"appId\"],\r\n requestContextHeaderLowerCase: [8 /* eRequestHeaders.requestContextHeaderLowerCase */, \"request-context\"]\r\n});\r\n//# sourceMappingURL=RequestResponseHeaders.js.map","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\nimport { getDocument, isString } from \"@microsoft/applicationinsights-core-js\";\r\nimport { _DYN_LENGTH, _DYN_MATCH, _DYN_PATHNAME, _DYN_TO_LOWER_CASE } from \"./__DynamicConstants\";\r\nvar _document = getDocument() || {};\r\nvar _htmlAnchorIdx = 0;\r\n// Use an array of temporary values as it's possible for multiple calls to parseUrl() will be called with different URLs\r\n// Using a cache size of 5 for now as it current depth usage is at least 2, so adding a minor buffer to handle future updates\r\nvar _htmlAnchorElement = [null, null, null, null, null];\r\nexport function urlParseUrl(url) {\r\n var anchorIdx = _htmlAnchorIdx;\r\n var anchorCache = _htmlAnchorElement;\r\n var tempAnchor = anchorCache[anchorIdx];\r\n if (!_document.createElement) {\r\n // Always create the temp instance if createElement is not available\r\n tempAnchor = { host: urlParseHost(url, true) };\r\n }\r\n else if (!anchorCache[anchorIdx]) {\r\n // Create and cache the unattached anchor instance\r\n tempAnchor = anchorCache[anchorIdx] = _document.createElement(\"a\");\r\n }\r\n tempAnchor.href = url;\r\n // Move the cache index forward\r\n anchorIdx++;\r\n if (anchorIdx >= anchorCache[_DYN_LENGTH /* @min:%2elength */]) {\r\n anchorIdx = 0;\r\n }\r\n _htmlAnchorIdx = anchorIdx;\r\n return tempAnchor;\r\n}\r\nexport function urlGetAbsoluteUrl(url) {\r\n var result;\r\n var a = urlParseUrl(url);\r\n if (a) {\r\n result = a.href;\r\n }\r\n return result;\r\n}\r\nexport function urlGetPathName(url) {\r\n var result;\r\n var a = urlParseUrl(url);\r\n if (a) {\r\n result = a[_DYN_PATHNAME /* @min:%2epathname */];\r\n }\r\n return result;\r\n}\r\nexport function urlGetCompleteUrl(method, absoluteUrl) {\r\n if (method) {\r\n return method.toUpperCase() + \" \" + absoluteUrl;\r\n }\r\n return absoluteUrl;\r\n}\r\n// Fallback method to grab host from url if document.createElement method is not available\r\nexport function urlParseHost(url, inclPort) {\r\n var fullHost = urlParseFullHost(url, inclPort) || \"\";\r\n if (fullHost) {\r\n var match = fullHost[_DYN_MATCH /* @min:%2ematch */](/(www\\d{0,5}\\.)?([^\\/:]{1,256})(:\\d{1,20})?/i);\r\n if (match != null && match[_DYN_LENGTH /* @min:%2elength */] > 3 && isString(match[2]) && match[2][_DYN_LENGTH /* @min:%2elength */] > 0) {\r\n return match[2] + (match[3] || \"\");\r\n }\r\n }\r\n return fullHost;\r\n}\r\nexport function urlParseFullHost(url, inclPort) {\r\n var result = null;\r\n if (url) {\r\n var match = url[_DYN_MATCH /* @min:%2ematch */](/(\\w{1,150}):\\/\\/([^\\/:]{1,256})(:\\d{1,20})?/i);\r\n if (match != null && match[_DYN_LENGTH /* @min:%2elength */] > 2 && isString(match[2]) && match[2][_DYN_LENGTH /* @min:%2elength */] > 0) {\r\n result = match[2] || \"\";\r\n if (inclPort && match[_DYN_LENGTH /* @min:%2elength */] > 2) {\r\n var protocol = (match[1] || \"\")[_DYN_TO_LOWER_CASE /* @min:%2etoLowerCase */]();\r\n var port = match[3] || \"\";\r\n // IE includes the standard port so pass it off if it's the same as the protocol\r\n if (protocol === \"http\" && port === \":80\") {\r\n port = \"\";\r\n }\r\n else if (protocol === \"https\" && port === \":443\") {\r\n port = \"\";\r\n }\r\n result += port;\r\n }\r\n }\r\n }\r\n return result;\r\n}\r\n//# sourceMappingURL=UrlHelperFuncs.js.map","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\nimport { arrForEach, arrIndexOf, dateNow, getPerformance, isNullOrUndefined, isValidSpanId, isValidTraceId } from \"@microsoft/applicationinsights-core-js\";\r\nimport { strIndexOf } from \"@nevware21/ts-utils\";\r\nimport { DEFAULT_BREEZE_ENDPOINT, DEFAULT_BREEZE_PATH } from \"./Constants\";\r\nimport { RequestHeaders } from \"./RequestResponseHeaders\";\r\nimport { dataSanitizeString } from \"./Telemetry/Common/DataSanitizer\";\r\nimport { urlParseFullHost, urlParseUrl } from \"./UrlHelperFuncs\";\r\nimport { _DYN_CORRELATION_HEADER_E0, _DYN_LENGTH, _DYN_NAME, _DYN_PATHNAME, _DYN_SPLIT, _DYN_TO_LOWER_CASE } from \"./__DynamicConstants\";\r\n// listing only non-geo specific locations\r\nvar _internalEndpoints = [\r\n DEFAULT_BREEZE_ENDPOINT + DEFAULT_BREEZE_PATH,\r\n \"https://breeze.aimon.applicationinsights.io\" + DEFAULT_BREEZE_PATH,\r\n \"https://dc-int.services.visualstudio.com\" + DEFAULT_BREEZE_PATH\r\n];\r\nvar _correlationIdPrefix = \"cid-v1:\";\r\nexport function isInternalApplicationInsightsEndpoint(endpointUrl) {\r\n return arrIndexOf(_internalEndpoints, endpointUrl[_DYN_TO_LOWER_CASE /* @min:%2etoLowerCase */]()) !== -1;\r\n}\r\nexport function correlationIdSetPrefix(prefix) {\r\n _correlationIdPrefix = prefix;\r\n}\r\nexport function correlationIdGetPrefix() {\r\n return _correlationIdPrefix;\r\n}\r\n/**\r\n * Checks if a request url is not on a excluded domain list and if it is safe to add correlation headers.\r\n * Headers are always included if the current domain matches the request domain. If they do not match (CORS),\r\n * they are regex-ed across correlationHeaderDomains and correlationHeaderExcludedDomains to determine if headers are included.\r\n * Some environments don't give information on currentHost via window.location.host (e.g. Cordova). In these cases, the user must\r\n * manually supply domains to include correlation headers on. Else, no headers will be included at all.\r\n */\r\nexport function correlationIdCanIncludeCorrelationHeader(config, requestUrl, currentHost) {\r\n if (!requestUrl || (config && config.disableCorrelationHeaders)) {\r\n return false;\r\n }\r\n if (config && config[_DYN_CORRELATION_HEADER_E0 /* @min:%2ecorrelationHeaderExcludePatterns */]) {\r\n for (var i = 0; i < config.correlationHeaderExcludePatterns[_DYN_LENGTH /* @min:%2elength */]; i++) {\r\n if (config[_DYN_CORRELATION_HEADER_E0 /* @min:%2ecorrelationHeaderExcludePatterns */][i].test(requestUrl)) {\r\n return false;\r\n }\r\n }\r\n }\r\n var requestHost = urlParseUrl(requestUrl).host[_DYN_TO_LOWER_CASE /* @min:%2etoLowerCase */]();\r\n if (requestHost && (strIndexOf(requestHost, \":443\") !== -1 || strIndexOf(requestHost, \":80\") !== -1)) {\r\n // [Bug #1260] IE can include the port even for http and https URLs so if present\r\n // try and parse it to remove if it matches the default protocol port\r\n requestHost = (urlParseFullHost(requestUrl, true) || \"\")[_DYN_TO_LOWER_CASE /* @min:%2etoLowerCase */]();\r\n }\r\n if ((!config || !config.enableCorsCorrelation) && (requestHost && requestHost !== currentHost)) {\r\n return false;\r\n }\r\n var includedDomains = config && config.correlationHeaderDomains;\r\n if (includedDomains) {\r\n var matchExists_1;\r\n arrForEach(includedDomains, function (domain) {\r\n var regex = new RegExp(domain.toLowerCase().replace(/\\\\/g, \"\\\\\\\\\").replace(/\\./g, \"\\\\.\").replace(/\\*/g, \".*\"));\r\n matchExists_1 = matchExists_1 || regex.test(requestHost);\r\n });\r\n if (!matchExists_1) {\r\n return false;\r\n }\r\n }\r\n var excludedDomains = config && config.correlationHeaderExcludedDomains;\r\n if (!excludedDomains || excludedDomains[_DYN_LENGTH /* @min:%2elength */] === 0) {\r\n return true;\r\n }\r\n for (var i = 0; i < excludedDomains[_DYN_LENGTH /* @min:%2elength */]; i++) {\r\n var regex = new RegExp(excludedDomains[i].toLowerCase().replace(/\\\\/g, \"\\\\\\\\\").replace(/\\./g, \"\\\\.\").replace(/\\*/g, \".*\"));\r\n if (regex.test(requestHost)) {\r\n return false;\r\n }\r\n }\r\n // if we don't know anything about the requestHost, require the user to use included/excludedDomains.\r\n // Previously we always returned false for a falsy requestHost\r\n return requestHost && requestHost[_DYN_LENGTH /* @min:%2elength */] > 0;\r\n}\r\n/**\r\n * Combines target appId and target role name from response header.\r\n */\r\nexport function correlationIdGetCorrelationContext(responseHeader) {\r\n if (responseHeader) {\r\n var correlationId = correlationIdGetCorrelationContextValue(responseHeader, RequestHeaders[1 /* eRequestHeaders.requestContextTargetKey */]);\r\n if (correlationId && correlationId !== _correlationIdPrefix) {\r\n return correlationId;\r\n }\r\n }\r\n}\r\n/**\r\n * Gets key from correlation response header\r\n */\r\nexport function correlationIdGetCorrelationContextValue(responseHeader, key) {\r\n if (responseHeader) {\r\n var keyValues = responseHeader[_DYN_SPLIT /* @min:%2esplit */](\",\");\r\n for (var i = 0; i < keyValues[_DYN_LENGTH /* @min:%2elength */]; ++i) {\r\n var keyValue = keyValues[i][_DYN_SPLIT /* @min:%2esplit */](\"=\");\r\n if (keyValue[_DYN_LENGTH /* @min:%2elength */] === 2 && keyValue[0] === key) {\r\n return keyValue[1];\r\n }\r\n }\r\n }\r\n}\r\nexport function AjaxHelperParseDependencyPath(logger, absoluteUrl, method, commandName) {\r\n var target, name = commandName, data = commandName;\r\n if (absoluteUrl && absoluteUrl[_DYN_LENGTH /* @min:%2elength */] > 0) {\r\n var parsedUrl = urlParseUrl(absoluteUrl);\r\n target = parsedUrl.host;\r\n if (!name) {\r\n if (parsedUrl[_DYN_PATHNAME /* @min:%2epathname */] != null) {\r\n var pathName = (parsedUrl.pathname[_DYN_LENGTH /* @min:%2elength */] === 0) ? \"/\" : parsedUrl[_DYN_PATHNAME /* @min:%2epathname */];\r\n if (pathName.charAt(0) !== \"/\") {\r\n pathName = \"/\" + pathName;\r\n }\r\n data = parsedUrl[_DYN_PATHNAME /* @min:%2epathname */];\r\n name = dataSanitizeString(logger, method ? method + \" \" + pathName : pathName);\r\n }\r\n else {\r\n name = dataSanitizeString(logger, absoluteUrl);\r\n }\r\n }\r\n }\r\n else {\r\n target = commandName;\r\n name = commandName;\r\n }\r\n return {\r\n target: target,\r\n name: name,\r\n data: data\r\n };\r\n}\r\nexport function dateTimeUtilsNow() {\r\n // returns the window or webworker performance object\r\n var perf = getPerformance();\r\n if (perf && perf.now && perf.timing) {\r\n var now = perf.now() + perf.timing.navigationStart;\r\n // Known issue with IE where this calculation can be negative, so if it is then ignore and fallback\r\n if (now > 0) {\r\n return now;\r\n }\r\n }\r\n return dateNow();\r\n}\r\nexport function dateTimeUtilsDuration(start, end) {\r\n var result = null;\r\n if (start !== 0 && end !== 0 && !isNullOrUndefined(start) && !isNullOrUndefined(end)) {\r\n result = end - start;\r\n }\r\n return result;\r\n}\r\n/**\r\n * Creates a IDistributedTraceContext from an optional telemetryTrace\r\n * @param telemetryTrace - The telemetryTrace instance that is being wrapped\r\n * @param parentCtx - An optional parent distributed trace instance, almost always undefined as this scenario is only used in the case of multiple property handlers.\r\n * @returns A new IDistributedTraceContext instance that is backed by the telemetryTrace or temporary object\r\n */\r\nexport function createDistributedTraceContextFromTrace(telemetryTrace, parentCtx) {\r\n var trace = telemetryTrace || {};\r\n return {\r\n getName: function () {\r\n return trace[_DYN_NAME /* @min:%2ename */];\r\n },\r\n setName: function (newValue) {\r\n parentCtx && parentCtx.setName(newValue);\r\n trace[_DYN_NAME /* @min:%2ename */] = newValue;\r\n },\r\n getTraceId: function () {\r\n return trace.traceID;\r\n },\r\n setTraceId: function (newValue) {\r\n parentCtx && parentCtx.setTraceId(newValue);\r\n if (isValidTraceId(newValue)) {\r\n trace.traceID = newValue;\r\n }\r\n },\r\n getSpanId: function () {\r\n return trace.parentID;\r\n },\r\n setSpanId: function (newValue) {\r\n parentCtx && parentCtx.setSpanId(newValue);\r\n if (isValidSpanId(newValue)) {\r\n trace.parentID = newValue;\r\n }\r\n },\r\n getTraceFlags: function () {\r\n return trace.traceFlags;\r\n },\r\n setTraceFlags: function (newTraceFlags) {\r\n parentCtx && parentCtx.setTraceFlags(newTraceFlags);\r\n trace.traceFlags = newTraceFlags;\r\n }\r\n };\r\n}\r\n//# sourceMappingURL=Util.js.map","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\nimport { msToTimeSpan } from \"../HelperFuncs\";\r\nimport { AjaxHelperParseDependencyPath } from \"../Util\";\r\nimport { _DYN_DURATION, _DYN_MEASUREMENTS, _DYN_NAME, _DYN_PROPERTIES } from \"../__DynamicConstants\";\r\nimport { dataSanitizeMeasurements, dataSanitizeProperties, dataSanitizeString, dataSanitizeUrl } from \"./Common/DataSanitizer\";\r\nvar RemoteDependencyData = /** @class */ (function () {\r\n /**\r\n * Constructs a new instance of the RemoteDependencyData object\r\n */\r\n function RemoteDependencyData(logger, id, absoluteUrl, commandName, value, success, resultCode, method, requestAPI, correlationContext, properties, measurements) {\r\n if (requestAPI === void 0) { requestAPI = \"Ajax\"; }\r\n this.aiDataContract = {\r\n id: 1 /* FieldType.Required */,\r\n ver: 1 /* FieldType.Required */,\r\n name: 0 /* FieldType.Default */,\r\n resultCode: 0 /* FieldType.Default */,\r\n duration: 0 /* FieldType.Default */,\r\n success: 0 /* FieldType.Default */,\r\n data: 0 /* FieldType.Default */,\r\n target: 0 /* FieldType.Default */,\r\n type: 0 /* FieldType.Default */,\r\n properties: 0 /* FieldType.Default */,\r\n measurements: 0 /* FieldType.Default */,\r\n kind: 0 /* FieldType.Default */,\r\n value: 0 /* FieldType.Default */,\r\n count: 0 /* FieldType.Default */,\r\n min: 0 /* FieldType.Default */,\r\n max: 0 /* FieldType.Default */,\r\n stdDev: 0 /* FieldType.Default */,\r\n dependencyKind: 0 /* FieldType.Default */,\r\n dependencySource: 0 /* FieldType.Default */,\r\n commandName: 0 /* FieldType.Default */,\r\n dependencyTypeName: 0 /* FieldType.Default */\r\n };\r\n var _self = this;\r\n _self.ver = 2;\r\n _self.id = id;\r\n _self[_DYN_DURATION /* @min:%2eduration */] = msToTimeSpan(value);\r\n _self.success = success;\r\n _self.resultCode = resultCode + \"\";\r\n _self.type = dataSanitizeString(logger, requestAPI);\r\n var dependencyFields = AjaxHelperParseDependencyPath(logger, absoluteUrl, method, commandName);\r\n _self.data = dataSanitizeUrl(logger, commandName) || dependencyFields.data; // get a value from hosturl if commandName not available\r\n _self.target = dataSanitizeString(logger, dependencyFields.target);\r\n if (correlationContext) {\r\n _self.target = \"\".concat(_self.target, \" | \").concat(correlationContext);\r\n }\r\n _self[_DYN_NAME /* @min:%2ename */] = dataSanitizeString(logger, dependencyFields[_DYN_NAME /* @min:%2ename */]);\r\n _self[_DYN_PROPERTIES /* @min:%2eproperties */] = dataSanitizeProperties(logger, properties);\r\n _self[_DYN_MEASUREMENTS /* @min:%2emeasurements */] = dataSanitizeMeasurements(logger, measurements);\r\n }\r\n RemoteDependencyData.envelopeType = \"Microsoft.ApplicationInsights.{0}.RemoteDependency\";\r\n RemoteDependencyData.dataType = \"RemoteDependencyData\";\r\n return RemoteDependencyData;\r\n}());\r\nexport { RemoteDependencyData };\r\n//# sourceMappingURL=RemoteDependencyData.js.map","var _a, _b;\r\nimport { arrForEach, arrIndexOf, dumpObj, getDocument, getLazy, getNavigator, isArray, isFunction, isNullOrUndefined, isString, isTruthy, isUndefined, objForEachKey, strEndsWith, strIndexOf, strLeft, strSubstring, strTrim, utcNow } from \"@nevware21/ts-utils\";\r\nimport { cfgDfMerge } from \"../Config/ConfigDefaultHelpers\";\r\nimport { createDynamicConfig, onConfigChange } from \"../Config/DynamicConfig\";\r\nimport { _DYN_ENABLED, _DYN_LENGTH, _DYN_LOGGER, _DYN_PROTOCOL, _DYN_SET_DF, _DYN_SPLIT, _DYN_UNLOAD, _DYN_USER_AGENT } from \"../__DynamicConstants\";\r\nimport { _throwInternal } from \"./DiagnosticLogger\";\r\nimport { getLocation, isIE } from \"./EnvUtils\";\r\nimport { getExceptionName, isNotNullOrUndefined, setValue, strContains } from \"./HelperFuncs\";\r\nimport { STR_DOMAIN, STR_EMPTY, STR_PATH, UNDEFINED_VALUE } from \"./InternalConstants\";\r\nvar strToGMTString = \"toGMTString\";\r\nvar strToUTCString = \"toUTCString\";\r\nvar strCookie = \"cookie\";\r\nvar strExpires = \"expires\";\r\nvar strIsCookieUseDisabled = \"isCookieUseDisabled\";\r\nvar strDisableCookiesUsage = \"disableCookiesUsage\";\r\nvar strConfigCookieMgr = \"_ckMgr\";\r\nvar _supportsCookies = null;\r\nvar _allowUaSameSite = null;\r\nvar _parsedCookieValue = null;\r\nvar _doc;\r\nvar _cookieCache = {};\r\nvar _globalCookieConfig = {};\r\n// // `isCookieUseDisabled` is deprecated, so explicitly casting as a key of IConfiguration to avoid typing error\r\n// // when both isCookieUseDisabled and disableCookiesUsage are used disableCookiesUsage will take precedent, which is\r\n// // why its listed first\r\n/**\r\n * Set the supported dynamic config values as undefined (or an empty object) so that\r\n * any listeners will be informed of any changes.\r\n * Explicitly NOT including the deprecated `isCookieUseDisabled` as we don't want to support\r\n * the v1 deprecated field as dynamic for updates\r\n */\r\nvar rootDefaultConfig = (_a = {\r\n cookieCfg: cfgDfMerge((_b = {},\r\n _b[STR_DOMAIN] = { fb: \"cookieDomain\", dfVal: isNotNullOrUndefined },\r\n _b.path = { fb: \"cookiePath\", dfVal: isNotNullOrUndefined },\r\n _b.enabled = UNDEFINED_VALUE,\r\n _b.ignoreCookies = UNDEFINED_VALUE,\r\n _b.blockedCookies = UNDEFINED_VALUE,\r\n _b)),\r\n cookieDomain: UNDEFINED_VALUE,\r\n cookiePath: UNDEFINED_VALUE\r\n },\r\n _a[strDisableCookiesUsage] = UNDEFINED_VALUE,\r\n _a);\r\nfunction _getDoc() {\r\n !_doc && (_doc = getLazy(function () { return getDocument(); }));\r\n}\r\n/**\r\n * @ignore\r\n * DO NOT USE or export from the module, this is exposed as public to support backward compatibility of previous static utility methods only.\r\n * If you want to manager cookies either use the ICookieMgr available from the core instance via getCookieMgr() or create\r\n * your own instance of the CookieMgr and use that.\r\n * Using this directly for enabling / disabling cookie handling will not only affect your usage but EVERY user of cookies.\r\n * Example, if you are using a shared component that is also using Application Insights you will affect their cookie handling.\r\n * @param logger - The DiagnosticLogger to use for reporting errors.\r\n */\r\nfunction _gblCookieMgr(config, logger) {\r\n // Stash the global instance against the BaseCookieMgr class\r\n var inst = createCookieMgr[strConfigCookieMgr] || _globalCookieConfig[strConfigCookieMgr];\r\n if (!inst) {\r\n // Note: not using the getSetValue() helper as that would require always creating a temporary cookieMgr\r\n // that ultimately is never used\r\n inst = createCookieMgr[strConfigCookieMgr] = createCookieMgr(config, logger);\r\n _globalCookieConfig[strConfigCookieMgr] = inst;\r\n }\r\n return inst;\r\n}\r\nfunction _isMgrEnabled(cookieMgr) {\r\n if (cookieMgr) {\r\n return cookieMgr.isEnabled();\r\n }\r\n return true;\r\n}\r\nfunction _isIgnoredCookie(cookieMgrCfg, name) {\r\n if (name && cookieMgrCfg && isArray(cookieMgrCfg.ignoreCookies)) {\r\n return arrIndexOf(cookieMgrCfg.ignoreCookies, name) !== -1;\r\n }\r\n return false;\r\n}\r\nfunction _isBlockedCookie(cookieMgrCfg, name) {\r\n if (name && cookieMgrCfg && isArray(cookieMgrCfg.blockedCookies)) {\r\n if (arrIndexOf(cookieMgrCfg.blockedCookies, name) !== -1) {\r\n return true;\r\n }\r\n }\r\n return _isIgnoredCookie(cookieMgrCfg, name);\r\n}\r\nfunction _isCfgEnabled(rootConfig, cookieMgrConfig) {\r\n var isCfgEnabled = cookieMgrConfig[_DYN_ENABLED /* @min:%2eenabled */];\r\n if (isNullOrUndefined(isCfgEnabled)) {\r\n // Set the enabled from the provided setting or the legacy root values\r\n var cookieEnabled = void 0;\r\n // This field is deprecated and dynamic updates will not be fully supported\r\n if (!isUndefined(rootConfig[strIsCookieUseDisabled])) {\r\n cookieEnabled = !rootConfig[strIsCookieUseDisabled];\r\n }\r\n // If this value is defined it takes precedent over the above\r\n if (!isUndefined(rootConfig[strDisableCookiesUsage])) {\r\n cookieEnabled = !rootConfig[strDisableCookiesUsage];\r\n }\r\n // Not setting the cookieMgrConfig.enabled as that will update (set) the global dynamic config\r\n // So future \"updates\" then may not be as expected\r\n isCfgEnabled = cookieEnabled;\r\n }\r\n return isCfgEnabled;\r\n}\r\n/**\r\n * Helper to return the ICookieMgr from the core (if not null/undefined) or a default implementation\r\n * associated with the configuration or a legacy default.\r\n * @param core - The AppInsightsCore instance to get the cookie manager from\r\n * @param config - The config to use if the core is not available\r\n * @returns\r\n */\r\nexport function safeGetCookieMgr(core, config) {\r\n var cookieMgr;\r\n if (core) {\r\n // Always returns an instance\r\n cookieMgr = core.getCookieMgr();\r\n }\r\n else if (config) {\r\n var cookieCfg = config.cookieCfg;\r\n if (cookieCfg && cookieCfg[strConfigCookieMgr]) {\r\n cookieMgr = cookieCfg[strConfigCookieMgr];\r\n }\r\n else {\r\n cookieMgr = createCookieMgr(config);\r\n }\r\n }\r\n if (!cookieMgr) {\r\n // Get or initialize the default global (legacy) cookie manager if we couldn't find one\r\n cookieMgr = _gblCookieMgr(config, (core || {})[_DYN_LOGGER /* @min:%2elogger */]);\r\n }\r\n return cookieMgr;\r\n}\r\nexport function createCookieMgr(rootConfig, logger) {\r\n var _a;\r\n var cookieMgrConfig;\r\n var _path;\r\n var _domain;\r\n var unloadHandler;\r\n // Explicitly checking against false, so that setting to undefined will === true\r\n var _enabled;\r\n var _getCookieFn;\r\n var _setCookieFn;\r\n var _delCookieFn;\r\n // Make sure the root config is dynamic as it may be the global config\r\n rootConfig = createDynamicConfig(rootConfig || _globalCookieConfig, null, logger).cfg;\r\n // Will get recalled if the referenced configuration is changed\r\n unloadHandler = onConfigChange(rootConfig, function (details) {\r\n // Make sure the root config has all of the the defaults to the root config to ensure they are dynamic\r\n details[_DYN_SET_DF /* @min:%2esetDf */](details.cfg, rootDefaultConfig);\r\n // Create and apply the defaults to the cookieCfg element\r\n cookieMgrConfig = details.ref(details.cfg, \"cookieCfg\"); // details.setDf(details.cfg.cookieCfg, defaultConfig);\r\n _path = cookieMgrConfig[STR_PATH /* @min:%2epath */] || \"/\";\r\n _domain = cookieMgrConfig[STR_DOMAIN /* @min:%2edomain */];\r\n // Explicitly checking against false, so that setting to undefined will === true\r\n _enabled = _isCfgEnabled(rootConfig, cookieMgrConfig) !== false;\r\n _getCookieFn = cookieMgrConfig.getCookie || _getCookieValue;\r\n _setCookieFn = cookieMgrConfig.setCookie || _setCookieValue;\r\n _delCookieFn = cookieMgrConfig.delCookie || _setCookieValue;\r\n }, logger);\r\n var cookieMgr = (_a = {\r\n isEnabled: function () {\r\n var enabled = _isCfgEnabled(rootConfig, cookieMgrConfig) !== false && _enabled && areCookiesSupported(logger);\r\n // Using an indirect lookup for any global cookie manager to support tree shaking for SDK's\r\n // that don't use the \"applicationinsights-core\" version of the default cookie function\r\n var gblManager = _globalCookieConfig[strConfigCookieMgr];\r\n if (enabled && gblManager && cookieMgr !== gblManager) {\r\n // Make sure the GlobalCookie Manager instance (if not this instance) is also enabled.\r\n // As the global (deprecated) functions may have been called (for backward compatibility)\r\n enabled = _isMgrEnabled(gblManager);\r\n }\r\n return enabled;\r\n },\r\n setEnabled: function (value) {\r\n // Explicitly checking against false, so that setting to undefined will === true\r\n _enabled = value !== false;\r\n cookieMgrConfig[_DYN_ENABLED /* @min:%2eenabled */] = value;\r\n },\r\n set: function (name, value, maxAgeSec, domain, path) {\r\n var result = false;\r\n if (_isMgrEnabled(cookieMgr) && !_isBlockedCookie(cookieMgrConfig, name)) {\r\n var values = {};\r\n var theValue = strTrim(value || STR_EMPTY);\r\n var idx = strIndexOf(theValue, \";\");\r\n if (idx !== -1) {\r\n theValue = strTrim(strLeft(value, idx));\r\n values = _extractParts(strSubstring(value, idx + 1));\r\n }\r\n // Only update domain if not already present (isUndefined) and the value is truthy (not null, undefined or empty string)\r\n setValue(values, STR_DOMAIN, domain || _domain, isTruthy, isUndefined);\r\n if (!isNullOrUndefined(maxAgeSec)) {\r\n var _isIE = isIE();\r\n if (isUndefined(values[strExpires])) {\r\n var nowMs = utcNow();\r\n // Only add expires if not already present\r\n var expireMs = nowMs + (maxAgeSec * 1000);\r\n // Sanity check, if zero or -ve then ignore\r\n if (expireMs > 0) {\r\n var expiry = new Date();\r\n expiry.setTime(expireMs);\r\n setValue(values, strExpires, _formatDate(expiry, !_isIE ? strToUTCString : strToGMTString) || _formatDate(expiry, _isIE ? strToGMTString : strToUTCString) || STR_EMPTY, isTruthy);\r\n }\r\n }\r\n if (!_isIE) {\r\n // Only replace if not already present\r\n setValue(values, \"max-age\", STR_EMPTY + maxAgeSec, null, isUndefined);\r\n }\r\n }\r\n var location_1 = getLocation();\r\n if (location_1 && location_1[_DYN_PROTOCOL /* @min:%2eprotocol */] === \"https:\") {\r\n setValue(values, \"secure\", null, null, isUndefined);\r\n // Only set same site if not also secure\r\n if (_allowUaSameSite === null) {\r\n _allowUaSameSite = !uaDisallowsSameSiteNone((getNavigator() || {})[_DYN_USER_AGENT /* @min:%2euserAgent */]);\r\n }\r\n if (_allowUaSameSite) {\r\n setValue(values, \"SameSite\", \"None\", null, isUndefined);\r\n }\r\n }\r\n setValue(values, STR_PATH, path || _path, null, isUndefined);\r\n //let setCookieFn = cookieMgrConfig.setCookie || _setCookieValue;\r\n _setCookieFn(name, _formatCookieValue(theValue, values));\r\n result = true;\r\n }\r\n return result;\r\n },\r\n get: function (name) {\r\n var value = STR_EMPTY;\r\n if (_isMgrEnabled(cookieMgr) && !_isIgnoredCookie(cookieMgrConfig, name)) {\r\n value = _getCookieFn(name);\r\n }\r\n return value;\r\n },\r\n del: function (name, path) {\r\n var result = false;\r\n if (_isMgrEnabled(cookieMgr)) {\r\n // Only remove the cookie if the manager and cookie support has not been disabled\r\n result = cookieMgr.purge(name, path);\r\n }\r\n return result;\r\n },\r\n purge: function (name, path) {\r\n var _a;\r\n var result = false;\r\n if (areCookiesSupported(logger)) {\r\n // Setting the expiration date in the past immediately removes the cookie\r\n var values = (_a = {},\r\n _a[STR_PATH] = path ? path : \"/\",\r\n _a[strExpires] = \"Thu, 01 Jan 1970 00:00:01 GMT\",\r\n _a);\r\n if (!isIE()) {\r\n // Set max age to expire now\r\n values[\"max-age\"] = \"0\";\r\n }\r\n // let delCookie = cookieMgrConfig.delCookie || _setCookieValue;\r\n _delCookieFn(name, _formatCookieValue(STR_EMPTY, values));\r\n result = true;\r\n }\r\n return result;\r\n }\r\n },\r\n _a[_DYN_UNLOAD /* @min:unload */] = function (isAsync) {\r\n unloadHandler && unloadHandler.rm();\r\n unloadHandler = null;\r\n },\r\n _a);\r\n // Associated this cookie manager with the config\r\n cookieMgr[strConfigCookieMgr] = cookieMgr;\r\n return cookieMgr;\r\n}\r\n/*\r\n* Helper method to tell if document.cookie object is supported by the runtime\r\n*/\r\nexport function areCookiesSupported(logger) {\r\n if (_supportsCookies === null) {\r\n _supportsCookies = false;\r\n !_doc && _getDoc();\r\n try {\r\n var doc = _doc.v || {};\r\n _supportsCookies = doc[strCookie] !== undefined;\r\n }\r\n catch (e) {\r\n _throwInternal(logger, 2 /* eLoggingSeverity.WARNING */, 68 /* _eInternalMessageId.CannotAccessCookie */, \"Cannot access document.cookie - \" + getExceptionName(e), { exception: dumpObj(e) });\r\n }\r\n }\r\n return _supportsCookies;\r\n}\r\nfunction _extractParts(theValue) {\r\n var values = {};\r\n if (theValue && theValue[_DYN_LENGTH /* @min:%2elength */]) {\r\n var parts = strTrim(theValue)[_DYN_SPLIT /* @min:%2esplit */](\";\");\r\n arrForEach(parts, function (thePart) {\r\n thePart = strTrim(thePart || STR_EMPTY);\r\n if (thePart) {\r\n var idx = strIndexOf(thePart, \"=\");\r\n if (idx === -1) {\r\n values[thePart] = null;\r\n }\r\n else {\r\n values[strTrim(strLeft(thePart, idx))] = strTrim(strSubstring(thePart, idx + 1));\r\n }\r\n }\r\n });\r\n }\r\n return values;\r\n}\r\nfunction _formatDate(theDate, func) {\r\n if (isFunction(theDate[func])) {\r\n return theDate[func]();\r\n }\r\n return null;\r\n}\r\nfunction _formatCookieValue(value, values) {\r\n var cookieValue = value || STR_EMPTY;\r\n objForEachKey(values, function (name, theValue) {\r\n cookieValue += \"; \" + name + (!isNullOrUndefined(theValue) ? \"=\" + theValue : STR_EMPTY);\r\n });\r\n return cookieValue;\r\n}\r\nfunction _getCookieValue(name) {\r\n var cookieValue = STR_EMPTY;\r\n !_doc && _getDoc();\r\n if (_doc.v) {\r\n var theCookie = _doc.v[strCookie] || STR_EMPTY;\r\n if (_parsedCookieValue !== theCookie) {\r\n _cookieCache = _extractParts(theCookie);\r\n _parsedCookieValue = theCookie;\r\n }\r\n cookieValue = strTrim(_cookieCache[name] || STR_EMPTY);\r\n }\r\n return cookieValue;\r\n}\r\nfunction _setCookieValue(name, cookieValue) {\r\n !_doc && _getDoc();\r\n if (_doc.v) {\r\n _doc.v[strCookie] = name + \"=\" + cookieValue;\r\n }\r\n}\r\nexport function uaDisallowsSameSiteNone(userAgent) {\r\n if (!isString(userAgent)) {\r\n return false;\r\n }\r\n // Cover all iOS based browsers here. This includes:\r\n // - Safari on iOS 12 for iPhone, iPod Touch, iPad\r\n // - WkWebview on iOS 12 for iPhone, iPod Touch, iPad\r\n // - Chrome on iOS 12 for iPhone, iPod Touch, iPad\r\n // All of which are broken by SameSite=None, because they use the iOS networking stack\r\n if (strContains(userAgent, \"CPU iPhone OS 12\") || strContains(userAgent, \"iPad; CPU OS 12\")) {\r\n return true;\r\n }\r\n // Cover Mac OS X based browsers that use the Mac OS networking stack. This includes:\r\n // - Safari on Mac OS X\r\n // This does not include:\r\n // - Internal browser on Mac OS X\r\n // - Chrome on Mac OS X\r\n // - Chromium on Mac OS X\r\n // Because they do not use the Mac OS networking stack.\r\n if (strContains(userAgent, \"Macintosh; Intel Mac OS X 10_14\") && strContains(userAgent, \"Version/\") && strContains(userAgent, \"Safari\")) {\r\n return true;\r\n }\r\n // Cover Mac OS X internal browsers that use the Mac OS networking stack. This includes:\r\n // - Internal browser on Mac OS X\r\n // This does not include:\r\n // - Safari on Mac OS X\r\n // - Chrome on Mac OS X\r\n // - Chromium on Mac OS X\r\n // Because they do not use the Mac OS networking stack.\r\n if (strContains(userAgent, \"Macintosh; Intel Mac OS X 10_14\") && strEndsWith(userAgent, \"AppleWebKit/605.1.15 (KHTML, like Gecko)\")) {\r\n return true;\r\n }\r\n // Cover Chrome 50-69, because some versions are broken by SameSite=None, and none in this range require it.\r\n // Note: this covers some pre-Chromium Edge versions, but pre-Chromim Edge does not require SameSite=None, so this is fine.\r\n // Note: this regex applies to Windows, Mac OS X, and Linux, deliberately.\r\n if (strContains(userAgent, \"Chrome/5\") || strContains(userAgent, \"Chrome/6\")) {\r\n return true;\r\n }\r\n // Unreal Engine runs Chromium 59, but does not advertise as Chrome until 4.23. Treat versions of Unreal\r\n // that don't specify their Chrome version as lacking support for SameSite=None.\r\n if (strContains(userAgent, \"UnrealEngine\") && !strContains(userAgent, \"Chrome\")) {\r\n return true;\r\n }\r\n // UCBrowser < 12.13.2 ignores Set-Cookie headers with SameSite=None\r\n // NB: this rule isn't complete - you need regex to make a complete rule.\r\n // See: https://www.chromium.org/updates/same-site/incompatible-clients\r\n if (strContains(userAgent, \"UCBrowser/12\") || strContains(userAgent, \"UCBrowser/11\")) {\r\n return true;\r\n }\r\n return false;\r\n}\r\n//# sourceMappingURL=CookieMgr.js.map","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\nimport { getDocument, isFunction } from \"@microsoft/applicationinsights-core-js\";\r\nexport function createDomEvent(eventName) {\r\n var event = null;\r\n if (isFunction(Event)) { // Use Event constructor when available\r\n event = new Event(eventName);\r\n }\r\n else { // Event has no constructor in IE\r\n var doc = getDocument();\r\n if (doc && doc.createEvent) {\r\n event = doc.createEvent(\"Event\");\r\n event.initEvent(eventName, true, true);\r\n }\r\n }\r\n return event;\r\n}\r\n//# sourceMappingURL=DomHelperFuncs.js.map","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\nimport { asString, isBoolean, isFunction, isNullOrUndefined, isString } from \"@nevware21/ts-utils\";\r\nimport { STR_EMPTY } from \"../JavaScriptSDK/InternalConstants\";\r\nimport { _DYN_BLK_VAL, _DYN_TO_LOWER_CASE } from \"../__DynamicConstants\";\r\n/**\r\n * @internal\r\n * @ignore\r\n * @param str\r\n * @param defaultValue\r\n * @returns\r\n */\r\nfunction _stringToBoolOrDefault(theValue, defaultValue, theConfig) {\r\n if (!theValue && isNullOrUndefined(theValue)) {\r\n return defaultValue;\r\n }\r\n if (isBoolean(theValue)) {\r\n return theValue;\r\n }\r\n return asString(theValue)[_DYN_TO_LOWER_CASE /* @min:%2etoLowerCase */]() === \"true\";\r\n}\r\n/**\r\n * Helper which returns an IConfigDefaultCheck instance with the field defined as an object\r\n * that should be merged\r\n * @param defaultValue - The default value to apply it not provided or it's not valid\r\n * @returns a new IConfigDefaultCheck structure\r\n */\r\nexport function cfgDfMerge(defaultValue) {\r\n return {\r\n mrg: true,\r\n v: defaultValue\r\n };\r\n}\r\n/**\r\n * Helper which returns an IConfigDefaultCheck instance with the provided field set function\r\n * @param setter - The IConfigCheckFn function to validate the user provided value\r\n * @param defaultValue - The default value to apply it not provided or it's not valid\r\n * @returns a new IConfigDefaultCheck structure\r\n */\r\nexport function cfgDfSet(setter, defaultValue) {\r\n return {\r\n set: setter,\r\n v: defaultValue\r\n };\r\n}\r\n/**\r\n * Helper which returns an IConfigDefaultCheck instance with the provided field validator\r\n * @param validator - The IConfigCheckFn function to validate the user provided value\r\n * @param defaultValue - The default value to apply it not provided or it's not valid\r\n * @param fallBackName - The fallback configuration name if the current value is not available\r\n * @returns a new IConfigDefaultCheck structure\r\n */\r\nexport function cfgDfValidate(validator, defaultValue, fallBackName) {\r\n return {\r\n fb: fallBackName,\r\n isVal: validator,\r\n v: defaultValue\r\n };\r\n}\r\n/**\r\n * Helper which returns an IConfigDefaultCheck instance that will validate and convert the user\r\n * provided value to a boolean from a string or boolean value\r\n * @param defaultValue - The default value to apply it not provided or it's not valid\r\n * @param fallBackName - The fallback configuration name if the current value is not available\r\n * @returns a new IConfigDefaultCheck structure\r\n */\r\nexport function cfgDfBoolean(defaultValue, fallBackName) {\r\n return {\r\n fb: fallBackName,\r\n set: _stringToBoolOrDefault,\r\n v: !!defaultValue\r\n };\r\n}\r\n/**\r\n * Helper which returns an IConfigDefaultCheck instance that will validate that the user\r\n * provided value is a function.\r\n * @param defaultValue - The default value to apply it not provided or it's not valid\r\n * @returns a new IConfigDefaultCheck structure\r\n */\r\nexport function cfgDfFunc(defaultValue) {\r\n return {\r\n isVal: isFunction,\r\n v: defaultValue || null\r\n };\r\n}\r\n/**\r\n * Helper which returns an IConfigDefaultCheck instance that will validate that the user\r\n * provided value is a function.\r\n * @param defaultValue - The default string value to apply it not provided or it's not valid, defaults to an empty string\r\n * @returns a new IConfigDefaultCheck structure\r\n */\r\nexport function cfgDfString(defaultValue) {\r\n return {\r\n isVal: isString,\r\n v: asString(defaultValue || STR_EMPTY)\r\n };\r\n}\r\n/**\r\n * Helper which returns an IConfigDefaultCheck instance identifying that value associated with this property\r\n * should not have it's properties converted into a dynamic config properties.\r\n * @param defaultValue - The default value to apply it not provided or it's not valid\r\n * @returns a new IConfigDefaultCheck structure\r\n */\r\nexport function cfgDfBlockPropValue(defaultValue) {\r\n var _a;\r\n return _a = {},\r\n _a[_DYN_BLK_VAL /* @min:blkVal */] = true,\r\n _a.v = defaultValue,\r\n _a;\r\n}\r\n//# sourceMappingURL=ConfigDefaultHelpers.js.map","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\nimport { arrForEach, arrIndexOf, getDocument, getWindow, isArray, objForEachKey, objKeys } from \"@nevware21/ts-utils\";\r\nimport { _DYN_HANDLER, _DYN_LENGTH, _DYN_NAME, _DYN_PUSH, _DYN_REPLACE, _DYN_SPLICE, _DYN_SPLIT, _DYN_TYPE } from \"../__DynamicConstants\";\r\nimport { createElmNodeData, createUniqueNamespace } from \"./DataCacheHelper\";\r\nimport { STR_EMPTY } from \"./InternalConstants\";\r\n// Added to help with minfication\r\nvar strOnPrefix = \"on\";\r\nvar strAttachEvent = \"attachEvent\";\r\nvar strAddEventHelper = \"addEventListener\";\r\nvar strDetachEvent = \"detachEvent\";\r\nvar strRemoveEventListener = \"removeEventListener\";\r\nvar strEvents = \"events\";\r\nvar strVisibilityChangeEvt = \"visibilitychange\";\r\nvar strPageHide = \"pagehide\";\r\nvar strPageShow = \"pageshow\";\r\nvar strUnload = \"unload\";\r\nvar strBeforeUnload = \"beforeunload\";\r\nvar strPageHideNamespace = createUniqueNamespace(\"aiEvtPageHide\");\r\nvar strPageShowNamespace = createUniqueNamespace(\"aiEvtPageShow\");\r\nvar rRemoveEmptyNs = /\\.[\\.]+/g;\r\nvar rRemoveTrailingEmptyNs = /[\\.]+$/;\r\nvar _guid = 1;\r\nvar elmNodeData = createElmNodeData(\"events\");\r\nvar eventNamespace = /^([^.]*)(?:\\.(.+)|)/;\r\nfunction _normalizeNamespace(name) {\r\n if (name && name[_DYN_REPLACE /* @min:%2ereplace */]) {\r\n return name[_DYN_REPLACE /* @min:%2ereplace */](/^[\\s\\.]+|(?=[\\s\\.])[\\.\\s]+$/g, STR_EMPTY);\r\n }\r\n return name;\r\n}\r\nfunction _getEvtNamespace(eventName, evtNamespace) {\r\n var _a;\r\n if (evtNamespace) {\r\n var theNamespace_1 = STR_EMPTY;\r\n if (isArray(evtNamespace)) {\r\n theNamespace_1 = STR_EMPTY;\r\n arrForEach(evtNamespace, function (name) {\r\n name = _normalizeNamespace(name);\r\n if (name) {\r\n if (name[0] !== \".\") {\r\n name = \".\" + name;\r\n }\r\n theNamespace_1 += name;\r\n }\r\n });\r\n }\r\n else {\r\n theNamespace_1 = _normalizeNamespace(evtNamespace);\r\n }\r\n if (theNamespace_1) {\r\n if (theNamespace_1[0] !== \".\") {\r\n theNamespace_1 = \".\" + theNamespace_1;\r\n }\r\n // We may only have the namespace and not an eventName\r\n eventName = (eventName || STR_EMPTY) + theNamespace_1;\r\n }\r\n }\r\n var parsedEvent = (eventNamespace.exec(eventName || STR_EMPTY) || []);\r\n return _a = {},\r\n _a[_DYN_TYPE /* @min:type */] = parsedEvent[1],\r\n _a.ns = ((parsedEvent[2] || STR_EMPTY).replace(rRemoveEmptyNs, \".\").replace(rRemoveTrailingEmptyNs, STR_EMPTY)[_DYN_SPLIT /* @min:%2esplit */](\".\").sort()).join(\".\"),\r\n _a;\r\n}\r\n/**\r\n * Get all of the registered events on the target object, this is primarily used for testing cleanup but may also be used by\r\n * applications to remove their own events\r\n * @param target - The EventTarget that has registered events\r\n * @param eventName - [Optional] The name of the event to return the registered handlers and full name (with namespaces)\r\n * @param evtNamespace - [Optional] Additional namespace(s) to append to the event listeners so they can be uniquely identified and removed based on this namespace,\r\n * if the eventName also includes a namespace the namespace(s) are merged into a single namespace\r\n */\r\nexport function __getRegisteredEvents(target, eventName, evtNamespace) {\r\n var theEvents = [];\r\n var eventCache = elmNodeData.get(target, strEvents, {}, false);\r\n var evtName = _getEvtNamespace(eventName, evtNamespace);\r\n objForEachKey(eventCache, function (evtType, registeredEvents) {\r\n arrForEach(registeredEvents, function (value) {\r\n var _a;\r\n if (!evtName[_DYN_TYPE /* @min:%2etype */] || evtName[_DYN_TYPE /* @min:%2etype */] === value.evtName[_DYN_TYPE /* @min:%2etype */]) {\r\n if (!evtName.ns || evtName.ns === evtName.ns) {\r\n theEvents[_DYN_PUSH /* @min:%2epush */]((_a = {},\r\n _a[_DYN_NAME /* @min:name */] = value.evtName[_DYN_TYPE /* @min:%2etype */] + (value.evtName.ns ? \".\" + value.evtName.ns : STR_EMPTY),\r\n _a.handler = value[_DYN_HANDLER /* @min:%2ehandler */],\r\n _a));\r\n }\r\n }\r\n });\r\n });\r\n return theEvents;\r\n}\r\n// Exported for internal unit testing only\r\nfunction _getRegisteredEvents(target, evtName, addDefault) {\r\n if (addDefault === void 0) { addDefault = true; }\r\n var aiEvts = elmNodeData.get(target, strEvents, {}, addDefault);\r\n var registeredEvents = aiEvts[evtName];\r\n if (!registeredEvents) {\r\n registeredEvents = aiEvts[evtName] = [];\r\n }\r\n return registeredEvents;\r\n}\r\nfunction _doDetach(obj, evtName, handlerRef, useCapture) {\r\n if (obj && evtName && evtName[_DYN_TYPE /* @min:%2etype */]) {\r\n if (obj[strRemoveEventListener]) {\r\n obj[strRemoveEventListener](evtName[_DYN_TYPE /* @min:%2etype */], handlerRef, useCapture);\r\n }\r\n else if (obj[strDetachEvent]) {\r\n obj[strDetachEvent](strOnPrefix + evtName[_DYN_TYPE /* @min:%2etype */], handlerRef);\r\n }\r\n }\r\n}\r\nfunction _doAttach(obj, evtName, handlerRef, useCapture) {\r\n var result = false;\r\n if (obj && evtName && evtName[_DYN_TYPE /* @min:%2etype */] && handlerRef) {\r\n if (obj[strAddEventHelper]) {\r\n // all browsers except IE before version 9\r\n obj[strAddEventHelper](evtName[_DYN_TYPE /* @min:%2etype */], handlerRef, useCapture);\r\n result = true;\r\n }\r\n else if (obj[strAttachEvent]) {\r\n // IE before version 9\r\n obj[strAttachEvent](strOnPrefix + evtName[_DYN_TYPE /* @min:%2etype */], handlerRef);\r\n result = true;\r\n }\r\n }\r\n return result;\r\n}\r\nfunction _doUnregister(target, events, evtName, unRegFn) {\r\n var idx = events[_DYN_LENGTH /* @min:%2elength */];\r\n while (idx--) {\r\n var theEvent = events[idx];\r\n if (theEvent) {\r\n if (!evtName.ns || evtName.ns === theEvent.evtName.ns) {\r\n if (!unRegFn || unRegFn(theEvent)) {\r\n _doDetach(target, theEvent.evtName, theEvent[_DYN_HANDLER /* @min:%2ehandler */], theEvent.capture);\r\n // Remove the registered event\r\n events[_DYN_SPLICE /* @min:%2esplice */](idx, 1);\r\n }\r\n }\r\n }\r\n }\r\n}\r\nfunction _unregisterEvents(target, evtName, unRegFn) {\r\n if (evtName[_DYN_TYPE /* @min:%2etype */]) {\r\n _doUnregister(target, _getRegisteredEvents(target, evtName[_DYN_TYPE /* @min:%2etype */]), evtName, unRegFn);\r\n }\r\n else {\r\n var eventCache = elmNodeData.get(target, strEvents, {});\r\n objForEachKey(eventCache, function (evtType, events) {\r\n _doUnregister(target, events, evtName, unRegFn);\r\n });\r\n // Cleanup\r\n if (objKeys(eventCache)[_DYN_LENGTH /* @min:%2elength */] === 0) {\r\n elmNodeData.kill(target, strEvents);\r\n }\r\n }\r\n}\r\nexport function mergeEvtNamespace(theNamespace, namespaces) {\r\n var newNamespaces;\r\n if (namespaces) {\r\n if (isArray(namespaces)) {\r\n newNamespaces = [theNamespace].concat(namespaces);\r\n }\r\n else {\r\n newNamespaces = [theNamespace, namespaces];\r\n }\r\n // resort the namespaces so they are always in order\r\n newNamespaces = (_getEvtNamespace(\"xx\", newNamespaces).ns)[_DYN_SPLIT /* @min:%2esplit */](\".\");\r\n }\r\n else {\r\n newNamespaces = theNamespace;\r\n }\r\n return newNamespaces;\r\n}\r\n/**\r\n * Binds the specified function to an event, so that the function gets called whenever the event fires on the object\r\n * @param obj - Object to add the event too.\r\n * @param eventName - String that specifies any of the standard DHTML Events without \"on\" prefix, if may also include an optional (dot \".\" prefixed)\r\n * namespaces \"click\" \"click.mynamespace\" in addition to specific namespaces.\r\n * @param handlerRef - Pointer that specifies the function to call when event fires\r\n * @param evtNamespace - [Optional] Additional namespace(s) to append to the event listeners so they can be uniquely identified and removed based on this namespace,\r\n * if the eventName also includes a namespace the namespace(s) are merged into a single namespace\r\n * @param useCapture - [Optional] Defaults to false\r\n * @returns True if the function was bound successfully to the event, otherwise false\r\n */\r\nexport function eventOn(target, eventName, handlerRef, evtNamespace, useCapture) {\r\n var _a;\r\n if (useCapture === void 0) { useCapture = false; }\r\n var result = false;\r\n if (target) {\r\n try {\r\n var evtName = _getEvtNamespace(eventName, evtNamespace);\r\n result = _doAttach(target, evtName, handlerRef, useCapture);\r\n if (result && elmNodeData.accept(target)) {\r\n var registeredEvent = (_a = {\r\n guid: _guid++,\r\n evtName: evtName\r\n },\r\n _a[_DYN_HANDLER /* @min:handler */] = handlerRef,\r\n _a.capture = useCapture,\r\n _a);\r\n _getRegisteredEvents(target, evtName.type)[_DYN_PUSH /* @min:%2epush */](registeredEvent);\r\n }\r\n }\r\n catch (e) {\r\n // Just Ignore any error so that we don't break any execution path\r\n }\r\n }\r\n return result;\r\n}\r\n/**\r\n * Removes an event handler for the specified event\r\n * @param Object - to remove the event from\r\n * @param eventName - The name of the event, with optional namespaces or just the namespaces,\r\n * such as \"click\", \"click.mynamespace\" or \".mynamespace\"\r\n * @param handlerRef - The callback function that needs to be removed from the given event, when using a\r\n * namespace (with or without a qualifying event) this may be null to remove all previously attached event handlers\r\n * otherwise this will only remove events with this specific handler.\r\n * @param evtNamespace - [Optional] Additional namespace(s) to append to the event listeners so they can be uniquely identified and removed based on this namespace,\r\n * if the eventName also includes a namespace the namespace(s) are merged into a single namespace\r\n * @param useCapture - [Optional] Defaults to false\r\n */\r\nexport function eventOff(target, eventName, handlerRef, evtNamespace, useCapture) {\r\n if (useCapture === void 0) { useCapture = false; }\r\n if (target) {\r\n try {\r\n var evtName_1 = _getEvtNamespace(eventName, evtNamespace);\r\n var found_1 = false;\r\n _unregisterEvents(target, evtName_1, function (regEvent) {\r\n if ((evtName_1.ns && !handlerRef) || regEvent[_DYN_HANDLER /* @min:%2ehandler */] === handlerRef) {\r\n found_1 = true;\r\n return true;\r\n }\r\n return false;\r\n });\r\n if (!found_1) {\r\n // fallback to try and remove as requested\r\n _doDetach(target, evtName_1, handlerRef, useCapture);\r\n }\r\n }\r\n catch (e) {\r\n // Just Ignore any error so that we don't break any execution path\r\n }\r\n }\r\n}\r\n/**\r\n * Binds the specified function to an event, so that the function gets called whenever the event fires on the object\r\n * @param obj - Object to add the event too.\r\n * @param eventNameWithoutOn - String that specifies any of the standard DHTML Events without \"on\" prefix and optional (dot \".\" prefixed) namespaces \"click\" \"click.mynamespace\".\r\n * @param handlerRef - Pointer that specifies the function to call when event fires\r\n * @param useCapture - [Optional] Defaults to false\r\n * @returns True if the function was bound successfully to the event, otherwise false\r\n */\r\nexport function attachEvent(obj, eventNameWithoutOn, handlerRef, useCapture) {\r\n if (useCapture === void 0) { useCapture = false; }\r\n return eventOn(obj, eventNameWithoutOn, handlerRef, null, useCapture);\r\n}\r\n/**\r\n * Removes an event handler for the specified event\r\n * @param Object - to remove the event from\r\n * @param eventNameWithoutOn - The name of the event, with optional namespaces or just the namespaces,\r\n * such as \"click\", \"click.mynamespace\" or \".mynamespace\"\r\n * @param handlerRef - The callback function that needs to be removed from the given event, when using a\r\n * namespace (with or without a qualifying event) this may be null to remove all previously attached event handlers\r\n * otherwise this will only remove events with this specific handler.\r\n * @param useCapture - [Optional] Defaults to false\r\n */\r\nexport function detachEvent(obj, eventNameWithoutOn, handlerRef, useCapture) {\r\n if (useCapture === void 0) { useCapture = false; }\r\n eventOff(obj, eventNameWithoutOn, handlerRef, null, useCapture);\r\n}\r\n/**\r\n * Trys to add an event handler for the specified event to the window, body and document\r\n * @param eventName - The name of the event\r\n * @param callback - The callback function that needs to be executed for the given event\r\n * @param evtNamespace - [Optional] Namespace(s) to append to the event listeners so they can be uniquely identified and removed based on this namespace.\r\n * @returns - true if the handler was successfully added\r\n */\r\nexport function addEventHandler(eventName, callback, evtNamespace) {\r\n var result = false;\r\n var w = getWindow();\r\n if (w) {\r\n result = eventOn(w, eventName, callback, evtNamespace);\r\n result = eventOn(w[\"body\"], eventName, callback, evtNamespace) || result;\r\n }\r\n var doc = getDocument();\r\n if (doc) {\r\n result = eventOn(doc, eventName, callback, evtNamespace) || result;\r\n }\r\n return result;\r\n}\r\n/**\r\n * Trys to remove event handler(s) for the specified event/namespace to the window, body and document\r\n * @param eventName - The name of the event, with optional namespaces or just the namespaces,\r\n * such as \"click\", \"click.mynamespace\" or \".mynamespace\"\r\n * @param callback - The callback function that needs to be removed from the given event, when using a\r\n * namespace (with or without a qualifying event) this may be null to remove all previously attached event handlers\r\n * otherwise this will only remove events with this specific handler.\r\n * @param evtNamespace - [Optional] Namespace(s) to append to the event listeners so they can be uniquely identified and removed based on this namespace.\r\n */\r\nexport function removeEventHandler(eventName, callback, evtNamespace) {\r\n var w = getWindow();\r\n if (w) {\r\n eventOff(w, eventName, callback, evtNamespace);\r\n eventOff(w[\"body\"], eventName, callback, evtNamespace);\r\n }\r\n var doc = getDocument();\r\n if (doc) {\r\n eventOff(doc, eventName, callback, evtNamespace);\r\n }\r\n}\r\n/**\r\n * Bind the listener to the array of events\r\n * @param events - An string array of event names to bind the listener to\r\n * @param listener - The event callback to call when the event is triggered\r\n * @param excludeEvents - [Optional] An array of events that should not be hooked (if possible), unless no other events can be.\r\n * @param evtNamespace - [Optional] Namespace(s) to append to the event listeners so they can be uniquely identified and removed based on this namespace.\r\n * @returns true - when at least one of the events was registered otherwise false\r\n */\r\nfunction _addEventListeners(events, listener, excludeEvents, evtNamespace) {\r\n var added = false;\r\n if (listener && events && events[_DYN_LENGTH /* @min:%2elength */] > 0) {\r\n arrForEach(events, function (name) {\r\n if (name) {\r\n if (!excludeEvents || arrIndexOf(excludeEvents, name) === -1) {\r\n added = addEventHandler(name, listener, evtNamespace) || added;\r\n }\r\n }\r\n });\r\n }\r\n return added;\r\n}\r\n/**\r\n * Bind the listener to the array of events\r\n * @param events - An string array of event names to bind the listener to\r\n * @param listener - The event callback to call when the event is triggered\r\n * @param excludeEvents - [Optional] An array of events that should not be hooked (if possible), unless no other events can be.\r\n * @param evtNamespace - [Optional] Namespace(s) to append to the event listeners so they can be uniquely identified and removed based on this namespace.\r\n * @returns true - when at least one of the events was registered otherwise false\r\n */\r\nexport function addEventListeners(events, listener, excludeEvents, evtNamespace) {\r\n var added = false;\r\n if (listener && events && isArray(events)) {\r\n added = _addEventListeners(events, listener, excludeEvents, evtNamespace);\r\n if (!added && excludeEvents && excludeEvents[_DYN_LENGTH /* @min:%2elength */] > 0) {\r\n // Failed to add any listeners and we excluded some, so just attempt to add the excluded events\r\n added = _addEventListeners(events, listener, null, evtNamespace);\r\n }\r\n }\r\n return added;\r\n}\r\n/**\r\n * Remove the listener from the array of events\r\n * @param events - An string array of event names to bind the listener to\r\n * @param listener - The event callback to call when the event is triggered\r\n * @param evtNamespace - [Optional] Namespace(s) to append to the event listeners so they can be uniquely identified and removed based on this namespace.\r\n */\r\nexport function removeEventListeners(events, listener, evtNamespace) {\r\n if (events && isArray(events)) {\r\n arrForEach(events, function (name) {\r\n if (name) {\r\n removeEventHandler(name, listener, evtNamespace);\r\n }\r\n });\r\n }\r\n}\r\n/**\r\n * Listen to the 'beforeunload', 'unload' and 'pagehide' events which indicates a page unload is occurring,\r\n * this does NOT listen to the 'visibilitychange' event as while it does indicate that the page is being hidden\r\n * it does not *necessarily* mean that the page is being completely unloaded, it can mean that the user is\r\n * just navigating to a different Tab and may come back (without unloading the page). As such you may also\r\n * need to listen to the 'addPageHideEventListener' and 'addPageShowEventListener' events.\r\n * @param listener - The event callback to call when a page unload event is triggered\r\n * @param excludeEvents - [Optional] An array of events that should not be hooked, unless no other events can be.\r\n * @param evtNamespace - [Optional] Namespace(s) to append to the event listeners so they can be uniquely identified and removed based on this namespace.\r\n * @returns true - when at least one of the events was registered otherwise false\r\n */\r\nexport function addPageUnloadEventListener(listener, excludeEvents, evtNamespace) {\r\n // Hook the unload event for the document, window and body to ensure that the client events are flushed to the server\r\n // As just hooking the window does not always fire (on chrome) for page navigation's.\r\n return addEventListeners([strBeforeUnload, strUnload, strPageHide], listener, excludeEvents, evtNamespace);\r\n}\r\n/**\r\n * Remove any matching 'beforeunload', 'unload' and 'pagehide' events that may have been added via addEventListener,\r\n * addEventListeners, addPageUnloadEventListener or addPageHideEventListener.\r\n * @param listener - The specific event callback to to be removed\r\n * @param evtNamespace - [Optional] Namespace(s) uniquely identified and removed based on this namespace.\r\n * @returns true - when at least one of the events was registered otherwise false\r\n */\r\nexport function removePageUnloadEventListener(listener, evtNamespace) {\r\n removeEventListeners([strBeforeUnload, strUnload, strPageHide], listener, evtNamespace);\r\n}\r\n/**\r\n * Listen to the pagehide and visibility changing to 'hidden' events, because the 'visibilitychange' uses\r\n * an internal proxy to detect the visibility state you SHOULD use a unique namespace when if you plan to call\r\n * removePageShowEventListener as the remove ignores the listener argument for the 'visibilitychange' event.\r\n * @param listener - The event callback to call when a page hide event is triggered\r\n * @param excludeEvents - [Optional] An array of events that should not be hooked (if possible), unless no other events can be.\r\n * @param evtNamespace - [Optional] A Namespace to append to the event listeners so they can be uniquely identified and removed\r\n * based on this namespace. This call also adds an additional unique \"pageshow\" namespace to the events\r\n * so that only the matching \"removePageHideEventListener\" can remove these events.\r\n * Suggestion: pass as true if you are also calling addPageUnloadEventListener as that also hooks pagehide\r\n * @returns true - when at least one of the events was registered otherwise false\r\n */\r\nexport function addPageHideEventListener(listener, excludeEvents, evtNamespace) {\r\n function _handlePageVisibility(evt) {\r\n var doc = getDocument();\r\n if (listener && doc && doc.visibilityState === \"hidden\") {\r\n listener(evt);\r\n }\r\n }\r\n // add the unique page show namespace to any provided namespace so we can only remove the ones added by \"pagehide\"\r\n var newNamespaces = mergeEvtNamespace(strPageHideNamespace, evtNamespace);\r\n var pageUnloadAdded = _addEventListeners([strPageHide], listener, excludeEvents, newNamespaces);\r\n if (!excludeEvents || arrIndexOf(excludeEvents, strVisibilityChangeEvt) === -1) {\r\n pageUnloadAdded = _addEventListeners([strVisibilityChangeEvt], _handlePageVisibility, excludeEvents, newNamespaces) || pageUnloadAdded;\r\n }\r\n if (!pageUnloadAdded && excludeEvents) {\r\n // Failed to add any listeners and we where requested to exclude some, so just call again without excluding anything\r\n pageUnloadAdded = addPageHideEventListener(listener, null, evtNamespace);\r\n }\r\n return pageUnloadAdded;\r\n}\r\n/**\r\n * Removes the pageHide event listeners added by addPageHideEventListener, because the 'visibilitychange' uses\r\n * an internal proxy to detect the visibility state you SHOULD use a unique namespace when calling addPageHideEventListener\r\n * as the remove ignores the listener argument for the 'visibilitychange' event.\r\n * @param listener - The specific listener to remove for the 'pageshow' event only (ignored for 'visibilitychange')\r\n * @param evtNamespace - The unique namespace used when calling addPageShowEventListener\r\n */\r\nexport function removePageHideEventListener(listener, evtNamespace) {\r\n // add the unique page show namespace to any provided namespace so we only remove the ones added by \"pagehide\"\r\n var newNamespaces = mergeEvtNamespace(strPageHideNamespace, evtNamespace);\r\n removeEventListeners([strPageHide], listener, newNamespaces);\r\n removeEventListeners([strVisibilityChangeEvt], null, newNamespaces);\r\n}\r\n/**\r\n * Listen to the pageshow and visibility changing to 'visible' events, because the 'visibilitychange' uses\r\n * an internal proxy to detect the visibility state you SHOULD use a unique namespace when if you plan to call\r\n * removePageShowEventListener as the remove ignores the listener argument for the 'visibilitychange' event.\r\n * @param listener - The event callback to call when a page is show event is triggered\r\n * @param excludeEvents - [Optional] An array of events that should not be hooked (if possible), unless no other events can be.\r\n * @param evtNamespace - [Optional/Recommended] A Namespace to append to the event listeners so they can be uniquely\r\n * identified and removed based on this namespace. This call also adds an additional unique \"pageshow\" namespace to the events\r\n * so that only the matching \"removePageShowEventListener\" can remove these events.\r\n * @returns true - when at least one of the events was registered otherwise false\r\n */\r\nexport function addPageShowEventListener(listener, excludeEvents, evtNamespace) {\r\n function _handlePageVisibility(evt) {\r\n var doc = getDocument();\r\n if (listener && doc && doc.visibilityState === \"visible\") {\r\n listener(evt);\r\n }\r\n }\r\n // add the unique page show namespace to any provided namespace so we can only remove the ones added by \"pageshow\"\r\n var newNamespaces = mergeEvtNamespace(strPageShowNamespace, evtNamespace);\r\n var pageShowAdded = _addEventListeners([strPageShow], listener, excludeEvents, newNamespaces);\r\n pageShowAdded = _addEventListeners([strVisibilityChangeEvt], _handlePageVisibility, excludeEvents, newNamespaces) || pageShowAdded;\r\n if (!pageShowAdded && excludeEvents) {\r\n // Failed to add any listeners and we where requested to exclude some, so just call again without excluding anything\r\n pageShowAdded = addPageShowEventListener(listener, null, evtNamespace);\r\n }\r\n return pageShowAdded;\r\n}\r\n/**\r\n * Removes the pageShow event listeners added by addPageShowEventListener, because the 'visibilitychange' uses\r\n * an internal proxy to detect the visibility state you SHOULD use a unique namespace when calling addPageShowEventListener\r\n * as the remove ignores the listener argument for the 'visibilitychange' event.\r\n * @param listener - The specific listener to remove for the 'pageshow' event only (ignored for 'visibilitychange')\r\n * @param evtNamespace - The unique namespace used when calling addPageShowEventListener\r\n */\r\nexport function removePageShowEventListener(listener, evtNamespace) {\r\n // add the unique page show namespace to any provided namespace so we only remove the ones added by \"pageshow\"\r\n var newNamespaces = mergeEvtNamespace(strPageShowNamespace, evtNamespace);\r\n removeEventListeners([strPageShow], listener, newNamespaces);\r\n removeEventListeners([strVisibilityChangeEvt], null, newNamespaces);\r\n}\r\n//# sourceMappingURL=EventHelpers.js.map","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\nimport dynamicProto from \"@microsoft/dynamicproto-js\";\r\nimport { isArray, isFunction, objDefine, utcNow } from \"@nevware21/ts-utils\";\r\nimport { _DYN_COMPLETE, _DYN_GET_CTX, _DYN_IS_ASYNC, _DYN_IS_CHILD_EVT, _DYN_LENGTH, _DYN_NAME, _DYN_PUSH, _DYN_SET_CTX, _DYN_TIME } from \"../__DynamicConstants\";\r\nimport { STR_GET_PERF_MGR, STR_PERF_EVENT } from \"./InternalConstants\";\r\nvar strExecutionContextKey = \"ctx\";\r\nvar strParentContextKey = \"ParentContextKey\";\r\nvar strChildrenContextKey = \"ChildrenContextKey\";\r\nvar _defaultPerfManager = null;\r\nvar PerfEvent = /** @class */ (function () {\r\n function PerfEvent(name, payloadDetails, isAsync) {\r\n var _self = this;\r\n _self.start = utcNow();\r\n _self[_DYN_NAME /* @min:%2ename */] = name;\r\n _self[_DYN_IS_ASYNC /* @min:%2eisAsync */] = isAsync;\r\n _self[_DYN_IS_CHILD_EVT /* @min:%2eisChildEvt */] = function () { return false; };\r\n if (isFunction(payloadDetails)) {\r\n // Create an accessor to minimize the potential performance impact of executing the payloadDetails callback\r\n var theDetails_1;\r\n objDefine(_self, \"payload\", {\r\n g: function () {\r\n // Delay the execution of the payloadDetails until needed\r\n if (!theDetails_1 && isFunction(payloadDetails)) {\r\n theDetails_1 = payloadDetails();\r\n // clear it out now so the referenced objects can be garbage collected\r\n payloadDetails = null;\r\n }\r\n return theDetails_1;\r\n }\r\n });\r\n }\r\n _self[_DYN_GET_CTX /* @min:%2egetCtx */] = function (key) {\r\n if (key) {\r\n // The parent and child links are located directly on the object (for better viewing in the DebugPlugin)\r\n if (key === PerfEvent[strParentContextKey] || key === PerfEvent[strChildrenContextKey]) {\r\n return _self[key];\r\n }\r\n return (_self[strExecutionContextKey] || {})[key];\r\n }\r\n return null;\r\n };\r\n _self[_DYN_SET_CTX /* @min:%2esetCtx */] = function (key, value) {\r\n if (key) {\r\n // Put the parent and child links directly on the object (for better viewing in the DebugPlugin)\r\n if (key === PerfEvent[strParentContextKey]) {\r\n // Simple assumption, if we are setting a parent then we must be a child\r\n if (!_self[key]) {\r\n _self[_DYN_IS_CHILD_EVT /* @min:%2eisChildEvt */] = function () { return true; };\r\n }\r\n _self[key] = value;\r\n }\r\n else if (key === PerfEvent[strChildrenContextKey]) {\r\n _self[key] = value;\r\n }\r\n else {\r\n var ctx = _self[strExecutionContextKey] = _self[strExecutionContextKey] || {};\r\n ctx[key] = value;\r\n }\r\n }\r\n };\r\n _self[_DYN_COMPLETE /* @min:%2ecomplete */] = function () {\r\n var childTime = 0;\r\n var childEvts = _self[_DYN_GET_CTX /* @min:%2egetCtx */](PerfEvent[strChildrenContextKey]);\r\n if (isArray(childEvts)) {\r\n for (var lp = 0; lp < childEvts[_DYN_LENGTH /* @min:%2elength */]; lp++) {\r\n var childEvt = childEvts[lp];\r\n if (childEvt) {\r\n childTime += childEvt[_DYN_TIME /* @min:%2etime */];\r\n }\r\n }\r\n }\r\n _self[_DYN_TIME /* @min:%2etime */] = utcNow() - _self.start;\r\n _self.exTime = _self[_DYN_TIME /* @min:%2etime */] - childTime;\r\n _self[_DYN_COMPLETE /* @min:%2ecomplete */] = function () { };\r\n };\r\n }\r\n PerfEvent.ParentContextKey = \"parent\";\r\n PerfEvent.ChildrenContextKey = \"childEvts\";\r\n return PerfEvent;\r\n}());\r\nexport { PerfEvent };\r\nvar PerfManager = /** @class */ (function () {\r\n function PerfManager(manager) {\r\n /**\r\n * General bucket used for execution context set and retrieved via setCtx() and getCtx.\r\n * Defined as private so it can be visualized via the DebugPlugin\r\n */\r\n this.ctx = {};\r\n dynamicProto(PerfManager, this, function (_self) {\r\n _self.create = function (src, payloadDetails, isAsync) {\r\n // TODO (@MSNev): at some point we will want to add additional configuration to \"select\" which events to instrument\r\n // for now this is just a simple do everything.\r\n return new PerfEvent(src, payloadDetails, isAsync);\r\n };\r\n _self.fire = function (perfEvent) {\r\n if (perfEvent) {\r\n perfEvent[_DYN_COMPLETE /* @min:%2ecomplete */]();\r\n if (manager && isFunction(manager[STR_PERF_EVENT /* @min:%2eperfEvent */])) {\r\n manager[STR_PERF_EVENT /* @min:%2eperfEvent */](perfEvent);\r\n }\r\n }\r\n };\r\n _self[_DYN_SET_CTX /* @min:%2esetCtx */] = function (key, value) {\r\n if (key) {\r\n var ctx = _self[strExecutionContextKey] = _self[strExecutionContextKey] || {};\r\n ctx[key] = value;\r\n }\r\n };\r\n _self[_DYN_GET_CTX /* @min:%2egetCtx */] = function (key) {\r\n return (_self[strExecutionContextKey] || {})[key];\r\n };\r\n });\r\n }\r\n /**\r\n * Create a new event and start timing, the manager may return null/undefined to indicate that it does not\r\n * want to monitor this source event.\r\n * @param src - The source name of the event\r\n * @param payloadDetails - An optional callback function to fetch the payload details for the event.\r\n * @param isAsync - Is the event occurring from a async event\r\n */\r\n PerfManager.prototype.create = function (src, payload, isAsync) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n return null;\r\n };\r\n /**\r\n * Complete the perfEvent and fire any notifications.\r\n * @param perfEvent - Fire the event which will also complete the passed event\r\n */\r\n PerfManager.prototype.fire = function (perfEvent) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n /**\r\n * Set an execution context value\r\n * @param key - The context key name\r\n * @param value - The value\r\n */\r\n PerfManager.prototype.setCtx = function (key, value) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n /**\r\n * Get the execution context value\r\n * @param key - The context key\r\n */\r\n PerfManager.prototype.getCtx = function (key) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n return PerfManager;\r\n}());\r\nexport { PerfManager };\r\nvar doPerfActiveKey = \"CoreUtils.doPerf\";\r\n/**\r\n * Helper function to wrap a function with a perf event\r\n * @param mgrSource - The Performance Manager or a Performance provider source (may be null)\r\n * @param getSource - The callback to create the source name for the event (if perf monitoring is enabled)\r\n * @param func - The function to call and measure\r\n * @param details - A function to return the payload details\r\n * @param isAsync - Is the event / function being call asynchronously or synchronously\r\n */\r\nexport function doPerf(mgrSource, getSource, func, details, isAsync) {\r\n if (mgrSource) {\r\n var perfMgr = mgrSource;\r\n if (perfMgr[STR_GET_PERF_MGR]) {\r\n // Looks like a perf manager provider object\r\n perfMgr = perfMgr[STR_GET_PERF_MGR]();\r\n }\r\n if (perfMgr) {\r\n var perfEvt = void 0;\r\n var currentActive = perfMgr[_DYN_GET_CTX /* @min:%2egetCtx */](doPerfActiveKey);\r\n try {\r\n perfEvt = perfMgr.create(getSource(), details, isAsync);\r\n if (perfEvt) {\r\n if (currentActive && perfEvt[_DYN_SET_CTX /* @min:%2esetCtx */]) {\r\n perfEvt[_DYN_SET_CTX /* @min:%2esetCtx */](PerfEvent[strParentContextKey], currentActive);\r\n if (currentActive[_DYN_GET_CTX /* @min:%2egetCtx */] && currentActive[_DYN_SET_CTX /* @min:%2esetCtx */]) {\r\n var children = currentActive[_DYN_GET_CTX /* @min:%2egetCtx */](PerfEvent[strChildrenContextKey]);\r\n if (!children) {\r\n children = [];\r\n currentActive[_DYN_SET_CTX /* @min:%2esetCtx */](PerfEvent[strChildrenContextKey], children);\r\n }\r\n children[_DYN_PUSH /* @min:%2epush */](perfEvt);\r\n }\r\n }\r\n // Set this event as the active event now\r\n perfMgr[_DYN_SET_CTX /* @min:%2esetCtx */](doPerfActiveKey, perfEvt);\r\n return func(perfEvt);\r\n }\r\n }\r\n catch (ex) {\r\n if (perfEvt && perfEvt[_DYN_SET_CTX /* @min:%2esetCtx */]) {\r\n perfEvt[_DYN_SET_CTX /* @min:%2esetCtx */](\"exception\", ex);\r\n }\r\n }\r\n finally {\r\n // fire the perf event\r\n if (perfEvt) {\r\n perfMgr.fire(perfEvt);\r\n }\r\n // Reset the active event to the previous value\r\n perfMgr[_DYN_SET_CTX /* @min:%2esetCtx */](doPerfActiveKey, currentActive);\r\n }\r\n }\r\n }\r\n return func();\r\n}\r\n/**\r\n * Set the global performance manager to use when there is no core instance or it has not been initialized yet.\r\n * @param perfManager - The IPerfManager instance to use when no performance manager is supplied.\r\n */\r\nexport function setGblPerfMgr(perfManager) {\r\n _defaultPerfManager = perfManager;\r\n}\r\n/**\r\n * Get the current global performance manager that will be used with no performance manager is supplied.\r\n * @returns - The current default manager\r\n */\r\nexport function getGblPerfMgr() {\r\n return _defaultPerfManager;\r\n}\r\n//# sourceMappingURL=PerfManager.js.map","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\n\"use strict\";\r\nimport { arrForEach, isFunction } from \"@nevware21/ts-utils\";\r\nimport { _DYN_GET_NEXT, _DYN_GET_PLUGIN, _DYN_INITIALIZE, _DYN_IS_INITIALIZED, _DYN_LENGTH, _DYN_NAME, _DYN_PUSH, _DYN_SET_NEXT_PLUGIN, _DYN_SPAN_ID, _DYN_TEARDOWN, _DYN_TRACE_FLAGS, _DYN_TRACE_ID, _DYN__DO_TEARDOWN } from \"../__DynamicConstants\";\r\nimport { createElmNodeData } from \"./DataCacheHelper\";\r\nimport { STR_CORE, STR_PRIORITY, STR_PROCESS_TELEMETRY } from \"./InternalConstants\";\r\nimport { isValidSpanId, isValidTraceId } from \"./W3cTraceParent\";\r\nvar pluginStateData = createElmNodeData(\"plugin\");\r\nexport function _getPluginState(plugin) {\r\n return pluginStateData.get(plugin, \"state\", {}, true);\r\n}\r\n/**\r\n * Initialize the queue of plugins\r\n * @param plugins - The array of plugins to initialize and setting of the next plugin\r\n * @param config - The current config for the instance\r\n * @param core - THe current core instance\r\n * @param extensions - The extensions\r\n */\r\nexport function initializePlugins(processContext, extensions) {\r\n // Set the next plugin and identified the uninitialized plugins\r\n var initPlugins = [];\r\n var lastPlugin = null;\r\n var proxy = processContext[_DYN_GET_NEXT /* @min:%2egetNext */]();\r\n var pluginState;\r\n while (proxy) {\r\n var thePlugin = proxy[_DYN_GET_PLUGIN /* @min:%2egetPlugin */]();\r\n if (thePlugin) {\r\n if (lastPlugin && lastPlugin[_DYN_SET_NEXT_PLUGIN /* @min:%2esetNextPlugin */] && thePlugin[STR_PROCESS_TELEMETRY /* @min:%2eprocessTelemetry */]) {\r\n // Set this plugin as the next for the previous one\r\n lastPlugin[_DYN_SET_NEXT_PLUGIN /* @min:%2esetNextPlugin */](thePlugin);\r\n }\r\n pluginState = _getPluginState(thePlugin);\r\n var isInitialized = !!pluginState[_DYN_IS_INITIALIZED /* @min:%2eisInitialized */];\r\n if (thePlugin[_DYN_IS_INITIALIZED /* @min:%2eisInitialized */]) {\r\n isInitialized = thePlugin[_DYN_IS_INITIALIZED /* @min:%2eisInitialized */]();\r\n }\r\n if (!isInitialized) {\r\n initPlugins[_DYN_PUSH /* @min:%2epush */](thePlugin);\r\n }\r\n lastPlugin = thePlugin;\r\n proxy = proxy[_DYN_GET_NEXT /* @min:%2egetNext */]();\r\n }\r\n }\r\n // Now initialize the plugins\r\n arrForEach(initPlugins, function (thePlugin) {\r\n var core = processContext[STR_CORE /* @min:%2ecore */]();\r\n thePlugin[_DYN_INITIALIZE /* @min:%2einitialize */](processContext.getCfg(), core, extensions, processContext[_DYN_GET_NEXT /* @min:%2egetNext */]());\r\n pluginState = _getPluginState(thePlugin);\r\n // Only add the core to the state if the plugin didn't set it (doesn't extend from BaseTelemetryPlugin)\r\n if (!thePlugin[STR_CORE] && !pluginState[STR_CORE]) {\r\n pluginState[STR_CORE] = core;\r\n }\r\n pluginState[_DYN_IS_INITIALIZED /* @min:%2eisInitialized */] = true;\r\n delete pluginState[_DYN_TEARDOWN /* @min:%2eteardown */];\r\n });\r\n}\r\nexport function sortPlugins(plugins) {\r\n // Sort by priority\r\n return plugins.sort(function (extA, extB) {\r\n var result = 0;\r\n if (extB) {\r\n var bHasProcess = extB[STR_PROCESS_TELEMETRY];\r\n if (extA[STR_PROCESS_TELEMETRY]) {\r\n result = bHasProcess ? extA[STR_PRIORITY] - extB[STR_PRIORITY] : 1;\r\n }\r\n else if (bHasProcess) {\r\n result = -1;\r\n }\r\n }\r\n else {\r\n result = extA ? 1 : -1;\r\n }\r\n return result;\r\n });\r\n // sort complete\r\n}\r\n/**\r\n * Teardown / Unload helper to perform teardown/unloading operations for the provided components synchronously or asynchronously, this will call any\r\n * _doTeardown() or _doUnload() functions on the provided components to allow them to finish removal.\r\n * @param components - The components you want to unload\r\n * @param unloadCtx - This is the context that should be used during unloading.\r\n * @param unloadState - The details / state of the unload process, it holds details like whether it should be unloaded synchronously or asynchronously and the reason for the unload.\r\n * @param asyncCallback - An optional callback that the plugin must call if it returns true to inform the caller that it has completed any async unload/teardown operations.\r\n * @returns boolean - true if the plugin has or will call asyncCallback, this allows the plugin to perform any asynchronous operations.\r\n */\r\nexport function unloadComponents(components, unloadCtx, unloadState, asyncCallback) {\r\n var idx = 0;\r\n function _doUnload() {\r\n while (idx < components[_DYN_LENGTH /* @min:%2elength */]) {\r\n var component = components[idx++];\r\n if (component) {\r\n var func = component._doUnload || component[_DYN__DO_TEARDOWN /* @min:%2e_doTeardown */];\r\n if (isFunction(func)) {\r\n if (func.call(component, unloadCtx, unloadState, _doUnload) === true) {\r\n return true;\r\n }\r\n }\r\n }\r\n }\r\n }\r\n return _doUnload();\r\n}\r\n/**\r\n * Creates a IDistributedTraceContext which optionally also \"sets\" the value on a parent\r\n * @param parentCtx - An optional parent distributed trace instance\r\n * @returns A new IDistributedTraceContext instance that uses an internal temporary object\r\n */\r\nexport function createDistributedTraceContext(parentCtx) {\r\n var trace = {};\r\n return {\r\n getName: function () {\r\n return trace[_DYN_NAME /* @min:%2ename */];\r\n },\r\n setName: function (newValue) {\r\n parentCtx && parentCtx.setName(newValue);\r\n trace[_DYN_NAME /* @min:%2ename */] = newValue;\r\n },\r\n getTraceId: function () {\r\n return trace[_DYN_TRACE_ID /* @min:%2etraceId */];\r\n },\r\n setTraceId: function (newValue) {\r\n parentCtx && parentCtx.setTraceId(newValue);\r\n if (isValidTraceId(newValue)) {\r\n trace[_DYN_TRACE_ID /* @min:%2etraceId */] = newValue;\r\n }\r\n },\r\n getSpanId: function () {\r\n return trace[_DYN_SPAN_ID /* @min:%2espanId */];\r\n },\r\n setSpanId: function (newValue) {\r\n parentCtx && parentCtx.setSpanId(newValue);\r\n if (isValidSpanId(newValue)) {\r\n trace[_DYN_SPAN_ID /* @min:%2espanId */] = newValue;\r\n }\r\n },\r\n getTraceFlags: function () {\r\n return trace[_DYN_TRACE_FLAGS /* @min:%2etraceFlags */];\r\n },\r\n setTraceFlags: function (newTraceFlags) {\r\n parentCtx && parentCtx.setTraceFlags(newTraceFlags);\r\n trace[_DYN_TRACE_FLAGS /* @min:%2etraceFlags */] = newTraceFlags;\r\n }\r\n };\r\n}\r\n//# sourceMappingURL=TelemetryHelpers.js.map","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\n\"use strict\";\r\nimport { arrForEach, dumpObj, isArray, isFunction, isNullOrUndefined, isUndefined, objForEachKey, objFreeze, objKeys } from \"@nevware21/ts-utils\";\r\nimport { _applyDefaultValue } from \"../Config/ConfigDefaults\";\r\nimport { createDynamicConfig } from \"../Config/DynamicConfig\";\r\nimport { _DYN_CREATE_NEW, _DYN_DIAG_LOG, _DYN_GET_NEXT, _DYN_GET_PLUGIN, _DYN_IDENTIFIER, _DYN_IS_ASYNC, _DYN_IS_INITIALIZED, _DYN_LENGTH, _DYN_LOGGER, _DYN_PROCESS_NEXT, _DYN_PUSH, _DYN_SET_DF, _DYN_SET_NEXT_PLUGIN, _DYN_TEARDOWN, _DYN_UNLOAD, _DYN_UPDATE } from \"../__DynamicConstants\";\r\nimport { _throwInternal, safeGetLogger } from \"./DiagnosticLogger\";\r\nimport { proxyFunctions } from \"./HelperFuncs\";\r\nimport { STR_CORE, STR_DISABLED, STR_EMPTY, STR_EXTENSION_CONFIG, STR_PRIORITY, STR_PROCESS_TELEMETRY } from \"./InternalConstants\";\r\nimport { doPerf } from \"./PerfManager\";\r\nimport { _getPluginState } from \"./TelemetryHelpers\";\r\nvar strTelemetryPluginChain = \"TelemetryPluginChain\";\r\nvar strHasRunFlags = \"_hasRun\";\r\nvar strGetTelCtx = \"_getTelCtx\";\r\nvar _chainId = 0;\r\nfunction _getNextProxyStart(proxy, core, startAt) {\r\n while (proxy) {\r\n if (proxy[_DYN_GET_PLUGIN /* @min:%2egetPlugin */]() === startAt) {\r\n return proxy;\r\n }\r\n proxy = proxy[_DYN_GET_NEXT /* @min:%2egetNext */]();\r\n }\r\n // This wasn't found in the existing chain so create an isolated one with just this plugin\r\n return createTelemetryProxyChain([startAt], core.config || {}, core);\r\n}\r\n/**\r\n * @ignore\r\n * @param telemetryChain\r\n * @param dynamicHandler\r\n * @param core\r\n * @param startAt - Identifies the next plugin to execute, if null there is no \"next\" plugin and if undefined it should assume the start of the chain\r\n * @returns\r\n */\r\nfunction _createInternalContext(telemetryChain, dynamicHandler, core, startAt) {\r\n // We have a special case where we want to start execution from this specific plugin\r\n // or we simply reuse the existing telemetry plugin chain (normal execution case)\r\n var _nextProxy = null; // By Default set as no next plugin\r\n var _onComplete = [];\r\n if (!dynamicHandler) {\r\n dynamicHandler = createDynamicConfig({}, null, core[_DYN_LOGGER /* @min:%2elogger */]);\r\n }\r\n if (startAt !== null) {\r\n // There is no next element (null) vs not defined (undefined) so use the full chain\r\n _nextProxy = startAt ? _getNextProxyStart(telemetryChain, core, startAt) : telemetryChain;\r\n }\r\n var context = {\r\n _next: _moveNext,\r\n ctx: {\r\n core: function () {\r\n return core;\r\n },\r\n diagLog: function () {\r\n return safeGetLogger(core, dynamicHandler.cfg);\r\n },\r\n getCfg: function () {\r\n return dynamicHandler.cfg;\r\n },\r\n getExtCfg: _resolveExtCfg,\r\n getConfig: _getConfig,\r\n hasNext: function () {\r\n return !!_nextProxy;\r\n },\r\n getNext: function () {\r\n return _nextProxy;\r\n },\r\n setNext: function (nextPlugin) {\r\n _nextProxy = nextPlugin;\r\n },\r\n iterate: _iterateChain,\r\n onComplete: _addOnComplete\r\n }\r\n };\r\n function _addOnComplete(onComplete, that) {\r\n var args = [];\r\n for (var _i = 2; _i < arguments.length; _i++) {\r\n args[_i - 2] = arguments[_i];\r\n }\r\n if (onComplete) {\r\n _onComplete[_DYN_PUSH /* @min:%2epush */]({\r\n func: onComplete,\r\n self: !isUndefined(that) ? that : context.ctx,\r\n args: args\r\n });\r\n }\r\n }\r\n function _moveNext() {\r\n var nextProxy = _nextProxy;\r\n // Automatically move to the next plugin\r\n _nextProxy = nextProxy ? nextProxy[_DYN_GET_NEXT /* @min:%2egetNext */]() : null;\r\n if (!nextProxy) {\r\n var onComplete = _onComplete;\r\n if (onComplete && onComplete[_DYN_LENGTH /* @min:%2elength */] > 0) {\r\n arrForEach(onComplete, function (completeDetails) {\r\n try {\r\n completeDetails.func.call(completeDetails.self, completeDetails.args);\r\n }\r\n catch (e) {\r\n _throwInternal(core[_DYN_LOGGER /* @min:%2elogger */], 2 /* eLoggingSeverity.WARNING */, 73 /* _eInternalMessageId.PluginException */, \"Unexpected Exception during onComplete - \" + dumpObj(e));\r\n }\r\n });\r\n _onComplete = [];\r\n }\r\n }\r\n return nextProxy;\r\n }\r\n function _getExtCfg(identifier, createIfMissing) {\r\n var idCfg = null;\r\n var cfg = dynamicHandler.cfg;\r\n if (cfg && identifier) {\r\n var extCfg = cfg[STR_EXTENSION_CONFIG /* @min:%2eextensionConfig */];\r\n if (!extCfg && createIfMissing) {\r\n extCfg = {};\r\n }\r\n // Always set the value so that the property always exists\r\n cfg[STR_EXTENSION_CONFIG] = extCfg; // Note: it is valid for the \"value\" to be undefined\r\n // Calling `ref()` has a side effect of causing the referenced property to become dynamic (if not already)\r\n extCfg = dynamicHandler.ref(cfg, STR_EXTENSION_CONFIG);\r\n if (extCfg) {\r\n idCfg = extCfg[identifier];\r\n if (!idCfg && createIfMissing) {\r\n idCfg = {};\r\n }\r\n // Always set the value so that the property always exists\r\n extCfg[identifier] = idCfg; // Note: it is valid for the \"value\" to be undefined\r\n // Calling `ref()` has a side effect of causing the referenced property to become dynamic (if not already)\r\n idCfg = dynamicHandler.ref(extCfg, identifier);\r\n }\r\n }\r\n return idCfg;\r\n }\r\n function _resolveExtCfg(identifier, defaultValues) {\r\n var newConfig = _getExtCfg(identifier, true);\r\n if (defaultValues) {\r\n // Enumerate over the defaultValues and if not already populated attempt to\r\n // find a value from the root config or use the default value\r\n objForEachKey(defaultValues, function (field, defaultValue) {\r\n // for each unspecified field, set the default value\r\n if (isNullOrUndefined(newConfig[field])) {\r\n var cfgValue = dynamicHandler.cfg[field];\r\n if (cfgValue || !isNullOrUndefined(cfgValue)) {\r\n newConfig[field] = cfgValue;\r\n }\r\n }\r\n _applyDefaultValue(dynamicHandler, newConfig, field, defaultValue);\r\n });\r\n }\r\n return dynamicHandler[_DYN_SET_DF /* @min:%2esetDf */](newConfig, defaultValues);\r\n }\r\n function _getConfig(identifier, field, defaultValue) {\r\n if (defaultValue === void 0) { defaultValue = false; }\r\n var theValue;\r\n var extConfig = _getExtCfg(identifier, false);\r\n var rootConfig = dynamicHandler.cfg;\r\n if (extConfig && (extConfig[field] || !isNullOrUndefined(extConfig[field]))) {\r\n theValue = extConfig[field];\r\n }\r\n else if (rootConfig[field] || !isNullOrUndefined(rootConfig[field])) {\r\n theValue = rootConfig[field];\r\n }\r\n return (theValue || !isNullOrUndefined(theValue)) ? theValue : defaultValue;\r\n }\r\n function _iterateChain(cb) {\r\n // Keep processing until we reach the end of the chain\r\n var nextPlugin;\r\n while (!!(nextPlugin = context._next())) {\r\n var plugin = nextPlugin[_DYN_GET_PLUGIN /* @min:%2egetPlugin */]();\r\n if (plugin) {\r\n // callback with the current on\r\n cb(plugin);\r\n }\r\n }\r\n }\r\n return context;\r\n}\r\n/**\r\n * Creates a new Telemetry Item context with the current config, core and plugin execution chain\r\n * @param plugins - The plugin instances that will be executed\r\n * @param config - The current config\r\n * @param core - The current core instance\r\n * @param startAt - Identifies the next plugin to execute, if null there is no \"next\" plugin and if undefined it should assume the start of the chain\r\n */\r\nexport function createProcessTelemetryContext(telemetryChain, cfg, core, startAt) {\r\n var config = createDynamicConfig(cfg);\r\n var internalContext = _createInternalContext(telemetryChain, config, core, startAt);\r\n var context = internalContext.ctx;\r\n function _processNext(env) {\r\n var nextPlugin = internalContext._next();\r\n if (nextPlugin) {\r\n // Run the next plugin which will call \"processNext()\"\r\n nextPlugin[STR_PROCESS_TELEMETRY /* @min:%2eprocessTelemetry */](env, context);\r\n }\r\n return !nextPlugin;\r\n }\r\n function _createNew(plugins, startAt) {\r\n if (plugins === void 0) { plugins = null; }\r\n if (isArray(plugins)) {\r\n plugins = createTelemetryProxyChain(plugins, config.cfg, core, startAt);\r\n }\r\n return createProcessTelemetryContext(plugins || context[_DYN_GET_NEXT /* @min:%2egetNext */](), config.cfg, core, startAt);\r\n }\r\n context[_DYN_PROCESS_NEXT /* @min:%2eprocessNext */] = _processNext;\r\n context[_DYN_CREATE_NEW /* @min:%2ecreateNew */] = _createNew;\r\n return context;\r\n}\r\n/**\r\n * Creates a new Telemetry Item context with the current config, core and plugin execution chain for handling the unloading of the chain\r\n * @param plugins - The plugin instances that will be executed\r\n * @param config - The current config\r\n * @param core - The current core instance\r\n * @param startAt - Identifies the next plugin to execute, if null there is no \"next\" plugin and if undefined it should assume the start of the chain\r\n */\r\nexport function createProcessTelemetryUnloadContext(telemetryChain, core, startAt) {\r\n var config = createDynamicConfig(core.config);\r\n var internalContext = _createInternalContext(telemetryChain, config, core, startAt);\r\n var context = internalContext.ctx;\r\n function _processNext(unloadState) {\r\n var nextPlugin = internalContext._next();\r\n nextPlugin && nextPlugin[_DYN_UNLOAD /* @min:%2eunload */](context, unloadState);\r\n return !nextPlugin;\r\n }\r\n function _createNew(plugins, startAt) {\r\n if (plugins === void 0) { plugins = null; }\r\n if (isArray(plugins)) {\r\n plugins = createTelemetryProxyChain(plugins, config.cfg, core, startAt);\r\n }\r\n return createProcessTelemetryUnloadContext(plugins || context[_DYN_GET_NEXT /* @min:%2egetNext */](), core, startAt);\r\n }\r\n context[_DYN_PROCESS_NEXT /* @min:%2eprocessNext */] = _processNext;\r\n context[_DYN_CREATE_NEW /* @min:%2ecreateNew */] = _createNew;\r\n return context;\r\n}\r\n/**\r\n * Creates a new Telemetry Item context with the current config, core and plugin execution chain for updating the configuration\r\n * @param plugins - The plugin instances that will be executed\r\n * @param config - The current config\r\n * @param core - The current core instance\r\n * @param startAt - Identifies the next plugin to execute, if null there is no \"next\" plugin and if undefined it should assume the start of the chain\r\n */\r\nexport function createProcessTelemetryUpdateContext(telemetryChain, core, startAt) {\r\n var config = createDynamicConfig(core.config);\r\n var internalContext = _createInternalContext(telemetryChain, config, core, startAt);\r\n var context = internalContext.ctx;\r\n function _processNext(updateState) {\r\n return context.iterate(function (plugin) {\r\n if (isFunction(plugin[_DYN_UPDATE /* @min:%2eupdate */])) {\r\n plugin[_DYN_UPDATE /* @min:%2eupdate */](context, updateState);\r\n }\r\n });\r\n }\r\n function _createNew(plugins, startAt) {\r\n if (plugins === void 0) { plugins = null; }\r\n if (isArray(plugins)) {\r\n plugins = createTelemetryProxyChain(plugins, config.cfg, core, startAt);\r\n }\r\n return createProcessTelemetryUpdateContext(plugins || context[_DYN_GET_NEXT /* @min:%2egetNext */](), core, startAt);\r\n }\r\n context[_DYN_PROCESS_NEXT /* @min:%2eprocessNext */] = _processNext;\r\n context[_DYN_CREATE_NEW /* @min:%2ecreateNew */] = _createNew;\r\n return context;\r\n}\r\n/**\r\n * Creates an execution chain from the array of plugins\r\n * @param plugins - The array of plugins that will be executed in this order\r\n * @param defItemCtx - The default execution context to use when no telemetry context is passed to processTelemetry(), this\r\n * should be for legacy plugins only. Currently, only used for passing the current core instance and to provide better error\r\n * reporting (hasRun) when errors occur.\r\n */\r\nexport function createTelemetryProxyChain(plugins, config, core, startAt) {\r\n var firstProxy = null;\r\n var add = startAt ? false : true;\r\n if (isArray(plugins) && plugins[_DYN_LENGTH /* @min:%2elength */] > 0) {\r\n // Create the proxies and wire up the next plugin chain\r\n var lastProxy_1 = null;\r\n arrForEach(plugins, function (thePlugin) {\r\n if (!add && startAt === thePlugin) {\r\n add = true;\r\n }\r\n if (add && thePlugin && isFunction(thePlugin[STR_PROCESS_TELEMETRY /* @min:%2eprocessTelemetry */])) {\r\n // Only add plugins that are processors\r\n var newProxy = createTelemetryPluginProxy(thePlugin, config, core);\r\n if (!firstProxy) {\r\n firstProxy = newProxy;\r\n }\r\n if (lastProxy_1) {\r\n // Set this new proxy as the next for the previous one\r\n lastProxy_1._setNext(newProxy);\r\n }\r\n lastProxy_1 = newProxy;\r\n }\r\n });\r\n }\r\n if (startAt && !firstProxy) {\r\n // Special case where the \"startAt\" was not in the original list of plugins\r\n return createTelemetryProxyChain([startAt], config, core);\r\n }\r\n return firstProxy;\r\n}\r\n/**\r\n * Create the processing telemetry proxy instance, the proxy is used to abstract the current plugin to allow monitoring and\r\n * execution plugins while passing around the dynamic execution state (IProcessTelemetryContext), the proxy instance no longer\r\n * contains any execution state and can be reused between requests (this was not the case for 2.7.2 and earlier with the\r\n * TelemetryPluginChain class).\r\n * @param plugin - The plugin instance to proxy\r\n * @param config - The default execution context to use when no telemetry context is passed to processTelemetry(), this\r\n * should be for legacy plugins only. Currently, only used for passing the current core instance and to provide better error\r\n * reporting (hasRun) when errors occur.\r\n * @returns\r\n */\r\nexport function createTelemetryPluginProxy(plugin, config, core) {\r\n var nextProxy = null;\r\n var hasProcessTelemetry = isFunction(plugin[STR_PROCESS_TELEMETRY /* @min:%2eprocessTelemetry */]);\r\n var hasSetNext = isFunction(plugin[_DYN_SET_NEXT_PLUGIN /* @min:%2esetNextPlugin */]);\r\n var chainId;\r\n if (plugin) {\r\n chainId = plugin[_DYN_IDENTIFIER /* @min:%2eidentifier */] + \"-\" + plugin[STR_PRIORITY /* @min:%2epriority */] + \"-\" + _chainId++;\r\n }\r\n else {\r\n chainId = \"Unknown-0-\" + _chainId++;\r\n }\r\n var proxyChain = {\r\n getPlugin: function () {\r\n return plugin;\r\n },\r\n getNext: function () {\r\n return nextProxy;\r\n },\r\n processTelemetry: _processTelemetry,\r\n unload: _unloadPlugin,\r\n update: _updatePlugin,\r\n _id: chainId,\r\n _setNext: function (nextPlugin) {\r\n nextProxy = nextPlugin;\r\n }\r\n };\r\n function _getTelCtx() {\r\n var itemCtx;\r\n // Looks like a plugin didn't pass the (optional) context, so create a new one\r\n if (plugin && isFunction(plugin[strGetTelCtx])) {\r\n // This plugin extends from the BaseTelemetryPlugin so lets use it\r\n itemCtx = plugin[strGetTelCtx]();\r\n }\r\n if (!itemCtx) {\r\n // Create a temporary one\r\n itemCtx = createProcessTelemetryContext(proxyChain, config, core);\r\n }\r\n return itemCtx;\r\n }\r\n function _processChain(itemCtx, processPluginFn, name, details, isAsync) {\r\n var hasRun = false;\r\n var identifier = plugin ? plugin[_DYN_IDENTIFIER /* @min:%2eidentifier */] : strTelemetryPluginChain;\r\n var hasRunContext = itemCtx[strHasRunFlags];\r\n if (!hasRunContext) {\r\n // Assign and populate\r\n hasRunContext = itemCtx[strHasRunFlags] = {};\r\n }\r\n // Ensure that we keep the context in sync\r\n itemCtx.setNext(nextProxy);\r\n if (plugin) {\r\n doPerf(itemCtx[STR_CORE /* @min:%2ecore */](), function () { return identifier + \":\" + name; }, function () {\r\n // Mark this component as having run\r\n hasRunContext[chainId] = true;\r\n try {\r\n // Set a flag on the next plugin so we know if it was attempted to be executed\r\n var nextId = nextProxy ? nextProxy._id : STR_EMPTY;\r\n if (nextId) {\r\n hasRunContext[nextId] = false;\r\n }\r\n hasRun = processPluginFn(itemCtx);\r\n }\r\n catch (error) {\r\n var hasNextRun = nextProxy ? hasRunContext[nextProxy._id] : true;\r\n if (hasNextRun) {\r\n // The next plugin after us has already run so set this one as complete\r\n hasRun = true;\r\n }\r\n if (!nextProxy || !hasNextRun) {\r\n // Either we have no next plugin or the current one did not attempt to call the next plugin\r\n // Which means the current one is the root of the failure so log/report this failure\r\n _throwInternal(itemCtx[_DYN_DIAG_LOG /* @min:%2ediagLog */](), 1 /* eLoggingSeverity.CRITICAL */, 73 /* _eInternalMessageId.PluginException */, \"Plugin [\" + identifier + \"] failed during \" + name + \" - \" + dumpObj(error) + \", run flags: \" + dumpObj(hasRunContext));\r\n }\r\n }\r\n }, details, isAsync);\r\n }\r\n return hasRun;\r\n }\r\n function _processTelemetry(env, itemCtx) {\r\n itemCtx = itemCtx || _getTelCtx();\r\n function _callProcessTelemetry(itemCtx) {\r\n if (!plugin || !hasProcessTelemetry) {\r\n return false;\r\n }\r\n var pluginState = _getPluginState(plugin);\r\n if (pluginState[_DYN_TEARDOWN /* @min:%2eteardown */] || pluginState[STR_DISABLED]) {\r\n return false;\r\n }\r\n // Ensure that we keep the context in sync (for processNext()), just in case a plugin\r\n // doesn't calls processTelemetry() instead of itemContext.processNext() or some\r\n // other form of error occurred\r\n if (hasSetNext) {\r\n // Backward compatibility setting the next plugin on the instance\r\n plugin[_DYN_SET_NEXT_PLUGIN /* @min:%2esetNextPlugin */](nextProxy);\r\n }\r\n plugin[STR_PROCESS_TELEMETRY /* @min:%2eprocessTelemetry */](env, itemCtx);\r\n // Process Telemetry is expected to call itemCtx.processNext() or nextPlugin.processTelemetry()\r\n return true;\r\n }\r\n if (!_processChain(itemCtx, _callProcessTelemetry, \"processTelemetry\", function () { return ({ item: env }); }, !(env.sync))) {\r\n // The underlying plugin is either not defined, not enabled or does not have a processTelemetry implementation\r\n // so we still want the next plugin to be executed.\r\n itemCtx[_DYN_PROCESS_NEXT /* @min:%2eprocessNext */](env);\r\n }\r\n }\r\n function _unloadPlugin(unloadCtx, unloadState) {\r\n function _callTeardown() {\r\n // Setting default of hasRun as false so the proxyProcessFn() is called as teardown() doesn't have to exist or call unloadNext().\r\n var hasRun = false;\r\n if (plugin) {\r\n var pluginState = _getPluginState(plugin);\r\n var pluginCore = plugin[STR_CORE] || pluginState[STR_CORE /* @min:%2ecore */];\r\n // Only teardown the plugin if it was initialized by the current core (i.e. It's not a shared plugin)\r\n if (plugin && (!pluginCore || pluginCore === unloadCtx.core()) && !pluginState[_DYN_TEARDOWN /* @min:%2eteardown */]) {\r\n // Handle plugins that don't extend from the BaseTelemetryPlugin\r\n pluginState[STR_CORE /* @min:%2ecore */] = null;\r\n pluginState[_DYN_TEARDOWN /* @min:%2eteardown */] = true;\r\n pluginState[_DYN_IS_INITIALIZED /* @min:%2eisInitialized */] = false;\r\n if (plugin[_DYN_TEARDOWN /* @min:%2eteardown */] && plugin[_DYN_TEARDOWN /* @min:%2eteardown */](unloadCtx, unloadState) === true) {\r\n // plugin told us that it was going to (or has) call unloadCtx.processNext()\r\n hasRun = true;\r\n }\r\n }\r\n }\r\n return hasRun;\r\n }\r\n if (!_processChain(unloadCtx, _callTeardown, \"unload\", function () { }, unloadState[_DYN_IS_ASYNC /* @min:%2eisAsync */])) {\r\n // Only called if we hasRun was not true\r\n unloadCtx[_DYN_PROCESS_NEXT /* @min:%2eprocessNext */](unloadState);\r\n }\r\n }\r\n function _updatePlugin(updateCtx, updateState) {\r\n function _callUpdate() {\r\n // Setting default of hasRun as false so the proxyProcessFn() is called as teardown() doesn't have to exist or call unloadNext().\r\n var hasRun = false;\r\n if (plugin) {\r\n var pluginState = _getPluginState(plugin);\r\n var pluginCore = plugin[STR_CORE] || pluginState[STR_CORE /* @min:%2ecore */];\r\n // Only update the plugin if it was initialized by the current core (i.e. It's not a shared plugin)\r\n if (plugin && (!pluginCore || pluginCore === updateCtx.core()) && !pluginState[_DYN_TEARDOWN /* @min:%2eteardown */]) {\r\n if (plugin[_DYN_UPDATE /* @min:%2eupdate */] && plugin[_DYN_UPDATE /* @min:%2eupdate */](updateCtx, updateState) === true) {\r\n // plugin told us that it was going to (or has) call unloadCtx.processNext()\r\n hasRun = true;\r\n }\r\n }\r\n }\r\n return hasRun;\r\n }\r\n if (!_processChain(updateCtx, _callUpdate, \"update\", function () { }, false)) {\r\n // Only called if we hasRun was not true\r\n updateCtx[_DYN_PROCESS_NEXT /* @min:%2eprocessNext */](updateState);\r\n }\r\n }\r\n return objFreeze(proxyChain);\r\n}\r\n/**\r\n * This class will be removed!\r\n * @deprecated use createProcessTelemetryContext() instead\r\n */\r\nvar ProcessTelemetryContext = /** @class */ (function () {\r\n /**\r\n * Creates a new Telemetry Item context with the current config, core and plugin execution chain\r\n * @param plugins - The plugin instances that will be executed\r\n * @param config - The current config\r\n * @param core - The current core instance\r\n */\r\n function ProcessTelemetryContext(pluginChain, config, core, startAt) {\r\n var _self = this;\r\n var context = createProcessTelemetryContext(pluginChain, config, core, startAt);\r\n // Proxy all functions of the context to this object\r\n proxyFunctions(_self, context, objKeys(context));\r\n }\r\n return ProcessTelemetryContext;\r\n}());\r\nexport { ProcessTelemetryContext };\r\n//# sourceMappingURL=ProcessTelemetryContext.js.map","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\nimport { arrAppend, arrForEach, dumpObj } from \"@nevware21/ts-utils\";\r\nimport { _DYN_LENGTH } from \"../__DynamicConstants\";\r\nimport { _throwInternal } from \"./DiagnosticLogger\";\r\nvar _maxHooks;\r\nvar _hookAddMonitor;\r\n/**\r\n * Test hook for setting the maximum number of unload hooks and calling a monitor function when the hooks are added or removed\r\n * This allows for automatic test failure when the maximum number of unload hooks is exceeded\r\n * @param maxHooks - The maximum number of unload hooks\r\n * @param addMonitor - The monitor function to call when hooks are added or removed\r\n */\r\nexport function _testHookMaxUnloadHooksCb(maxHooks, addMonitor) {\r\n _maxHooks = maxHooks;\r\n _hookAddMonitor = addMonitor;\r\n}\r\n/**\r\n * Create a IUnloadHookContainer which can be used to remember unload hook functions to be executed during the component unloading\r\n * process.\r\n * @returns A new IUnloadHookContainer instance\r\n */\r\nexport function createUnloadHookContainer() {\r\n var _hooks = [];\r\n function _doUnload(logger) {\r\n var oldHooks = _hooks;\r\n _hooks = [];\r\n // Remove all registered unload hooks\r\n arrForEach(oldHooks, function (fn) {\r\n // allow either rm or remove callback function\r\n try {\r\n (fn.rm || fn.remove).call(fn);\r\n }\r\n catch (e) {\r\n _throwInternal(logger, 2 /* eLoggingSeverity.WARNING */, 73 /* _eInternalMessageId.PluginException */, \"Unloading:\" + dumpObj(e));\r\n }\r\n });\r\n if (_maxHooks && oldHooks[_DYN_LENGTH /* @min:%2elength */] > _maxHooks) {\r\n _hookAddMonitor ? _hookAddMonitor(\"doUnload\", oldHooks) : _throwInternal(null, 1 /* eLoggingSeverity.CRITICAL */, 48 /* _eInternalMessageId.MaxUnloadHookExceeded */, \"Max unload hooks exceeded. An excessive number of unload hooks has been detected.\");\r\n }\r\n }\r\n function _addHook(hooks) {\r\n if (hooks) {\r\n arrAppend(_hooks, hooks);\r\n if (_maxHooks && _hooks[_DYN_LENGTH /* @min:%2elength */] > _maxHooks) {\r\n _hookAddMonitor ? _hookAddMonitor(\"Add\", _hooks) : _throwInternal(null, 1 /* eLoggingSeverity.CRITICAL */, 48 /* _eInternalMessageId.MaxUnloadHookExceeded */, \"Max unload hooks exceeded. An excessive number of unload hooks has been detected.\");\r\n }\r\n }\r\n }\r\n return {\r\n run: _doUnload,\r\n add: _addHook\r\n };\r\n}\r\n//# sourceMappingURL=UnloadHookContainer.js.map","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\n\"use strict\";\r\nvar _a;\r\nimport dynamicProto from \"@microsoft/dynamicproto-js\";\r\nimport { isFunction, objDefine } from \"@nevware21/ts-utils\";\r\nimport { createDynamicConfig } from \"../Config/DynamicConfig\";\r\nimport { _DYN_CREATE_NEW, _DYN_DIAG_LOG, _DYN_GET_NEXT, _DYN_GET_PROCESS_TEL_CONT2, _DYN_INITIALIZE, _DYN_IS_ASYNC, _DYN_IS_INITIALIZED, _DYN_PROCESS_NEXT, _DYN_SET_NEXT_PLUGIN, _DYN_TEARDOWN, _DYN_UPDATE, _DYN__DO_TEARDOWN } from \"../__DynamicConstants\";\r\nimport { safeGetLogger } from \"./DiagnosticLogger\";\r\nimport { isNotNullOrUndefined, proxyFunctionAs } from \"./HelperFuncs\";\r\nimport { STR_CORE, STR_EXTENSION_CONFIG, STR_PROCESS_TELEMETRY } from \"./InternalConstants\";\r\nimport { createProcessTelemetryContext, createProcessTelemetryUnloadContext, createProcessTelemetryUpdateContext } from \"./ProcessTelemetryContext\";\r\nimport { createUnloadHandlerContainer } from \"./UnloadHandlerContainer\";\r\nimport { createUnloadHookContainer } from \"./UnloadHookContainer\";\r\nvar strGetPlugin = \"getPlugin\";\r\nvar defaultValues = (_a = {},\r\n _a[STR_EXTENSION_CONFIG] = { isVal: isNotNullOrUndefined, v: {} },\r\n _a);\r\n/**\r\n * BaseTelemetryPlugin provides a basic implementation of the ITelemetryPlugin interface so that plugins\r\n * can avoid implementation the same set of boiler plate code as well as provide a base\r\n * implementation so that new default implementations can be added without breaking all plugins.\r\n */\r\nvar BaseTelemetryPlugin = /** @class */ (function () {\r\n function BaseTelemetryPlugin() {\r\n var _self = this; // Setting _self here as it's used outside of the dynamicProto as well\r\n // NOTE!: DON'T set default values here, instead set them in the _initDefaults() function as it is also called during teardown()\r\n var _isinitialized;\r\n var _rootCtx; // Used as the root context, holding the current config and initialized core\r\n var _nextPlugin; // Used for backward compatibility where plugins don't call the main pipeline\r\n var _unloadHandlerContainer;\r\n var _hookContainer;\r\n _initDefaults();\r\n dynamicProto(BaseTelemetryPlugin, _self, function (_self) {\r\n _self[_DYN_INITIALIZE /* @min:%2einitialize */] = function (config, core, extensions, pluginChain) {\r\n _setDefaults(config, core, pluginChain);\r\n _isinitialized = true;\r\n };\r\n _self[_DYN_TEARDOWN /* @min:%2eteardown */] = function (unloadCtx, unloadState) {\r\n var _a;\r\n // If this plugin has already been torn down (not operational) or is not initialized (core is not set)\r\n // or the core being used for unload was not the same core used for initialization.\r\n var core = _self[STR_CORE /* @min:%2ecore */];\r\n if (!core || (unloadCtx && core !== unloadCtx[STR_CORE /* @min:%2ecore */]())) {\r\n // Do Nothing as either the plugin is not initialized or was not initialized by the current core\r\n return;\r\n }\r\n var result;\r\n var unloadDone = false;\r\n var theUnloadCtx = unloadCtx || createProcessTelemetryUnloadContext(null, core, _nextPlugin && _nextPlugin[strGetPlugin] ? _nextPlugin[strGetPlugin]() : _nextPlugin);\r\n var theUnloadState = unloadState || (_a = {\r\n reason: 0 /* TelemetryUnloadReason.ManualTeardown */\r\n },\r\n _a[_DYN_IS_ASYNC /* @min:isAsync */] = false,\r\n _a);\r\n function _unloadCallback() {\r\n if (!unloadDone) {\r\n unloadDone = true;\r\n _unloadHandlerContainer.run(theUnloadCtx, unloadState);\r\n _hookContainer.run(theUnloadCtx[_DYN_DIAG_LOG /* @min:%2ediagLog */]());\r\n if (result === true) {\r\n theUnloadCtx[_DYN_PROCESS_NEXT /* @min:%2eprocessNext */](theUnloadState);\r\n }\r\n _initDefaults();\r\n }\r\n }\r\n if (!_self[_DYN__DO_TEARDOWN /* @min:%2e_doTeardown */] || _self[_DYN__DO_TEARDOWN /* @min:%2e_doTeardown */](theUnloadCtx, theUnloadState, _unloadCallback) !== true) {\r\n _unloadCallback();\r\n }\r\n else {\r\n // Tell the caller that we will be calling processNext()\r\n result = true;\r\n }\r\n return result;\r\n };\r\n _self[_DYN_UPDATE /* @min:%2eupdate */] = function (updateCtx, updateState) {\r\n // If this plugin has already been torn down (not operational) or is not initialized (core is not set)\r\n // or the core being used for unload was not the same core used for initialization.\r\n var core = _self[STR_CORE /* @min:%2ecore */];\r\n if (!core || (updateCtx && core !== updateCtx[STR_CORE /* @min:%2ecore */]())) {\r\n // Do Nothing\r\n return;\r\n }\r\n var result;\r\n var updateDone = false;\r\n var theUpdateCtx = updateCtx || createProcessTelemetryUpdateContext(null, core, _nextPlugin && _nextPlugin[strGetPlugin] ? _nextPlugin[strGetPlugin]() : _nextPlugin);\r\n var theUpdateState = updateState || {\r\n reason: 0 /* TelemetryUpdateReason.Unknown */\r\n };\r\n function _updateCallback() {\r\n if (!updateDone) {\r\n updateDone = true;\r\n _setDefaults(theUpdateCtx.getCfg(), theUpdateCtx.core(), theUpdateCtx[_DYN_GET_NEXT /* @min:%2egetNext */]());\r\n }\r\n }\r\n if (!_self._doUpdate || _self._doUpdate(theUpdateCtx, theUpdateState, _updateCallback) !== true) {\r\n _updateCallback();\r\n }\r\n else {\r\n result = true;\r\n }\r\n return result;\r\n };\r\n proxyFunctionAs(_self, \"_addUnloadCb\", function () { return _unloadHandlerContainer; }, \"add\");\r\n proxyFunctionAs(_self, \"_addHook\", function () { return _hookContainer; }, \"add\");\r\n objDefine(_self, \"_unloadHooks\", { g: function () { return _hookContainer; } });\r\n });\r\n // These are added after the dynamicProto so that are not moved to the prototype\r\n _self[_DYN_DIAG_LOG /* @min:%2ediagLog */] = function (itemCtx) {\r\n return _getTelCtx(itemCtx)[_DYN_DIAG_LOG /* @min:%2ediagLog */]();\r\n };\r\n _self[_DYN_IS_INITIALIZED /* @min:%2eisInitialized */] = function () {\r\n return _isinitialized;\r\n };\r\n _self.setInitialized = function (isInitialized) {\r\n _isinitialized = isInitialized;\r\n };\r\n // _self.getNextPlugin = () => DO NOT IMPLEMENT\r\n // Sub-classes of this base class *should* not be relying on this value and instead\r\n // should use processNext() function. If you require access to the plugin use the\r\n // IProcessTelemetryContext.getNext().getPlugin() while in the pipeline, Note getNext() may return null.\r\n _self[_DYN_SET_NEXT_PLUGIN /* @min:%2esetNextPlugin */] = function (next) {\r\n _nextPlugin = next;\r\n };\r\n _self[_DYN_PROCESS_NEXT /* @min:%2eprocessNext */] = function (env, itemCtx) {\r\n if (itemCtx) {\r\n // Normal core execution sequence\r\n itemCtx[_DYN_PROCESS_NEXT /* @min:%2eprocessNext */](env);\r\n }\r\n else if (_nextPlugin && isFunction(_nextPlugin[STR_PROCESS_TELEMETRY /* @min:%2eprocessTelemetry */])) {\r\n // Looks like backward compatibility or out of band processing. And as it looks\r\n // like a ITelemetryPlugin or ITelemetryPluginChain, just call processTelemetry\r\n _nextPlugin[STR_PROCESS_TELEMETRY /* @min:%2eprocessTelemetry */](env, null);\r\n }\r\n };\r\n _self._getTelCtx = _getTelCtx;\r\n function _getTelCtx(currentCtx) {\r\n if (currentCtx === void 0) { currentCtx = null; }\r\n var itemCtx = currentCtx;\r\n if (!itemCtx) {\r\n var rootCtx = _rootCtx || createProcessTelemetryContext(null, {}, _self[STR_CORE /* @min:%2ecore */]);\r\n // tslint:disable-next-line: prefer-conditional-expression\r\n if (_nextPlugin && _nextPlugin[strGetPlugin]) {\r\n // Looks like a chain object\r\n itemCtx = rootCtx[_DYN_CREATE_NEW /* @min:%2ecreateNew */](null, _nextPlugin[strGetPlugin]);\r\n }\r\n else {\r\n itemCtx = rootCtx[_DYN_CREATE_NEW /* @min:%2ecreateNew */](null, _nextPlugin);\r\n }\r\n }\r\n return itemCtx;\r\n }\r\n function _setDefaults(config, core, pluginChain) {\r\n // Make sure the extensionConfig exists and the config is dynamic\r\n createDynamicConfig(config, defaultValues, safeGetLogger(core));\r\n if (!pluginChain && core) {\r\n // Get the first plugin from the core\r\n pluginChain = core[_DYN_GET_PROCESS_TEL_CONT2 /* @min:%2egetProcessTelContext */]()[_DYN_GET_NEXT /* @min:%2egetNext */]();\r\n }\r\n var nextPlugin = _nextPlugin;\r\n if (_nextPlugin && _nextPlugin[strGetPlugin]) {\r\n // If it looks like a proxy/chain then get the plugin\r\n nextPlugin = _nextPlugin[strGetPlugin]();\r\n }\r\n // Support legacy plugins where core was defined as a property\r\n _self[STR_CORE /* @min:%2ecore */] = core;\r\n _rootCtx = createProcessTelemetryContext(pluginChain, config, core, nextPlugin);\r\n }\r\n function _initDefaults() {\r\n _isinitialized = false;\r\n _self[STR_CORE /* @min:%2ecore */] = null;\r\n _rootCtx = null;\r\n _nextPlugin = null;\r\n _hookContainer = createUnloadHookContainer();\r\n _unloadHandlerContainer = createUnloadHandlerContainer();\r\n }\r\n }\r\n BaseTelemetryPlugin.prototype.initialize = function (config, core, extensions, pluginChain) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n /**\r\n * Tear down the plugin and remove any hooked value, the plugin should be removed so that it is no longer initialized and\r\n * therefore could be re-initialized after being torn down. The plugin should ensure that once this has been called any further\r\n * processTelemetry calls are ignored and it just calls the processNext() with the provided context.\r\n * @param unloadCtx - This is the context that should be used during unloading.\r\n * @param unloadState - The details / state of the unload process, it holds details like whether it should be unloaded synchronously or asynchronously and the reason for the unload.\r\n * @returns boolean - true if the plugin has or will call processNext(), this for backward compatibility as previously teardown was synchronous and returned nothing.\r\n */\r\n BaseTelemetryPlugin.prototype.teardown = function (unloadCtx, unloadState) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n return false;\r\n };\r\n /**\r\n * The the plugin should re-evaluate configuration and update any cached configuration settings.\r\n * @param updateCtx - This is the context that should be used during updating.\r\n * @param updateState - The details / state of the update process, it holds details like the current and previous configuration.\r\n * @returns boolean - true if the plugin has or will call updateCtx.processNext(), this allows the plugin to perform any asynchronous operations.\r\n */\r\n BaseTelemetryPlugin.prototype.update = function (updateCtx, updateState) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n /**\r\n * Add an unload handler that will be called when the SDK is being unloaded\r\n * @param handler - the handler\r\n */\r\n BaseTelemetryPlugin.prototype._addUnloadCb = function (handler) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n /**\r\n * Add this hook so that it is automatically removed during unloading\r\n * @param hooks - The single hook or an array of IInstrumentHook objects\r\n */\r\n BaseTelemetryPlugin.prototype._addHook = function (hooks) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n return BaseTelemetryPlugin;\r\n}());\r\nexport { BaseTelemetryPlugin };\r\n//# sourceMappingURL=BaseTelemetryPlugin.js.map","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\nimport { strShimFunction, strShimPrototype } from \"@microsoft/applicationinsights-shims\";\r\nimport { getInst, objHasOwnProperty } from \"@nevware21/ts-utils\";\r\nimport { _DYN_APPLY, _DYN_LENGTH, _DYN_NAME, _DYN_PUSH, _DYN_SPLICE } from \"../__DynamicConstants\";\r\nimport { _getObjProto } from \"./HelperFuncs\";\r\nvar aiInstrumentHooks = \"_aiHooks\";\r\nvar cbNames = [\r\n \"req\", \"rsp\", \"hkErr\", \"fnErr\"\r\n];\r\n/** @ignore */\r\nfunction _arrLoop(arr, fn) {\r\n if (arr) {\r\n for (var lp = 0; lp < arr[_DYN_LENGTH /* @min:%2elength */]; lp++) {\r\n if (fn(arr[lp], lp)) {\r\n break;\r\n }\r\n }\r\n }\r\n}\r\n/** @ignore */\r\nfunction _doCallbacks(hooks, callDetails, cbArgs, hookCtx, type) {\r\n if (type >= 0 /* CallbackType.Request */ && type <= 2 /* CallbackType.HookError */) {\r\n _arrLoop(hooks, function (hook, idx) {\r\n var cbks = hook.cbks;\r\n var cb = cbks[cbNames[type]];\r\n if (cb) {\r\n // Set the specific hook context implementation using a lazy creation pattern\r\n callDetails.ctx = function () {\r\n var ctx = hookCtx[idx] = (hookCtx[idx] || {});\r\n return ctx;\r\n };\r\n try {\r\n cb[_DYN_APPLY /* @min:%2eapply */](callDetails.inst, cbArgs);\r\n }\r\n catch (err) {\r\n var orgEx = callDetails.err;\r\n try {\r\n // Report Hook error via the callback\r\n var hookErrorCb = cbks[cbNames[2 /* CallbackType.HookError */]];\r\n if (hookErrorCb) {\r\n callDetails.err = err;\r\n hookErrorCb[_DYN_APPLY /* @min:%2eapply */](callDetails.inst, cbArgs);\r\n }\r\n }\r\n catch (e) {\r\n // Not much we can do here -- swallowing the exception to avoid crashing the hosting app\r\n }\r\n finally {\r\n // restore the original exception (if any)\r\n callDetails.err = orgEx;\r\n }\r\n }\r\n }\r\n });\r\n }\r\n}\r\n/** @ignore */\r\nfunction _createFunctionHook(aiHook) {\r\n // Define a temporary method that queues-up a the real method call\r\n return function () {\r\n var _a;\r\n var funcThis = this;\r\n // Capture the original arguments passed to the method\r\n var orgArgs = arguments;\r\n var hooks = aiHook.h;\r\n var funcArgs = (_a = {},\r\n _a[_DYN_NAME /* @min:name */] = aiHook.n,\r\n _a.inst = funcThis,\r\n _a.ctx = null,\r\n _a.set = _replaceArg,\r\n _a);\r\n var hookCtx = [];\r\n var cbArgs = _createArgs([funcArgs], orgArgs);\r\n funcArgs.evt = getInst(\"event\");\r\n function _createArgs(target, theArgs) {\r\n _arrLoop(theArgs, function (arg) {\r\n target[_DYN_PUSH /* @min:%2epush */](arg);\r\n });\r\n return target;\r\n }\r\n function _replaceArg(idx, value) {\r\n orgArgs = _createArgs([], orgArgs);\r\n orgArgs[idx] = value;\r\n cbArgs = _createArgs([funcArgs], orgArgs);\r\n }\r\n // Call the pre-request hooks\r\n _doCallbacks(hooks, funcArgs, cbArgs, hookCtx, 0 /* CallbackType.Request */);\r\n // Call the original function was called\r\n var theFunc = aiHook.f;\r\n if (theFunc) {\r\n try {\r\n funcArgs.rslt = theFunc[_DYN_APPLY /* @min:%2eapply */](funcThis, orgArgs);\r\n }\r\n catch (err) {\r\n // Report the request callback\r\n funcArgs.err = err;\r\n _doCallbacks(hooks, funcArgs, cbArgs, hookCtx, 3 /* CallbackType.FunctionError */);\r\n // rethrow the original exception so anyone listening for it can catch the exception\r\n throw err;\r\n }\r\n }\r\n // Call the post-request hooks\r\n _doCallbacks(hooks, funcArgs, cbArgs, hookCtx, 1 /* CallbackType.Response */);\r\n return funcArgs.rslt;\r\n };\r\n}\r\n/** @ignore */\r\nfunction _getOwner(target, name, checkPrototype, checkParentProto) {\r\n var owner = null;\r\n if (target) {\r\n if (objHasOwnProperty(target, name)) {\r\n owner = target;\r\n }\r\n else if (checkPrototype) {\r\n owner = _getOwner(_getObjProto(target), name, checkParentProto, false);\r\n }\r\n }\r\n return owner;\r\n}\r\n/**\r\n * Intercept the named prototype functions for the target class / object\r\n * @param target - The target object\r\n * @param funcName - The function name\r\n * @param callbacks - The callbacks to configure and call whenever the function is called\r\n */\r\nexport function InstrumentProto(target, funcName, callbacks) {\r\n if (target) {\r\n return InstrumentFunc(target[strShimPrototype], funcName, callbacks, false);\r\n }\r\n return null;\r\n}\r\n/**\r\n * Intercept the named prototype functions for the target class / object\r\n * @param target - The target object\r\n * @param funcNames - The function names to intercept and call\r\n * @param callbacks - The callbacks to configure and call whenever the function is called\r\n */\r\nexport function InstrumentProtos(target, funcNames, callbacks) {\r\n if (target) {\r\n return InstrumentFuncs(target[strShimPrototype], funcNames, callbacks, false);\r\n }\r\n return null;\r\n}\r\nfunction _createInstrumentHook(owner, funcName, fn, callbacks) {\r\n var aiHook = fn && fn[aiInstrumentHooks];\r\n if (!aiHook) {\r\n // Only hook the function once\r\n aiHook = {\r\n i: 0,\r\n n: funcName,\r\n f: fn,\r\n h: []\r\n };\r\n // Override (hook) the original function\r\n var newFunc = _createFunctionHook(aiHook);\r\n newFunc[aiInstrumentHooks] = aiHook; // Tag and store the function hooks\r\n owner[funcName] = newFunc;\r\n }\r\n var theHook = {\r\n // tslint:disable:object-literal-shorthand\r\n id: aiHook.i,\r\n cbks: callbacks,\r\n rm: function () {\r\n // DO NOT Use () => { shorthand for the function as the this gets replaced\r\n // with the outer this and not the this for theHook instance.\r\n var id = this.id;\r\n _arrLoop(aiHook.h, function (hook, idx) {\r\n if (hook.id === id) {\r\n aiHook.h[_DYN_SPLICE /* @min:%2esplice */](idx, 1);\r\n return 1;\r\n }\r\n });\r\n }\r\n // tslint:enable:object-literal-shorthand\r\n };\r\n aiHook.i++;\r\n aiHook.h[_DYN_PUSH /* @min:%2epush */](theHook);\r\n return theHook;\r\n}\r\n/**\r\n * Intercept the named prototype functions for the target class / object\r\n * @param target - The target object\r\n * @param funcName - The function name\r\n * @param callbacks - The callbacks to configure and call whenever the function is called\r\n * @param checkPrototype - If the function doesn't exist on the target should it attempt to hook the prototype function\r\n * @param checkParentProto - If the function doesn't exist on the target or it's prototype should it attempt to hook the parent's prototype\r\n */\r\nexport function InstrumentFunc(target, funcName, callbacks, checkPrototype, checkParentProto) {\r\n if (checkPrototype === void 0) { checkPrototype = true; }\r\n if (target && funcName && callbacks) {\r\n var owner = _getOwner(target, funcName, checkPrototype, checkParentProto);\r\n if (owner) {\r\n var fn = owner[funcName];\r\n if (typeof fn === strShimFunction) {\r\n return _createInstrumentHook(owner, funcName, fn, callbacks);\r\n }\r\n }\r\n }\r\n return null;\r\n}\r\n/**\r\n * Intercept the named functions for the target class / object\r\n * @param target - The target object\r\n * @param funcNames - The function names to intercept and call\r\n * @param callbacks - The callbacks to configure and call whenever the function is called\r\n * @param checkPrototype - If the function doesn't exist on the target should it attempt to hook the prototype function\r\n * @param checkParentProto - If the function doesn't exist on the target or it's prototype should it attempt to hook the parent's prototype\r\n */\r\nexport function InstrumentFuncs(target, funcNames, callbacks, checkPrototype, checkParentProto) {\r\n if (checkPrototype === void 0) { checkPrototype = true; }\r\n var hooks = null;\r\n _arrLoop(funcNames, function (funcName) {\r\n var hook = InstrumentFunc(target, funcName, callbacks, checkPrototype, checkParentProto);\r\n if (hook) {\r\n if (!hooks) {\r\n hooks = [];\r\n }\r\n hooks[_DYN_PUSH /* @min:%2epush */](hook);\r\n }\r\n });\r\n return hooks;\r\n}\r\n/**\r\n * Add an instrumentation hook to the provided named \"event\" for the target class / object, this doesn't check whether the\r\n * named \"event\" is in fact a function and just assigns the instrumentation hook to the target[evtName]\r\n * @param target - The target object\r\n * @param evtName - The name of the event\r\n * @param callbacks - The callbacks to configure and call whenever the function is called\r\n * @param checkPrototype - If the function doesn't exist on the target should it attempt to hook the prototype function\r\n * @param checkParentProto - If the function doesn't exist on the target or it's prototype should it attempt to hook the parent's prototype\r\n */\r\nexport function InstrumentEvent(target, evtName, callbacks, checkPrototype, checkParentProto) {\r\n if (target && evtName && callbacks) {\r\n var owner = _getOwner(target, evtName, checkPrototype, checkParentProto) || target;\r\n if (owner) {\r\n return _createInstrumentHook(owner, evtName, owner[evtName], callbacks);\r\n }\r\n }\r\n return null;\r\n}\r\n//# sourceMappingURL=InstrumentHooks.js.map","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\nimport { arrForEach, dumpObj } from \"@nevware21/ts-utils\";\r\nimport { _DYN_DIAG_LOG, _DYN_PUSH } from \"../__DynamicConstants\";\r\nimport { _throwInternal } from \"./DiagnosticLogger\";\r\nexport function createUnloadHandlerContainer() {\r\n var handlers = [];\r\n function _addHandler(handler) {\r\n if (handler) {\r\n handlers[_DYN_PUSH /* @min:%2epush */](handler);\r\n }\r\n }\r\n function _runHandlers(unloadCtx, unloadState) {\r\n arrForEach(handlers, function (handler) {\r\n try {\r\n handler(unloadCtx, unloadState);\r\n }\r\n catch (e) {\r\n _throwInternal(unloadCtx[_DYN_DIAG_LOG /* @min:%2ediagLog */](), 2 /* eLoggingSeverity.WARNING */, 73 /* _eInternalMessageId.PluginException */, \"Unexpected error calling unload handler - \" + dumpObj(e));\r\n }\r\n });\r\n handlers = [];\r\n }\r\n return {\r\n add: _addHandler,\r\n run: _runHandlers\r\n };\r\n}\r\n//# sourceMappingURL=UnloadHandlerContainer.js.map","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\n// @skip-file-minify\r\n// ##############################################################\r\n// AUTO GENERATED FILE: This file is Auto Generated during build.\r\n// ##############################################################\r\n// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\r\n// Note: DON'T Export these const from the package as we are still targeting ES3 this will export a mutable variables that someone could change!!!\r\n// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\r\nexport var _DYN_TO_STRING = \"toString\"; // Count: 4\r\nexport var _DYN_IS_STORAGE_USE_DISAB0 = \"isStorageUseDisabled\"; // Count: 3\r\nexport var _DYN__ADD_HOOK = \"_addHook\"; // Count: 6\r\nexport var _DYN_CORE = \"core\"; // Count: 7\r\nexport var _DYN_DATA_TYPE = \"dataType\"; // Count: 8\r\nexport var _DYN_ENVELOPE_TYPE = \"envelopeType\"; // Count: 7\r\nexport var _DYN_DIAG_LOG = \"diagLog\"; // Count: 13\r\nexport var _DYN_TRACK = \"track\"; // Count: 7\r\nexport var _DYN_TRACK_PAGE_VIEW = \"trackPageView\"; // Count: 4\r\nexport var _DYN_TRACK_PREVIOUS_PAGE_1 = \"trackPreviousPageVisit\"; // Count: 3\r\nexport var _DYN_SEND_PAGE_VIEW_INTER2 = \"sendPageViewInternal\"; // Count: 7\r\nexport var _DYN_START_TIME = \"startTime\"; // Count: 6\r\nexport var _DYN_PROPERTIES = \"properties\"; // Count: 5\r\nexport var _DYN_DURATION = \"duration\"; // Count: 12\r\nexport var _DYN_SEND_PAGE_VIEW_PERFO3 = \"sendPageViewPerformanceInternal\"; // Count: 3\r\nexport var _DYN_POPULATE_PAGE_VIEW_P4 = \"populatePageViewPerformanceEvent\"; // Count: 3\r\nexport var _DYN_HREF = \"href\"; // Count: 6\r\nexport var _DYN_SEND_EXCEPTION_INTER5 = \"sendExceptionInternal\"; // Count: 2\r\nexport var _DYN_EXCEPTION = \"exception\"; // Count: 3\r\nexport var _DYN_ERROR = \"error\"; // Count: 5\r\nexport var _DYN__ONERROR = \"_onerror\"; // Count: 3\r\nexport var _DYN_ERROR_SRC = \"errorSrc\"; // Count: 3\r\nexport var _DYN_LINE_NUMBER = \"lineNumber\"; // Count: 5\r\nexport var _DYN_COLUMN_NUMBER = \"columnNumber\"; // Count: 5\r\nexport var _DYN_MESSAGE = \"message\"; // Count: 4\r\nexport var _DYN__CREATE_AUTO_EXCEPTI6 = \"CreateAutoException\"; // Count: 3\r\nexport var _DYN_ADD_TELEMETRY_INITIA7 = \"addTelemetryInitializer\"; // Count: 4\r\nexport var _DYN_OVERRIDE_PAGE_VIEW_D8 = \"overridePageViewDuration\"; // Count: 2\r\nexport var _DYN_AUTO_EXCEPTION_INSTR9 = \"autoExceptionInstrumented\"; // Count: 3\r\nexport var _DYN_AUTO_TRACK_PAGE_VISI10 = \"autoTrackPageVisitTime\"; // Count: 2\r\nexport var _DYN_IS_BROWSER_LINK_TRAC11 = \"isBrowserLinkTrackingEnabled\"; // Count: 2\r\nexport var _DYN_LENGTH = \"length\"; // Count: 5\r\nexport var _DYN_ENABLE_AUTO_ROUTE_TR12 = \"enableAutoRouteTracking\"; // Count: 2\r\nexport var _DYN_ENABLE_UNHANDLED_PRO13 = \"enableUnhandledPromiseRejectionTracking\"; // Count: 2\r\nexport var _DYN_AUTO_UNHANDLED_PROMI14 = \"autoUnhandledPromiseInstrumented\"; // Count: 3\r\nexport var _DYN_GET_ENTRIES_BY_TYPE = \"getEntriesByType\"; // Count: 5\r\nexport var _DYN_IS_PERFORMANCE_TIMIN15 = \"isPerformanceTimingSupported\"; // Count: 2\r\nexport var _DYN_GET_PERFORMANCE_TIMI16 = \"getPerformanceTiming\"; // Count: 2\r\nexport var _DYN_NAVIGATION_START = \"navigationStart\"; // Count: 4\r\nexport var _DYN_SHOULD_COLLECT_DURAT17 = \"shouldCollectDuration\"; // Count: 3\r\nexport var _DYN_IS_PERFORMANCE_TIMIN18 = \"isPerformanceTimingDataReady\"; // Count: 2\r\nexport var _DYN_RESPONSE_START = \"responseStart\"; // Count: 5\r\nexport var _DYN_REQUEST_START = \"requestStart\"; // Count: 3\r\nexport var _DYN_LOAD_EVENT_END = \"loadEventEnd\"; // Count: 4\r\nexport var _DYN_RESPONSE_END = \"responseEnd\"; // Count: 5\r\nexport var _DYN_CONNECT_END = \"connectEnd\"; // Count: 4\r\nexport var _DYN_PAGE_VISIT_START_TIM19 = \"pageVisitStartTime\"; // Count: 2\r\n//# sourceMappingURL=__DynamicConstants.js.map","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\nimport dynamicProto from \"@microsoft/dynamicproto-js\";\r\nimport { dateTimeUtilsDuration } from \"@microsoft/applicationinsights-common\";\r\nimport { _throwInternal, arrForEach, dumpObj, getDocument, getExceptionName, getLocation, isNullOrUndefined } from \"@microsoft/applicationinsights-core-js\";\r\nimport { getPerformance, isUndefined, isWebWorker, scheduleTimeout } from \"@nevware21/ts-utils\";\r\nimport { _DYN_DURATION, _DYN_GET_ENTRIES_BY_TYPE, _DYN_GET_PERFORMANCE_TIMI16, _DYN_HREF, _DYN_IS_PERFORMANCE_TIMIN15, _DYN_IS_PERFORMANCE_TIMIN18, _DYN_LENGTH, _DYN_NAVIGATION_START, _DYN_POPULATE_PAGE_VIEW_P4, _DYN_PROPERTIES, _DYN_SEND_PAGE_VIEW_INTER2, _DYN_SEND_PAGE_VIEW_PERFO3, _DYN_SHOULD_COLLECT_DURAT17, _DYN_START_TIME, _DYN_TRACK_PAGE_VIEW } from \"../../__DynamicConstants\";\r\n/**\r\n * Class encapsulates sending page views and page view performance telemetry.\r\n */\r\nvar PageViewManager = /** @class */ (function () {\r\n function PageViewManager(appInsights, overridePageViewDuration, core, pageViewPerformanceManager) {\r\n dynamicProto(PageViewManager, this, function (_self) {\r\n var queueTimer = null;\r\n var itemQueue = [];\r\n var pageViewPerformanceSent = false;\r\n var firstPageViewSent = false;\r\n var _logger;\r\n if (core) {\r\n _logger = core.logger;\r\n }\r\n function _flushChannels(isAsync) {\r\n if (core) {\r\n core.flush(isAsync, function () {\r\n // Event flushed, callback added to prevent promise creation\r\n });\r\n }\r\n }\r\n function _startTimer() {\r\n if (!queueTimer) {\r\n queueTimer = scheduleTimeout((function () {\r\n queueTimer = null;\r\n var allItems = itemQueue.slice(0);\r\n var doFlush = false;\r\n itemQueue = [];\r\n arrForEach(allItems, function (item) {\r\n if (!item()) {\r\n // Not processed so rescheduled\r\n itemQueue.push(item);\r\n }\r\n else {\r\n doFlush = true;\r\n }\r\n });\r\n if (itemQueue[_DYN_LENGTH /* @min:%2elength */] > 0) {\r\n _startTimer();\r\n }\r\n if (doFlush) {\r\n // We process at least one item so flush the queue\r\n _flushChannels(true);\r\n }\r\n }), 100);\r\n }\r\n }\r\n function _addQueue(cb) {\r\n itemQueue.push(cb);\r\n _startTimer();\r\n }\r\n _self[_DYN_TRACK_PAGE_VIEW /* @min:%2etrackPageView */] = function (pageView, customProperties) {\r\n var name = pageView.name;\r\n if (isNullOrUndefined(name) || typeof name !== \"string\") {\r\n var doc = getDocument();\r\n name = pageView.name = doc && doc.title || \"\";\r\n }\r\n var uri = pageView.uri;\r\n if (isNullOrUndefined(uri) || typeof uri !== \"string\") {\r\n var location_1 = getLocation();\r\n uri = pageView.uri = location_1 && location_1[_DYN_HREF /* @min:%2ehref */] || \"\";\r\n }\r\n if (!firstPageViewSent) {\r\n var perf = getPerformance();\r\n // Access the performance timing object\r\n var navigationEntries = (perf && perf[_DYN_GET_ENTRIES_BY_TYPE /* @min:%2egetEntriesByType */] && perf[_DYN_GET_ENTRIES_BY_TYPE /* @min:%2egetEntriesByType */](\"navigation\"));\r\n // Edge Case the navigation Entries may return an empty array and the timeOrigin is not supported on IE\r\n if (navigationEntries && navigationEntries[0] && !isUndefined(perf.timeOrigin)) {\r\n // Get the value of loadEventStart\r\n var loadEventStart = navigationEntries[0].loadEventStart;\r\n pageView[_DYN_START_TIME /* @min:%2estartTime */] = new Date(perf.timeOrigin + loadEventStart);\r\n }\r\n else {\r\n // calculate the start time manually\r\n var duration_1 = ((customProperties || pageView[_DYN_PROPERTIES /* @min:%2eproperties */] || {})[_DYN_DURATION /* @min:%2eduration */] || 0);\r\n pageView[_DYN_START_TIME /* @min:%2estartTime */] = new Date(new Date().getTime() - duration_1);\r\n }\r\n firstPageViewSent = true;\r\n }\r\n // case 1a. if performance timing is not supported by the browser, send the page view telemetry with the duration provided by the user. If the user\r\n // do not provide the duration, set duration to undefined\r\n // Also this is case 4\r\n if (!pageViewPerformanceManager[_DYN_IS_PERFORMANCE_TIMIN15 /* @min:%2eisPerformanceTimingSupported */]()) {\r\n appInsights[_DYN_SEND_PAGE_VIEW_INTER2 /* @min:%2esendPageViewInternal */](pageView, customProperties);\r\n _flushChannels(true);\r\n if (!isWebWorker()) {\r\n // no navigation timing (IE 8, iOS Safari 8.4, Opera Mini 8 - see http://caniuse.com/#feat=nav-timing)\r\n _throwInternal(_logger, 2 /* eLoggingSeverity.WARNING */, 25 /* _eInternalMessageId.NavigationTimingNotSupported */, \"trackPageView: navigation timing API used for calculation of page duration is not supported in this browser. This page view will be collected without duration and timing info.\");\r\n }\r\n return;\r\n }\r\n var pageViewSent = false;\r\n var customDuration;\r\n // if the performance timing is supported by the browser, calculate the custom duration\r\n var start = pageViewPerformanceManager[_DYN_GET_PERFORMANCE_TIMI16 /* @min:%2egetPerformanceTiming */]()[_DYN_NAVIGATION_START /* @min:%2enavigationStart */];\r\n if (start > 0) {\r\n customDuration = dateTimeUtilsDuration(start, +new Date);\r\n if (!pageViewPerformanceManager[_DYN_SHOULD_COLLECT_DURAT17 /* @min:%2eshouldCollectDuration */](customDuration)) {\r\n customDuration = undefined;\r\n }\r\n }\r\n // if the user has provided duration, send a page view telemetry with the provided duration. Otherwise, if\r\n // overridePageViewDuration is set to true, send a page view telemetry with the custom duration calculated earlier\r\n var duration;\r\n if (!isNullOrUndefined(customProperties) &&\r\n !isNullOrUndefined(customProperties[_DYN_DURATION /* @min:%2eduration */])) {\r\n duration = customProperties[_DYN_DURATION /* @min:%2eduration */];\r\n }\r\n if (overridePageViewDuration || !isNaN(duration)) {\r\n if (isNaN(duration)) {\r\n // case 3\r\n if (!customProperties) {\r\n customProperties = {};\r\n }\r\n customProperties[_DYN_DURATION /* @min:%2eduration */] = customDuration;\r\n }\r\n // case 2\r\n appInsights[_DYN_SEND_PAGE_VIEW_INTER2 /* @min:%2esendPageViewInternal */](pageView, customProperties);\r\n _flushChannels(true);\r\n pageViewSent = true;\r\n }\r\n // now try to send the page view performance telemetry\r\n var maxDurationLimit = 60000;\r\n if (!customProperties) {\r\n customProperties = {};\r\n }\r\n // Queue the event for processing\r\n _addQueue(function () {\r\n var processed = false;\r\n try {\r\n if (pageViewPerformanceManager[_DYN_IS_PERFORMANCE_TIMIN18 /* @min:%2eisPerformanceTimingDataReady */]()) {\r\n processed = true;\r\n var pageViewPerformance = {\r\n name: name,\r\n uri: uri\r\n };\r\n pageViewPerformanceManager[_DYN_POPULATE_PAGE_VIEW_P4 /* @min:%2epopulatePageViewPerformanceEvent */](pageViewPerformance);\r\n if (!pageViewPerformance.isValid && !pageViewSent) {\r\n // If navigation timing gives invalid numbers, then go back to \"override page view duration\" mode.\r\n // That's the best value we can get that makes sense.\r\n customProperties[_DYN_DURATION /* @min:%2eduration */] = customDuration;\r\n appInsights[_DYN_SEND_PAGE_VIEW_INTER2 /* @min:%2esendPageViewInternal */](pageView, customProperties);\r\n }\r\n else {\r\n if (!pageViewSent) {\r\n customProperties[_DYN_DURATION /* @min:%2eduration */] = pageViewPerformance.durationMs;\r\n appInsights[_DYN_SEND_PAGE_VIEW_INTER2 /* @min:%2esendPageViewInternal */](pageView, customProperties);\r\n }\r\n if (!pageViewPerformanceSent) {\r\n appInsights[_DYN_SEND_PAGE_VIEW_PERFO3 /* @min:%2esendPageViewPerformanceInternal */](pageViewPerformance, customProperties);\r\n pageViewPerformanceSent = true;\r\n }\r\n }\r\n }\r\n else if (start > 0 && dateTimeUtilsDuration(start, +new Date) > maxDurationLimit) {\r\n // if performance timings are not ready but we exceeded the maximum duration limit, just log a page view telemetry\r\n // with the maximum duration limit. Otherwise, keep waiting until performance timings are ready\r\n processed = true;\r\n if (!pageViewSent) {\r\n customProperties[_DYN_DURATION /* @min:%2eduration */] = maxDurationLimit;\r\n appInsights[_DYN_SEND_PAGE_VIEW_INTER2 /* @min:%2esendPageViewInternal */](pageView, customProperties);\r\n }\r\n }\r\n }\r\n catch (e) {\r\n _throwInternal(_logger, 1 /* eLoggingSeverity.CRITICAL */, 38 /* _eInternalMessageId.TrackPVFailedCalc */, \"trackPageView failed on page load calculation: \" + getExceptionName(e), { exception: dumpObj(e) });\r\n }\r\n return processed;\r\n });\r\n };\r\n _self.teardown = function (unloadCtx, unloadState) {\r\n if (queueTimer) {\r\n queueTimer.cancel();\r\n queueTimer = null;\r\n var allItems = itemQueue.slice(0);\r\n var doFlush_1 = false;\r\n itemQueue = [];\r\n arrForEach(allItems, function (item) {\r\n if (item()) {\r\n doFlush_1 = true;\r\n }\r\n });\r\n }\r\n };\r\n });\r\n }\r\n /**\r\n * Currently supported cases:\r\n * 1) (default case) track page view called with default parameters, overridePageViewDuration = false. Page view is sent with page view performance when navigation timing data is available.\r\n * a. If navigation timing is not supported then page view is sent right away with undefined duration. Page view performance is not sent.\r\n * 2) overridePageViewDuration = true, custom duration provided. Custom duration is used, page view sends right away.\r\n * 3) overridePageViewDuration = true, custom duration NOT provided. Page view is sent right away, duration is time spent from page load till now (or undefined if navigation timing is not supported).\r\n * 4) overridePageViewDuration = false, custom duration is provided. Page view is sent right away with custom duration.\r\n *\r\n * In all cases page view performance is sent once (only for the 1st call of trackPageView), or not sent if navigation timing is not supported.\r\n */\r\n PageViewManager.prototype.trackPageView = function (pageView, customProperties) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n PageViewManager.prototype.teardown = function (unloadCtx, unloadState) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n return PageViewManager;\r\n}());\r\nexport { PageViewManager };\r\n//# sourceMappingURL=PageViewManager.js.map","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\nimport dynamicProto from \"@microsoft/dynamicproto-js\";\r\nimport { dateTimeUtilsDuration, msToTimeSpan } from \"@microsoft/applicationinsights-common\";\r\nimport { _throwInternal, getNavigator, getPerformance, safeGetLogger } from \"@microsoft/applicationinsights-core-js\";\r\nimport { strIndexOf } from \"@nevware21/ts-utils\";\r\nimport { _DYN_CONNECT_END, _DYN_DURATION, _DYN_GET_ENTRIES_BY_TYPE, _DYN_GET_PERFORMANCE_TIMI16, _DYN_IS_PERFORMANCE_TIMIN15, _DYN_IS_PERFORMANCE_TIMIN18, _DYN_LENGTH, _DYN_LOAD_EVENT_END, _DYN_NAVIGATION_START, _DYN_POPULATE_PAGE_VIEW_P4, _DYN_REQUEST_START, _DYN_RESPONSE_END, _DYN_RESPONSE_START, _DYN_SHOULD_COLLECT_DURAT17, _DYN_START_TIME } from \"../../__DynamicConstants\";\r\nvar MAX_DURATION_ALLOWED = 3600000; // 1h\r\nvar botAgentNames = [\"googlebot\", \"adsbot-google\", \"apis-google\", \"mediapartners-google\"];\r\nfunction _isPerformanceTimingSupported() {\r\n var perf = getPerformance();\r\n return perf && !!perf.timing;\r\n}\r\nfunction _isPerformanceNavigationTimingSupported() {\r\n var perf = getPerformance();\r\n return perf && perf.getEntriesByType && perf.getEntriesByType(\"navigation\")[_DYN_LENGTH /* @min:%2elength */] > 0;\r\n}\r\nfunction _isPerformanceTimingDataReady() {\r\n var perf = getPerformance();\r\n var timing = perf ? perf.timing : 0;\r\n return timing\r\n && timing.domainLookupStart > 0\r\n && timing[_DYN_NAVIGATION_START /* @min:%2enavigationStart */] > 0\r\n && timing[_DYN_RESPONSE_START /* @min:%2eresponseStart */] > 0\r\n && timing[_DYN_REQUEST_START /* @min:%2erequestStart */] > 0\r\n && timing[_DYN_LOAD_EVENT_END /* @min:%2eloadEventEnd */] > 0\r\n && timing[_DYN_RESPONSE_END /* @min:%2eresponseEnd */] > 0\r\n && timing[_DYN_CONNECT_END /* @min:%2econnectEnd */] > 0\r\n && timing.domLoading > 0;\r\n}\r\nfunction _getPerformanceTiming() {\r\n if (_isPerformanceTimingSupported()) {\r\n return getPerformance().timing;\r\n }\r\n return null;\r\n}\r\nfunction _getPerformanceNavigationTiming() {\r\n if (_isPerformanceNavigationTimingSupported()) {\r\n return getPerformance()[_DYN_GET_ENTRIES_BY_TYPE /* @min:%2egetEntriesByType */](\"navigation\")[0];\r\n }\r\n return null;\r\n}\r\n/**\r\n* This method tells if given durations should be excluded from collection.\r\n*/\r\nfunction _shouldCollectDuration() {\r\n var durations = [];\r\n for (var _i = 0; _i < arguments.length; _i++) {\r\n durations[_i] = arguments[_i];\r\n }\r\n var _navigator = getNavigator() || {};\r\n // a full list of Google crawlers user agent strings - https://support.google.com/webmasters/answer/1061943?hl=en\r\n var userAgent = _navigator.userAgent;\r\n var isGoogleBot = false;\r\n if (userAgent) {\r\n for (var i = 0; i < botAgentNames[_DYN_LENGTH /* @min:%2elength */]; i++) {\r\n isGoogleBot = isGoogleBot || strIndexOf(userAgent.toLowerCase(), botAgentNames[i]) !== -1;\r\n }\r\n }\r\n if (isGoogleBot) {\r\n // Don't report durations for GoogleBot, it is returning invalid values in performance.timing API.\r\n return false;\r\n }\r\n else {\r\n // for other page views, don't report if it's outside of a reasonable range\r\n for (var i = 0; i < durations[_DYN_LENGTH /* @min:%2elength */]; i++) {\r\n if (durations[i] < 0 || durations[i] >= MAX_DURATION_ALLOWED) {\r\n return false;\r\n }\r\n }\r\n }\r\n return true;\r\n}\r\n/**\r\n * Class encapsulates sending page view performance telemetry.\r\n */\r\nvar PageViewPerformanceManager = /** @class */ (function () {\r\n function PageViewPerformanceManager(core) {\r\n var _logger = safeGetLogger(core);\r\n dynamicProto(PageViewPerformanceManager, this, function (_self) {\r\n _self[_DYN_POPULATE_PAGE_VIEW_P4 /* @min:%2epopulatePageViewPerformanceEvent */] = function (pageViewPerformance) {\r\n pageViewPerformance.isValid = false;\r\n /*\r\n * http://www.w3.org/TR/navigation-timing/#processing-model\r\n * |-navigationStart\r\n * | |-connectEnd\r\n * | ||-requestStart\r\n * | || |-responseStart\r\n * | || | |-responseEnd\r\n * | || | |\r\n * | || | | |-loadEventEnd\r\n * |---network---||---request---|---response---|---dom---|\r\n * |--------------------------total----------------------|\r\n *\r\n * total = The difference between the load event of the current document is completed and the first recorded timestamp of the performance entry : https://developer.mozilla.org/en-US/docs/Web/Performance/Navigation_and_resource_timings#duration\r\n * network = Redirect time + App Cache + DNS lookup time + TCP connection time\r\n * request = Request time : https://developer.mozilla.org/en-US/docs/Web/Performance/Navigation_and_resource_timings#request_time\r\n * response = Response time\r\n * dom = Document load time : https://html.spec.whatwg.org/multipage/dom.html#document-load-timing-info\r\n * = Document processing time : https://developers.google.com/web/fundamentals/performance/navigation-and-resource-timing/#document_processing\r\n * + Loading time : https://developers.google.com/web/fundamentals/performance/navigation-and-resource-timing/#loading\r\n */\r\n var navigationTiming = _getPerformanceNavigationTiming();\r\n var timing = _getPerformanceTiming();\r\n var total = 0;\r\n var network = 0;\r\n var request = 0;\r\n var response = 0;\r\n var dom = 0;\r\n if (navigationTiming || timing) {\r\n if (navigationTiming) {\r\n total = navigationTiming[_DYN_DURATION /* @min:%2eduration */];\r\n /**\r\n * support both cases:\r\n * - startTime is always zero: https://developer.mozilla.org/en-US/docs/Web/API/PerformanceNavigationTiming\r\n * - for older browsers where the startTime is not zero\r\n */\r\n network = navigationTiming[_DYN_START_TIME /* @min:%2estartTime */] === 0 ? navigationTiming[_DYN_CONNECT_END /* @min:%2econnectEnd */] : dateTimeUtilsDuration(navigationTiming[_DYN_START_TIME /* @min:%2estartTime */], navigationTiming[_DYN_CONNECT_END /* @min:%2econnectEnd */]);\r\n request = dateTimeUtilsDuration(navigationTiming.requestStart, navigationTiming[_DYN_RESPONSE_START /* @min:%2eresponseStart */]);\r\n response = dateTimeUtilsDuration(navigationTiming[_DYN_RESPONSE_START /* @min:%2eresponseStart */], navigationTiming[_DYN_RESPONSE_END /* @min:%2eresponseEnd */]);\r\n dom = dateTimeUtilsDuration(navigationTiming.responseEnd, navigationTiming[_DYN_LOAD_EVENT_END /* @min:%2eloadEventEnd */]);\r\n }\r\n else {\r\n total = dateTimeUtilsDuration(timing[_DYN_NAVIGATION_START /* @min:%2enavigationStart */], timing[_DYN_LOAD_EVENT_END /* @min:%2eloadEventEnd */]);\r\n network = dateTimeUtilsDuration(timing[_DYN_NAVIGATION_START /* @min:%2enavigationStart */], timing[_DYN_CONNECT_END /* @min:%2econnectEnd */]);\r\n request = dateTimeUtilsDuration(timing.requestStart, timing[_DYN_RESPONSE_START /* @min:%2eresponseStart */]);\r\n response = dateTimeUtilsDuration(timing[_DYN_RESPONSE_START /* @min:%2eresponseStart */], timing[_DYN_RESPONSE_END /* @min:%2eresponseEnd */]);\r\n dom = dateTimeUtilsDuration(timing.responseEnd, timing[_DYN_LOAD_EVENT_END /* @min:%2eloadEventEnd */]);\r\n }\r\n if (total === 0) {\r\n _throwInternal(_logger, 2 /* eLoggingSeverity.WARNING */, 10 /* _eInternalMessageId.ErrorPVCalc */, \"error calculating page view performance.\", { total: total, network: network, request: request, response: response, dom: dom });\r\n }\r\n else if (!_self[_DYN_SHOULD_COLLECT_DURAT17 /* @min:%2eshouldCollectDuration */](total, network, request, response, dom)) {\r\n _throwInternal(_logger, 2 /* eLoggingSeverity.WARNING */, 45 /* _eInternalMessageId.InvalidDurationValue */, \"Invalid page load duration value. Browser perf data won't be sent.\", { total: total, network: network, request: request, response: response, dom: dom });\r\n }\r\n else if (total < Math.floor(network) + Math.floor(request) + Math.floor(response) + Math.floor(dom)) {\r\n // some browsers may report individual components incorrectly so that the sum of the parts will be bigger than total PLT\r\n // in this case, don't report client performance from this page\r\n _throwInternal(_logger, 2 /* eLoggingSeverity.WARNING */, 8 /* _eInternalMessageId.ClientPerformanceMathError */, \"client performance math error.\", { total: total, network: network, request: request, response: response, dom: dom });\r\n }\r\n else {\r\n pageViewPerformance.durationMs = total;\r\n // // convert to timespans\r\n pageViewPerformance.perfTotal = pageViewPerformance[_DYN_DURATION /* @min:%2eduration */] = msToTimeSpan(total);\r\n pageViewPerformance.networkConnect = msToTimeSpan(network);\r\n pageViewPerformance.sentRequest = msToTimeSpan(request);\r\n pageViewPerformance.receivedResponse = msToTimeSpan(response);\r\n pageViewPerformance.domProcessing = msToTimeSpan(dom);\r\n pageViewPerformance.isValid = true;\r\n }\r\n }\r\n };\r\n _self[_DYN_GET_PERFORMANCE_TIMI16 /* @min:%2egetPerformanceTiming */] = _getPerformanceTiming;\r\n _self[_DYN_IS_PERFORMANCE_TIMIN15 /* @min:%2eisPerformanceTimingSupported */] = _isPerformanceTimingSupported;\r\n _self[_DYN_IS_PERFORMANCE_TIMIN18 /* @min:%2eisPerformanceTimingDataReady */] = _isPerformanceTimingDataReady;\r\n _self[_DYN_SHOULD_COLLECT_DURAT17 /* @min:%2eshouldCollectDuration */] = _shouldCollectDuration;\r\n });\r\n }\r\n PageViewPerformanceManager.prototype.populatePageViewPerformanceEvent = function (pageViewPerformance) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n PageViewPerformanceManager.prototype.getPerformanceTiming = function () {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n return null;\r\n };\r\n /**\r\n * Returns true is window performance timing API is supported, false otherwise.\r\n */\r\n PageViewPerformanceManager.prototype.isPerformanceTimingSupported = function () {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n return true;\r\n };\r\n /**\r\n * As page loads different parts of performance timing numbers get set. When all of them are set we can report it.\r\n * Returns true if ready, false otherwise.\r\n */\r\n PageViewPerformanceManager.prototype.isPerformanceTimingDataReady = function () {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n return true;\r\n };\r\n /**\r\n * This method tells if given durations should be excluded from collection.\r\n */\r\n PageViewPerformanceManager.prototype.shouldCollectDuration = function () {\r\n var durations = [];\r\n for (var _i = 0; _i < arguments.length; _i++) {\r\n durations[_i] = arguments[_i];\r\n }\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n return true;\r\n };\r\n return PageViewPerformanceManager;\r\n}());\r\nexport { PageViewPerformanceManager };\r\n//# sourceMappingURL=PageViewPerformanceManager.js.map","/**\r\n* ApplicationInsights.ts\r\n* @copyright Microsoft 2018\r\n*/\r\nvar _a;\r\nimport { __assign, __extends } from \"tslib\";\r\nimport dynamicProto from \"@microsoft/dynamicproto-js\";\r\nimport { AnalyticsPluginIdentifier, Event as EventTelemetry, Exception, Metric, PageView, PageViewPerformance, PropertiesPluginIdentifier, RemoteDependencyData, Trace, createDistributedTraceContextFromTrace, createDomEvent, createTelemetryItem, dataSanitizeString, isCrossOriginError, strNotSpecified, utlDisableStorage, utlEnableStorage, utlSetStoragePrefix } from \"@microsoft/applicationinsights-common\";\r\nimport { BaseTelemetryPlugin, InstrumentEvent, arrForEach, cfgDfBoolean, cfgDfMerge, cfgDfSet, cfgDfString, cfgDfValidate, createProcessTelemetryContext, createUniqueNamespace, dumpObj, eventOff, eventOn, findAllScripts, generateW3CId, getDocument, getExceptionName, getHistory, getLocation, getWindow, hasHistory, hasWindow, isFunction, isNullOrUndefined, isString, isUndefined, mergeEvtNamespace, onConfigChange, safeGetCookieMgr, strUndefined, throwError } from \"@microsoft/applicationinsights-core-js\";\r\nimport { isArray, isError, objDeepFreeze, objDefine, scheduleTimeout, strIndexOf } from \"@nevware21/ts-utils\";\r\nimport { _DYN_ADD_TELEMETRY_INITIA7, _DYN_AUTO_EXCEPTION_INSTR9, _DYN_AUTO_TRACK_PAGE_VISI10, _DYN_AUTO_UNHANDLED_PROMI14, _DYN_COLUMN_NUMBER, _DYN_CORE, _DYN_DATA_TYPE, _DYN_DIAG_LOG, _DYN_DURATION, _DYN_ENABLE_AUTO_ROUTE_TR12, _DYN_ENABLE_UNHANDLED_PRO13, _DYN_ENVELOPE_TYPE, _DYN_ERROR, _DYN_ERROR_SRC, _DYN_EXCEPTION, _DYN_HREF, _DYN_IS_BROWSER_LINK_TRAC11, _DYN_IS_STORAGE_USE_DISAB0, _DYN_LENGTH, _DYN_LINE_NUMBER, _DYN_MESSAGE, _DYN_OVERRIDE_PAGE_VIEW_D8, _DYN_POPULATE_PAGE_VIEW_P4, _DYN_PROPERTIES, _DYN_SEND_EXCEPTION_INTER5, _DYN_SEND_PAGE_VIEW_INTER2, _DYN_SEND_PAGE_VIEW_PERFO3, _DYN_START_TIME, _DYN_TO_STRING, _DYN_TRACK, _DYN_TRACK_PAGE_VIEW, _DYN_TRACK_PREVIOUS_PAGE_1, _DYN__ADD_HOOK, _DYN__CREATE_AUTO_EXCEPTI6, _DYN__ONERROR } from \"../__DynamicConstants\";\r\nimport { PageViewManager } from \"./Telemetry/PageViewManager\";\r\nimport { PageViewPerformanceManager } from \"./Telemetry/PageViewPerformanceManager\";\r\nimport { PageVisitTimeManager } from \"./Telemetry/PageVisitTimeManager\";\r\nimport { Timing } from \"./Timing\";\r\nvar strEvent = \"event\";\r\nfunction _dispatchEvent(target, evnt) {\r\n if (target && target.dispatchEvent && evnt) {\r\n target.dispatchEvent(evnt);\r\n }\r\n}\r\nfunction _getReason(error) {\r\n if (error && error.reason) {\r\n var reason = error.reason;\r\n if (!isString(reason) && isFunction(reason[_DYN_TO_STRING /* @min:%2etoString */])) {\r\n return reason[_DYN_TO_STRING /* @min:%2etoString */]();\r\n }\r\n return dumpObj(reason);\r\n }\r\n // Pass the original object down which will eventually get evaluated for any message or description\r\n return error || \"\";\r\n}\r\nvar MinMilliSeconds = 60000;\r\nvar defaultValues = objDeepFreeze((_a = {\r\n sessionRenewalMs: cfgDfSet(_chkConfigMilliseconds, 30 * 60 * 1000),\r\n sessionExpirationMs: cfgDfSet(_chkConfigMilliseconds, 24 * 60 * 60 * 1000),\r\n disableExceptionTracking: cfgDfBoolean()\r\n },\r\n _a[_DYN_AUTO_TRACK_PAGE_VISI10 /* @min:autoTrackPageVisitTime */] = cfgDfBoolean(),\r\n _a[_DYN_OVERRIDE_PAGE_VIEW_D8 /* @min:overridePageViewDuration */] = cfgDfBoolean(),\r\n _a[_DYN_ENABLE_UNHANDLED_PRO13 /* @min:enableUnhandledPromiseRejectionTracking */] = cfgDfBoolean(),\r\n _a[_DYN_AUTO_UNHANDLED_PROMI14 /* @min:autoUnhandledPromiseInstrumented */] = false,\r\n _a.samplingPercentage = cfgDfValidate(_chkSampling, 100),\r\n _a[_DYN_IS_STORAGE_USE_DISAB0 /* @min:isStorageUseDisabled */] = cfgDfBoolean(),\r\n _a[_DYN_IS_BROWSER_LINK_TRAC11 /* @min:isBrowserLinkTrackingEnabled */] = cfgDfBoolean(),\r\n _a[_DYN_ENABLE_AUTO_ROUTE_TR12 /* @min:enableAutoRouteTracking */] = cfgDfBoolean(),\r\n _a.namePrefix = cfgDfString(),\r\n _a.enableDebug = cfgDfBoolean(),\r\n _a.disableFlushOnBeforeUnload = cfgDfBoolean(),\r\n _a.disableFlushOnUnload = cfgDfBoolean(false, \"disableFlushOnBeforeUnload\"),\r\n _a.expCfg = cfgDfMerge({ inclScripts: false, expLog: undefined, maxLogs: 50 }),\r\n _a));\r\nfunction _chkConfigMilliseconds(value, defValue) {\r\n value = value || defValue;\r\n if (value < MinMilliSeconds) {\r\n value = MinMilliSeconds;\r\n }\r\n return +value;\r\n}\r\nfunction _chkSampling(value) {\r\n return !isNaN(value) && value > 0 && value <= 100;\r\n}\r\nfunction _updateStorageUsage(extConfig) {\r\n // Not resetting the storage usage as someone may have manually called utlDisableStorage, so this will only\r\n // reset based if the configuration option is provided\r\n if (!isUndefined(extConfig[_DYN_IS_STORAGE_USE_DISAB0 /* @min:%2eisStorageUseDisabled */])) {\r\n if (extConfig[_DYN_IS_STORAGE_USE_DISAB0 /* @min:%2eisStorageUseDisabled */]) {\r\n utlDisableStorage();\r\n }\r\n else {\r\n utlEnableStorage();\r\n }\r\n }\r\n}\r\nvar AnalyticsPlugin = /** @class */ (function (_super) {\r\n __extends(AnalyticsPlugin, _super);\r\n function AnalyticsPlugin() {\r\n var _this = _super.call(this) || this;\r\n _this.identifier = AnalyticsPluginIdentifier; // do not change name or priority\r\n _this.priority = 180; // take from reserved priority range 100- 200\r\n _this.autoRoutePVDelay = 500; // ms; Time to wait after a route change before triggering a pageview to allow DOM changes to take place\r\n var _eventTracking;\r\n var _pageTracking;\r\n var _pageViewManager;\r\n var _pageViewPerformanceManager;\r\n var _pageVisitTimeManager;\r\n var _preInitTelemetryInitializers;\r\n var _isBrowserLinkTrackingEnabled;\r\n var _browserLinkInitializerAdded;\r\n var _enableAutoRouteTracking;\r\n var _historyListenerAdded;\r\n var _disableExceptionTracking;\r\n var _autoExceptionInstrumented;\r\n var _enableUnhandledPromiseRejectionTracking;\r\n var _autoUnhandledPromiseInstrumented;\r\n var _extConfig;\r\n var _autoTrackPageVisitTime;\r\n var _expCfg;\r\n // Counts number of trackAjax invocations.\r\n // By default we only monitor X ajax call per view to avoid too much load.\r\n // Default value is set in config.\r\n // This counter keeps increasing even after the limit is reached.\r\n var _trackAjaxAttempts = 0;\r\n // array with max length of 2 that store current url and previous url for SPA page route change trackPageview use.\r\n var _prevUri; // Assigned in the constructor\r\n var _currUri;\r\n var _evtNamespace;\r\n // For testing error hooks only\r\n var _errorHookCnt;\r\n dynamicProto(AnalyticsPlugin, _this, function (_self, _base) {\r\n var _addHook = _base[_DYN__ADD_HOOK /* @min:%2e_addHook */];\r\n _initDefaults();\r\n _self.getCookieMgr = function () {\r\n return safeGetCookieMgr(_self[_DYN_CORE /* @min:%2ecore */]);\r\n };\r\n _self.processTelemetry = function (env, itemCtx) {\r\n _self.processNext(env, itemCtx);\r\n };\r\n _self.trackEvent = function (event, customProperties) {\r\n try {\r\n var telemetryItem = createTelemetryItem(event, EventTelemetry[_DYN_DATA_TYPE /* @min:%2edataType */], EventTelemetry[_DYN_ENVELOPE_TYPE /* @min:%2eenvelopeType */], _self[_DYN_DIAG_LOG /* @min:%2ediagLog */](), customProperties);\r\n _self[_DYN_CORE /* @min:%2ecore */][_DYN_TRACK /* @min:%2etrack */](telemetryItem);\r\n }\r\n catch (e) {\r\n _throwInternal(2 /* eLoggingSeverity.WARNING */, 39 /* _eInternalMessageId.TrackTraceFailed */, \"trackTrace failed, trace will not be collected: \" + getExceptionName(e), { exception: dumpObj(e) });\r\n }\r\n };\r\n /**\r\n * Start timing an extended event. Call `stopTrackEvent` to log the event when it ends.\r\n * @param name - A string that identifies this event uniquely within the document.\r\n */\r\n _self.startTrackEvent = function (name) {\r\n try {\r\n _eventTracking.start(name);\r\n }\r\n catch (e) {\r\n _throwInternal(1 /* eLoggingSeverity.CRITICAL */, 29 /* _eInternalMessageId.StartTrackEventFailed */, \"startTrackEvent failed, event will not be collected: \" + getExceptionName(e), { exception: dumpObj(e) });\r\n }\r\n };\r\n /**\r\n * Log an extended event that you started timing with `startTrackEvent`.\r\n * @param name - The string you used to identify this event in `startTrackEvent`.\r\n * @param properties - map[string, string] - additional data used to filter events and metrics in the portal. Defaults to empty.\r\n * @param measurements - map[string, number] - metrics associated with this event, displayed in Metrics Explorer on the portal. Defaults to empty.\r\n */\r\n _self.stopTrackEvent = function (name, properties, measurements) {\r\n try {\r\n _eventTracking.stop(name, undefined, properties, measurements);\r\n }\r\n catch (e) {\r\n _throwInternal(1 /* eLoggingSeverity.CRITICAL */, 30 /* _eInternalMessageId.StopTrackEventFailed */, \"stopTrackEvent failed, event will not be collected: \" + getExceptionName(e), { exception: dumpObj(e) });\r\n }\r\n };\r\n /**\r\n * @description Log a diagnostic message\r\n * @param trace - the trace message\r\n * @param customProperties - Additional custom properties to include in the event\r\n */\r\n _self.trackTrace = function (trace, customProperties) {\r\n try {\r\n var telemetryItem = createTelemetryItem(trace, Trace[_DYN_DATA_TYPE /* @min:%2edataType */], Trace[_DYN_ENVELOPE_TYPE /* @min:%2eenvelopeType */], _self[_DYN_DIAG_LOG /* @min:%2ediagLog */](), customProperties);\r\n _self[_DYN_CORE /* @min:%2ecore */][_DYN_TRACK /* @min:%2etrack */](telemetryItem);\r\n }\r\n catch (e) {\r\n _throwInternal(2 /* eLoggingSeverity.WARNING */, 39 /* _eInternalMessageId.TrackTraceFailed */, \"trackTrace failed, trace will not be collected: \" + getExceptionName(e), { exception: dumpObj(e) });\r\n }\r\n };\r\n /**\r\n * @description Log a numeric value that is not associated with a specific event. Typically\r\n * used to send regular reports of performance indicators. To send single measurement, just\r\n * use the name and average fields of {@link IMetricTelemetry}. If you take measurements\r\n * frequently, you can reduce the telemetry bandwidth by aggregating multiple measurements\r\n * and sending the resulting average at intervals\r\n * @param metric - input object argument. Only name and average are mandatory.\r\n * @param } customProperties additional data used to filter metrics in the\r\n * portal. Defaults to empty.\r\n */\r\n _self.trackMetric = function (metric, customProperties) {\r\n try {\r\n var telemetryItem = createTelemetryItem(metric, Metric[_DYN_DATA_TYPE /* @min:%2edataType */], Metric[_DYN_ENVELOPE_TYPE /* @min:%2eenvelopeType */], _self[_DYN_DIAG_LOG /* @min:%2ediagLog */](), customProperties);\r\n _self[_DYN_CORE /* @min:%2ecore */][_DYN_TRACK /* @min:%2etrack */](telemetryItem);\r\n }\r\n catch (e) {\r\n _throwInternal(1 /* eLoggingSeverity.CRITICAL */, 36 /* _eInternalMessageId.TrackMetricFailed */, \"trackMetric failed, metric will not be collected: \" + getExceptionName(e), { exception: dumpObj(e) });\r\n }\r\n };\r\n /**\r\n * Logs that a page or other item was viewed.\r\n * @param IPageViewTelemetry - The string you used as the name in startTrackPage. Defaults to the document title.\r\n * @param customProperties - Additional data used to filter events and metrics. Defaults to empty.\r\n * If a user wants to provide duration for pageLoad, it'll have to be in pageView.properties.duration\r\n */\r\n _self[_DYN_TRACK_PAGE_VIEW /* @min:%2etrackPageView */] = function (pageView, customProperties) {\r\n try {\r\n var inPv = pageView || {};\r\n _pageViewManager[_DYN_TRACK_PAGE_VIEW /* @min:%2etrackPageView */](inPv, __assign(__assign(__assign({}, inPv.properties), inPv.measurements), customProperties));\r\n if (_autoTrackPageVisitTime) {\r\n _pageVisitTimeManager[_DYN_TRACK_PREVIOUS_PAGE_1 /* @min:%2etrackPreviousPageVisit */](inPv.name, inPv.uri);\r\n }\r\n }\r\n catch (e) {\r\n _throwInternal(1 /* eLoggingSeverity.CRITICAL */, 37 /* _eInternalMessageId.TrackPVFailed */, \"trackPageView failed, page view will not be collected: \" + getExceptionName(e), { exception: dumpObj(e) });\r\n }\r\n };\r\n /**\r\n * Create a page view telemetry item and send it to the SDK pipeline through the core.track API\r\n * @param pageView - Page view item to be sent\r\n * @param properties - Custom properties (Part C) that a user can add to the telemetry item\r\n * @param systemProperties - System level properties (Part A) that a user can add to the telemetry item\r\n */\r\n _self[_DYN_SEND_PAGE_VIEW_INTER2 /* @min:%2esendPageViewInternal */] = function (pageView, properties, systemProperties) {\r\n var doc = getDocument();\r\n if (doc) {\r\n pageView.refUri = pageView.refUri === undefined ? doc.referrer : pageView.refUri;\r\n }\r\n if (isNullOrUndefined(pageView[_DYN_START_TIME /* @min:%2estartTime */])) {\r\n // calculate the start time manually\r\n var duration = ((properties || pageView[_DYN_PROPERTIES /* @min:%2eproperties */] || {})[_DYN_DURATION /* @min:%2eduration */] || 0);\r\n pageView[_DYN_START_TIME /* @min:%2estartTime */] = new Date(new Date().getTime() - duration);\r\n }\r\n var telemetryItem = createTelemetryItem(pageView, PageView[_DYN_DATA_TYPE /* @min:%2edataType */], PageView[_DYN_ENVELOPE_TYPE /* @min:%2eenvelopeType */], _self[_DYN_DIAG_LOG /* @min:%2ediagLog */](), properties, systemProperties);\r\n _self[_DYN_CORE /* @min:%2ecore */][_DYN_TRACK /* @min:%2etrack */](telemetryItem);\r\n // reset ajaxes counter\r\n _trackAjaxAttempts = 0;\r\n };\r\n /**\r\n * @ignore INTERNAL ONLY\r\n * @param pageViewPerformance\r\n * @param properties\r\n */\r\n _self[_DYN_SEND_PAGE_VIEW_PERFO3 /* @min:%2esendPageViewPerformanceInternal */] = function (pageViewPerformance, properties, systemProperties) {\r\n var telemetryItem = createTelemetryItem(pageViewPerformance, PageViewPerformance[_DYN_DATA_TYPE /* @min:%2edataType */], PageViewPerformance[_DYN_ENVELOPE_TYPE /* @min:%2eenvelopeType */], _self[_DYN_DIAG_LOG /* @min:%2ediagLog */](), properties, systemProperties);\r\n _self[_DYN_CORE /* @min:%2ecore */][_DYN_TRACK /* @min:%2etrack */](telemetryItem);\r\n };\r\n /**\r\n * Send browser performance metrics.\r\n * @param pageViewPerformance\r\n * @param customProperties\r\n */\r\n _self.trackPageViewPerformance = function (pageViewPerformance, customProperties) {\r\n var inPvp = pageViewPerformance || {};\r\n try {\r\n _pageViewPerformanceManager[_DYN_POPULATE_PAGE_VIEW_P4 /* @min:%2epopulatePageViewPerformanceEvent */](inPvp);\r\n _self[_DYN_SEND_PAGE_VIEW_PERFO3 /* @min:%2esendPageViewPerformanceInternal */](inPvp, customProperties);\r\n }\r\n catch (e) {\r\n _throwInternal(1 /* eLoggingSeverity.CRITICAL */, 37 /* _eInternalMessageId.TrackPVFailed */, \"trackPageViewPerformance failed, page view will not be collected: \" + getExceptionName(e), { exception: dumpObj(e) });\r\n }\r\n };\r\n /**\r\n * Starts the timer for tracking a page load time. Use this instead of `trackPageView` if you want to control when the page view timer starts and stops,\r\n * but don't want to calculate the duration yourself. This method doesn't send any telemetry. Call `stopTrackPage` to log the end of the page view\r\n * and send the event.\r\n * @param name - A string that idenfities this item, unique within this HTML document. Defaults to the document title.\r\n */\r\n _self.startTrackPage = function (name) {\r\n try {\r\n if (typeof name !== \"string\") {\r\n var doc = getDocument();\r\n name = doc && doc.title || \"\";\r\n }\r\n _pageTracking.start(name);\r\n }\r\n catch (e) {\r\n _throwInternal(1 /* eLoggingSeverity.CRITICAL */, 31 /* _eInternalMessageId.StartTrackFailed */, \"startTrackPage failed, page view may not be collected: \" + getExceptionName(e), { exception: dumpObj(e) });\r\n }\r\n };\r\n /**\r\n * Stops the timer that was started by calling `startTrackPage` and sends the pageview load time telemetry with the specified properties and measurements.\r\n * The duration of the page view will be the time between calling `startTrackPage` and `stopTrackPage`.\r\n * @param name - The string you used as the name in startTrackPage. Defaults to the document title.\r\n * @param url - String - a relative or absolute URL that identifies the page or other item. Defaults to the window location.\r\n * @param properties - map[string, string] - additional data used to filter pages and metrics in the portal. Defaults to empty.\r\n * @param measurements - map[string, number] - metrics associated with this page, displayed in Metrics Explorer on the portal. Defaults to empty.\r\n */\r\n _self.stopTrackPage = function (name, url, properties, measurement) {\r\n try {\r\n if (typeof name !== \"string\") {\r\n var doc = getDocument();\r\n name = doc && doc.title || \"\";\r\n }\r\n if (typeof url !== \"string\") {\r\n var loc = getLocation();\r\n url = loc && loc[_DYN_HREF /* @min:%2ehref */] || \"\";\r\n }\r\n _pageTracking.stop(name, url, properties, measurement);\r\n if (_autoTrackPageVisitTime) {\r\n _pageVisitTimeManager[_DYN_TRACK_PREVIOUS_PAGE_1 /* @min:%2etrackPreviousPageVisit */](name, url);\r\n }\r\n }\r\n catch (e) {\r\n _throwInternal(1 /* eLoggingSeverity.CRITICAL */, 32 /* _eInternalMessageId.StopTrackFailed */, \"stopTrackPage failed, page view will not be collected: \" + getExceptionName(e), { exception: dumpObj(e) });\r\n }\r\n };\r\n /**\r\n * @ignore INTERNAL ONLY\r\n * @param exception\r\n * @param properties\r\n * @param systemProperties\r\n */\r\n _self[_DYN_SEND_EXCEPTION_INTER5 /* @min:%2esendExceptionInternal */] = function (exception, customProperties, systemProperties) {\r\n // Adding additional edge cases to handle\r\n // - Not passing anything (null / undefined)\r\n var theError = (exception && (exception[_DYN_EXCEPTION /* @min:%2eexception */] || exception[_DYN_ERROR /* @min:%2eerror */])) ||\r\n // - Handle someone calling trackException based of v1 API where the exception was the Error\r\n isError(exception) && exception ||\r\n // - Handles no error being defined and instead of creating a new Error() instance attempt to map so any stacktrace\r\n // is preserved and does not list ApplicationInsights code as the source\r\n { name: (exception && typeof exception), message: exception || strNotSpecified };\r\n // If no exception object was passed assign to an empty object to avoid internal exceptions\r\n exception = exception || {};\r\n var exceptionPartB = new Exception(_self[_DYN_DIAG_LOG /* @min:%2ediagLog */](), theError, exception[_DYN_PROPERTIES /* @min:%2eproperties */] || customProperties, exception.measurements, exception.severityLevel, exception.id).toInterface();\r\n var doc = getDocument();\r\n if (doc && (_expCfg === null || _expCfg === void 0 ? void 0 : _expCfg.inclScripts)) {\r\n var scriptsInfo = findAllScripts(doc);\r\n exceptionPartB[_DYN_PROPERTIES /* @min:%2eproperties */][\"exceptionScripts\"] = JSON.stringify(scriptsInfo);\r\n }\r\n if (_expCfg === null || _expCfg === void 0 ? void 0 : _expCfg.expLog) {\r\n var logs = _expCfg.expLog();\r\n if (logs && logs.logs && isArray(logs.logs)) {\r\n exceptionPartB[_DYN_PROPERTIES /* @min:%2eproperties */][\"exceptionLog\"] = logs.logs.slice(0, _expCfg.maxLogs).join(\"\\n\");\r\n }\r\n }\r\n var telemetryItem = createTelemetryItem(exceptionPartB, Exception[_DYN_DATA_TYPE /* @min:%2edataType */], Exception[_DYN_ENVELOPE_TYPE /* @min:%2eenvelopeType */], _self[_DYN_DIAG_LOG /* @min:%2ediagLog */](), customProperties, systemProperties);\r\n _self[_DYN_CORE /* @min:%2ecore */][_DYN_TRACK /* @min:%2etrack */](telemetryItem);\r\n };\r\n /**\r\n * Log an exception you have caught.\r\n *\r\n * @param exception - Object which contains exception to be sent\r\n * @param } customProperties Additional data used to filter pages and metrics in the portal. Defaults to empty.\r\n *\r\n * Any property of type double will be considered a measurement, and will be treated by Application Insights as a metric.\r\n */\r\n _self.trackException = function (exception, customProperties) {\r\n if (exception && !exception[_DYN_EXCEPTION /* @min:%2eexception */] && exception[_DYN_ERROR /* @min:%2eerror */]) {\r\n exception[_DYN_EXCEPTION /* @min:%2eexception */] = exception[_DYN_ERROR /* @min:%2eerror */];\r\n }\r\n try {\r\n _self[_DYN_SEND_EXCEPTION_INTER5 /* @min:%2esendExceptionInternal */](exception, customProperties);\r\n }\r\n catch (e) {\r\n _throwInternal(1 /* eLoggingSeverity.CRITICAL */, 35 /* _eInternalMessageId.TrackExceptionFailed */, \"trackException failed, exception will not be collected: \" + getExceptionName(e), { exception: dumpObj(e) });\r\n }\r\n };\r\n /**\r\n * @description Custom error handler for Application Insights Analytics\r\n * @param exception\r\n */\r\n _self[_DYN__ONERROR /* @min:%2e_onerror */] = function (exception) {\r\n var error = exception && exception[_DYN_ERROR /* @min:%2eerror */];\r\n var evt = exception && exception.evt;\r\n try {\r\n if (!evt) {\r\n var _window = getWindow();\r\n if (_window) {\r\n evt = _window[strEvent];\r\n }\r\n }\r\n var url = (exception && exception.url) || (getDocument() || {}).URL;\r\n // If no error source is provided assume the default window.onerror handler\r\n var errorSrc = exception[_DYN_ERROR_SRC /* @min:%2eerrorSrc */] || \"window.onerror@\" + url + \":\" + (exception[_DYN_LINE_NUMBER /* @min:%2elineNumber */] || 0) + \":\" + (exception[_DYN_COLUMN_NUMBER /* @min:%2ecolumnNumber */] || 0);\r\n var properties = {\r\n errorSrc: errorSrc,\r\n url: url,\r\n lineNumber: exception[_DYN_LINE_NUMBER /* @min:%2elineNumber */] || 0,\r\n columnNumber: exception[_DYN_COLUMN_NUMBER /* @min:%2ecolumnNumber */] || 0,\r\n message: exception[_DYN_MESSAGE /* @min:%2emessage */]\r\n };\r\n if (isCrossOriginError(exception.message, exception.url, exception.lineNumber, exception.columnNumber, exception[_DYN_ERROR /* @min:%2eerror */])) {\r\n _sendCORSException(Exception[_DYN__CREATE_AUTO_EXCEPTI6 /* @min:%2eCreateAutoException */](\"Script error: The browser's same-origin policy prevents us from getting the details of this exception. Consider using the 'crossorigin' attribute.\", url, exception[_DYN_LINE_NUMBER /* @min:%2elineNumber */] || 0, exception[_DYN_COLUMN_NUMBER /* @min:%2ecolumnNumber */] || 0, error, evt, null, errorSrc), properties);\r\n }\r\n else {\r\n if (!exception[_DYN_ERROR_SRC /* @min:%2eerrorSrc */]) {\r\n exception[_DYN_ERROR_SRC /* @min:%2eerrorSrc */] = errorSrc;\r\n }\r\n _self.trackException({ exception: exception, severityLevel: 3 /* eSeverityLevel.Error */ }, properties);\r\n }\r\n }\r\n catch (e) {\r\n var errorString = error ? (error.name + \", \" + error[_DYN_MESSAGE /* @min:%2emessage */]) : \"null\";\r\n _throwInternal(1 /* eLoggingSeverity.CRITICAL */, 11 /* _eInternalMessageId.ExceptionWhileLoggingError */, \"_onError threw exception while logging error, error will not be collected: \"\r\n + getExceptionName(e), { exception: dumpObj(e), errorString: errorString });\r\n }\r\n };\r\n _self[_DYN_ADD_TELEMETRY_INITIA7 /* @min:%2eaddTelemetryInitializer */] = function (telemetryInitializer) {\r\n if (_self[_DYN_CORE /* @min:%2ecore */]) {\r\n // Just add to the core\r\n return _self[_DYN_CORE /* @min:%2ecore */][_DYN_ADD_TELEMETRY_INITIA7 /* @min:%2eaddTelemetryInitializer */](telemetryInitializer);\r\n }\r\n // Handle \"pre-initialization\" telemetry initializers (for backward compatibility)\r\n if (!_preInitTelemetryInitializers) {\r\n _preInitTelemetryInitializers = [];\r\n }\r\n _preInitTelemetryInitializers.push(telemetryInitializer);\r\n };\r\n _self.initialize = function (config, core, extensions, pluginChain) {\r\n if (_self.isInitialized()) {\r\n return;\r\n }\r\n if (isNullOrUndefined(core)) {\r\n throwError(\"Error initializing\");\r\n }\r\n _base.initialize(config, core, extensions, pluginChain);\r\n try {\r\n _evtNamespace = mergeEvtNamespace(createUniqueNamespace(_self.identifier), core.evtNamespace && core.evtNamespace());\r\n if (_preInitTelemetryInitializers) {\r\n arrForEach(_preInitTelemetryInitializers, function (initializer) {\r\n core[_DYN_ADD_TELEMETRY_INITIA7 /* @min:%2eaddTelemetryInitializer */](initializer);\r\n });\r\n _preInitTelemetryInitializers = null;\r\n }\r\n _populateDefaults(config);\r\n _pageViewPerformanceManager = new PageViewPerformanceManager(_self[_DYN_CORE /* @min:%2ecore */]);\r\n _pageViewManager = new PageViewManager(_self, _extConfig.overridePageViewDuration, _self[_DYN_CORE /* @min:%2ecore */], _pageViewPerformanceManager);\r\n _pageVisitTimeManager = new PageVisitTimeManager(_self[_DYN_DIAG_LOG /* @min:%2ediagLog */](), function (pageName, pageUrl, pageVisitTime) { return trackPageVisitTime(pageName, pageUrl, pageVisitTime); });\r\n _eventTracking = new Timing(_self[_DYN_DIAG_LOG /* @min:%2ediagLog */](), \"trackEvent\");\r\n _eventTracking.action =\r\n function (name, url, duration, properties, measurements) {\r\n if (!properties) {\r\n properties = {};\r\n }\r\n if (!measurements) {\r\n measurements = {};\r\n }\r\n properties.duration = duration[_DYN_TO_STRING /* @min:%2etoString */]();\r\n _self.trackEvent({ name: name, properties: properties, measurements: measurements });\r\n };\r\n // initialize page view timing\r\n _pageTracking = new Timing(_self[_DYN_DIAG_LOG /* @min:%2ediagLog */](), \"trackPageView\");\r\n _pageTracking.action = function (name, url, duration, properties, measurements) {\r\n // duration must be a custom property in order for the collector to extract it\r\n if (isNullOrUndefined(properties)) {\r\n properties = {};\r\n }\r\n properties.duration = duration[_DYN_TO_STRING /* @min:%2etoString */]();\r\n var pageViewItem = {\r\n name: name,\r\n uri: url,\r\n properties: properties,\r\n measurements: measurements\r\n };\r\n _self[_DYN_SEND_PAGE_VIEW_INTER2 /* @min:%2esendPageViewInternal */](pageViewItem, properties);\r\n };\r\n if (hasWindow()) {\r\n _updateExceptionTracking();\r\n _updateLocationChange();\r\n }\r\n }\r\n catch (e) {\r\n // resetting the initialized state because of failure\r\n _self.setInitialized(false);\r\n throw e;\r\n }\r\n };\r\n _self._doTeardown = function (unloadCtx, unloadState) {\r\n _pageViewManager && _pageViewManager.teardown(unloadCtx, unloadState);\r\n // Just register to remove all events associated with this namespace\r\n eventOff(window, null, null, _evtNamespace);\r\n _initDefaults();\r\n };\r\n _self[\"_getDbgPlgTargets\"] = function () {\r\n return [_errorHookCnt, _autoExceptionInstrumented];\r\n };\r\n function _populateDefaults(config) {\r\n // it is used for 1DS as well, so config type should be IConfiguration only\r\n var identifier = _self.identifier;\r\n var core = _self[_DYN_CORE /* @min:%2ecore */];\r\n _self[_DYN__ADD_HOOK /* @min:%2e_addHook */](onConfigChange(config, function () {\r\n var ctx = createProcessTelemetryContext(null, config, core);\r\n _extConfig = ctx.getExtCfg(identifier, defaultValues);\r\n // make sure auto exception is instrumented only once and it won't be overriden by the following config changes\r\n _autoExceptionInstrumented = _autoExceptionInstrumented || config[_DYN_AUTO_EXCEPTION_INSTR9 /* @min:%2eautoExceptionInstrumented */] || _extConfig[_DYN_AUTO_EXCEPTION_INSTR9 /* @min:%2eautoExceptionInstrumented */];\r\n _expCfg = _extConfig.expCfg;\r\n _autoTrackPageVisitTime = _extConfig[_DYN_AUTO_TRACK_PAGE_VISI10 /* @min:%2eautoTrackPageVisitTime */];\r\n if (config.storagePrefix) {\r\n utlSetStoragePrefix(config.storagePrefix);\r\n }\r\n _updateStorageUsage(_extConfig);\r\n // _updateBrowserLinkTracking\r\n _isBrowserLinkTrackingEnabled = _extConfig[_DYN_IS_BROWSER_LINK_TRAC11 /* @min:%2eisBrowserLinkTrackingEnabled */];\r\n _addDefaultTelemetryInitializers();\r\n }));\r\n }\r\n /**\r\n * Log a page visit time\r\n * @param pageName - Name of page\r\n * @param pageVisitDuration - Duration of visit to the page in milliseconds\r\n */\r\n function trackPageVisitTime(pageName, pageUrl, pageVisitTime) {\r\n var properties = { PageName: pageName, PageUrl: pageUrl };\r\n _self.trackMetric({\r\n name: \"PageVisitTime\",\r\n average: pageVisitTime,\r\n max: pageVisitTime,\r\n min: pageVisitTime,\r\n sampleCount: 1\r\n }, properties);\r\n }\r\n function _addDefaultTelemetryInitializers() {\r\n if (!_browserLinkInitializerAdded && _isBrowserLinkTrackingEnabled) {\r\n var browserLinkPaths_1 = [\"/browserLinkSignalR/\", \"/__browserLink/\"];\r\n var dropBrowserLinkRequests = function (envelope) {\r\n if (_isBrowserLinkTrackingEnabled && envelope.baseType === RemoteDependencyData[_DYN_DATA_TYPE /* @min:%2edataType */]) {\r\n var remoteData = envelope.baseData;\r\n if (remoteData) {\r\n for (var i = 0; i < browserLinkPaths_1[_DYN_LENGTH /* @min:%2elength */]; i++) {\r\n if (remoteData.target && strIndexOf(remoteData.target, browserLinkPaths_1[i]) >= 0) {\r\n return false;\r\n }\r\n }\r\n }\r\n }\r\n return true;\r\n };\r\n _self[_DYN__ADD_HOOK /* @min:%2e_addHook */](_self[_DYN_ADD_TELEMETRY_INITIA7 /* @min:%2eaddTelemetryInitializer */](dropBrowserLinkRequests));\r\n _browserLinkInitializerAdded = true;\r\n }\r\n }\r\n function _sendCORSException(exception, properties) {\r\n var telemetryItem = createTelemetryItem(exception, Exception[_DYN_DATA_TYPE /* @min:%2edataType */], Exception[_DYN_ENVELOPE_TYPE /* @min:%2eenvelopeType */], _self[_DYN_DIAG_LOG /* @min:%2ediagLog */](), properties);\r\n _self[_DYN_CORE /* @min:%2ecore */][_DYN_TRACK /* @min:%2etrack */](telemetryItem);\r\n }\r\n function _updateExceptionTracking() {\r\n var _window = getWindow();\r\n var locn = getLocation(true);\r\n _self[_DYN__ADD_HOOK /* @min:%2e_addHook */](onConfigChange(_extConfig, function () {\r\n _disableExceptionTracking = _extConfig.disableExceptionTracking;\r\n if (!_disableExceptionTracking && !_autoExceptionInstrumented && !_extConfig[_DYN_AUTO_EXCEPTION_INSTR9 /* @min:%2eautoExceptionInstrumented */]) {\r\n // We want to enable exception auto collection and it has not been done so yet\r\n _addHook(InstrumentEvent(_window, \"onerror\", {\r\n ns: _evtNamespace,\r\n rsp: function (callDetails, message, url, lineNumber, columnNumber, error) {\r\n if (!_disableExceptionTracking && callDetails.rslt !== true) {\r\n _self[_DYN__ONERROR /* @min:%2e_onerror */](Exception[_DYN__CREATE_AUTO_EXCEPTI6 /* @min:%2eCreateAutoException */](message, url, lineNumber, columnNumber, error, callDetails.evt));\r\n }\r\n }\r\n }, false));\r\n _errorHookCnt++;\r\n _autoExceptionInstrumented = true;\r\n }\r\n }));\r\n _addUnhandledPromiseRejectionTracking(_window, locn);\r\n }\r\n function _updateLocationChange() {\r\n var win = getWindow();\r\n var locn = getLocation(true);\r\n _self[_DYN__ADD_HOOK /* @min:%2e_addHook */](onConfigChange(_extConfig, function () {\r\n _enableAutoRouteTracking = _extConfig[_DYN_ENABLE_AUTO_ROUTE_TR12 /* @min:%2eenableAutoRouteTracking */] === true;\r\n /**\r\n * Create a custom \"locationchange\" event which is triggered each time the history object is changed\r\n */\r\n if (win && _enableAutoRouteTracking && !_historyListenerAdded && hasHistory()) {\r\n var _history = getHistory();\r\n if (isFunction(_history.pushState) && isFunction(_history.replaceState) && typeof Event !== strUndefined) {\r\n _addHistoryListener(win, _history, locn);\r\n }\r\n }\r\n }));\r\n }\r\n function _getDistributedTraceCtx() {\r\n var distributedTraceCtx = null;\r\n if (_self[_DYN_CORE /* @min:%2ecore */] && _self[_DYN_CORE /* @min:%2ecore */].getTraceCtx) {\r\n distributedTraceCtx = _self[_DYN_CORE /* @min:%2ecore */].getTraceCtx(false);\r\n }\r\n if (!distributedTraceCtx) {\r\n // Fallback when using an older Core and PropertiesPlugin\r\n var properties = _self[_DYN_CORE /* @min:%2ecore */].getPlugin(PropertiesPluginIdentifier);\r\n if (properties) {\r\n var context = properties.plugin.context;\r\n if (context) {\r\n distributedTraceCtx = createDistributedTraceContextFromTrace(context.telemetryTrace);\r\n }\r\n }\r\n }\r\n return distributedTraceCtx;\r\n }\r\n /**\r\n * Create a custom \"locationchange\" event which is triggered each time the history object is changed\r\n */\r\n function _addHistoryListener(win, history, locn) {\r\n if (_historyListenerAdded) {\r\n return;\r\n }\r\n // Name Prefix is only referenced during the initial initialization and cannot be changed afterwards\r\n var namePrefix = _extConfig.namePrefix || \"\";\r\n function _popstateHandler() {\r\n if (_enableAutoRouteTracking) {\r\n _dispatchEvent(win, createDomEvent(namePrefix + \"locationchange\"));\r\n }\r\n }\r\n function _locationChangeHandler() {\r\n // We always track the changes (if the handler is installed) to handle the feature being disabled between location changes\r\n if (_currUri) {\r\n _prevUri = _currUri;\r\n _currUri = locn && locn[_DYN_HREF /* @min:%2ehref */] || \"\";\r\n }\r\n else {\r\n _currUri = locn && locn[_DYN_HREF /* @min:%2ehref */] || \"\";\r\n }\r\n if (_enableAutoRouteTracking) {\r\n var distributedTraceCtx = _getDistributedTraceCtx();\r\n if (distributedTraceCtx) {\r\n distributedTraceCtx.setTraceId(generateW3CId());\r\n var traceLocationName = \"_unknown_\";\r\n if (locn && locn.pathname) {\r\n traceLocationName = locn.pathname + (locn.hash || \"\");\r\n }\r\n // This populates the ai.operation.name which has a maximum size of 1024 so we need to sanitize it\r\n distributedTraceCtx.setName(dataSanitizeString(_self[_DYN_DIAG_LOG /* @min:%2ediagLog */](), traceLocationName));\r\n }\r\n scheduleTimeout((function (uri) {\r\n // todo: override start time so that it is not affected by autoRoutePVDelay\r\n _self[_DYN_TRACK_PAGE_VIEW /* @min:%2etrackPageView */]({ refUri: uri, properties: { duration: 0 } }); // SPA route change loading durations are undefined, so send 0\r\n }).bind(_self, _prevUri), _self.autoRoutePVDelay);\r\n }\r\n }\r\n _addHook(InstrumentEvent(history, \"pushState\", {\r\n ns: _evtNamespace,\r\n rsp: function () {\r\n if (_enableAutoRouteTracking) {\r\n _dispatchEvent(win, createDomEvent(namePrefix + \"pushState\"));\r\n _dispatchEvent(win, createDomEvent(namePrefix + \"locationchange\"));\r\n }\r\n }\r\n }, true));\r\n _addHook(InstrumentEvent(history, \"replaceState\", {\r\n ns: _evtNamespace,\r\n rsp: function () {\r\n if (_enableAutoRouteTracking) {\r\n _dispatchEvent(win, createDomEvent(namePrefix + \"replaceState\"));\r\n _dispatchEvent(win, createDomEvent(namePrefix + \"locationchange\"));\r\n }\r\n }\r\n }, true));\r\n eventOn(win, namePrefix + \"popstate\", _popstateHandler, _evtNamespace);\r\n eventOn(win, namePrefix + \"locationchange\", _locationChangeHandler, _evtNamespace);\r\n _historyListenerAdded = true;\r\n }\r\n function _addUnhandledPromiseRejectionTracking(_window, _location) {\r\n _self[_DYN__ADD_HOOK /* @min:%2e_addHook */](onConfigChange(_extConfig, function () {\r\n _enableUnhandledPromiseRejectionTracking = _extConfig[_DYN_ENABLE_UNHANDLED_PRO13 /* @min:%2eenableUnhandledPromiseRejectionTracking */] === true;\r\n _autoExceptionInstrumented = _autoExceptionInstrumented || _extConfig[_DYN_AUTO_UNHANDLED_PROMI14 /* @min:%2eautoUnhandledPromiseInstrumented */];\r\n if (_enableUnhandledPromiseRejectionTracking && !_autoUnhandledPromiseInstrumented) {\r\n // We want to enable exception auto collection and it has not been done so yet\r\n _addHook(InstrumentEvent(_window, \"onunhandledrejection\", {\r\n ns: _evtNamespace,\r\n rsp: function (callDetails, error) {\r\n if (_enableUnhandledPromiseRejectionTracking && callDetails.rslt !== true) { // handled could be typeof function\r\n _self[_DYN__ONERROR /* @min:%2e_onerror */](Exception[_DYN__CREATE_AUTO_EXCEPTI6 /* @min:%2eCreateAutoException */](_getReason(error), _location ? _location[_DYN_HREF /* @min:%2ehref */] : \"\", 0, 0, error, callDetails.evt));\r\n }\r\n }\r\n }, false));\r\n _errorHookCnt++;\r\n _extConfig[_DYN_AUTO_UNHANDLED_PROMI14 /* @min:%2eautoUnhandledPromiseInstrumented */] = _autoUnhandledPromiseInstrumented = true;\r\n }\r\n }));\r\n }\r\n /**\r\n * This method will throw exceptions in debug mode or attempt to log the error as a console warning.\r\n * @param severity - The severity of the log message\r\n * @param msgId - The log message.\r\n */\r\n function _throwInternal(severity, msgId, msg, properties, isUserAct) {\r\n _self[_DYN_DIAG_LOG /* @min:%2ediagLog */]().throwInternal(severity, msgId, msg, properties, isUserAct);\r\n }\r\n function _initDefaults() {\r\n _eventTracking = null;\r\n _pageTracking = null;\r\n _pageViewManager = null;\r\n _pageViewPerformanceManager = null;\r\n _pageVisitTimeManager = null;\r\n _preInitTelemetryInitializers = null;\r\n _isBrowserLinkTrackingEnabled = false;\r\n _browserLinkInitializerAdded = false;\r\n _enableAutoRouteTracking = false;\r\n _historyListenerAdded = false;\r\n _disableExceptionTracking = false;\r\n _autoExceptionInstrumented = false;\r\n _enableUnhandledPromiseRejectionTracking = false;\r\n _autoUnhandledPromiseInstrumented = false;\r\n _autoTrackPageVisitTime = false;\r\n // Counts number of trackAjax invocations.\r\n // By default we only monitor X ajax call per view to avoid too much load.\r\n // Default value is set in config.\r\n // This counter keeps increasing even after the limit is reached.\r\n _trackAjaxAttempts = 0;\r\n // array with max length of 2 that store current url and previous url for SPA page route change trackPageview use.\r\n var location = getLocation(true);\r\n _prevUri = location && location[_DYN_HREF /* @min:%2ehref */] || \"\";\r\n _currUri = null;\r\n _evtNamespace = null;\r\n _extConfig = null;\r\n _errorHookCnt = 0;\r\n // Define _self.config\r\n objDefine(_self, \"config\", {\r\n g: function () { return _extConfig; }\r\n });\r\n }\r\n // For backward compatibility\r\n objDefine(_self, \"_pageViewManager\", { g: function () { return _pageViewManager; } });\r\n objDefine(_self, \"_pageViewPerformanceManager\", { g: function () { return _pageViewPerformanceManager; } });\r\n objDefine(_self, \"_pageVisitTimeManager\", { g: function () { return _pageVisitTimeManager; } });\r\n objDefine(_self, \"_evtNamespace\", { g: function () { return \".\" + _evtNamespace; } });\r\n });\r\n return _this;\r\n }\r\n /**\r\n * Get the current cookie manager for this instance\r\n */\r\n AnalyticsPlugin.prototype.getCookieMgr = function () {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n return null;\r\n };\r\n AnalyticsPlugin.prototype.processTelemetry = function (env, itemCtx) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n AnalyticsPlugin.prototype.trackEvent = function (event, customProperties) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n /**\r\n * Start timing an extended event. Call `stopTrackEvent` to log the event when it ends.\r\n * @param name - A string that identifies this event uniquely within the document.\r\n */\r\n AnalyticsPlugin.prototype.startTrackEvent = function (name) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n /**\r\n * Log an extended event that you started timing with `startTrackEvent`.\r\n * @param name - The string you used to identify this event in `startTrackEvent`.\r\n * @param properties - map[string, string] - additional data used to filter events and metrics in the portal. Defaults to empty.\r\n * @param measurements - map[string, number] - metrics associated with this event, displayed in Metrics Explorer on the portal. Defaults to empty.\r\n */\r\n AnalyticsPlugin.prototype.stopTrackEvent = function (name, properties, measurements) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n /**\r\n * @description Log a diagnostic message\r\n * @param trace - the trace message\r\n * @param customProperties - Additional custom properties to include in the event\r\n */\r\n AnalyticsPlugin.prototype.trackTrace = function (trace, customProperties) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n /**\r\n * @description Log a numeric value that is not associated with a specific event. Typically\r\n * used to send regular reports of performance indicators. To send single measurement, just\r\n * use the name and average fields of {@link IMetricTelemetry}. If you take measurements\r\n * frequently, you can reduce the telemetry bandwidth by aggregating multiple measurements\r\n * and sending the resulting average at intervals\r\n * @param metric - input object argument. Only name and average are mandatory.\r\n * @param customProperties - additional data used to filter metrics in the\r\n * portal. Defaults to empty.\r\n */\r\n AnalyticsPlugin.prototype.trackMetric = function (metric, customProperties) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n /**\r\n * Logs that a page or other item was viewed.\r\n * @param IPageViewTelemetry - The string you used as the name in startTrackPage. Defaults to the document title.\r\n * @param customProperties - Additional data used to filter events and metrics. Defaults to empty.\r\n * If a user wants to provide duration for pageLoad, it'll have to be in pageView.properties.duration\r\n */\r\n AnalyticsPlugin.prototype.trackPageView = function (pageView, customProperties) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n /**\r\n * Create a page view telemetry item and send it to the SDK pipeline through the core.track API\r\n * @param pageView - Page view item to be sent\r\n * @param properties - Custom properties (Part C) that a user can add to the telemetry item\r\n * @param systemProperties - System level properties (Part A) that a user can add to the telemetry item\r\n */\r\n AnalyticsPlugin.prototype.sendPageViewInternal = function (pageView, properties, systemProperties) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n /**\r\n * @ignore INTERNAL ONLY\r\n * @param pageViewPerformance - The page view performance item to be sent\r\n * @param properties - Custom properties (Part C) that a user can add to the telemetry item\r\n */\r\n AnalyticsPlugin.prototype.sendPageViewPerformanceInternal = function (pageViewPerformance, properties, systemProperties) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n /**\r\n * Send browser performance metrics.\r\n * @param pageViewPerformance - The page view performance item to be sent\r\n * @param customProperties - Additional data used to filter pages and metrics in the portal. Defaults to empty.\r\n */\r\n AnalyticsPlugin.prototype.trackPageViewPerformance = function (pageViewPerformance, customProperties) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n /**\r\n * Starts the timer for tracking a page load time. Use this instead of `trackPageView` if you want to control when the page view timer starts and stops,\r\n * but don't want to calculate the duration yourself. This method doesn't send any telemetry. Call `stopTrackPage` to log the end of the page view\r\n * and send the event.\r\n * @param name - A string that idenfities this item, unique within this HTML document. Defaults to the document title.\r\n */\r\n AnalyticsPlugin.prototype.startTrackPage = function (name) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n /**\r\n * Stops the timer that was started by calling `startTrackPage` and sends the pageview load time telemetry with the specified properties and measurements.\r\n * The duration of the page view will be the time between calling `startTrackPage` and `stopTrackPage`.\r\n * @param name - The string you used as the name in startTrackPage. Defaults to the document title.\r\n * @param url - String - a relative or absolute URL that identifies the page or other item. Defaults to the window location.\r\n * @param properties - map[string, string] - additional data used to filter pages and metrics in the portal. Defaults to empty.\r\n * @param measurements - map[string, number] - metrics associated with this page, displayed in Metrics Explorer on the portal. Defaults to empty.\r\n */\r\n AnalyticsPlugin.prototype.stopTrackPage = function (name, url, properties, measurement) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n /**\r\n * @ignore INTERNAL ONLY\r\n * @param exception - The exception item to be sent\r\n * @param properties - Custom properties (Part C) that a user can add to the telemetry item\r\n * @param systemProperties - System level properties (Part A) that a user can add to the telemetry item\r\n */\r\n AnalyticsPlugin.prototype.sendExceptionInternal = function (exception, customProperties, systemProperties) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n /**\r\n * Log an exception you have caught.\r\n *\r\n * @param exception - Object which contains exception to be sent\r\n * @param customProperties - Additional data used to filter pages and metrics in the portal. Defaults to empty.\r\n *\r\n * Any property of type double will be considered a measurement, and will be treated by Application Insights as a metric.\r\n */\r\n AnalyticsPlugin.prototype.trackException = function (exception, customProperties) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n /**\r\n * @description Custom error handler for Application Insights Analytics\r\n * @param exception - The exception item to be sent\r\n */\r\n AnalyticsPlugin.prototype._onerror = function (exception) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n AnalyticsPlugin.prototype.addTelemetryInitializer = function (telemetryInitializer) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n return null;\r\n };\r\n AnalyticsPlugin.prototype.initialize = function (config, core, extensions, pluginChain) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n AnalyticsPlugin.Version = '3.3.5'; // Not currently used anywhere\r\n return AnalyticsPlugin;\r\n}(BaseTelemetryPlugin));\r\nexport { AnalyticsPlugin };\r\n//# sourceMappingURL=AnalyticsPlugin.js.map","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\nimport dynamicProto from \"@microsoft/dynamicproto-js\";\r\nimport { utlCanUseSessionStorage, utlGetSessionStorage, utlRemoveSessionStorage, utlSetSessionStorage } from \"@microsoft/applicationinsights-common\";\r\nimport { _warnToConsole, dateNow, dumpObj, getJSON, hasJSON, throwError } from \"@microsoft/applicationinsights-core-js\";\r\nimport { objDefine } from \"@nevware21/ts-utils\";\r\nimport { _DYN_PAGE_VISIT_START_TIM19, _DYN_TRACK_PREVIOUS_PAGE_1 } from \"../../__DynamicConstants\";\r\n/**\r\n * Used to track page visit durations\r\n */\r\nvar PageVisitTimeManager = /** @class */ (function () {\r\n /**\r\n * Creates a new instance of PageVisitTimeManager\r\n * @param pageVisitTimeTrackingHandler - Delegate that will be called to send telemetry data to AI (when trackPreviousPageVisit is called)\r\n * @returns {}\r\n */\r\n function PageVisitTimeManager(logger, pageVisitTimeTrackingHandler) {\r\n var prevPageVisitDataKeyName = \"prevPageVisitData\";\r\n dynamicProto(PageVisitTimeManager, this, function (_self) {\r\n _self[_DYN_TRACK_PREVIOUS_PAGE_1 /* @min:%2etrackPreviousPageVisit */] = function (currentPageName, currentPageUrl) {\r\n try {\r\n // Restart timer for new page view\r\n var prevPageVisitTimeData = restartPageVisitTimer(currentPageName, currentPageUrl);\r\n // If there was a page already being timed, track the visit time for it now.\r\n if (prevPageVisitTimeData) {\r\n pageVisitTimeTrackingHandler(prevPageVisitTimeData.pageName, prevPageVisitTimeData.pageUrl, prevPageVisitTimeData.pageVisitTime);\r\n }\r\n }\r\n catch (e) {\r\n _warnToConsole(logger, \"Auto track page visit time failed, metric will not be collected: \" + dumpObj(e));\r\n }\r\n };\r\n /**\r\n * Stops timing of current page (if exists) and starts timing for duration of visit to pageName\r\n * @param pageName - Name of page to begin timing visit duration\r\n * @returns {PageVisitData} Page visit data (including duration) of pageName from last call to start or restart, if exists. Null if not.\r\n */\r\n function restartPageVisitTimer(pageName, pageUrl) {\r\n var prevPageVisitData = null;\r\n try {\r\n prevPageVisitData = stopPageVisitTimer();\r\n if (utlCanUseSessionStorage()) {\r\n if (utlGetSessionStorage(logger, prevPageVisitDataKeyName) != null) {\r\n throwError(\"Cannot call startPageVisit consecutively without first calling stopPageVisit\");\r\n }\r\n var currPageVisitDataStr = getJSON().stringify(new PageVisitData(pageName, pageUrl));\r\n utlSetSessionStorage(logger, prevPageVisitDataKeyName, currPageVisitDataStr);\r\n }\r\n }\r\n catch (e) {\r\n _warnToConsole(logger, \"Call to restart failed: \" + dumpObj(e));\r\n prevPageVisitData = null;\r\n }\r\n return prevPageVisitData;\r\n }\r\n /**\r\n * Stops timing of current page, if exists.\r\n * @returns {PageVisitData} Page visit data (including duration) of pageName from call to start, if exists. Null if not.\r\n */\r\n function stopPageVisitTimer() {\r\n var prevPageVisitData = null;\r\n try {\r\n if (utlCanUseSessionStorage()) {\r\n // Define end time of page's visit\r\n var pageVisitEndTime = dateNow();\r\n // Try to retrieve page name and start time from session storage\r\n var pageVisitDataJsonStr = utlGetSessionStorage(logger, prevPageVisitDataKeyName);\r\n if (pageVisitDataJsonStr && hasJSON()) {\r\n // if previous page data exists, set end time of visit\r\n prevPageVisitData = getJSON().parse(pageVisitDataJsonStr);\r\n prevPageVisitData.pageVisitTime = pageVisitEndTime - prevPageVisitData[_DYN_PAGE_VISIT_START_TIM19 /* @min:%2epageVisitStartTime */];\r\n // Remove data from storage since we already used it\r\n utlRemoveSessionStorage(logger, prevPageVisitDataKeyName);\r\n }\r\n }\r\n }\r\n catch (e) {\r\n _warnToConsole(logger, \"Stop page visit timer failed: \" + dumpObj(e));\r\n prevPageVisitData = null;\r\n }\r\n return prevPageVisitData;\r\n }\r\n // For backward compatibility\r\n objDefine(_self, \"_logger\", { g: function () { return logger; } });\r\n objDefine(_self, \"pageVisitTimeTrackingHandler\", { g: function () { return pageVisitTimeTrackingHandler; } });\r\n });\r\n }\r\n /**\r\n * Tracks the previous page visit time telemetry (if exists) and starts timing of new page visit time\r\n * @param currentPageName - Name of page to begin timing for visit duration\r\n * @param currentPageUrl - Url of page to begin timing for visit duration\r\n */\r\n PageVisitTimeManager.prototype.trackPreviousPageVisit = function (currentPageName, currentPageUrl) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n return PageVisitTimeManager;\r\n}());\r\nexport { PageVisitTimeManager };\r\nvar PageVisitData = /** @class */ (function () {\r\n function PageVisitData(pageName, pageUrl) {\r\n this[_DYN_PAGE_VISIT_START_TIM19 /* @min:%2epageVisitStartTime */] = dateNow();\r\n this.pageName = pageName;\r\n this.pageUrl = pageUrl;\r\n }\r\n return PageVisitData;\r\n}());\r\nexport { PageVisitData };\r\n//# sourceMappingURL=PageVisitTimeManager.js.map","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\nimport { dateTimeUtilsDuration } from \"@microsoft/applicationinsights-common\";\r\nimport { _throwInternal } from \"@microsoft/applicationinsights-core-js\";\r\n/**\r\n * Used to record timed events and page views.\r\n */\r\nvar Timing = /** @class */ (function () {\r\n function Timing(logger, name) {\r\n var _self = this;\r\n var _events = {};\r\n _self.start = function (name) {\r\n if (typeof _events[name] !== \"undefined\") {\r\n _throwInternal(logger, 2 /* eLoggingSeverity.WARNING */, 62 /* _eInternalMessageId.StartCalledMoreThanOnce */, \"start was called more than once for this event without calling stop.\", { name: name, key: name }, true);\r\n }\r\n _events[name] = +new Date;\r\n };\r\n _self.stop = function (name, url, properties, measurements) {\r\n var start = _events[name];\r\n if (isNaN(start)) {\r\n _throwInternal(logger, 2 /* eLoggingSeverity.WARNING */, 63 /* _eInternalMessageId.StopCalledWithoutStart */, \"stop was called without a corresponding start.\", { name: name, key: name }, true);\r\n }\r\n else {\r\n var end = +new Date;\r\n var duration = dateTimeUtilsDuration(start, end);\r\n _self.action(name, url, duration, properties, measurements);\r\n }\r\n delete _events[name];\r\n _events[name] = undefined;\r\n };\r\n }\r\n return Timing;\r\n}());\r\nexport { Timing };\r\n//# sourceMappingURL=Timing.js.map","/*\r\n * @nevware21/ts-async\r\n * https://github.com/nevware21/ts-async\r\n *\r\n * Copyright (c) 2022 NevWare21 Solutions LLC\r\n * Licensed under the MIT license.\r\n */\r\n\r\nimport { objDefineProperties } from \"@nevware21/ts-utils\";\r\nimport { _pureAssign } from \"../internal/treeshake_helpers\";\r\n\r\nlet _debugState: any;\r\nlet _debugResult: any;\r\nlet _debugHandled: any;\r\n\r\n/**\r\n * @internal\r\n * @ignore\r\n */\r\nexport let _promiseDebugEnabled = false;\r\n\r\n//#ifdef DEBUG\r\n//#:(!DEBUG) let _theLogger: (id: string, message: string) => void = null;\r\n//#endif\r\n\r\n/**\r\n * @internal\r\n * @ignore Internal function enable logging the internal state of the promise during execution, this code and references are\r\n * removed from the production artifacts\r\n */\r\nexport const _debugLog = (/*#__PURE__*/_pureAssign((id: string, message: string) => {\r\n //#ifdef DEBUG\r\n //#:(!DEBUG) if (_theLogger) {\r\n //#:(!DEBUG) _theLogger(id, message);\r\n //#:(!DEBUG) }\r\n //#endif\r\n}));\r\n\r\n/**\r\n * @internal\r\n * @ignore\r\n * Internal function to add the debug state to the promise so that it provides simular visibility as you would\r\n * see from native promises\r\n * @param thePromise - The Promise implementation\r\n * @param stateFn - The function to return the state of the promise\r\n * @param resultFn - The function to return the result (settled value) of the promise\r\n * @param handledFn - The function to return whether the promise has been handled (used for throwing\r\n * unhandled rejection events)\r\n */\r\nexport function _addDebugState(thePromise: any, stateFn: () => string, resultFn: () => string, handledFn: () => boolean) {\r\n // While the IPromise implementations provide a `state` property, keeping the `[[PromiseState]]`\r\n // as native promises also have a non-enumerable property of the same name\r\n _debugState = _debugState || { toString: () => \"[[PromiseState]]\" };\r\n _debugResult = _debugResult || { toString: () => \"[[PromiseResult]]\" };\r\n _debugHandled = _debugHandled || { toString: () => \"[[PromiseIsHandled]]\" };\r\n \r\n let props: PropertyDescriptorMap = {};\r\n props[_debugState] = { get: stateFn };\r\n props[_debugResult] = { get: resultFn };\r\n props[_debugHandled] = { get: handledFn };\r\n\r\n objDefineProperties(thePromise, props);\r\n}\r\n\r\n/**\r\n * Debug helper to enable internal debugging of the promise implementations. Disabled by default.\r\n * For the generated packages included in the npm package the `logger` will not be called as the\r\n * `_debugLog` function that uses this logger is removed during packaging.\r\n *\r\n * It is available directly from the repository for unit testing.\r\n *\r\n * @group Debug\r\n * @param enabled - Should debugging be enabled (defaults `false`, when `true` promises will have\r\n * additional debug properties and the `toString` will include extra details.\r\n * @param logger - Optional logger that will log internal state changes, only called in debug\r\n * builds as the calling function is removed is the production artifacts.\r\n * @example\r\n * ```ts\r\n * // The Id is the id of the promise\r\n * // The message is the internal debug message\r\n * function promiseDebugLogger(id: string, message: string) {\r\n * if (console && console.log) {\r\n * console.log(id, message);\r\n * }\r\n * }\r\n *\r\n * setPromiseDebugState(true, promiseDebugLogger);\r\n *\r\n * // While the logger will not be called for the production packages\r\n * // Setting the `enabled` flag to tru will cause each promise to have\r\n * // the following additional properties added\r\n * // [[PromiseState]]; => Same as the `state` property\r\n * // [[PromiseResult]]; => The settled value\r\n * // [[PromiseIsHandled]] => Identifies if the promise has been handled\r\n * // It will also cause the `toString` for the promise to include additional\r\n * // debugging information\r\n * ```\r\n */\r\nexport function setPromiseDebugState(enabled: boolean, logger?: (id: string, message: string) => void) {\r\n _promiseDebugEnabled = enabled;\r\n //#ifdef DEBUG\r\n //#:(!DEBUG) _theLogger = logger;\r\n //#endif\r\n}","/*\r\n * @nevware21/ts-async\r\n * https://github.com/nevware21/ts-async\r\n *\r\n * Copyright (c) 2023 NevWare21 Solutions LLC\r\n * Licensed under the MIT license.\r\n */\r\n\r\nexport const STR_PROMISE = \"Promise\";\r\nexport const DONE = \"done\";\r\nexport const VALUE = \"value\";\r\nexport const ITERATOR = \"iterator\";\r\nexport const RETURN = \"return\";\r\nexport const REJECTED = \"rejected\";","/*\r\n * @nevware21/ts-async\r\n * https://github.com/nevware21/ts-async\r\n *\r\n * Copyright (c) 2022 NevWare21 Solutions LLC\r\n * Licensed under the MIT license.\r\n */\r\n\r\nimport { isPromiseLike } from \"@nevware21/ts-utils\";\r\nimport { AwaitResponse } from \"../interfaces/await-response\";\r\nimport { IPromise } from \"../interfaces/IPromise\";\r\nimport { FinallyPromiseHandler, RejectedPromiseHandler, ResolvedPromiseHandler } from \"../interfaces/types\";\r\nimport { REJECTED } from \"../internal/constants\";\r\n\r\n/**\r\n * Helper to coallesce the promise resolved / reject into a single callback to simplify error handling.\r\n * @group Await Helper\r\n * @param value - The value or promise like value to wait\r\n * @param cb - The callback function to call with the resulting value, if the value is not a\r\n * promise like value then the callback is called synchronously, if the value is a promise then\r\n * the callback will be called once the promise completes the resulting value will be passed as an\r\n * IAwaitResponse instance, it will be called whether any promise resolves or rejects.\r\n * @returns The value returned by the `cb` callback function, if the value is a promise then the return value\r\n * of the callback will be returned as a promise whether the callback returns a promise or not.\r\n * @example\r\n * ```ts\r\n * let promise = createPromise((resolve, reject) => {\r\n * resolve(42);\r\n * });\r\n *\r\n * // Handle via doAwaitResponse\r\n * doAwaitResponse(promise, (value) => {\r\n * if (!value.rejected) {\r\n * // Do something with the value\r\n * } else {\r\n * // Do something with the reason\r\n * }\r\n * });\r\n *\r\n * // It can also handle the raw value, so you could process the result of either a\r\n * // synchrounous return of the value or a Promise\r\n * doAwaitResponse(42, (value) => {\r\n * if (!value.rejected) {\r\n * // Do something with the value\r\n * } else {\r\n * // This will never be true as the value is not a promise\r\n * }\r\n * });\r\n * ```\r\n */\r\nexport function doAwaitResponse(value: T | Promise, cb: (response: AwaitResponse) => T | TResult1 | TResult2 | Promise): T | TResult1 | TResult2 | Promise;\r\n\r\n/**\r\n * Helper to coallesce the promise resolved / reject into a single callback to simplify error handling.\r\n * @group Await Helper\r\n * @param value - The value or promise like value to wait for\r\n * @param cb - The callback function to call with the resulting value, if the value is not a\r\n * promise like value then the callback is called synchronously, if the value is a promise then\r\n * the callback will be called once the promise completes the resulting value will be passed as an\r\n * IAwaitResponse instance, it will be called whether any promise resolves or rejects.\r\n * @returns The value returned by the `cb` callback function, if the value is a promise then the return value\r\n * of the callback will be returned as a promise whether the callback returns a promise or not.\r\n * @example\r\n * ```ts\r\n * let promise = createPromise((resolve, reject) => {\r\n * resolve(42);\r\n * });\r\n *\r\n * // Handle via doAwaitResponse\r\n * doAwaitResponse(promise, (value) => {\r\n * if (!value.rejected) {\r\n * // Do something with the value\r\n * } else {\r\n * // Do something with the reason\r\n * }\r\n * });\r\n *\r\n * // It can also handle the raw value, so you could process the result of either a\r\n * // synchrounous return of the value or a Promise\r\n * doAwaitResponse(42, (value) => {\r\n * if (!value.rejected) {\r\n * // Do something with the value\r\n * } else {\r\n * // This will never be true as the value is not a promise\r\n * }\r\n * });\r\n * ```\r\n */\r\nexport function doAwaitResponse(value: T | PromiseLike, cb: (response: AwaitResponse) => T | TResult1 | TResult2 | PromiseLike): T | TResult1 | TResult2 | PromiseLike;\r\n\r\n/**\r\n * Helper to coallesce the promise resolved / reject into a single callback to simplify error handling.\r\n * @group Await Helper\r\n * @param value - The value or promise like value to wait to be resolved or rejected.\r\n * @param cb - The callback function to call with the resulting value, if the value is not a\r\n * promise like value then the callback is called synchronously, if the value is a promise then\r\n * the callback will be called once the promise completes the resulting value will be passed as an\r\n * IAwaitResponse instance, it will be called whether any promise resolves or rejects.\r\n * @returns The value returned by the `cb` callback function, if the value is a promise then the return value\r\n * of the callback will be returned as a promise whether the callback returns a promise or not.\r\n * @example\r\n * ```ts\r\n * let promise = createPromise((resolve, reject) => {\r\n * resolve(42);\r\n * });\r\n *\r\n * // Handle via doAwaitResponse\r\n * doAwaitResponse(promise, (value) => {\r\n * if (!value.rejected) {\r\n * // Do something with the value\r\n * } else {\r\n * // Do something with the reason\r\n * }\r\n * });\r\n *\r\n * // It can also handle the raw value, so you could process the result of either a\r\n * // synchrounous return of the value or a Promise\r\n * doAwaitResponse(42, (value) => {\r\n * if (!value.rejected) {\r\n * // Do something with the value\r\n * } else {\r\n * // This will never be true as the value is not a promise\r\n * }\r\n * });\r\n * ```\r\n */\r\nexport function doAwaitResponse(value: T | IPromise, cb: (response: AwaitResponse) => T | TResult1 | TResult2 | IPromise): T | TResult1 | TResult2 | IPromise {\r\n return doAwait(value as T, (value) => {\r\n return cb ? cb({\r\n status: \"fulfilled\",\r\n rejected: false,\r\n value: value\r\n }) : value;\r\n },\r\n (reason) => {\r\n return cb ? cb({\r\n status: REJECTED,\r\n rejected: true,\r\n reason: reason\r\n }) : reason;\r\n });\r\n}\r\n\r\n/**\r\n * Wait for the promise to resolve or reject, if resolved the callback function will be called with it's value and if\r\n * rejected the rejectFn will be called with the reason. If the passed promise argument is not a promise the callback\r\n * will be called synchronously with the value.\r\n * @group Await Helper\r\n * @param value - The value or promise like value to wait for\r\n * @param resolveFn - The callback to call on the promise successful resolving.\r\n * @param rejectFn - The callback to call when the promise rejects\r\n * @param finallyFn - The callback to call once the promise has resolved or rejected\r\n * @returns The passed value, if it is a promise and there is either a resolve or reject handler\r\n * then it will return a chained promise with the value from the resolve or reject handler (depending\r\n * whether it resolve or rejects)\r\n * @example\r\n * ```ts\r\n * let promise = createPromise((resolve, reject) => {\r\n * resolve(42);\r\n * });\r\n *\r\n * // Handle via a chained promise\r\n * let chainedPromise = promise.then((value) => {\r\n * // Do something with the value\r\n * });\r\n *\r\n * // Handle via doAwait\r\n * doAwait(promise, (value) => {\r\n * // Do something with the value\r\n * });\r\n *\r\n * // It can also handle the raw value, so you could process the result of either a\r\n * // synchrounous return of the value or a Promise\r\n * doAwait(42, (value) => {\r\n * // Do something with the value\r\n * });\r\n * ```\r\n */\r\nexport function doAwait(value: T | Promise, resolveFn: ResolvedPromiseHandler, rejectFn?: RejectedPromiseHandler, finallyFn?: FinallyPromiseHandler): TResult1 | TResult2 | Promise;\r\n\r\n/**\r\n * Wait for the promise to resolve or reject, if resolved the callback function will be called with it's value and if\r\n * rejected the rejectFn will be called with the reason. If the passed promise argument is not a promise the callback\r\n * will be called synchronously with the value.\r\n * @group Await Helper\r\n * @param value - The value or promise like value to wait for\r\n * @param resolveFn - The callback to call on the promise successful resolving.\r\n * @param rejectFn - The callback to call when the promise rejects\r\n * @param finallyFn - The callback to call once the promise has resolved or rejected\r\n * @returns The passed value, if it is a promise and there is either a resolve or reject handler\r\n * then it will return a chained promise with the value from the resolve or reject handler (depending\r\n * whether it resolve or rejects)\r\n * @example\r\n * ```ts\r\n * let promise = createPromise((resolve, reject) => {\r\n * resolve(42);\r\n * });\r\n *\r\n * // Handle via a chained promise\r\n * let chainedPromise = promise.then((value) => {\r\n * // Do something with the value\r\n * });\r\n *\r\n * // Handle via doAwait\r\n * doAwait(promise, (value) => {\r\n * // Do something with the value\r\n * });\r\n *\r\n * // It can also handle the raw value, so you could process the result of either a\r\n * // synchrounous return of the value or a Promise\r\n * doAwait(42, (value) => {\r\n * // Do something with the value\r\n * });\r\n * ```\r\n */\r\nexport function doAwait(value: T | PromiseLike, resolveFn: ResolvedPromiseHandler, rejectFn?: RejectedPromiseHandler, finallyFn?: FinallyPromiseHandler): TResult1 | TResult2 | PromiseLike;\r\n\r\n/**\r\n * Wait for the promise to resolve or reject, if resolved the callback function will be called with it's value and if\r\n * rejected the rejectFn will be called with the reason. If the passed promise argument is not a promise the callback\r\n * will be called synchronously with the value.\r\n * @group Await Helper\r\n * @param value - The value or promise like value to wait for\r\n * @param resolveFn - The callback to call on the promise successful resolving.\r\n * @param rejectFn - The callback to call when the promise rejects\r\n * @param finallyFn - The callback to call once the promise has resolved or rejected\r\n * @returns The passed value, if it is a promise and there is either a resolve or reject handler\r\n * then it will return a chained promise with the value from the resolve or reject handler (depending\r\n * whether it resolve or rejects)\r\n * @example\r\n * ```ts\r\n * let promise = createPromise((resolve, reject) => {\r\n * resolve(42);\r\n * });\r\n *\r\n * // Handle via a chained promise\r\n * let chainedPromise = promise.then((value) => {\r\n * // Do something with the value\r\n * });\r\n *\r\n * // Handle via doAwait\r\n * doAwait(promise, (value) => {\r\n * // Do something with the value\r\n * });\r\n *\r\n * // It can also handle the raw value, so you could process the result of either a\r\n * // synchrounous return of the value or a Promise\r\n * doAwait(42, (value) => {\r\n * // Do something with the value\r\n * });\r\n * ```\r\n */\r\nexport function doAwait(value: T | IPromise, resolveFn: ResolvedPromiseHandler, rejectFn?: RejectedPromiseHandler, finallyFn?: FinallyPromiseHandler): TResult1 | TResult2 | IPromise {\r\n let result: T | TResult1 | TResult2 | IPromise | PromiseLike = value;\r\n \r\n try {\r\n if (isPromiseLike(value)) {\r\n if (resolveFn || rejectFn) {\r\n result = value.then(resolveFn, rejectFn) as any;\r\n }\r\n } else {\r\n try {\r\n if (resolveFn) {\r\n result = resolveFn(value);\r\n }\r\n } catch (err) {\r\n if (rejectFn) {\r\n result = rejectFn(err);\r\n } else {\r\n throw err;\r\n }\r\n }\r\n }\r\n } finally {\r\n if (finallyFn) {\r\n doFinally(result as any, finallyFn);\r\n }\r\n }\r\n\r\n return result as any;\r\n}\r\n\r\n/**\r\n * Wait for the promise to resolve or reject and then call the finallyFn. If the passed promise argument is not a promise the callback\r\n * will be called synchronously with the value. If the passed promise doesn't implement finally then a finally implementation will be\r\n * simulated using then(..., ...).\r\n * @group Await Helper\r\n * @param value - The value or promise like value to wait for\r\n * @param finallyFn - The finally function to call once the promise has resolved or rejected\r\n */\r\nexport function doFinally(value: T | Promise, finallyFn: FinallyPromiseHandler): T | Promise;\r\n\r\n/**\r\n * Wait for the promise to resolve or reject and then call the finallyFn. If the passed promise argument is not a promise the callback\r\n * will be called synchronously with the value. If the passed promise doesn't implement finally then a finally implementation will be\r\n * simulated using then(..., ...).\r\n * @group Await Helper\r\n * @param value - The value or promise like value to wait for\r\n * @param finallyFn - The finally function to call once the promise has resolved or rejected\r\n */\r\nexport function doFinally(value: T | PromiseLike, finallyFn: FinallyPromiseHandler): T | PromiseLike;\r\n\r\n/**\r\n * Wait for the promise to resolve or reject and then call the finallyFn. If the passed promise argument is not a promise the callback\r\n * will be called synchronously with the value. If the passed promise doesn't implement finally then a finally implementation will be\r\n * simulated using then(..., ...).\r\n * @group Await Helper\r\n * @param value - The value or promise like value to wait for\r\n * @param finallyFn - The finally function to call once the promise has resolved or rejected\r\n */\r\nexport function doFinally(value: T | IPromise, finallyFn: FinallyPromiseHandler): T | IPromise {\r\n let result = value;\r\n if (finallyFn) {\r\n if (isPromiseLike(value)) {\r\n if ((value as IPromise).finally) {\r\n result = (value as IPromise).finally(finallyFn);\r\n } else {\r\n // Simulate finally if not available\r\n result = value.then(\r\n function(value) {\r\n finallyFn();\r\n return value;\r\n }, function(reason: any) {\r\n finallyFn();\r\n throw reason;\r\n });\r\n }\r\n } else {\r\n finallyFn();\r\n }\r\n }\r\n\r\n return result;\r\n}","/*\r\n * @nevware21/ts-async\r\n * https://github.com/nevware21/ts-async\r\n *\r\n * Copyright (c) 2022 NevWare21 Solutions LLC\r\n * Licensed under the MIT license.\r\n */\r\n\r\nimport { REJECTED } from \"./constants\";\r\n\r\n/**\r\n * @ignore -- Don't include in the generated documentation\r\n * @internal\r\n */\r\nexport const enum ePromiseState {\r\n Pending = 0,\r\n Resolving = 1,\r\n Resolved = 2,\r\n Rejected = 3\r\n}\r\n\r\n/**\r\n * @ignore -- Don't include in the generated documentation\r\n * @internal\r\n */\r\nexport const STRING_STATES: string[] = /*#__PURE__*/[\r\n \"pending\", \"resolving\", \"resolved\", REJECTED\r\n];\r\n","/*\r\n * @nevware21/ts-async\r\n * https://github.com/nevware21/ts-async\r\n *\r\n * Copyright (c) 2022 NevWare21 Solutions LLC\r\n * Licensed under the MIT license.\r\n */\r\n\r\nimport { dumpObj, getDocument, getInst, ICachedValue, createCachedValue, safe } from \"@nevware21/ts-utils\";\r\n\r\nconst DISPATCH_EVENT = \"dispatchEvent\";\r\nlet _hasInitEvent: ICachedValue;\r\n\r\n/**\r\n * @internal\r\n * @ignore\r\n * Helper function to determine if the document has the `initEvent` function\r\n * @param doc - The document to check\r\n * @returns\r\n */\r\nfunction _hasInitEventFn(doc: Document) {\r\n let evt: any;\r\n if (doc && doc.createEvent) {\r\n evt = doc.createEvent(\"Event\");\r\n }\r\n \r\n return (!!evt && evt.initEvent);\r\n}\r\n\r\n/**\r\n * @internal\r\n * @ignore\r\n * @param target\r\n * @param evtName\r\n * @param populateEvent\r\n * @param useNewEvent\r\n */\r\nexport function emitEvent(target: any, evtName: string, populateEvent: (theEvt: Event | any) => Event | any, useNewEvent: boolean) {\r\n\r\n let doc = getDocument();\r\n !_hasInitEvent && (_hasInitEvent = createCachedValue(!!safe(_hasInitEventFn, [ doc ]).v));\r\n\r\n let theEvt: Event = _hasInitEvent.v ? doc.createEvent(\"Event\") : (useNewEvent ? new Event(evtName) : {} as Event);\r\n populateEvent && populateEvent(theEvt);\r\n\r\n if (_hasInitEvent.v) {\r\n theEvt.initEvent(evtName, false, true);\r\n }\r\n\r\n if (theEvt && target[DISPATCH_EVENT]) {\r\n target[DISPATCH_EVENT](theEvt);\r\n } else {\r\n let handler = target[\"on\" + evtName];\r\n if (handler) {\r\n handler(theEvt);\r\n } else {\r\n let theConsole = getInst(\"console\");\r\n theConsole && (theConsole[\"error\"] || theConsole[\"log\"])(evtName, dumpObj(theEvt));\r\n }\r\n }\r\n}\r\n","/*\r\n * @nevware21/ts-async\r\n * https://github.com/nevware21/ts-async\r\n *\r\n * Copyright (c) 2022 NevWare21 Solutions LLC\r\n * Licensed under the MIT license.\r\n */\r\n\r\nimport {\r\n arrSlice, dumpObj, getKnownSymbol, hasSymbol, isFunction, isPromiseLike, isUndefined,\r\n throwTypeError, WellKnownSymbols, objToString, scheduleTimeout, ITimerHandler, getWindow, isNode,\r\n getGlobal, objDefine, objDefineProp, iterForOf, isIterable, isArray, arrForEach, createCachedValue,\r\n ICachedValue, safe, getInst, createCustomError\r\n} from \"@nevware21/ts-utils\";\r\nimport { doAwait, doAwaitResponse } from \"./await\";\r\nimport { _addDebugState, _promiseDebugEnabled } from \"./debug\";\r\nimport { IPromise } from \"../interfaces/IPromise\";\r\nimport { PromisePendingProcessor } from \"./itemProcessor\";\r\nimport {\r\n FinallyPromiseHandler, PromiseCreatorFn, PromiseExecutor, RejectedPromiseHandler, ResolvedPromiseHandler\r\n} from \"../interfaces/types\";\r\nimport { ePromiseState, STRING_STATES } from \"../internal/state\";\r\nimport { emitEvent } from \"./event\";\r\nimport { REJECTED, STR_PROMISE } from \"../internal/constants\";\r\nimport { IPromiseResult } from \"../interfaces/IPromiseResult\";\r\n\r\n//#ifdef DEBUG\r\n//#:(!DEBUG) import { _debugLog } from \"./debug\";\r\n//#endif\r\n\r\nconst NODE_UNHANDLED_REJECTION = \"unhandledRejection\";\r\nconst UNHANDLED_REJECTION = NODE_UNHANDLED_REJECTION.toLowerCase();\r\n\r\nlet _currentPromiseId: number[] = [];\r\nlet _uniquePromiseId = 0;\r\nlet _unhandledRejectionTimeout = 10;\r\nlet _aggregationError: ICachedValue;\r\n\r\n/**\r\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PromiseRejectionEvent)\r\n */\r\ninterface _PromiseRejectionEvent extends Event {\r\n /**\r\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PromiseRejectionEvent/promise)\r\n */\r\n readonly promise: IPromise;\r\n\r\n /**\r\n * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PromiseRejectionEvent/reason)\r\n */\r\n readonly reason: any;\r\n}\r\n\r\nlet _hasPromiseRejectionEvent: ICachedValue<_PromiseRejectionEvent>;\r\n\r\nfunction dumpFnObj(value: any) {\r\n if (isFunction(value)) {\r\n return value.toString();\r\n }\r\n\r\n return dumpObj(value);\r\n}\r\n\r\n//#ifdef DEBUG\r\n//#:(!DEBUG) function _getCaller(prefix: string, start: number) {\r\n//#:(!DEBUG) let stack = new Error().stack;\r\n//#:(!DEBUG) if (stack) {\r\n//#:(!DEBUG) let lines = stack.split(\"\\n\");\r\n//#:(!DEBUG) if (lines.length > start) {\r\n//#:(!DEBUG) return prefix + \":\" + arrSlice(lines, start, start + 5).join(\"\\n\") + \"\\n...\";\r\n//#:(!DEBUG) }\r\n//#:(!DEBUG) }\r\n//#:(!DEBUG) return null;\r\n//#:(!DEBUG) }\r\n//#endif\r\n\r\n/*#__NO_SIDE_EFFECTS__*/\r\nfunction _createAggregationError(values: any[]) {\r\n !_aggregationError && (_aggregationError = createCachedValue(safe(getInst, [\"AggregationError\"]).v || createCustomError(\"AggregationError\", (self, args) => {\r\n self.errors = args[0];\r\n })));\r\n\r\n return new _aggregationError.v(values);\r\n}\r\n\r\n/**\r\n * @ignore\r\n * @internal\r\n *\r\n * Implementing a simple synchronous promise interface for support within any environment that\r\n * doesn't support the Promise API\r\n * @param newPromise - The delegate function used to create a new promise object\r\n * @param processor - The function to use to process the pending\r\n * @param executor - The resolve function\r\n * @param additionalArgs - [Optional] Additional arguments that will be passed to the PromiseCreatorFn\r\n */\r\nexport function _createPromise(newPromise: PromiseCreatorFn, processor: PromisePendingProcessor, executor: PromiseExecutor, ...additionalArgs: any): IPromise;\r\n\r\n/**\r\n * @ignore\r\n * @internal\r\n *\r\n * Implementing a simple synchronous promise interface for support within any environment that\r\n * doesn't support the Promise API\r\n * @param newPromise - The delegate function used to create a new promise object\r\n * @param processor - The function to use to process the pending\r\n * @param executor - The resolve function\r\n * @param additionalArgs - [Optional] Additional arguments that will be passed to the PromiseCreatorFn\r\n */\r\nexport function _createPromise(newPromise: PromiseCreatorFn, processor: PromisePendingProcessor, executor: PromiseExecutor): IPromise {\r\n let additionalArgs = arrSlice(arguments, 3);\r\n let _state = ePromiseState.Pending;\r\n let _hasResolved = false;\r\n let _settledValue: T;\r\n let _queue: (() => void)[] = [];\r\n let _id = _uniquePromiseId++;\r\n let _parentId = _currentPromiseId.length > 0 ? _currentPromiseId[_currentPromiseId.length - 1] : undefined;\r\n let _handled = false;\r\n let _unHandledRejectionHandler: ITimerHandler = null;\r\n let _thePromise: IPromise;\r\n \r\n // https://tc39.es/ecma262/#sec-promise.prototype.then\r\n function _then(onResolved?: ResolvedPromiseHandler, onRejected?: RejectedPromiseHandler): IPromise {\r\n try {\r\n _currentPromiseId.push(_id);\r\n _handled = true;\r\n _unHandledRejectionHandler && _unHandledRejectionHandler.cancel();\r\n _unHandledRejectionHandler = null;\r\n\r\n let thenPromise = newPromise(function (resolve, reject) {\r\n //#ifdef DEBUG\r\n //#:(!DEBUG) _debugLog(_toString(), _getCaller(\"_then\", 7));\r\n //#endif\r\n\r\n // Queue the new promise returned to be resolved or rejected\r\n // when this promise settles.\r\n _queue.push(function () {\r\n // https://tc39.es/ecma262/#sec-newpromisereactionjob\r\n //let value: any;\r\n try {\r\n // First call the onFulfilled or onRejected handler, on the settled value\r\n // of this promise. If the corresponding `handler` does not exist, simply\r\n // pass through the settled value.\r\n //#ifdef DEBUG\r\n //#:(!DEBUG) _debugLog(_toString(), \"Handling settled value \" + dumpFnObj(_settledValue));\r\n //#endif\r\n let handler = _state === ePromiseState.Resolved ? onResolved : onRejected;\r\n let value = isUndefined(handler) ? _settledValue : (isFunction(handler) ? handler(_settledValue) : handler);\r\n //#ifdef DEBUG\r\n //#:(!DEBUG) _debugLog(_toString(), \"Handling Result \" + dumpFnObj(value));\r\n //#endif\r\n \r\n if (isPromiseLike(value)) {\r\n // The called handlers returned a new promise, so the chained promise\r\n // will follow the state of this promise.\r\n value.then(resolve as any, reject);\r\n } else if (handler) {\r\n // If we have a handler then chained promises are always \"resolved\" with the result returned\r\n resolve(value as any);\r\n } else if (_state === ePromiseState.Rejected) {\r\n // If this promise is rejected then the chained promise should be rejected\r\n // with either the settled value of this promise or the return value of the handler.\r\n reject(value);\r\n } else {\r\n // If this promise is fulfilled, then the chained promise is also fulfilled\r\n // with either the settled value of this promise or the return value of the handler.\r\n resolve(value as any);\r\n }\r\n } catch (e) {\r\n reject(e);\r\n }\r\n });\r\n \r\n //#ifdef DEBUG\r\n //#:(!DEBUG) _debugLog(_toString(), \"Added to Queue \" + _queue.length);\r\n //#endif\r\n \r\n // If this promise is already settled, then immediately process the callback we\r\n // just added to the queue.\r\n if (_hasResolved) {\r\n _processQueue();\r\n }\r\n }, additionalArgs);\r\n \r\n //#ifdef DEBUG\r\n //#:(!DEBUG) _debugLog(_toString(), \"Created -> \" + thenPromise.toString());\r\n //#endif\r\n \r\n return thenPromise;\r\n \r\n } finally {\r\n _currentPromiseId.pop();\r\n }\r\n }\r\n\r\n // https://tc39.es/ecma262/#sec-promise.prototype.catch\r\n function _catch(onRejected: RejectedPromiseHandler) {\r\n // Reuse then onRejected to support rejection\r\n return _then(undefined, onRejected);\r\n }\r\n\r\n // https://tc39.es/ecma262/#sec-promise.prototype.finally\r\n function _finally(onFinally: FinallyPromiseHandler): IPromise {\r\n let thenFinally: any = onFinally;\r\n let catchFinally: any = onFinally;\r\n if (isFunction(onFinally)) {\r\n thenFinally = function(value: TResult1 | TResult2) {\r\n onFinally && onFinally();\r\n return value;\r\n }\r\n \r\n catchFinally = function(reason: any) {\r\n onFinally && onFinally();\r\n throw reason;\r\n }\r\n }\r\n\r\n return _then(thenFinally as any, catchFinally as any);\r\n }\r\n\r\n function _strState() {\r\n return STRING_STATES[_state];\r\n }\r\n\r\n function _processQueue() {\r\n if (_queue.length > 0) {\r\n // The onFulfilled and onRejected handlers must be called asynchronously. Thus,\r\n // we make a copy of the queue and work on it once the current call stack unwinds.\r\n let pending = _queue.slice();\r\n _queue = [];\r\n\r\n //#ifdef DEBUG\r\n //#:(!DEBUG) _debugLog(_toString(), \"Processing queue \" + pending.length);\r\n //#endif\r\n\r\n _handled = true;\r\n _unHandledRejectionHandler && _unHandledRejectionHandler.cancel();\r\n _unHandledRejectionHandler = null;\r\n processor(pending);\r\n //#ifdef DEBUG\r\n //#:(!DEBUG) _debugLog(_toString(), \"Processing done\");\r\n //#endif\r\n\r\n } else {\r\n //#ifdef DEBUG\r\n //#:(!DEBUG) _debugLog(_toString(), \"Empty Processing queue \");\r\n //#endif\r\n }\r\n }\r\n\r\n function _createSettleIfFn(newState: ePromiseState, allowState: ePromiseState) {\r\n return (theValue: T) => {\r\n if (_state === allowState) {\r\n if (newState === ePromiseState.Resolved && isPromiseLike(theValue)) {\r\n _state = ePromiseState.Resolving;\r\n //#ifdef DEBUG\r\n //#:(!DEBUG) _debugLog(_toString(), \"Resolving\");\r\n //#endif\r\n theValue.then(\r\n _createSettleIfFn(ePromiseState.Resolved, ePromiseState.Resolving),\r\n _createSettleIfFn(ePromiseState.Rejected, ePromiseState.Resolving));\r\n return;\r\n }\r\n\r\n _state = newState;\r\n _hasResolved = true;\r\n _settledValue = theValue;\r\n //#ifdef DEBUG\r\n //#:(!DEBUG) _debugLog(_toString(), _strState());\r\n //#endif\r\n _processQueue();\r\n if (!_handled && newState === ePromiseState.Rejected && !_unHandledRejectionHandler) {\r\n //#ifdef DEBUG\r\n //#:(!DEBUG) _debugLog(_toString(), \"Setting up unhandled rejection\");\r\n //#endif\r\n _unHandledRejectionHandler = scheduleTimeout(_notifyUnhandledRejection, _unhandledRejectionTimeout)\r\n }\r\n } else {\r\n //#ifdef DEBUG\r\n //#:(!DEBUG) _debugLog(_toString(), \"Already \" + _strState());\r\n //#endif\r\n }\r\n };\r\n }\r\n\r\n function _notifyUnhandledRejection() {\r\n if (!_handled) {\r\n // Mark as handled so we don't keep notifying\r\n _handled = true;\r\n if (isNode()) {\r\n //#ifdef DEBUG\r\n //#:(!DEBUG) _debugLog(_toString(), \"Emitting \" + NODE_UNHANDLED_REJECTION);\r\n //#endif\r\n process.emit(NODE_UNHANDLED_REJECTION, _settledValue, _thePromise);\r\n } else {\r\n let gbl = getWindow() || getGlobal();\r\n \r\n !_hasPromiseRejectionEvent && (_hasPromiseRejectionEvent = createCachedValue(safe(getInst<_PromiseRejectionEvent>, [STR_PROMISE + \"RejectionEvent\"]).v));\r\n\r\n //#ifdef DEBUG\r\n //#:(!DEBUG) _debugLog(_toString(), \"Emitting \" + UNHANDLED_REJECTION);\r\n //#endif\r\n emitEvent(gbl, UNHANDLED_REJECTION, (theEvt: any) => {\r\n objDefine(theEvt, \"promise\", { g: () => _thePromise });\r\n theEvt.reason = _settledValue;\r\n return theEvt;\r\n }, !!_hasPromiseRejectionEvent.v);\r\n }\r\n }\r\n }\r\n\r\n _thePromise = {\r\n then: _then,\r\n \"catch\": _catch,\r\n finally: _finally\r\n } as any;\r\n\r\n objDefineProp(_thePromise, \"state\", {\r\n get: _strState\r\n });\r\n\r\n if (_promiseDebugEnabled) {\r\n // eslint-disable-next-line brace-style\r\n _addDebugState(_thePromise, _strState, () => { return objToString(_settledValue); }, () => _handled);\r\n }\r\n\r\n if (hasSymbol()) {\r\n _thePromise[getKnownSymbol(WellKnownSymbols.toStringTag)] = \"IPromise\";\r\n }\r\n\r\n let createStack: string;\r\n //#if DEBUG\r\n //#:(!{DEBUG}) createStack = _getCaller(\"Created\", 5);\r\n //#endif\r\n function _toString() {\r\n return \"IPromise\" + (_promiseDebugEnabled ? \"[\" + _id + (!isUndefined(_parentId) ? (\":\" + _parentId) : \"\") + \"]\" : \"\") + \" \" + _strState() + (_hasResolved ? (\" - \" + dumpFnObj(_settledValue)) : \"\") + (createStack ? \" @ \" + createStack : \"\");\r\n }\r\n\r\n _thePromise.toString = _toString;\r\n\r\n (function _initialize() {\r\n if (!isFunction(executor)) {\r\n throwTypeError(STR_PROMISE + \": executor is not a function - \" + dumpFnObj(executor));\r\n }\r\n\r\n const _rejectFn = _createSettleIfFn(ePromiseState.Rejected, ePromiseState.Pending);\r\n try {\r\n //#ifdef DEBUG\r\n //#:(!DEBUG) _debugLog(_toString(), \"Executing\");\r\n //#endif\r\n executor.call(\r\n _thePromise,\r\n _createSettleIfFn(ePromiseState.Resolved, ePromiseState.Pending),\r\n _rejectFn);\r\n } catch (e) {\r\n //#ifdef DEBUG\r\n //#:(!DEBUG) _debugLog(_toString(), \"Exception thrown: \" + dumpFnObj(e));\r\n //#endif\r\n _rejectFn(e);\r\n }\r\n\r\n //#ifdef DEBUG\r\n //#:(!DEBUG) _debugLog(_toString(), \"~Executing\");\r\n //#endif\r\n })();\r\n\r\n //#ifdef DEBUG\r\n //#:(!DEBUG) _debugLog(_toString(), \"Returning\");\r\n //#endif\r\n return _thePromise;\r\n}\r\n\r\n/**\r\n * @ignore\r\n * @internal\r\n * Returns a function which when called will return a new Promise object that resolves to an array of the\r\n * results from the input promises. The returned promise will resolve when all of the inputs' promises have\r\n * resolved, or if the input contains no promises. It rejects immediately upon any of the input promises\r\n * rejected or non-promises throwing an error, and will reject with this first rejection message / error.\r\n * @param newPromise - The delegate function used to create a new promise object the new promise instance.\r\n * @returns A function to create a promise that will be resolved when all arguments are resolved.\r\n */\r\n/*#__NO_SIDE_EFFECTS__*/\r\nexport function _createAllPromise(newPromise: PromiseCreatorFn): (input: Iterable>, ...additionalArgs: any) => IPromise[]> {\r\n return function (input: Iterable>): IPromise[]> {\r\n let additionalArgs = arrSlice(arguments, 1);\r\n return newPromise[]>((resolve, reject) => {\r\n try {\r\n let values = [] as any;\r\n let pending = 1; // Prefix to 1 so we finish iterating over all of the input promises first\r\n\r\n iterForOf(input, (item, idx) => {\r\n if (item) {\r\n pending++;\r\n doAwait(item, (value) => {\r\n // Set the result values\r\n values[idx] = value;\r\n if (--pending === 0) {\r\n resolve(values);\r\n }\r\n }, reject);\r\n }\r\n });\r\n\r\n // Now decrement the pending so that we finish correctly\r\n pending--;\r\n if (pending === 0) {\r\n // All promises were either resolved or where not a promise\r\n resolve(values);\r\n }\r\n } catch (e) {\r\n reject(e);\r\n }\r\n }, additionalArgs);\r\n };\r\n}\r\n\r\n/**\r\n * @ignore\r\n * @internal\r\n * The createResolvedPromise returns a PromiseLike object that is resolved with a given value. If the value is\r\n * PromiseLike (i.e. has a \"then\" method), the returned promise will \"follow\" that thenable, adopting its eventual\r\n * state; otherwise the returned promise will be fulfilled with the value. This function flattens nested layers\r\n * of promise-like objects (e.g. a promise that resolves to a promise that resolves to something) into a single layer.\r\n * @param newPromise - The delegate function used to create a new promise object\r\n * @param value - Argument to be resolved by this Promise. Can also be a Promise or a thenable to resolve.\r\n * @param additionalArgs - Any additional arguments that should be passed to the delegate to assist with the creation of\r\n * the new promise instance.\r\n */\r\n/*#__NO_SIDE_EFFECTS__*/\r\nexport function _createResolvedPromise(newPromise: PromiseCreatorFn): (value: T, ...additionalArgs: any) => IPromise {\r\n return function (value: T): IPromise {\r\n let additionalArgs = arrSlice(arguments, 1);\r\n if (isPromiseLike(value)) {\r\n return value as unknown as IPromise;\r\n }\r\n \r\n return newPromise((resolve) => {\r\n //#ifdef DEBUG\r\n //#:(!DEBUG) _debugLog(String(this), \"Resolving Promise\");\r\n //#endif\r\n resolve(value);\r\n }, additionalArgs);\r\n };\r\n}\r\n\r\n/**\r\n * @ignore\r\n * @internal\r\n * Return a promise like object that is rejected with the given reason.\r\n * @param newPromise - The delegate function used to create a new promise object\r\n * @param reason - The rejection reason\r\n * @param additionalArgs - Any additional arguments that should be passed to the delegate to assist with the creation of\r\n * the new promise instance.\r\n */\r\n/*#__NO_SIDE_EFFECTS__*/\r\nexport function _createRejectedPromise(newPromise: PromiseCreatorFn): (reason: any, ...additionalArgs: any) => IPromise {\r\n return function (reason: any): IPromise {\r\n let additionalArgs = arrSlice(arguments, 1);\r\n return newPromise((_resolve, reject) => {\r\n //#ifdef DEBUG\r\n //#:(!DEBUG) _debugLog(String(this), \"Rejecting Promise\");\r\n //#endif\r\n reject(reason);\r\n }, additionalArgs);\r\n };\r\n}\r\n\r\n/**\r\n * @ignore\r\n * @internal\r\n * @since 0.5.0\r\n * Returns a function which when called will return a new Promise object that resolves to an array of\r\n * IPromiseResults from the input promises. The returned promise will resolve when all of the inputs'\r\n * promises have resolved or rejected, or if the input contains no promises. It will resolve only after\r\n * all input promises have been fulfilled (resolve or rejected).\r\n * @param newPromise - The delegate function used to create a new promise object the new promise instance.\r\n * @returns A function to create a promise that will be resolved when all arguments are resolved.\r\n */\r\n/*#__NO_SIDE_EFFECTS__*/\r\nexport function _createAllSettledPromise(newPromise: PromiseCreatorFn, ..._args: any[]): ICachedValue<(input: T, timeout?: number) => IPromise<{ -readonly [P in keyof T]: IPromiseResult>; }>> {\r\n return createCachedValue(function (input: T, ..._args: any[]): IPromise<{ -readonly [P in keyof T]: IPromiseResult>; }> {\r\n let additionalArgs = arrSlice(arguments, 1);\r\n return newPromise<{ -readonly [P in keyof T]: IPromiseResult>; }>((resolve, reject) => {\r\n let values: { -readonly [P in keyof T]: IPromiseResult>; } = [] as any;\r\n let pending = 1; // Prefix to 1 so we finish iterating over all of the input promises first\r\n\r\n function processItem(item: any, idx: number) {\r\n pending++;\r\n doAwaitResponse(item, (value) => {\r\n if (value.rejected) {\r\n values[idx] = {\r\n status: REJECTED,\r\n reason: value.reason\r\n };\r\n } else {\r\n values[idx] = {\r\n status: \"fulfilled\",\r\n value: value.value\r\n };\r\n }\r\n \r\n if (--pending === 0) {\r\n resolve(values);\r\n }\r\n });\r\n }\r\n\r\n try {\r\n\r\n if (isArray(input)) {\r\n arrForEach(input, processItem);\r\n } else if (isIterable(input)) {\r\n iterForOf(input, processItem);\r\n } else {\r\n throwTypeError(\"Input is not an iterable\");\r\n }\r\n\r\n // Now decrement the pending so that we finish correctly\r\n pending--;\r\n if (pending === 0) {\r\n // All promises were either resolved or where not a promise\r\n resolve(values);\r\n }\r\n } catch (e) {\r\n reject(e);\r\n }\r\n }, additionalArgs);\r\n });\r\n}\r\n\r\n/**\r\n * @ignore\r\n * @internal\r\n * @since 0.5.0\r\n * Returns a function takes an iterable of promises as input and returns a single Promise.\r\n * This returned promise settles with the eventual state of the first promise that settles.\r\n * @description The returned promise is one of the promise concurrency methods. It's useful when you want\r\n * the first async task to complete, but do not care about its eventual state (i.e. it can either succeed\r\n * or fail).\r\n * @param newPromise - The delegate function used to create a new promise object the new promise instance.\r\n * @returns A function to create a promise that will resolve when the first promise to settle is fulfilled,\r\n * and rejects if the first promise to settle is rejected. The returned promise remains pending forever\r\n * if the iterable passed is empty. If the iterable passed is non-empty but contains no pending promises,\r\n * the returned promise is still settled.\r\n */\r\n/*#__NO_SIDE_EFFECTS__*/\r\nexport function _createRacePromise(newPromise: PromiseCreatorFn, ..._args: any[]): ICachedValue<(values: T, timeout?: number) => IPromise>> {\r\n return createCachedValue(function (input: T, ..._args: any[]): IPromise> {\r\n let additionalArgs = arrSlice(arguments, 1);\r\n return newPromise>((resolve, reject) => {\r\n let isDone = false;\r\n\r\n function processItem(item: any) {\r\n doAwaitResponse(item, (value) => {\r\n if (!isDone) {\r\n isDone = true;\r\n if (value.rejected) {\r\n reject(value.reason);\r\n } else {\r\n resolve(value.value);\r\n }\r\n }\r\n });\r\n }\r\n\r\n try {\r\n if (isArray(input)) {\r\n arrForEach(input, processItem);\r\n } else if (isIterable(input)) {\r\n iterForOf(input, processItem);\r\n } else {\r\n throwTypeError(\"Input is not an iterable\");\r\n }\r\n\r\n } catch (e) {\r\n reject(e);\r\n }\r\n }, additionalArgs);\r\n });\r\n}\r\n\r\n/**\r\n * @internal\r\n * @ignore\r\n * @since 0.5.0\r\n * Returns a function takes an iterable of promises as input and returns a single Promise.\r\n * This returned promise fulfills when any of the input's promises fulfills, with this first fulfillment\r\n * value. It rejects when all of the input's promises reject (including when an empty iterable is passed),\r\n * with an AggregateError containing an array of rejection reasons.\r\n * @param newPromise - The delegate function used to create a new promise object the new promise instance.\r\n * @returns A function to create a promise that will resolve when the any of the input's promises fulfills,\r\n * with this first fulfillment value. It rejects when all of the input's promises reject (including when\r\n * an empty iterable is passed), with an AggregateError containing an array of rejection reasons.\r\n */\r\n/*#__NO_SIDE_EFFECTS__*/\r\nexport function _createAnyPromise(newPromise: PromiseCreatorFn, ..._args: any[]): ICachedValue<(values: T) => IPromise>> {\r\n return createCachedValue(function (input: T, ..._args: any[]): IPromise> {\r\n let additionalArgs = arrSlice(arguments, 1);\r\n return newPromise>((resolve, reject) => {\r\n let theErros: Array = [] as any;\r\n let pending = 1; // Prefix to 1 so we finish iterating over all of the input promises first\r\n let isDone = false;\r\n\r\n function processItem(item: any, idx: number) {\r\n pending++;\r\n doAwaitResponse(item, (value ) => {\r\n if (!value.rejected) {\r\n isDone = true;\r\n resolve(value.value);\r\n return;\r\n } else {\r\n theErros[idx] = value.reason;\r\n }\r\n\r\n if (--pending === 0 && !isDone) {\r\n reject(_createAggregationError(theErros));\r\n }\r\n });\r\n }\r\n\r\n try {\r\n if (isArray(input)) {\r\n arrForEach(input, processItem);\r\n } else if (isIterable(input)) {\r\n iterForOf(input, processItem);\r\n } else {\r\n throwTypeError(\"Input is not an iterable\");\r\n }\r\n\r\n // Now decrement the pending so that we finish correctly\r\n pending--;\r\n if (pending === 0 && !isDone) {\r\n // All promises were either resolved or where not a promise\r\n reject(_createAggregationError(theErros));\r\n }\r\n } catch (e) {\r\n reject(e);\r\n }\r\n }, additionalArgs);\r\n });\r\n}\r\n","/*\r\n * @nevware21/ts-async\r\n * https://github.com/nevware21/ts-async\r\n *\r\n * Copyright (c) 2022 NevWare21 Solutions LLC\r\n * Licensed under the MIT license.\r\n */\r\n\r\nimport { arrForEach, isNumber, scheduleIdleCallback, scheduleTimeout } from \"@nevware21/ts-utils\";\r\nimport { IPromise } from \"../interfaces/IPromise\";\r\nimport { PromiseExecutor } from \"../interfaces/types\";\r\n\r\nexport type PromisePendingProcessor = (pending: PromisePendingFn[]) => void;\r\nexport type PromisePendingFn = () => void;\r\nexport type PromiseCreatorFn = (newExecutor: PromiseExecutor, ...extraArgs: any) => IPromise;\r\n\r\n/**\r\n * @internal\r\n * @ignore\r\n * Return an item processor that processes all of the pending items synchronously\r\n * @return An item processor\r\n */\r\nexport function syncItemProcessor(pending: PromisePendingFn[]): void {\r\n arrForEach(pending, (fn: PromisePendingFn) => {\r\n try {\r\n fn();\r\n } catch (e) {\r\n // Don't let 1 failing handler break all others\r\n // TODO: Add some form of error reporting (i.e. Call any registered JS error handler so the error is reported)\r\n }\r\n });\r\n}\r\n\r\n/**\r\n * @internal\r\n * @ignore\r\n * Return an item processor that processes all of the pending items asynchronously using the optional timeout.\r\n * @param timeout - Optional timeout to wait before processing the items, defaults to zero.\r\n * @return An item processor\r\n */\r\nexport function timeoutItemProcessor(timeout?: number): (pending: PromisePendingFn[]) => void {\r\n let callbackTimeout = isNumber(timeout) ? timeout : 0;\r\n\r\n return (pending: PromisePendingFn[]) => {\r\n scheduleTimeout(() => {\r\n syncItemProcessor(pending);\r\n }, callbackTimeout);\r\n }\r\n}\r\n\r\n/**\r\n * @internal\r\n * @ignore\r\n * Return an item processor that processes all of the pending items using an idle callback (if available) or based on\r\n * a timeout (when `requestIdenCallback` is not supported) using the optional timeout.\r\n * @param timeout - Optional timeout to wait before processing the items, defaults to zero.\r\n * @return An item processor\r\n */\r\nexport function idleItemProcessor(timeout?: number): (pending: PromisePendingFn[]) => void {\r\n let options: any;\r\n if (timeout >= 0) {\r\n options = {\r\n timeout: +timeout\r\n };\r\n }\r\n\r\n return (pending: PromisePendingFn[]) => {\r\n scheduleIdleCallback((deadline: IdleDeadline) => {\r\n syncItemProcessor(pending);\r\n }, options);\r\n };\r\n}","/*\r\n * @nevware21/ts-async\r\n * https://github.com/nevware21/ts-async\r\n *\r\n * Copyright (c) 2022 NevWare21 Solutions LLC\r\n * Licensed under the MIT license.\r\n */\r\n\r\nimport {\r\n _createAllPromise, _createAllSettledPromise, _createAnyPromise, _createPromise, _createRacePromise,\r\n _createRejectedPromise, _createResolvedPromise\r\n} from \"./base\";\r\nimport { IPromise } from \"../interfaces/IPromise\";\r\nimport { timeoutItemProcessor } from \"./itemProcessor\";\r\nimport { PromiseExecutor } from \"../interfaces/types\";\r\nimport { IPromiseResult } from \"../interfaces/IPromiseResult\";\r\nimport { ICachedValue } from \"@nevware21/ts-utils\";\r\n\r\nlet _allAsyncSettledCreator: ICachedValue<(input: T, timeout?: number) => IPromise<{ -readonly [P in keyof T]: IPromiseResult>; }>>;\r\nlet _raceAsyncCreator: ICachedValue<(values: T, timeout?: number) => IPromise>>;\r\nlet _anyAsyncCreator: ICachedValue<(values: T, timeout?: number) => IPromise>>;\r\n\r\n/**\r\n * Creates an asynchronous Promise instance that when resolved or rejected will execute it's pending chained operations\r\n * __asynchronously__ using the optional provided timeout value to schedule when the chained items will be ececuted.\r\n * @group Async\r\n * @group Promise\r\n * @param executor - The function to be executed during the creation of the promise. Any errors thrown in the executor will\r\n * cause the promise to be rejected. The return value of the executor is always ignored\r\n * @param timeout - Optional timeout to wait before processing the items, defaults to zero.\r\n */\r\nexport function createAsyncPromise(executor: PromiseExecutor, timeout?: number): IPromise {\r\n return _createPromise(createAsyncPromise, timeoutItemProcessor(timeout), executor, timeout);\r\n}\r\n\r\n/**\r\n * Returns a single asynchronous Promise instance that resolves to an array of the results from the input promises.\r\n * This returned promise will resolve and execute it's pending chained operations __asynchronously__ using the optional\r\n * provided timeout value to schedule when the chained items will be executed, or if the input contains no promises.\r\n * It rejects immediately upon any of the input promises rejected or non-promises throwing an error,\r\n * and will reject with this first rejection message / error.\r\n * When resolved or rejected any additional chained operations will execute __asynchronously__ using the optional\r\n * timeout value to schedul when the chained item will be executed (eg. `then()`; `catch()`; `finally()`).\r\n * @group Async\r\n * @group Promise\r\n * @group All\r\n * @param input - The array of promises to wait to be resolved / rejected before resolving or rejecting the new promise\r\n * @param timeout - Optional timeout to wait before processing the items, defaults to zero.\r\n * @returns\r\n *
    \r\n *
  • An already resolved `Promise`, if the input passed is empty.\r\n *
  • A pending `Promise` in all other cases. This returned promise is then resolved/rejected __synchronously__\r\n * (as soon as the pending items is empty) when all the promises in the given input have resolved, or if any of the\r\n * promises reject.\r\n *
\r\n */\r\nexport const createAsyncAllPromise: (input: Iterable>, timeout?: number) => IPromise = /*#__PURE__*/_createAllPromise(createAsyncPromise);\r\n\r\n/**\r\n * Returns a single asynchronous Promise instance that is already resolved with the given value. If the value passed is\r\n * a promise then that promise is returned instead of creating a new asynchronous promise instance.\r\n * If a new instance is returned then any chained operations will execute __asynchronously__ using the optional\r\n * timeout value to schedule when the chained items will be executed.(eg. `then()`; `finally()`).\r\n * @group Async\r\n * @group Promise\r\n * @group Resolved\r\n * @param value - The value to be used by this `Promise`. Can also be a `Promise` or a thenable to resolve.\r\n * @param timeout - Optional timeout to wait before processing the items, defaults to zero.\r\n */\r\nexport const createAsyncResolvedPromise: (value: T, timeout?: number) => IPromise = /*#__PURE__*/_createResolvedPromise(createAsyncPromise);\r\n\r\n/**\r\n * Returns a single asynchronous Promise instance that is already rejected with the given reason.\r\n * Any chained operations will execute __asynchronously__ using the optional timeout value to schedule\r\n * when then chained items will be executed. (eg. `catch()`; `finally()`).\r\n * @group Async\r\n * @group Promise\r\n * @group Rejected\r\n * @param reason - The rejection reason\r\n * @param timeout - Optional timeout to wait before processing the items, defaults to zero.\r\n */\r\nexport const createAsyncRejectedPromise: (reason: any, timeout?: number) => IPromise = /*#__PURE__*/_createRejectedPromise(createAsyncPromise);\r\n\r\n/**\r\n * Returns a single Promise instance that resolves to an array of the results from the input promises.\r\n * This returned promise will resolve and execute it's pending chained operations based on the\r\n * {@link createAsyncPromise | Asynchronous} promise implementation. Any chained operations will execute\r\n * __asynchronously__ when the final operation pending promises have resolved, or if the input contains\r\n * no promises. It will resolve only after all of the input promises have either resolved or rejected,\r\n * and will resolve with an array of {@link IPromiseResult } objects that each describe the outcome of\r\n * each promise.\r\n * @since 0.5.0\r\n * @group Async\r\n * @group Promise\r\n * @group AllSettled\r\n * @param values - The iterator of promises to wait to be resolved / rejected before resolving or rejecting the new promise\r\n * @param timeout - Optional timeout to wait before processing the items, defaults to zero, only used when Native promises are not available.\r\n * @returns A pending `Promise` that will resolve to an array of {@link IPromiseResult } objects that each describe the outcome of each promise.\r\n *\r\n * @example\r\n * ```ts\r\n * const promises = [\r\n * createResolvedPromise(1),\r\n * createResolvedPromise(2),\r\n * createResolvedPromise(3),\r\n * createRejectedPromise(\"error\"),\r\n * ];\r\n *\r\n * const results = await createAllSettledPromise(promises);\r\n *\r\n * // results is:\r\n * // [\r\n * // { status: \"fulfilled\", value: 1 },\r\n * // { status: \"fulfilled\", value: 2 },\r\n * // { status: \"fulfilled\", value: 3 },\r\n * // { status: \"rejected\", reason: \"error\" }\r\n * // ]\r\n * ```\r\n */\r\nexport function createAsyncAllSettledPromise(values: Iterable>, timeout?: number): IPromise>[]>;\r\n\r\n/**\r\n * Returns a single Promise instance that resolves to an array of the results from the input promises.\r\n * This returned promise will resolve and execute it's pending chained operations based on the\r\n * {@link createAsyncPromise | Asynchronous} promise implementation. Any chained operations will execute\r\n * __asynchronously__ when the final operation pending promises have resolved, or if the input contains\r\n * no promises. It will resolve only after all of the input promises have either resolved or rejected,\r\n * and will resolve with an array of {@link IPromiseResult } objects that each describe the outcome of\r\n * each promise.\r\n * @since 0.5.0\r\n * @group Async\r\n * @group Promise\r\n * @group AllSettled\r\n * @param input - An array of promises to wait to be resolved / rejected before resolving or rejecting the new promise\r\n * @param timeout - Optional timeout to wait before processing the items, defaults to zero, only used when Native promises are not available.\r\n * @returns A pending `Promise` that will resolve to an array of {@link IPromiseResult } objects that each describe the outcome of each promise.\r\n *\r\n * @example\r\n * ```ts\r\n * const promises = [\r\n * createResolvedPromise(1),\r\n * createResolvedPromise(2),\r\n * createResolvedPromise(3),\r\n * createRejectedPromise(\"error\"),\r\n * ];\r\n *\r\n * const results = await createAllSettledPromise(promises);\r\n *\r\n * // results is:\r\n * // [\r\n * // { status: \"fulfilled\", value: 1 },\r\n * // { status: \"fulfilled\", value: 2 },\r\n * // { status: \"fulfilled\", value: 3 },\r\n * // { status: \"rejected\", reason: \"error\" }\r\n * // ]\r\n * ```\r\n */\r\nexport function createAsyncAllSettledPromise(input: T, timeout?: number): IPromise<{ -readonly [P in keyof T]: IPromiseResult>; }> {\r\n !_allAsyncSettledCreator && (_allAsyncSettledCreator = _createAllSettledPromise(createAsyncPromise));\r\n return _allAsyncSettledCreator.v(input, timeout);\r\n}\r\n\r\n/**\r\n * The `createAsyncRacePromise` method takes an array of promises as input and returns a single Promise. This returned promise\r\n * settles with the eventual state of the first promise that settles.\r\n * @description The `createAsyncRacePromise` method is one of the promise concurrency methods. It's useful when you want the first\r\n * async task to complete, but do not care about its eventual state (i.e. it can either succeed or fail).\r\n * If the iterable contains one or more non-promise values and/or an already settled promise, then Promise.race() will settle to\r\n * the first of these values found in the iterable.\r\n * @since 0.5.0\r\n * @group Async\r\n * @group Promise\r\n * @group Race\r\n * @param values - An iterable object of promises.\r\n * @param timeout - Optional timeout to wait before processing the items, defaults to zero, only used when Native promises are not available.\r\n * @returns A Promise that settles with the eventual state of the first promise in the iterable to settle. In other words, it fulfills if the\r\n * first promise to settle is fulfilled, and rejects if the first promise to settle is rejected. The returned promise remains pending forever\r\n * if the iterable passed is empty. If the iterable passed is non-empty but contains no pending promises, the returned promise is still\r\n * asynchronously settled.\r\n */\r\nexport function createAsyncRacePromise(values: Iterable>, timeout?: number): IPromise>;\r\n\r\n/**\r\n * The `createAsyncRacePromise` method takes an array of promises as input and returns a single Promise. This returned promise\r\n * settles with the eventual state of the first promise that settles.\r\n * @description The `createAsyncRacePromise` method is one of the promise concurrency methods. It's useful when you want the first\r\n * async task to complete, but do not care about its eventual state (i.e. it can either succeed or fail).\r\n * If the iterable contains one or more non-promise values and/or an already settled promise, then Promise.race() will settle to\r\n * the first of these values found in the iterable.\r\n * @since 0.5.0\r\n * @group Async\r\n * @group Promise\r\n * @group Race\r\n * @param values - An the array of promises.\r\n * @param timeout - Optional timeout to wait before processing the items, defaults to zero, only used when Native promises are not available.\r\n * @returns A Promise that settles with the eventual state of the first promise in the iterable to settle. In other words, it fulfills if the\r\n * first promise to settle is fulfilled, and rejects if the first promise to settle is rejected. The returned promise remains pending forever\r\n * if the iterable passed is empty. If the iterable passed is non-empty but contains no pending promises, the returned promise is still\r\n * asynchronously settled.\r\n */\r\nexport function createAsyncRacePromise(values: T, timeout?: number): IPromise> {\r\n !_raceAsyncCreator && (_raceAsyncCreator = _createRacePromise(createAsyncPromise));\r\n return _raceAsyncCreator.v(values, timeout);\r\n}\r\n\r\n/**\r\n * The `createAsyncAnyPromise` method takes an iterable of promises as input and returns a single Promise.\r\n * This returned promise fulfills when any of the input's promises fulfills, with this first fulfillment value.\r\n * It rejects when all of the input's promises reject (including when an empty iterable is passed), with an\r\n * AggregateError containing an array of rejection reasons.\r\n * @since 0.5.0\r\n * @group Async\r\n * @group Promise\r\n * @group Any\r\n * @param values - An iterable object of promises.\r\n * @param timeout - Optional timeout to wait before processing the items, defaults to zero, only used when Native promises are not available.\r\n * @returns A new Promise that is:\r\n * - Already rejected, if the iterable passed is empty.\r\n * - Asynchronously fulfilled, when any of the promises in the given iterable fulfills. The fulfillment value\r\n * is the fulfillment value of the first promise that was fulfilled.\r\n * - Asynchronously rejected, when all of the promises in the given iterable reject. The rejection reason is\r\n * an AggregateError containing an array of rejection reasons in its errors property. The errors are in the\r\n * order of the promises passed, regardless of completion order. If the iterable passed is non-empty but\r\n * contains no pending promises, the returned promise is still asynchronously (instead of synchronously)\r\n * rejected.\r\n */\r\nexport function createAsyncAnyPromise(values: Iterable>, timeout?: number): IPromise>;\r\n \r\n/**\r\n * The `createAsyncAnyPromise` method takes an array of promises as input and returns a single Promise.\r\n * This returned promise fulfills when any of the input's promises fulfills, with this first fulfillment value.\r\n * It rejects when all of the input's promises reject (including when an empty iterable is passed), with an\r\n * AggregateError containing an array of rejection reasons.\r\n * @since 0.5.0\r\n * @group Async\r\n * @group Promise\r\n * @group Any\r\n * @param values - An Array promises.\r\n * @param timeout - Optional timeout to wait before processing the items, defaults to zero, only used when Native promises are not available.\r\n * @returns A new Promise that is:\r\n * - Already rejected, if the iterable passed is empty.\r\n * - Asynchronously fulfilled, when any of the promises in the given iterable fulfills. The fulfillment value\r\n * is the fulfillment value of the first promise that was fulfilled.\r\n * - Asynchronously rejected, when all of the promises in the given iterable reject. The rejection reason is\r\n * an AggregateError containing an array of rejection reasons in its errors property. The errors are in the\r\n * order of the promises passed, regardless of completion order. If the iterable passed is non-empty but\r\n * contains no pending promises, the returned promise is still asynchronously (instead of synchronously)\r\n * rejected.\r\n */\r\nexport function createAsyncAnyPromise(values: T, timeout?: number): IPromise> {\r\n !_anyAsyncCreator && (_anyAsyncCreator = _createAnyPromise(createAsyncPromise));\r\n return _anyAsyncCreator.v(values, timeout);\r\n}","/*\r\n * @nevware21/ts-async\r\n * https://github.com/nevware21/ts-async\r\n *\r\n * Copyright (c) 2022 NevWare21 Solutions LLC\r\n * Licensed under the MIT license.\r\n */\r\n\r\nimport { createAsyncPromise } from \"./asyncPromise\";\r\nimport { _createAllPromise, _createAllSettledPromise, _createAnyPromise, _createRacePromise, _createRejectedPromise, _createResolvedPromise } from \"./base\";\r\nimport { IPromise } from \"../interfaces/IPromise\";\r\nimport { ePromiseState, STRING_STATES } from \"../internal/state\";\r\nimport { PromiseExecutor } from \"../interfaces/types\";\r\nimport { dumpObj, isFunction, objDefineProp, throwTypeError, getInst, ICachedValue, createCachedValue, safe } from \"@nevware21/ts-utils\";\r\nimport { STR_PROMISE } from \"../internal/constants\";\r\nimport { IPromiseResult } from \"../interfaces/IPromiseResult\";\r\n\r\n/**\r\n * @internal\r\n * @ignore\r\n * Flag to determine if the native Promise class should be used if available, used for testing purposes.\r\n */\r\nlet _useNative: boolean = true;\r\n\r\n/**\r\n * @internal\r\n * @ignore\r\n * Cached value for the native Promise class\r\n */\r\nlet _promiseCls: ICachedValue;\r\n\r\n/**\r\n * @internal\r\n * @ignore\r\n * Cached value for the `Promise.all` method\r\n */\r\nlet _allCreator: ICachedValue<(input: Iterable>, ...additionalArgs: any) => IPromise[]>>;\r\n\r\n/**\r\n * @internal\r\n * @ignore\r\n * Cached value for the `Promise.allSettled` method\r\n */\r\nlet _allNativeSettledCreator: ICachedValue<(input: T, timeout?: number) => IPromise<{ -readonly [P in keyof T]: IPromiseResult>; }>>;\r\n\r\n/**\r\n * @internal\r\n * @ignore\r\n * Cached value for the `Promise.race` method\r\n */\r\nlet _raceNativeCreator: ICachedValue<(values: T, timeout?: number) => IPromise>>;\r\n\r\n/**\r\n * @internal\r\n * @ignore\r\n * Cached value for the `Promise.any` method\r\n */\r\nlet _anyNativeCreator: ICachedValue<(values: T, timeout?: number) => IPromise>>;\r\n\r\n/**\r\n * @internal\r\n * @ignore\r\n * Test Hook function to clear the cached values and set whether to use the native Promise class\r\n * @param useNative - Flag to determine if the native Promise class should be used if available\r\n */\r\nexport function _clearPromiseCache(useNative: boolean) {\r\n//#ifdef _DEBUG\r\n//#:(!_DEBUG) _useNative = !!useNative;\r\n//#:(!_DEBUG) _promiseCls = null as any;\r\n//#:(!_DEBUG) _allCreator = null as any;\r\n//#:(!_DEBUG) _allNativeSettledCreator = null as any;\r\n//#:(!_DEBUG) _raceNativeCreator = null as any;\r\n//#:(!_DEBUG) _anyNativeCreator = null as any;\r\n//#endif\r\n}\r\n\r\n/*#__NO_SIDE_EFFECTS__*/\r\nexport function _createNativePromiseHelper(name: string, func: () => ICachedValue): ICachedValue {\r\n !_promiseCls && (_promiseCls = createCachedValue((_useNative && safe(getInst, [STR_PROMISE]).v) || null as any));\r\n if (_promiseCls.v && _promiseCls.v[name]) {\r\n return createCachedValue(function(input: T, timeout?: number) {\r\n return createNativePromise((resolve, reject) => {\r\n _promiseCls.v[name](input).then(resolve, reject);\r\n });\r\n } as F);\r\n }\r\n \r\n return func();\r\n}\r\n\r\n/**\r\n * Creates a Promise instance that when resolved or rejected will execute it's pending chained operations using the\r\n * available native Promise implementation.\r\n * If runtime does not support native `Promise` class (or no polyfill is available) this function will fallback to using\r\n * `createAsyncPromise` which will resolve them __asynchronously__ using the optional provided timeout value to\r\n * schedule when the chained items will be executed.\r\n * @group Alias\r\n * @group Promise\r\n * @group Native\r\n * @param executor - The function to be executed during the creation of the promise. Any errors thrown in the executor will\r\n * cause the promise to be rejected. The return value of the executor is always ignored\r\n * @param timeout - Optional timeout to wait before processing the items, defaults to zero.\r\n */\r\nexport function createNativePromise(executor: PromiseExecutor, timeout?: number): IPromise {\r\n !_promiseCls && (_promiseCls = createCachedValue((_useNative && safe(getInst, [STR_PROMISE]).v) || null as any));\r\n const PrmCls = _promiseCls.v;\r\n if (!PrmCls) {\r\n return createAsyncPromise(executor);\r\n }\r\n\r\n if (!isFunction(executor)) {\r\n throwTypeError(STR_PROMISE + \": executor is not a function - \" + dumpObj(executor));\r\n }\r\n\r\n let _state = ePromiseState.Pending;\r\n\r\n function _strState() {\r\n return STRING_STATES[_state];\r\n }\r\n\r\n let thePromise = new PrmCls((resolve, reject) => {\r\n function _resolve(value: T) {\r\n _state = ePromiseState.Resolved;\r\n resolve(value);\r\n }\r\n\r\n function _reject(reason: any) {\r\n _state = ePromiseState.Rejected;\r\n reject(reason);\r\n }\r\n\r\n executor(_resolve, _reject);\r\n\r\n }) as IPromise;\r\n\r\n objDefineProp(thePromise, \"state\", {\r\n get: _strState\r\n });\r\n\r\n return thePromise;\r\n}\r\n\r\n/**\r\n * Returns a single asynchronous Promise instance that resolves to an array of the results from the input promises.\r\n * This returned promise will resolve and execute it's pending chained operations __asynchronously__ using the optional\r\n * provided timeout value to schedule when the chained items will be executed, or if the input contains no promises.\r\n * It rejects immediately upon any of the input promises rejected or non-promises throwing an error,\r\n * and will reject with this first rejection message / error.\r\n * If the runtime doesn't support the Promise.all it will fallback back to an asynchronous Promise implementation.\r\n * @group Alias\r\n * @group Promise\r\n * @group All\r\n * @group Native\r\n * @param input - The array of promises to wait to be resolved / rejected before resolving or rejecting the new promise\r\n * @param timeout - Optional timeout to wait before processing the items, defaults to zero.\r\n * @returns\r\n *
    \r\n *
  • An already resolved `Promise`, if the input passed is empty.\r\n *
  • A pending `Promise` in all other cases. This returned promise is then resolved/rejected __synchronously__\r\n * (as soon as the pending items is empty) when all the promises in the given input have resolved, or if any of the\r\n * promises reject.\r\n *
\r\n */\r\nexport function createNativeAllPromise(input: Iterable>, timeout?: number): IPromise {\r\n !_allCreator && (_allCreator = _createNativePromiseHelper(\"all\", () => createCachedValue(_createAllPromise(createNativePromise))));\r\n return _allCreator.v(input, timeout);\r\n}\r\n\r\n/**\r\n * Returns a single asynchronous Promise instance that is already resolved with the given value. If the value passed is\r\n * a promise then that promise is returned instead of creating a new asynchronous promise instance.\r\n * If a new instance is returned then any chained operations will execute __asynchronously__ using the optional\r\n * timeout value to schedule when the chained items will be executed.(eg. `then()`; `finally()`).\r\n * @group Alias\r\n * @group Promise\r\n * @group Resolved\r\n * @group Native\r\n * @param value - The value to be used by this `Promise`. Can also be a `Promise` or a thenable to resolve.\r\n * @param timeout - Optional timeout to wait before processing the items, defaults to zero.\r\n */\r\nexport const createNativeResolvedPromise: (value: T, timeout?: number) => Promise = /*#__PURE__*/_createResolvedPromise(createNativePromise);\r\n\r\n/**\r\n * Returns a single asynchronous Promise instance that is already rejected with the given reason.\r\n * Any chained operations will execute __asynchronously__ using the optional timeout value to schedule\r\n * when then chained items will be executed. (eg. `catch()`; `finally()`).\r\n * @group Alias\r\n * @group Promise\r\n * @group Rejected\r\n * @group Native\r\n * @param reason - The rejection reason\r\n * @param timeout - Optional timeout to wait before processing the items, defaults to zero.\r\n */\r\nexport const createNativeRejectedPromise: (reason: any, timeout?: number) => Promise = /*#__PURE__*/_createRejectedPromise(createNativePromise);\r\n\r\n/**\r\n * Returns a single asynchronous Promise instance that resolves to an array of the results from the input promises.\r\n * This returned promise will resolve and execute it's pending chained operations using {@link createNativePromise | native}\r\n * environment promise implementation, if the runtime does not provide any native then the optional provided\r\n * timeout value will be used to schedule when the chained items will be executed or if the input contains no promises.\r\n * It will resolve only after all of the input promises have either resolved or rejected, and will resolve with an array\r\n * of {@link IPromiseResult } objects that each describe the outcome of each promise.\r\n * @since 0.5.0\r\n * @group Alias\r\n * @group Promise\r\n * @group AllSettled\r\n * @group Native\r\n * @param values - The iterator of promises to wait to be resolved / rejected before resolving or rejecting the new promise\r\n * @param timeout - Optional timeout to wait before processing the items, defaults to zero, only used when Native promises are not available.\r\n * @returns A pending `Promise` that will resolve to an array of {@link IPromiseResult } objects that each describe the outcome of each promise.\r\n *\r\n * @example\r\n * ```ts\r\n * const promises = [\r\n * createNativeResolvedPromise(1),\r\n * createNativeResolvedPromise(2),\r\n * createNativeResolvedPromise(3),\r\n * createNativeRejectedPromise(\"error\"),\r\n * ];\r\n *\r\n * const results = await createNativeAllSettledPromise(promises);\r\n *\r\n * // results is:\r\n * // [\r\n * // { status: \"fulfilled\", value: 1 },\r\n * // { status: \"fulfilled\", value: 2 },\r\n * // { status: \"fulfilled\", value: 3 },\r\n * // { status: \"rejected\", reason: \"error\" }\r\n * // ]\r\n * ```\r\n */\r\nexport function createNativeAllSettledPromise(values: Iterable>, timeout?: number): IPromise>[]>;\r\n\r\n/**\r\n * Returns a single asynchronous Promise instance that resolves to an array of the results from the input promises.\r\n * This returned promise will resolve and execute it's pending chained operations using {@link createNativePromise | native}\r\n * environment promise implementation, if the runtime does not provide any native then the optional provided\r\n * timeout value will be used to schedule when the chained items will be executed or if the input contains no promises.\r\n * It will resolve only after all of the input promises have either resolved or rejected, and will resolve with an array\r\n * of {@link IPromiseResult } objects that each describe the outcome of each promise.\r\n * @since 0.5.0\r\n * @group Alias\r\n * @group Promise\r\n * @group AllSettled\r\n * @group Native\r\n * @param input - An array of promises to wait to be resolved / rejected before resolving or rejecting the new promise\r\n * @param timeout - Optional timeout to wait before processing the items, defaults to zero, only used when Native promises are not available.\r\n * @returns A pending `Promise` that will resolve to an array of {@link IPromiseResult } objects that each describe the outcome of each promise.\r\n *\r\n * @example\r\n * ```ts\r\n * const promises = [\r\n * createNativeResolvedPromise(1),\r\n * createNativeResolvedPromise(2),\r\n * createNativeResolvedPromise(3),\r\n * createNativeRejectedPromise(\"error\"),\r\n * ];\r\n *\r\n * const results = await createNativeAllSettledPromise(promises);\r\n *\r\n * // results is:\r\n * // [\r\n * // { status: \"fulfilled\", value: 1 },\r\n * // { status: \"fulfilled\", value: 2 },\r\n * // { status: \"fulfilled\", value: 3 },\r\n * // { status: \"rejected\", reason: \"error\" }\r\n * // ]\r\n * ```\r\n */\r\nexport function createNativeAllSettledPromise(input: T, timeout?: number): IPromise<{ -readonly [P in keyof T]: IPromiseResult>; }> {\r\n !_allNativeSettledCreator && (_allNativeSettledCreator = _createNativePromiseHelper(\"allSettled\", () => _createAllSettledPromise(createNativePromise)));\r\n return _allNativeSettledCreator.v(input, timeout);\r\n}\r\n\r\n/**\r\n * The `createNativeRacePromise` method takes an array of promises as input and returns a single Promise. This returned promise\r\n * settles with the eventual state of the first promise that settles.\r\n * @description The `createNativeRacePromise` method is one of the promise concurrency methods. It's useful when you want the first\r\n * async task to complete, but do not care about its eventual state (i.e. it can either succeed or fail).\r\n * If the iterable contains one or more non-promise values and/or an already settled promise, then Promise.race() will settle to\r\n * the first of these values found in the iterable.\r\n * @since 0.5.0\r\n * @group Alias\r\n * @group Promise\r\n * @group Race\r\n * @group Native\r\n * @param values - An iterable object of promises.\r\n * @param timeout - Optional timeout to wait before processing the items, defaults to zero, only used when Native promises are not available.\r\n * @returns A Promise that settles with the eventual state of the first promise in the iterable to settle. In other words, it fulfills if the\r\n * first promise to settle is fulfilled, and rejects if the first promise to settle is rejected. The returned promise remains pending forever\r\n * if the iterable passed is empty. If the iterable passed is non-empty but contains no pending promises, the returned promise will settle\r\n * asynchronously.\r\n */\r\nexport function createNativeRacePromise(values: Iterable>, timeout?: number): IPromise>;\r\n\r\n/**\r\n * The `createNativeRacePromise` method takes an array of promises as input and returns a single Promise. This returned promise\r\n * settles with the eventual state of the first promise that settles.\r\n * @description The `createNativeRacePromise` method is one of the promise concurrency methods. It's useful when you want the first\r\n * async task to complete, but do not care about its eventual state (i.e. it can either succeed or fail).\r\n * If the iterable contains one or more non-promise values and/or an already settled promise, then Promise.race() will settle to\r\n * the first of these values found in the iterable.\r\n * @since 0.5.0\r\n * @group Alias\r\n * @group Promise\r\n * @group Race\r\n * @group Native\r\n * @param values - An the array of promises.\r\n * @param timeout - Optional timeout to wait before processing the items, defaults to zero, only used when Native promises are not available.\r\n * @returns A Promise that settles with the eventual state of the first promise in the iterable to settle. In other words, it fulfills if the\r\n * first promise to settle is fulfilled, and rejects if the first promise to settle is rejected. The returned promise remains pending forever\r\n * if the iterable passed is empty. If the iterable passed is non-empty but contains no pending promises, the returned promise will settle\r\n * asynchronously.\r\n */\r\nexport function createNativeRacePromise(values: T, timeout?: number): IPromise> {\r\n !_raceNativeCreator && (_raceNativeCreator = _createNativePromiseHelper(\"race\", () => _createRacePromise(createNativePromise)));\r\n return _raceNativeCreator.v(values, timeout);\r\n}\r\n\r\n/**\r\n * The `createNativeAnyPromise` method takes an iterable of promises as input and returns a single Promise.\r\n * This returned promise fulfills when any of the input's promises fulfills, with this first fulfillment value.\r\n * It rejects when all of the input's promises reject (including when an empty iterable is passed), with an\r\n * AggregateError containing an array of rejection reasons.\r\n * @since 0.5.0\r\n * @group Alias\r\n * @group Promise\r\n * @group Any\r\n * @group Native\r\n * @param values - An iterable object of promises.\r\n * @param timeout - Optional timeout to wait before processing the items, defaults to zero, only used when Native promises are not available.\r\n * @returns A new Promise that is:\r\n * - Already rejected, if the iterable passed is empty.\r\n * - Asynchronously fulfilled, when any of the promises in the given iterable fulfills. The fulfillment value\r\n * is the fulfillment value of the first promise that was fulfilled.\r\n * - Asynchronously rejected, when all of the promises in the given iterable reject. The rejection reason is\r\n * an AggregateError containing an array of rejection reasons in its errors property. The errors are in the\r\n * order of the promises passed, regardless of completion order. If the iterable passed is non-empty but\r\n * contains no pending promises, the returned promise is still asynchronously (instead of synchronously)\r\n * rejected.\r\n */\r\nexport function createNativeAnyPromise(values: Iterable>, timeout?: number): IPromise>;\r\n \r\n/**\r\n * The `createNativeAnyPromise` method takes an array of promises as input and returns a single Promise.\r\n * This returned promise fulfills when any of the input's promises fulfills, with this first fulfillment value.\r\n * It rejects when all of the input's promises reject (including when an empty iterable is passed), with an\r\n * AggregateError containing an array of rejection reasons.\r\n * @since 0.5.0\r\n * @group Alias\r\n * @group Promise\r\n * @group Any\r\n * @group Native\r\n * @param values - An Array promises.\r\n * @param timeout - Optional timeout to wait before processing the items, defaults to zero, only used when Native promises are not available.\r\n * @returns A new Promise that is:\r\n * - Already rejected, if the iterable passed is empty.\r\n * - Asynchronously fulfilled, when any of the promises in the given iterable fulfills. The fulfillment value\r\n * is the fulfillment value of the first promise that was fulfilled.\r\n * - Asynchronously rejected, when all of the promises in the given iterable reject. The rejection reason is\r\n * an AggregateError containing an array of rejection reasons in its errors property. The errors are in the\r\n * order of the promises passed, regardless of completion order. If the iterable passed is non-empty but\r\n * contains no pending promises, the returned promise is still asynchronously (instead of synchronously)\r\n * rejected.\r\n */\r\nexport function createNativeAnyPromise(values: T, timeout?: number): IPromise> {\r\n !_anyNativeCreator && (_anyNativeCreator = _createNativePromiseHelper(\"any\", () => _createAnyPromise(createNativePromise)));\r\n return _anyNativeCreator.v(values, timeout);\r\n}\r\n","/*\r\n * @nevware21/ts-async\r\n * https://github.com/nevware21/ts-async\r\n *\r\n * Copyright (c) 2022 NevWare21 Solutions LLC\r\n * Licensed under the MIT license.\r\n */\r\n\r\nimport {\r\n _createAllPromise, _createAllSettledPromise, _createAnyPromise, _createPromise, _createRacePromise,\r\n _createRejectedPromise, _createResolvedPromise\r\n} from \"./base\";\r\nimport { IPromise } from \"../interfaces/IPromise\";\r\nimport { syncItemProcessor } from \"./itemProcessor\";\r\nimport { PromiseExecutor } from \"../interfaces/types\";\r\nimport { IPromiseResult } from \"../interfaces/IPromiseResult\";\r\nimport { ICachedValue } from \"@nevware21/ts-utils\";\r\n\r\nlet _allSyncSettledCreator: ICachedValue<(input: T, timeout?: number) => IPromise<{ -readonly [P in keyof T]: IPromiseResult>; }>>;\r\nlet _raceSyncCreator: ICachedValue<(values: T, timeout?: number) => IPromise>>;\r\nlet _anySyncCreator: ICachedValue<(values: T, timeout?: number) => IPromise>>;\r\n\r\n/**\r\n * Creates a synchronous Promise instance that when resolved or rejected will execute it's pending chained operations\r\n * __synchronously__ in the same execution cycle as the operation that calls the `executors`, `resolve` or `reject` functions.\r\n *\r\n * @group Synchronous\r\n * @group Promise\r\n * @param executor - The function to be executed during the creation of the promise. Any errors thrown in the executor will\r\n * cause the promise to be rejected. The return value of the executor is always ignored\r\n */\r\nexport function createSyncPromise(executor: PromiseExecutor): IPromise {\r\n return _createPromise(createSyncPromise, syncItemProcessor, executor);\r\n}\r\n\r\n/**\r\n * Returns a single synchronous Promise instance that resolves to an array of the results from the input promises.\r\n * This returned promise will resolve and execute it's pending chained operations __synchronously__ in the same\r\n * execution cycle as the final operation pending promises have resolved, or if the input contains no promises.\r\n * It rejects immediately upon any of the input promises rejected or non-promises throwing an error,\r\n * and will reject with this first rejection message / error.\r\n * When resolved or rejected any additional chained operations will execute __synchronously__ at the point of\r\n * being added (eg. `then()`; `catch()`; `finally()`).\r\n * @group Synchronous\r\n * @group Promise\r\n * @group All\r\n * @param input - The array of promises to wait to be resolved / rejected before resolving or rejecting the new promise\r\n * @returns\r\n *
    \r\n *
  • An already resolved `Promise`, if the input passed is empty.\r\n *
  • A pending `Promise` in all other cases. This returned promise is then resolved/rejected __synchronously__\r\n * (as soon as the pending items is empty) when all the promises in the given input have resolved, or if any of the\r\n * promises reject.\r\n *
\r\n */\r\nexport const createSyncAllPromise: (input: Iterable>) => IPromise = /*#__PURE__*/_createAllPromise(createSyncPromise);\r\n\r\n/**\r\n * Returns a single synchronous Promise instance that is already resolved with the given value. If the value passed is\r\n * a promise then that promise is returned instead of creating a new synchronous promise instance.\r\n * If a new instance is returned then any chained operations will execute __synchronously__ at the point of being\r\n * added (calling `then()`).\r\n * @group Synchronous\r\n * @group Promise\r\n * @group Resolved\r\n * @param value - The value to be used by this `Promise`. Can also be a `Promise` or a thenable to resolve.\r\n */\r\nexport const createSyncResolvedPromise: (value: T) => IPromise = /*#__PURE__*/_createResolvedPromise(createSyncPromise);\r\n\r\n/**\r\n * Returns a single synchronous Promise instance that is already rejected with the given reason.\r\n * Any chained operations will execute __synchronously__ at the point of being added (eg. `catch()`; `finally()`).\r\n * @group Synchronous\r\n * @group Promise\r\n * @group Rejected\r\n * @param reason - The rejection reason\r\n */\r\nexport const createSyncRejectedPromise: (reason: any) => IPromise = /*#__PURE__*/_createRejectedPromise(createSyncPromise);\r\n\r\n/**\r\n * Returns a single Promise instance that resolves to an array of the results from the input promises.\r\n * This returned promise will resolve and execute it's pending chained operations based on the\r\n * {@link createSyncPromise | synchronous} promise implementation. Any chained operations will execute\r\n * __synchronously__ in the same execution cycle as the final operation pending promises have resolved,\r\n * or if the input contains no promises. It will resolve only after all of the input promises have either\r\n * resolved or rejected, and will resolve with an array of {@link IPromiseResult } objects that each describe\r\n * the outcome of each promise.\r\n * @since 0.5.0\r\n * @group Synchronous\r\n * @group Promise\r\n * @group AllSettled\r\n * @param values - The iterator of promises to wait to be resolved / rejected before resolving or rejecting the new promise\r\n * @param timeout - Optional timeout to wait before processing the items, defaults to zero, only used when Native promises are not available.\r\n * @returns A pending `Promise` that will resolve to an array of {@link IPromiseResult } objects that each describe the outcome of each promise.\r\n *\r\n * @example\r\n * ```ts\r\n * const promises = [\r\n * createResolvedPromise(1),\r\n * createResolvedPromise(2),\r\n * createResolvedPromise(3),\r\n * createRejectedPromise(\"error\"),\r\n * ];\r\n *\r\n * const results = await createAllSettledPromise(promises);\r\n *\r\n * // results is:\r\n * // [\r\n * // { status: \"fulfilled\", value: 1 },\r\n * // { status: \"fulfilled\", value: 2 },\r\n * // { status: \"fulfilled\", value: 3 },\r\n * // { status: \"rejected\", reason: \"error\" }\r\n * // ]\r\n * ```\r\n */\r\nexport function createSyncAllSettledPromise(values: Iterable>, timeout?: number): IPromise>[]>;\r\n\r\n/**\r\n * Returns a single Promise instance that resolves to an array of the results from the input promises.\r\n * This returned promise will resolve and execute it's pending chained operations based on the\r\n * {@link createSyncPromise | synchronous} promise implementation. Any chained operations will execute\r\n * __synchronously__ in the same execution cycle as the final operation pending promises have resolved,\r\n * or if the input contains no promises. It will resolve only after all of the input promises have either\r\n * resolved or rejected, and will resolve with an array of {@link IPromiseResult } objects that each describe\r\n * the outcome of each promise.\r\n * @since 0.5.0\r\n * @group Synchronous\r\n * @group Promise\r\n * @group AllSettled\r\n * @param input - An array of promises to wait to be resolved / rejected before resolving or rejecting the new promise\r\n * @param timeout - Optional timeout to wait before processing the items, defaults to zero, only used when Native promises are not available.\r\n * @returns A pending `Promise` that will resolve to an array of {@link IPromiseResult } objects that each describe the outcome of each promise.\r\n *\r\n * @example\r\n * ```ts\r\n * const promises = [\r\n * createResolvedPromise(1),\r\n * createResolvedPromise(2),\r\n * createResolvedPromise(3),\r\n * createRejectedPromise(\"error\"),\r\n * ];\r\n *\r\n * const results = await createAllSettledPromise(promises);\r\n *\r\n * // results is:\r\n * // [\r\n * // { status: \"fulfilled\", value: 1 },\r\n * // { status: \"fulfilled\", value: 2 },\r\n * // { status: \"fulfilled\", value: 3 },\r\n * // { status: \"rejected\", reason: \"error\" }\r\n * // ]\r\n * ```\r\n */\r\nexport function createSyncAllSettledPromise(input: T, timeout?: number): IPromise<{ -readonly [P in keyof T]: IPromiseResult>; }> {\r\n !_allSyncSettledCreator && (_allSyncSettledCreator = _createAllSettledPromise(createSyncPromise));\r\n return _allSyncSettledCreator.v(input, timeout);\r\n}\r\n\r\n/**\r\n * The `createSyncRacePromise` method takes an array of promises as input and returns a single Promise. This returned promise\r\n * settles with the eventual state of the first promise that settles.\r\n * @description The `createSyncRacePromise` method is one of the promise concurrency methods. It's useful when you want the first\r\n * async task to complete, but do not care about its eventual state (i.e. it can either succeed or fail).\r\n * If the iterable contains one or more non-promise values and/or an already settled promise, then Promise.race() will settle to\r\n * the first of these values found in the iterable.\r\n * @since 0.5.0\r\n * @group Synchronous\r\n * @group Promise\r\n * @group Race\r\n * @param values - An iterable object of promises.\r\n * @param timeout - Optional timeout to wait before processing the items, defaults to zero, only used when Native promises are not available.\r\n * @returns A Promise that settles with the eventual state of the first promise in the iterable to settle. In other words, it fulfills if the\r\n * first promise to settle is fulfilled, and rejects if the first promise to settle is rejected. The returned promise remains pending forever\r\n * if the iterable passed is empty. If the iterable passed is non-empty but contains no pending promises, the returned promise will settle\r\n * synchronously.\r\n */\r\nexport function createSyncRacePromise(values: Iterable>, timeout?: number): IPromise>;\r\n\r\n/**\r\n * The `createSyncRacePromise` method takes an array of promises as input and returns a single Promise. This returned promise\r\n * settles with the eventual state of the first promise that settles.\r\n * @description The `createSyncRacePromise` method is one of the promise concurrency methods. It's useful when you want the first\r\n * async task to complete, but do not care about its eventual state (i.e. it can either succeed or fail).\r\n * If the iterable contains one or more non-promise values and/or an already settled promise, then Promise.race() will settle to\r\n * the first of these values found in the iterable.\r\n * @since 0.5.0\r\n * @group Synchronous\r\n * @group Promise\r\n * @group Race\r\n * @param values - An the array of promises.\r\n * @param timeout - Optional timeout to wait before processing the items, defaults to zero, only used when Native promises are not available.\r\n * @returns A Promise that settles with the eventual state of the first promise in the iterable to settle. In other words, it fulfills if the\r\n * first promise to settle is fulfilled, and rejects if the first promise to settle is rejected. The returned promise remains pending forever\r\n * if the iterable passed is empty. If the iterable passed is non-empty but contains no pending promises, the returned promise will settle\r\n * synchronously.\r\n */\r\nexport function createSyncRacePromise(values: T, timeout?: number): IPromise> {\r\n !_raceSyncCreator && (_raceSyncCreator = _createRacePromise(createSyncPromise));\r\n return _raceSyncCreator.v(values, timeout);\r\n}\r\n\r\n/**\r\n * The `createSyncAnyPromise` method takes an iterable of promises as input and returns a single Promise.\r\n * This returned promise fulfills when any of the input's promises fulfills, with this first fulfillment value.\r\n * It rejects when all of the input's promises reject (including when an empty iterable is passed), with an\r\n * AggregateError containing an array of rejection reasons.\r\n * @since 0.5.0\r\n * @group Synchronous\r\n * @group Promise\r\n * @group Any\r\n * @param values - An iterable object of promises.\r\n * @param timeout - Optional timeout to wait before processing the items, defaults to zero, only used when Native promises are not available.\r\n * @returns A new Promise that is:\r\n * - Already rejected, if the iterable passed is empty.\r\n * - Asynchronously fulfilled, when any of the promises in the given iterable fulfills. The fulfillment value\r\n * is the fulfillment value of the first promise that was fulfilled.\r\n * - Asynchronously rejected, when all of the promises in the given iterable reject. The rejection reason is\r\n * an AggregateError containing an array of rejection reasons in its errors property. The errors are in the\r\n * order of the promises passed, regardless of completion order. If the iterable passed is non-empty but\r\n * contains no pending promises, the returned promise is still asynchronously (instead of synchronously)\r\n * rejected.\r\n */\r\nexport function createSyncAnyPromise(values: Iterable>, timeout?: number): IPromise>;\r\n \r\n/**\r\n * The `createSyncAnyPromise` method takes an array of promises as input and returns a single Promise.\r\n * This returned promise fulfills when any of the input's promises fulfills, with this first fulfillment value.\r\n * It rejects when all of the input's promises reject (including when an empty iterable is passed), with an\r\n * AggregateError containing an array of rejection reasons.\r\n * @since 0.5.0\r\n * @group Synchronous\r\n * @group Promise\r\n * @group Any\r\n * @param values - An Array promises.\r\n * @param timeout - Optional timeout to wait before processing the items, defaults to zero, only used when Native promises are not available.\r\n * @returns A new Promise that is:\r\n * - Already rejected, if the iterable passed is empty.\r\n * - Asynchronously fulfilled, when any of the promises in the given iterable fulfills. The fulfillment value\r\n * is the fulfillment value of the first promise that was fulfilled.\r\n * - Asynchronously rejected, when all of the promises in the given iterable reject. The rejection reason is\r\n * an AggregateError containing an array of rejection reasons in its errors property. The errors are in the\r\n * order of the promises passed, regardless of completion order. If the iterable passed is non-empty but\r\n * contains no pending promises, the returned promise is still asynchronously (instead of synchronously)\r\n * rejected.\r\n */\r\nexport function createSyncAnyPromise(values: T, timeout?: number): IPromise> {\r\n !_anySyncCreator && (_anySyncCreator = _createAnyPromise(createSyncPromise));\r\n return _anySyncCreator.v(values, timeout);\r\n}","/*\r\n * @nevware21/ts-async\r\n * https://github.com/nevware21/ts-async\r\n *\r\n * Copyright (c) 2022 NevWare21 Solutions LLC\r\n * Licensed under the MIT license.\r\n */\r\n\r\nimport { ICachedValue, isUndefined } from \"@nevware21/ts-utils\";\r\nimport { _createAllPromise, _createAllSettledPromise, _createAnyPromise, _createPromise, _createRacePromise, _createRejectedPromise, _createResolvedPromise } from \"./base\";\r\nimport { IPromise } from \"../interfaces/IPromise\";\r\nimport { idleItemProcessor } from \"./itemProcessor\";\r\nimport { PromiseExecutor } from \"../interfaces/types\";\r\nimport { IPromiseResult } from \"../interfaces/IPromiseResult\";\r\nimport { _pureAssign } from \"../internal/treeshake_helpers\";\r\n\r\nlet _defaultIdleTimeout: number | undefined;\r\n\r\nlet _allIdleSettledCreator: ICachedValue<(input: T, timeout?: number) => IPromise<{ -readonly [P in keyof T]: IPromiseResult>; }>>;\r\nlet _raceIdleCreator: ICachedValue<(values: T, timeout?: number) => IPromise>>;\r\nlet _anyIdleCreator: ICachedValue<(values: T, timeout?: number) => IPromise>>;\r\n\r\n/**\r\n * Sets the global default idle timeout / deadline to use when no timeout is passed during promise creation.\r\n * @param idleDeadline - Specifies the time in milliseconds to use as the idle timeout / deadline by when any\r\n * outstanding chained items should be executed.\r\n * @group Idle\r\n */\r\nexport function setDefaultIdlePromiseTimeout(idleDeadline?: number | undefined) {\r\n _defaultIdleTimeout = idleDeadline;\r\n}\r\n\r\n/**\r\n * @deprecated Use `setDefaultIdlePromiseTimeout` instead\r\n * Sets the global default idle timeout / deadline to use when no timeout is passed during promise creation.\r\n * @param idleDeadline - Specifies the time in milliseconds to use as the idle timeout / deadline by when any\r\n * outstanding chained items should be executed.\r\n * @group Idle\r\n */\r\nexport const setDefaultIdleTimeout = (/*#__PURE__*/_pureAssign(setDefaultIdlePromiseTimeout));\r\n\r\n/**\r\n * Creates an idle Promise instance that when resolved or rejected will execute it's pending chained operations\r\n * __asynchronously__ using the `requestIdleCallback` API (if available) with the optional provided timeout value to\r\n * schedule when the chained items will be executed. When `requestIdleCallback` is not available this becomes the same as\r\n * `createAsyncPromise` which uses `setTimeout` to schedule executions.\r\n * @group Idle\r\n * @group Promise\r\n * @param executor - The function to be executed during the creation of the promise. Any errors thrown in the executor will\r\n * cause the promise to be rejected. The return value of the executor is always ignored\r\n * @param timeout - Optional deadline timeout to wait before processing the items, defaults to undefined. If the number of\r\n * milliseconds represented by this parameter has elapsed and the callback has not already been called, then a task to execute\r\n * the callback is queued in the event loop (even if doing so risks causing a negative performance impact). timeout must be a\r\n * positive value or it is ignored.\r\n */\r\nexport function createIdlePromise(executor: PromiseExecutor, timeout?: number): IPromise {\r\n let theTimeout = isUndefined(timeout) ? _defaultIdleTimeout : timeout;\r\n return _createPromise(createIdlePromise, idleItemProcessor(theTimeout), executor, theTimeout);\r\n}\r\n\r\n/**\r\n * Returns an idle Promise instance that resolves to an array of the results from the input promises.\r\n * This returned promise will resolve and execute it's pending chained operations __asynchronously__\r\n * using the `requestIdleCallback` API (if available) with the optional provided timeout value to\r\n * schedule when the chained items will be executed.\r\n * It rejects immediately upon any of the input promises rejected or non-promises throwing an error,\r\n * and will reject with this first rejection message / error.\r\n * When resolved or rejected any additional chained operations will execute __asynchronously__ using\r\n * the `requestIdleCallback` API (if available) with the optional provided timeout value to schedule\r\n * when the chained items will be executed. (eg. `then()`; `catch()`; `finally()`).\r\n * @group Idle\r\n * @group Promise\r\n * @group All\r\n * @param input - The array of promises to wait to be resolved / rejected before resolving or rejecting the new promise\r\n * @param timeout - Optional deadline timeout to wait before processing the items, defaults to undefined. If the number of\r\n * milliseconds represented by this parameter has elapsed and the callback has not already been called, then a task to execute\r\n * the callback is queued in the event loop (even if doing so risks causing a negative performance impact). timeout must be a\r\n * positive value or it is ignored.\r\n * @returns\r\n *
    \r\n *
  • An already resolved `Promise`, if the input passed is empty.\r\n *
  • A pending `Promise` in all other cases. This returned promise is then resolved/rejected __synchronously__\r\n * (as soon as the pending items is empty) when all the promises in the given input have resolved, or if any of the\r\n * promises reject.\r\n *
\r\n */\r\nexport const createIdleAllPromise: (input: Iterable>, timeout?: number) => IPromise = /*#__PURE__*/_createAllPromise(createIdlePromise);\r\n\r\n/**\r\n * Returns an idle Promise instance that is already resolved with the given value. If the value passed is\r\n * a promise then that promise is returned instead of creating a new asynchronous promise instance.\r\n * If a new instance is returned then any chained operations will execute __asynchronously__ using the\r\n * `requestIdleCallback` API (if available) with the optional provided timeout value to schedule when\r\n * the chained items will be executed. (eg. `then()`; `finally()`).\r\n * @group Idle\r\n * @group Promise\r\n * @group Resolved\r\n * @param value - The value to be used by this `Promise`. Can also be a `Promise` or a thenable to resolve.\r\n * @param timeout - Optional timeout to wait before processing the items, defaults to zero.\r\n */\r\nexport const createIdleResolvedPromise: (value: T, timeout?: number) => IPromise = /*#__PURE__*/_createResolvedPromise(createIdlePromise);\r\n\r\n/**\r\n * Returns an idle Promise instance that is already rejected with the given reason.\r\n * Any chained operations will execute __asynchronously__ using the o`requestIdleCallback` API\r\n * (if available) with the optional provided timeout value to schedule when the chained items will\r\n * be executed. (eg. `catch()`; `finally()`).\r\n * @group Idle\r\n * @group Promise\r\n * @group Rejected\r\n * @param reason - The rejection reason\r\n * @param timeout - Optional timeout to wait before processing the items, defaults to zero.\r\n */\r\nexport const createIdleRejectedPromise: (reason: any, timeout?: number) => IPromise = /*#__PURE__*/_createRejectedPromise(createIdlePromise);\r\n\r\n/**\r\n * Returns a single Promise instance that resolves to an array of the results from the input promises.\r\n * This returned promise will resolve and execute it's pending chained operations based on the\r\n * {@link createIdlePromise | idle} promise implementation. Any chained operations will execute\r\n * __asynchronously__ when the environment is idle as the final operation pending promises have resolved,\r\n * or if the input contains no promises. It will resolve only after all of the input promises have either\r\n * resolved or rejected, and will resolve with an array of {@link IPromiseResult } objects that each describe\r\n * the outcome of each promise.\r\n * @since 0.5.0\r\n * @group Idle\r\n * @group Promise\r\n * @group AllSettled\r\n * @param values - The iterator of promises to wait to be resolved / rejected before resolving or rejecting the new promise\r\n * @param timeout - Optional timeout to wait before processing the items, defaults to zero, only used when Native promises are not available.\r\n * @returns A pending `Promise` that will resolve to an array of {@link IPromiseResult } objects that each describe the outcome of each promise.\r\n *\r\n * @example\r\n * ```ts\r\n * const promises = [\r\n * createResolvedPromise(1),\r\n * createResolvedPromise(2),\r\n * createResolvedPromise(3),\r\n * createRejectedPromise(\"error\"),\r\n * ];\r\n *\r\n * const results = await createAllSettledPromise(promises);\r\n *\r\n * // results is:\r\n * // [\r\n * // { status: \"fulfilled\", value: 1 },\r\n * // { status: \"fulfilled\", value: 2 },\r\n * // { status: \"fulfilled\", value: 3 },\r\n * // { status: \"rejected\", reason: \"error\" }\r\n * // ]\r\n * ```\r\n */\r\nexport function createIdleAllSettledPromise(values: Iterable>, timeout?: number): IPromise>[]>;\r\n\r\n/**\r\n * Returns a single Promise instance that resolves to an array of the results from the input promises.\r\n * This returned promise will resolve and execute it's pending chained operations based on the\r\n * {@link createIdlePromise | idle} promise implementation. Any chained operations will execute\r\n * __asynchronously__ when the environment is idle as the final operation pending promises have resolved,\r\n * or if the input contains no promises. It will resolve only after all of the input promises have either\r\n * resolved or rejected, and will resolve with an array of {@link IPromiseResult } objects that each describe\r\n * the outcome of each promise.\r\n * @since 0.5.0\r\n * @group Idle\r\n * @group Promise\r\n * @group AllSettled\r\n * @param input - An array of promises to wait to be resolved / rejected before resolving or rejecting the new promise\r\n * @param timeout - Optional timeout to wait before processing the items, defaults to zero, only used when Native promises are not available.\r\n * @returns A pending `Promise` that will resolve to an array of {@link IPromiseResult } objects that each describe the outcome of each promise.\r\n *\r\n * @example\r\n * ```ts\r\n * const promises = [\r\n * createResolvedPromise(1),\r\n * createResolvedPromise(2),\r\n * createResolvedPromise(3),\r\n * createRejectedPromise(\"error\"),\r\n * ];\r\n *\r\n * const results = await createAllSettledPromise(promises);\r\n *\r\n * // results is:\r\n * // [\r\n * // { status: \"fulfilled\", value: 1 },\r\n * // { status: \"fulfilled\", value: 2 },\r\n * // { status: \"fulfilled\", value: 3 },\r\n * // { status: \"rejected\", reason: \"error\" }\r\n * // ]\r\n * ```\r\n */\r\nexport function createIdleAllSettledPromise(input: T, timeout?: number): IPromise<{ -readonly [P in keyof T]: IPromiseResult>; }> {\r\n !_allIdleSettledCreator && (_allIdleSettledCreator = _createAllSettledPromise(createIdlePromise));\r\n return _allIdleSettledCreator.v(input, timeout);\r\n}\r\n\r\n/**\r\n * The `createIdleRacePromise` method takes an array of promises as input and returns a single Promise. This returned promise\r\n * settles with the eventual state of the first promise that settles.\r\n * @description The `createIdleRacePromise` method is one of the promise concurrency methods. It's useful when you want the first\r\n * async task to complete, but do not care about its eventual state (i.e. it can either succeed or fail).\r\n * If the iterable contains one or more non-promise values and/or an already settled promise, then Promise.race() will settle to\r\n * the first of these values found in the iterable.\r\n * @since 0.5.0\r\n * @group Idle\r\n * @group Promise\r\n * @group Race\r\n * @param values - An iterable object of promises.\r\n * @param timeout - Optional timeout to wait before processing the items, defaults to zero, only used when Native promises are not available.\r\n * @returns A Promise that settles with the eventual state of the first promise in the iterable to settle. In other words, it fulfills if the\r\n * first promise to settle is fulfilled, and rejects if the first promise to settle is rejected. The returned promise remains pending forever\r\n * if the iterable passed is empty. If the iterable passed is non-empty but contains no pending promises, the returned promise will settle\r\n * asynchronously when the system detects that the runtime is idle.\r\n */\r\nexport function createIdleRacePromise(values: Iterable>, timeout?: number): IPromise>;\r\n\r\n/**\r\n * The `createIdleRacePromise` method takes an array of promises as input and returns a single Promise. This returned promise\r\n * settles with the eventual state of the first promise that settles.\r\n * @description The `createIdleRacePromise` method is one of the promise concurrency methods. It's useful when you want the first\r\n * async task to complete, but do not care about its eventual state (i.e. it can either succeed or fail).\r\n * If the iterable contains one or more non-promise values and/or an already settled promise, then Promise.race() will settle to\r\n * the first of these values found in the iterable.\r\n * @since 0.5.0\r\n * @group Idle\r\n * @group Promise\r\n * @group Race\r\n * @param values - An the array of promises.\r\n * @param timeout - Optional timeout to wait before processing the items, defaults to zero, only used when Native promises are not available.\r\n * @returns A Promise that settles with the eventual state of the first promise in the iterable to settle. In other words, it fulfills if the\r\n * first promise to settle is fulfilled, and rejects if the first promise to settle is rejected. The returned promise remains pending forever\r\n * if the iterable passed is empty. If the iterable passed is non-empty but contains no pending promises, the returned promise will settle\r\n * asynchronously when the system detects that the runtime is idle.\r\n */\r\nexport function createIdleRacePromise(values: T, timeout?: number): IPromise> {\r\n !_raceIdleCreator && (_raceIdleCreator = _createRacePromise(createIdlePromise));\r\n return _raceIdleCreator.v(values, timeout);\r\n}\r\n\r\n/**\r\n * The `createIdleAnyPromise` method takes an iterable of promises as input and returns a single Promise.\r\n * This returned promise fulfills when any of the input's promises fulfills, with this first fulfillment value.\r\n * It rejects when all of the input's promises reject (including when an empty iterable is passed), with an\r\n * AggregateError containing an array of rejection reasons.\r\n * @since 0.5.0\r\n * @group Idle\r\n * @group Promise\r\n * @group Any\r\n * @param values - An iterable object of promises.\r\n * @param timeout - Optional timeout to wait before processing the items, defaults to zero, only used when Native promises are not available.\r\n * @returns A new Promise that is:\r\n * - Already rejected, if the iterable passed is empty.\r\n * - Asynchronously fulfilled, when any of the promises in the given iterable fulfills. The fulfillment value\r\n * is the fulfillment value of the first promise that was fulfilled.\r\n * - Asynchronously rejected, when all of the promises in the given iterable reject. The rejection reason is\r\n * an AggregateError containing an array of rejection reasons in its errors property. The errors are in the\r\n * order of the promises passed, regardless of completion order. If the iterable passed is non-empty but\r\n * contains no pending promises, the returned promise is still asynchronously (instead of synchronously)\r\n * rejected.\r\n */\r\nexport function createIdleAnyPromise(values: Iterable>, timeout?: number): IPromise>;\r\n \r\n/**\r\n * The `createIdleAnyPromise` method takes an array of promises as input and returns a single Promise.\r\n * This returned promise fulfills when any of the input's promises fulfills, with this first fulfillment value.\r\n * It rejects when all of the input's promises reject (including when an empty iterable is passed), with an\r\n * AggregateError containing an array of rejection reasons.\r\n * @since 0.5.0\r\n * @group Idle\r\n * @group Promise\r\n * @group Any\r\n * @param values - An Array promises.\r\n * @param timeout - Optional timeout to wait before processing the items, defaults to zero, only used when Native promises are not available.\r\n * @returns A new Promise that is:\r\n * - Already rejected, if the iterable passed is empty.\r\n * - Asynchronously fulfilled, when any of the promises in the given iterable fulfills. The fulfillment value\r\n * is the fulfillment value of the first promise that was fulfilled.\r\n * - Asynchronously rejected, when all of the promises in the given iterable reject. The rejection reason is\r\n * an AggregateError containing an array of rejection reasons in its errors property. The errors are in the\r\n * order of the promises passed, regardless of completion order. If the iterable passed is non-empty but\r\n * contains no pending promises, the returned promise is still asynchronously (instead of synchronously)\r\n * rejected.\r\n */\r\nexport function createIdleAnyPromise(values: T, timeout?: number): IPromise> {\r\n !_anyIdleCreator && (_anyIdleCreator = _createAnyPromise(createIdlePromise));\r\n return _anyIdleCreator.v(values, timeout);\r\n}","/*\r\n * @nevware21/ts-async\r\n * https://github.com/nevware21/ts-async\r\n *\r\n * Copyright (c) 2022 NevWare21 Solutions LLC\r\n * Licensed under the MIT license.\r\n */\r\n\r\nimport { createCachedValue, ICachedValue } from \"@nevware21/ts-utils\";\r\nimport { _createAllPromise, _createAllSettledPromise, _createAnyPromise, _createRacePromise, _createRejectedPromise, _createResolvedPromise } from \"./base\";\r\nimport { IPromise } from \"../interfaces/IPromise\";\r\nimport { createNativePromise } from \"./nativePromise\";\r\nimport { PromiseExecutor } from \"../interfaces/types\";\r\nimport { IPromiseResult } from \"../interfaces/IPromiseResult\";\r\n\r\nlet _promiseCreator: ICachedValue<(executor: PromiseExecutor, timeout?: number) => IPromise>;\r\nlet _allSettledCreator: ICachedValue<(input: T, timeout?: number) => IPromise<{ -readonly [P in keyof T]: IPromiseResult>; }>>;\r\nlet _raceCreator: ICachedValue<(values: T, timeout?: number) => IPromise>>;\r\nlet _anyCreator: ICachedValue<(values: T, timeout?: number) => IPromise>>;\r\n\r\n/**\r\n * Set the default promise implementation to use when calling `createPromise`; `createAllPromise`; `createResolvedPromise`\r\n * and `createRejectedPromise`. This is effective a global value and changing this will affect ALL callers of these\r\n * functions, as such these functions should only be used when switching implementations would have not unexpected\r\n * consequences like switching from a `createSyncPromise` to `createIdlePromise` where idle promises have a possibility\r\n * of never getting called during application shutdown or during an expected timeframe.\r\n * @group Alias\r\n * @group Promise\r\n * @param creator - The creator function to call when a new promise is required.\r\n */\r\nexport function setCreatePromiseImpl(\r\n creator: (executor: PromiseExecutor, timeout?: number) => IPromise\r\n) {\r\n _promiseCreator = creator ? createCachedValue(creator) : null;\r\n}\r\n\r\n/**\r\n * Creates a Promise instance using the current default promise creator that when resolved or rejected will execute\r\n * it's pending chained operations.\r\n * @group Alias\r\n * @group Promise\r\n * @param executor - The function to be executed during the creation of the promise. Any errors thrown in the executor will\r\n * cause the promise to be rejected. The return value of the executor is always ignored\r\n * @param timeout - [Optional] timeout to wait before processing the items, defaults to zero.\r\n */\r\nexport function createPromise(executor: PromiseExecutor, timeout?: number): IPromise {\r\n !_promiseCreator && (_promiseCreator = createCachedValue(createNativePromise));\r\n\r\n return _promiseCreator.v.call(this, executor, timeout);\r\n}\r\n\r\n/**\r\n * Returns a single asynchronous Promise instance that resolves to an array of the results from the input promises.\r\n * This returned promise will resolve and execute it's pending chained operations __asynchronously__ using the optional\r\n * provided timeout value to schedule when the chained items will be executed, or if the input contains no promises.\r\n * It rejects immediately upon any of the input promises rejected or non-promises throwing an error,\r\n * and will reject with this first rejection message / error.\r\n * If the runtime doesn't support the Promise.all it will fallback back to an asynchronous Promise implementation.\r\n * @group Alias\r\n * @group Promise\r\n * @group All\r\n * @param input - The array of promises to wait to be resolved / rejected before resolving or rejecting the new promise\r\n * @param timeout - Optional timeout to wait before processing the items, defaults to zero.\r\n * @returns\r\n *
    \r\n *
  • An already resolved `Promise`, if the input passed is empty.\r\n *
  • A pending `Promise` in all other cases. This returned promise is then resolved/rejected __synchronously__\r\n * (as soon as the pending items is empty) when all the promises in the given input have resolved, or if any of the\r\n * promises reject.\r\n *
\r\n */\r\nexport const createAllPromise: (input: Iterable>, timeout?: number) => IPromise = /*#__PURE__*/_createAllPromise(createPromise);\r\n\r\n\r\n/**\r\n * Returns a single asynchronous Promise instance that is already resolved with the given value. If the value passed is\r\n * a promise then that promise is returned instead of creating a new asynchronous promise instance.\r\n * If a new instance is returned then any chained operations will execute __asynchronously__ using the optional\r\n * timeout value to schedule when the chained items will be executed.(eg. `then()`; `finally()`).\r\n * @group Alias\r\n * @group Promise\r\n * @group Resolved\r\n * @param value - The value to be used by this `Promise`. Can also be a `Promise` or a thenable to resolve.\r\n * @param timeout - Optional timeout to wait before processing the items, defaults to zero.\r\n */\r\nexport const createResolvedPromise: (value: T, timeout?: number) => IPromise = /*#__PURE__*/_createResolvedPromise(createPromise);\r\n\r\n/**\r\n * Returns a single asynchronous Promise instance that is already rejected with the given reason.\r\n * Any chained operations will execute __asynchronously__ using the optional timeout value to schedule\r\n * when then chained items will be executed. (eg. `catch()`; `finally()`).\r\n * @group Alias\r\n * @group Promise\r\n * @group Rejected\r\n * @param reason - The rejection reason\r\n * @param timeout - Optional timeout to wait before processing the items, defaults to zero.\r\n */\r\nexport const createRejectedPromise: (reason: any, timeout?: number) => IPromise = /*#__PURE__*/_createRejectedPromise(createPromise);\r\n\r\n/**\r\n * Returns a single Promise instance that resolves to an array of the results from the input promises.\r\n * This returned promise will resolve and execute it's pending chained operations based on the current\r\n * promise implementation. If the current implementation is synchronous then the chained operations will\r\n * execute __synchronously__ in the same execution cycle as the final operation pending promises have resolved,\r\n * or if the input contains no promises. If the current implementation is asynchronous then the chained\r\n * operations will execute __asynchronously__ using the optional provided timeout value to schedule when the\r\n * chained items will be executed or if the input contains no promises.\r\n * It will resolve only after all of the input promises have either resolved or rejected, and will resolve with an array\r\n * of {@link IPromiseResult } objects that each describe the outcome of each promise.\r\n * @since 0.5.0\r\n * @group Alias\r\n * @group Promise\r\n * @group AllSettled\r\n * @param values - The iterator of promises to wait to be resolved / rejected before resolving or rejecting the new promise\r\n * @param timeout - Optional timeout to wait before processing the items, defaults to zero, only used when Native promises are not available.\r\n * @returns A pending `Promise` that will resolve to an array of {@link IPromiseResult } objects that each describe the outcome of each promise.\r\n *\r\n * @example\r\n * ```ts\r\n * const promises = [\r\n * createResolvedPromise(1),\r\n * createResolvedPromise(2),\r\n * createResolvedPromise(3),\r\n * createRejectedPromise(\"error\"),\r\n * ];\r\n *\r\n * const results = await createAllSettledPromise(promises);\r\n *\r\n * // results is:\r\n * // [\r\n * // { status: \"fulfilled\", value: 1 },\r\n * // { status: \"fulfilled\", value: 2 },\r\n * // { status: \"fulfilled\", value: 3 },\r\n * // { status: \"rejected\", reason: \"error\" }\r\n * // ]\r\n * ```\r\n */\r\nexport function createAllSettledPromise(values: Iterable>, timeout?: number): IPromise>[]>;\r\n\r\n/**\r\n * Returns a single Promise instance that resolves to an array of the results from the input promises.\r\n * This returned promise will resolve and execute it's pending chained operations based on the current\r\n * promise implementation. If the current implementation is synchronous then the chained operations will\r\n * execute __synchronously__ in the same execution cycle as the final operation pending promises have resolved,\r\n * or if the input contains no promises. If the current implementation is asynchronous then the chained\r\n * operations will execute __asynchronously__ using the optional provided timeout value to schedule when the\r\n * chained items will be executed or if the input contains no promises.\r\n * It will resolve only after all of the input promises have either resolved or rejected, and will resolve with an array\r\n * of {@link IPromiseResult } objects that each describe the outcome of each promise.\r\n * @since 0.5.0\r\n * @group Alias\r\n * @group Promise\r\n * @group AllSettled\r\n * @param input - An array of promises to wait to be resolved / rejected before resolving or rejecting the new promise\r\n * @param timeout - Optional timeout to wait before processing the items, defaults to zero, only used when Native promises are not available.\r\n * @returns A pending `Promise` that will resolve to an array of {@link IPromiseResult } objects that each describe the outcome of each promise.\r\n *\r\n * @example\r\n * ```ts\r\n * const promises = [\r\n * createResolvedPromise(1),\r\n * createResolvedPromise(2),\r\n * createResolvedPromise(3),\r\n * createRejectedPromise(\"error\"),\r\n * ];\r\n *\r\n * const results = await createAllSettledPromise(promises);\r\n *\r\n * // results is:\r\n * // [\r\n * // { status: \"fulfilled\", value: 1 },\r\n * // { status: \"fulfilled\", value: 2 },\r\n * // { status: \"fulfilled\", value: 3 },\r\n * // { status: \"rejected\", reason: \"error\" }\r\n * // ]\r\n * ```\r\n */\r\nexport function createAllSettledPromise(input: T, timeout?: number): IPromise<{ -readonly [P in keyof T]: IPromiseResult>; }> {\r\n !_allSettledCreator && (_allSettledCreator = _createAllSettledPromise(createPromise));\r\n return _allSettledCreator.v(input, timeout);\r\n}\r\n\r\n/**\r\n * The `createRacePromise` method takes an array of promises as input and returns a single Promise. This returned promise\r\n * settles with the eventual state of the first promise that settles.\r\n * @description The `createRacePromise` method is one of the promise concurrency methods. It's useful when you want the first\r\n * async task to complete, but do not care about its eventual state (i.e. it can either succeed or fail).\r\n * If the iterable contains one or more non-promise values and/or an already settled promise, then Promise.race() will settle to\r\n * the first of these values found in the iterable.\r\n * @since 0.5.0\r\n * @group Alias\r\n * @group Promise\r\n * @group Race\r\n * @param values - An iterable object of promises.\r\n * @param timeout - Optional timeout to wait before processing the items, defaults to zero, only used when Native promises are not available.\r\n * @returns A Promise that settles with the eventual state of the first promise in the iterable to settle. In other words, it fulfills if the\r\n * first promise to settle is fulfilled, and rejects if the first promise to settle is rejected. The returned promise remains pending forever\r\n * if the iterable passed is empty. If the iterable passed is non-empty but contains no pending promises, the returned promise will settle\r\n * based on the current promise implementation.\r\n */\r\nexport function createRacePromise(values: Iterable>, timeout?: number): IPromise>;\r\n\r\n/**\r\n * The `createRacePromise` method takes an array of promises as input and returns a single Promise. This returned promise\r\n * settles with the eventual state of the first promise that settles.\r\n * @description The `createRacePromise` method is one of the promise concurrency methods. It's useful when you want the first\r\n * async task to complete, but do not care about its eventual state (i.e. it can either succeed or fail).\r\n * If the iterable contains one or more non-promise values and/or an already settled promise, then Promise.race() will settle to\r\n * the first of these values found in the iterable.\r\n * @since 0.5.0\r\n * @group Alias\r\n * @group Promise\r\n * @group Race\r\n * @param values - An the array of promises.\r\n * @param timeout - Optional timeout to wait before processing the items, defaults to zero, only used when Native promises are not available.\r\n * @returns A Promise that settles with the eventual state of the first promise in the iterable to settle. In other words, it fulfills if the\r\n * first promise to settle is fulfilled, and rejects if the first promise to settle is rejected. The returned promise remains pending forever\r\n * if the iterable passed is empty. If the iterable passed is non-empty but contains no pending promises, the returned promise will settle\r\n * based on the current promise implementation.\r\n */\r\nexport function createRacePromise(values: T, timeout?: number): IPromise> {\r\n !_raceCreator && (_raceCreator = _createRacePromise(createPromise));\r\n return _raceCreator.v(values, timeout);\r\n}\r\n\r\n/**\r\n * The `createAnyPromise` method takes an iterable of promises as input and returns a single Promise.\r\n * This returned promise fulfills when any of the input's promises fulfills, with this first fulfillment value.\r\n * It rejects when all of the input's promises reject (including when an empty iterable is passed), with an\r\n * AggregateError containing an array of rejection reasons.\r\n * @since 0.5.0\r\n * @group Alias\r\n * @group Promise\r\n * @group Any\r\n * @param values - An iterable object of promises.\r\n * @param timeout - Optional timeout to wait before processing the items, defaults to zero, only used when Native promises are not available.\r\n * @returns A new Promise that is:\r\n * - Already rejected, if the iterable passed is empty.\r\n * - Asynchronously fulfilled, when any of the promises in the given iterable fulfills. The fulfillment value\r\n * is the fulfillment value of the first promise that was fulfilled.\r\n * - Asynchronously rejected, when all of the promises in the given iterable reject. The rejection reason is\r\n * an AggregateError containing an array of rejection reasons in its errors property. The errors are in the\r\n * order of the promises passed, regardless of completion order. If the iterable passed is non-empty but\r\n * contains no pending promises, the returned promise is still asynchronously (instead of synchronously)\r\n * rejected.\r\n */\r\nexport function createAnyPromise(values: Iterable>, timeout?: number): IPromise>;\r\n \r\n/**\r\n * The `createAnyPromise` method takes an array of promises as input and returns a single Promise.\r\n * This returned promise fulfills when any of the input's promises fulfills, with this first fulfillment value.\r\n * It rejects when all of the input's promises reject (including when an empty iterable is passed), with an\r\n * AggregateError containing an array of rejection reasons.\r\n * @since 0.5.0\r\n * @group Alias\r\n * @group Promise\r\n * @group Any\r\n * @param values - An Array promises.\r\n * @param timeout - Optional timeout to wait before processing the items, defaults to zero, only used when Native promises are not available.\r\n * @returns A new Promise that is:\r\n * - Already rejected, if the iterable passed is empty.\r\n * - Asynchronously fulfilled, when any of the promises in the given iterable fulfills. The fulfillment value\r\n * is the fulfillment value of the first promise that was fulfilled.\r\n * - Asynchronously rejected, when all of the promises in the given iterable reject. The rejection reason is\r\n * an AggregateError containing an array of rejection reasons in its errors property. The errors are in the\r\n * order of the promises passed, regardless of completion order. If the iterable passed is non-empty but\r\n * contains no pending promises, the returned promise is still asynchronously (instead of synchronously)\r\n * rejected.\r\n */\r\nexport function createAnyPromise(values: T, timeout?: number): IPromise> {\r\n !_anyCreator && (_anyCreator = _createAnyPromise(createPromise));\r\n return _anyCreator.v(values, timeout);\r\n}","/*\r\n * @nevware21/ts-async\r\n * https://github.com/nevware21/ts-async\r\n *\r\n * Copyright (c) 2022 NevWare21 Solutions LLC\r\n * Licensed under the MIT license.\r\n */\r\n\r\nimport { getKnownSymbol, objDefineProp, WellKnownSymbols } from \"@nevware21/ts-utils\";\r\nimport { createAsyncAllPromise, createAsyncAllSettledPromise, createAsyncAnyPromise, createAsyncPromise, createAsyncRacePromise, createAsyncRejectedPromise, createAsyncResolvedPromise } from \"../promise/asyncPromise\";\r\nimport { IPromise } from \"../interfaces/IPromise\";\r\nimport { PromiseExecutor } from \"../interfaces/types\";\r\nimport { IPromiseResult } from \"../interfaces/IPromiseResult\";\r\n\r\nconst toStringTagSymbol: symbol = getKnownSymbol(WellKnownSymbols.toStringTag) as typeof Symbol.toStringTag;\r\n\r\n/**\r\n * The PolyPromiseConstructor interface represents the constructor for the polyfill Promise object.\r\n * @since 0.5.0\r\n * @group Polyfill\r\n */\r\nexport interface PolyPromiseConstructor {\r\n /**\r\n * Creates a new Promise.\r\n * @constructor\r\n * @param executor - A callback used to initialize the promise. This callback is passed two arguments:\r\n * a resolve callback used to resolve the promise with a value or the result of another promise,\r\n * and a reject callback used to reject the promise with a provided reason or error.\r\n */\r\n new (executor: PromiseExecutor): IPromise;\r\n\r\n /**\r\n * Returns a single asynchronous Promise instance that resolves to an array of the results from the input promises.\r\n * This returned promise will resolve and execute it's pending chained operations __asynchronously__ using the optional\r\n * provided timeout value to schedule when the chained items will be executed, or if the input contains no promises.\r\n * It rejects immediately upon any of the input promises rejected or non-promises throwing an error,\r\n * and will reject with this first rejection message / error.\r\n * When resolved or rejected any additional chained operations will execute __asynchronously__ using the optional\r\n * timeout value to schedul when the chained item will be executed (eg. `then()`; `catch()`; `finally()`).\r\n * @group Polyfill\r\n * @param input - The array of promises to wait to be resolved / rejected before resolving or rejecting the new promise\r\n * @param timeout - Optional timeout to wait before processing the items, defaults to zero.\r\n * @returns\r\n *
    \r\n *
  • An already resolved `Promise`, if the input passed is empty.\r\n *
  • A pending `Promise` in all other cases. This returned promise is then resolved/rejected __synchronously__\r\n * (as soon as the pending items is empty) when all the promises in the given input have resolved, or if any of the\r\n * promises reject.\r\n *
\r\n */\r\n all(input: Iterable>, timeout?: number): IPromise;\r\n\r\n /**\r\n * The `createAsyncRacePromise` method takes an array of promises as input and returns a single Promise. This returned promise\r\n * settles with the eventual state of the first promise that settles.\r\n * @description The `createAsyncRacePromise` method is one of the promise concurrency methods. It's useful when you want the first\r\n * async task to complete, but do not care about its eventual state (i.e. it can either succeed or fail).\r\n * If the iterable contains one or more non-promise values and/or an already settled promise, then Promise.race() will settle to\r\n * the first of these values found in the iterable.\r\n * @since 0.5.0\r\n * @group Polyfill\r\n * @param values - An iterable object of promises.\r\n * @param timeout - Optional timeout to wait before processing the items, defaults to zero, only used when Native promises are not available.\r\n * @returns A Promise that settles with the eventual state of the first promise in the iterable to settle. In other words, it fulfills if the\r\n * first promise to settle is fulfilled, and rejects if the first promise to settle is rejected. The returned promise remains pending forever\r\n * if the iterable passed is empty. If the iterable passed is non-empty but contains no pending promises, the returned promise is still\r\n * asynchronously settled.\r\n */\r\n race(values: Iterable>, timeout?: number): IPromise>;\r\n\r\n /**\r\n * The `createAsyncRacePromise` method takes an array of promises as input and returns a single Promise. This returned promise\r\n * settles with the eventual state of the first promise that settles.\r\n * @description The `createAsyncRacePromise` method is one of the promise concurrency methods. It's useful when you want the first\r\n * async task to complete, but do not care about its eventual state (i.e. it can either succeed or fail).\r\n * If the iterable contains one or more non-promise values and/or an already settled promise, then Promise.race() will settle to\r\n * the first of these values found in the iterable.\r\n * @since 0.5.0\r\n * @group Polyfill\r\n * @param values - An iterable object of promises.\r\n * @param timeout - Optional timeout to wait before processing the items, defaults to zero, only used when Native promises are not available.\r\n * @returns A Promise that settles with the eventual state of the first promise in the iterable to settle. In other words, it fulfills if the\r\n * first promise to settle is fulfilled, and rejects if the first promise to settle is rejected. The returned promise remains pending forever\r\n * if the iterable passed is empty. If the iterable passed is non-empty but contains no pending promises, the returned promise is still\r\n * asynchronously settled.\r\n */\r\n race(values: T, timeout?: number): IPromise>;\r\n\r\n /**\r\n * The `createAsyncAnyPromise` method takes an iterable of promises as input and returns a single Promise.\r\n * This returned promise fulfills when any of the input's promises fulfills, with this first fulfillment value.\r\n * It rejects when all of the input's promises reject (including when an empty iterable is passed), with an\r\n * AggregateError containing an array of rejection reasons.\r\n * @since 0.5.0\r\n * @group Polyfill\r\n * @param values - An iterable object of promises.\r\n * @param timeout - Optional timeout to wait before processing the items, defaults to zero, only used when Native promises are not available.\r\n * @returns A new Promise that is:\r\n * - Already rejected, if the iterable passed is empty.\r\n * - Asynchronously fulfilled, when any of the promises in the given iterable fulfills. The fulfillment value\r\n * is the fulfillment value of the first promise that was fulfilled.\r\n * - Asynchronously rejected, when all of the promises in the given iterable reject. The rejection reason is\r\n * an AggregateError containing an array of rejection reasons in its errors property. The errors are in the\r\n * order of the promises passed, regardless of completion order. If the iterable passed is non-empty but\r\n * contains no pending promises, the returned promise is still asynchronously (instead of synchronously)\r\n * rejected.\r\n */\r\n any(values: Iterable>, timeout?: number): IPromise>;\r\n \r\n /**\r\n * The `createAsyncAnyPromise` method takes an iterable of promises as input and returns a single Promise.\r\n * This returned promise fulfills when any of the input's promises fulfills, with this first fulfillment value.\r\n * It rejects when all of the input's promises reject (including when an empty iterable is passed), with an\r\n * AggregateError containing an array of rejection reasons.\r\n * @since 0.5.0\r\n * @group Polyfill\r\n * @param values - An iterable object of promises.\r\n * @param timeout - Optional timeout to wait before processing the items, defaults to zero, only used when Native promises are not available.\r\n * @returns A new Promise that is:\r\n * - Already rejected, if the iterable passed is empty.\r\n * - Asynchronously fulfilled, when any of the promises in the given iterable fulfills. The fulfillment value\r\n * is the fulfillment value of the first promise that was fulfilled.\r\n * - Asynchronously rejected, when all of the promises in the given iterable reject. The rejection reason is\r\n * an AggregateError containing an array of rejection reasons in its errors property. The errors are in the\r\n * order of the promises passed, regardless of completion order. If the iterable passed is non-empty but\r\n * contains no pending promises, the returned promise is still asynchronously (instead of synchronously)\r\n * rejected.\r\n */\r\n any(values: T, timeout?: number): IPromise>;\r\n\r\n /**\r\n * Returns a single asynchronous Promise instance that is already rejected with the given reason.\r\n * Any chained operations will execute __asynchronously__ using the optional timeout value to schedule\r\n * when then chained items will be executed. (eg. `catch()`; `finally()`).\r\n * @group Polyfill\r\n * @param reason - The rejection reason\r\n * @param timeout - Optional timeout to wait before processing the items, defaults to zero.\r\n * @returns A rejected promise.\r\n */\r\n reject(reason?: any, timeout?: number): IPromise;\r\n \r\n /**\r\n * Returns a single asynchronous Promise instance that is already resolved with the given value. If the value passed is\r\n * a promise then that promise is returned instead of creating a new asynchronous promise instance.\r\n * If a new instance is returned then any chained operations will execute __asynchronously__ using the optional\r\n * timeout value to schedule when the chained items will be executed.(eg. `then()`; `finally()`).\r\n * @group Polyfill\r\n * @returns A resolved promise.\r\n */\r\n resolve(): IPromise;\r\n \r\n /**\r\n * Returns a single asynchronous Promise instance that is already resolved with the given value. If the value passed is\r\n * a promise then that promise is returned instead of creating a new asynchronous promise instance.\r\n * If a new instance is returned then any chained operations will execute __asynchronously__ using the optional\r\n * timeout value to schedule when the chained items will be executed.(eg. `then()`; `finally()`).\r\n * @group Polyfill\r\n * @param value - The value to be used by this `Promise`. Can also be a `Promise` or a thenable to resolve.\r\n * @param timeout - Optional timeout to wait before processing the items, defaults to zero.\r\n * @returns A resolved promise.\r\n */\r\n resolve(value: T | PromiseLike, timeout?: number): IPromise;\r\n\r\n /**\r\n * Returns a single Promise instance that resolves to an array of the results from the input promises.\r\n * This returned promise will resolve and execute it's pending chained operations based on the\r\n * {@link createAsyncPromise | Asynchronous} promise implementation. Any chained operations will execute\r\n * __asynchronously__ when the final operation pending promises have resolved, or if the input contains\r\n * no promises. It will resolve only after all of the input promises have either resolved or rejected,\r\n * and will resolve with an array of {@link IPromiseResult } objects that each describe the outcome of\r\n * each promise.\r\n * @since 0.5.0\r\n * @group Polyfill\r\n * @param values - An array of promises to wait to be resolved / rejected before resolving or rejecting the new promise\r\n * @param timeout - Optional timeout to wait before processing the items, defaults to zero, only used when Native promises are not available.\r\n * @returns A pending `Promise` that will resolve to an array of {@link IPromiseResult } objects that each describe the outcome of each promise.\r\n */\r\n allSettled(values: T, timeout?: number): Promise<{ -readonly [P in keyof T]: IPromiseResult>; }>;\r\n\r\n /**\r\n * Returns a single Promise instance that resolves to an array of the results from the input promises.\r\n * This returned promise will resolve and execute it's pending chained operations based on the\r\n * {@link createAsyncPromise | Asynchronous} promise implementation. Any chained operations will execute\r\n * __asynchronously__ when the final operation pending promises have resolved, or if the input contains\r\n * no promises. It will resolve only after all of the input promises have either resolved or rejected,\r\n * and will resolve with an array of {@link IPromiseResult } objects that each describe the outcome of\r\n * each promise.\r\n * @since 0.5.0\r\n * @group Polyfill\r\n * @param values - An array of promises to wait to be resolved / rejected before resolving or rejecting the new promise\r\n * @param timeout - Optional timeout to wait before processing the items, defaults to zero, only used when Native promises are not available.\r\n * @returns A pending `Promise` that will resolve to an array of {@link IPromiseResult } objects that each describe the outcome of each promise.\r\n */\r\n allSettled(values: Iterable>, timeout?: number): IPromise>[]>;\r\n}\r\n\r\n/**\r\n * A full polyfill for the Promise class.\r\n * Represents the completion of an asynchronous operation, and its resulting value.\r\n * @since 0.5.0\r\n * @class\r\n * @group Polyfill\r\n * @group Promise\r\n */\r\nexport let PolyPromise = /*#__PURE__*/(function () {\r\n /**\r\n * Creates a new Promise.\r\n * @constructor\r\n * @param executor - A callback used to initialize the promise. This callback is passed two arguments:\r\n * a resolve callback used to resolve the promise with a value or the result of another promise,\r\n * and a reject callback used to reject the promise with a provided reason or error.\r\n */\r\n function PolyPromiseImpl(executor: PromiseExecutor) {\r\n this._$ = createAsyncPromise(executor);\r\n if (toStringTagSymbol) {\r\n this[toStringTagSymbol] = \"Promise\";\r\n }\r\n // Re-Expose the state of the underlying promise\r\n objDefineProp(this, \"state\", {\r\n get: function() {\r\n return this._$.state;\r\n }\r\n });\r\n }\r\n\r\n /**\r\n */\r\n PolyPromiseImpl.all = createAsyncAllPromise;\r\n PolyPromiseImpl.race = createAsyncRacePromise;\r\n PolyPromiseImpl.any = createAsyncAnyPromise;\r\n PolyPromiseImpl.reject = createAsyncRejectedPromise;\r\n PolyPromiseImpl.resolve = createAsyncResolvedPromise;\r\n PolyPromiseImpl.allSettled = createAsyncAllSettledPromise;\r\n let theProto = PolyPromiseImpl.prototype;\r\n theProto.then = function (onResolved: any, onRejected: any) {\r\n return this._$.then(onResolved, onRejected);\r\n };\r\n theProto.catch = function (onRejected: any) {\r\n return this._$.catch(onRejected);\r\n };\r\n theProto.finally = function (onfinally: any) {\r\n return this._$.finally(onfinally);\r\n };\r\n return PolyPromiseImpl as unknown as PolyPromiseConstructor;\r\n}());","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\n// @skip-file-minify\r\n// ##############################################################\r\n// AUTO GENERATED FILE: This file is Auto Generated during build.\r\n// ##############################################################\r\n// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\r\n// Note: DON'T Export these const from the package as we are still targeting ES3 this will export a mutable variables that someone could change!!!\r\n// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\r\nexport var _DYN_FEATURE_OPT_IN = \"featureOptIn\"; // Count: 4\r\nexport var _DYN_ON_CFG_CHANGE_RECEIV0 = \"onCfgChangeReceive\"; // Count: 2\r\nexport var _DYN_NON_OVERRIDE_CONFIGS = \"nonOverrideConfigs\"; // Count: 2\r\nexport var _DYN_SCHEDULE_FETCH_TIMEO1 = \"scheduleFetchTimeout\"; // Count: 2\r\n//# sourceMappingURL=__DynamicConstants.js.map","import { isNullOrUndefined, isObject, objExtend, objForEachKey, setValueByKey } from \"@nevware21/ts-utils\";\r\nimport { _DYN_FEATURE_OPT_IN } from \"./__DynamicConstants\";\r\n/**\r\n * Delete a config key in the given cfg, if the config key exists in nonOverrideConfigs and its value is set to true\r\n * @param cfg - cfg to modify\r\n * @param nonOverrideConfigs - nonOverrideConfigs\r\n * @param curLevel - cur config level, starting at 0\r\n * @param maxLevel - max config level\r\n * @returns new copy of modified configs\r\n */\r\nexport function replaceByNonOverrideCfg(cfg, nonOverrideConfigs, curLevel, maxLevel) {\r\n try {\r\n var exceedMaxLevel = curLevel > maxLevel;\r\n if (exceedMaxLevel) {\r\n cfg = null;\r\n }\r\n var curCfg_1 = curLevel == 0 ? objExtend({}, cfg) : cfg; // only copy cfg at the begining level\r\n if (curCfg_1 && nonOverrideConfigs && !exceedMaxLevel) {\r\n objForEachKey(curCfg_1, function (key) {\r\n var nonOverrideVal = nonOverrideConfigs[key];\r\n if (!!nonOverrideVal) {\r\n if (isObject(curCfg_1[key]) && isObject(nonOverrideVal)) {\r\n curCfg_1[key] = replaceByNonOverrideCfg(curCfg_1[key], nonOverrideVal, ++curLevel, maxLevel);\r\n }\r\n else {\r\n delete curCfg_1[key];\r\n }\r\n }\r\n });\r\n }\r\n return curCfg_1;\r\n }\r\n catch (e) {\r\n // eslint-disable-next-line no-empty\r\n }\r\n // if errors happen, do nothing\r\n return cfg;\r\n}\r\n// CDN Mode, value = B (CDN value = B)\r\n// |--------------------------------------------------------------------------|-----------|\r\n// | | none | disabled | enabled | forceOn | forceOff |\r\n// | ------------------ | ----------- | ----------- | ----------- | --------- | --------- |\r\n// | User Mode, value = A | none | none | disabled | enabled | enabled | disabled |\r\n// (user Value = A) | disabled | disabled | disabled | disabled | enabled | disabled |\r\n// | enabled | enabled | disabled | enabled | enabled | disabled |\r\n// | none(blockCdn) | none | none | none | none | none |\r\n// | disabled(blockCdn) | disabled | disabled | disabled | disabled | disabled |\r\n// | enabled(blockCdn) | enabled | enabled | enabled | enabled | enabled |\r\n// This matrix identifies how feature based overrides are selected (if present)\r\n// cdn Mode (cdn Value = B)\r\n// |---------------------------------------------------------------------------|\r\n// | | none | disabled | enabled | forceOn | forceOff |\r\n// | ------------------ | ---------| ---------| ---------| ---------|----------|\r\n// | User Mode | none | A | A | A || B | B || A | B || A |\r\n// (user Value = A) | disabled | A | A | A | B || A | B || A |\r\n// | enabled | A | A | A || B | B || A | B || A |\r\n// | none(blockCdn) | A | A | A | A | A |\r\n// | disabled(blockCdn) | A | A | A | A | A |\r\n// | enabled(blockCdn) | A | A | A | A | A |\r\n// Note:\r\n// Where the \"value\" is an object (map) of encoded key/values which will be used to override the real configuration\r\n// A = either the user supplied enable/disable value (via the `config.featureOptIn[name]`) or if not defined by the user the SDK defaults of the same.\r\n// B = The enable/disable value obtained from the CDN for the named feature\r\n// These are evaluated based on the above matrix to either\r\n// - A (Always the user/sdk value)\r\n// - B (Always the value from the CDN)\r\n// - A || B (If A is null or undefined use the value from the CDN (B) otherwise A)\r\n// - B || A (If B is null or undefined use the user/SDK value otherwise use the value from the CDN)\r\n//\r\n// The result of the value may also be null / undefined, which means there are no overrides to apply when the feature is enabled\r\nvar F = \"featureOptIn.\";\r\nvar M = \".mode\";\r\nvar ON = \".onCfg\";\r\nvar OFF = \".offCfg\";\r\nexport function resolveCdnFeatureCfg(field, cdnCfg, userOptInDetails) {\r\n var _a;\r\n // cdn conifg value\r\n if (!cdnCfg || !cdnCfg.enabled) {\r\n return null;\r\n }\r\n var cdnFt = (cdnCfg[_DYN_FEATURE_OPT_IN /* @min:%2efeatureOptIn */] || {})[field] || { mode: 1 /* CdnFeatureMode.none */ };\r\n var cdnM = cdnFt.mode;\r\n var cdnOnV = cdnFt.onCfg;\r\n var cdnOffV = cdnFt.offCfg;\r\n var userFt = (userOptInDetails || {})[field] || { mode: 2 /* FeatureOptInMode.disable */ }; // default user mode is disable\r\n var userM = userFt.mode;\r\n var userOnV = userFt.onCfg;\r\n var userOffV = userFt.offCfg;\r\n var blockCdn = !!userFt.blockCdnCfg;\r\n var mFld = F + field + M;\r\n var onFld = F + field + ON;\r\n var offFld = F + field + OFF;\r\n var mode = userM;\r\n var onV = userOnV;\r\n var offV = userOffV;\r\n if (!blockCdn) {\r\n if (cdnM === 4 /* CdnFeatureMode.forceOn */ || cdnM === 5 /* CdnFeatureMode.forceOff */) {\r\n mode = (cdnM == 4 /* CdnFeatureMode.forceOn */ ? 3 /* FeatureOptInMode.enable */ : 2 /* FeatureOptInMode.disable */);\r\n onV = cdnOnV || userOnV;\r\n offV = cdnOffV || userOffV;\r\n }\r\n else if (cdnM === 2 /* CdnFeatureMode.disable */ || userM === 2 /* FeatureOptInMode.disable */) {\r\n mode = 2 /* FeatureOptInMode.disable */;\r\n onV = userOnV || cdnOnV;\r\n offV = userOffV || cdnOffV;\r\n }\r\n else if (cdnM === 3 /* CdnFeatureMode.enable */) {\r\n mode = 3 /* FeatureOptInMode.enable */;\r\n onV = userOnV || cdnOnV;\r\n offV = userOffV || cdnOffV;\r\n }\r\n else if (cdnM === 1 /* CdnFeatureMode.none */ && userM === 1 /* FeatureOptInMode.none */) {\r\n mode = 1 /* FeatureOptInMode.none */;\r\n }\r\n }\r\n return _a = {},\r\n _a[mFld] = mode,\r\n _a[onFld] = onV,\r\n _a[offFld] = offV,\r\n _a;\r\n}\r\n// helper function to get cdn config with opt-in features\r\nexport function applyCdnfeatureCfg(cdnCfg, core) {\r\n try {\r\n if (!cdnCfg || !cdnCfg.enabled) {\r\n return null;\r\n }\r\n if (!cdnCfg[_DYN_FEATURE_OPT_IN /* @min:%2efeatureOptIn */]) {\r\n return cdnCfg.config;\r\n }\r\n var optInMap = cdnCfg[_DYN_FEATURE_OPT_IN /* @min:%2efeatureOptIn */];\r\n var cdnConfig_1 = cdnCfg.config || {};\r\n objForEachKey(optInMap, function (key) {\r\n var featureVal = resolveCdnFeatureCfg(key, cdnCfg, core.config[_DYN_FEATURE_OPT_IN /* @min:%2efeatureOptIn */]);\r\n if (!isNullOrUndefined(featureVal)) {\r\n objForEachKey(featureVal, function (config, val) {\r\n setValueByKey(cdnConfig_1, config, val);\r\n });\r\n _overrideCdnCfgByFeature(key, featureVal, cdnConfig_1);\r\n }\r\n });\r\n return cdnConfig_1;\r\n }\r\n catch (e) {\r\n // eslint-disable-next-line no-empty\r\n }\r\n return null;\r\n}\r\nfunction _overrideCdnCfgByFeature(field, ftVal, config) {\r\n var mode = ftVal[F + field + M];\r\n var val = ftVal[F + field + ON];\r\n var dVal = ftVal[F + field + OFF];\r\n var target = null;\r\n if (mode === 3 /* FeatureOptInMode.enable */) {\r\n target = val;\r\n }\r\n if (mode === 2 /* FeatureOptInMode.disable */) {\r\n target = dVal;\r\n }\r\n if (target) {\r\n objForEachKey(target, function (key, cfg) {\r\n setValueByKey(config, key, cfg);\r\n });\r\n }\r\n}\r\n//# sourceMappingURL=CfgSyncHelperFuncs.js.map","/**\r\n* CfgSyncPlugin.ts\r\n* @copyright Microsoft 2018\r\n*/\r\nvar _a;\r\nimport { __extends } from \"tslib\";\r\nimport dynamicProto from \"@microsoft/dynamicproto-js\";\r\nimport { BaseTelemetryPlugin, createProcessTelemetryContext, createUniqueNamespace, eventOff, eventOn, getGlobal, getJSON, isFetchSupported, isXhrSupported, mergeEvtNamespace, onConfigChange, sendCustomEvent } from \"@microsoft/applicationinsights-core-js\";\r\nimport { doAwaitResponse } from \"@nevware21/ts-async\";\r\nimport { isFunction, isNullOrUndefined, isPlainObject, objDeepFreeze, scheduleTimeout } from \"@nevware21/ts-utils\";\r\nimport { applyCdnfeatureCfg, replaceByNonOverrideCfg } from \"./CfgSyncHelperFuncs\";\r\nimport { _DYN_NON_OVERRIDE_CONFIGS, _DYN_ON_CFG_CHANGE_RECEIV0, _DYN_SCHEDULE_FETCH_TIMEO1 } from \"./__DynamicConstants\";\r\nvar EVENT_NAME = \"ai_cfgsync\";\r\nvar STR_GET_METHOD = \"GET\";\r\nvar FETCH_TIMEOUT = 1800000; // 30 minutes\r\nvar udfVal = undefined;\r\nvar defaultNonOverrideCfg = { instrumentationKey: true, connectionString: true, endpointUrl: true };\r\nvar _defaultConfig = objDeepFreeze((_a = {\r\n syncMode: 1 /* ICfgSyncMode.Broadcast */,\r\n blkCdnCfg: udfVal,\r\n customEvtName: udfVal,\r\n cfgUrl: udfVal,\r\n overrideSyncFn: udfVal,\r\n overrideFetchFn: udfVal\r\n },\r\n _a[_DYN_ON_CFG_CHANGE_RECEIV0 /* @min:onCfgChangeReceive */] = udfVal,\r\n _a[_DYN_SCHEDULE_FETCH_TIMEO1 /* @min:scheduleFetchTimeout */] = FETCH_TIMEOUT,\r\n _a[_DYN_NON_OVERRIDE_CONFIGS /* @min:nonOverrideConfigs */] = defaultNonOverrideCfg,\r\n _a));\r\nvar CfgSyncPlugin = /** @class */ (function (_super) {\r\n __extends(CfgSyncPlugin, _super);\r\n function CfgSyncPlugin() {\r\n var _this = _super.call(this) || this;\r\n _this.priority = 198;\r\n _this.identifier = \"AppInsightsCfgSyncPlugin\";\r\n var _extensionConfig;\r\n var _mainConfig; // throttle config should be wrapped in IConfiguration\r\n var _evtName;\r\n var _evtNamespace;\r\n var _cfgUrl;\r\n var _timeoutHandle;\r\n var _receiveChanges;\r\n var _broadcastChanges;\r\n var _blkCdnCfg;\r\n var _fetchTimeout;\r\n var _retryCnt;\r\n var _onCfgChangeReceive;\r\n var _nonOverrideConfigs;\r\n var _fetchFn;\r\n var _overrideFetchFn;\r\n var _overrideSyncFn;\r\n var _paused = false;\r\n dynamicProto(CfgSyncPlugin, _this, function (_self, _base) {\r\n _initDefaults();\r\n _self.initialize = function (config, core, extensions, pluginChain) {\r\n _base.initialize(config, core, extensions, pluginChain);\r\n _evtNamespace = mergeEvtNamespace(createUniqueNamespace(_self.identifier), core.evtNamespace && core.evtNamespace());\r\n _populateDefaults(config);\r\n };\r\n _self.getCfg = function () {\r\n return _mainConfig;\r\n };\r\n _self.pause = function () {\r\n _paused = true;\r\n _clearScheduledTimer();\r\n };\r\n _self.resume = function () {\r\n _paused = false;\r\n _setupTimer();\r\n };\r\n // used for V2 to manaully trigger config udpate\r\n _self.setCfg = function (config) {\r\n return _setCfg(config);\r\n };\r\n _self.sync = function (customDetails) {\r\n return _sendCfgsyncEvents(customDetails);\r\n };\r\n _self.updateEventListenerName = function (eventName) {\r\n return _updateEventListenerName(eventName);\r\n };\r\n _self._doTeardown = function (unloadCtx, unloadState) {\r\n _eventOff();\r\n _clearScheduledTimer();\r\n _initDefaults();\r\n };\r\n _self[\"_getDbgPlgTargets\"] = function () {\r\n return [_broadcastChanges, _receiveChanges, _evtName, _blkCdnCfg, _nonOverrideConfigs];\r\n };\r\n function _initDefaults() {\r\n _mainConfig = null;\r\n _evtName = null;\r\n _evtNamespace = null;\r\n _cfgUrl = null;\r\n _receiveChanges = null;\r\n _broadcastChanges = null;\r\n _nonOverrideConfigs = null;\r\n _timeoutHandle = null;\r\n _fetchTimeout = null;\r\n _retryCnt = null;\r\n _blkCdnCfg = null;\r\n _overrideFetchFn = null;\r\n _overrideSyncFn = null;\r\n _onCfgChangeReceive = null;\r\n }\r\n function _populateDefaults(config) {\r\n var identifier = _self.identifier;\r\n var core = _self.core;\r\n _self._addHook(onConfigChange(config, function () {\r\n var ctx = createProcessTelemetryContext(null, config, core);\r\n _extensionConfig = ctx.getExtCfg(identifier, _defaultConfig);\r\n var preBlkCdn = _blkCdnCfg;\r\n _blkCdnCfg = !!_extensionConfig.blkCdnCfg;\r\n // avoid initial call\r\n if (!isNullOrUndefined(preBlkCdn) && preBlkCdn !== _blkCdnCfg) {\r\n if (!_blkCdnCfg && _cfgUrl) {\r\n _fetchFn && _fetchFn(_cfgUrl, _onFetchComplete, _broadcastChanges);\r\n }\r\n else {\r\n _clearScheduledTimer();\r\n }\r\n }\r\n if (isNullOrUndefined(_receiveChanges)) {\r\n _receiveChanges = _extensionConfig.syncMode === 2 /* ICfgSyncMode.Receive */;\r\n }\r\n if (isNullOrUndefined(_broadcastChanges)) {\r\n _broadcastChanges = _extensionConfig.syncMode === 1 /* ICfgSyncMode.Broadcast */;\r\n }\r\n var newEvtName = _extensionConfig.customEvtName || EVENT_NAME;\r\n if (_evtName !== newEvtName) {\r\n if (_receiveChanges) {\r\n _updateEventListenerName(newEvtName);\r\n }\r\n else {\r\n _eventOff();\r\n _evtName = newEvtName;\r\n }\r\n }\r\n if (isNullOrUndefined(_cfgUrl)) {\r\n _cfgUrl = _extensionConfig.cfgUrl;\r\n }\r\n // if cfgUrl is set, we will ignore core config change\r\n if (!_cfgUrl) {\r\n _mainConfig = config;\r\n if (_broadcastChanges) {\r\n _sendCfgsyncEvents();\r\n }\r\n }\r\n }));\r\n _overrideSyncFn = _extensionConfig.overrideSyncFn;\r\n _overrideFetchFn = _extensionConfig.overrideFetchFn;\r\n _onCfgChangeReceive = _extensionConfig[_DYN_ON_CFG_CHANGE_RECEIV0 /* @min:%2eonCfgChangeReceive */];\r\n _nonOverrideConfigs = _extensionConfig[_DYN_NON_OVERRIDE_CONFIGS /* @min:%2enonOverrideConfigs */]; // override values should not be changed\r\n _fetchTimeout = _extensionConfig[_DYN_SCHEDULE_FETCH_TIMEO1 /* @min:%2escheduleFetchTimeout */];\r\n _fetchFn = _getFetchFnInterface();\r\n _retryCnt = 0;\r\n // NOT support cfgURL change to avoid mutiple fetch calls\r\n if (_cfgUrl && !_blkCdnCfg) {\r\n _fetchFn && _fetchFn(_cfgUrl, _onFetchComplete, _broadcastChanges);\r\n }\r\n }\r\n function _setCfg(config, isAutoSync) {\r\n if (config) {\r\n _mainConfig = config;\r\n if (!!isAutoSync && !_paused) {\r\n return _sendCfgsyncEvents();\r\n }\r\n if (_receiveChanges && !_paused) {\r\n _self.core.updateCfg(config);\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n function _eventOff() {\r\n try {\r\n var global_1 = getGlobal();\r\n if (global_1) {\r\n eventOff(global_1, null, null, _evtNamespace);\r\n }\r\n }\r\n catch (e) {\r\n // eslint-disable-next-line no-empty\r\n }\r\n }\r\n function _sendCfgsyncEvents(customDetails) {\r\n try {\r\n if (!!_overrideSyncFn && isFunction(_overrideSyncFn)) {\r\n return _overrideSyncFn(_mainConfig, customDetails);\r\n }\r\n return sendCustomEvent(_evtName, _mainConfig, customDetails);\r\n }\r\n catch (e) {\r\n // eslint-disable-next-line no-empty\r\n }\r\n return false;\r\n }\r\n function _updateEventListenerName(name) {\r\n try {\r\n _eventOff();\r\n if (name) {\r\n _evtName = name;\r\n _addEventListener();\r\n }\r\n return true;\r\n }\r\n catch (e) {\r\n // eslint-disable-next-line no-empty\r\n }\r\n return false;\r\n }\r\n function _getFetchFnInterface() {\r\n var _fetchFn = _overrideFetchFn;\r\n if (isNullOrUndefined(_fetchFn)) {\r\n if (isFetchSupported()) {\r\n _fetchFn = _fetchSender;\r\n }\r\n else if (isXhrSupported()) {\r\n _fetchFn = _xhrSender;\r\n }\r\n }\r\n return _fetchFn;\r\n }\r\n function _fetchSender(url, oncomplete, isAutoSync) {\r\n var global = getGlobal();\r\n var fetchFn = (global && global.fetch) || null;\r\n if (url && fetchFn && isFunction(fetchFn)) {\r\n try {\r\n var init = {\r\n method: STR_GET_METHOD\r\n };\r\n var request = new Request(url, init);\r\n doAwaitResponse(fetch(request), function (result) {\r\n var response = result.value;\r\n if (!result.rejected) {\r\n if (response.ok) {\r\n doAwaitResponse(response.text(), function (res) {\r\n _doOnComplete(oncomplete, response.status, res.value, isAutoSync);\r\n });\r\n }\r\n else {\r\n _doOnComplete(oncomplete, response.status, null, isAutoSync);\r\n }\r\n }\r\n else {\r\n _doOnComplete(oncomplete, 400);\r\n }\r\n });\r\n }\r\n catch (e) {\r\n // eslint-disable-next-line no-empty\r\n }\r\n }\r\n }\r\n function _xhrSender(url, oncomplete, isAutoSync) {\r\n try {\r\n var xhr_1 = new XMLHttpRequest();\r\n xhr_1.open(STR_GET_METHOD, url);\r\n xhr_1.onreadystatechange = function () {\r\n if (xhr_1.readyState === XMLHttpRequest.DONE) {\r\n _doOnComplete(oncomplete, xhr_1.status, xhr_1.responseText, isAutoSync);\r\n }\r\n };\r\n xhr_1.onerror = function () {\r\n _doOnComplete(oncomplete, 400);\r\n };\r\n xhr_1.ontimeout = function () {\r\n _doOnComplete(oncomplete, 400);\r\n };\r\n xhr_1.send();\r\n }\r\n catch (e) {\r\n // eslint-disable-next-line no-empty\r\n }\r\n }\r\n function _onFetchComplete(status, response, isAutoSync) {\r\n try {\r\n if (status >= 200 && status < 400 && response) {\r\n _retryCnt = 0; // any successful response will reset retry count to 0\r\n var JSON_1 = getJSON();\r\n if (JSON_1) {\r\n var cdnCfg = JSON_1.parse(response); //comments are not allowed\r\n var cfg = applyCdnfeatureCfg(cdnCfg, _self.core);\r\n var newCfg = cfg && isPlainObject(cfg) && _replaceTartgetByKeys(cfg);\r\n newCfg && _setCfg(newCfg, isAutoSync);\r\n //cfg && _setCfg(cfg, isAutoSync);\r\n }\r\n }\r\n else {\r\n _retryCnt++;\r\n }\r\n if (_retryCnt < 3) {\r\n _setupTimer();\r\n }\r\n }\r\n catch (e) {\r\n // eslint-disable-next-line no-empty\r\n }\r\n }\r\n function _doOnComplete(oncomplete, status, response, isAutoSync) {\r\n try {\r\n oncomplete(status, response, isAutoSync);\r\n }\r\n catch (e) {\r\n // eslint-disable-next-line no-empty\r\n }\r\n }\r\n function _addEventListener() {\r\n if (_receiveChanges) {\r\n var global_2 = getGlobal();\r\n if (global_2) {\r\n try {\r\n eventOn(global_2, _evtName, function (event) {\r\n // TODO: add more validation here\r\n // may include a \"name\" or some other features to check\r\n var cfgEvent = event && event.detail;\r\n if (_onCfgChangeReceive && cfgEvent) {\r\n _onCfgChangeReceive(cfgEvent);\r\n }\r\n else {\r\n var cfg = cfgEvent && cfgEvent.cfg;\r\n var newCfg = cfg && isPlainObject(cfg) && _replaceTartgetByKeys(cfg);\r\n newCfg && _setCfg(newCfg);\r\n }\r\n }, _evtNamespace, true);\r\n }\r\n catch (e) {\r\n // eslint-disable-next-line no-empty\r\n }\r\n }\r\n }\r\n }\r\n // 4 levels\r\n function _replaceTartgetByKeys(cfg, level) {\r\n var _cfg = null;\r\n try {\r\n if (cfg) {\r\n _cfg = replaceByNonOverrideCfg(cfg, _nonOverrideConfigs, 0, 5);\r\n }\r\n }\r\n catch (e) {\r\n // eslint-disable-next-line no-empty\r\n }\r\n return _cfg;\r\n }\r\n /**\r\n * Sets up the timer which triggers fetching cdn every 30mins after inital call\r\n */\r\n function _setupTimer() {\r\n if (!_timeoutHandle && _fetchTimeout) {\r\n _timeoutHandle = scheduleTimeout(function () {\r\n _timeoutHandle = null;\r\n _fetchFn(_cfgUrl, _onFetchComplete, _broadcastChanges);\r\n }, _fetchTimeout);\r\n _timeoutHandle.unref();\r\n }\r\n }\r\n function _clearScheduledTimer() {\r\n _timeoutHandle && _timeoutHandle.cancel();\r\n _timeoutHandle = null;\r\n _retryCnt = 0;\r\n }\r\n _self.processTelemetry = function (env, itemCtx) {\r\n _self.processNext(env, itemCtx);\r\n };\r\n });\r\n return _this;\r\n }\r\n CfgSyncPlugin.prototype.initialize = function (config, core, extensions, pluginChain) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n /**\r\n * Get current configs of current instance.\r\n * @param config - current configs\r\n */\r\n CfgSyncPlugin.prototype.getCfg = function () {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n return null;\r\n };\r\n /**\r\n * Manually set configs of current instance.\r\n * @param config - new configs\r\n */\r\n CfgSyncPlugin.prototype.setCfg = function (config) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n return null;\r\n };\r\n /**\r\n * Manually broadcast configs of current instance to all other instances.\r\n * @param customDetails - additional details should also be sent out to other instances\r\n */\r\n CfgSyncPlugin.prototype.sync = function (customDetails) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n return null;\r\n };\r\n /**\r\n * Manually update event name.\r\n * If current instance is the main instance, then following config changes will be sent out under this new event name.\r\n * If current instance is listener instances, it will listen to event details under this new name.\r\n * @param eventName - new event name\r\n */\r\n CfgSyncPlugin.prototype.updateEventListenerName = function (eventName) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n return null;\r\n };\r\n /**\r\n * Pause the sending/receiving of events\r\n */\r\n CfgSyncPlugin.prototype.pause = function () {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n /**\r\n * Resume the sending/receiving of events\r\n */\r\n CfgSyncPlugin.prototype.resume = function () {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n // /**\r\n // * Add Part A fields to the event\r\n // * @param event - The event that needs to be processed\r\n // */\r\n CfgSyncPlugin.prototype.processTelemetry = function (event, itemCtx) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n return CfgSyncPlugin;\r\n}(BaseTelemetryPlugin));\r\nexport { CfgSyncPlugin };\r\n//# sourceMappingURL=CfgSyncPlugin.js.map","import { arrForEach, createUniqueNamespace, eventOff, eventOn, getDocument, getNavigator, getWindow, isNullOrUndefined, isUndefined, mergeEvtNamespace } from \"@microsoft/applicationinsights-core-js\";\r\nimport { _DYN_PUSH } from \"./__DynamicConstants\";\r\nfunction _disableEvents(target, evtNamespace) {\r\n eventOff(target, null, null, evtNamespace);\r\n}\r\n/**\r\n * Create a new OfflineListener instance to monitor browser online / offline events\r\n * @param parentEvtNamespace - The parent event namespace to append to any specific events for this instance\r\n */\r\nexport function createOfflineListener(parentEvtNamespace) {\r\n var _document = getDocument();\r\n var _navigator = getNavigator(); // Gets the window.navigator or workerNavigator depending on the global\r\n var _isListening = false;\r\n var listenerList = [];\r\n // Set the initial state\r\n // rState is changed by the browser, both via events and when we check the navigator.onLine property\r\n var rState = 1 /* eOfflineValue.Online */;\r\n if (_navigator && !isNullOrUndefined(_navigator.onLine) && !_navigator.onLine) { // navigator.onLine is undefined in react-native\r\n rState = 2 /* eOfflineValue.Offline */;\r\n }\r\n // ustate is changed by the user calling setOnlineState\r\n var uState = 0 /* eOfflineValue.Unknown */;\r\n // current state would be updated each time rState or uState is changed\r\n // it is a resolved value of rState and uState\r\n var _currentState = calCurrentState();\r\n var _evtNamespace = mergeEvtNamespace(createUniqueNamespace(\"OfflineListener\"), parentEvtNamespace);\r\n try {\r\n if (_enableEvents(getWindow())) {\r\n _isListening = true;\r\n }\r\n if (_document) {\r\n // Also attach to the document.body or document\r\n var target = _document.body || _document;\r\n if (target.ononline) {\r\n if (_enableEvents(target)) {\r\n _isListening = true;\r\n }\r\n }\r\n }\r\n }\r\n catch (e) {\r\n // this makes react-native less angry\r\n _isListening = false;\r\n }\r\n function _enableEvents(target) {\r\n var enabled = false;\r\n if (target) {\r\n enabled = eventOn(target, \"online\", _setOnline, _evtNamespace);\r\n if (enabled) {\r\n eventOn(target, \"offline\", _setOffline, _evtNamespace);\r\n }\r\n }\r\n return enabled;\r\n }\r\n function _isOnline() {\r\n return _currentState;\r\n }\r\n function calCurrentState() {\r\n if (uState === 2 /* eOfflineValue.Offline */ || rState === 2 /* eOfflineValue.Offline */) {\r\n return false;\r\n }\r\n return true; // if both unknown, then we assume the network is good\r\n }\r\n function listnerNoticeCheck() {\r\n // we were offline and are now online or we were online and now offline\r\n var newState = calCurrentState();\r\n if (_currentState !== newState) {\r\n _currentState = newState; // use the resolved state to update\r\n // send all the callbacks with the current state\r\n arrForEach(listenerList, function (callback) {\r\n var offlineState = {\r\n isOnline: _currentState,\r\n rState: rState,\r\n uState: uState\r\n };\r\n try {\r\n callback(offlineState);\r\n }\r\n catch (e) {\r\n // Do nothing, just making sure we run all of the callbacks\r\n }\r\n });\r\n }\r\n }\r\n function setOnlineState(newState) {\r\n uState = newState;\r\n listnerNoticeCheck();\r\n }\r\n function _setOnline() {\r\n rState = 1 /* eOfflineValue.Online */;\r\n listnerNoticeCheck();\r\n }\r\n function _setOffline() {\r\n rState = 2 /* eOfflineValue.Offline */;\r\n listnerNoticeCheck();\r\n }\r\n function _unload() {\r\n var win = getWindow();\r\n if (win && _isListening) {\r\n _disableEvents(win, _evtNamespace);\r\n if (_document) {\r\n // Also attach to the document.body or document\r\n var target = _document.body || _document;\r\n if (!isUndefined(target.ononline)) {\r\n _disableEvents(target, _evtNamespace);\r\n }\r\n }\r\n _isListening = false;\r\n }\r\n }\r\n function addListener(callback) {\r\n listenerList[_DYN_PUSH /* @min:%2epush */](callback);\r\n // Define rm as an instance of IUnloadHook\r\n return {\r\n rm: function () {\r\n var index = listenerList.indexOf(callback);\r\n if (index > -1) {\r\n return listenerList.splice(index, 1);\r\n }\r\n else {\r\n return;\r\n }\r\n }\r\n };\r\n }\r\n return {\r\n isOnline: _isOnline,\r\n isListening: function () { return _isListening; },\r\n unload: _unload,\r\n addListener: addListener,\r\n setOnlineState: setOnlineState\r\n };\r\n}\r\n//# sourceMappingURL=Offline.js.map","import { createEnumStyle } from \"./EnumHelperFuncs\";\r\nexport var ActiveStatus = createEnumStyle({\r\n NONE: 0 /* eActiveStatus.NONE */,\r\n PENDING: 3 /* eActiveStatus.PENDING */,\r\n INACTIVE: 1 /* eActiveStatus.INACTIVE */,\r\n ACTIVE: 2 /* eActiveStatus.ACTIVE */\r\n});\r\n//# sourceMappingURL=InitActiveStatusEnum.js.map","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\nexport var ChannelControllerPriority = 500;\r\nexport var DisabledPropertyName = \"Microsoft_ApplicationInsights_BypassAjaxInstrumentation\";\r\n// export const SampleRate = \"sampleRate\";\r\n// export const ProcessLegacy = \"ProcessLegacy\";\r\n// export const HttpMethod = \"http.method\";\r\n// export const DEFAULT_BREEZE_ENDPOINT = \"https://dc.services.visualstudio.com\";\r\n// export const DEFAULT_BREEZE_PATH = \"/v2/track\";\r\n// export const strNotSpecified = \"not_specified\";\r\n// export const strIkey = \"iKey\";\r\n//# sourceMappingURL=Constants.js.map","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\nimport dynamicProto from \"@microsoft/dynamicproto-js\";\r\nimport { createPromise, doAwaitResponse } from \"@nevware21/ts-async\";\r\nimport { arrForEach, dumpObj, getNavigator, getWindow, isFunction, objKeys } from \"@nevware21/ts-utils\";\r\nimport { _DYN_DATA, _DYN_HEADERS, _DYN_INITIALIZE, _DYN_LENGTH, _DYN_MESSAGE, _DYN_PROTOCOL, _DYN_REPLACE, _DYN_SEND_POST, _DYN_SET_REQUEST_HEADER, _DYN_STATUS, _DYN_TIMEOUT, _DYN_TO_LOWER_CASE, _DYN_URL_STRING, _DYN_VALUE, _DYN__DO_TEARDOWN } from \"../__DynamicConstants\";\r\nimport { DisabledPropertyName } from \"./Constants\";\r\nimport { _throwInternal, _warnToConsole } from \"./DiagnosticLogger\";\r\nimport { getLocation, isBeaconsSupported, isFetchSupported, isXhrSupported, useXDomainRequest } from \"./EnvUtils\";\r\nimport { _getAllResponseHeaders, formatErrorMessageXdr, formatErrorMessageXhr, getResponseText, openXhr } from \"./HelperFuncs\";\r\nvar STR_EMPTY = \"\";\r\nvar STR_NO_RESPONSE_BODY = \"NoResponseBody\";\r\nvar _noResponseQs = \"&\" + STR_NO_RESPONSE_BODY + \"=true\";\r\nvar STR_POST_METHOD = \"POST\";\r\n/**\r\n * This Internal component\r\n * Manager SendPost functions\r\n * SendPostManger\r\n * @internal for internal use only\r\n */\r\nvar SenderPostManager = /** @class */ (function () {\r\n function SenderPostManager() {\r\n var _syncFetchPayload = 0; // Keep track of the outstanding sync fetch payload total (as sync fetch has limits)\r\n var _enableSendPromise;\r\n var _isInitialized;\r\n var _diagLog;\r\n var _isOneDs;\r\n var _onCompleteFuncs;\r\n var _disableCredentials;\r\n var _fetchCredentials;\r\n var _fallbackInst;\r\n var _disableXhr;\r\n var _disableBeacon;\r\n var _disableBeaconSync;\r\n var _disableFetchKeepAlive;\r\n var _addNoResponse;\r\n var _timeoutWrapper;\r\n dynamicProto(SenderPostManager, this, function (_self, _base) {\r\n var _sendCredentials = true; // for 1ds\r\n _initDefaults();\r\n _self[_DYN_INITIALIZE /* @min:%2einitialize */] = function (config, diagLog) {\r\n _diagLog = diagLog;\r\n if (_isInitialized) {\r\n _throwInternal(_diagLog, 1 /* eLoggingSeverity.CRITICAL */, 28 /* _eInternalMessageId.SenderNotInitialized */, \"Sender is already initialized\");\r\n }\r\n _self.SetConfig(config);\r\n _isInitialized = true;\r\n };\r\n _self[\"_getDbgPlgTargets\"] = function () {\r\n return [_isInitialized, _isOneDs, _disableCredentials, _enableSendPromise];\r\n };\r\n // This componet might get its config from sender, offline sender, 1ds post\r\n // so set this function to mock dynamic changes\r\n _self.SetConfig = function (config) {\r\n try {\r\n _onCompleteFuncs = config.senderOnCompleteCallBack || {};\r\n _disableCredentials = !!config.disableCredentials;\r\n _fetchCredentials = config.fetchCredentials;\r\n _isOneDs = !!config.isOneDs;\r\n _enableSendPromise = !!config.enableSendPromise;\r\n _disableXhr = !!config.disableXhr;\r\n _disableBeacon = !!config.disableBeacon;\r\n _disableBeaconSync = !!config.disableBeaconSync;\r\n _timeoutWrapper = config.timeWrapper;\r\n _addNoResponse = !!config.addNoResponse;\r\n _disableFetchKeepAlive = !!config.disableFetchKeepAlive;\r\n _fallbackInst = { sendPOST: _xhrSender };\r\n if (!_isOneDs) {\r\n _sendCredentials = false; // for appInsights, set it to false always\r\n }\r\n if (_disableCredentials) {\r\n var location_1 = getLocation();\r\n if (location_1 && location_1.protocol && location_1.protocol[_DYN_TO_LOWER_CASE /* @min:%2etoLowerCase */]() === \"file:\") {\r\n // Special case where a local html file fails with a CORS error on Chromium browsers\r\n _sendCredentials = false;\r\n }\r\n }\r\n return true;\r\n }\r\n catch (e) {\r\n // eslint-disable-next-line no-empty\r\n }\r\n return false;\r\n };\r\n _self.getSyncFetchPayload = function () {\r\n return _syncFetchPayload;\r\n };\r\n _self.getSenderInst = function (transports, sync) {\r\n if (transports && transports[_DYN_LENGTH /* @min:%2elength */]) {\r\n return _getSenderInterface(transports, sync);\r\n }\r\n return null;\r\n };\r\n _self.getFallbackInst = function () {\r\n return _fallbackInst;\r\n };\r\n _self[_DYN__DO_TEARDOWN /* @min:%2e_doTeardown */] = function (unloadCtx, unloadState) {\r\n _initDefaults();\r\n };\r\n /**\r\n * success handler\r\n */\r\n function _onSuccess(res, onComplete) {\r\n _doOnComplete(onComplete, 200, {}, res);\r\n }\r\n /**\r\n * error handler\r\n */\r\n function _onError(message, onComplete) {\r\n _throwInternal(_diagLog, 2 /* eLoggingSeverity.WARNING */, 26 /* _eInternalMessageId.OnError */, \"Failed to send telemetry.\", { message: message });\r\n _doOnComplete(onComplete, 400, {});\r\n }\r\n function _onNoPayloadUrl(onComplete) {\r\n _onError(\"No endpoint url is provided for the batch\", onComplete);\r\n }\r\n function _getSenderInterface(transports, syncSupport) {\r\n var _a;\r\n var transportType = 0 /* TransportType.NotSet */;\r\n var sendPostFunc = null;\r\n var lp = 0;\r\n while (sendPostFunc == null && lp < transports[_DYN_LENGTH /* @min:%2elength */]) {\r\n transportType = transports[lp];\r\n if (!_disableXhr && transportType === 1 /* TransportType.Xhr */) {\r\n if (useXDomainRequest()) {\r\n // IE 8 and 9\r\n sendPostFunc = _xdrSender;\r\n }\r\n else if (isXhrSupported()) {\r\n sendPostFunc = _xhrSender;\r\n }\r\n }\r\n else if (transportType === 2 /* TransportType.Fetch */ && isFetchSupported(syncSupport) && (!syncSupport || !_disableFetchKeepAlive)) {\r\n sendPostFunc = _doFetchSender;\r\n }\r\n else if (transportType === 3 /* TransportType.Beacon */ && isBeaconsSupported() && (syncSupport ? !_disableBeaconSync : !_disableBeacon)) {\r\n sendPostFunc = _beaconSender;\r\n }\r\n lp++;\r\n }\r\n if (sendPostFunc) {\r\n return _a = {\r\n _transport: transportType,\r\n _isSync: syncSupport\r\n },\r\n _a[_DYN_SEND_POST /* @min:sendPOST */] = sendPostFunc,\r\n _a;\r\n }\r\n return null;\r\n }\r\n function _doOnComplete(oncomplete, status, headers, response) {\r\n try {\r\n oncomplete && oncomplete(status, headers, response);\r\n }\r\n catch (e) {\r\n // eslint-disable-next-line no-empty\r\n }\r\n }\r\n function _doBeaconSend(payload, oncomplete) {\r\n var nav = getNavigator();\r\n var url = payload[_DYN_URL_STRING /* @min:%2eurlString */];\r\n if (!url) {\r\n _onNoPayloadUrl(oncomplete);\r\n // return true here, because we don't want to retry it with fallback sender\r\n return true;\r\n }\r\n url = payload[_DYN_URL_STRING /* @min:%2eurlString */] + (_addNoResponse ? _noResponseQs : STR_EMPTY);\r\n var data = payload[_DYN_DATA /* @min:%2edata */];\r\n // Chrome only allows CORS-safelisted values for the sendBeacon data argument\r\n // see: https://bugs.chromium.org/p/chromium/issues/detail?id=720283\r\n // Chrome only allows CORS-safelisted values for the sendBeacon data argument\r\n // see: https://bugs.chromium.org/p/chromium/issues/detail?id=720283\r\n var plainTextBatch = _isOneDs ? data : new Blob([data], { type: \"text/plain;charset=UTF-8\" });\r\n // The sendBeacon method returns true if the user agent is able to successfully queue the data for transfer. Otherwise it returns false.\r\n var queued = nav.sendBeacon(url, plainTextBatch);\r\n return queued;\r\n }\r\n /**\r\n * Send Beacon API request\r\n * @param payload - The data payload to be sent.\r\n * @param sync - not used\r\n * Note: Beacon API does not support custom headers and we are not able to get\r\n * appId from the backend for the correct correlation.\r\n */\r\n function _beaconSender(payload, oncomplete, sync) {\r\n var data = payload[_DYN_DATA /* @min:%2edata */];\r\n try {\r\n if (data) {\r\n // The sendBeacon method returns true if the user agent is able to successfully queue the data for transfer. Otherwise it returns false.\r\n if (!_doBeaconSend(payload, oncomplete)) {\r\n var onRetry = _onCompleteFuncs && _onCompleteFuncs.beaconOnRetry;\r\n if (onRetry && isFunction(onRetry)) {\r\n onRetry(payload, oncomplete, _doBeaconSend);\r\n }\r\n else {\r\n _fallbackInst && _fallbackInst[_DYN_SEND_POST /* @min:%2esendPOST */](payload, oncomplete, true);\r\n _throwInternal(_diagLog, 2 /* eLoggingSeverity.WARNING */, 40 /* _eInternalMessageId.TransmissionFailed */, \". \" + \"Failed to send telemetry with Beacon API, retried with normal sender.\");\r\n }\r\n }\r\n else {\r\n // if can send\r\n _onSuccess(STR_EMPTY, oncomplete);\r\n }\r\n }\r\n }\r\n catch (e) {\r\n _isOneDs && _warnToConsole(_diagLog, \"Failed to send telemetry using sendBeacon API. Ex:\" + dumpObj(e));\r\n _doOnComplete(oncomplete, _isOneDs ? 0 : 400, {}, STR_EMPTY);\r\n }\r\n return;\r\n }\r\n /**\r\n * Send XMLHttpRequest\r\n * @param payload - The data payload to be sent.\r\n * @param sync - Indicates if the request should be sent synchronously\r\n */\r\n function _xhrSender(payload, oncomplete, sync) {\r\n //let internalPayload = payload as IInternalPayloadData;\r\n var thePromise;\r\n var resolveFunc;\r\n var rejectFunc;\r\n var headers = payload[_DYN_HEADERS /* @min:%2eheaders */] || {};\r\n if (!sync && _enableSendPromise) {\r\n thePromise = createPromise(function (resolve, reject) {\r\n resolveFunc = resolve;\r\n rejectFunc = reject;\r\n });\r\n }\r\n if (_isOneDs && sync && payload.disableXhrSync) {\r\n sync = false;\r\n }\r\n //const xhr = new XMLHttpRequest();\r\n var endPointUrl = payload[_DYN_URL_STRING /* @min:%2eurlString */];\r\n if (!endPointUrl) {\r\n _onNoPayloadUrl(oncomplete);\r\n resolveFunc && resolveFunc(false);\r\n return;\r\n }\r\n var xhr = openXhr(STR_POST_METHOD, endPointUrl, _sendCredentials, true, sync, payload[_DYN_TIMEOUT /* @min:%2etimeout */]);\r\n if (!_isOneDs) {\r\n // application/json should NOT add to 1ds post by default\r\n xhr[_DYN_SET_REQUEST_HEADER /* @min:%2esetRequestHeader */](\"Content-type\", \"application/json\");\r\n }\r\n arrForEach(objKeys(headers), function (headerName) {\r\n xhr[_DYN_SET_REQUEST_HEADER /* @min:%2esetRequestHeader */](headerName, headers[headerName]);\r\n });\r\n xhr.onreadystatechange = function () {\r\n if (!_isOneDs) {\r\n _doOnReadyFunc(xhr);\r\n if (xhr.readyState === 4) {\r\n resolveFunc && resolveFunc(true);\r\n }\r\n }\r\n };\r\n xhr.onload = function () {\r\n if (_isOneDs) {\r\n _doOnReadyFunc(xhr);\r\n }\r\n };\r\n function _doOnReadyFunc(xhr) {\r\n var onReadyFunc = _onCompleteFuncs && _onCompleteFuncs.xhrOnComplete;\r\n var onReadyFuncExist = onReadyFunc && isFunction(onReadyFunc);\r\n if (onReadyFuncExist) {\r\n onReadyFunc(xhr, oncomplete, payload);\r\n }\r\n else {\r\n var response = getResponseText(xhr);\r\n _doOnComplete(oncomplete, xhr[_DYN_STATUS /* @min:%2estatus */], _getAllResponseHeaders(xhr, _isOneDs), response);\r\n }\r\n }\r\n xhr.onerror = function (event) {\r\n _doOnComplete(oncomplete, _isOneDs ? xhr[_DYN_STATUS /* @min:%2estatus */] : 400, _getAllResponseHeaders(xhr, _isOneDs), _isOneDs ? STR_EMPTY : formatErrorMessageXhr(xhr));\r\n rejectFunc && rejectFunc(event);\r\n };\r\n xhr.ontimeout = function () {\r\n _doOnComplete(oncomplete, _isOneDs ? xhr[_DYN_STATUS /* @min:%2estatus */] : 500, _getAllResponseHeaders(xhr, _isOneDs), _isOneDs ? STR_EMPTY : formatErrorMessageXhr(xhr));\r\n resolveFunc && resolveFunc(false);\r\n };\r\n xhr.send(payload[_DYN_DATA /* @min:%2edata */]);\r\n return thePromise;\r\n }\r\n /**\r\n * Send fetch API request\r\n * @param payload - The data payload to be sent.\r\n * @param sync - For fetch this identifies whether we are \"unloading\" (false) or a normal request\r\n */\r\n function _doFetchSender(payload, oncomplete, sync) {\r\n var _a;\r\n var endPointUrl = payload[_DYN_URL_STRING /* @min:%2eurlString */];\r\n var batch = payload[_DYN_DATA /* @min:%2edata */];\r\n var plainTextBatch = _isOneDs ? batch : new Blob([batch], { type: \"application/json\" });\r\n var thePromise;\r\n var resolveFunc;\r\n var rejectFunc;\r\n var requestHeaders = new Headers();\r\n var batchLength = batch[_DYN_LENGTH /* @min:%2elength */];\r\n var ignoreResponse = false;\r\n var responseHandled = false;\r\n var headers = payload[_DYN_HEADERS /* @min:%2eheaders */] || {};\r\n //TODO: handle time out for 1ds\r\n var init = (_a = {\r\n method: STR_POST_METHOD,\r\n body: plainTextBatch\r\n },\r\n _a[DisabledPropertyName] = true // Mark so we don't attempt to track this request\r\n ,\r\n _a);\r\n // Only add headers if there are headers to add, due to issue with some polyfills\r\n if (payload.headers && objKeys(payload.headers)[_DYN_LENGTH /* @min:%2elength */] > 0) {\r\n arrForEach(objKeys(headers), function (headerName) {\r\n requestHeaders.append(headerName, headers[headerName]);\r\n });\r\n init[_DYN_HEADERS /* @min:%2eheaders */] = requestHeaders;\r\n }\r\n if (_fetchCredentials) { // if user passed in this value via post channel (1ds), then use it\r\n init.credentials = _fetchCredentials;\r\n }\r\n else if (_sendCredentials && _isOneDs) {\r\n // for 1ds, Don't send credentials when URL is file://\r\n init.credentials = \"include\";\r\n }\r\n if (sync) {\r\n init.keepalive = true;\r\n _syncFetchPayload += batchLength;\r\n if (_isOneDs) {\r\n if (payload[\"_sendReason\"] === 2 /* SendRequestReason.Unload */) {\r\n // As a sync request (during unload), it is unlikely that we will get a chance to process the response so\r\n // just like beacon send assume that the events have been accepted and processed\r\n ignoreResponse = true;\r\n if (_addNoResponse) {\r\n endPointUrl += _noResponseQs;\r\n }\r\n }\r\n }\r\n else {\r\n // for appinsights, set to true for all sync request\r\n ignoreResponse = true;\r\n }\r\n }\r\n var request = new Request(endPointUrl, init);\r\n try {\r\n // Also try and tag the request (just in case the value in init is not copied over)\r\n request[DisabledPropertyName] = true;\r\n }\r\n catch (e) {\r\n // If the environment has locked down the XMLHttpRequest (preventExtensions and/or freeze), this would\r\n // cause the request to fail and we no telemetry would be sent\r\n }\r\n if (!sync && _enableSendPromise) {\r\n thePromise = createPromise(function (resolve, reject) {\r\n resolveFunc = resolve;\r\n rejectFunc = reject;\r\n });\r\n }\r\n if (!endPointUrl) {\r\n _onNoPayloadUrl(oncomplete);\r\n resolveFunc && resolveFunc(false);\r\n return;\r\n }\r\n function _handleError(res) {\r\n // In case there is an error in the request. Set the status to 0 for 1ds and 400 for appInsights\r\n // so that the events can be retried later.\r\n _doOnComplete(oncomplete, _isOneDs ? 0 : 400, {}, _isOneDs ? STR_EMPTY : res);\r\n }\r\n function _onFetchComplete(response, payload, value) {\r\n var status = response[_DYN_STATUS /* @min:%2estatus */];\r\n var onCompleteFunc = _onCompleteFuncs.fetchOnComplete;\r\n if (onCompleteFunc && isFunction(onCompleteFunc)) {\r\n onCompleteFunc(response, oncomplete, value || STR_EMPTY, payload);\r\n }\r\n else {\r\n _doOnComplete(oncomplete, status, {}, value || STR_EMPTY);\r\n }\r\n }\r\n try {\r\n doAwaitResponse(fetch(_isOneDs ? endPointUrl : request, _isOneDs ? init : null), function (result) {\r\n if (sync) {\r\n _syncFetchPayload -= batchLength;\r\n batchLength = 0;\r\n }\r\n if (!responseHandled) {\r\n responseHandled = true;\r\n if (!result.rejected) {\r\n var response_1 = result[_DYN_VALUE /* @min:%2evalue */];\r\n try {\r\n /**\r\n * The Promise returned from fetch() won’t reject on HTTP error status even if the response is an HTTP 404 or 500.\r\n * Instead, it will resolve normally (with ok status set to false), and it will only reject on network failure\r\n * or if anything prevented the request from completing.\r\n */\r\n if (!_isOneDs && !response_1.ok) {\r\n // this is for appInsights only\r\n _handleError(response_1.statusText);\r\n resolveFunc && resolveFunc(false);\r\n }\r\n else {\r\n if (_isOneDs && !response_1.body) {\r\n _onFetchComplete(response_1, null, STR_EMPTY);\r\n resolveFunc && resolveFunc(true);\r\n }\r\n else {\r\n doAwaitResponse(response_1.text(), function (resp) {\r\n _onFetchComplete(response_1, payload, resp[_DYN_VALUE /* @min:%2evalue */]);\r\n resolveFunc && resolveFunc(true);\r\n });\r\n }\r\n }\r\n }\r\n catch (e) {\r\n _handleError(dumpObj(e));\r\n rejectFunc && rejectFunc(e);\r\n }\r\n }\r\n else {\r\n _handleError(result.reason && result.reason[_DYN_MESSAGE /* @min:%2emessage */]);\r\n rejectFunc && rejectFunc(result.reason);\r\n }\r\n }\r\n });\r\n }\r\n catch (e) {\r\n if (!responseHandled) {\r\n _handleError(dumpObj(e));\r\n rejectFunc && rejectFunc(e);\r\n }\r\n }\r\n if (ignoreResponse && !responseHandled) {\r\n // Assume success during unload processing as we most likely won't get the response\r\n responseHandled = true;\r\n _doOnComplete(oncomplete, 200, {});\r\n resolveFunc && resolveFunc(true);\r\n }\r\n if (_isOneDs && !responseHandled && payload[_DYN_TIMEOUT /* @min:%2etimeout */] > 0) {\r\n // Simulate timeout\r\n _timeoutWrapper && _timeoutWrapper.set(function () {\r\n if (!responseHandled) {\r\n // Assume a 500 response (which will cause a retry)\r\n responseHandled = true;\r\n _doOnComplete(oncomplete, 500, {});\r\n resolveFunc && resolveFunc(true);\r\n }\r\n }, payload[_DYN_TIMEOUT /* @min:%2etimeout */]);\r\n }\r\n return thePromise;\r\n }\r\n /**\r\n * Send XDomainRequest\r\n * @param payload - The data payload to be sent.\r\n * @param sync - Indicates if the request should be sent synchronously\r\n *\r\n * Note: XDomainRequest does not support sync requests. This 'isAsync' parameter is added\r\n * to maintain consistency with the xhrSender's contract\r\n * Note: XDomainRequest does not support custom headers and we are not able to get\r\n * appId from the backend for the correct correlation.\r\n */\r\n function _xdrSender(payload, oncomplete, sync) {\r\n // It doesn't support custom headers, so no action is taken with current requestHeaders\r\n var _window = getWindow();\r\n var xdr = new XDomainRequest();\r\n var data = payload[_DYN_DATA /* @min:%2edata */];\r\n xdr.onload = function () {\r\n var response = getResponseText(xdr);\r\n var onloadFunc = _onCompleteFuncs && _onCompleteFuncs.xdrOnComplete;\r\n if (onloadFunc && isFunction(onloadFunc)) {\r\n onloadFunc(xdr, oncomplete, payload);\r\n }\r\n else {\r\n _doOnComplete(oncomplete, 200, {}, response);\r\n }\r\n };\r\n xdr.onerror = function () {\r\n _doOnComplete(oncomplete, 400, {}, _isOneDs ? STR_EMPTY : formatErrorMessageXdr(xdr));\r\n };\r\n xdr.ontimeout = function () {\r\n _doOnComplete(oncomplete, 500, {});\r\n };\r\n xdr.onprogress = function () { };\r\n // XDomainRequest requires the same protocol as the hosting page.\r\n // If the protocol doesn't match, we can't send the telemetry :(.\r\n var hostingProtocol = _window && _window.location && _window.location[_DYN_PROTOCOL /* @min:%2eprotocol */] || \"\";\r\n var endpoint = payload[_DYN_URL_STRING /* @min:%2eurlString */];\r\n if (!endpoint) {\r\n _onNoPayloadUrl(oncomplete);\r\n return;\r\n }\r\n if (!_isOneDs && endpoint.lastIndexOf(hostingProtocol, 0) !== 0) {\r\n var msg = \"Cannot send XDomain request. The endpoint URL protocol doesn't match the hosting page protocol.\";\r\n _throwInternal(_diagLog, 2 /* eLoggingSeverity.WARNING */, 40 /* _eInternalMessageId.TransmissionFailed */, \". \" + msg);\r\n _onError(msg, oncomplete);\r\n return;\r\n }\r\n var endpointUrl = _isOneDs ? endpoint : endpoint[_DYN_REPLACE /* @min:%2ereplace */](/^(https?:)/, \"\");\r\n xdr.open(STR_POST_METHOD, endpointUrl);\r\n if (payload[_DYN_TIMEOUT /* @min:%2etimeout */]) {\r\n xdr[_DYN_TIMEOUT /* @min:%2etimeout */] = payload[_DYN_TIMEOUT /* @min:%2etimeout */];\r\n }\r\n xdr.send(data);\r\n if (_isOneDs && sync) {\r\n _timeoutWrapper && _timeoutWrapper.set(function () {\r\n xdr.send(data);\r\n }, 0);\r\n }\r\n else {\r\n xdr.send(data);\r\n }\r\n }\r\n function _initDefaults() {\r\n _syncFetchPayload = 0;\r\n _isInitialized = false;\r\n _enableSendPromise = false;\r\n _diagLog = null;\r\n _isOneDs = null;\r\n _onCompleteFuncs = null;\r\n _disableCredentials = null;\r\n _fetchCredentials = null;\r\n _fallbackInst = null;\r\n _disableXhr = false;\r\n _disableBeacon = false;\r\n _disableBeaconSync = false;\r\n _disableFetchKeepAlive = false;\r\n _addNoResponse = false;\r\n _timeoutWrapper = null;\r\n }\r\n });\r\n }\r\n SenderPostManager.prototype.initialize = function (config, diagLog) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n /**\r\n * Get size of current sync fetch payload\r\n */\r\n SenderPostManager.prototype.getSyncFetchPayload = function () {\r\n // @DynamicProtoStub - DO NOT add any code as this will be removed during packaging\r\n return null;\r\n };\r\n /**\r\n * reset Config\r\n * @returns True if set is successfully\r\n */\r\n SenderPostManager.prototype.SetConfig = function (config) {\r\n // @DynamicProtoStub - DO NOT add any code as this will be removed during packaging\r\n return null;\r\n };\r\n /**\r\n * Get current xhr instance\r\n */\r\n SenderPostManager.prototype.getSenderInst = function (transports, sync) {\r\n // @DynamicProtoStub - DO NOT add any code as this will be removed during packaging\r\n return null;\r\n };\r\n /**\r\n * Get current fallback sender instance\r\n */\r\n SenderPostManager.prototype.getFallbackInst = function () {\r\n // @DynamicProtoStub - DO NOT add any code as this will be removed during packaging\r\n return null;\r\n };\r\n SenderPostManager.prototype._doTeardown = function (unloadCtx, unloadState) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n return SenderPostManager;\r\n}());\r\nexport { SenderPostManager };\r\n//# sourceMappingURL=SenderPostManager.js.map","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\nimport { createPromise, doAwaitResponse } from \"@nevware21/ts-async\";\r\nimport { arrSlice, getLength } from \"@nevware21/ts-utils\";\r\nimport { _DYN_UNLOAD } from \"../__DynamicConstants\";\r\n/**\r\n * Run the unload function of the target object if it exists\r\n * @param target - The target object that contains the unload function\r\n * @param isAsync - The caller identifies whether it is expecting the operation to complete synchronously or asynchronously. Even\r\n * if the caller is not waiting the operation may still be performed asynchronously depending on the component and the reverse is\r\n * also true.\r\n * @returns The result of the target function\r\n */\r\nexport function runTargetUnload(target, isAsync) {\r\n if (target && target[_DYN_UNLOAD /* @min:%2eunload */]) {\r\n return target[_DYN_UNLOAD /* @min:%2eunload */](isAsync);\r\n }\r\n}\r\n/**\r\n * Call the unload function on all targets handling any returned [IPromise](https://nevware21.github.io/ts-async/typedoc/interfaces/IPromise.html)\r\n * / Promise before calling the next targets unload\r\n * @param targets - An array of the targets to unload\r\n * @param isAsync - The caller identifies whether it is expecting the operations to complete synchronously or asynchronously. Even\r\n * if the caller is not waiting the operation may still be performed asynchronously depending on the component and the reverse is\r\n * also true.\r\n * @param done - Optional callback function to call once all of the unload functions have been called.\r\n */\r\nexport function doUnloadAll(targets, isAsync, done) {\r\n var result;\r\n if (!done) {\r\n result = createPromise(function (resolved) {\r\n done = resolved;\r\n });\r\n }\r\n if (targets && getLength(targets) > 0) {\r\n doAwaitResponse(runTargetUnload(targets[0], isAsync), function () {\r\n doUnloadAll(arrSlice(targets, 1), isAsync, done);\r\n });\r\n }\r\n else {\r\n done();\r\n }\r\n return result;\r\n}\r\n//# sourceMappingURL=AsyncUtils.js.map","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\nimport { dumpObj } from \"@nevware21/ts-utils\";\r\nimport { _DYN_ITEMS_RECEIVED, _DYN_LENGTH, _DYN_NAME } from \"../__DynamicConstants\";\r\nimport { _throwInternal } from \"./DiagnosticLogger\";\r\nimport { getJSON } from \"./EnvUtils\";\r\n/**\r\n * Parses the response from the backend.\r\n * @param response - XMLHttpRequest or XDomainRequest response\r\n */\r\nexport function parseResponse(response, diagLog) {\r\n try {\r\n if (response && response !== \"\") {\r\n var result = getJSON().parse(response);\r\n if (result && result[_DYN_ITEMS_RECEIVED /* @min:%2eitemsReceived */] && result[_DYN_ITEMS_RECEIVED /* @min:%2eitemsReceived */] >= result.itemsAccepted &&\r\n result.itemsReceived - result.itemsAccepted === result.errors[_DYN_LENGTH /* @min:%2elength */]) {\r\n return result;\r\n }\r\n }\r\n }\r\n catch (e) {\r\n _throwInternal(diagLog, 1 /* eLoggingSeverity.CRITICAL */, 43 /* _eInternalMessageId.InvalidBackendResponse */, \"Cannot parse the response. \" + (e[_DYN_NAME /* @min:%2ename */] || dumpObj(e)), {\r\n response: response\r\n });\r\n }\r\n return null;\r\n}\r\n//# sourceMappingURL=ResponseHelpers.js.map","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\nimport { __extends } from \"tslib\";\r\nimport { createClassFromInterface } from \"@microsoft/applicationinsights-core-js\";\r\nfunction _aiNameFunc(baseName) {\r\n var aiName = \"ai.\" + baseName + \".\";\r\n return function (name) {\r\n return aiName + name;\r\n };\r\n}\r\nvar _aiApplication = _aiNameFunc(\"application\");\r\nvar _aiDevice = _aiNameFunc(\"device\");\r\nvar _aiLocation = _aiNameFunc(\"location\");\r\nvar _aiOperation = _aiNameFunc(\"operation\");\r\nvar _aiSession = _aiNameFunc(\"session\");\r\nvar _aiUser = _aiNameFunc(\"user\");\r\nvar _aiCloud = _aiNameFunc(\"cloud\");\r\nvar _aiInternal = _aiNameFunc(\"internal\");\r\nvar ContextTagKeys = /** @class */ (function (_super) {\r\n __extends(ContextTagKeys, _super);\r\n function ContextTagKeys() {\r\n return _super.call(this) || this;\r\n }\r\n return ContextTagKeys;\r\n}(createClassFromInterface({\r\n applicationVersion: _aiApplication(\"ver\"),\r\n applicationBuild: _aiApplication(\"build\"),\r\n applicationTypeId: _aiApplication(\"typeId\"),\r\n applicationId: _aiApplication(\"applicationId\"),\r\n applicationLayer: _aiApplication(\"layer\"),\r\n deviceId: _aiDevice(\"id\"),\r\n deviceIp: _aiDevice(\"ip\"),\r\n deviceLanguage: _aiDevice(\"language\"),\r\n deviceLocale: _aiDevice(\"locale\"),\r\n deviceModel: _aiDevice(\"model\"),\r\n deviceFriendlyName: _aiDevice(\"friendlyName\"),\r\n deviceNetwork: _aiDevice(\"network\"),\r\n deviceNetworkName: _aiDevice(\"networkName\"),\r\n deviceOEMName: _aiDevice(\"oemName\"),\r\n deviceOS: _aiDevice(\"os\"),\r\n deviceOSVersion: _aiDevice(\"osVersion\"),\r\n deviceRoleInstance: _aiDevice(\"roleInstance\"),\r\n deviceRoleName: _aiDevice(\"roleName\"),\r\n deviceScreenResolution: _aiDevice(\"screenResolution\"),\r\n deviceType: _aiDevice(\"type\"),\r\n deviceMachineName: _aiDevice(\"machineName\"),\r\n deviceVMName: _aiDevice(\"vmName\"),\r\n deviceBrowser: _aiDevice(\"browser\"),\r\n deviceBrowserVersion: _aiDevice(\"browserVersion\"),\r\n locationIp: _aiLocation(\"ip\"),\r\n locationCountry: _aiLocation(\"country\"),\r\n locationProvince: _aiLocation(\"province\"),\r\n locationCity: _aiLocation(\"city\"),\r\n operationId: _aiOperation(\"id\"),\r\n operationName: _aiOperation(\"name\"),\r\n operationParentId: _aiOperation(\"parentId\"),\r\n operationRootId: _aiOperation(\"rootId\"),\r\n operationSyntheticSource: _aiOperation(\"syntheticSource\"),\r\n operationCorrelationVector: _aiOperation(\"correlationVector\"),\r\n sessionId: _aiSession(\"id\"),\r\n sessionIsFirst: _aiSession(\"isFirst\"),\r\n sessionIsNew: _aiSession(\"isNew\"),\r\n userAccountAcquisitionDate: _aiUser(\"accountAcquisitionDate\"),\r\n userAccountId: _aiUser(\"accountId\"),\r\n userAgent: _aiUser(\"userAgent\"),\r\n userId: _aiUser(\"id\"),\r\n userStoreRegion: _aiUser(\"storeRegion\"),\r\n userAuthUserId: _aiUser(\"authUserId\"),\r\n userAnonymousUserAcquisitionDate: _aiUser(\"anonUserAcquisitionDate\"),\r\n userAuthenticatedUserAcquisitionDate: _aiUser(\"authUserAcquisitionDate\"),\r\n cloudName: _aiCloud(\"name\"),\r\n cloudRole: _aiCloud(\"role\"),\r\n cloudRoleVer: _aiCloud(\"roleVer\"),\r\n cloudRoleInstance: _aiCloud(\"roleInstance\"),\r\n cloudEnvironment: _aiCloud(\"environment\"),\r\n cloudLocation: _aiCloud(\"location\"),\r\n cloudDeploymentUnit: _aiCloud(\"deploymentUnit\"),\r\n internalNodeName: _aiInternal(\"nodeName\"),\r\n internalSdkVersion: _aiInternal(\"sdkVersion\"),\r\n internalAgentVersion: _aiInternal(\"agentVersion\"),\r\n internalSnippet: _aiInternal(\"snippet\"),\r\n internalSdkSrc: _aiInternal(\"sdkSrc\")\r\n})));\r\nexport { ContextTagKeys };\r\n//# sourceMappingURL=ContextTagKeys.js.map","import { ContextTagKeys } from \"./Contracts/ContextTagKeys\";\r\nexport var Extensions = {\r\n UserExt: \"user\",\r\n DeviceExt: \"device\",\r\n TraceExt: \"trace\",\r\n WebExt: \"web\",\r\n AppExt: \"app\",\r\n OSExt: \"os\",\r\n SessionExt: \"ses\",\r\n SDKExt: \"sdk\"\r\n};\r\nexport var CtxTagKeys = new ContextTagKeys();\r\n//# sourceMappingURL=PartAExtensions.js.map","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\nimport { toISOString } from \"@microsoft/applicationinsights-core-js\";\r\nimport { strNotSpecified } from \"../../Constants\";\r\nimport { _DYN_AI_DATA_CONTRACT, _DYN_NAME } from \"../../__DynamicConstants\";\r\nimport { dataSanitizeString } from \"./DataSanitizer\";\r\nvar Envelope = /** @class */ (function () {\r\n /**\r\n * Constructs a new instance of telemetry data.\r\n */\r\n function Envelope(logger, data, name) {\r\n var _this = this;\r\n var _self = this;\r\n _self.ver = 1;\r\n _self.sampleRate = 100.0;\r\n _self.tags = {};\r\n _self[_DYN_NAME /* @min:%2ename */] = dataSanitizeString(logger, name) || strNotSpecified;\r\n _self.data = data;\r\n _self.time = toISOString(new Date());\r\n _self[_DYN_AI_DATA_CONTRACT /* @min:%2eaiDataContract */] = {\r\n time: 1 /* FieldType.Required */,\r\n iKey: 1 /* FieldType.Required */,\r\n name: 1 /* FieldType.Required */,\r\n sampleRate: function () {\r\n return (_this.sampleRate === 100) ? 4 /* FieldType.Hidden */ : 1 /* FieldType.Required */;\r\n },\r\n tags: 1 /* FieldType.Required */,\r\n data: 1 /* FieldType.Required */\r\n };\r\n }\r\n return Envelope;\r\n}());\r\nexport { Envelope };\r\n//# sourceMappingURL=Envelope.js.map","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\nvar Data = /** @class */ (function () {\r\n /**\r\n * Constructs a new instance of telemetry data.\r\n */\r\n function Data(baseType, data) {\r\n /**\r\n * The data contract for serializing this object.\r\n */\r\n this.aiDataContract = {\r\n baseType: 1 /* FieldType.Required */,\r\n baseData: 1 /* FieldType.Required */\r\n };\r\n this.baseType = baseType;\r\n this.baseData = data;\r\n }\r\n return Data;\r\n}());\r\nexport { Data };\r\n//# sourceMappingURL=Data.js.map","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\n// ###################################################################################################################################################\r\n// Note: DON'T Export these const from the package as we are still targeting IE/ES5 this will export a mutable variables that someone could change ###\r\n// ###################################################################################################################################################\r\n// Generally you should only put values that are used more than 2 times and then only if not already exposed as a constant (such as SdkCoreNames)\r\n// as when using \"short\" named values from here they will be will be minified smaller than the SdkCoreNames[eSdkCoreNames.xxxx] value.\r\nexport var STR_DURATION = \"duration\";\r\n//# sourceMappingURL=InternalConstants.js.map","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\n// @skip-file-minify\r\n// ##############################################################\r\n// AUTO GENERATED FILE: This file is Auto Generated during build.\r\n// ##############################################################\r\n// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\r\n// Note: DON'T Export these const from the package as we are still targeting ES3 this will export a mutable variables that someone could change!!!\r\n// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\r\nexport var _DYN_TAGS = \"tags\"; // Count: 17\r\nexport var _DYN_DEVICE_TYPE = \"deviceType\"; // Count: 3\r\nexport var _DYN_DATA = \"data\"; // Count: 15\r\nexport var _DYN_NAME = \"name\"; // Count: 8\r\nexport var _DYN_TRACE_ID = \"traceID\"; // Count: 5\r\nexport var _DYN_LENGTH = \"length\"; // Count: 38\r\nexport var _DYN_STRINGIFY = \"stringify\"; // Count: 5\r\nexport var _DYN_MEASUREMENTS = \"measurements\"; // Count: 7\r\nexport var _DYN_DATA_TYPE = \"dataType\"; // Count: 10\r\nexport var _DYN_ENVELOPE_TYPE = \"envelopeType\"; // Count: 7\r\nexport var _DYN_TO_STRING = \"toString\"; // Count: 7\r\nexport var _DYN__GET = \"_get\"; // Count: 5\r\nexport var _DYN_ENQUEUE = \"enqueue\"; // Count: 7\r\nexport var _DYN_COUNT = \"count\"; // Count: 7\r\nexport var _DYN_EVENTS_LIMIT_IN_MEM = \"eventsLimitInMem\"; // Count: 2\r\nexport var _DYN_PUSH = \"push\"; // Count: 9\r\nexport var _DYN_ITEM = \"item\"; // Count: 6\r\nexport var _DYN_EMIT_LINE_DELIMITED_0 = \"emitLineDelimitedJson\"; // Count: 3\r\nexport var _DYN_CLEAR = \"clear\"; // Count: 6\r\nexport var _DYN_CREATE_NEW = \"createNew\"; // Count: 3\r\nexport var _DYN_MARK_AS_SENT = \"markAsSent\"; // Count: 4\r\nexport var _DYN_CLEAR_SENT = \"clearSent\"; // Count: 5\r\nexport var _DYN_BUFFER_OVERRIDE = \"bufferOverride\"; // Count: 3\r\nexport var _DYN__BUFFER__KEY = \"BUFFER_KEY\"; // Count: 5\r\nexport var _DYN__SENT__BUFFER__KEY = \"SENT_BUFFER_KEY\"; // Count: 8\r\nexport var _DYN_CONCAT = \"concat\"; // Count: 6\r\nexport var _DYN__MAX__BUFFER__SIZE = \"MAX_BUFFER_SIZE\"; // Count: 5\r\nexport var _DYN_TRIGGER_SEND = \"triggerSend\"; // Count: 5\r\nexport var _DYN_DIAG_LOG = \"diagLog\"; // Count: 16\r\nexport var _DYN_INITIALIZE = \"initialize\"; // Count: 3\r\nexport var _DYN__SENDER = \"_sender\"; // Count: 5\r\nexport var _DYN_ENDPOINT_URL = \"endpointUrl\"; // Count: 5\r\nexport var _DYN_INSTRUMENTATION_KEY = \"instrumentationKey\"; // Count: 5\r\nexport var _DYN_CUSTOM_HEADERS = \"customHeaders\"; // Count: 3\r\nexport var _DYN_MAX_BATCH_SIZE_IN_BY1 = \"maxBatchSizeInBytes\"; // Count: 2\r\nexport var _DYN_ONUNLOAD_DISABLE_BEA2 = \"onunloadDisableBeacon\"; // Count: 3\r\nexport var _DYN_IS_BEACON_API_DISABL3 = \"isBeaconApiDisabled\"; // Count: 3\r\nexport var _DYN_ALWAYS_USE_XHR_OVERR4 = \"alwaysUseXhrOverride\"; // Count: 2\r\nexport var _DYN_DISABLE_XHR = \"disableXhr\"; // Count: 3\r\nexport var _DYN_ENABLE_SESSION_STORA5 = \"enableSessionStorageBuffer\"; // Count: 2\r\nexport var _DYN__BUFFER = \"_buffer\"; // Count: 9\r\nexport var _DYN_ONUNLOAD_DISABLE_FET6 = \"onunloadDisableFetch\"; // Count: 2\r\nexport var _DYN_DISABLE_SEND_BEACON_7 = \"disableSendBeaconSplit\"; // Count: 2\r\nexport var _DYN_ENABLE_SEND_PROMISE = \"enableSendPromise\"; // Count: 2\r\nexport var _DYN_GET_SENDER_INST = \"getSenderInst\"; // Count: 4\r\nexport var _DYN_UNLOAD_TRANSPORTS = \"unloadTransports\"; // Count: 2\r\nexport var _DYN_CONVERT_UNDEFINED = \"convertUndefined\"; // Count: 2\r\nexport var _DYN_MAX_BATCH_INTERVAL = \"maxBatchInterval\"; // Count: 2\r\nexport var _DYN_SERIALIZE = \"serialize\"; // Count: 4\r\nexport var _DYN__ON_ERROR = \"_onError\"; // Count: 7\r\nexport var _DYN__ON_PARTIAL_SUCCESS = \"_onPartialSuccess\"; // Count: 3\r\nexport var _DYN__ON_SUCCESS = \"_onSuccess\"; // Count: 6\r\nexport var _DYN_ITEMS_RECEIVED = \"itemsReceived\"; // Count: 3\r\nexport var _DYN_ITEMS_ACCEPTED = \"itemsAccepted\"; // Count: 3\r\nexport var _DYN_ORI_PAYLOAD = \"oriPayload\"; // Count: 3\r\nexport var _DYN_BASE_TYPE = \"baseType\"; // Count: 4\r\nexport var _DYN_SAMPLE_RATE = \"sampleRate\"; // Count: 4\r\nexport var _DYN_EVENTS_SEND_REQUEST = \"eventsSendRequest\"; // Count: 2\r\nexport var _DYN_GET_SAMPLING_SCORE = \"getSamplingScore\"; // Count: 2\r\nexport var _DYN_GET_HASH_CODE_SCORE = \"getHashCodeScore\"; // Count: 4\r\n//# sourceMappingURL=__DynamicConstants.js.map","import { __assign } from \"tslib\";\r\nimport { CtxTagKeys, Data, Envelope, Event, Exception, HttpMethod, Metric, PageView, PageViewPerformance, RemoteDependencyData, SampleRate, Trace, dataSanitizeString } from \"@microsoft/applicationinsights-common\";\r\nimport { _throwInternal, _warnToConsole, getJSON, hasJSON, isNullOrUndefined, isNumber, isString, isTruthy, objForEachKey, optimizeObject, setValue, toISOString } from \"@microsoft/applicationinsights-core-js\";\r\nimport { STR_DURATION } from \"./InternalConstants\";\r\nimport { _DYN_DATA, _DYN_DATA_TYPE, _DYN_DEVICE_TYPE, _DYN_ENVELOPE_TYPE, _DYN_LENGTH, _DYN_MEASUREMENTS, _DYN_NAME, _DYN_STRINGIFY, _DYN_TAGS, _DYN_TO_STRING, _DYN_TRACE_ID } from \"./__DynamicConstants\";\r\n// these two constants are used to filter out properties not needed when trying to extract custom properties and measurements from the incoming payload\r\nvar strBaseType = \"baseType\";\r\nvar strBaseData = \"baseData\";\r\nvar strProperties = \"properties\";\r\nvar strTrue = \"true\";\r\nfunction _setValueIf(target, field, value) {\r\n return setValue(target, field, value, isTruthy);\r\n}\r\n/*\r\n * Maps Part A data from CS 4.0\r\n */\r\nfunction _extractPartAExtensions(logger, item, env) {\r\n // todo: switch to keys from common in this method\r\n var envTags = env[_DYN_TAGS /* @min:%2etags */] = env[_DYN_TAGS /* @min:%2etags */] || {};\r\n var itmExt = item.ext = item.ext || {};\r\n var itmTags = item[_DYN_TAGS /* @min:%2etags */] = item[_DYN_TAGS /* @min:%2etags */] || [];\r\n var extUser = itmExt.user;\r\n if (extUser) {\r\n _setValueIf(envTags, CtxTagKeys.userAuthUserId, extUser.authId);\r\n _setValueIf(envTags, CtxTagKeys.userId, extUser.id || extUser.localId);\r\n }\r\n var extApp = itmExt.app;\r\n if (extApp) {\r\n _setValueIf(envTags, CtxTagKeys.sessionId, extApp.sesId);\r\n }\r\n var extDevice = itmExt.device;\r\n if (extDevice) {\r\n _setValueIf(envTags, CtxTagKeys.deviceId, extDevice.id || extDevice.localId);\r\n _setValueIf(envTags, CtxTagKeys[_DYN_DEVICE_TYPE /* @min:%2edeviceType */], extDevice.deviceClass);\r\n _setValueIf(envTags, CtxTagKeys.deviceIp, extDevice.ip);\r\n _setValueIf(envTags, CtxTagKeys.deviceModel, extDevice.model);\r\n _setValueIf(envTags, CtxTagKeys[_DYN_DEVICE_TYPE /* @min:%2edeviceType */], extDevice[_DYN_DEVICE_TYPE /* @min:%2edeviceType */]);\r\n }\r\n var web = item.ext.web;\r\n if (web) {\r\n _setValueIf(envTags, CtxTagKeys.deviceLanguage, web.browserLang);\r\n _setValueIf(envTags, CtxTagKeys.deviceBrowserVersion, web.browserVer);\r\n _setValueIf(envTags, CtxTagKeys.deviceBrowser, web.browser);\r\n var envData = env[_DYN_DATA /* @min:%2edata */] = env[_DYN_DATA /* @min:%2edata */] || {};\r\n var envBaseData = envData[strBaseData] = envData[strBaseData] || {};\r\n var envProps = envBaseData[strProperties] = envBaseData[strProperties] || {};\r\n _setValueIf(envProps, \"domain\", web.domain);\r\n _setValueIf(envProps, \"isManual\", web.isManual ? strTrue : null);\r\n _setValueIf(envProps, \"screenRes\", web.screenRes);\r\n _setValueIf(envProps, \"userConsent\", web.userConsent ? strTrue : null);\r\n }\r\n var extOs = itmExt.os;\r\n if (extOs) {\r\n _setValueIf(envTags, CtxTagKeys.deviceOS, extOs[_DYN_NAME /* @min:%2ename */]);\r\n _setValueIf(envTags, CtxTagKeys.deviceOSVersion, extOs.osVer);\r\n }\r\n // No support for mapping Trace.traceState to 2.0 as it is currently empty\r\n var extTrace = itmExt.trace;\r\n if (extTrace) {\r\n _setValueIf(envTags, CtxTagKeys.operationParentId, extTrace.parentID);\r\n _setValueIf(envTags, CtxTagKeys.operationName, dataSanitizeString(logger, extTrace[_DYN_NAME /* @min:%2ename */]));\r\n _setValueIf(envTags, CtxTagKeys.operationId, extTrace[_DYN_TRACE_ID /* @min:%2etraceID */]);\r\n }\r\n // Sample 4.0 schema\r\n // {\r\n // \"time\" : \"2018-09-05T22:51:22.4936Z\",\r\n // \"name\" : \"MetricWithNamespace\",\r\n // \"iKey\" : \"ABC-5a4cbd20-e601-4ef5-a3c6-5d6577e4398e\",\r\n // \"ext\": { \"cloud\": {\r\n // \"role\": \"WATSON3\",\r\n // \"roleInstance\": \"CO4AEAP00000260\"\r\n // },\r\n // \"device\": {}, \"correlation\": {} },\r\n // \"tags\": [\r\n // { \"amazon.region\" : \"east2\" },\r\n // { \"os.expid\" : \"wp:02df239\" }\r\n // ]\r\n // }\r\n var tgs = {};\r\n // deals with tags.push({object})\r\n for (var i = itmTags[_DYN_LENGTH /* @min:%2elength */] - 1; i >= 0; i--) {\r\n var tg = itmTags[i];\r\n objForEachKey(tg, function (key, value) {\r\n tgs[key] = value;\r\n });\r\n itmTags.splice(i, 1);\r\n }\r\n // deals with tags[key]=value (and handles hasOwnProperty)\r\n objForEachKey(itmTags, function (tg, value) {\r\n tgs[tg] = value;\r\n });\r\n var theTags = __assign(__assign({}, envTags), tgs);\r\n if (!theTags[CtxTagKeys.internalSdkVersion]) {\r\n // Append a version in case it is not already set\r\n theTags[CtxTagKeys.internalSdkVersion] = dataSanitizeString(logger, \"javascript:\".concat(EnvelopeCreator.Version), 64);\r\n }\r\n env[_DYN_TAGS /* @min:%2etags */] = optimizeObject(theTags);\r\n}\r\nfunction _extractPropsAndMeasurements(data, properties, measurements) {\r\n if (!isNullOrUndefined(data)) {\r\n objForEachKey(data, function (key, value) {\r\n if (isNumber(value)) {\r\n measurements[key] = value;\r\n }\r\n else if (isString(value)) {\r\n properties[key] = value;\r\n }\r\n else if (hasJSON()) {\r\n properties[key] = getJSON()[_DYN_STRINGIFY /* @min:%2estringify */](value);\r\n }\r\n });\r\n }\r\n}\r\nfunction _convertPropsUndefinedToCustomDefinedValue(properties, customUndefinedValue) {\r\n if (!isNullOrUndefined(properties)) {\r\n objForEachKey(properties, function (key, value) {\r\n properties[key] = value || customUndefinedValue;\r\n });\r\n }\r\n}\r\n// TODO: Do we want this to take logger as arg or use this._logger as nonstatic?\r\nfunction _createEnvelope(logger, envelopeType, telemetryItem, data) {\r\n var envelope = new Envelope(logger, data, envelopeType);\r\n _setValueIf(envelope, \"sampleRate\", telemetryItem[SampleRate]);\r\n if ((telemetryItem[strBaseData] || {}).startTime) {\r\n // Starting from Version 3.0.3, the time property will be assigned by the startTime value,\r\n // which records the loadEvent time for the pageView event.\r\n envelope.time = toISOString(telemetryItem[strBaseData].startTime);\r\n }\r\n envelope.iKey = telemetryItem.iKey;\r\n var iKeyNoDashes = telemetryItem.iKey.replace(/-/g, \"\");\r\n envelope[_DYN_NAME /* @min:%2ename */] = envelope[_DYN_NAME /* @min:%2ename */].replace(\"{0}\", iKeyNoDashes);\r\n // extract all extensions from ctx\r\n _extractPartAExtensions(logger, telemetryItem, envelope);\r\n // loop through the envelope tags (extension of Part A) and pick out the ones that should go in outgoing envelope tags\r\n telemetryItem[_DYN_TAGS /* @min:%2etags */] = telemetryItem[_DYN_TAGS /* @min:%2etags */] || [];\r\n return optimizeObject(envelope);\r\n}\r\nfunction EnvelopeCreatorInit(logger, telemetryItem) {\r\n if (isNullOrUndefined(telemetryItem[strBaseData])) {\r\n _throwInternal(logger, 1 /* eLoggingSeverity.CRITICAL */, 46 /* _eInternalMessageId.TelemetryEnvelopeInvalid */, \"telemetryItem.baseData cannot be null.\");\r\n }\r\n}\r\nexport var EnvelopeCreator = {\r\n Version: '3.3.5'\r\n};\r\nexport function DependencyEnvelopeCreator(logger, telemetryItem, customUndefinedValue) {\r\n EnvelopeCreatorInit(logger, telemetryItem);\r\n var customMeasurements = telemetryItem[strBaseData][_DYN_MEASUREMENTS /* @min:%2emeasurements */] || {};\r\n var customProperties = telemetryItem[strBaseData][strProperties] || {};\r\n _extractPropsAndMeasurements(telemetryItem[_DYN_DATA /* @min:%2edata */], customProperties, customMeasurements);\r\n if (!isNullOrUndefined(customUndefinedValue)) {\r\n _convertPropsUndefinedToCustomDefinedValue(customProperties, customUndefinedValue);\r\n }\r\n var bd = telemetryItem[strBaseData];\r\n if (isNullOrUndefined(bd)) {\r\n _warnToConsole(logger, \"Invalid input for dependency data\");\r\n return null;\r\n }\r\n var method = bd[strProperties] && bd[strProperties][HttpMethod] ? bd[strProperties][HttpMethod] : \"GET\";\r\n var remoteDepData = new RemoteDependencyData(logger, bd.id, bd.target, bd[_DYN_NAME /* @min:%2ename */], bd[STR_DURATION /* @min:%2eduration */], bd.success, bd.responseCode, method, bd.type, bd.correlationContext, customProperties, customMeasurements);\r\n var data = new Data(RemoteDependencyData[_DYN_DATA_TYPE /* @min:%2edataType */], remoteDepData);\r\n return _createEnvelope(logger, RemoteDependencyData[_DYN_ENVELOPE_TYPE /* @min:%2eenvelopeType */], telemetryItem, data);\r\n}\r\nexport function EventEnvelopeCreator(logger, telemetryItem, customUndefinedValue) {\r\n EnvelopeCreatorInit(logger, telemetryItem);\r\n var customProperties = {};\r\n var customMeasurements = {};\r\n if (telemetryItem[strBaseType] !== Event[_DYN_DATA_TYPE /* @min:%2edataType */]) {\r\n customProperties[\"baseTypeSource\"] = telemetryItem[strBaseType]; // save the passed in base type as a property\r\n }\r\n if (telemetryItem[strBaseType] === Event[_DYN_DATA_TYPE /* @min:%2edataType */]) { // take collection\r\n customProperties = telemetryItem[strBaseData][strProperties] || {};\r\n customMeasurements = telemetryItem[strBaseData][_DYN_MEASUREMENTS /* @min:%2emeasurements */] || {};\r\n }\r\n else { // if its not a known type, convert to custom event\r\n if (telemetryItem[strBaseData]) {\r\n _extractPropsAndMeasurements(telemetryItem[strBaseData], customProperties, customMeasurements);\r\n }\r\n }\r\n // Extract root level properties from part C telemetryItem.data\r\n _extractPropsAndMeasurements(telemetryItem[_DYN_DATA /* @min:%2edata */], customProperties, customMeasurements);\r\n if (!isNullOrUndefined(customUndefinedValue)) {\r\n _convertPropsUndefinedToCustomDefinedValue(customProperties, customUndefinedValue);\r\n }\r\n var eventName = telemetryItem[strBaseData][_DYN_NAME /* @min:%2ename */];\r\n var eventData = new Event(logger, eventName, customProperties, customMeasurements);\r\n var data = new Data(Event[_DYN_DATA_TYPE /* @min:%2edataType */], eventData);\r\n return _createEnvelope(logger, Event[_DYN_ENVELOPE_TYPE /* @min:%2eenvelopeType */], telemetryItem, data);\r\n}\r\nexport function ExceptionEnvelopeCreator(logger, telemetryItem, customUndefinedValue) {\r\n EnvelopeCreatorInit(logger, telemetryItem);\r\n // Extract root level properties from part C telemetryItem.data\r\n var customMeasurements = telemetryItem[strBaseData][_DYN_MEASUREMENTS /* @min:%2emeasurements */] || {};\r\n var customProperties = telemetryItem[strBaseData][strProperties] || {};\r\n _extractPropsAndMeasurements(telemetryItem[_DYN_DATA /* @min:%2edata */], customProperties, customMeasurements);\r\n if (!isNullOrUndefined(customUndefinedValue)) {\r\n _convertPropsUndefinedToCustomDefinedValue(customProperties, customUndefinedValue);\r\n }\r\n var bd = telemetryItem[strBaseData];\r\n var exData = Exception.CreateFromInterface(logger, bd, customProperties, customMeasurements);\r\n var data = new Data(Exception[_DYN_DATA_TYPE /* @min:%2edataType */], exData);\r\n return _createEnvelope(logger, Exception[_DYN_ENVELOPE_TYPE /* @min:%2eenvelopeType */], telemetryItem, data);\r\n}\r\nexport function MetricEnvelopeCreator(logger, telemetryItem, customUndefinedValue) {\r\n EnvelopeCreatorInit(logger, telemetryItem);\r\n var baseData = telemetryItem[strBaseData];\r\n var props = baseData[strProperties] || {};\r\n var measurements = baseData[_DYN_MEASUREMENTS /* @min:%2emeasurements */] || {};\r\n _extractPropsAndMeasurements(telemetryItem[_DYN_DATA /* @min:%2edata */], props, measurements);\r\n if (!isNullOrUndefined(customUndefinedValue)) {\r\n _convertPropsUndefinedToCustomDefinedValue(props, customUndefinedValue);\r\n }\r\n var baseMetricData = new Metric(logger, baseData[_DYN_NAME /* @min:%2ename */], baseData.average, baseData.sampleCount, baseData.min, baseData.max, baseData.stdDev, props, measurements);\r\n var data = new Data(Metric[_DYN_DATA_TYPE /* @min:%2edataType */], baseMetricData);\r\n return _createEnvelope(logger, Metric[_DYN_ENVELOPE_TYPE /* @min:%2eenvelopeType */], telemetryItem, data);\r\n}\r\nexport function PageViewEnvelopeCreator(logger, telemetryItem, customUndefinedValue) {\r\n EnvelopeCreatorInit(logger, telemetryItem);\r\n // Since duration is not part of the domain properties in Common Schema, extract it from part C\r\n var duration;\r\n var baseData = telemetryItem[strBaseData];\r\n if (!isNullOrUndefined(baseData) &&\r\n !isNullOrUndefined(baseData[strProperties]) &&\r\n !isNullOrUndefined(baseData[strProperties][STR_DURATION])) { // from part B properties\r\n duration = baseData[strProperties][STR_DURATION];\r\n delete baseData[strProperties][STR_DURATION];\r\n }\r\n else if (!isNullOrUndefined(telemetryItem[_DYN_DATA /* @min:%2edata */]) &&\r\n !isNullOrUndefined(telemetryItem[_DYN_DATA /* @min:%2edata */][STR_DURATION])) { // from custom properties\r\n duration = telemetryItem[_DYN_DATA /* @min:%2edata */][STR_DURATION];\r\n delete telemetryItem[_DYN_DATA /* @min:%2edata */][STR_DURATION];\r\n }\r\n var bd = telemetryItem[strBaseData];\r\n // special case: pageview.id is grabbed from current operation id. Analytics plugin is decoupled from properties plugin, so this is done here instead. This can be made a default telemetry intializer instead if needed to be decoupled from channel\r\n var currentContextId;\r\n if (((telemetryItem.ext || {}).trace || {})[_DYN_TRACE_ID /* @min:%2etraceID */]) {\r\n currentContextId = telemetryItem.ext.trace[_DYN_TRACE_ID /* @min:%2etraceID */];\r\n }\r\n var id = bd.id || currentContextId;\r\n var name = bd[_DYN_NAME /* @min:%2ename */];\r\n var url = bd.uri;\r\n var properties = bd[strProperties] || {};\r\n var measurements = bd[_DYN_MEASUREMENTS /* @min:%2emeasurements */] || {};\r\n // refUri is a field that Breeze still does not recognize as part of Part B. For now, put it in Part C until it supports it as a domain property\r\n if (!isNullOrUndefined(bd.refUri)) {\r\n properties[\"refUri\"] = bd.refUri;\r\n }\r\n // pageType is a field that Breeze still does not recognize as part of Part B. For now, put it in Part C until it supports it as a domain property\r\n if (!isNullOrUndefined(bd.pageType)) {\r\n properties[\"pageType\"] = bd.pageType;\r\n }\r\n // isLoggedIn is a field that Breeze still does not recognize as part of Part B. For now, put it in Part C until it supports it as a domain property\r\n if (!isNullOrUndefined(bd.isLoggedIn)) {\r\n properties[\"isLoggedIn\"] = bd.isLoggedIn[_DYN_TO_STRING /* @min:%2etoString */]();\r\n }\r\n // pageTags is a field that Breeze still does not recognize as part of Part B. For now, put it in Part C until it supports it as a domain property\r\n if (!isNullOrUndefined(bd[strProperties])) {\r\n var pageTags = bd[strProperties];\r\n objForEachKey(pageTags, function (key, value) {\r\n properties[key] = value;\r\n });\r\n }\r\n _extractPropsAndMeasurements(telemetryItem[_DYN_DATA /* @min:%2edata */], properties, measurements);\r\n if (!isNullOrUndefined(customUndefinedValue)) {\r\n _convertPropsUndefinedToCustomDefinedValue(properties, customUndefinedValue);\r\n }\r\n var pageViewData = new PageView(logger, name, url, duration, properties, measurements, id);\r\n var data = new Data(PageView[_DYN_DATA_TYPE /* @min:%2edataType */], pageViewData);\r\n return _createEnvelope(logger, PageView[_DYN_ENVELOPE_TYPE /* @min:%2eenvelopeType */], telemetryItem, data);\r\n}\r\nexport function PageViewPerformanceEnvelopeCreator(logger, telemetryItem, customUndefinedValue) {\r\n EnvelopeCreatorInit(logger, telemetryItem);\r\n var bd = telemetryItem[strBaseData];\r\n var name = bd[_DYN_NAME /* @min:%2ename */];\r\n var url = bd.uri || bd.url;\r\n var properties = bd[strProperties] || {};\r\n var measurements = bd[_DYN_MEASUREMENTS /* @min:%2emeasurements */] || {};\r\n _extractPropsAndMeasurements(telemetryItem[_DYN_DATA /* @min:%2edata */], properties, measurements);\r\n if (!isNullOrUndefined(customUndefinedValue)) {\r\n _convertPropsUndefinedToCustomDefinedValue(properties, customUndefinedValue);\r\n }\r\n var baseData = new PageViewPerformance(logger, name, url, undefined, properties, measurements, bd);\r\n var data = new Data(PageViewPerformance[_DYN_DATA_TYPE /* @min:%2edataType */], baseData);\r\n return _createEnvelope(logger, PageViewPerformance[_DYN_ENVELOPE_TYPE /* @min:%2eenvelopeType */], telemetryItem, data);\r\n}\r\nexport function TraceEnvelopeCreator(logger, telemetryItem, customUndefinedValue) {\r\n EnvelopeCreatorInit(logger, telemetryItem);\r\n var message = telemetryItem[strBaseData].message;\r\n var severityLevel = telemetryItem[strBaseData].severityLevel;\r\n var props = telemetryItem[strBaseData][strProperties] || {};\r\n var measurements = telemetryItem[strBaseData][_DYN_MEASUREMENTS /* @min:%2emeasurements */] || {};\r\n _extractPropsAndMeasurements(telemetryItem[_DYN_DATA /* @min:%2edata */], props, measurements);\r\n if (!isNullOrUndefined(customUndefinedValue)) {\r\n _convertPropsUndefinedToCustomDefinedValue(props, customUndefinedValue);\r\n }\r\n var baseData = new Trace(logger, message, severityLevel, props, measurements);\r\n var data = new Data(Trace[_DYN_DATA_TYPE /* @min:%2edataType */], baseData);\r\n return _createEnvelope(logger, Trace[_DYN_ENVELOPE_TYPE /* @min:%2eenvelopeType */], telemetryItem, data);\r\n}\r\n//# sourceMappingURL=EnvelopeCreator.js.map","import { __extends } from \"tslib\";\r\nimport dynamicProto from \"@microsoft/dynamicproto-js\";\r\nimport { utlGetSessionStorage, utlRemoveSessionStorage, utlSetSessionStorage } from \"@microsoft/applicationinsights-common\";\r\nimport { _throwInternal, arrForEach, arrIndexOf, dumpObj, getExceptionName, getJSON, isArray, isFunction, isNullOrUndefined, isString } from \"@microsoft/applicationinsights-core-js\";\r\nimport { _DYN_BUFFER_OVERRIDE, _DYN_CLEAR, _DYN_CLEAR_SENT, _DYN_CONCAT, _DYN_COUNT, _DYN_CREATE_NEW, _DYN_EMIT_LINE_DELIMITED_0, _DYN_ENQUEUE, _DYN_EVENTS_LIMIT_IN_MEM, _DYN_ITEM, _DYN_LENGTH, _DYN_MARK_AS_SENT, _DYN_PUSH, _DYN_STRINGIFY, _DYN__BUFFER__KEY, _DYN__GET, _DYN__MAX__BUFFER__SIZE, _DYN__SENT__BUFFER__KEY } from \"./__DynamicConstants\";\r\nvar BaseSendBuffer = /** @class */ (function () {\r\n function BaseSendBuffer(logger, config) {\r\n var _buffer = [];\r\n var _bufferFullMessageSent = false;\r\n var _maxRetryCnt = config.maxRetryCnt;\r\n this[_DYN__GET /* @min:%2e_get */] = function () {\r\n return _buffer;\r\n };\r\n this._set = function (buffer) {\r\n _buffer = buffer;\r\n return _buffer;\r\n };\r\n dynamicProto(BaseSendBuffer, this, function (_self) {\r\n _self[_DYN_ENQUEUE /* @min:%2eenqueue */] = function (payload) {\r\n if (_self[_DYN_COUNT /* @min:%2ecount */]() >= config[_DYN_EVENTS_LIMIT_IN_MEM /* @min:%2eeventsLimitInMem */]) {\r\n // sent internal log only once per page view\r\n if (!_bufferFullMessageSent) {\r\n _throwInternal(logger, 2 /* eLoggingSeverity.WARNING */, 105 /* _eInternalMessageId.InMemoryStorageBufferFull */, \"Maximum in-memory buffer size reached: \" + _self[_DYN_COUNT /* @min:%2ecount */](), true);\r\n _bufferFullMessageSent = true;\r\n }\r\n return;\r\n }\r\n payload.cnt = payload.cnt || 0;\r\n // max retry is defined, and max retry is reached, do not add the payload to buffer\r\n if (!isNullOrUndefined(_maxRetryCnt)) {\r\n if (payload.cnt > _maxRetryCnt) {\r\n // TODO: add log here on dropping payloads\r\n return;\r\n }\r\n }\r\n _buffer[_DYN_PUSH /* @min:%2epush */](payload);\r\n return;\r\n };\r\n _self[_DYN_COUNT /* @min:%2ecount */] = function () {\r\n return _buffer[_DYN_LENGTH /* @min:%2elength */];\r\n };\r\n _self.size = function () {\r\n var size = _buffer[_DYN_LENGTH /* @min:%2elength */];\r\n for (var lp = 0; lp < _buffer[_DYN_LENGTH /* @min:%2elength */]; lp++) {\r\n size += (_buffer[lp].item)[_DYN_LENGTH /* @min:%2elength */];\r\n }\r\n if (!config[_DYN_EMIT_LINE_DELIMITED_0 /* @min:%2eemitLineDelimitedJson */]) {\r\n size += 2;\r\n }\r\n return size;\r\n };\r\n _self[_DYN_CLEAR /* @min:%2eclear */] = function () {\r\n _buffer = [];\r\n _bufferFullMessageSent = false;\r\n };\r\n _self.getItems = function () {\r\n return _buffer.slice(0);\r\n };\r\n _self.batchPayloads = function (payloads) {\r\n if (payloads && payloads[_DYN_LENGTH /* @min:%2elength */] > 0) {\r\n var payloadStr_1 = [];\r\n arrForEach(payloads, function (payload) {\r\n payloadStr_1[_DYN_PUSH /* @min:%2epush */](payload[_DYN_ITEM /* @min:%2eitem */]);\r\n });\r\n var batch = config[_DYN_EMIT_LINE_DELIMITED_0 /* @min:%2eemitLineDelimitedJson */] ?\r\n payloadStr_1.join(\"\\n\") :\r\n \"[\" + payloadStr_1.join(\",\") + \"]\";\r\n return batch;\r\n }\r\n return null;\r\n };\r\n _self[_DYN_CREATE_NEW /* @min:%2ecreateNew */] = function (newLogger, newConfig, canUseSessionStorage) {\r\n var items = _buffer.slice(0);\r\n newLogger = newLogger || logger;\r\n newConfig = newConfig || {};\r\n var newBuffer = !!canUseSessionStorage ? new SessionStorageSendBuffer(newLogger, newConfig) : new ArraySendBuffer(newLogger, newConfig);\r\n arrForEach(items, function (payload) {\r\n newBuffer[_DYN_ENQUEUE /* @min:%2eenqueue */](payload);\r\n });\r\n return newBuffer;\r\n };\r\n });\r\n }\r\n BaseSendBuffer.prototype.enqueue = function (payload) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n BaseSendBuffer.prototype.count = function () {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n return 0;\r\n };\r\n BaseSendBuffer.prototype.size = function () {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n return 0;\r\n };\r\n BaseSendBuffer.prototype.clear = function () {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n BaseSendBuffer.prototype.getItems = function () {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n return null;\r\n };\r\n BaseSendBuffer.prototype.batchPayloads = function (payload) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n return null;\r\n };\r\n BaseSendBuffer.prototype.createNew = function (newLogger, newConfig, canUseSessionStorage) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n return null;\r\n };\r\n return BaseSendBuffer;\r\n}());\r\n/*\r\n * An array based send buffer.\r\n */\r\nvar ArraySendBuffer = /** @class */ (function (_super) {\r\n __extends(ArraySendBuffer, _super);\r\n function ArraySendBuffer(logger, config) {\r\n var _this = _super.call(this, logger, config) || this;\r\n dynamicProto(ArraySendBuffer, _this, function (_self, _base) {\r\n _self[_DYN_MARK_AS_SENT /* @min:%2emarkAsSent */] = function (payload) {\r\n _base[_DYN_CLEAR /* @min:%2eclear */]();\r\n };\r\n _self[_DYN_CLEAR_SENT /* @min:%2eclearSent */] = function (payload) {\r\n // not supported\r\n };\r\n });\r\n return _this;\r\n }\r\n ArraySendBuffer.prototype.markAsSent = function (payload) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n ArraySendBuffer.prototype.clearSent = function (payload) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n return ArraySendBuffer;\r\n}(BaseSendBuffer));\r\nexport { ArraySendBuffer };\r\nvar PREVIOUS_KEYS = [\"AI_buffer\", \"AI_sentBuffer\"];\r\n/*\r\n * Session storage buffer holds a copy of all unsent items in the browser session storage.\r\n */\r\nvar SessionStorageSendBuffer = /** @class */ (function (_super) {\r\n __extends(SessionStorageSendBuffer, _super);\r\n function SessionStorageSendBuffer(logger, config) {\r\n var _this = _super.call(this, logger, config) || this;\r\n var _bufferFullMessageSent = false;\r\n //Note: should not use config.namePrefix directly, because it will always refers to the latest namePrefix\r\n var _namePrefix = config === null || config === void 0 ? void 0 : config.namePrefix;\r\n // TODO: add remove buffer override as well\r\n var _b = config[_DYN_BUFFER_OVERRIDE /* @min:%2ebufferOverride */] || { getItem: utlGetSessionStorage, setItem: utlSetSessionStorage }, getItem = _b.getItem, setItem = _b.setItem;\r\n var _maxRetryCnt = config.maxRetryCnt;\r\n dynamicProto(SessionStorageSendBuffer, _this, function (_self, _base) {\r\n var bufferItems = _getBuffer(SessionStorageSendBuffer[_DYN__BUFFER__KEY /* @min:%2eBUFFER_KEY */]);\r\n var itemsInSentBuffer = _getBuffer(SessionStorageSendBuffer[_DYN__SENT__BUFFER__KEY /* @min:%2eSENT_BUFFER_KEY */]);\r\n var previousItems = _getPreviousEvents();\r\n var notDeliveredItems = itemsInSentBuffer[_DYN_CONCAT /* @min:%2econcat */](previousItems);\r\n var buffer = _self._set(bufferItems[_DYN_CONCAT /* @min:%2econcat */](notDeliveredItems));\r\n // If the buffer has too many items, drop items from the end.\r\n if (buffer[_DYN_LENGTH /* @min:%2elength */] > SessionStorageSendBuffer[_DYN__MAX__BUFFER__SIZE /* @min:%2eMAX_BUFFER_SIZE */]) {\r\n buffer[_DYN_LENGTH /* @min:%2elength */] = SessionStorageSendBuffer[_DYN__MAX__BUFFER__SIZE /* @min:%2eMAX_BUFFER_SIZE */];\r\n }\r\n _setBuffer(SessionStorageSendBuffer[_DYN__SENT__BUFFER__KEY /* @min:%2eSENT_BUFFER_KEY */], []);\r\n _setBuffer(SessionStorageSendBuffer[_DYN__BUFFER__KEY /* @min:%2eBUFFER_KEY */], buffer);\r\n _self[_DYN_ENQUEUE /* @min:%2eenqueue */] = function (payload) {\r\n if (_self[_DYN_COUNT /* @min:%2ecount */]() >= SessionStorageSendBuffer[_DYN__MAX__BUFFER__SIZE /* @min:%2eMAX_BUFFER_SIZE */]) {\r\n // sent internal log only once per page view\r\n if (!_bufferFullMessageSent) {\r\n _throwInternal(logger, 2 /* eLoggingSeverity.WARNING */, 67 /* _eInternalMessageId.SessionStorageBufferFull */, \"Maximum buffer size reached: \" + _self[_DYN_COUNT /* @min:%2ecount */](), true);\r\n _bufferFullMessageSent = true;\r\n }\r\n return;\r\n }\r\n payload.cnt = payload.cnt || 0;\r\n // max retry is defined, and max retry is reached, do not add the payload to buffer\r\n if (!isNullOrUndefined(_maxRetryCnt)) {\r\n if (payload.cnt > _maxRetryCnt) {\r\n // TODO: add log here on dropping payloads\r\n return;\r\n }\r\n }\r\n _base[_DYN_ENQUEUE /* @min:%2eenqueue */](payload);\r\n _setBuffer(SessionStorageSendBuffer.BUFFER_KEY, _self[_DYN__GET /* @min:%2e_get */]());\r\n };\r\n _self[_DYN_CLEAR /* @min:%2eclear */] = function () {\r\n _base[_DYN_CLEAR /* @min:%2eclear */]();\r\n _setBuffer(SessionStorageSendBuffer.BUFFER_KEY, _self[_DYN__GET /* @min:%2e_get */]());\r\n _setBuffer(SessionStorageSendBuffer[_DYN__SENT__BUFFER__KEY /* @min:%2eSENT_BUFFER_KEY */], []);\r\n _bufferFullMessageSent = false;\r\n };\r\n _self[_DYN_MARK_AS_SENT /* @min:%2emarkAsSent */] = function (payload) {\r\n _setBuffer(SessionStorageSendBuffer[_DYN__BUFFER__KEY /* @min:%2eBUFFER_KEY */], _self._set(_removePayloadsFromBuffer(payload, _self[_DYN__GET /* @min:%2e_get */]())));\r\n var sentElements = _getBuffer(SessionStorageSendBuffer[_DYN__SENT__BUFFER__KEY /* @min:%2eSENT_BUFFER_KEY */]);\r\n if (sentElements instanceof Array && payload instanceof Array) {\r\n sentElements = sentElements[_DYN_CONCAT /* @min:%2econcat */](payload);\r\n if (sentElements[_DYN_LENGTH /* @min:%2elength */] > SessionStorageSendBuffer[_DYN__MAX__BUFFER__SIZE /* @min:%2eMAX_BUFFER_SIZE */]) {\r\n // We send telemetry normally. If the SENT_BUFFER is too big we don't add new elements\r\n // until we receive a response from the backend and the buffer has free space again (see clearSent method)\r\n _throwInternal(logger, 1 /* eLoggingSeverity.CRITICAL */, 67 /* _eInternalMessageId.SessionStorageBufferFull */, \"Sent buffer reached its maximum size: \" + sentElements[_DYN_LENGTH /* @min:%2elength */], true);\r\n sentElements[_DYN_LENGTH /* @min:%2elength */] = SessionStorageSendBuffer[_DYN__MAX__BUFFER__SIZE /* @min:%2eMAX_BUFFER_SIZE */];\r\n }\r\n _setBuffer(SessionStorageSendBuffer[_DYN__SENT__BUFFER__KEY /* @min:%2eSENT_BUFFER_KEY */], sentElements);\r\n }\r\n };\r\n _self[_DYN_CLEAR_SENT /* @min:%2eclearSent */] = function (payload) {\r\n var sentElements = _getBuffer(SessionStorageSendBuffer[_DYN__SENT__BUFFER__KEY /* @min:%2eSENT_BUFFER_KEY */]);\r\n sentElements = _removePayloadsFromBuffer(payload, sentElements);\r\n _setBuffer(SessionStorageSendBuffer[_DYN__SENT__BUFFER__KEY /* @min:%2eSENT_BUFFER_KEY */], sentElements);\r\n };\r\n _self[_DYN_CREATE_NEW /* @min:%2ecreateNew */] = function (newLogger, newConfig, canUseSessionStorage) {\r\n canUseSessionStorage = !!canUseSessionStorage;\r\n var unsentItems = _self[_DYN__GET /* @min:%2e_get */]().slice(0);\r\n var sentItems = _getBuffer(SessionStorageSendBuffer[_DYN__SENT__BUFFER__KEY /* @min:%2eSENT_BUFFER_KEY */]).slice(0);\r\n newLogger = newLogger || logger;\r\n newConfig = newConfig || {};\r\n // to make sure that we do not send duplicated payloads when it is switched back to previous one\r\n _self[_DYN_CLEAR /* @min:%2eclear */]();\r\n var newBuffer = canUseSessionStorage ? new SessionStorageSendBuffer(newLogger, newConfig) : new ArraySendBuffer(newLogger, newConfig);\r\n arrForEach(unsentItems, function (payload) {\r\n newBuffer[_DYN_ENQUEUE /* @min:%2eenqueue */](payload);\r\n });\r\n if (canUseSessionStorage) {\r\n // arr buffer will clear all payloads if markAsSent() is called\r\n newBuffer[_DYN_MARK_AS_SENT /* @min:%2emarkAsSent */](sentItems);\r\n }\r\n return newBuffer;\r\n };\r\n function _removePayloadsFromBuffer(payloads, buffer) {\r\n var remaining = [];\r\n var payloadStr = [];\r\n arrForEach(payloads, function (payload) {\r\n payloadStr[_DYN_PUSH /* @min:%2epush */](payload[_DYN_ITEM /* @min:%2eitem */]);\r\n });\r\n arrForEach(buffer, function (value) {\r\n if (!isFunction(value) && arrIndexOf(payloadStr, value[_DYN_ITEM /* @min:%2eitem */]) === -1) {\r\n remaining[_DYN_PUSH /* @min:%2epush */](value);\r\n }\r\n });\r\n return remaining;\r\n }\r\n function _getBuffer(key) {\r\n var prefixedKey = key;\r\n prefixedKey = _namePrefix ? _namePrefix + \"_\" + prefixedKey : prefixedKey;\r\n return _getBufferBase(prefixedKey);\r\n }\r\n function _getBufferBase(key) {\r\n try {\r\n var bufferJson = getItem(logger, key);\r\n if (bufferJson) {\r\n var buffer_1 = getJSON().parse(bufferJson);\r\n if (isString(buffer_1)) {\r\n // When using some version prototype.js the stringify / parse cycle does not decode array's correctly\r\n buffer_1 = getJSON().parse(buffer_1);\r\n }\r\n if (buffer_1 && isArray(buffer_1)) {\r\n return buffer_1;\r\n }\r\n }\r\n }\r\n catch (e) {\r\n _throwInternal(logger, 1 /* eLoggingSeverity.CRITICAL */, 42 /* _eInternalMessageId.FailedToRestoreStorageBuffer */, \" storage key: \" + key + \", \" + getExceptionName(e), { exception: dumpObj(e) });\r\n }\r\n return [];\r\n }\r\n function _setBuffer(key, buffer) {\r\n var prefixedKey = key;\r\n try {\r\n prefixedKey = _namePrefix ? _namePrefix + \"_\" + prefixedKey : prefixedKey;\r\n var bufferJson = JSON[_DYN_STRINGIFY /* @min:%2estringify */](buffer);\r\n setItem(logger, prefixedKey, bufferJson);\r\n }\r\n catch (e) {\r\n // if there was an error, clear the buffer\r\n // telemetry is stored in the _buffer array so we won't loose any items\r\n setItem(logger, prefixedKey, JSON[_DYN_STRINGIFY /* @min:%2estringify */]([]));\r\n _throwInternal(logger, 2 /* eLoggingSeverity.WARNING */, 41 /* _eInternalMessageId.FailedToSetStorageBuffer */, \" storage key: \" + prefixedKey + \", \" + getExceptionName(e) + \". Buffer cleared\", { exception: dumpObj(e) });\r\n }\r\n }\r\n // this removes buffer with prefix+key\r\n function _getPreviousEvents() {\r\n var items = [];\r\n try {\r\n arrForEach(PREVIOUS_KEYS, function (key) {\r\n var events = _getItemsFromPreviousKey(key);\r\n items = items[_DYN_CONCAT /* @min:%2econcat */](events);\r\n // to make sure that we also transfer items from old prefixed + key buffer\r\n if (_namePrefix) {\r\n var prefixedKey = _namePrefix + \"_\" + key;\r\n var prefixEvents = _getItemsFromPreviousKey(prefixedKey);\r\n items = items[_DYN_CONCAT /* @min:%2econcat */](prefixEvents);\r\n }\r\n });\r\n return items;\r\n }\r\n catch (e) {\r\n _throwInternal(logger, 2 /* eLoggingSeverity.WARNING */, 41 /* _eInternalMessageId.FailedToSetStorageBuffer */, \"Transfer events from previous buffers: \" + getExceptionName(e) + \". previous Buffer items can not be removed\", { exception: dumpObj(e) });\r\n }\r\n return [];\r\n }\r\n // transform string[] to IInternalStorageItem[]\r\n function _getItemsFromPreviousKey(key) {\r\n try {\r\n var items = _getBufferBase(key);\r\n var transFormedItems_1 = [];\r\n arrForEach(items, function (item) {\r\n var internalItem = {\r\n item: item,\r\n cnt: 0 // previous events will be default to 0 count\r\n };\r\n transFormedItems_1[_DYN_PUSH /* @min:%2epush */](internalItem);\r\n });\r\n // remove the session storage if we can add events back\r\n utlRemoveSessionStorage(logger, key);\r\n return transFormedItems_1;\r\n }\r\n catch (e) {\r\n // eslint-disable-next-line no-empty\r\n }\r\n return [];\r\n }\r\n });\r\n return _this;\r\n }\r\n SessionStorageSendBuffer.prototype.enqueue = function (payload) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n SessionStorageSendBuffer.prototype.clear = function () {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n SessionStorageSendBuffer.prototype.markAsSent = function (payload) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n SessionStorageSendBuffer.prototype.clearSent = function (payload) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n SessionStorageSendBuffer.prototype.createNew = function (newLogger, newConfig, canUseSessionStorage) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n return null;\r\n };\r\n var _a;\r\n _a = SessionStorageSendBuffer;\r\n SessionStorageSendBuffer.VERSION = \"_1\";\r\n SessionStorageSendBuffer.BUFFER_KEY = \"AI_buffer\" + _a.VERSION;\r\n SessionStorageSendBuffer.SENT_BUFFER_KEY = \"AI_sentBuffer\" + _a.VERSION;\r\n // Maximum number of payloads stored in the buffer. If the buffer is full, new elements will be dropped.\r\n SessionStorageSendBuffer.MAX_BUFFER_SIZE = 2000;\r\n return SessionStorageSendBuffer;\r\n}(BaseSendBuffer));\r\nexport { SessionStorageSendBuffer };\r\n//# sourceMappingURL=SendBuffer.js.map","var _a, _b;\r\nimport { __assign, __extends } from \"tslib\";\r\nimport dynamicProto from \"@microsoft/dynamicproto-js\";\r\nimport { BreezeChannelIdentifier, DEFAULT_BREEZE_ENDPOINT, DEFAULT_BREEZE_PATH, Event, Exception, Metric, PageView, PageViewPerformance, ProcessLegacy, RemoteDependencyData, RequestHeaders, SampleRate, Trace, createOfflineListener, isInternalApplicationInsightsEndpoint, utlCanUseSessionStorage, utlSetStoragePrefix } from \"@microsoft/applicationinsights-common\";\r\nimport { ActiveStatus, BaseTelemetryPlugin, SenderPostManager, _throwInternal, _warnToConsole, arrForEach, cfgDfBoolean, cfgDfValidate, createProcessTelemetryContext, createUniqueNamespace, dateNow, dumpObj, formatErrorMessageXdr, formatErrorMessageXhr, getExceptionName, getIEVersion, isArray, isBeaconsSupported, isFetchSupported, isNullOrUndefined, mergeEvtNamespace, objExtend, onConfigChange, parseResponse, prependTransports, runTargetUnload } from \"@microsoft/applicationinsights-core-js\";\r\nimport { isNumber, isPromiseLike, isString, isTruthy, objDeepFreeze, objDefine, scheduleTimeout } from \"@nevware21/ts-utils\";\r\nimport { DependencyEnvelopeCreator, EventEnvelopeCreator, ExceptionEnvelopeCreator, MetricEnvelopeCreator, PageViewEnvelopeCreator, PageViewPerformanceEnvelopeCreator, TraceEnvelopeCreator } from \"./EnvelopeCreator\";\r\nimport { ArraySendBuffer, SessionStorageSendBuffer } from \"./SendBuffer\";\r\nimport { Serializer } from \"./Serializer\";\r\nimport { Sample } from \"./TelemetryProcessors/Sample\";\r\nimport { _DYN_ALWAYS_USE_XHR_OVERR4, _DYN_BASE_TYPE, _DYN_BUFFER_OVERRIDE, _DYN_CLEAR, _DYN_CLEAR_SENT, _DYN_CONVERT_UNDEFINED, _DYN_COUNT, _DYN_CREATE_NEW, _DYN_CUSTOM_HEADERS, _DYN_DATA, _DYN_DIAG_LOG, _DYN_DISABLE_SEND_BEACON_7, _DYN_DISABLE_XHR, _DYN_EMIT_LINE_DELIMITED_0, _DYN_ENABLE_SEND_PROMISE, _DYN_ENABLE_SESSION_STORA5, _DYN_ENDPOINT_URL, _DYN_ENQUEUE, _DYN_EVENTS_LIMIT_IN_MEM, _DYN_EVENTS_SEND_REQUEST, _DYN_GET_SENDER_INST, _DYN_INITIALIZE, _DYN_INSTRUMENTATION_KEY, _DYN_IS_BEACON_API_DISABL3, _DYN_ITEM, _DYN_ITEMS_ACCEPTED, _DYN_ITEMS_RECEIVED, _DYN_LENGTH, _DYN_MARK_AS_SENT, _DYN_MAX_BATCH_INTERVAL, _DYN_MAX_BATCH_SIZE_IN_BY1, _DYN_ONUNLOAD_DISABLE_BEA2, _DYN_ONUNLOAD_DISABLE_FET6, _DYN_ORI_PAYLOAD, _DYN_PUSH, _DYN_SAMPLE_RATE, _DYN_SERIALIZE, _DYN_TAGS, _DYN_TRIGGER_SEND, _DYN_UNLOAD_TRANSPORTS, _DYN__BUFFER, _DYN__ON_ERROR, _DYN__ON_PARTIAL_SUCCESS, _DYN__ON_SUCCESS, _DYN__SENDER } from \"./__DynamicConstants\";\r\nvar UNDEFINED_VALUE = undefined;\r\nvar EMPTY_STR = \"\";\r\nvar FetchSyncRequestSizeLimitBytes = 65000; // approx 64kb (the current Edge, Firefox and Chrome max limit)\r\nfunction _getResponseText(xhr) {\r\n try {\r\n return xhr.responseText;\r\n }\r\n catch (e) {\r\n // Best effort, as XHR may throw while XDR wont so just ignore\r\n }\r\n return null;\r\n}\r\nfunction isOverrideFn(httpXHROverride) {\r\n return httpXHROverride && httpXHROverride.sendPOST;\r\n}\r\nvar defaultAppInsightsChannelConfig = objDeepFreeze((_a = {\r\n // Use the default value (handles empty string in the configuration)\r\n endpointUrl: cfgDfValidate(isTruthy, DEFAULT_BREEZE_ENDPOINT + DEFAULT_BREEZE_PATH)\r\n },\r\n _a[_DYN_EMIT_LINE_DELIMITED_0 /* @min:emitLineDelimitedJson */] = cfgDfBoolean(),\r\n _a[_DYN_MAX_BATCH_INTERVAL /* @min:maxBatchInterval */] = 15000,\r\n _a[_DYN_MAX_BATCH_SIZE_IN_BY1 /* @min:maxBatchSizeInBytes */] = 102400,\r\n _a.disableTelemetry = cfgDfBoolean(),\r\n _a[_DYN_ENABLE_SESSION_STORA5 /* @min:enableSessionStorageBuffer */] = cfgDfBoolean(true),\r\n _a.isRetryDisabled = cfgDfBoolean(),\r\n _a[_DYN_IS_BEACON_API_DISABL3 /* @min:isBeaconApiDisabled */] = cfgDfBoolean(true),\r\n _a[_DYN_DISABLE_SEND_BEACON_7 /* @min:disableSendBeaconSplit */] = cfgDfBoolean(true),\r\n _a[_DYN_DISABLE_XHR /* @min:disableXhr */] = cfgDfBoolean(),\r\n _a[_DYN_ONUNLOAD_DISABLE_FET6 /* @min:onunloadDisableFetch */] = cfgDfBoolean(),\r\n _a[_DYN_ONUNLOAD_DISABLE_BEA2 /* @min:onunloadDisableBeacon */] = cfgDfBoolean(),\r\n _a[_DYN_INSTRUMENTATION_KEY /* @min:instrumentationKey */] = UNDEFINED_VALUE,\r\n _a.namePrefix = UNDEFINED_VALUE,\r\n _a.samplingPercentage = cfgDfValidate(_chkSampling, 100),\r\n _a[_DYN_CUSTOM_HEADERS /* @min:customHeaders */] = UNDEFINED_VALUE,\r\n _a[_DYN_CONVERT_UNDEFINED /* @min:convertUndefined */] = UNDEFINED_VALUE,\r\n _a[_DYN_EVENTS_LIMIT_IN_MEM /* @min:eventsLimitInMem */] = 10000,\r\n _a[_DYN_BUFFER_OVERRIDE /* @min:bufferOverride */] = false,\r\n _a.httpXHROverride = { isVal: isOverrideFn, v: UNDEFINED_VALUE },\r\n _a[_DYN_ALWAYS_USE_XHR_OVERR4 /* @min:alwaysUseXhrOverride */] = cfgDfBoolean(),\r\n _a.transports = UNDEFINED_VALUE,\r\n _a.retryCodes = UNDEFINED_VALUE,\r\n _a.maxRetryCnt = { isVal: isNumber, v: 10 },\r\n _a));\r\nfunction _chkSampling(value) {\r\n return !isNaN(value) && value > 0 && value <= 100;\r\n}\r\nvar EnvelopeTypeCreator = (_b = {},\r\n _b[Event.dataType] = EventEnvelopeCreator,\r\n _b[Trace.dataType] = TraceEnvelopeCreator,\r\n _b[PageView.dataType] = PageViewEnvelopeCreator,\r\n _b[PageViewPerformance.dataType] = PageViewPerformanceEnvelopeCreator,\r\n _b[Exception.dataType] = ExceptionEnvelopeCreator,\r\n _b[Metric.dataType] = MetricEnvelopeCreator,\r\n _b[RemoteDependencyData.dataType] = DependencyEnvelopeCreator,\r\n _b);\r\nvar Sender = /** @class */ (function (_super) {\r\n __extends(Sender, _super);\r\n function Sender() {\r\n var _this = _super.call(this) || this;\r\n _this.priority = 1001;\r\n _this.identifier = BreezeChannelIdentifier;\r\n // Don't set the defaults here, set them in the _initDefaults() as this is also called during unload\r\n var _consecutiveErrors; // How many times in a row a retryable error condition has occurred.\r\n var _retryAt; // The time to retry at in milliseconds from 1970/01/01 (this makes the timer calculation easy).\r\n var _lastSend; // The time of the last send operation.\r\n var _paused; // Flag indicating that the sending should be paused\r\n var _timeoutHandle; // Handle to the timer for delayed sending of batches of data.\r\n var _serializer;\r\n var _stamp_specific_redirects;\r\n var _headers;\r\n var _syncFetchPayload = 0; // Keep track of the outstanding sync fetch payload total (as sync fetch has limits)\r\n var _syncUnloadSender; // The identified sender to use for the synchronous unload stage\r\n var _offlineListener;\r\n var _evtNamespace;\r\n var _endpointUrl;\r\n var _orgEndpointUrl;\r\n var _maxBatchSizeInBytes;\r\n var _beaconSupported;\r\n var _beaconOnUnloadSupported;\r\n var _beaconNormalSupported;\r\n var _customHeaders;\r\n var _disableTelemetry;\r\n var _instrumentationKey;\r\n var _convertUndefined;\r\n var _isRetryDisabled;\r\n var _maxBatchInterval;\r\n var _sessionStorageUsed;\r\n var _bufferOverrideUsed;\r\n var _namePrefix;\r\n var _enableSendPromise;\r\n var _alwaysUseCustomSend;\r\n var _disableXhr;\r\n var _fetchKeepAlive;\r\n var _xhrSend;\r\n var _fallbackSend;\r\n var _disableBeaconSplit;\r\n var _sendPostMgr;\r\n var _retryCodes;\r\n dynamicProto(Sender, _this, function (_self, _base) {\r\n _initDefaults();\r\n _self.pause = function () {\r\n _clearScheduledTimer();\r\n _paused = true;\r\n };\r\n _self.resume = function () {\r\n if (_paused) {\r\n _paused = false;\r\n _retryAt = null;\r\n // flush if we have exceeded the max-size already\r\n _checkMaxSize();\r\n _setupTimer();\r\n }\r\n };\r\n _self.flush = function (isAsync, callBack, sendReason) {\r\n if (isAsync === void 0) { isAsync = true; }\r\n if (!_paused) {\r\n // Clear the normal schedule timer as we are going to try and flush ASAP\r\n _clearScheduledTimer();\r\n try {\r\n return _self[_DYN_TRIGGER_SEND /* @min:%2etriggerSend */](isAsync, null, sendReason || 1 /* SendRequestReason.ManualFlush */);\r\n }\r\n catch (e) {\r\n _throwInternal(_self[_DYN_DIAG_LOG /* @min:%2ediagLog */](), 1 /* eLoggingSeverity.CRITICAL */, 22 /* _eInternalMessageId.FlushFailed */, \"flush failed, telemetry will not be collected: \" + getExceptionName(e), { exception: dumpObj(e) });\r\n }\r\n }\r\n };\r\n _self.onunloadFlush = function () {\r\n if (!_paused) {\r\n if (_beaconSupported || _alwaysUseCustomSend) {\r\n try {\r\n return _self[_DYN_TRIGGER_SEND /* @min:%2etriggerSend */](true, _doUnloadSend, 2 /* SendRequestReason.Unload */);\r\n }\r\n catch (e) {\r\n _throwInternal(_self[_DYN_DIAG_LOG /* @min:%2ediagLog */](), 1 /* eLoggingSeverity.CRITICAL */, 20 /* _eInternalMessageId.FailedToSendQueuedTelemetry */, \"failed to flush with beacon sender on page unload, telemetry will not be collected: \" + getExceptionName(e), { exception: dumpObj(e) });\r\n }\r\n }\r\n else {\r\n _self.flush(false);\r\n }\r\n }\r\n };\r\n _self.addHeader = function (name, value) {\r\n _headers[name] = value;\r\n };\r\n _self[_DYN_INITIALIZE /* @min:%2einitialize */] = function (config, core, extensions, pluginChain) {\r\n if (_self.isInitialized()) {\r\n _throwInternal(_self[_DYN_DIAG_LOG /* @min:%2ediagLog */](), 1 /* eLoggingSeverity.CRITICAL */, 28 /* _eInternalMessageId.SenderNotInitialized */, \"Sender is already initialized\");\r\n }\r\n _base[_DYN_INITIALIZE /* @min:%2einitialize */](config, core, extensions, pluginChain);\r\n var identifier = _self.identifier;\r\n _serializer = new Serializer(core.logger);\r\n _consecutiveErrors = 0;\r\n _retryAt = null;\r\n _lastSend = 0;\r\n _self[_DYN__SENDER /* @min:%2e_sender */] = null;\r\n _stamp_specific_redirects = 0;\r\n var diagLog = _self[_DYN_DIAG_LOG /* @min:%2ediagLog */]();\r\n _evtNamespace = mergeEvtNamespace(createUniqueNamespace(\"Sender\"), core.evtNamespace && core.evtNamespace());\r\n _offlineListener = createOfflineListener(_evtNamespace);\r\n // This function will be re-called whenever any referenced configuration is changed\r\n _self._addHook(onConfigChange(config, function (details) {\r\n var config = details.cfg;\r\n if (config.storagePrefix) {\r\n utlSetStoragePrefix(config.storagePrefix);\r\n }\r\n var ctx = createProcessTelemetryContext(null, config, core);\r\n // getExtCfg only finds undefined values from core\r\n var senderConfig = ctx.getExtCfg(identifier, defaultAppInsightsChannelConfig);\r\n var curExtUrl = senderConfig[_DYN_ENDPOINT_URL /* @min:%2eendpointUrl */];\r\n // if it is not inital change (_endpointUrl has value)\r\n // if current sender endpoint url is not changed directly\r\n // means ExtCfg is not changed directly\r\n // then we need to monitor endpoint url changes from core\r\n if (_endpointUrl && curExtUrl === _endpointUrl) {\r\n var coreUrl = config[_DYN_ENDPOINT_URL /* @min:%2eendpointUrl */];\r\n // if core endpoint url is changed\r\n if (coreUrl && coreUrl !== curExtUrl) {\r\n // and endpoint promise changes is handled by this as well\r\n senderConfig[_DYN_ENDPOINT_URL /* @min:%2eendpointUrl */] = coreUrl;\r\n }\r\n }\r\n if (isPromiseLike(senderConfig[_DYN_INSTRUMENTATION_KEY /* @min:%2einstrumentationKey */])) {\r\n // if it is promise, means the endpoint url is from core.endpointurl\r\n senderConfig[_DYN_INSTRUMENTATION_KEY /* @min:%2einstrumentationKey */] = config[_DYN_INSTRUMENTATION_KEY /* @min:%2einstrumentationKey */];\r\n }\r\n objDefine(_self, \"_senderConfig\", {\r\n g: function () {\r\n return senderConfig;\r\n }\r\n });\r\n // Only update the endpoint if the original config !== the current config\r\n // This is so any redirect endpointUrl is not overwritten\r\n if (_orgEndpointUrl !== senderConfig[_DYN_ENDPOINT_URL /* @min:%2eendpointUrl */]) {\r\n if (_orgEndpointUrl) {\r\n // TODO: add doc to remind users to flush before changing endpoint, otherwise all unsent payload will be sent to new endpoint\r\n }\r\n _endpointUrl = _orgEndpointUrl = senderConfig[_DYN_ENDPOINT_URL /* @min:%2eendpointUrl */];\r\n }\r\n // or is not string\r\n if (core.activeStatus() === ActiveStatus.PENDING) {\r\n // waiting for core promises to be resolved\r\n // NOTE: if active status is set to pending, stop sending, clear timer here\r\n _self.pause();\r\n }\r\n else if (core.activeStatus() === ActiveStatus.ACTIVE) {\r\n // core status changed from pending to other status\r\n _self.resume();\r\n }\r\n if (_customHeaders && _customHeaders !== senderConfig[_DYN_CUSTOM_HEADERS /* @min:%2ecustomHeaders */]) {\r\n // Removing any previously defined custom headers as they have changed\r\n arrForEach(_customHeaders, function (customHeader) {\r\n delete _headers[customHeader.header];\r\n });\r\n }\r\n _maxBatchSizeInBytes = senderConfig[_DYN_MAX_BATCH_SIZE_IN_BY1 /* @min:%2emaxBatchSizeInBytes */];\r\n _beaconSupported = (senderConfig[_DYN_ONUNLOAD_DISABLE_BEA2 /* @min:%2eonunloadDisableBeacon */] === false || senderConfig[_DYN_IS_BEACON_API_DISABL3 /* @min:%2eisBeaconApiDisabled */] === false) && isBeaconsSupported();\r\n _beaconOnUnloadSupported = senderConfig[_DYN_ONUNLOAD_DISABLE_BEA2 /* @min:%2eonunloadDisableBeacon */] === false && isBeaconsSupported();\r\n _beaconNormalSupported = senderConfig[_DYN_IS_BEACON_API_DISABL3 /* @min:%2eisBeaconApiDisabled */] === false && isBeaconsSupported();\r\n _alwaysUseCustomSend = senderConfig[_DYN_ALWAYS_USE_XHR_OVERR4 /* @min:%2ealwaysUseXhrOverride */];\r\n _disableXhr = !!senderConfig[_DYN_DISABLE_XHR /* @min:%2edisableXhr */];\r\n _retryCodes = senderConfig.retryCodes;\r\n var bufferOverride = senderConfig[_DYN_BUFFER_OVERRIDE /* @min:%2ebufferOverride */];\r\n var canUseSessionStorage = !!senderConfig[_DYN_ENABLE_SESSION_STORA5 /* @min:%2eenableSessionStorageBuffer */] &&\r\n (!!bufferOverride || utlCanUseSessionStorage());\r\n var namePrefix = senderConfig.namePrefix;\r\n //Note: emitLineDelimitedJson and eventsLimitInMem is directly accessed via config in senderBuffer\r\n //Therefore, if canUseSessionStorage is not changed, we do not need to re initialize a new one\r\n var shouldUpdate = (canUseSessionStorage !== _sessionStorageUsed)\r\n || (canUseSessionStorage && (_namePrefix !== namePrefix)) // prefixName is only used in session storage\r\n || (canUseSessionStorage && (_bufferOverrideUsed !== bufferOverride));\r\n if (_self[_DYN__BUFFER /* @min:%2e_buffer */]) {\r\n // case1 (Pre and Now enableSessionStorageBuffer settings are same)\r\n // if namePrefix changes, transfer current buffer to new buffer\r\n // else no action needed\r\n //case2 (Pre and Now enableSessionStorageBuffer settings are changed)\r\n // transfer current buffer to new buffer\r\n if (shouldUpdate) {\r\n try {\r\n _self._buffer = _self._buffer[_DYN_CREATE_NEW /* @min:%2ecreateNew */](diagLog, senderConfig, canUseSessionStorage);\r\n }\r\n catch (e) {\r\n _throwInternal(_self[_DYN_DIAG_LOG /* @min:%2ediagLog */](), 1 /* eLoggingSeverity.CRITICAL */, 12 /* _eInternalMessageId.FailedAddingTelemetryToBuffer */, \"failed to transfer telemetry to different buffer storage, telemetry will be lost: \" + getExceptionName(e), { exception: dumpObj(e) });\r\n }\r\n }\r\n _checkMaxSize();\r\n }\r\n else {\r\n _self[_DYN__BUFFER /* @min:%2e_buffer */] = canUseSessionStorage\r\n ? new SessionStorageSendBuffer(diagLog, senderConfig) : new ArraySendBuffer(diagLog, senderConfig);\r\n }\r\n _namePrefix = namePrefix;\r\n _sessionStorageUsed = canUseSessionStorage;\r\n _bufferOverrideUsed = bufferOverride;\r\n _fetchKeepAlive = !senderConfig[_DYN_ONUNLOAD_DISABLE_FET6 /* @min:%2eonunloadDisableFetch */] && isFetchSupported(true);\r\n _disableBeaconSplit = !!senderConfig[_DYN_DISABLE_SEND_BEACON_7 /* @min:%2edisableSendBeaconSplit */];\r\n _self._sample = new Sample(senderConfig.samplingPercentage, diagLog);\r\n _instrumentationKey = senderConfig[_DYN_INSTRUMENTATION_KEY /* @min:%2einstrumentationKey */];\r\n if (!isPromiseLike(_instrumentationKey) && !_validateInstrumentationKey(_instrumentationKey, config)) {\r\n _throwInternal(diagLog, 1 /* eLoggingSeverity.CRITICAL */, 100 /* _eInternalMessageId.InvalidInstrumentationKey */, \"Invalid Instrumentation key \" + _instrumentationKey);\r\n }\r\n _customHeaders = senderConfig[_DYN_CUSTOM_HEADERS /* @min:%2ecustomHeaders */];\r\n if (isString(_endpointUrl) && !isInternalApplicationInsightsEndpoint(_endpointUrl) && _customHeaders && _customHeaders[_DYN_LENGTH /* @min:%2elength */] > 0) {\r\n arrForEach(_customHeaders, function (customHeader) {\r\n _this.addHeader(customHeader.header, customHeader.value);\r\n });\r\n }\r\n else {\r\n _customHeaders = null;\r\n }\r\n _enableSendPromise = senderConfig[_DYN_ENABLE_SEND_PROMISE /* @min:%2eenableSendPromise */];\r\n var sendPostConfig = _getSendPostMgrConfig();\r\n // only init it once\r\n if (!_sendPostMgr) {\r\n _sendPostMgr = new SenderPostManager();\r\n _sendPostMgr[_DYN_INITIALIZE /* @min:%2einitialize */](sendPostConfig, diagLog);\r\n }\r\n else {\r\n _sendPostMgr.SetConfig(sendPostConfig);\r\n }\r\n var customInterface = senderConfig.httpXHROverride;\r\n var httpInterface = null;\r\n var syncInterface = null;\r\n // User requested transport(s) values > Beacon > Fetch > XHR\r\n // Beacon would be filtered out if user has set disableBeaconApi to true at _getSenderInterface\r\n var theTransports = prependTransports([3 /* TransportType.Beacon */, 1 /* TransportType.Xhr */, 2 /* TransportType.Fetch */], senderConfig.transports);\r\n httpInterface = _sendPostMgr && _sendPostMgr[_DYN_GET_SENDER_INST /* @min:%2egetSenderInst */](theTransports, false);\r\n var xhrInterface = _sendPostMgr && _sendPostMgr.getFallbackInst();\r\n _xhrSend = function (payload, isAsync) {\r\n return _doSend(xhrInterface, payload, isAsync);\r\n };\r\n _fallbackSend = function (payload, isAsync) {\r\n return _doSend(xhrInterface, payload, isAsync, false);\r\n };\r\n httpInterface = _alwaysUseCustomSend ? customInterface : (httpInterface || customInterface || xhrInterface);\r\n _self[_DYN__SENDER /* @min:%2e_sender */] = function (payload, isAsync) {\r\n return _doSend(httpInterface, payload, isAsync);\r\n };\r\n if (_fetchKeepAlive) {\r\n // Try and use the fetch with keepalive\r\n _syncUnloadSender = _fetchKeepAliveSender;\r\n }\r\n var syncTransports = prependTransports([3 /* TransportType.Beacon */, 1 /* TransportType.Xhr */], senderConfig[_DYN_UNLOAD_TRANSPORTS /* @min:%2eunloadTransports */]);\r\n if (!_fetchKeepAlive) {\r\n // remove fetch from theTransports\r\n syncTransports = syncTransports.filter(function (transport) { return transport !== 2 /* TransportType.Fetch */; });\r\n }\r\n syncInterface = _sendPostMgr && _sendPostMgr[_DYN_GET_SENDER_INST /* @min:%2egetSenderInst */](syncTransports, true);\r\n syncInterface = _alwaysUseCustomSend ? customInterface : (syncInterface || customInterface);\r\n if ((_alwaysUseCustomSend || senderConfig[_DYN_UNLOAD_TRANSPORTS /* @min:%2eunloadTransports */] || !_syncUnloadSender) && syncInterface) {\r\n _syncUnloadSender = function (payload, isAsync) {\r\n return _doSend(syncInterface, payload, isAsync);\r\n };\r\n }\r\n if (!_syncUnloadSender) {\r\n _syncUnloadSender = _xhrSend;\r\n }\r\n _disableTelemetry = senderConfig.disableTelemetry;\r\n _convertUndefined = senderConfig[_DYN_CONVERT_UNDEFINED /* @min:%2econvertUndefined */] || UNDEFINED_VALUE;\r\n _isRetryDisabled = senderConfig.isRetryDisabled;\r\n _maxBatchInterval = senderConfig[_DYN_MAX_BATCH_INTERVAL /* @min:%2emaxBatchInterval */];\r\n }));\r\n };\r\n _self.processTelemetry = function (telemetryItem, itemCtx) {\r\n var _a;\r\n itemCtx = _self._getTelCtx(itemCtx);\r\n var diagLogger = itemCtx[_DYN_DIAG_LOG /* @min:%2ediagLog */]();\r\n try {\r\n var isValidate = _validate(telemetryItem, diagLogger);\r\n if (!isValidate) {\r\n return;\r\n }\r\n var aiEnvelope = _getEnvelope(telemetryItem, diagLogger);\r\n if (!aiEnvelope) {\r\n return;\r\n }\r\n // check if the incoming payload is too large, truncate if necessary\r\n var payload = _serializer[_DYN_SERIALIZE /* @min:%2eserialize */](aiEnvelope);\r\n // flush if we would exceed the max-size limit by adding this item\r\n var buffer = _self[_DYN__BUFFER /* @min:%2e_buffer */];\r\n _checkMaxSize(payload);\r\n var payloadItem = (_a = {},\r\n _a[_DYN_ITEM /* @min:item */] = payload,\r\n _a.cnt = 0 // inital cnt will always be 0\r\n ,\r\n _a);\r\n // enqueue the payload\r\n buffer[_DYN_ENQUEUE /* @min:%2eenqueue */](payloadItem);\r\n // ensure an invocation timeout is set\r\n _setupTimer();\r\n }\r\n catch (e) {\r\n _throwInternal(diagLogger, 2 /* eLoggingSeverity.WARNING */, 12 /* _eInternalMessageId.FailedAddingTelemetryToBuffer */, \"Failed adding telemetry to the sender's buffer, some telemetry will be lost: \" + getExceptionName(e), { exception: dumpObj(e) });\r\n }\r\n // hand off the telemetry item to the next plugin\r\n _self.processNext(telemetryItem, itemCtx);\r\n };\r\n _self.isCompletelyIdle = function () {\r\n return !_paused && _syncFetchPayload === 0 && _self._buffer[_DYN_COUNT /* @min:%2ecount */]() === 0;\r\n };\r\n _self.getOfflineListener = function () {\r\n return _offlineListener;\r\n };\r\n /**\r\n * xhr state changes\r\n */\r\n _self._xhrReadyStateChange = function (xhr, payload, countOfItemsInPayload) {\r\n // since version 3.2.0, this function is no-op\r\n if (_isStringArr(payload)) {\r\n return;\r\n }\r\n return _xhrReadyStateChange(xhr, payload, countOfItemsInPayload);\r\n };\r\n /**\r\n * Immediately send buffered data\r\n * @param async - Indicates if the events should be sent asynchronously\r\n * @param forcedSender - Indicates the forcedSender, undefined if not passed\r\n */\r\n _self[_DYN_TRIGGER_SEND /* @min:%2etriggerSend */] = function (async, forcedSender, sendReason) {\r\n if (async === void 0) { async = true; }\r\n var result;\r\n if (!_paused) {\r\n try {\r\n var buffer = _self[_DYN__BUFFER /* @min:%2e_buffer */];\r\n // Send data only if disableTelemetry is false\r\n if (!_disableTelemetry) {\r\n if (buffer[_DYN_COUNT /* @min:%2ecount */]() > 0) {\r\n var payload = buffer.getItems();\r\n _notifySendRequest(sendReason || 0 /* SendRequestReason.Undefined */, async);\r\n // invoke send\r\n if (forcedSender) {\r\n result = forcedSender.call(_self, payload, async);\r\n }\r\n else {\r\n result = _self[_DYN__SENDER /* @min:%2e_sender */](payload, async);\r\n }\r\n }\r\n // update lastSend time to enable throttling\r\n _lastSend = +new Date;\r\n }\r\n else {\r\n buffer[_DYN_CLEAR /* @min:%2eclear */]();\r\n }\r\n _clearScheduledTimer();\r\n }\r\n catch (e) {\r\n /* Ignore this error for IE under v10 */\r\n var ieVer = getIEVersion();\r\n if (!ieVer || ieVer > 9) {\r\n _throwInternal(_self[_DYN_DIAG_LOG /* @min:%2ediagLog */](), 1 /* eLoggingSeverity.CRITICAL */, 40 /* _eInternalMessageId.TransmissionFailed */, \"Telemetry transmission failed, some telemetry will be lost: \" + getExceptionName(e), { exception: dumpObj(e) });\r\n }\r\n }\r\n }\r\n return result;\r\n };\r\n _self.getOfflineSupport = function () {\r\n var _a;\r\n return _a = {\r\n getUrl: function () {\r\n return _endpointUrl;\r\n },\r\n createPayload: _createPayload\r\n },\r\n _a[_DYN_SERIALIZE /* @min:serialize */] = _serialize,\r\n _a.batch = _batch,\r\n _a.shouldProcess = function (evt) {\r\n return !!_validate(evt);\r\n },\r\n _a;\r\n };\r\n _self._doTeardown = function (unloadCtx, unloadState) {\r\n _self.onunloadFlush();\r\n runTargetUnload(_offlineListener, false);\r\n _initDefaults();\r\n };\r\n /**\r\n * error handler\r\n */\r\n _self[_DYN__ON_ERROR /* @min:%2e_onError */] = function (payload, message, event) {\r\n // since version 3.1.3, string[] is no-op\r\n if (_isStringArr(payload)) {\r\n return;\r\n }\r\n return _onError(payload, message, event);\r\n };\r\n /**\r\n * partial success handler\r\n */\r\n _self[_DYN__ON_PARTIAL_SUCCESS /* @min:%2e_onPartialSuccess */] = function (payload, results) {\r\n // since version 3.1.3, string[] is no-op\r\n if (_isStringArr(payload)) {\r\n return;\r\n }\r\n return _onPartialSuccess(payload, results);\r\n };\r\n /**\r\n * success handler\r\n */\r\n _self[_DYN__ON_SUCCESS /* @min:%2e_onSuccess */] = function (payload, countOfItemsInPayload) {\r\n // since version 3.1.3, string[] is no-op\r\n if (_isStringArr(payload)) {\r\n return;\r\n }\r\n return _onSuccess(payload, countOfItemsInPayload);\r\n //_self._buffer && _self._buffer.clearSent(payload);\r\n };\r\n /**\r\n * xdr state changes\r\n */\r\n _self._xdrOnLoad = function (xdr, payload) {\r\n // since version 3.1.3, string[] is no-op\r\n if (_isStringArr(payload)) {\r\n return;\r\n }\r\n return _xdrOnLoad(xdr, payload);\r\n };\r\n function _xdrOnLoad(xdr, payload) {\r\n var responseText = _getResponseText(xdr);\r\n if (xdr && (responseText + \"\" === \"200\" || responseText === \"\")) {\r\n _consecutiveErrors = 0;\r\n _self[_DYN__ON_SUCCESS /* @min:%2e_onSuccess */](payload, 0);\r\n }\r\n else {\r\n var results = parseResponse(responseText);\r\n if (results && results[_DYN_ITEMS_RECEIVED /* @min:%2eitemsReceived */] && results[_DYN_ITEMS_RECEIVED /* @min:%2eitemsReceived */] > results[_DYN_ITEMS_ACCEPTED /* @min:%2eitemsAccepted */]\r\n && !_isRetryDisabled) {\r\n _self[_DYN__ON_PARTIAL_SUCCESS /* @min:%2e_onPartialSuccess */](payload, results);\r\n }\r\n else {\r\n _self[_DYN__ON_ERROR /* @min:%2e_onError */](payload, formatErrorMessageXdr(xdr));\r\n }\r\n }\r\n }\r\n function _getSendPostMgrConfig() {\r\n var _a;\r\n try {\r\n var onCompleteFuncs = {\r\n xdrOnComplete: function (xdr, oncomplete, payload) {\r\n var data = _getPayloadArr(payload);\r\n if (!data) {\r\n return;\r\n }\r\n return _xdrOnLoad(xdr, data);\r\n },\r\n fetchOnComplete: function (response, onComplete, resValue, payload) {\r\n var data = _getPayloadArr(payload);\r\n if (!data) {\r\n return;\r\n }\r\n return _checkResponsStatus(response.status, data, response.url, data[_DYN_LENGTH /* @min:%2elength */], response.statusText, resValue || \"\");\r\n },\r\n xhrOnComplete: function (request, oncomplete, payload) {\r\n var data = _getPayloadArr(payload);\r\n if (!data) {\r\n return;\r\n }\r\n return _xhrReadyStateChange(request, data, data[_DYN_LENGTH /* @min:%2elength */]);\r\n },\r\n beaconOnRetry: function (data, onComplete, canSend) {\r\n return _onBeaconRetry(data, onComplete, canSend);\r\n }\r\n };\r\n var config = (_a = {},\r\n _a[_DYN_ENABLE_SEND_PROMISE /* @min:enableSendPromise */] = _enableSendPromise,\r\n _a.isOneDs = false,\r\n _a.disableCredentials = false,\r\n _a[_DYN_DISABLE_XHR /* @min:disableXhr */] = _disableXhr,\r\n _a.disableBeacon = !_beaconNormalSupported,\r\n _a.disableBeaconSync = !_beaconOnUnloadSupported,\r\n _a.senderOnCompleteCallBack = onCompleteFuncs,\r\n _a);\r\n return config;\r\n }\r\n catch (e) {\r\n // eslint-disable-next-line no-empty\r\n }\r\n return null;\r\n }\r\n /**\r\n * xhr state changes\r\n */\r\n function _xhrReadyStateChange(xhr, payload, countOfItemsInPayload) {\r\n if (xhr.readyState === 4) {\r\n _checkResponsStatus(xhr.status, payload, xhr.responseURL, countOfItemsInPayload, formatErrorMessageXhr(xhr), _getResponseText(xhr) || xhr.response);\r\n }\r\n }\r\n /**\r\n * error handler\r\n */\r\n function _onError(payload, message, event) {\r\n _throwInternal(_self[_DYN_DIAG_LOG /* @min:%2ediagLog */](), 2 /* eLoggingSeverity.WARNING */, 26 /* _eInternalMessageId.OnError */, \"Failed to send telemetry.\", { message: message });\r\n _self._buffer && _self._buffer[_DYN_CLEAR_SENT /* @min:%2eclearSent */](payload);\r\n }\r\n /**\r\n * partial success handler\r\n */\r\n function _onPartialSuccess(payload, results) {\r\n var failed = [];\r\n var retry = [];\r\n // Iterate through the reversed array of errors so that splicing doesn't have invalid indexes after the first item.\r\n var errors = results.errors.reverse();\r\n for (var _i = 0, errors_1 = errors; _i < errors_1.length; _i++) {\r\n var error = errors_1[_i];\r\n var extracted = payload.splice(error.index, 1)[0];\r\n if (_isRetriable(error.statusCode)) {\r\n retry[_DYN_PUSH /* @min:%2epush */](extracted);\r\n }\r\n else {\r\n // All other errors, including: 402 (Monthly quota exceeded) and 439 (Too many requests and refresh cache).\r\n failed[_DYN_PUSH /* @min:%2epush */](extracted);\r\n }\r\n }\r\n if (payload[_DYN_LENGTH /* @min:%2elength */] > 0) {\r\n _self[_DYN__ON_SUCCESS /* @min:%2e_onSuccess */](payload, results[_DYN_ITEMS_ACCEPTED /* @min:%2eitemsAccepted */]);\r\n }\r\n if (failed[_DYN_LENGTH /* @min:%2elength */] > 0) {\r\n _self[_DYN__ON_ERROR /* @min:%2e_onError */](failed, formatErrorMessageXhr(null, [\"partial success\", results[_DYN_ITEMS_ACCEPTED /* @min:%2eitemsAccepted */], \"of\", results.itemsReceived].join(\" \")));\r\n }\r\n if (retry[_DYN_LENGTH /* @min:%2elength */] > 0) {\r\n _resendPayload(retry);\r\n _throwInternal(_self[_DYN_DIAG_LOG /* @min:%2ediagLog */](), 2 /* eLoggingSeverity.WARNING */, 40 /* _eInternalMessageId.TransmissionFailed */, \"Partial success. \" +\r\n \"Delivered: \" + payload[_DYN_LENGTH /* @min:%2elength */] + \", Failed: \" + failed[_DYN_LENGTH /* @min:%2elength */] +\r\n \". Will retry to send \" + retry[_DYN_LENGTH /* @min:%2elength */] + \" our of \" + results[_DYN_ITEMS_RECEIVED /* @min:%2eitemsReceived */] + \" items\");\r\n }\r\n }\r\n /**\r\n * success handler\r\n */\r\n function _onSuccess(payload, countOfItemsInPayload) {\r\n _self._buffer && _self._buffer[_DYN_CLEAR_SENT /* @min:%2eclearSent */](payload);\r\n }\r\n function _getPayloadArr(payload) {\r\n try {\r\n if (payload) {\r\n var internalPayload = payload;\r\n var arr = internalPayload[_DYN_ORI_PAYLOAD /* @min:%2eoriPayload */];\r\n if (arr && arr[_DYN_LENGTH /* @min:%2elength */]) {\r\n return arr;\r\n }\r\n return null;\r\n }\r\n }\r\n catch (e) {\r\n // eslint-disable-next-line no-empty\r\n }\r\n return null;\r\n }\r\n function _validate(telemetryItem, diagLogger) {\r\n if (_disableTelemetry) {\r\n // Do not send/save data\r\n return false;\r\n }\r\n // validate input\r\n if (!telemetryItem) {\r\n diagLogger && _throwInternal(diagLogger, 1 /* eLoggingSeverity.CRITICAL */, 7 /* _eInternalMessageId.CannotSendEmptyTelemetry */, \"Cannot send empty telemetry\");\r\n return false;\r\n }\r\n // validate event\r\n if (telemetryItem.baseData && !telemetryItem[_DYN_BASE_TYPE /* @min:%2ebaseType */]) {\r\n diagLogger && _throwInternal(diagLogger, 1 /* eLoggingSeverity.CRITICAL */, 70 /* _eInternalMessageId.InvalidEvent */, \"Cannot send telemetry without baseData and baseType\");\r\n return false;\r\n }\r\n if (!telemetryItem[_DYN_BASE_TYPE /* @min:%2ebaseType */]) {\r\n // Default\r\n telemetryItem[_DYN_BASE_TYPE /* @min:%2ebaseType */] = \"EventData\";\r\n }\r\n // ensure a sender was constructed\r\n if (!_self[_DYN__SENDER /* @min:%2e_sender */]) {\r\n diagLogger && _throwInternal(diagLogger, 1 /* eLoggingSeverity.CRITICAL */, 28 /* _eInternalMessageId.SenderNotInitialized */, \"Sender was not initialized\");\r\n return false;\r\n }\r\n // check if this item should be sampled in, else add sampleRate tag\r\n if (!_isSampledIn(telemetryItem)) {\r\n // Item is sampled out, do not send it\r\n diagLogger && _throwInternal(diagLogger, 2 /* eLoggingSeverity.WARNING */, 33 /* _eInternalMessageId.TelemetrySampledAndNotSent */, \"Telemetry item was sampled out and not sent\", { SampleRate: _self._sample[_DYN_SAMPLE_RATE /* @min:%2esampleRate */] });\r\n return false;\r\n }\r\n else {\r\n telemetryItem[SampleRate] = _self._sample[_DYN_SAMPLE_RATE /* @min:%2esampleRate */];\r\n }\r\n return true;\r\n }\r\n function _getEnvelope(telemetryItem, diagLogger) {\r\n // construct an envelope that Application Insights endpoint can understand\r\n // if ikey of telemetry is provided and not empty, envelope will use this iKey instead of senderConfig iKey\r\n var defaultEnvelopeIkey = telemetryItem.iKey || _instrumentationKey;\r\n var aiEnvelope = Sender.constructEnvelope(telemetryItem, defaultEnvelopeIkey, diagLogger, _convertUndefined);\r\n if (!aiEnvelope) {\r\n _throwInternal(diagLogger, 1 /* eLoggingSeverity.CRITICAL */, 47 /* _eInternalMessageId.CreateEnvelopeError */, \"Unable to create an AppInsights envelope\");\r\n return;\r\n }\r\n var doNotSendItem = false;\r\n // this is for running in legacy mode, where customer may already have a custom initializer present\r\n if (telemetryItem[_DYN_TAGS /* @min:%2etags */] && telemetryItem[_DYN_TAGS /* @min:%2etags */][ProcessLegacy]) {\r\n arrForEach(telemetryItem[_DYN_TAGS /* @min:%2etags */][ProcessLegacy], function (callBack) {\r\n try {\r\n if (callBack && callBack(aiEnvelope) === false) {\r\n doNotSendItem = true;\r\n _warnToConsole(diagLogger, \"Telemetry processor check returns false\");\r\n }\r\n }\r\n catch (e) {\r\n // log error but dont stop executing rest of the telemetry initializers\r\n // doNotSendItem = true;\r\n _throwInternal(diagLogger, 1 /* eLoggingSeverity.CRITICAL */, 64 /* _eInternalMessageId.TelemetryInitializerFailed */, \"One of telemetry initializers failed, telemetry item will not be sent: \" + getExceptionName(e), { exception: dumpObj(e) }, true);\r\n }\r\n });\r\n delete telemetryItem[_DYN_TAGS /* @min:%2etags */][ProcessLegacy];\r\n }\r\n if (doNotSendItem) {\r\n return; // do not send, no need to execute next plugin\r\n }\r\n return aiEnvelope;\r\n }\r\n function _serialize(item) {\r\n var rlt = EMPTY_STR;\r\n var diagLogger = _self[_DYN_DIAG_LOG /* @min:%2ediagLog */]();\r\n try {\r\n var valid = _validate(item, diagLogger);\r\n var envelope = null;\r\n if (valid) {\r\n envelope = _getEnvelope(item, diagLogger);\r\n }\r\n if (envelope) {\r\n rlt = _serializer[_DYN_SERIALIZE /* @min:%2eserialize */](envelope);\r\n }\r\n }\r\n catch (e) {\r\n // eslint-disable-next-line no-empty\r\n }\r\n return rlt;\r\n }\r\n function _batch(arr) {\r\n var rlt = EMPTY_STR;\r\n if (arr && arr[_DYN_LENGTH /* @min:%2elength */]) {\r\n rlt = \"[\" + arr.join(\",\") + \"]\";\r\n }\r\n return rlt;\r\n }\r\n function _createPayload(data) {\r\n var _a;\r\n var headers = _getHeaders();\r\n return _a = {\r\n urlString: _endpointUrl\r\n },\r\n _a[_DYN_DATA /* @min:data */] = data,\r\n _a.headers = headers,\r\n _a;\r\n }\r\n function _isSampledIn(envelope) {\r\n return _self._sample.isSampledIn(envelope);\r\n }\r\n function _getOnComplete(payload, status, headers, response) {\r\n // ***********************************************************************************************\r\n //TODO: handle other status codes\r\n if (status === 200 && payload) {\r\n _self._onSuccess(payload, payload[_DYN_LENGTH /* @min:%2elength */]);\r\n }\r\n else {\r\n response && _self[_DYN__ON_ERROR /* @min:%2e_onError */](payload, response);\r\n }\r\n }\r\n function _doSend(sendInterface, payload, isAsync, markAsSent) {\r\n if (markAsSent === void 0) { markAsSent = true; }\r\n var onComplete = function (status, headers, response) {\r\n return _getOnComplete(payload, status, headers, response);\r\n };\r\n var payloadData = _getPayload(payload);\r\n var sendPostFunc = sendInterface && sendInterface.sendPOST;\r\n if (sendPostFunc && payloadData) {\r\n // ***********************************************************************************************\r\n // mark payload as sent at the beginning of calling each send function\r\n if (markAsSent) {\r\n _self._buffer[_DYN_MARK_AS_SENT /* @min:%2emarkAsSent */](payload);\r\n }\r\n return sendPostFunc(payloadData, onComplete, !isAsync);\r\n }\r\n return null;\r\n }\r\n function _getPayload(payload) {\r\n var _a;\r\n if (isArray(payload) && payload[_DYN_LENGTH /* @min:%2elength */] > 0) {\r\n var batch = _self[_DYN__BUFFER /* @min:%2e_buffer */].batchPayloads(payload);\r\n var headers = _getHeaders();\r\n var payloadData = (_a = {},\r\n _a[_DYN_DATA /* @min:data */] = batch,\r\n _a.urlString = _endpointUrl,\r\n _a.headers = headers,\r\n _a.disableXhrSync = _disableXhr,\r\n _a.disableFetchKeepAlive = !_fetchKeepAlive,\r\n _a[_DYN_ORI_PAYLOAD /* @min:oriPayload */] = payload,\r\n _a);\r\n return payloadData;\r\n }\r\n return null;\r\n }\r\n function _getHeaders() {\r\n try {\r\n var headers = _headers || {};\r\n if (isInternalApplicationInsightsEndpoint(_endpointUrl)) {\r\n headers[RequestHeaders[6 /* eRequestHeaders.sdkContextHeader */]] = RequestHeaders[7 /* eRequestHeaders.sdkContextHeaderAppIdRequest */];\r\n }\r\n return headers;\r\n }\r\n catch (e) {\r\n // eslint-disable-next-line no-empty\r\n }\r\n return null;\r\n }\r\n function _checkMaxSize(incomingPayload) {\r\n var incomingSize = incomingPayload ? incomingPayload[_DYN_LENGTH /* @min:%2elength */] : 0;\r\n if ((_self[_DYN__BUFFER /* @min:%2e_buffer */].size() + incomingSize) > _maxBatchSizeInBytes) {\r\n if (!_offlineListener || _offlineListener.isOnline()) { // only trigger send when currently online\r\n _self[_DYN_TRIGGER_SEND /* @min:%2etriggerSend */](true, null, 10 /* SendRequestReason.MaxBatchSize */);\r\n }\r\n return true;\r\n }\r\n return false;\r\n }\r\n function _checkResponsStatus(status, payload, responseUrl, countOfItemsInPayload, errorMessage, res) {\r\n var response = null;\r\n if (!_self._appId) {\r\n response = parseResponse(res);\r\n if (response && response.appId) {\r\n _self._appId = response.appId;\r\n }\r\n }\r\n if ((status < 200 || status >= 300) && status !== 0) {\r\n // Update End Point url if permanent redirect or moved permanently\r\n // Updates the end point url before retry\r\n if (status === 301 || status === 307 || status === 308) {\r\n if (!_checkAndUpdateEndPointUrl(responseUrl)) {\r\n _self[_DYN__ON_ERROR /* @min:%2e_onError */](payload, errorMessage);\r\n return;\r\n }\r\n }\r\n if (_offlineListener && !_offlineListener.isOnline()) { // offline\r\n // Note: Don't check for status == 0, since adblock gives this code\r\n if (!_isRetryDisabled) {\r\n var offlineBackOffMultiplier = 10; // arbritrary number\r\n _resendPayload(payload, offlineBackOffMultiplier);\r\n _throwInternal(_self[_DYN_DIAG_LOG /* @min:%2ediagLog */](), 2 /* eLoggingSeverity.WARNING */, 40 /* _eInternalMessageId.TransmissionFailed */, \". Offline - Response Code: \".concat(status, \". Offline status: \").concat(!_offlineListener.isOnline(), \". Will retry to send \").concat(payload.length, \" items.\"));\r\n }\r\n return;\r\n }\r\n if (!_isRetryDisabled && _isRetriable(status)) {\r\n _resendPayload(payload);\r\n _throwInternal(_self[_DYN_DIAG_LOG /* @min:%2ediagLog */](), 2 /* eLoggingSeverity.WARNING */, 40 /* _eInternalMessageId.TransmissionFailed */, \". \" +\r\n \"Response code \" + status + \". Will retry to send \" + payload[_DYN_LENGTH /* @min:%2elength */] + \" items.\");\r\n }\r\n else {\r\n _self[_DYN__ON_ERROR /* @min:%2e_onError */](payload, errorMessage);\r\n }\r\n }\r\n else {\r\n // check if the xhr's responseURL or fetch's response.url is same as endpoint url\r\n // TODO after 10 redirects force send telemetry with 'redirect=false' as query parameter.\r\n _checkAndUpdateEndPointUrl(responseUrl);\r\n if (status === 206) {\r\n if (!response) {\r\n response = parseResponse(res);\r\n }\r\n if (response && !_isRetryDisabled) {\r\n _self[_DYN__ON_PARTIAL_SUCCESS /* @min:%2e_onPartialSuccess */](payload, response);\r\n }\r\n else {\r\n _self[_DYN__ON_ERROR /* @min:%2e_onError */](payload, errorMessage);\r\n }\r\n }\r\n else {\r\n _consecutiveErrors = 0;\r\n _self[_DYN__ON_SUCCESS /* @min:%2e_onSuccess */](payload, countOfItemsInPayload);\r\n }\r\n }\r\n }\r\n function _checkAndUpdateEndPointUrl(responseUrl) {\r\n // Maximum stamp specific redirects allowed(uncomment this when breeze is ready with not allowing redirects feature)\r\n if (_stamp_specific_redirects >= 10) {\r\n // _self._senderConfig.endpointUrl = () => Sender._getDefaultAppInsightsChannelConfig().endpointUrl()+\"/?redirect=false\";\r\n // _stamp_specific_redirects = 0;\r\n return false;\r\n }\r\n if (!isNullOrUndefined(responseUrl) && responseUrl !== \"\") {\r\n if (responseUrl !== _endpointUrl) {\r\n _endpointUrl = responseUrl;\r\n ++_stamp_specific_redirects;\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n function _doUnloadSend(payload, isAsync) {\r\n if (_syncUnloadSender) {\r\n // We are unloading so always call the sender with sync set to false\r\n _syncUnloadSender(payload, false);\r\n }\r\n else {\r\n // Fallback to the previous beacon Sender (which causes a CORB warning on chrome now)\r\n var beaconInst = _sendPostMgr && _sendPostMgr[_DYN_GET_SENDER_INST /* @min:%2egetSenderInst */]([3 /* TransportType.Beacon */], true);\r\n return _doSend(beaconInst, payload, isAsync);\r\n }\r\n }\r\n function _onBeaconRetry(payload, onComplete, canSend) {\r\n var internalPayload = payload;\r\n var data = internalPayload && internalPayload[_DYN_ORI_PAYLOAD /* @min:%2eoriPayload */];\r\n if (!_disableBeaconSplit) {\r\n // Failed to send entire payload so try and split data and try to send as much events as possible\r\n var droppedPayload = [];\r\n for (var lp = 0; lp < data[_DYN_LENGTH /* @min:%2elength */]; lp++) {\r\n var thePayload = data[lp];\r\n var arr = [thePayload];\r\n var item = _getPayload(arr);\r\n if (!canSend(item, onComplete)) {\r\n // Can't send anymore, so split the batch and drop the rest\r\n droppedPayload[_DYN_PUSH /* @min:%2epush */](thePayload);\r\n }\r\n else {\r\n _self._onSuccess(arr, arr[_DYN_LENGTH /* @min:%2elength */]);\r\n }\r\n }\r\n if (droppedPayload[_DYN_LENGTH /* @min:%2elength */] > 0) {\r\n _fallbackSend && _fallbackSend(droppedPayload, true);\r\n _throwInternal(_self[_DYN_DIAG_LOG /* @min:%2ediagLog */](), 2 /* eLoggingSeverity.WARNING */, 40 /* _eInternalMessageId.TransmissionFailed */, \". \" + \"Failed to send telemetry with Beacon API, retried with normal sender.\");\r\n }\r\n }\r\n else {\r\n _fallbackSend && _fallbackSend(data, true);\r\n _throwInternal(_self[_DYN_DIAG_LOG /* @min:%2ediagLog */](), 2 /* eLoggingSeverity.WARNING */, 40 /* _eInternalMessageId.TransmissionFailed */, \". \" + \"Failed to send telemetry with Beacon API, retried with normal sender.\");\r\n }\r\n }\r\n function _isStringArr(arr) {\r\n try {\r\n if (arr && arr[_DYN_LENGTH /* @min:%2elength */]) {\r\n return (isString(arr[0]));\r\n }\r\n }\r\n catch (e) {\r\n //TODO: log, sender use IInternalStorageItem instead of string since 3.1.3\r\n }\r\n return null;\r\n }\r\n function _fetchKeepAliveSender(payload, isAsync) {\r\n var transport = null;\r\n if (isArray(payload)) {\r\n var payloadSize = payload[_DYN_LENGTH /* @min:%2elength */];\r\n for (var lp = 0; lp < payload[_DYN_LENGTH /* @min:%2elength */]; lp++) {\r\n payloadSize += payload[lp].item[_DYN_LENGTH /* @min:%2elength */];\r\n }\r\n var syncFetchPayload = _sendPostMgr.getSyncFetchPayload();\r\n if ((syncFetchPayload + payloadSize) <= FetchSyncRequestSizeLimitBytes) {\r\n transport = 2 /* TransportType.Fetch */;\r\n }\r\n else if (isBeaconsSupported()) {\r\n // Fallback to beacon sender as we at least get told which events can't be scheduled\r\n transport = 3 /* TransportType.Beacon */;\r\n }\r\n else {\r\n // Payload is going to be too big so just try and send via XHR\r\n transport = 1 /* TransportType.Xhr */;\r\n _throwInternal(_self[_DYN_DIAG_LOG /* @min:%2ediagLog */](), 2 /* eLoggingSeverity.WARNING */, 40 /* _eInternalMessageId.TransmissionFailed */, \". \" + \"Failed to send telemetry with Beacon API, retried with xhrSender.\");\r\n }\r\n var inst = _sendPostMgr && _sendPostMgr[_DYN_GET_SENDER_INST /* @min:%2egetSenderInst */]([transport], true);\r\n return _doSend(inst, payload, isAsync);\r\n }\r\n return null;\r\n }\r\n /**\r\n * Resend payload. Adds payload back to the send buffer and setup a send timer (with exponential backoff).\r\n * @param payload\r\n */\r\n function _resendPayload(payload, linearFactor) {\r\n if (linearFactor === void 0) { linearFactor = 1; }\r\n if (!payload || payload[_DYN_LENGTH /* @min:%2elength */] === 0) {\r\n return;\r\n }\r\n var buffer = _self[_DYN__BUFFER /* @min:%2e_buffer */];\r\n buffer[_DYN_CLEAR_SENT /* @min:%2eclearSent */](payload);\r\n _consecutiveErrors++;\r\n for (var _i = 0, payload_1 = payload; _i < payload_1.length; _i++) {\r\n var item = payload_1[_i];\r\n item.cnt = item.cnt || 0; // to make sure we have cnt for each payload\r\n item.cnt++; // when resend, increase cnt\r\n buffer[_DYN_ENQUEUE /* @min:%2eenqueue */](item);\r\n }\r\n // setup timer\r\n _setRetryTime(linearFactor);\r\n _setupTimer();\r\n }\r\n /**\r\n * Calculates the time to wait before retrying in case of an error based on\r\n * http://en.wikipedia.org/wiki/Exponential_backoff\r\n */\r\n function _setRetryTime(linearFactor) {\r\n var SlotDelayInSeconds = 10;\r\n var delayInSeconds;\r\n if (_consecutiveErrors <= 1) {\r\n delayInSeconds = SlotDelayInSeconds;\r\n }\r\n else {\r\n var backOffSlot = (Math.pow(2, _consecutiveErrors) - 1) / 2;\r\n // tslint:disable-next-line:insecure-random\r\n var backOffDelay = Math.floor(Math.random() * backOffSlot * SlotDelayInSeconds) + 1;\r\n backOffDelay = linearFactor * backOffDelay;\r\n delayInSeconds = Math.max(Math.min(backOffDelay, 3600), SlotDelayInSeconds);\r\n }\r\n // TODO: Log the backoff time like the C# version does.\r\n var retryAfterTimeSpan = dateNow() + (delayInSeconds * 1000);\r\n // TODO: Log the retry at time like the C# version does.\r\n _retryAt = retryAfterTimeSpan;\r\n }\r\n /**\r\n * Sets up the timer which triggers actually sending the data.\r\n */\r\n function _setupTimer() {\r\n if (!_timeoutHandle && !_paused) {\r\n var retryInterval = _retryAt ? Math.max(0, _retryAt - dateNow()) : 0;\r\n var timerValue = Math.max(_maxBatchInterval, retryInterval);\r\n _timeoutHandle = scheduleTimeout(function () {\r\n _timeoutHandle = null;\r\n _self[_DYN_TRIGGER_SEND /* @min:%2etriggerSend */](true, null, 1 /* SendRequestReason.NormalSchedule */);\r\n }, timerValue);\r\n }\r\n }\r\n function _clearScheduledTimer() {\r\n _timeoutHandle && _timeoutHandle.cancel();\r\n _timeoutHandle = null;\r\n _retryAt = null;\r\n }\r\n /**\r\n * Checks if the SDK should resend the payload after receiving this status code from the backend.\r\n * @param statusCode\r\n */\r\n function _isRetriable(statusCode) {\r\n // retryCodes = [] means should not retry\r\n if (!isNullOrUndefined(_retryCodes)) {\r\n return _retryCodes[_DYN_LENGTH /* @min:%2elength */] && _retryCodes.indexOf(statusCode) > -1;\r\n }\r\n return statusCode === 401 // Unauthorized\r\n // Removing as private links can return a 403 which causes excessive retries and session storage usage\r\n // || statusCode === 403 // Forbidden\r\n || statusCode === 408 // Timeout\r\n || statusCode === 429 // Too many requests.\r\n || statusCode === 500 // Internal server error.\r\n || statusCode === 502 // Bad Gateway.\r\n || statusCode === 503 // Service unavailable.\r\n || statusCode === 504; // Gateway timeout.\r\n }\r\n // Using function lookups for backward compatibility as the getNotifyMgr() did not exist until after v2.5.6\r\n function _getNotifyMgr() {\r\n var func = \"getNotifyMgr\";\r\n if (_self.core[func]) {\r\n return _self.core[func]();\r\n }\r\n // using _self.core['_notificationManager'] for backward compatibility\r\n return _self.core[\"_notificationManager\"];\r\n }\r\n function _notifySendRequest(sendRequest, isAsync) {\r\n var manager = _getNotifyMgr();\r\n if (manager && manager[_DYN_EVENTS_SEND_REQUEST /* @min:%2eeventsSendRequest */]) {\r\n try {\r\n manager[_DYN_EVENTS_SEND_REQUEST /* @min:%2eeventsSendRequest */](sendRequest, isAsync);\r\n }\r\n catch (e) {\r\n _throwInternal(_self[_DYN_DIAG_LOG /* @min:%2ediagLog */](), 1 /* eLoggingSeverity.CRITICAL */, 74 /* _eInternalMessageId.NotificationException */, \"send request notification failed: \" + getExceptionName(e), { exception: dumpObj(e) });\r\n }\r\n }\r\n }\r\n /**\r\n * Validate UUID Format\r\n * Specs taken from https://tools.ietf.org/html/rfc4122 and breeze repo\r\n */\r\n function _validateInstrumentationKey(instrumentationKey, config) {\r\n var disableValidation = config.disableInstrumentationKeyValidation;\r\n var disableIKeyValidationFlag = isNullOrUndefined(disableValidation) ? false : disableValidation;\r\n if (disableIKeyValidationFlag) {\r\n return true;\r\n }\r\n var UUID_Regex = \"^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$\";\r\n var regexp = new RegExp(UUID_Regex);\r\n return regexp.test(instrumentationKey);\r\n }\r\n function _initDefaults() {\r\n _self[_DYN__SENDER /* @min:%2e_sender */] = null;\r\n _self[_DYN__BUFFER /* @min:%2e_buffer */] = null;\r\n _self._appId = null;\r\n _self._sample = null;\r\n _headers = {};\r\n _offlineListener = null;\r\n _consecutiveErrors = 0;\r\n _retryAt = null;\r\n _lastSend = null;\r\n _paused = false;\r\n _timeoutHandle = null;\r\n _serializer = null;\r\n _stamp_specific_redirects = 0;\r\n _syncFetchPayload = 0;\r\n _syncUnloadSender = null;\r\n _evtNamespace = null;\r\n _endpointUrl = null;\r\n _orgEndpointUrl = null;\r\n _maxBatchSizeInBytes = 0;\r\n _beaconSupported = false;\r\n _customHeaders = null;\r\n _disableTelemetry = false;\r\n _instrumentationKey = null;\r\n _convertUndefined = UNDEFINED_VALUE;\r\n _isRetryDisabled = false;\r\n _sessionStorageUsed = null;\r\n _namePrefix = UNDEFINED_VALUE;\r\n _disableXhr = false;\r\n _fetchKeepAlive = false;\r\n _disableBeaconSplit = false;\r\n _xhrSend = null;\r\n _fallbackSend = null;\r\n _sendPostMgr = null;\r\n objDefine(_self, \"_senderConfig\", {\r\n g: function () {\r\n return objExtend({}, defaultAppInsightsChannelConfig);\r\n }\r\n });\r\n }\r\n });\r\n return _this;\r\n }\r\n Sender.constructEnvelope = function (orig, iKey, logger, convertUndefined) {\r\n var envelope;\r\n if (iKey !== orig.iKey && !isNullOrUndefined(iKey)) {\r\n envelope = __assign(__assign({}, orig), { iKey: iKey });\r\n }\r\n else {\r\n envelope = orig;\r\n }\r\n var creator = EnvelopeTypeCreator[envelope.baseType] || EventEnvelopeCreator;\r\n return creator(logger, envelope, convertUndefined);\r\n };\r\n /**\r\n * Pause the sending (transmission) of events, this will cause all events to be batched only until the maximum limits are\r\n * hit at which point new events are dropped. Will also cause events to NOT be sent during page unload, so if Session storage\r\n * is disabled events will be lost.\r\n * SessionStorage Limit is 2000 events, In-Memory (Array) Storage is 10,000 events (can be configured via the eventsLimitInMem).\r\n */\r\n Sender.prototype.pause = function () {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n /**\r\n * Resume the sending (transmission) of events, this will restart the timer and any batched events will be sent using the normal\r\n * send interval.\r\n */\r\n Sender.prototype.resume = function () {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n /**\r\n * Flush to send data immediately; channel should default to sending data asynchronously. If executing asynchronously (the default) and\r\n * you DO NOT pass a callback function then a [IPromise](https://nevware21.github.io/ts-async/typedoc/interfaces/IPromise.html)\r\n * will be returned which will resolve once the flush is complete. The actual implementation of the `IPromise`\r\n * will be a native Promise (if supported) or the default as supplied by [ts-async library](https://github.com/nevware21/ts-async)\r\n * @param async - send data asynchronously when true\r\n * @param callBack - if specified, notify caller when send is complete, the channel should return true to indicate to the caller that it will be called.\r\n * If the caller doesn't return true the caller should assume that it may never be called.\r\n * @param sendReason - specify the reason that you are calling \"flush\" defaults to ManualFlush (1) if not specified\r\n * @returns - If a callback is provided `true` to indicate that callback will be called after the flush is complete otherwise the caller\r\n * should assume that any provided callback will never be called, Nothing or if occurring asynchronously a\r\n * [IPromise](https://nevware21.github.io/ts-async/typedoc/interfaces/IPromise.html) which will be resolved once the unload is complete,\r\n * the [IPromise](https://nevware21.github.io/ts-async/typedoc/interfaces/IPromise.html) will only be returned when no callback is provided\r\n * and async is true.\r\n */\r\n Sender.prototype.flush = function (async, callBack) {\r\n if (async === void 0) { async = true; }\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n /**\r\n * Flush the batched events synchronously (if possible -- based on configuration).\r\n * Will not flush if the Send has been paused.\r\n */\r\n Sender.prototype.onunloadFlush = function () {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n Sender.prototype.initialize = function (config, core, extensions, pluginChain) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n Sender.prototype.processTelemetry = function (telemetryItem, itemCtx) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n /**\r\n * xhr state changes\r\n * @deprecated\r\n * since version 3.2.0, if the payload is string[], this function is no-op (string[] is only used for backwards Compatibility)\r\n */\r\n Sender.prototype._xhrReadyStateChange = function (xhr, payload, countOfItemsInPayload) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n // TODO: no-op\r\n // add note to users, this will be removed\r\n };\r\n /**\r\n * Trigger the immediate send of buffered data; If executing asynchronously (the default) this may (not required) return\r\n * an [IPromise](https://nevware21.github.io/ts-async/typedoc/interfaces/IPromise.html) that will resolve once the\r\n * send is complete. The actual implementation of the `IPromise` will be a native Promise (if supported) or the default\r\n * as supplied by [ts-async library](https://github.com/nevware21/ts-async)\r\n * @param async - Indicates if the events should be sent asynchronously\r\n * @param forcedSender - Indicates the forcedSender, undefined if not passed\r\n * @returns - Nothing or optionally, if occurring asynchronously a [IPromise](https://nevware21.github.io/ts-async/typedoc/interfaces/IPromise.html)\r\n * which will be resolved (or reject) once the send is complete, the [IPromise](https://nevware21.github.io/ts-async/typedoc/interfaces/IPromise.html)\r\n * should only be returned when async is true.\r\n */\r\n Sender.prototype.triggerSend = function (async, forcedSender, sendReason) {\r\n if (async === void 0) { async = true; }\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n /**\r\n * error handler\r\n * @Internal\r\n * since version 3.2.0, if the payload is string[], this function is no-op (string[] is only used for backwards Compatibility)\r\n */\r\n Sender.prototype._onError = function (payload, message, event) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n /**\r\n * partial success handler\r\n * @Internal\r\n * since version 3.2.0, if the payload is string[], this function is no-op (string[] is only used for backwards Compatibility)\r\n */\r\n Sender.prototype._onPartialSuccess = function (payload, results) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n /**\r\n * success handler\r\n * @Internal\r\n * since version 3.2.0, if the payload is string[], this function is no-op (string[] is only used for backwards Compatibility)\r\n */\r\n Sender.prototype._onSuccess = function (payload, countOfItemsInPayload) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n /**\r\n * xdr state changes\r\n * @deprecated\r\n * since version 3.2.0, if the payload is string[], this function is no-op (string[] is only used for backwards Compatibility)\r\n */\r\n Sender.prototype._xdrOnLoad = function (xdr, payload) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n /**\r\n * Add header to request\r\n * @param name - Header name.\r\n * @param value - Header value.\r\n */\r\n Sender.prototype.addHeader = function (name, value) {\r\n // @DynamicProtoStub - DO NOT add any code as this will be removed during packaging\r\n };\r\n /**\r\n * Check if there are no active requests being sent.\r\n * @returns True if idle, false otherwise.\r\n */\r\n Sender.prototype.isCompletelyIdle = function () {\r\n // @DynamicProtoStub - DO NOT add any code as this will be removed during packaging\r\n return false;\r\n };\r\n /**\r\n * Get Offline Serializer support\r\n * @returns internal Offline Serializer object\r\n */\r\n Sender.prototype.getOfflineSupport = function () {\r\n // @DynamicProtoStub - DO NOT add any code as this will be removed during packaging\r\n return null;\r\n };\r\n /**\r\n * Get Offline listener\r\n * @returns offlineListener\r\n * @since 3.3.4\r\n */\r\n Sender.prototype.getOfflineListener = function () {\r\n // @DynamicProtoStub - DO NOT add any code as this will be removed during packaging\r\n return null;\r\n };\r\n return Sender;\r\n}(BaseTelemetryPlugin));\r\nexport { Sender };\r\n//# sourceMappingURL=Sender.js.map","import dynamicProto from \"@microsoft/dynamicproto-js\";\r\nimport { _throwInternal, getJSON, isArray, isFunction, isObject, objForEachKey } from \"@microsoft/applicationinsights-core-js\";\r\nimport { _DYN_LENGTH, _DYN_PUSH, _DYN_SERIALIZE, _DYN_STRINGIFY, _DYN_TO_STRING } from \"./__DynamicConstants\";\r\nvar Serializer = /** @class */ (function () {\r\n function Serializer(logger) {\r\n dynamicProto(Serializer, this, function (_self) {\r\n /**\r\n * Serializes the current object to a JSON string.\r\n */\r\n _self[_DYN_SERIALIZE /* @min:%2eserialize */] = function (input) {\r\n var output = _serializeObject(input, \"root\");\r\n try {\r\n return getJSON()[_DYN_STRINGIFY /* @min:%2estringify */](output);\r\n }\r\n catch (e) {\r\n // if serialization fails return an empty string\r\n _throwInternal(logger, 1 /* eLoggingSeverity.CRITICAL */, 48 /* _eInternalMessageId.CannotSerializeObject */, (e && isFunction(e[_DYN_TO_STRING /* @min:%2etoString */])) ? e[_DYN_TO_STRING /* @min:%2etoString */]() : \"Error serializing object\", null, true);\r\n }\r\n };\r\n function _serializeObject(source, name) {\r\n var circularReferenceCheck = \"__aiCircularRefCheck\";\r\n var output = {};\r\n if (!source) {\r\n _throwInternal(logger, 1 /* eLoggingSeverity.CRITICAL */, 48 /* _eInternalMessageId.CannotSerializeObject */, \"cannot serialize object because it is null or undefined\", { name: name }, true);\r\n return output;\r\n }\r\n if (source[circularReferenceCheck]) {\r\n _throwInternal(logger, 2 /* eLoggingSeverity.WARNING */, 50 /* _eInternalMessageId.CircularReferenceDetected */, \"Circular reference detected while serializing object\", { name: name }, true);\r\n return output;\r\n }\r\n if (!source.aiDataContract) {\r\n // special case for measurements/properties/tags\r\n if (name === \"measurements\") {\r\n output = _serializeStringMap(source, \"number\", name);\r\n }\r\n else if (name === \"properties\") {\r\n output = _serializeStringMap(source, \"string\", name);\r\n }\r\n else if (name === \"tags\") {\r\n output = _serializeStringMap(source, \"string\", name);\r\n }\r\n else if (isArray(source)) {\r\n output = _serializeArray(source, name);\r\n }\r\n else {\r\n _throwInternal(logger, 2 /* eLoggingSeverity.WARNING */, 49 /* _eInternalMessageId.CannotSerializeObjectNonSerializable */, \"Attempting to serialize an object which does not implement ISerializable\", { name: name }, true);\r\n try {\r\n // verify that the object can be stringified\r\n getJSON()[_DYN_STRINGIFY /* @min:%2estringify */](source);\r\n output = source;\r\n }\r\n catch (e) {\r\n // if serialization fails return an empty string\r\n _throwInternal(logger, 1 /* eLoggingSeverity.CRITICAL */, 48 /* _eInternalMessageId.CannotSerializeObject */, (e && isFunction(e[_DYN_TO_STRING /* @min:%2etoString */])) ? e[_DYN_TO_STRING /* @min:%2etoString */]() : \"Error serializing object\", null, true);\r\n }\r\n }\r\n return output;\r\n }\r\n source[circularReferenceCheck] = true;\r\n objForEachKey(source.aiDataContract, function (field, contract) {\r\n var isRequired = (isFunction(contract)) ? (contract() & 1 /* FieldType.Required */) : (contract & 1 /* FieldType.Required */);\r\n var isHidden = (isFunction(contract)) ? (contract() & 4 /* FieldType.Hidden */) : (contract & 4 /* FieldType.Hidden */);\r\n var isArray = contract & 2 /* FieldType.Array */;\r\n var isPresent = source[field] !== undefined;\r\n var isObj = isObject(source[field]) && source[field] !== null;\r\n if (isRequired && !isPresent && !isArray) {\r\n _throwInternal(logger, 1 /* eLoggingSeverity.CRITICAL */, 24 /* _eInternalMessageId.MissingRequiredFieldSpecification */, \"Missing required field specification. The field is required but not present on source\", { field: field, name: name });\r\n // If not in debug mode, continue and hope the error is permissible\r\n }\r\n else if (!isHidden) { // Don't serialize hidden fields\r\n var value = void 0;\r\n if (isObj) {\r\n if (isArray) {\r\n // special case; recurse on each object in the source array\r\n value = _serializeArray(source[field], field);\r\n }\r\n else {\r\n // recurse on the source object in this field\r\n value = _serializeObject(source[field], field);\r\n }\r\n }\r\n else {\r\n // assign the source field to the output even if undefined or required\r\n value = source[field];\r\n }\r\n // only emit this field if the value is defined\r\n if (value !== undefined) {\r\n output[field] = value;\r\n }\r\n }\r\n });\r\n delete source[circularReferenceCheck];\r\n return output;\r\n }\r\n function _serializeArray(sources, name) {\r\n var output;\r\n if (!!sources) {\r\n if (!isArray(sources)) {\r\n _throwInternal(logger, 1 /* eLoggingSeverity.CRITICAL */, 54 /* _eInternalMessageId.ItemNotInArray */, \"This field was specified as an array in the contract but the item is not an array.\\r\\n\", { name: name }, true);\r\n }\r\n else {\r\n output = [];\r\n for (var i = 0; i < sources[_DYN_LENGTH /* @min:%2elength */]; i++) {\r\n var source = sources[i];\r\n var item = _serializeObject(source, name + \"[\" + i + \"]\");\r\n output[_DYN_PUSH /* @min:%2epush */](item);\r\n }\r\n }\r\n }\r\n return output;\r\n }\r\n function _serializeStringMap(map, expectedType, name) {\r\n var output;\r\n if (map) {\r\n output = {};\r\n objForEachKey(map, function (field, value) {\r\n if (expectedType === \"string\") {\r\n if (value === undefined) {\r\n output[field] = \"undefined\";\r\n }\r\n else if (value === null) {\r\n output[field] = \"null\";\r\n }\r\n else if (!value[_DYN_TO_STRING /* @min:%2etoString */]) {\r\n output[field] = \"invalid field: toString() is not defined.\";\r\n }\r\n else {\r\n output[field] = value[_DYN_TO_STRING /* @min:%2etoString */]();\r\n }\r\n }\r\n else if (expectedType === \"number\") {\r\n if (value === undefined) {\r\n output[field] = \"undefined\";\r\n }\r\n else if (value === null) {\r\n output[field] = \"null\";\r\n }\r\n else {\r\n var num = parseFloat(value);\r\n output[field] = num;\r\n }\r\n }\r\n else {\r\n output[field] = \"invalid field: \" + name + \" is of unknown type.\";\r\n _throwInternal(logger, 1 /* eLoggingSeverity.CRITICAL */, output[field], null, true);\r\n }\r\n });\r\n }\r\n return output;\r\n }\r\n });\r\n }\r\n /**\r\n * Serializes the current object to a JSON string.\r\n */\r\n Serializer.prototype.serialize = function (input) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n return null;\r\n };\r\n return Serializer;\r\n}());\r\nexport { Serializer };\r\n//# sourceMappingURL=Serializer.js.map","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\nimport { _DYN_CONCAT, _DYN_LENGTH } from \"../../__DynamicConstants\";\r\n// (Magic number) DJB algorithm can't work on shorter strings (results in poor distribution\r\nvar MIN_INPUT_LENGTH = 8;\r\nvar HashCodeScoreGenerator = /** @class */ (function () {\r\n function HashCodeScoreGenerator() {\r\n }\r\n HashCodeScoreGenerator.prototype.getHashCodeScore = function (key) {\r\n var score = this.getHashCode(key) / HashCodeScoreGenerator.INT_MAX_VALUE;\r\n return score * 100;\r\n };\r\n HashCodeScoreGenerator.prototype.getHashCode = function (input) {\r\n if (input === \"\") {\r\n return 0;\r\n }\r\n while (input[_DYN_LENGTH /* @min:%2elength */] < MIN_INPUT_LENGTH) {\r\n input = input[_DYN_CONCAT /* @min:%2econcat */](input);\r\n }\r\n // 5381 is a magic number: http://stackoverflow.com/questions/10696223/reason-for-5381-number-in-djb-hash-function\r\n var hash = 5381;\r\n for (var i = 0; i < input[_DYN_LENGTH /* @min:%2elength */]; ++i) {\r\n hash = ((hash << 5) + hash) + input.charCodeAt(i);\r\n // 'hash' is of number type which means 53 bit integer (http://www.ecma-international.org/ecma-262/6.0/#sec-ecmascript-language-types-number-type)\r\n // 'hash & hash' will keep it 32 bit integer - just to make it clearer what the result is.\r\n hash = hash & hash;\r\n }\r\n return Math.abs(hash);\r\n };\r\n // We're using 32 bit math, hence max value is (2^31 - 1)\r\n HashCodeScoreGenerator.INT_MAX_VALUE = 2147483647;\r\n return HashCodeScoreGenerator;\r\n}());\r\nexport { HashCodeScoreGenerator };\r\n//# sourceMappingURL=HashCodeScoreGenerator.js.map","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\nimport { ContextTagKeys } from \"@microsoft/applicationinsights-common\";\r\nimport { _DYN_GET_HASH_CODE_SCORE, _DYN_GET_SAMPLING_SCORE, _DYN_TAGS, _DYN_TRACE_ID } from \"../../__DynamicConstants\";\r\nimport { HashCodeScoreGenerator } from \"./HashCodeScoreGenerator\";\r\nvar SamplingScoreGenerator = /** @class */ (function () {\r\n function SamplingScoreGenerator() {\r\n var _self = this;\r\n var hashCodeGenerator = new HashCodeScoreGenerator();\r\n var keys = new ContextTagKeys();\r\n _self[_DYN_GET_SAMPLING_SCORE /* @min:%2egetSamplingScore */] = function (item) {\r\n var score = 0;\r\n if (item[_DYN_TAGS /* @min:%2etags */] && item[_DYN_TAGS /* @min:%2etags */][keys.userId]) { // search in tags first, then ext\r\n score = hashCodeGenerator.getHashCodeScore(item[_DYN_TAGS /* @min:%2etags */][keys.userId]);\r\n }\r\n else if (item.ext && item.ext.user && item.ext.user.id) {\r\n score = hashCodeGenerator[_DYN_GET_HASH_CODE_SCORE /* @min:%2egetHashCodeScore */](item.ext.user.id);\r\n }\r\n else if (item[_DYN_TAGS /* @min:%2etags */] && item[_DYN_TAGS /* @min:%2etags */][keys.operationId]) { // search in tags first, then ext\r\n score = hashCodeGenerator.getHashCodeScore(item[_DYN_TAGS /* @min:%2etags */][keys.operationId]);\r\n }\r\n else if (item.ext && item.ext.telemetryTrace && item.ext.telemetryTrace[_DYN_TRACE_ID /* @min:%2etraceID */]) {\r\n score = hashCodeGenerator.getHashCodeScore(item.ext.telemetryTrace[_DYN_TRACE_ID /* @min:%2etraceID */]);\r\n }\r\n else {\r\n // tslint:disable-next-line:insecure-random\r\n score = (Math.random() * 100);\r\n }\r\n return score;\r\n };\r\n }\r\n return SamplingScoreGenerator;\r\n}());\r\nexport { SamplingScoreGenerator };\r\n//# sourceMappingURL=SamplingScoreGenerator.js.map","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\nimport { Metric } from \"@microsoft/applicationinsights-common\";\r\nimport { safeGetLogger } from \"@microsoft/applicationinsights-core-js\";\r\nimport { _DYN_DATA_TYPE, _DYN_GET_SAMPLING_SCORE, _DYN_SAMPLE_RATE } from \"../__DynamicConstants\";\r\nimport { SamplingScoreGenerator } from \"./SamplingScoreGenerators/SamplingScoreGenerator\";\r\nvar Sample = /** @class */ (function () {\r\n function Sample(sampleRate, logger) {\r\n // We're using 32 bit math, hence max value is (2^31 - 1)\r\n this.INT_MAX_VALUE = 2147483647;\r\n var _logger = logger || safeGetLogger(null);\r\n if (sampleRate > 100 || sampleRate < 0) {\r\n _logger.throwInternal(2 /* eLoggingSeverity.WARNING */, 58 /* _eInternalMessageId.SampleRateOutOfRange */, \"Sampling rate is out of range (0..100). Sampling will be disabled, you may be sending too much data which may affect your AI service level.\", { samplingRate: sampleRate }, true);\r\n sampleRate = 100;\r\n }\r\n this[_DYN_SAMPLE_RATE /* @min:%2esampleRate */] = sampleRate;\r\n this.samplingScoreGenerator = new SamplingScoreGenerator();\r\n }\r\n /**\r\n * Determines if an envelope is sampled in (i.e. will be sent) or not (i.e. will be dropped).\r\n */\r\n Sample.prototype.isSampledIn = function (envelope) {\r\n var samplingPercentage = this[_DYN_SAMPLE_RATE /* @min:%2esampleRate */]; // 0 - 100\r\n var isSampledIn = false;\r\n if (samplingPercentage === null || samplingPercentage === undefined || samplingPercentage >= 100) {\r\n return true;\r\n }\r\n else if (envelope.baseType === Metric[_DYN_DATA_TYPE /* @min:%2edataType */]) {\r\n // exclude MetricData telemetry from sampling\r\n return true;\r\n }\r\n isSampledIn = this.samplingScoreGenerator[_DYN_GET_SAMPLING_SCORE /* @min:%2egetSamplingScore */](envelope) < samplingPercentage;\r\n return isSampledIn;\r\n };\r\n return Sample;\r\n}());\r\nexport { Sample };\r\n//# sourceMappingURL=Sample.js.map","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\nimport { arrReduce, objKeys, strEndsWith } from \"@microsoft/applicationinsights-core-js\";\r\nimport { DEFAULT_BREEZE_ENDPOINT } from \"./Constants\";\r\nimport { _DYN_INGESTIONENDPOINT, _DYN_LENGTH, _DYN_SPLIT, _DYN_TO_LOWER_CASE } from \"./__DynamicConstants\";\r\nvar _FIELDS_SEPARATOR = \";\";\r\nvar _FIELD_KEY_VALUE_SEPARATOR = \"=\";\r\nexport function parseConnectionString(connectionString) {\r\n if (!connectionString) {\r\n return {};\r\n }\r\n var kvPairs = connectionString[_DYN_SPLIT /* @min:%2esplit */](_FIELDS_SEPARATOR);\r\n var result = arrReduce(kvPairs, function (fields, kv) {\r\n var kvParts = kv[_DYN_SPLIT /* @min:%2esplit */](_FIELD_KEY_VALUE_SEPARATOR);\r\n if (kvParts[_DYN_LENGTH /* @min:%2elength */] === 2) { // only save fields with valid formats\r\n var key = kvParts[0][_DYN_TO_LOWER_CASE /* @min:%2etoLowerCase */]();\r\n var value = kvParts[1];\r\n fields[key] = value;\r\n }\r\n return fields;\r\n }, {});\r\n if (objKeys(result)[_DYN_LENGTH /* @min:%2elength */] > 0) {\r\n // this is a valid connection string, so parse the results\r\n if (result.endpointsuffix) {\r\n // apply the default endpoints\r\n var locationPrefix = result.location ? result.location + \".\" : \"\";\r\n result[_DYN_INGESTIONENDPOINT /* @min:%2eingestionendpoint */] = result[_DYN_INGESTIONENDPOINT /* @min:%2eingestionendpoint */] || (\"https://\" + locationPrefix + \"dc.\" + result.endpointsuffix);\r\n }\r\n // apply user override endpoint or the default endpoints\r\n result[_DYN_INGESTIONENDPOINT /* @min:%2eingestionendpoint */] = result[_DYN_INGESTIONENDPOINT /* @min:%2eingestionendpoint */] || DEFAULT_BREEZE_ENDPOINT;\r\n if (strEndsWith(result[_DYN_INGESTIONENDPOINT /* @min:%2eingestionendpoint */], \"/\")) {\r\n result[_DYN_INGESTIONENDPOINT /* @min:%2eingestionendpoint */] = result[_DYN_INGESTIONENDPOINT /* @min:%2eingestionendpoint */].slice(0, -1);\r\n }\r\n }\r\n return result;\r\n}\r\nexport var ConnectionStringParser = {\r\n parse: parseConnectionString\r\n};\r\n//# sourceMappingURL=ConnectionStringParser.js.map","import { _throwInternal, arrIndexOf, isNotNullOrUndefined, isNullOrUndefined, onConfigChange, randomValue, safeGetLogger, strTrim } from \"@microsoft/applicationinsights-core-js\";\r\nimport { arrForEach, objForEachKey } from \"@nevware21/ts-utils\";\r\nimport { utlCanUseLocalStorage, utlGetLocalStorage, utlSetLocalStorage } from \"./StorageHelperFuncs\";\r\nimport { _DYN_COUNT, _DYN_DATE, _DYN_DAYS_OF_MONTH, _DYN_DISABLED, _DYN_GET_UTCDATE, _DYN_INTERVAL, _DYN_LENGTH, _DYN_MESSAGE, _DYN_PRE_TRIGGER_DATE, _DYN_PUSH, _DYN_STRINGIFY } from \"./__DynamicConstants\";\r\nvar THROTTLE_STORAGE_PREFIX = \"appInsightsThrottle\";\r\nvar ThrottleMgr = /** @class */ (function () {\r\n function ThrottleMgr(core, namePrefix) {\r\n var _self = this;\r\n var _canUseLocalStorage;\r\n var _logger;\r\n var _config;\r\n var _localStorageObj;\r\n var _isTriggered; //_isTriggered is to make sure that we only trigger throttle once a day\r\n var _namePrefix;\r\n var _queue;\r\n var _isReady = false;\r\n var _isSpecificDaysGiven = false;\r\n _initConfig();\r\n // Special internal method to allow the unit tests and DebugPlugin to hook embedded objects\r\n _self[\"_getDbgPlgTargets\"] = function () {\r\n return [_queue];\r\n };\r\n _self.getConfig = function () {\r\n return _config;\r\n };\r\n /**\r\n * Check if it is the correct day to send message.\r\n * If _isTriggered is true, even if canThrottle returns true, message will not be sent,\r\n * because we only allow triggering sendMessage() once a day.\r\n * @returns if the current date is the valid date to send message\r\n */\r\n _self.canThrottle = function (msgId) {\r\n var localObj = _getLocalStorageObjByKey(msgId);\r\n var cfg = _getCfgByKey(msgId);\r\n return _canThrottle(cfg, _canUseLocalStorage, localObj);\r\n };\r\n /**\r\n * Check if throttle is triggered on current day(UTC)\r\n * if canThrottle returns false, isTriggered will return false\r\n * @returns if throttle is triggered on current day(UTC)\r\n */\r\n _self.isTriggered = function (msgId) {\r\n return _isTrigger(msgId);\r\n };\r\n /**\r\n * Before isReady set to true, all message will be stored in queue.\r\n * Message will only be sent out after isReady set to true.\r\n * Initial and default value: false\r\n * @returns isReady state\r\n */\r\n _self.isReady = function () {\r\n return _isReady;\r\n };\r\n /**\r\n * Flush all message with given message key in queue with isReady state set to true.\r\n * @returns if message queue is flushed\r\n */\r\n _self.flush = function (msgId) {\r\n try {\r\n var queue = _getQueueByKey(msgId);\r\n if (queue && queue[_DYN_LENGTH /* @min:%2elength */] > 0) {\r\n var items = queue.slice(0);\r\n _queue[msgId] = [];\r\n arrForEach(items, function (item) {\r\n _flushMessage(item.msgID, item[_DYN_MESSAGE /* @min:%2emessage */], item.severity, false);\r\n });\r\n return true;\r\n }\r\n }\r\n catch (err) {\r\n // eslint-disable-next-line no-empty\r\n }\r\n return false;\r\n };\r\n /**\r\n * Flush all message in queue with isReady state set to true.\r\n * @returns if message queue is flushed\r\n */\r\n _self.flushAll = function () {\r\n try {\r\n if (_queue) {\r\n var result_1 = true;\r\n objForEachKey(_queue, function (key) {\r\n var isFlushed = _self.flush(parseInt(key));\r\n result_1 = result_1 && isFlushed;\r\n });\r\n return result_1;\r\n }\r\n }\r\n catch (err) {\r\n // eslint-disable-next-line no-empty\r\n }\r\n return false;\r\n };\r\n /**\r\n * Set isReady State\r\n * if isReady set to true, message queue will be flushed automatically.\r\n * @param isReady - isReady State\r\n * @pa\r\n * @returns if message queue is flushed\r\n */\r\n _self.onReadyState = function (isReady, flushAll) {\r\n if (flushAll === void 0) { flushAll = true; }\r\n _isReady = isNullOrUndefined(isReady) ? true : isReady;\r\n if (_isReady && flushAll) {\r\n return _self.flushAll();\r\n }\r\n return null;\r\n };\r\n _self.sendMessage = function (msgID, message, severity) {\r\n return _flushMessage(msgID, message, severity, true);\r\n };\r\n function _flushMessage(msgID, message, severity, saveUnsentMsg) {\r\n if (_isReady) {\r\n var isSampledIn = _canSampledIn(msgID);\r\n if (!isSampledIn) {\r\n return;\r\n }\r\n var cfg = _getCfgByKey(msgID);\r\n var localStorageObj = _getLocalStorageObjByKey(msgID);\r\n var canThrottle = _canThrottle(cfg, _canUseLocalStorage, localStorageObj);\r\n var throttled = false;\r\n var number = 0;\r\n var isTriggered = _isTrigger(msgID);\r\n try {\r\n if (canThrottle && !isTriggered) {\r\n number = Math.min(cfg.limit.maxSendNumber, localStorageObj[_DYN_COUNT /* @min:%2ecount */] + 1);\r\n localStorageObj[_DYN_COUNT /* @min:%2ecount */] = 0;\r\n throttled = true;\r\n _isTriggered[msgID] = true;\r\n localStorageObj[_DYN_PRE_TRIGGER_DATE /* @min:%2epreTriggerDate */] = new Date();\r\n }\r\n else {\r\n _isTriggered[msgID] = canThrottle;\r\n localStorageObj[_DYN_COUNT /* @min:%2ecount */] += 1;\r\n }\r\n var localStorageName = _getLocalStorageName(msgID);\r\n _resetLocalStorage(_logger, localStorageName, localStorageObj);\r\n for (var i = 0; i < number; i++) {\r\n _sendMessage(msgID, _logger, message, severity);\r\n }\r\n }\r\n catch (e) {\r\n // eslint-disable-next-line no-empty\r\n }\r\n return {\r\n isThrottled: throttled,\r\n throttleNum: number\r\n };\r\n }\r\n else {\r\n if (!!saveUnsentMsg) {\r\n var queue = _getQueueByKey(msgID);\r\n queue[_DYN_PUSH /* @min:%2epush */]({\r\n msgID: msgID,\r\n message: message,\r\n severity: severity\r\n });\r\n }\r\n }\r\n return null;\r\n }\r\n function _initConfig() {\r\n _logger = safeGetLogger(core);\r\n _isTriggered = {};\r\n _localStorageObj = {};\r\n _queue = {};\r\n _config = {};\r\n _setCfgByKey(109 /* _eInternalMessageId.DefaultThrottleMsgKey */);\r\n _namePrefix = isNotNullOrUndefined(namePrefix) ? namePrefix : \"\";\r\n core.addUnloadHook(onConfigChange(core.config, function (details) {\r\n var coreConfig = details.cfg;\r\n _canUseLocalStorage = utlCanUseLocalStorage();\r\n var configMgr = coreConfig.throttleMgrCfg || {};\r\n objForEachKey(configMgr, function (key, cfg) {\r\n _setCfgByKey(parseInt(key), cfg);\r\n });\r\n }));\r\n }\r\n function _getCfgByKey(msgID) {\r\n return _config[msgID] || _config[109 /* _eInternalMessageId.DefaultThrottleMsgKey */];\r\n }\r\n function _setCfgByKey(msgID, config) {\r\n var _a, _b;\r\n try {\r\n var cfg = config || {};\r\n var curCfg = {};\r\n curCfg[_DYN_DISABLED /* @min:%2edisabled */] = !!cfg[_DYN_DISABLED /* @min:%2edisabled */];\r\n var configInterval = cfg[_DYN_INTERVAL /* @min:%2einterval */] || {};\r\n _isSpecificDaysGiven = (configInterval === null || configInterval === void 0 ? void 0 : configInterval.daysOfMonth) && (configInterval === null || configInterval === void 0 ? void 0 : configInterval.daysOfMonth[_DYN_LENGTH /* @min:%2elength */]) > 0;\r\n curCfg[_DYN_INTERVAL /* @min:%2einterval */] = _getIntervalConfig(configInterval);\r\n var limit = {\r\n samplingRate: ((_a = cfg.limit) === null || _a === void 0 ? void 0 : _a.samplingRate) || 100,\r\n // dafault: every time sent only 1 event\r\n maxSendNumber: ((_b = cfg.limit) === null || _b === void 0 ? void 0 : _b.maxSendNumber) || 1\r\n };\r\n curCfg.limit = limit;\r\n _config[msgID] = curCfg;\r\n }\r\n catch (e) {\r\n // eslint-disable-next-line no-empty\r\n }\r\n }\r\n function _getIntervalConfig(interval) {\r\n interval = interval || {};\r\n var monthInterval = interval === null || interval === void 0 ? void 0 : interval.monthInterval;\r\n var dayInterval = interval === null || interval === void 0 ? void 0 : interval.dayInterval;\r\n // default: send data every 3 month each year\r\n if (isNullOrUndefined(monthInterval) && isNullOrUndefined(dayInterval)) {\r\n interval.monthInterval = 3;\r\n if (!_isSpecificDaysGiven) {\r\n // default: send data on 28th\r\n interval[_DYN_DAYS_OF_MONTH /* @min:%2edaysOfMonth */] = [28];\r\n _isSpecificDaysGiven = true;\r\n }\r\n }\r\n interval = {\r\n // dafault: sent every three months\r\n monthInterval: interval === null || interval === void 0 ? void 0 : interval.monthInterval,\r\n dayInterval: interval === null || interval === void 0 ? void 0 : interval.dayInterval,\r\n daysOfMonth: interval === null || interval === void 0 ? void 0 : interval.daysOfMonth\r\n };\r\n return interval;\r\n }\r\n function _canThrottle(config, canUseLocalStorage, localStorageObj) {\r\n if (config && !config[_DYN_DISABLED /* @min:%2edisabled */] && canUseLocalStorage && isNotNullOrUndefined(localStorageObj)) {\r\n var curDate = _getThrottleDate();\r\n var date = localStorageObj[_DYN_DATE /* @min:%2edate */];\r\n var interval = config[_DYN_INTERVAL /* @min:%2einterval */];\r\n var monthCheck = 1;\r\n if (interval === null || interval === void 0 ? void 0 : interval.monthInterval) {\r\n var monthExpand = (curDate.getUTCFullYear() - date.getUTCFullYear()) * 12 + curDate.getUTCMonth() - date.getUTCMonth();\r\n monthCheck = _checkInterval(interval.monthInterval, 0, monthExpand);\r\n }\r\n var dayCheck = 1;\r\n if (_isSpecificDaysGiven) {\r\n dayCheck = arrIndexOf(interval[_DYN_DAYS_OF_MONTH /* @min:%2edaysOfMonth */], curDate[_DYN_GET_UTCDATE /* @min:%2egetUTCDate */]());\r\n }\r\n else if (interval === null || interval === void 0 ? void 0 : interval.dayInterval) {\r\n var daySpan = Math.floor((curDate.getTime() - date.getTime()) / 86400000);\r\n dayCheck = _checkInterval(interval.dayInterval, 0, daySpan);\r\n }\r\n return monthCheck >= 0 && dayCheck >= 0;\r\n }\r\n return false;\r\n }\r\n function _getLocalStorageName(msgKey, prefix) {\r\n var fix = isNotNullOrUndefined(prefix) ? prefix : \"\";\r\n if (msgKey) {\r\n return THROTTLE_STORAGE_PREFIX + fix + \"-\" + msgKey;\r\n }\r\n return null;\r\n }\r\n // returns if throttle is triggered on current Date\r\n function _isTriggeredOnCurDate(preTriggerDate) {\r\n try {\r\n if (preTriggerDate) {\r\n var curDate = new Date();\r\n return preTriggerDate.getUTCFullYear() === curDate.getUTCFullYear() &&\r\n preTriggerDate.getUTCMonth() === curDate.getUTCMonth() &&\r\n preTriggerDate[_DYN_GET_UTCDATE /* @min:%2egetUTCDate */]() === curDate[_DYN_GET_UTCDATE /* @min:%2egetUTCDate */]();\r\n }\r\n }\r\n catch (e) {\r\n // eslint-disable-next-line no-empty\r\n }\r\n return false;\r\n }\r\n // transfer local storage string value to object that identifies start date, current count and preTriggerDate\r\n function _getLocalStorageObj(value, logger, storageName) {\r\n try {\r\n var storageObj = {\r\n date: _getThrottleDate(),\r\n count: 0\r\n };\r\n if (value) {\r\n var obj = JSON.parse(value);\r\n var curObj = {\r\n date: _getThrottleDate(obj[_DYN_DATE /* @min:%2edate */]) || storageObj[_DYN_DATE /* @min:%2edate */],\r\n count: obj[_DYN_COUNT /* @min:%2ecount */] || storageObj[_DYN_COUNT /* @min:%2ecount */],\r\n preTriggerDate: obj.preTriggerDate ? _getThrottleDate(obj[_DYN_PRE_TRIGGER_DATE /* @min:%2epreTriggerDate */]) : undefined\r\n };\r\n return curObj;\r\n }\r\n else {\r\n _resetLocalStorage(logger, storageName, storageObj);\r\n return storageObj;\r\n }\r\n }\r\n catch (e) {\r\n // eslint-disable-next-line no-empty\r\n }\r\n return null;\r\n }\r\n // if datestr is not defined, current date will be returned\r\n function _getThrottleDate(dateStr) {\r\n // if new Date() can't be created through the provided dateStr, null will be returned.\r\n try {\r\n if (dateStr) {\r\n var date = new Date(dateStr);\r\n //make sure it is a valid Date Object\r\n if (!isNaN(date.getDate())) {\r\n return date;\r\n }\r\n }\r\n else {\r\n return new Date();\r\n }\r\n }\r\n catch (e) {\r\n // eslint-disable-next-line no-empty\r\n }\r\n return null;\r\n }\r\n function _resetLocalStorage(logger, storageName, obj) {\r\n try {\r\n return utlSetLocalStorage(logger, storageName, strTrim(JSON[_DYN_STRINGIFY /* @min:%2estringify */](obj)));\r\n }\r\n catch (e) {\r\n // eslint-disable-next-line no-empty\r\n }\r\n return false;\r\n }\r\n function _checkInterval(interval, start, current) {\r\n if (interval <= 0) {\r\n return 1;\r\n }\r\n // count from start year\r\n return (current >= start) && (current - start) % interval == 0 ? Math.floor((current - start) / interval) + 1 : -1;\r\n }\r\n function _sendMessage(msgID, logger, message, severity) {\r\n _throwInternal(logger, severity || 1 /* eLoggingSeverity.CRITICAL */, msgID, message);\r\n }\r\n // NOTE: config.limit.samplingRate is set to 4 decimal places,\r\n // so config.limit.samplingRate = 1 means 0.0001%\r\n function _canSampledIn(msgID) {\r\n try {\r\n var cfg = _getCfgByKey(msgID);\r\n return randomValue(1000000) <= cfg.limit.samplingRate;\r\n }\r\n catch (e) {\r\n // eslint-disable-next-line no-empty\r\n }\r\n return false;\r\n }\r\n function _getLocalStorageObjByKey(key) {\r\n try {\r\n var curObj = _localStorageObj[key];\r\n if (!curObj) {\r\n var localStorageName = _getLocalStorageName(key, _namePrefix);\r\n curObj = _getLocalStorageObj(utlGetLocalStorage(_logger, localStorageName), _logger, localStorageName);\r\n _localStorageObj[key] = curObj;\r\n }\r\n return _localStorageObj[key];\r\n }\r\n catch (e) {\r\n // eslint-disable-next-line no-empty\r\n }\r\n return null;\r\n }\r\n function _isTrigger(key) {\r\n var isTrigger = _isTriggered[key];\r\n if (isNullOrUndefined(isTrigger)) {\r\n isTrigger = false;\r\n var localStorageObj = _getLocalStorageObjByKey(key);\r\n if (localStorageObj) {\r\n isTrigger = _isTriggeredOnCurDate(localStorageObj[_DYN_PRE_TRIGGER_DATE /* @min:%2epreTriggerDate */]);\r\n }\r\n _isTriggered[key] = isTrigger;\r\n }\r\n return _isTriggered[key];\r\n }\r\n function _getQueueByKey(key) {\r\n _queue = _queue || {};\r\n if (isNullOrUndefined(_queue[key])) {\r\n _queue[key] = [];\r\n }\r\n return _queue[key];\r\n }\r\n }\r\n return ThrottleMgr;\r\n}());\r\nexport { ThrottleMgr };\r\n//# sourceMappingURL=ThrottleMgr.js.map","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\nimport dynamicProto from \"@microsoft/dynamicproto-js\";\r\nimport { createAllPromise, createPromise, doAwaitResponse } from \"@nevware21/ts-async\";\r\nimport { arrForEach, arrIndexOf, objDefine, safe, scheduleTimeout } from \"@nevware21/ts-utils\";\r\nimport { createDynamicConfig } from \"../Config/DynamicConfig\";\r\nimport { _DYN_ADD_NOTIFICATION_LIS1, _DYN_CANCEL, _DYN_DATA, _DYN_IS_ASYNC, _DYN_IS_CHILD_EVT, _DYN_LENGTH, _DYN_PUSH, _DYN_REMOVE_NOTIFICATION_0, _DYN_SPLICE, _DYN_UNLOAD, _DYN_WATCH } from \"../__DynamicConstants\";\r\nimport { STR_EVENTS_DISCARDED, STR_EVENTS_SEND_REQUEST, STR_EVENTS_SENT, STR_OFFLINE_DROP, STR_OFFLINE_SENT, STR_OFFLINE_STORE, STR_PERF_EVENT } from \"./InternalConstants\";\r\nvar defaultValues = {\r\n perfEvtsSendAll: false\r\n};\r\nfunction _runScheduledListeners(asyncNotifications) {\r\n asyncNotifications.h = null;\r\n var callbacks = asyncNotifications.cb;\r\n asyncNotifications.cb = [];\r\n arrForEach(callbacks, function (cb) {\r\n // Run the listener in a try-catch to ensure that a single listener failing doesn't prevent the others from running\r\n safe(cb.fn, [cb.arg]);\r\n });\r\n}\r\n// This function is used to combine the logic of running the listeners and handling the async notifications so that they don't\r\n// create multiple timers if there are multiple async listeners.\r\nfunction _runListeners(listeners, name, asyncNotifications, callback) {\r\n arrForEach(listeners, function (listener) {\r\n if (listener && listener[name]) {\r\n if (asyncNotifications) {\r\n // Schedule the callback to be called after the current call stack has cleared.\r\n asyncNotifications.cb[_DYN_PUSH /* @min:%2epush */]({\r\n fn: callback,\r\n arg: listener\r\n });\r\n asyncNotifications.h = asyncNotifications.h || scheduleTimeout(_runScheduledListeners, 0, asyncNotifications);\r\n }\r\n else {\r\n // Run the listener in a try-catch to ensure that a single listener failing doesn't prevent the others from running\r\n safe(callback, [listener]);\r\n }\r\n }\r\n });\r\n}\r\n/**\r\n * Class to manage sending notifications to all the listeners.\r\n */\r\nvar NotificationManager = /** @class */ (function () {\r\n function NotificationManager(config) {\r\n this.listeners = [];\r\n var perfEvtsSendAll;\r\n var unloadHandler;\r\n var _listeners = [];\r\n var _asyncNotifications = {\r\n h: null,\r\n cb: []\r\n };\r\n var cfgHandler = createDynamicConfig(config, defaultValues);\r\n unloadHandler = cfgHandler[_DYN_WATCH /* @min:%2ewatch */](function (details) {\r\n perfEvtsSendAll = !!details.cfg.perfEvtsSendAll;\r\n });\r\n dynamicProto(NotificationManager, this, function (_self) {\r\n objDefine(_self, \"listeners\", {\r\n g: function () { return _listeners; }\r\n });\r\n _self[_DYN_ADD_NOTIFICATION_LIS1 /* @min:%2eaddNotificationListener */] = function (listener) {\r\n _listeners[_DYN_PUSH /* @min:%2epush */](listener);\r\n };\r\n /**\r\n * Removes all instances of the listener.\r\n * @param listener - AWTNotificationListener to remove.\r\n */\r\n _self[_DYN_REMOVE_NOTIFICATION_0 /* @min:%2eremoveNotificationListener */] = function (listener) {\r\n var index = arrIndexOf(_listeners, listener);\r\n while (index > -1) {\r\n _listeners[_DYN_SPLICE /* @min:%2esplice */](index, 1);\r\n index = arrIndexOf(_listeners, listener);\r\n }\r\n };\r\n /**\r\n * Notification for events sent.\r\n * @param events - The array of events that have been sent.\r\n */\r\n _self[STR_EVENTS_SENT /* @min:%2eeventsSent */] = function (events) {\r\n _runListeners(_listeners, STR_EVENTS_SENT, _asyncNotifications, function (listener) {\r\n listener[STR_EVENTS_SENT /* @min:%2eeventsSent */](events);\r\n });\r\n };\r\n /**\r\n * Notification for events being discarded.\r\n * @param events - The array of events that have been discarded by the SDK.\r\n * @param reason - The reason for which the SDK discarded the events. The EventsDiscardedReason\r\n * constant should be used to check the different values.\r\n */\r\n _self[STR_EVENTS_DISCARDED /* @min:%2eeventsDiscarded */] = function (events, reason) {\r\n _runListeners(_listeners, STR_EVENTS_DISCARDED, _asyncNotifications, function (listener) {\r\n listener[STR_EVENTS_DISCARDED /* @min:%2eeventsDiscarded */](events, reason);\r\n });\r\n };\r\n /**\r\n * [Optional] A function called when the events have been requested to be sent to the sever.\r\n * @param sendReason - The reason why the event batch is being sent.\r\n * @param isAsync - A flag which identifies whether the requests are being sent in an async or sync manner.\r\n */\r\n _self[STR_EVENTS_SEND_REQUEST /* @min:%2eeventsSendRequest */] = function (sendReason, isAsync) {\r\n _runListeners(_listeners, STR_EVENTS_SEND_REQUEST, isAsync ? _asyncNotifications : null, function (listener) {\r\n listener[STR_EVENTS_SEND_REQUEST /* @min:%2eeventsSendRequest */](sendReason, isAsync);\r\n });\r\n };\r\n _self[STR_PERF_EVENT /* @min:%2eperfEvent */] = function (perfEvent) {\r\n if (perfEvent) {\r\n // Send all events or only parent events\r\n if (perfEvtsSendAll || !perfEvent[_DYN_IS_CHILD_EVT /* @min:%2eisChildEvt */]()) {\r\n _runListeners(_listeners, STR_PERF_EVENT, null, function (listener) {\r\n if (perfEvent[_DYN_IS_ASYNC /* @min:%2eisAsync */]) {\r\n scheduleTimeout(function () { return listener[STR_PERF_EVENT /* @min:%2eperfEvent */](perfEvent); }, 0);\r\n }\r\n else {\r\n listener[STR_PERF_EVENT /* @min:%2eperfEvent */](perfEvent);\r\n }\r\n });\r\n }\r\n }\r\n };\r\n _self[STR_OFFLINE_STORE /* @min:%2eofflineEventsStored */] = function (events) {\r\n if (events && events[_DYN_LENGTH /* @min:%2elength */]) {\r\n _runListeners(_listeners, STR_OFFLINE_STORE, _asyncNotifications, function (listener) {\r\n listener[STR_OFFLINE_STORE /* @min:%2eofflineEventsStored */](events);\r\n });\r\n }\r\n };\r\n _self[STR_OFFLINE_SENT /* @min:%2eofflineBatchSent */] = function (batch) {\r\n if (batch && batch[_DYN_DATA /* @min:%2edata */]) {\r\n _runListeners(_listeners, STR_OFFLINE_SENT, _asyncNotifications, function (listener) {\r\n listener[STR_OFFLINE_SENT /* @min:%2eofflineBatchSent */](batch);\r\n });\r\n }\r\n };\r\n _self[STR_OFFLINE_DROP /* @min:%2eofflineBatchDrop */] = function (cnt, reason) {\r\n if (cnt > 0) {\r\n var rn_1 = reason || 0; // default is unknown\r\n _runListeners(_listeners, STR_OFFLINE_DROP, _asyncNotifications, function (listener) {\r\n listener[STR_OFFLINE_DROP /* @min:%2eofflineBatchDrop */](cnt, rn_1);\r\n });\r\n }\r\n };\r\n _self[_DYN_UNLOAD /* @min:%2eunload */] = function (isAsync) {\r\n var _finishUnload = function () {\r\n unloadHandler && unloadHandler.rm();\r\n unloadHandler = null;\r\n _listeners = [];\r\n // Clear any async listener\r\n _asyncNotifications.h && _asyncNotifications.h[_DYN_CANCEL /* @min:%2ecancel */]();\r\n _asyncNotifications.h = null;\r\n _asyncNotifications.cb = [];\r\n };\r\n var waiting;\r\n _runListeners(_listeners, \"unload\", null, function (listener) {\r\n var asyncUnload = listener[_DYN_UNLOAD /* @min:%2eunload */](isAsync);\r\n if (asyncUnload) {\r\n if (!waiting) {\r\n waiting = [];\r\n }\r\n waiting[_DYN_PUSH /* @min:%2epush */](asyncUnload);\r\n }\r\n });\r\n if (waiting) {\r\n return createPromise(function (resolve) {\r\n return doAwaitResponse(createAllPromise(waiting), function () {\r\n _finishUnload();\r\n resolve();\r\n });\r\n });\r\n }\r\n else {\r\n _finishUnload();\r\n }\r\n };\r\n });\r\n }\r\n /**\r\n * Adds a notification listener.\r\n * @param listener - The notification listener to be added.\r\n */\r\n NotificationManager.prototype.addNotificationListener = function (listener) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n /**\r\n * Removes all instances of the listener.\r\n * @param listener - AWTNotificationListener to remove.\r\n */\r\n NotificationManager.prototype.removeNotificationListener = function (listener) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n /**\r\n * Notification for events sent.\r\n * @param events - The array of events that have been sent.\r\n */\r\n NotificationManager.prototype.eventsSent = function (events) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n /**\r\n * Notification for events being discarded.\r\n * @param events - The array of events that have been discarded by the SDK.\r\n * @param reason - The reason for which the SDK discarded the events. The EventsDiscardedReason\r\n * constant should be used to check the different values.\r\n */\r\n NotificationManager.prototype.eventsDiscarded = function (events, reason) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n /**\r\n * [Optional] A function called when the events have been requested to be sent to the sever.\r\n * @param sendReason - The reason why the event batch is being sent.\r\n * @param isAsync - A flag which identifies whether the requests are being sent in an async or sync manner.\r\n */\r\n NotificationManager.prototype.eventsSendRequest = function (sendReason, isAsync) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n /**\r\n * [Optional] This event is sent if you have enabled perf events, they are primarily used to track internal performance testing and debugging\r\n * the event can be displayed via the debug plugin extension.\r\n * @param perfEvent - The performance event object containing relevant performance data.\r\n */\r\n NotificationManager.prototype.perfEvent = function (perfEvent) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n /**\r\n * Unload and remove any state that this INotificationManager may be holding, this is generally called when the\r\n * owning SDK is being unloaded.\r\n * @param isAsync - Can the unload be performed asynchronously (default)\r\n * @returns If the unload occurs synchronously then nothing should be returned, if happening asynchronously then\r\n * the function should return an [IPromise](https://nevware21.github.io/ts-async/typedoc/interfaces/IPromise.html)\r\n * / Promise to allow any listeners to wait for the operation to complete.\r\n */\r\n NotificationManager.prototype.unload = function (isAsync) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n /**\r\n * [Optional] A function called when the offline events have been stored to the persistent storage\r\n * @param events - events that are stored in the persistent storage\r\n */\r\n NotificationManager.prototype.offlineEventsStored = function (events) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n /**\r\n * [Optional] A function called when the offline events have been sent from the persistent storage\r\n * @param batch - payload data that is sent from the persistent storage\r\n */\r\n NotificationManager.prototype.offlineBatchSent = function (batch) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n /**\r\n * [Optional] A function called when the offline events have been dropped from the persistent storage\r\n * @param cnt - count of batches dropped\r\n * @param reason - the reason why the batches is dropped\r\n * @since v3.1.1\r\n */\r\n NotificationManager.prototype.offlineBatchDrop = function (cnt, reason) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n return NotificationManager;\r\n}());\r\nexport { NotificationManager };\r\n//# sourceMappingURL=NotificationManager.js.map","// // Copyright (c) Microsoft Corporation. All rights reserved.\r\n// // Licensed under the MIT License.\r\nimport { __extends } from \"tslib\";\r\nimport dynamicProto from \"@microsoft/dynamicproto-js\";\r\nimport { arrAppend, arrForEach, dumpObj } from \"@nevware21/ts-utils\";\r\nimport { _DYN_APPLY, _DYN_DIAG_LOG, _DYN_LENGTH, _DYN_PROCESS_NEXT, _DYN_SPLICE, _DYN__DO_TEARDOWN } from \"../__DynamicConstants\";\r\nimport { BaseTelemetryPlugin } from \"./BaseTelemetryPlugin\";\r\nimport { _throwInternal } from \"./DiagnosticLogger\";\r\nimport { getExceptionName } from \"./HelperFuncs\";\r\nimport { STR_PROCESS_TELEMETRY } from \"./InternalConstants\";\r\nfunction _addInitializer(_initializers, id, telemetryInitializer) {\r\n var theInitializer = {\r\n id: id,\r\n fn: telemetryInitializer\r\n };\r\n arrAppend(_initializers, theInitializer);\r\n var handler = {\r\n remove: function () {\r\n arrForEach(_initializers, function (initializer, idx) {\r\n if (initializer.id === theInitializer.id) {\r\n _initializers[_DYN_SPLICE /* @min:%2esplice */](idx, 1);\r\n return -1;\r\n }\r\n });\r\n }\r\n };\r\n return handler;\r\n}\r\nfunction _runInitializers(_initializers, item, logger) {\r\n var doNotSendItem = false;\r\n var telemetryInitializersCount = _initializers[_DYN_LENGTH /* @min:%2elength */];\r\n for (var i = 0; i < telemetryInitializersCount; ++i) {\r\n var telemetryInitializer = _initializers[i];\r\n if (telemetryInitializer) {\r\n try {\r\n if (telemetryInitializer.fn[_DYN_APPLY /* @min:%2eapply */](null, [item]) === false) {\r\n doNotSendItem = true;\r\n break;\r\n }\r\n }\r\n catch (e) {\r\n // log error but dont stop executing rest of the telemetry initializers\r\n // doNotSendItem = true;\r\n _throwInternal(logger, 2 /* eLoggingSeverity.WARNING */, 64 /* _eInternalMessageId.TelemetryInitializerFailed */, \"Telemetry initializer failed: \" + getExceptionName(e), { exception: dumpObj(e) }, true);\r\n }\r\n }\r\n }\r\n return !doNotSendItem;\r\n}\r\nvar TelemetryInitializerPlugin = /** @class */ (function (_super) {\r\n __extends(TelemetryInitializerPlugin, _super);\r\n function TelemetryInitializerPlugin() {\r\n var _this = _super.call(this) || this;\r\n _this.identifier = \"TelemetryInitializerPlugin\";\r\n _this.priority = 199;\r\n // NOTE!: DON'T set default values here, instead set them in the _initDefaults() function as it is also called during teardown()\r\n var _id;\r\n var _initializers;\r\n _initDefaults();\r\n dynamicProto(TelemetryInitializerPlugin, _this, function (_self, _base) {\r\n _self.addTelemetryInitializer = function (telemetryInitializer) {\r\n return _addInitializer(_initializers, _id++, telemetryInitializer);\r\n };\r\n _self[STR_PROCESS_TELEMETRY /* @min:%2eprocessTelemetry */] = function (item, itemCtx) {\r\n if (_runInitializers(_initializers, item, itemCtx ? itemCtx[_DYN_DIAG_LOG /* @min:%2ediagLog */]() : _self[_DYN_DIAG_LOG /* @min:%2ediagLog */]())) {\r\n _self[_DYN_PROCESS_NEXT /* @min:%2eprocessNext */](item, itemCtx);\r\n }\r\n };\r\n _self[_DYN__DO_TEARDOWN /* @min:%2e_doTeardown */] = function () {\r\n _initDefaults();\r\n };\r\n });\r\n function _initDefaults() {\r\n _id = 0;\r\n _initializers = [];\r\n }\r\n return _this;\r\n }\r\n /**\r\n * Add a telemetry processor to decorate or drop telemetry events.\r\n * @param telemetryInitializer - The Telemetry Initializer function\r\n * @returns - A ITelemetryInitializerHandler to enable the initializer to be removed\r\n */\r\n TelemetryInitializerPlugin.prototype.addTelemetryInitializer = function (telemetryInitializer) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n return null;\r\n };\r\n TelemetryInitializerPlugin.prototype.processTelemetry = function (env, itemCtx) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n return TelemetryInitializerPlugin;\r\n}(BaseTelemetryPlugin));\r\nexport { TelemetryInitializerPlugin };\r\n//# sourceMappingURL=TelemetryInitializerPlugin.js.map","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\n\"use strict\";\r\nvar _a;\r\nimport { __spreadArray } from \"tslib\";\r\nimport dynamicProto from \"@microsoft/dynamicproto-js\";\r\nimport { createPromise, createSyncAllSettledPromise, doAwaitResponse } from \"@nevware21/ts-async\";\r\nimport { arrAppend, arrForEach, arrIndexOf, createTimeout, deepExtend, hasDocument, isFunction, isNullOrUndefined, isPlainObject, isPromiseLike, objDeepFreeze, objDefine, objForEachKey, objFreeze, objHasOwn, scheduleTimeout, throwError } from \"@nevware21/ts-utils\";\r\nimport { createDynamicConfig, onConfigChange } from \"../Config/DynamicConfig\";\r\nimport { ActiveStatus } from \"../JavaScriptSDK.Enums/InitActiveStatusEnum\";\r\nimport { _DYN_ADD_NOTIFICATION_LIS1, _DYN_CANCEL, _DYN_CREATE_NEW, _DYN_ENABLED, _DYN_GET_NOTIFY_MGR, _DYN_GET_PLUGIN, _DYN_GET_PROCESS_TEL_CONT2, _DYN_IDENTIFIER, _DYN_INITIALIZE, _DYN_INSTRUMENTATION_KEY, _DYN_IS_ASYNC, _DYN_IS_INITIALIZED, _DYN_I_KEY, _DYN_LENGTH, _DYN_LOGGER, _DYN_LOGGING_LEVEL_CONSOL4, _DYN_MESSAGE, _DYN_MESSAGE_ID, _DYN_NAME, _DYN_NOTIFY, _DYN_ON_COMPLETE, _DYN_POLL_INTERNAL_LOGS, _DYN_PROCESS_NEXT, _DYN_PUSH, _DYN_REMOVE_NOTIFICATION_0, _DYN_SET_DF, _DYN_SPLICE, _DYN_STOP_POLLING_INTERNA3, _DYN_TEARDOWN, _DYN_TIME, _DYN_UNLOAD, _DYN_VALUE, _DYN_VERSION, _DYN_WATCH, _DYN__INACTIVE } from \"../__DynamicConstants\";\r\nimport { doUnloadAll, runTargetUnload } from \"./AsyncUtils\";\r\nimport { ChannelControllerPriority } from \"./Constants\";\r\nimport { createCookieMgr } from \"./CookieMgr\";\r\nimport { createUniqueNamespace } from \"./DataCacheHelper\";\r\nimport { getDebugListener } from \"./DbgExtensionUtils\";\r\nimport { DiagnosticLogger, _InternalLogMessage, _throwInternal, _warnToConsole } from \"./DiagnosticLogger\";\r\nimport { getSetValue, isNotNullOrUndefined, proxyFunctionAs, proxyFunctions, toISOString } from \"./HelperFuncs\";\r\nimport { STR_CHANNELS, STR_CORE, STR_CREATE_PERF_MGR, STR_DISABLED, STR_EMPTY, STR_EVENTS_DISCARDED, STR_EXTENSIONS, STR_EXTENSION_CONFIG, STR_GET_PERF_MGR, STR_PRIORITY, UNDEFINED_VALUE } from \"./InternalConstants\";\r\nimport { NotificationManager } from \"./NotificationManager\";\r\nimport { PerfManager, doPerf, getGblPerfMgr } from \"./PerfManager\";\r\nimport { createProcessTelemetryContext, createProcessTelemetryUnloadContext, createProcessTelemetryUpdateContext, createTelemetryProxyChain } from \"./ProcessTelemetryContext\";\r\nimport { _getPluginState, createDistributedTraceContext, initializePlugins, sortPlugins } from \"./TelemetryHelpers\";\r\nimport { TelemetryInitializerPlugin } from \"./TelemetryInitializerPlugin\";\r\nimport { createUnloadHandlerContainer } from \"./UnloadHandlerContainer\";\r\nimport { createUnloadHookContainer } from \"./UnloadHookContainer\";\r\nvar strValidationError = \"Plugins must provide initialize method\";\r\nvar strNotificationManager = \"_notificationManager\";\r\nvar strSdkUnloadingError = \"SDK is still unloading...\";\r\nvar strSdkNotInitialized = \"SDK is not initialized\";\r\nvar maxInitQueueSize = 100;\r\nvar maxInitTimeout = 50000;\r\n// const strPluginUnloadFailed = \"Failed to unload plugin\";\r\n/**\r\n * The default settings for the config.\r\n * WE MUST include all defaults here to ensure that the config is created with all of the properties\r\n * defined as dynamic.\r\n */\r\nvar defaultConfig = objDeepFreeze((_a = {\r\n cookieCfg: {}\r\n },\r\n _a[STR_EXTENSIONS] = { rdOnly: true, ref: true, v: [] },\r\n _a[STR_CHANNELS] = { rdOnly: true, ref: true, v: [] },\r\n _a[STR_EXTENSION_CONFIG] = { ref: true, v: {} },\r\n _a[STR_CREATE_PERF_MGR] = UNDEFINED_VALUE,\r\n _a.loggingLevelConsole = 0 /* eLoggingSeverity.DISABLED */,\r\n _a.diagnosticLogInterval = UNDEFINED_VALUE,\r\n _a));\r\n/**\r\n * Helper to create the default performance manager\r\n * @param core - The AppInsightsCore instance\r\n * @param notificationMgr - The notification manager\r\n */\r\nfunction _createPerfManager(core, notificationMgr) {\r\n return new PerfManager(notificationMgr);\r\n}\r\nfunction _validateExtensions(logger, channelPriority, allExtensions) {\r\n var _a;\r\n // Concat all available extensions\r\n var coreExtensions = [];\r\n var channels = [];\r\n // Check if any two extensions have the same priority, then warn to console\r\n // And extract the local extensions from the\r\n var extPriorities = {};\r\n // Extension validation\r\n arrForEach(allExtensions, function (ext) {\r\n // Check for ext.initialize\r\n if (isNullOrUndefined(ext) || isNullOrUndefined(ext[_DYN_INITIALIZE /* @min:%2einitialize */])) {\r\n throwError(strValidationError);\r\n }\r\n var extPriority = ext[STR_PRIORITY /* @min:%2epriority */];\r\n var identifier = ext[_DYN_IDENTIFIER /* @min:%2eidentifier */];\r\n if (ext && extPriority) {\r\n if (!isNullOrUndefined(extPriorities[extPriority])) {\r\n _warnToConsole(logger, \"Two extensions have same priority #\" + extPriority + \" - \" + extPriorities[extPriority] + \", \" + identifier);\r\n }\r\n else {\r\n // set a value\r\n extPriorities[extPriority] = identifier;\r\n }\r\n }\r\n // Split extensions to core and channels\r\n if (!extPriority || extPriority < channelPriority) {\r\n // Add to core extension that will be managed by AppInsightsCore\r\n coreExtensions[_DYN_PUSH /* @min:%2epush */](ext);\r\n }\r\n else {\r\n channels[_DYN_PUSH /* @min:%2epush */](ext);\r\n }\r\n });\r\n return _a = {},\r\n _a[STR_CORE /* @min:core */] = coreExtensions,\r\n _a[STR_CHANNELS /* @min:channels */] = channels,\r\n _a;\r\n}\r\nfunction _isPluginPresent(thePlugin, plugins) {\r\n var exists = false;\r\n arrForEach(plugins, function (plugin) {\r\n if (plugin === thePlugin) {\r\n exists = true;\r\n return -1;\r\n }\r\n });\r\n return exists;\r\n}\r\nfunction _deepMergeConfig(details, target, newValues, merge) {\r\n // Lets assign the new values to the existing config\r\n if (newValues) {\r\n objForEachKey(newValues, function (key, value) {\r\n if (merge) {\r\n if (isPlainObject(value) && isPlainObject(target[key])) {\r\n // The target is an object and it has a value\r\n _deepMergeConfig(details, target[key], value, merge);\r\n }\r\n }\r\n if (merge && isPlainObject(value) && isPlainObject(target[key])) {\r\n // The target is an object and it has a value\r\n _deepMergeConfig(details, target[key], value, merge);\r\n }\r\n else {\r\n // Just Assign (replace) and/or make the property dynamic\r\n details.set(target, key, value);\r\n }\r\n });\r\n }\r\n}\r\nfunction _findWatcher(listeners, newWatcher) {\r\n var theListener = null;\r\n var idx = -1;\r\n arrForEach(listeners, function (listener, lp) {\r\n if (listener.w === newWatcher) {\r\n theListener = listener;\r\n idx = lp;\r\n return -1;\r\n }\r\n });\r\n return { i: idx, l: theListener };\r\n}\r\nfunction _addDelayedCfgListener(listeners, newWatcher) {\r\n var theListener = _findWatcher(listeners, newWatcher).l;\r\n if (!theListener) {\r\n theListener = {\r\n w: newWatcher,\r\n rm: function () {\r\n var fnd = _findWatcher(listeners, newWatcher);\r\n if (fnd.i !== -1) {\r\n listeners[_DYN_SPLICE /* @min:%2esplice */](fnd.i, 1);\r\n }\r\n }\r\n };\r\n listeners[_DYN_PUSH /* @min:%2epush */](theListener);\r\n }\r\n return theListener;\r\n}\r\nfunction _registerDelayedCfgListener(config, listeners, logger) {\r\n arrForEach(listeners, function (listener) {\r\n var unloadHdl = onConfigChange(config, listener.w, logger);\r\n delete listener.w; // Clear the listener reference so it will get garbage collected.\r\n // replace the remove function\r\n listener.rm = function () {\r\n unloadHdl.rm();\r\n };\r\n });\r\n}\r\n// Moved this outside of the closure to reduce the retained memory footprint\r\nfunction _initDebugListener(configHandler, unloadContainer, notificationManager, debugListener) {\r\n // Will get recalled if any referenced config values are changed\r\n unloadContainer.add(configHandler[_DYN_WATCH /* @min:%2ewatch */](function (details) {\r\n var disableDbgExt = details.cfg.disableDbgExt;\r\n if (disableDbgExt === true && debugListener) {\r\n // Remove any previously loaded debug listener\r\n notificationManager[_DYN_REMOVE_NOTIFICATION_0 /* @min:%2eremoveNotificationListener */](debugListener);\r\n debugListener = null;\r\n }\r\n if (notificationManager && !debugListener && disableDbgExt !== true) {\r\n debugListener = getDebugListener(details.cfg);\r\n notificationManager[_DYN_ADD_NOTIFICATION_LIS1 /* @min:%2eaddNotificationListener */](debugListener);\r\n }\r\n }));\r\n return debugListener;\r\n}\r\n// Moved this outside of the closure to reduce the retained memory footprint\r\nfunction _createUnloadHook(unloadHook) {\r\n return objDefine({\r\n rm: function () {\r\n unloadHook.rm();\r\n }\r\n }, \"toJSON\", { v: function () { return \"aicore::onCfgChange<\" + JSON.stringify(unloadHook) + \">\"; } });\r\n}\r\n/**\r\n * @group Classes\r\n * @group Entrypoint\r\n */\r\nvar AppInsightsCore = /** @class */ (function () {\r\n function AppInsightsCore() {\r\n // NOTE!: DON'T set default values here, instead set them in the _initDefaults() function as it is also called during teardown()\r\n var _configHandler;\r\n var _isInitialized;\r\n var _logger;\r\n var _eventQueue;\r\n var _notificationManager;\r\n var _perfManager;\r\n var _cfgPerfManager;\r\n var _cookieManager;\r\n var _pluginChain;\r\n var _configExtensions;\r\n var _channelConfig;\r\n var _channels;\r\n var _isUnloading;\r\n var _telemetryInitializerPlugin;\r\n var _internalLogsEventName;\r\n var _evtNamespace;\r\n var _unloadHandlers;\r\n var _hookContainer;\r\n var _debugListener;\r\n var _traceCtx;\r\n var _instrumentationKey;\r\n var _cfgListeners;\r\n var _extensions;\r\n var _pluginVersionStringArr;\r\n var _pluginVersionString;\r\n var _activeStatus; // to indicate if ikey or endpoint url promised is resolved or not\r\n var _endpoint;\r\n var _initInMemoMaxSize; // max event count limit during wait for init promises to be resolved\r\n var _isStatusSet; // track if active status is set in case of init timeout and init promises setting the status twice\r\n var _initTimer;\r\n /**\r\n * Internal log poller\r\n */\r\n var _internalLogPoller;\r\n var _internalLogPollerListening;\r\n var _forceStopInternalLogPoller;\r\n dynamicProto(AppInsightsCore, this, function (_self) {\r\n // Set the default values (also called during teardown)\r\n _initDefaults();\r\n // Special internal method to allow the unit tests and DebugPlugin to hook embedded objects\r\n _self[\"_getDbgPlgTargets\"] = function () {\r\n return [_extensions, _eventQueue];\r\n };\r\n _self[_DYN_IS_INITIALIZED /* @min:%2eisInitialized */] = function () { return _isInitialized; };\r\n // since version 3.3.0\r\n _self.activeStatus = function () { return _activeStatus; };\r\n // since version 3.3.0\r\n // internal\r\n _self._setPendingStatus = function () {\r\n _activeStatus = 3 /* eActiveStatus.PENDING */;\r\n };\r\n // Creating the self.initialize = ()\r\n _self[_DYN_INITIALIZE /* @min:%2einitialize */] = function (config, extensions, logger, notificationManager) {\r\n if (_isUnloading) {\r\n throwError(strSdkUnloadingError);\r\n }\r\n // Make sure core is only initialized once\r\n if (_self[_DYN_IS_INITIALIZED /* @min:%2eisInitialized */]()) {\r\n throwError(\"Core cannot be initialized more than once\");\r\n }\r\n _configHandler = createDynamicConfig(config, defaultConfig, logger || _self[_DYN_LOGGER /* @min:%2elogger */], false);\r\n // Re-assigning the local config property so we don't have any references to the passed value and it can be garbage collected\r\n config = _configHandler.cfg;\r\n // This will be \"re-run\" if the referenced config properties are changed\r\n _addUnloadHook(_configHandler[_DYN_WATCH /* @min:%2ewatch */](function (details) {\r\n var rootCfg = details.cfg;\r\n var isPending = _activeStatus === 3 /* eActiveStatus.PENDING */;\r\n if (isPending) {\r\n // means waiting for previous promises to be resolved, won't apply new changes\r\n return;\r\n }\r\n _initInMemoMaxSize = rootCfg.initInMemoMaxSize || maxInitQueueSize;\r\n // app Insights core only handle ikey and endpointurl, aisku will handle cs\r\n var ikey = rootCfg[_DYN_INSTRUMENTATION_KEY /* @min:%2einstrumentationKey */];\r\n var endpointUrl = rootCfg.endpointUrl; // do not need to validate endpoint url, if it is null, default one will be set by sender\r\n if (isNullOrUndefined(ikey)) {\r\n _instrumentationKey = null;\r\n // if new ikey is null, set status to be inactive, all new events will be saved in memory or dropped\r\n _activeStatus = ActiveStatus[_DYN__INACTIVE /* @min:%2eINACTIVE */];\r\n var msg = \"Please provide instrumentation key\";\r\n if (!_isInitialized) {\r\n // only throw error during initialization\r\n throwError(msg);\r\n }\r\n else {\r\n _throwInternal(_logger, 1 /* eLoggingSeverity.CRITICAL */, 100 /* _eInternalMessageId.InvalidInstrumentationKey */, msg);\r\n _releaseQueues();\r\n }\r\n return;\r\n }\r\n var promises = [];\r\n if (isPromiseLike(ikey)) {\r\n promises[_DYN_PUSH /* @min:%2epush */](ikey);\r\n _instrumentationKey = null; // reset current local ikey variable (otherwise it will always be the previous ikeys if timeout is called before promise cb)\r\n }\r\n else {\r\n // string\r\n _instrumentationKey = ikey;\r\n }\r\n if (isPromiseLike(endpointUrl)) {\r\n promises[_DYN_PUSH /* @min:%2epush */](endpointUrl);\r\n _endpoint = null; // reset current local endpoint variable (otherwise it will always be the previous urls if timeout is called before promise cb)\r\n }\r\n else {\r\n // string or null\r\n _endpoint = endpointUrl;\r\n }\r\n // at least have one promise\r\n if (promises[_DYN_LENGTH /* @min:%2elength */]) {\r\n // reset to false for new dynamic changes\r\n _isStatusSet = false;\r\n _activeStatus = 3 /* eActiveStatus.PENDING */;\r\n var initTimeout = isNotNullOrUndefined(rootCfg.initTimeOut) ? rootCfg.initTimeOut : maxInitTimeout; // rootCfg.initTimeOut could be 0\r\n var allPromises = createSyncAllSettledPromise(promises);\r\n _initTimer = scheduleTimeout(function () {\r\n // set _isStatusSet to true\r\n // set active status\r\n // release queues\r\n _initTimer = null;\r\n if (!_isStatusSet) {\r\n _setStatus();\r\n }\r\n }, initTimeout);\r\n doAwaitResponse(allPromises, function (response) {\r\n try {\r\n if (_isStatusSet) {\r\n // promises take too long to resolve, ignore them\r\n // active status should be set by timeout already\r\n return;\r\n }\r\n if (!response.rejected) {\r\n var values = response[_DYN_VALUE /* @min:%2evalue */];\r\n if (values && values[_DYN_LENGTH /* @min:%2elength */]) {\r\n // ikey\r\n var ikeyRes = values[0];\r\n _instrumentationKey = ikeyRes && ikeyRes[_DYN_VALUE /* @min:%2evalue */];\r\n // endpoint\r\n if (values[_DYN_LENGTH /* @min:%2elength */] > 1) {\r\n var endpointRes = values[1];\r\n _endpoint = endpointRes && endpointRes[_DYN_VALUE /* @min:%2evalue */];\r\n }\r\n }\r\n if (_instrumentationKey) {\r\n // if ikey is null, no need to trigger extra dynamic changes for extensions\r\n config[_DYN_INSTRUMENTATION_KEY /* @min:%2einstrumentationKey */] = _instrumentationKey; // set config.instrumentationKey for extensions to consume\r\n config.endpointUrl = _endpoint; // set config.endpointUrl for extensions to consume\r\n }\r\n }\r\n // set _isStatusSet to true\r\n // set active status\r\n // release queues\r\n _setStatus();\r\n }\r\n catch (e) {\r\n if (!_isStatusSet) {\r\n _setStatus();\r\n }\r\n }\r\n });\r\n }\r\n else {\r\n // means no promises\r\n _setStatus();\r\n }\r\n //_instrumentationKey = details.cfg.instrumentationKey;\r\n // Mark the extensionConfig and all first level keys as referenced\r\n // This is so that calls to getExtCfg() will always return the same object\r\n // Even when a user may \"re-assign\" the plugin properties (or it's unloaded/reloaded)\r\n var extCfg = details.ref(details.cfg, STR_EXTENSION_CONFIG);\r\n objForEachKey(extCfg, function (key) {\r\n details.ref(extCfg, key);\r\n });\r\n }));\r\n _notificationManager = notificationManager;\r\n // Initialize the debug listener outside of the closure to reduce the retained memory footprint\r\n _debugListener = _initDebugListener(_configHandler, _hookContainer, _notificationManager && _self[_DYN_GET_NOTIFY_MGR /* @min:%2egetNotifyMgr */](), _debugListener);\r\n _initPerfManager();\r\n _self[_DYN_LOGGER /* @min:%2elogger */] = logger;\r\n var cfgExtensions = config[STR_EXTENSIONS /* @min:%2eextensions */];\r\n // Extension validation\r\n _configExtensions = [];\r\n _configExtensions[_DYN_PUSH /* @min:%2epush */].apply(_configExtensions, __spreadArray(__spreadArray([], extensions, false), cfgExtensions, false));\r\n _channelConfig = config[STR_CHANNELS /* @min:%2echannels */];\r\n _initPluginChain(null);\r\n if (!_channels || _channels[_DYN_LENGTH /* @min:%2elength */] === 0) {\r\n throwError(\"No \" + STR_CHANNELS + \" available\");\r\n }\r\n if (_channelConfig && _channelConfig[_DYN_LENGTH /* @min:%2elength */] > 1) {\r\n var teeController = _self[_DYN_GET_PLUGIN /* @min:%2egetPlugin */](\"TeeChannelController\");\r\n if (!teeController || !teeController.plugin) {\r\n _throwInternal(_logger, 1 /* eLoggingSeverity.CRITICAL */, 28 /* _eInternalMessageId.SenderNotInitialized */, \"TeeChannel required\");\r\n }\r\n }\r\n _registerDelayedCfgListener(config, _cfgListeners, _logger);\r\n _cfgListeners = null;\r\n _isInitialized = true;\r\n if (_activeStatus === ActiveStatus.ACTIVE) {\r\n _releaseQueues();\r\n }\r\n };\r\n _self.getChannels = function () {\r\n var controls = [];\r\n if (_channels) {\r\n arrForEach(_channels, function (channel) {\r\n controls[_DYN_PUSH /* @min:%2epush */](channel);\r\n });\r\n }\r\n return objFreeze(controls);\r\n };\r\n _self.track = function (telemetryItem) {\r\n doPerf(_self[STR_GET_PERF_MGR /* @min:%2egetPerfMgr */](), function () { return \"AppInsightsCore:track\"; }, function () {\r\n if (telemetryItem === null) {\r\n _notifyInvalidEvent(telemetryItem);\r\n // throw error\r\n throwError(\"Invalid telemetry item\");\r\n }\r\n // do basic validation before sending it through the pipeline\r\n if (!telemetryItem[_DYN_NAME /* @min:%2ename */] && isNullOrUndefined(telemetryItem[_DYN_NAME /* @min:%2ename */])) {\r\n _notifyInvalidEvent(telemetryItem);\r\n throwError(\"telemetry name required\");\r\n }\r\n // setup default iKey if not passed in\r\n telemetryItem[_DYN_I_KEY /* @min:%2eiKey */] = telemetryItem[_DYN_I_KEY /* @min:%2eiKey */] || _instrumentationKey;\r\n // add default timestamp if not passed in\r\n telemetryItem[_DYN_TIME /* @min:%2etime */] = telemetryItem[_DYN_TIME /* @min:%2etime */] || toISOString(new Date());\r\n // Common Schema 4.0\r\n telemetryItem.ver = telemetryItem.ver || \"4.0\";\r\n if (!_isUnloading && _self[_DYN_IS_INITIALIZED /* @min:%2eisInitialized */]() && _activeStatus === ActiveStatus.ACTIVE) {\r\n // Process the telemetry plugin chain\r\n _createTelCtx()[_DYN_PROCESS_NEXT /* @min:%2eprocessNext */](telemetryItem);\r\n }\r\n else if (_activeStatus !== ActiveStatus[_DYN__INACTIVE /* @min:%2eINACTIVE */]) {\r\n // Queue events until all extensions are initialized\r\n if (_eventQueue[_DYN_LENGTH /* @min:%2elength */] <= _initInMemoMaxSize) {\r\n // set limit, if full, stop adding new events\r\n _eventQueue[_DYN_PUSH /* @min:%2epush */](telemetryItem);\r\n }\r\n }\r\n }, function () { return ({ item: telemetryItem }); }, !(telemetryItem.sync));\r\n };\r\n _self[_DYN_GET_PROCESS_TEL_CONT2 /* @min:%2egetProcessTelContext */] = _createTelCtx;\r\n _self[_DYN_GET_NOTIFY_MGR /* @min:%2egetNotifyMgr */] = function () {\r\n if (!_notificationManager) {\r\n _notificationManager = new NotificationManager(_configHandler.cfg);\r\n // For backward compatibility only\r\n _self[strNotificationManager] = _notificationManager;\r\n }\r\n return _notificationManager;\r\n };\r\n /**\r\n * Adds a notification listener. The SDK calls methods on the listener when an appropriate notification is raised.\r\n * The added plugins must raise notifications. If the plugins do not implement the notifications, then no methods will be\r\n * called.\r\n * @param listener - An INotificationListener object.\r\n */\r\n _self[_DYN_ADD_NOTIFICATION_LIS1 /* @min:%2eaddNotificationListener */] = function (listener) {\r\n _self.getNotifyMgr()[_DYN_ADD_NOTIFICATION_LIS1 /* @min:%2eaddNotificationListener */](listener);\r\n };\r\n /**\r\n * Removes all instances of the listener.\r\n * @param listener - INotificationListener to remove.\r\n */\r\n _self[_DYN_REMOVE_NOTIFICATION_0 /* @min:%2eremoveNotificationListener */] = function (listener) {\r\n if (_notificationManager) {\r\n _notificationManager[_DYN_REMOVE_NOTIFICATION_0 /* @min:%2eremoveNotificationListener */](listener);\r\n }\r\n };\r\n _self.getCookieMgr = function () {\r\n if (!_cookieManager) {\r\n _cookieManager = createCookieMgr(_configHandler.cfg, _self[_DYN_LOGGER /* @min:%2elogger */]);\r\n }\r\n return _cookieManager;\r\n };\r\n _self.setCookieMgr = function (cookieMgr) {\r\n if (_cookieManager !== cookieMgr) {\r\n runTargetUnload(_cookieManager, false);\r\n _cookieManager = cookieMgr;\r\n }\r\n };\r\n _self[STR_GET_PERF_MGR /* @min:%2egetPerfMgr */] = function () {\r\n return _perfManager || _cfgPerfManager || getGblPerfMgr();\r\n };\r\n _self.setPerfMgr = function (perfMgr) {\r\n _perfManager = perfMgr;\r\n };\r\n _self.eventCnt = function () {\r\n return _eventQueue[_DYN_LENGTH /* @min:%2elength */];\r\n };\r\n _self.releaseQueue = function () {\r\n if (_isInitialized && _eventQueue[_DYN_LENGTH /* @min:%2elength */] > 0) {\r\n var eventQueue = _eventQueue;\r\n _eventQueue = [];\r\n if (_activeStatus === 2 /* eActiveStatus.ACTIVE */) {\r\n arrForEach(eventQueue, function (event) {\r\n event[_DYN_I_KEY /* @min:%2eiKey */] = event[_DYN_I_KEY /* @min:%2eiKey */] || _instrumentationKey;\r\n _createTelCtx()[_DYN_PROCESS_NEXT /* @min:%2eprocessNext */](event);\r\n });\r\n }\r\n else {\r\n // new one for msg ikey\r\n _throwInternal(_logger, 2 /* eLoggingSeverity.WARNING */, 20 /* _eInternalMessageId.FailedToSendQueuedTelemetry */, \"core init status is not active\");\r\n }\r\n }\r\n };\r\n _self[_DYN_POLL_INTERNAL_LOGS /* @min:%2epollInternalLogs */] = function (eventName) {\r\n _internalLogsEventName = eventName || null;\r\n _forceStopInternalLogPoller = false;\r\n _internalLogPoller && _internalLogPoller[_DYN_CANCEL /* @min:%2ecancel */]();\r\n return _startLogPoller(true);\r\n };\r\n function _setStatus() {\r\n _isStatusSet = true;\r\n if (isNullOrUndefined(_instrumentationKey)) {\r\n _activeStatus = ActiveStatus[_DYN__INACTIVE /* @min:%2eINACTIVE */];\r\n _throwInternal(_logger, 1 /* eLoggingSeverity.CRITICAL */, 112 /* _eInternalMessageId.InitPromiseException */, \"ikey can't be resolved from promises\");\r\n }\r\n else {\r\n _activeStatus = ActiveStatus.ACTIVE;\r\n }\r\n _releaseQueues();\r\n }\r\n function _releaseQueues() {\r\n if (_isInitialized) {\r\n _self.releaseQueue();\r\n _self[_DYN_POLL_INTERNAL_LOGS /* @min:%2epollInternalLogs */]();\r\n }\r\n }\r\n function _startLogPoller(alwaysStart) {\r\n if ((!_internalLogPoller || !_internalLogPoller[_DYN_ENABLED /* @min:%2eenabled */]) && !_forceStopInternalLogPoller) {\r\n var shouldStart = alwaysStart || (_logger && _logger.queue[_DYN_LENGTH /* @min:%2elength */] > 0);\r\n if (shouldStart) {\r\n if (!_internalLogPollerListening) {\r\n _internalLogPollerListening = true;\r\n // listen for any configuration changes so that changes to the\r\n // interval will cause the timer to be re-initialized\r\n _addUnloadHook(_configHandler[_DYN_WATCH /* @min:%2ewatch */](function (details) {\r\n var interval = details.cfg.diagnosticLogInterval;\r\n if (!interval || !(interval > 0)) {\r\n interval = 10000;\r\n }\r\n var isRunning = false;\r\n if (_internalLogPoller) {\r\n // It was already created so remember it's running and cancel\r\n isRunning = _internalLogPoller[_DYN_ENABLED /* @min:%2eenabled */];\r\n _internalLogPoller[_DYN_CANCEL /* @min:%2ecancel */]();\r\n }\r\n // Create / reconfigure\r\n _internalLogPoller = createTimeout(_flushInternalLogs, interval);\r\n _internalLogPoller.unref();\r\n // Restart if previously running\r\n _internalLogPoller[_DYN_ENABLED /* @min:%2eenabled */] = isRunning;\r\n }));\r\n }\r\n _internalLogPoller[_DYN_ENABLED /* @min:%2eenabled */] = true;\r\n }\r\n }\r\n return _internalLogPoller;\r\n }\r\n _self[_DYN_STOP_POLLING_INTERNA3 /* @min:%2estopPollingInternalLogs */] = function () {\r\n _forceStopInternalLogPoller = true;\r\n _internalLogPoller && _internalLogPoller[_DYN_CANCEL /* @min:%2ecancel */]();\r\n _flushInternalLogs();\r\n };\r\n // Add addTelemetryInitializer\r\n proxyFunctions(_self, function () { return _telemetryInitializerPlugin; }, [\"addTelemetryInitializer\"]);\r\n _self[_DYN_UNLOAD /* @min:%2eunload */] = function (isAsync, unloadComplete, cbTimeout) {\r\n var _a;\r\n if (isAsync === void 0) { isAsync = true; }\r\n if (!_isInitialized) {\r\n // The SDK is not initialized\r\n throwError(strSdkNotInitialized);\r\n }\r\n // Check if the SDK still unloading so throw\r\n if (_isUnloading) {\r\n // The SDK is already unloading\r\n throwError(strSdkUnloadingError);\r\n }\r\n var unloadState = (_a = {\r\n reason: 50 /* TelemetryUnloadReason.SdkUnload */\r\n },\r\n _a[_DYN_IS_ASYNC /* @min:isAsync */] = isAsync,\r\n _a.flushComplete = false,\r\n _a);\r\n var result;\r\n if (isAsync && !unloadComplete) {\r\n result = createPromise(function (resolve) {\r\n // Set the callback to the promise resolve callback\r\n unloadComplete = resolve;\r\n });\r\n }\r\n var processUnloadCtx = createProcessTelemetryUnloadContext(_getPluginChain(), _self);\r\n processUnloadCtx[_DYN_ON_COMPLETE /* @min:%2eonComplete */](function () {\r\n _hookContainer.run(_self[_DYN_LOGGER /* @min:%2elogger */]);\r\n // Run any \"unload\" functions for the _cookieManager, _notificationManager and _logger\r\n doUnloadAll([_cookieManager, _notificationManager, _logger], isAsync, function () {\r\n _initDefaults();\r\n unloadComplete && unloadComplete(unloadState);\r\n });\r\n }, _self);\r\n function _doUnload(flushComplete) {\r\n unloadState.flushComplete = flushComplete;\r\n _isUnloading = true;\r\n // Run all of the unload handlers first (before unloading the plugins)\r\n _unloadHandlers.run(processUnloadCtx, unloadState);\r\n // Stop polling the internal logs\r\n _self[_DYN_STOP_POLLING_INTERNA3 /* @min:%2estopPollingInternalLogs */]();\r\n // Start unloading the components, from this point onwards the SDK should be considered to be in an unstable state\r\n processUnloadCtx[_DYN_PROCESS_NEXT /* @min:%2eprocessNext */](unloadState);\r\n }\r\n _flushInternalLogs();\r\n if (!_flushChannels(isAsync, _doUnload, 6 /* SendRequestReason.SdkUnload */, cbTimeout)) {\r\n _doUnload(false);\r\n }\r\n return result;\r\n };\r\n _self[_DYN_GET_PLUGIN /* @min:%2egetPlugin */] = _getPlugin;\r\n _self.addPlugin = function (plugin, replaceExisting, isAsync, addCb) {\r\n if (!plugin) {\r\n addCb && addCb(false);\r\n _logOrThrowError(strValidationError);\r\n return;\r\n }\r\n var existingPlugin = _getPlugin(plugin[_DYN_IDENTIFIER /* @min:%2eidentifier */]);\r\n if (existingPlugin && !replaceExisting) {\r\n addCb && addCb(false);\r\n _logOrThrowError(\"Plugin [\" + plugin[_DYN_IDENTIFIER /* @min:%2eidentifier */] + \"] is already loaded!\");\r\n return;\r\n }\r\n var updateState = {\r\n reason: 16 /* TelemetryUpdateReason.PluginAdded */\r\n };\r\n function _addPlugin(removed) {\r\n _configExtensions[_DYN_PUSH /* @min:%2epush */](plugin);\r\n updateState.added = [plugin];\r\n // Re-Initialize the plugin chain\r\n _initPluginChain(updateState);\r\n addCb && addCb(true);\r\n }\r\n if (existingPlugin) {\r\n var removedPlugins_1 = [existingPlugin.plugin];\r\n var unloadState = {\r\n reason: 2 /* TelemetryUnloadReason.PluginReplace */,\r\n isAsync: !!isAsync\r\n };\r\n _removePlugins(removedPlugins_1, unloadState, function (removed) {\r\n if (!removed) {\r\n // Previous plugin was successfully removed or was not installed\r\n addCb && addCb(false);\r\n }\r\n else {\r\n updateState.removed = removedPlugins_1;\r\n updateState.reason |= 32 /* TelemetryUpdateReason.PluginRemoved */;\r\n _addPlugin(true);\r\n }\r\n });\r\n }\r\n else {\r\n _addPlugin(false);\r\n }\r\n };\r\n _self.updateCfg = function (newConfig, mergeExisting) {\r\n if (mergeExisting === void 0) { mergeExisting = true; }\r\n var updateState;\r\n if (_self[_DYN_IS_INITIALIZED /* @min:%2eisInitialized */]()) {\r\n updateState = {\r\n reason: 1 /* TelemetryUpdateReason.ConfigurationChanged */,\r\n cfg: _configHandler.cfg,\r\n oldCfg: deepExtend({}, _configHandler.cfg),\r\n newConfig: deepExtend({}, newConfig),\r\n merge: mergeExisting\r\n };\r\n newConfig = updateState.newConfig;\r\n var cfg = _configHandler.cfg;\r\n // replace the immutable (if initialized) values\r\n // We don't currently allow updating the extensions and channels via the update config\r\n // So overwriting any user provided values to reuse the existing values\r\n newConfig[STR_EXTENSIONS /* @min:%2eextensions */] = cfg[STR_EXTENSIONS /* @min:%2eextensions */];\r\n newConfig[STR_CHANNELS /* @min:%2echannels */] = cfg[STR_CHANNELS /* @min:%2echannels */];\r\n }\r\n // Explicitly blocking any previous config watchers so that they don't get called because\r\n // of this bulk update (Probably not necessary)\r\n _configHandler._block(function (details) {\r\n // Lets assign the new values to the existing config either overwriting or re-assigning\r\n var theConfig = details.cfg;\r\n _deepMergeConfig(details, theConfig, newConfig, mergeExisting);\r\n if (!mergeExisting) {\r\n // Remove (unassign) the values \"missing\" from the newConfig and also not in the default config\r\n objForEachKey(theConfig, function (key) {\r\n if (!objHasOwn(newConfig, key)) {\r\n // Set the value to undefined\r\n details.set(theConfig, key, UNDEFINED_VALUE);\r\n }\r\n });\r\n }\r\n // Apply defaults to the new config\r\n details[_DYN_SET_DF /* @min:%2esetDf */](theConfig, defaultConfig);\r\n }, true);\r\n // Now execute all of the listeners (synchronously) so they update their values immediately\r\n _configHandler[_DYN_NOTIFY /* @min:%2enotify */]();\r\n if (updateState) {\r\n _doUpdate(updateState);\r\n }\r\n };\r\n _self.evtNamespace = function () {\r\n return _evtNamespace;\r\n };\r\n _self.flush = _flushChannels;\r\n _self.getTraceCtx = function (createNew) {\r\n if (!_traceCtx) {\r\n _traceCtx = createDistributedTraceContext();\r\n }\r\n return _traceCtx;\r\n };\r\n _self.setTraceCtx = function (traceCtx) {\r\n _traceCtx = traceCtx || null;\r\n };\r\n _self.addUnloadHook = _addUnloadHook;\r\n // Create the addUnloadCb\r\n proxyFunctionAs(_self, \"addUnloadCb\", function () { return _unloadHandlers; }, \"add\");\r\n _self.onCfgChange = function (handler) {\r\n var unloadHook;\r\n if (!_isInitialized) {\r\n unloadHook = _addDelayedCfgListener(_cfgListeners, handler);\r\n }\r\n else {\r\n unloadHook = onConfigChange(_configHandler.cfg, handler, _self[_DYN_LOGGER /* @min:%2elogger */]);\r\n }\r\n return _createUnloadHook(unloadHook);\r\n };\r\n _self.getWParam = function () {\r\n return (hasDocument() || !!_configHandler.cfg.enableWParam) ? 0 : -1;\r\n };\r\n function _setPluginVersions() {\r\n var thePlugins = {};\r\n _pluginVersionStringArr = [];\r\n var _addPluginVersions = function (plugins) {\r\n if (plugins) {\r\n arrForEach(plugins, function (plugin) {\r\n if (plugin[_DYN_IDENTIFIER /* @min:%2eidentifier */] && plugin[_DYN_VERSION /* @min:%2eversion */] && !thePlugins[plugin.identifier]) {\r\n var ver = plugin[_DYN_IDENTIFIER /* @min:%2eidentifier */] + \"=\" + plugin[_DYN_VERSION /* @min:%2eversion */];\r\n _pluginVersionStringArr[_DYN_PUSH /* @min:%2epush */](ver);\r\n thePlugins[plugin.identifier] = plugin;\r\n }\r\n });\r\n }\r\n };\r\n _addPluginVersions(_channels);\r\n if (_channelConfig) {\r\n arrForEach(_channelConfig, function (channels) {\r\n _addPluginVersions(channels);\r\n });\r\n }\r\n _addPluginVersions(_configExtensions);\r\n }\r\n function _initDefaults() {\r\n _isInitialized = false;\r\n // Use a default logger so initialization errors are not dropped on the floor with full logging\r\n _configHandler = createDynamicConfig({}, defaultConfig, _self[_DYN_LOGGER /* @min:%2elogger */]);\r\n // Set the logging level to critical so that any critical initialization failures are displayed on the console\r\n _configHandler.cfg[_DYN_LOGGING_LEVEL_CONSOL4 /* @min:%2eloggingLevelConsole */] = 1 /* eLoggingSeverity.CRITICAL */;\r\n // Define _self.config\r\n objDefine(_self, \"config\", {\r\n g: function () { return _configHandler.cfg; },\r\n s: function (newValue) {\r\n _self.updateCfg(newValue, false);\r\n }\r\n });\r\n objDefine(_self, \"pluginVersionStringArr\", {\r\n g: function () {\r\n if (!_pluginVersionStringArr) {\r\n _setPluginVersions();\r\n }\r\n return _pluginVersionStringArr;\r\n }\r\n });\r\n objDefine(_self, \"pluginVersionString\", {\r\n g: function () {\r\n if (!_pluginVersionString) {\r\n if (!_pluginVersionStringArr) {\r\n _setPluginVersions();\r\n }\r\n _pluginVersionString = _pluginVersionStringArr.join(\";\");\r\n }\r\n return _pluginVersionString || STR_EMPTY;\r\n }\r\n });\r\n objDefine(_self, \"logger\", {\r\n g: function () {\r\n if (!_logger) {\r\n _logger = new DiagnosticLogger(_configHandler.cfg);\r\n _configHandler[_DYN_LOGGER /* @min:%2elogger */] = _logger;\r\n }\r\n return _logger;\r\n },\r\n s: function (newLogger) {\r\n _configHandler[_DYN_LOGGER /* @min:%2elogger */] = newLogger;\r\n if (_logger !== newLogger) {\r\n runTargetUnload(_logger, false);\r\n _logger = newLogger;\r\n }\r\n }\r\n });\r\n _self[_DYN_LOGGER /* @min:%2elogger */] = new DiagnosticLogger(_configHandler.cfg);\r\n _extensions = [];\r\n var cfgExtensions = _self.config[STR_EXTENSIONS /* @min:%2eextensions */] || [];\r\n cfgExtensions.splice(0, cfgExtensions[_DYN_LENGTH /* @min:%2elength */]);\r\n arrAppend(cfgExtensions, _extensions);\r\n _telemetryInitializerPlugin = new TelemetryInitializerPlugin();\r\n _eventQueue = [];\r\n runTargetUnload(_notificationManager, false);\r\n _notificationManager = null;\r\n _perfManager = null;\r\n _cfgPerfManager = null;\r\n runTargetUnload(_cookieManager, false);\r\n _cookieManager = null;\r\n _pluginChain = null;\r\n _configExtensions = [];\r\n _channelConfig = null;\r\n _channels = null;\r\n _isUnloading = false;\r\n _internalLogsEventName = null;\r\n _evtNamespace = createUniqueNamespace(\"AIBaseCore\", true);\r\n _unloadHandlers = createUnloadHandlerContainer();\r\n _traceCtx = null;\r\n _instrumentationKey = null;\r\n _hookContainer = createUnloadHookContainer();\r\n _cfgListeners = [];\r\n _pluginVersionString = null;\r\n _pluginVersionStringArr = null;\r\n _forceStopInternalLogPoller = false;\r\n _internalLogPoller = null;\r\n _internalLogPollerListening = false;\r\n _activeStatus = 0 /* eActiveStatus.NONE */; // default is None\r\n _endpoint = null;\r\n _initInMemoMaxSize = null;\r\n _isStatusSet = false;\r\n _initTimer = null;\r\n }\r\n function _createTelCtx() {\r\n var theCtx = createProcessTelemetryContext(_getPluginChain(), _configHandler.cfg, _self);\r\n theCtx[_DYN_ON_COMPLETE /* @min:%2eonComplete */](_startLogPoller);\r\n return theCtx;\r\n }\r\n // Initialize or Re-initialize the plugins\r\n function _initPluginChain(updateState) {\r\n // Extension validation\r\n var theExtensions = _validateExtensions(_self[_DYN_LOGGER /* @min:%2elogger */], ChannelControllerPriority, _configExtensions);\r\n _pluginChain = null;\r\n _pluginVersionString = null;\r\n _pluginVersionStringArr = null;\r\n // Get the primary channel queue and include as part of the normal extensions\r\n _channels = (_channelConfig || [])[0] || [];\r\n // Add any channels provided in the extensions and sort them\r\n _channels = sortPlugins(arrAppend(_channels, theExtensions[STR_CHANNELS /* @min:%2echannels */]));\r\n // Create an array of all extensions, including the _channels\r\n var allExtensions = arrAppend(sortPlugins(theExtensions[STR_CORE /* @min:%2ecore */]), _channels);\r\n // Required to allow plugins to call core.getPlugin() during their own initialization\r\n _extensions = objFreeze(allExtensions);\r\n // This has a side effect of adding the extensions passed during initialization\r\n // into the config.extensions, so you can see all of the extensions loaded.\r\n // This will also get updated by the addPlugin() and remove plugin code.\r\n var cfgExtensions = _self.config[STR_EXTENSIONS /* @min:%2eextensions */] || [];\r\n cfgExtensions.splice(0, cfgExtensions[_DYN_LENGTH /* @min:%2elength */]);\r\n arrAppend(cfgExtensions, _extensions);\r\n var rootCtx = _createTelCtx();\r\n // Initializing the channels first\r\n if (_channels && _channels[_DYN_LENGTH /* @min:%2elength */] > 0) {\r\n initializePlugins(rootCtx[_DYN_CREATE_NEW /* @min:%2ecreateNew */](_channels), allExtensions);\r\n }\r\n // Now initialize the normal extensions (explicitly not including the _channels as this can cause duplicate initialization)\r\n initializePlugins(rootCtx, allExtensions);\r\n if (updateState) {\r\n _doUpdate(updateState);\r\n }\r\n }\r\n function _getPlugin(pluginIdentifier) {\r\n var theExt = null;\r\n var thePlugin = null;\r\n var channelHosts = [];\r\n arrForEach(_extensions, function (ext) {\r\n if (ext[_DYN_IDENTIFIER /* @min:%2eidentifier */] === pluginIdentifier && ext !== _telemetryInitializerPlugin) {\r\n thePlugin = ext;\r\n return -1;\r\n }\r\n if (ext.getChannel) {\r\n channelHosts[_DYN_PUSH /* @min:%2epush */](ext);\r\n }\r\n });\r\n if (!thePlugin && channelHosts[_DYN_LENGTH /* @min:%2elength */] > 0) {\r\n arrForEach(channelHosts, function (host) {\r\n thePlugin = host.getChannel(pluginIdentifier);\r\n if (!thePlugin) {\r\n return -1;\r\n }\r\n });\r\n }\r\n if (thePlugin) {\r\n theExt = {\r\n plugin: thePlugin,\r\n setEnabled: function (enabled) {\r\n _getPluginState(thePlugin)[STR_DISABLED] = !enabled;\r\n },\r\n isEnabled: function () {\r\n var pluginState = _getPluginState(thePlugin);\r\n return !pluginState[_DYN_TEARDOWN /* @min:%2eteardown */] && !pluginState[STR_DISABLED];\r\n },\r\n remove: function (isAsync, removeCb) {\r\n var _a;\r\n if (isAsync === void 0) { isAsync = true; }\r\n var pluginsToRemove = [thePlugin];\r\n var unloadState = (_a = {\r\n reason: 1 /* TelemetryUnloadReason.PluginUnload */\r\n },\r\n _a[_DYN_IS_ASYNC /* @min:isAsync */] = isAsync,\r\n _a);\r\n _removePlugins(pluginsToRemove, unloadState, function (removed) {\r\n if (removed) {\r\n // Re-Initialize the plugin chain\r\n _initPluginChain({\r\n reason: 32 /* TelemetryUpdateReason.PluginRemoved */,\r\n removed: pluginsToRemove\r\n });\r\n }\r\n removeCb && removeCb(removed);\r\n });\r\n }\r\n };\r\n }\r\n return theExt;\r\n }\r\n function _getPluginChain() {\r\n if (!_pluginChain) {\r\n // copy the collection of extensions\r\n var extensions = (_extensions || []).slice();\r\n // During add / remove this may get called again, so don't read if already present\r\n if (arrIndexOf(extensions, _telemetryInitializerPlugin) === -1) {\r\n extensions[_DYN_PUSH /* @min:%2epush */](_telemetryInitializerPlugin);\r\n }\r\n _pluginChain = createTelemetryProxyChain(sortPlugins(extensions), _configHandler.cfg, _self);\r\n }\r\n return _pluginChain;\r\n }\r\n function _removePlugins(thePlugins, unloadState, removeComplete) {\r\n if (thePlugins && thePlugins[_DYN_LENGTH /* @min:%2elength */] > 0) {\r\n var unloadChain = createTelemetryProxyChain(thePlugins, _configHandler.cfg, _self);\r\n var unloadCtx = createProcessTelemetryUnloadContext(unloadChain, _self);\r\n unloadCtx[_DYN_ON_COMPLETE /* @min:%2eonComplete */](function () {\r\n var removed = false;\r\n // Remove the listed config extensions\r\n var newConfigExtensions = [];\r\n arrForEach(_configExtensions, function (plugin, idx) {\r\n if (!_isPluginPresent(plugin, thePlugins)) {\r\n newConfigExtensions[_DYN_PUSH /* @min:%2epush */](plugin);\r\n }\r\n else {\r\n removed = true;\r\n }\r\n });\r\n _configExtensions = newConfigExtensions;\r\n _pluginVersionString = null;\r\n _pluginVersionStringArr = null;\r\n // Re-Create the channel config\r\n var newChannelConfig = [];\r\n if (_channelConfig) {\r\n arrForEach(_channelConfig, function (queue, idx) {\r\n var newQueue = [];\r\n arrForEach(queue, function (channel) {\r\n if (!_isPluginPresent(channel, thePlugins)) {\r\n newQueue[_DYN_PUSH /* @min:%2epush */](channel);\r\n }\r\n else {\r\n removed = true;\r\n }\r\n });\r\n newChannelConfig[_DYN_PUSH /* @min:%2epush */](newQueue);\r\n });\r\n _channelConfig = newChannelConfig;\r\n }\r\n removeComplete && removeComplete(removed);\r\n _startLogPoller();\r\n });\r\n unloadCtx[_DYN_PROCESS_NEXT /* @min:%2eprocessNext */](unloadState);\r\n }\r\n else {\r\n removeComplete(false);\r\n }\r\n }\r\n function _flushInternalLogs() {\r\n if (_logger && _logger.queue) {\r\n var queue = _logger.queue.slice(0);\r\n _logger.queue[_DYN_LENGTH /* @min:%2elength */] = 0;\r\n arrForEach(queue, function (logMessage) {\r\n var _a;\r\n var item = (_a = {},\r\n _a[_DYN_NAME /* @min:name */] = _internalLogsEventName ? _internalLogsEventName : \"InternalMessageId: \" + logMessage[_DYN_MESSAGE_ID /* @min:%2emessageId */],\r\n _a[_DYN_I_KEY /* @min:iKey */] = _instrumentationKey,\r\n _a[_DYN_TIME /* @min:time */] = toISOString(new Date()),\r\n _a.baseType = _InternalLogMessage.dataType,\r\n _a.baseData = { message: logMessage[_DYN_MESSAGE /* @min:%2emessage */] },\r\n _a);\r\n _self.track(item);\r\n });\r\n }\r\n }\r\n function _flushChannels(isAsync, callBack, sendReason, cbTimeout) {\r\n // Setting waiting to one so that we don't call the callBack until we finish iterating\r\n var waiting = 1;\r\n var doneIterating = false;\r\n var cbTimer = null;\r\n cbTimeout = cbTimeout || 5000;\r\n function doCallback() {\r\n waiting--;\r\n if (doneIterating && waiting === 0) {\r\n cbTimer && cbTimer[_DYN_CANCEL /* @min:%2ecancel */]();\r\n cbTimer = null;\r\n callBack && callBack(doneIterating);\r\n callBack = null;\r\n }\r\n }\r\n if (_channels && _channels[_DYN_LENGTH /* @min:%2elength */] > 0) {\r\n var flushCtx = _createTelCtx()[_DYN_CREATE_NEW /* @min:%2ecreateNew */](_channels);\r\n flushCtx.iterate(function (plugin) {\r\n if (plugin.flush) {\r\n waiting++;\r\n var handled_1 = false;\r\n // Not all channels will call this callback for every scenario\r\n if (!plugin.flush(isAsync, function () {\r\n handled_1 = true;\r\n doCallback();\r\n }, sendReason)) {\r\n if (!handled_1) {\r\n // If any channel doesn't return true and it didn't call the callback, then we should assume that the callback\r\n // will never be called, so use a timeout to allow the channel(s) some time to \"finish\" before triggering any\r\n // followup function (such as unloading)\r\n if (isAsync && cbTimer == null) {\r\n cbTimer = scheduleTimeout(function () {\r\n cbTimer = null;\r\n doCallback();\r\n }, cbTimeout);\r\n }\r\n else {\r\n doCallback();\r\n }\r\n }\r\n }\r\n }\r\n });\r\n }\r\n doneIterating = true;\r\n doCallback();\r\n return true;\r\n }\r\n function _initPerfManager() {\r\n // Save the previous config based performance manager creator to avoid creating new perf manager instances if unchanged\r\n var prevCfgPerfMgr;\r\n // Will get recalled if any referenced config values are changed\r\n _addUnloadHook(_configHandler[_DYN_WATCH /* @min:%2ewatch */](function (details) {\r\n var enablePerfMgr = details.cfg.enablePerfMgr;\r\n if (enablePerfMgr) {\r\n var createPerfMgr = details.cfg[STR_CREATE_PERF_MGR /* @min:%2ecreatePerfMgr */];\r\n // for preCfgPerfMgr = createPerfMgr = null\r\n // initial createPerfMgr function should be _createPerfManager\r\n if ((prevCfgPerfMgr !== createPerfMgr) || !prevCfgPerfMgr) {\r\n if (!createPerfMgr) {\r\n createPerfMgr = _createPerfManager;\r\n }\r\n // Set the performance manager creation function if not defined\r\n getSetValue(details.cfg, STR_CREATE_PERF_MGR, createPerfMgr);\r\n prevCfgPerfMgr = createPerfMgr;\r\n // Remove any existing config based performance manager\r\n _cfgPerfManager = null;\r\n }\r\n // Only create the performance manager if it's not already created or manually set\r\n if (!_perfManager && !_cfgPerfManager && isFunction(createPerfMgr)) {\r\n // Create a new config based performance manager\r\n _cfgPerfManager = createPerfMgr(_self, _self[_DYN_GET_NOTIFY_MGR /* @min:%2egetNotifyMgr */]());\r\n }\r\n }\r\n else {\r\n // Remove any existing config based performance manager\r\n _cfgPerfManager = null;\r\n // Clear the previous cached value so it can be GC'd\r\n prevCfgPerfMgr = null;\r\n }\r\n }));\r\n }\r\n function _doUpdate(updateState) {\r\n var updateCtx = createProcessTelemetryUpdateContext(_getPluginChain(), _self);\r\n updateCtx[_DYN_ON_COMPLETE /* @min:%2eonComplete */](_startLogPoller);\r\n if (!_self._updateHook || _self._updateHook(updateCtx, updateState) !== true) {\r\n updateCtx[_DYN_PROCESS_NEXT /* @min:%2eprocessNext */](updateState);\r\n }\r\n }\r\n function _logOrThrowError(message) {\r\n var logger = _self[_DYN_LOGGER /* @min:%2elogger */];\r\n if (logger) {\r\n // there should always be a logger\r\n _throwInternal(logger, 2 /* eLoggingSeverity.WARNING */, 73 /* _eInternalMessageId.PluginException */, message);\r\n _startLogPoller();\r\n }\r\n else {\r\n throwError(message);\r\n }\r\n }\r\n function _notifyInvalidEvent(telemetryItem) {\r\n var manager = _self[_DYN_GET_NOTIFY_MGR /* @min:%2egetNotifyMgr */]();\r\n if (manager) {\r\n manager[STR_EVENTS_DISCARDED /* @min:%2eeventsDiscarded */]([telemetryItem], 2 /* eEventsDiscardedReason.InvalidEvent */);\r\n }\r\n }\r\n function _addUnloadHook(hooks) {\r\n _hookContainer.add(hooks);\r\n }\r\n });\r\n }\r\n AppInsightsCore.prototype.initialize = function (config, extensions, logger, notificationManager) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n AppInsightsCore.prototype.getChannels = function () {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n return null;\r\n };\r\n AppInsightsCore.prototype.track = function (telemetryItem) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n AppInsightsCore.prototype.getProcessTelContext = function () {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n return null;\r\n };\r\n AppInsightsCore.prototype.getNotifyMgr = function () {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n return null;\r\n };\r\n /**\r\n * Adds a notification listener. The SDK calls methods on the listener when an appropriate notification is raised.\r\n * The added plugins must raise notifications. If the plugins do not implement the notifications, then no methods will be\r\n * called.\r\n * @param listener - An INotificationListener object.\r\n */\r\n AppInsightsCore.prototype.addNotificationListener = function (listener) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n /**\r\n * Removes all instances of the listener.\r\n * @param listener - INotificationListener to remove.\r\n */\r\n AppInsightsCore.prototype.removeNotificationListener = function (listener) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n /**\r\n * Get the current cookie manager for this instance\r\n */\r\n AppInsightsCore.prototype.getCookieMgr = function () {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n return null;\r\n };\r\n /**\r\n * Set the current cookie manager for this instance\r\n * @param cookieMgr - The manager, if set to null/undefined will cause the default to be created\r\n */\r\n AppInsightsCore.prototype.setCookieMgr = function (cookieMgr) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n AppInsightsCore.prototype.getPerfMgr = function () {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n return null;\r\n };\r\n AppInsightsCore.prototype.setPerfMgr = function (perfMgr) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n AppInsightsCore.prototype.eventCnt = function () {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n return 0;\r\n };\r\n /**\r\n * Enable the timer that checks the logger.queue for log messages to be flushed.\r\n * Note: Since 3.0.1 and 2.8.13 this is no longer an interval timer but is a normal\r\n * timer that is only started when this function is called and then subsequently\r\n * only _if_ there are any logger.queue messages to be sent.\r\n */\r\n AppInsightsCore.prototype.pollInternalLogs = function (eventName) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n return null;\r\n };\r\n /**\r\n * Stop the timer that log messages from logger.queue when available\r\n */\r\n AppInsightsCore.prototype.stopPollingInternalLogs = function () {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n /**\r\n * Add a telemetry processor to decorate or drop telemetry events.\r\n * @param telemetryInitializer - The Telemetry Initializer function\r\n * @returns - A ITelemetryInitializerHandler to enable the initializer to be removed\r\n */\r\n AppInsightsCore.prototype.addTelemetryInitializer = function (telemetryInitializer) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n return null;\r\n };\r\n /**\r\n * Unload and Tear down the SDK and any initialized plugins, after calling this the SDK will be considered\r\n * to be un-initialized and non-operational, re-initializing the SDK should only be attempted if the previous\r\n * unload call return `true` stating that all plugins reported that they also unloaded, the recommended\r\n * approach is to create a new instance and initialize that instance.\r\n * This is due to possible unexpected side effects caused by plugins not supporting unload / teardown, unable\r\n * to successfully remove any global references or they may just be completing the unload process asynchronously.\r\n * If you pass isAsync as `true` (also the default) and DO NOT pass a callback function then an [IPromise](https://nevware21.github.io/ts-async/typedoc/interfaces/IPromise.html)\r\n * will be returned which will resolve once the unload is complete. The actual implementation of the `IPromise`\r\n * will be a native Promise (if supported) or the default as supplied by [ts-async library](https://github.com/nevware21/ts-async)\r\n * @param isAsync - Can the unload be performed asynchronously (default)\r\n * @param unloadComplete - An optional callback that will be called once the unload has completed\r\n * @param cbTimeout - An optional timeout to wait for any flush operations to complete before proceeding with the\r\n * unload. Defaults to 5 seconds.\r\n * @returns Nothing or if occurring asynchronously a [IPromise](https://nevware21.github.io/ts-async/typedoc/interfaces/IPromise.html)\r\n * which will be resolved once the unload is complete, the [IPromise](https://nevware21.github.io/ts-async/typedoc/interfaces/IPromise.html)\r\n * will only be returned when no callback is provided and isAsync is true\r\n */\r\n AppInsightsCore.prototype.unload = function (isAsync, unloadComplete, cbTimeout) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n AppInsightsCore.prototype.getPlugin = function (pluginIdentifier) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n return null;\r\n };\r\n /**\r\n * Add a new plugin to the installation\r\n * @param plugin - The new plugin to add\r\n * @param replaceExisting - should any existing plugin be replaced, default is false\r\n * @param doAsync - Should the add be performed asynchronously\r\n * @param addCb - [Optional] callback to call after the plugin has been added\r\n */\r\n AppInsightsCore.prototype.addPlugin = function (plugin, replaceExisting, doAsync, addCb) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n /**\r\n * Update the configuration used and broadcast the changes to all loaded plugins\r\n * @param newConfig - The new configuration is apply\r\n * @param mergeExisting - Should the new configuration merge with the existing or just replace it. Default is to true.\r\n */\r\n AppInsightsCore.prototype.updateCfg = function (newConfig, mergeExisting) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n /**\r\n * Returns the unique event namespace that should be used\r\n */\r\n AppInsightsCore.prototype.evtNamespace = function () {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n return null;\r\n };\r\n /**\r\n * Add an unload handler that will be called when the SDK is being unloaded\r\n * @param handler - the handler\r\n */\r\n AppInsightsCore.prototype.addUnloadCb = function (handler) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n /**\r\n * Flush and send any batched / cached data immediately\r\n * @param async - send data asynchronously when true (defaults to true)\r\n * @param callBack - if specified, notify caller when send is complete, the channel should return true to indicate to the caller that it will be called.\r\n * If the caller doesn't return true the caller should assume that it may never be called.\r\n * @param sendReason - specify the reason that you are calling \"flush\" defaults to ManualFlush (1) if not specified\r\n * @returns - true if the callback will be return after the flush is complete otherwise the caller should assume that any provided callback will never be called\r\n */\r\n AppInsightsCore.prototype.flush = function (isAsync, callBack, sendReason) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n /**\r\n * Gets the current distributed trace context for this instance if available\r\n * @param createNew - Optional flag to create a new instance if one doesn't currently exist, defaults to true\r\n */\r\n AppInsightsCore.prototype.getTraceCtx = function (createNew) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n return null;\r\n };\r\n /**\r\n * Sets the current distributed trace context for this instance if available\r\n */\r\n AppInsightsCore.prototype.setTraceCtx = function (newTracectx) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n /**\r\n * Add this hook so that it is automatically removed during unloading\r\n * @param hooks - The single hook or an array of IInstrumentHook objects\r\n */\r\n AppInsightsCore.prototype.addUnloadHook = function (hooks) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n /**\r\n * Watches and tracks changes for accesses to the current config, and if the accessed config changes the\r\n * handler will be recalled.\r\n * @param handler - The watcher handler to call when the config changes\r\n * @returns A watcher handler instance that can be used to remove itself when being unloaded\r\n */\r\n AppInsightsCore.prototype.onCfgChange = function (handler) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n return null;\r\n };\r\n /**\r\n * Watches and tracks status of initialization process\r\n * @returns ActiveStatus\r\n * @since 3.3.0\r\n * If returned status is active, it means initialization process is completed.\r\n * If returned status is pending, it means the initialization process is waiting for promieses to be resolved.\r\n * If returned status is inactive, it means ikey is invalid or can 't get ikey or enpoint url from promsises.\r\n */\r\n AppInsightsCore.prototype.activeStatus = function () {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n return null;\r\n };\r\n /**\r\n * Set Active Status to pending, which will block the incoming changes until internal promises are resolved\r\n * @internal Internal use\r\n * @since 3.3.0\r\n */\r\n AppInsightsCore.prototype._setPendingStatus = function () {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n return null;\r\n };\r\n AppInsightsCore.prototype.releaseQueue = function () {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n /**\r\n * Hook for Core extensions to allow them to update their own configuration before updating all of the plugins.\r\n * @param updateCtx - The plugin update context\r\n * @param updateState - The Update State\r\n * @returns boolean - True means the extension class will call updateState otherwise the Core will\r\n */\r\n AppInsightsCore.prototype._updateHook = function (updateCtx, updateState) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n return false;\r\n };\r\n return AppInsightsCore;\r\n}());\r\nexport { AppInsightsCore };\r\n//# sourceMappingURL=AppInsightsCore.js.map","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\n// ###################################################################################################################################################\r\n// Note: DON'T Export these const from the package as we are still targeting IE/ES5 this will export a mutable variables that someone could change ###\r\n// ###################################################################################################################################################\r\n// Generally you should only put values that are used more than 2 times and then only if not already exposed as a constant (such as SdkCoreNames)\r\n// as when using \"short\" named values from here they will be will be minified smaller than the SdkCoreNames[eSdkCoreNames.xxxx] value.\r\nexport var STR_DURATION = \"duration\";\r\nexport var STR_PROPERTIES = \"properties\";\r\n//# sourceMappingURL=InternalConstants.js.map","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\n// @skip-file-minify\r\n// ##############################################################\r\n// AUTO GENERATED FILE: This file is Auto Generated during build.\r\n// ##############################################################\r\n// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\r\n// Note: DON'T Export these const from the package as we are still targeting ES3 this will export a mutable variables that someone could change!!!\r\n// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\r\nexport var _DYN_REQUEST_URL = \"requestUrl\"; // Count: 11\r\nexport var _DYN_INST = \"inst\"; // Count: 5\r\nexport var _DYN_LENGTH = \"length\"; // Count: 8\r\nexport var _DYN_TRACE_ID = \"traceID\"; // Count: 9\r\nexport var _DYN_SPAN_ID = \"spanID\"; // Count: 8\r\nexport var _DYN_TRACE_FLAGS = \"traceFlags\"; // Count: 13\r\nexport var _DYN_CONTEXT = \"context\"; // Count: 7\r\nexport var _DYN_ABORTED = \"aborted\"; // Count: 7\r\nexport var _DYN_TRACE_ID0 = \"traceId\"; // Count: 5\r\nexport var _DYN_SPAN_ID1 = \"spanId\"; // Count: 5\r\nexport var _DYN__ADD_HOOK = \"_addHook\"; // Count: 4\r\nexport var _DYN_CORE = \"core\"; // Count: 8\r\nexport var _DYN_INCLUDE_CORRELATION_2 = \"includeCorrelationHeaders\"; // Count: 4\r\nexport var _DYN_GET_ABSOLUTE_URL = \"getAbsoluteUrl\"; // Count: 3\r\nexport var _DYN_HEADERS = \"headers\"; // Count: 6\r\nexport var _DYN_REQUEST_HEADERS = \"requestHeaders\"; // Count: 13\r\nexport var _DYN_SET_REQUEST_HEADER = \"setRequestHeader\"; // Count: 3\r\nexport var _DYN_TRACK_DEPENDENCY_DAT3 = \"trackDependencyDataInternal\"; // Count: 2\r\nexport var _DYN_START_TIME = \"startTime\"; // Count: 6\r\nexport var _DYN_TO_LOWER_CASE = \"toLowerCase\"; // Count: 6\r\nexport var _DYN_ENABLE_REQUEST_HEADE4 = \"enableRequestHeaderTracking\"; // Count: 3\r\nexport var _DYN_ENABLE_AJAX_ERROR_ST5 = \"enableAjaxErrorStatusText\"; // Count: 2\r\nexport var _DYN_ENABLE_AJAX_PERF_TRA6 = \"enableAjaxPerfTracking\"; // Count: 2\r\nexport var _DYN_MAX_AJAX_CALLS_PER_V7 = \"maxAjaxCallsPerView\"; // Count: 2\r\nexport var _DYN_EXCLUDE_REQUEST_FROM8 = \"excludeRequestFromAutoTrackingPatterns\"; // Count: 2\r\nexport var _DYN_ADD_REQUEST_CONTEXT = \"addRequestContext\"; // Count: 2\r\nexport var _DYN_DISABLE_AJAX_TRACKIN9 = \"disableAjaxTracking\"; // Count: 3\r\nexport var _DYN_AJAX_PERF_LOOKUP_DEL10 = \"ajaxPerfLookupDelay\"; // Count: 2\r\nexport var _DYN_DISABLE_FETCH_TRACKI11 = \"disableFetchTracking\"; // Count: 2\r\nexport var _DYN_ENABLE_RESPONSE_HEAD12 = \"enableResponseHeaderTracking\"; // Count: 2\r\nexport var _DYN_STATUS = \"status\"; // Count: 11\r\nexport var _DYN_STATUS_TEXT = \"statusText\"; // Count: 9\r\nexport var _DYN_HEADER_MAP = \"headerMap\"; // Count: 8\r\nexport var _DYN_OPEN_DONE = \"openDone\"; // Count: 3\r\nexport var _DYN_SEND_DONE = \"sendDone\"; // Count: 3\r\nexport var _DYN_REQUEST_SENT_TIME = \"requestSentTime\"; // Count: 9\r\nexport var _DYN_ABORT_DONE = \"abortDone\"; // Count: 3\r\nexport var _DYN_GET_TRACE_ID = \"getTraceId\"; // Count: 3\r\nexport var _DYN_GET_TRACE_FLAGS = \"getTraceFlags\"; // Count: 3\r\nexport var _DYN_METHOD = \"method\"; // Count: 8\r\nexport var _DYN_ERROR_STATUS_TEXT = \"errorStatusText\"; // Count: 3\r\nexport var _DYN_STATE_CHANGE_ATTACHE13 = \"stateChangeAttached\"; // Count: 2\r\nexport var _DYN_RESPONSE_TEXT = \"responseText\"; // Count: 6\r\nexport var _DYN_RESPONSE_FINISHED_TI14 = \"responseFinishedTime\"; // Count: 7\r\nexport var _DYN__CREATE_TRACK_ITEM = \"CreateTrackItem\"; // Count: 3\r\nexport var _DYN_RESPONSE = \"response\"; // Count: 4\r\nexport var _DYN_GET_ALL_RESPONSE_HEA15 = \"getAllResponseHeaders\"; // Count: 2\r\nexport var _DYN_GET_PART_APROPS = \"getPartAProps\"; // Count: 3\r\nexport var _DYN_PERF_MARK = \"perfMark\"; // Count: 4\r\nexport var _DYN_NAME = \"name\"; // Count: 6\r\nexport var _DYN_PERF_TIMING = \"perfTiming\"; // Count: 3\r\nexport var _DYN_EXCEPTION = \"exception\"; // Count: 5\r\nexport var _DYN_AJAX_DIAGNOSTICS_MES16 = \"ajaxDiagnosticsMessage\"; // Count: 3\r\nexport var _DYN_CORRELATION_CONTEXT = \"correlationContext\"; // Count: 3\r\nexport var _DYN_AJAX_TOTAL_DURATION = \"ajaxTotalDuration\"; // Count: 3\r\nexport var _DYN_EVENT_TRACE_CTX = \"eventTraceCtx\"; // Count: 3\r\n//# sourceMappingURL=__DynamicConstants.js.map","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\nimport dynamicProto from \"@microsoft/dynamicproto-js\";\r\nimport { Extensions, dataSanitizeUrl, dateTimeUtilsDuration, msToTimeSpan, urlGetAbsoluteUrl, urlGetCompleteUrl } from \"@microsoft/applicationinsights-common\";\r\nimport { arrForEach, isNullOrUndefined, isNumber, isString, normalizeJsName, objForEachKey, objKeys } from \"@microsoft/applicationinsights-core-js\";\r\nimport { STR_DURATION, STR_PROPERTIES } from \"./InternalConstants\";\r\nimport { _DYN_ABORTED, _DYN_ABORT_DONE, _DYN_AJAX_TOTAL_DURATION, _DYN_CORRELATION_CONTEXT, _DYN_ERROR_STATUS_TEXT, _DYN_EVENT_TRACE_CTX, _DYN_GET_ABSOLUTE_URL, _DYN_GET_PART_APROPS, _DYN_GET_TRACE_FLAGS, _DYN_GET_TRACE_ID, _DYN_HEADER_MAP, _DYN_LENGTH, _DYN_METHOD, _DYN_NAME, _DYN_OPEN_DONE, _DYN_PERF_MARK, _DYN_PERF_TIMING, _DYN_REQUEST_HEADERS, _DYN_REQUEST_SENT_TIME, _DYN_REQUEST_URL, _DYN_RESPONSE, _DYN_RESPONSE_FINISHED_TI14, _DYN_SEND_DONE, _DYN_SPAN_ID, _DYN_SPAN_ID1, _DYN_START_TIME, _DYN_STATE_CHANGE_ATTACHE13, _DYN_STATUS, _DYN_STATUS_TEXT, _DYN_TRACE_FLAGS, _DYN_TRACE_ID, _DYN_TRACE_ID0, _DYN__CREATE_TRACK_ITEM } from \"./__DynamicConstants\";\r\n/** @ignore */\r\nfunction _calcPerfDuration(resourceEntry, start, end) {\r\n var result = 0;\r\n var from = resourceEntry[start];\r\n var to = resourceEntry[end];\r\n if (from && to) {\r\n result = dateTimeUtilsDuration(from, to);\r\n }\r\n return result;\r\n}\r\n/** @ignore */\r\nfunction _setPerfDuration(props, name, resourceEntry, start, end) {\r\n var result = 0;\r\n var value = _calcPerfDuration(resourceEntry, start, end);\r\n if (value) {\r\n result = _setPerfValue(props, name, msToTimeSpan(value));\r\n }\r\n return result;\r\n}\r\n/** @ignore */\r\nfunction _setPerfValue(props, name, value) {\r\n var strPerf = \"ajaxPerf\";\r\n var result = 0;\r\n if (props && name && value) {\r\n var perfData = props[strPerf] = (props[strPerf] || {});\r\n perfData[name] = value;\r\n result = 1;\r\n }\r\n return result;\r\n}\r\n/** @ignore */\r\nfunction _populatePerfData(ajaxData, dependency) {\r\n /*\r\n * https://developer.mozilla.org/en-US/docs/Web/API/Resource_Timing_API/Using_the_Resource_Timing_API\r\n * | -startTime\r\n * | -redirectStart\r\n * | | -redirectEnd\r\n * | | | -fetchStart\r\n * | | | | -domainLookupStart\r\n * | | | | |- domainLookupEnd\r\n * | | | | | | -connectStart\r\n * | | | | | | | -secureConnectionStart\r\n * | | | | | | | | -connectEnd\r\n * | | | | | | | | | -requestStart\r\n * | | | | | | | | | | | -responseStart\r\n * | | | | | | | | | | | | | -responseEnd\r\n * +------------+-+---+----------------+-+--+--------+-+-----------+-+------------+-+\r\n * |--redirect--| |---|--domainLookup--| |--connect--| |--request--| |--response--| |\r\n * |-------------------networkConnect----------------|\r\n * | |---------sentRequest--------|\r\n * |------------------------------------perfTotal-----------------------------------|\r\n */\r\n var resourceEntry = ajaxData[_DYN_PERF_TIMING /* @min:%2eperfTiming */];\r\n var props = dependency[STR_PROPERTIES /* @min:%2eproperties */] || {};\r\n var propsSet = 0;\r\n var strName = \"name\";\r\n var strStart = \"Start\";\r\n var strEnd = \"End\";\r\n var strDomainLookup = \"domainLookup\";\r\n var strConnect = \"connect\";\r\n var strRedirect = \"redirect\";\r\n var strRequest = \"request\";\r\n var strResponse = \"response\";\r\n var strStartTime = \"startTime\";\r\n var strDomainLookupStart = strDomainLookup + strStart;\r\n var strDomainLookupEnd = strDomainLookup + strEnd;\r\n var strConnectStart = strConnect + strStart;\r\n var strConnectEnd = strConnect + strEnd;\r\n var strRequestStart = strRequest + strStart;\r\n var strRequestEnd = strRequest + strEnd;\r\n var strResponseStart = strResponse + strStart;\r\n var strResponseEnd = strResponse + strEnd;\r\n var strRedirectStart = strRedirect + strStart;\r\n var strRedirectEnd = strRedirect = strEnd;\r\n var strTransferSize = \"transferSize\";\r\n var strEncodedBodySize = \"encodedBodySize\";\r\n var strDecodedBodySize = \"decodedBodySize\";\r\n var strServerTiming = \"serverTiming\";\r\n if (resourceEntry) {\r\n // redirect\r\n propsSet |= _setPerfDuration(props, strRedirect, resourceEntry, strRedirectStart, strRedirectEnd);\r\n // domainLookup\r\n propsSet |= _setPerfDuration(props, strDomainLookup, resourceEntry, strDomainLookupStart, strDomainLookupEnd);\r\n // connect\r\n propsSet |= _setPerfDuration(props, strConnect, resourceEntry, strConnectStart, strConnectEnd);\r\n // request\r\n propsSet |= _setPerfDuration(props, strRequest, resourceEntry, strRequestStart, strRequestEnd);\r\n // response\r\n propsSet |= _setPerfDuration(props, strResponse, resourceEntry, strResponseStart, strResponseEnd);\r\n // Network connection time\r\n propsSet |= _setPerfDuration(props, \"networkConnect\", resourceEntry, strStartTime, strConnectEnd);\r\n // Sent Request\r\n propsSet |= _setPerfDuration(props, \"sentRequest\", resourceEntry, strRequestStart, strResponseEnd);\r\n // PerfTotal / Duration\r\n var duration = resourceEntry[STR_DURATION /* @min:%2eduration */];\r\n if (!duration) {\r\n duration = _calcPerfDuration(resourceEntry, strStartTime, strResponseEnd) || 0;\r\n }\r\n propsSet |= _setPerfValue(props, STR_DURATION, duration);\r\n propsSet |= _setPerfValue(props, \"perfTotal\", duration);\r\n var serverTiming = resourceEntry[strServerTiming];\r\n if (serverTiming) {\r\n var server_1 = {};\r\n arrForEach(serverTiming, function (value, idx) {\r\n var name = normalizeJsName(value[strName] || \"\" + idx);\r\n var newValue = server_1[name] || {};\r\n objForEachKey(value, function (key, val) {\r\n if (key !== strName && isString(val) || isNumber(val)) {\r\n if (newValue[key]) {\r\n val = newValue[key] + \";\" + val;\r\n }\r\n if (val || !isString(val)) {\r\n // Only set the value if it has a value and it's not an empty string\r\n newValue[key] = val;\r\n }\r\n }\r\n });\r\n server_1[name] = newValue;\r\n });\r\n propsSet |= _setPerfValue(props, strServerTiming, server_1);\r\n }\r\n propsSet |= _setPerfValue(props, strTransferSize, resourceEntry[strTransferSize]);\r\n propsSet |= _setPerfValue(props, strEncodedBodySize, resourceEntry[strEncodedBodySize]);\r\n propsSet |= _setPerfValue(props, strDecodedBodySize, resourceEntry[strDecodedBodySize]);\r\n }\r\n else {\r\n if (ajaxData[_DYN_PERF_MARK /* @min:%2eperfMark */]) {\r\n propsSet |= _setPerfValue(props, \"missing\", ajaxData.perfAttempts);\r\n }\r\n }\r\n if (propsSet) {\r\n dependency[STR_PROPERTIES /* @min:%2eproperties */] = props;\r\n }\r\n}\r\nvar XHRMonitoringState = /** @class */ (function () {\r\n function XHRMonitoringState() {\r\n var self = this;\r\n self[_DYN_OPEN_DONE /* @min:%2eopenDone */] = false;\r\n self.setRequestHeaderDone = false;\r\n self[_DYN_SEND_DONE /* @min:%2esendDone */] = false;\r\n self[_DYN_ABORT_DONE /* @min:%2eabortDone */] = false;\r\n // True, if onreadyStateChangeCallback function attached to xhr, otherwise false\r\n self[_DYN_STATE_CHANGE_ATTACHE13 /* @min:%2estateChangeAttached */] = false;\r\n }\r\n return XHRMonitoringState;\r\n}());\r\nexport { XHRMonitoringState };\r\nvar ajaxRecord = /** @class */ (function () {\r\n function ajaxRecord(traceId, spanId, logger, traceCtx) {\r\n var _a;\r\n var self = this;\r\n var _logger = logger;\r\n var strResponseText = \"responseText\";\r\n // Assigning the initial/default values within the constructor to avoid typescript from creating a bunch of\r\n // this.XXXX = null\r\n self[_DYN_PERF_MARK /* @min:%2eperfMark */] = null;\r\n self.completed = false;\r\n self.requestHeadersSize = null;\r\n self[_DYN_REQUEST_HEADERS /* @min:%2erequestHeaders */] = null;\r\n self.responseReceivingDuration = null;\r\n self.callbackDuration = null;\r\n self[_DYN_AJAX_TOTAL_DURATION /* @min:%2eajaxTotalDuration */] = null;\r\n self[_DYN_ABORTED /* @min:%2eaborted */] = 0;\r\n self.pageUrl = null;\r\n self[_DYN_REQUEST_URL /* @min:%2erequestUrl */] = null;\r\n self.requestSize = 0;\r\n self[_DYN_METHOD /* @min:%2emethod */] = null;\r\n self[_DYN_STATUS /* @min:%2estatus */] = null;\r\n self[_DYN_REQUEST_SENT_TIME /* @min:%2erequestSentTime */] = null;\r\n self.responseStartedTime = null;\r\n self[_DYN_RESPONSE_FINISHED_TI14 /* @min:%2eresponseFinishedTime */] = null;\r\n self.callbackFinishedTime = null;\r\n self.endTime = null;\r\n self.xhrMonitoringState = new XHRMonitoringState();\r\n self.clientFailure = 0;\r\n self[_DYN_TRACE_ID /* @min:%2etraceID */] = traceId;\r\n self[_DYN_SPAN_ID /* @min:%2espanID */] = spanId;\r\n self[_DYN_TRACE_FLAGS /* @min:%2etraceFlags */] = traceCtx === null || traceCtx === void 0 ? void 0 : traceCtx.getTraceFlags();\r\n if (traceCtx) {\r\n self[_DYN_EVENT_TRACE_CTX /* @min:%2eeventTraceCtx */] = (_a = {},\r\n _a[_DYN_TRACE_ID0 /* @min:traceId */] = traceCtx[_DYN_GET_TRACE_ID /* @min:%2egetTraceId */](),\r\n _a[_DYN_SPAN_ID1 /* @min:spanId */] = traceCtx.getSpanId(),\r\n _a[_DYN_TRACE_FLAGS /* @min:traceFlags */] = traceCtx[_DYN_GET_TRACE_FLAGS /* @min:%2egetTraceFlags */](),\r\n _a);\r\n }\r\n else {\r\n self[_DYN_EVENT_TRACE_CTX /* @min:%2eeventTraceCtx */] = null;\r\n }\r\n dynamicProto(ajaxRecord, self, function (self) {\r\n self.getAbsoluteUrl = function () {\r\n return self[_DYN_REQUEST_URL /* @min:%2erequestUrl */] ? urlGetAbsoluteUrl(self[_DYN_REQUEST_URL /* @min:%2erequestUrl */]) : null;\r\n };\r\n self.getPathName = function () {\r\n return self[_DYN_REQUEST_URL /* @min:%2erequestUrl */] ? dataSanitizeUrl(_logger, urlGetCompleteUrl(self[_DYN_METHOD /* @min:%2emethod */], self[_DYN_REQUEST_URL /* @min:%2erequestUrl */])) : null;\r\n };\r\n self[_DYN__CREATE_TRACK_ITEM /* @min:%2eCreateTrackItem */] = function (ajaxType, enableRequestHeaderTracking, getResponse) {\r\n var _a;\r\n // round to 3 decimal points\r\n self.ajaxTotalDuration = Math.round(dateTimeUtilsDuration(self.requestSentTime, self.responseFinishedTime) * 1000) / 1000;\r\n if (self[_DYN_AJAX_TOTAL_DURATION /* @min:%2eajaxTotalDuration */] < 0) {\r\n return null;\r\n }\r\n var dependency = (_a = {\r\n id: \"|\" + self[_DYN_TRACE_ID /* @min:%2etraceID */] + \".\" + self[_DYN_SPAN_ID /* @min:%2espanID */],\r\n target: self[_DYN_GET_ABSOLUTE_URL /* @min:%2egetAbsoluteUrl */]()\r\n },\r\n _a[_DYN_NAME /* @min:name */] = self.getPathName(),\r\n _a.type = ajaxType,\r\n _a[_DYN_START_TIME /* @min:startTime */] = null,\r\n _a.duration = self[_DYN_AJAX_TOTAL_DURATION /* @min:%2eajaxTotalDuration */],\r\n _a.success = (+(self[_DYN_STATUS /* @min:%2estatus */])) >= 200 && (+(self[_DYN_STATUS /* @min:%2estatus */])) < 400,\r\n _a.responseCode = (+(self[_DYN_STATUS /* @min:%2estatus */])),\r\n _a[STR_PROPERTIES] = { HttpMethod: self[_DYN_METHOD /* @min:%2emethod */] },\r\n _a);\r\n var props = dependency[STR_PROPERTIES];\r\n if (self[_DYN_ABORTED /* @min:%2eaborted */]) {\r\n props[_DYN_ABORTED /* @min:%2eaborted */] = true;\r\n }\r\n if (self[_DYN_REQUEST_SENT_TIME /* @min:%2erequestSentTime */]) {\r\n // Set the correct dependency start time\r\n dependency[_DYN_START_TIME /* @min:%2estartTime */] = new Date();\r\n dependency[_DYN_START_TIME /* @min:%2estartTime */].setTime(self[_DYN_REQUEST_SENT_TIME /* @min:%2erequestSentTime */]);\r\n }\r\n // Add Ajax perf details if available\r\n _populatePerfData(self, dependency);\r\n if (enableRequestHeaderTracking) {\r\n if (objKeys(self.requestHeaders)[_DYN_LENGTH /* @min:%2elength */] > 0) {\r\n props[_DYN_REQUEST_HEADERS /* @min:%2erequestHeaders */] = self[_DYN_REQUEST_HEADERS /* @min:%2erequestHeaders */];\r\n }\r\n }\r\n if (getResponse) {\r\n var response = getResponse();\r\n if (response) {\r\n // enrich dependency target with correlation context from the server\r\n var correlationContext = response[_DYN_CORRELATION_CONTEXT /* @min:%2ecorrelationContext */];\r\n if (correlationContext) {\r\n dependency.correlationContext = /* dependency.target + \" | \" + */ correlationContext;\r\n }\r\n if (response[_DYN_HEADER_MAP /* @min:%2eheaderMap */]) {\r\n if (objKeys(response.headerMap)[_DYN_LENGTH /* @min:%2elength */] > 0) {\r\n props.responseHeaders = response[_DYN_HEADER_MAP /* @min:%2eheaderMap */];\r\n }\r\n }\r\n if (self[_DYN_ERROR_STATUS_TEXT /* @min:%2eerrorStatusText */]) {\r\n if (self[_DYN_STATUS /* @min:%2estatus */] >= 400) {\r\n var responseType = response.type;\r\n if (responseType === \"\" || responseType === \"text\") {\r\n props.responseText = response.responseText ? response[_DYN_STATUS_TEXT /* @min:%2estatusText */] + \" - \" + response[strResponseText] : response[_DYN_STATUS_TEXT /* @min:%2estatusText */];\r\n }\r\n if (responseType === \"json\") {\r\n props.responseText = response.response ? response[_DYN_STATUS_TEXT /* @min:%2estatusText */] + \" - \" + JSON.stringify(response[_DYN_RESPONSE /* @min:%2eresponse */]) : response[_DYN_STATUS_TEXT /* @min:%2estatusText */];\r\n }\r\n }\r\n else if (self[_DYN_STATUS /* @min:%2estatus */] === 0) {\r\n props.responseText = response[_DYN_STATUS_TEXT /* @min:%2estatusText */] || \"\";\r\n }\r\n }\r\n }\r\n }\r\n return dependency;\r\n };\r\n self[_DYN_GET_PART_APROPS /* @min:%2egetPartAProps */] = function () {\r\n var _a;\r\n var partA = null;\r\n var traceCtx = self[_DYN_EVENT_TRACE_CTX /* @min:%2eeventTraceCtx */];\r\n if (traceCtx && (traceCtx[_DYN_TRACE_ID0 /* @min:%2etraceId */] || traceCtx[_DYN_SPAN_ID1 /* @min:%2espanId */])) {\r\n partA = {};\r\n var traceExt = partA[Extensions.TraceExt] = (_a = {},\r\n _a[_DYN_TRACE_ID /* @min:traceID */] = traceCtx[_DYN_TRACE_ID0 /* @min:%2etraceId */],\r\n _a.parentID = traceCtx[_DYN_SPAN_ID1 /* @min:%2espanId */],\r\n _a);\r\n if (!isNullOrUndefined(traceCtx[_DYN_TRACE_FLAGS /* @min:%2etraceFlags */])) {\r\n traceExt[_DYN_TRACE_FLAGS /* @min:%2etraceFlags */] = traceCtx[_DYN_TRACE_FLAGS /* @min:%2etraceFlags */];\r\n }\r\n }\r\n return partA;\r\n };\r\n });\r\n }\r\n ajaxRecord.prototype.getAbsoluteUrl = function () {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n return null;\r\n };\r\n ajaxRecord.prototype.getPathName = function () {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n return null;\r\n };\r\n ajaxRecord.prototype.CreateTrackItem = function (ajaxType, enableRequestHeaderTracking, getResponse) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n return null;\r\n };\r\n ajaxRecord.prototype.getPartAProps = function () {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n return null;\r\n };\r\n return ajaxRecord;\r\n}());\r\nexport { ajaxRecord };\r\n//# sourceMappingURL=ajaxRecord.js.map","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\nvar _a;\r\nimport { __assign, __extends } from \"tslib\";\r\nimport dynamicProto from \"@microsoft/dynamicproto-js\";\r\nimport { DisabledPropertyName, PropertiesPluginIdentifier, RemoteDependencyData, RequestHeaders, correlationIdCanIncludeCorrelationHeader, correlationIdGetCorrelationContext, createDistributedTraceContextFromTrace, createTelemetryItem, createTraceParent, dateTimeUtilsNow, formatTraceParent, isInternalApplicationInsightsEndpoint } from \"@microsoft/applicationinsights-common\";\r\nimport { BaseTelemetryPlugin, InstrumentFunc, InstrumentProto, _throwInternal, arrForEach, createProcessTelemetryContext, createUniqueNamespace, dumpObj, eventOn, generateW3CId, getExceptionName, getGlobal, getIEVersion, getLocation, getPerformance, isFunction, isNullOrUndefined, isString, isXhrSupported, mergeEvtNamespace, onConfigChange, strPrototype, strTrim } from \"@microsoft/applicationinsights-core-js\";\r\nimport { isWebWorker, objFreeze, scheduleTimeout, strIndexOf, strSplit, strSubstr } from \"@nevware21/ts-utils\";\r\nimport { STR_PROPERTIES } from \"./InternalConstants\";\r\nimport { _DYN_ABORTED, _DYN_ABORT_DONE, _DYN_ADD_REQUEST_CONTEXT, _DYN_AJAX_DIAGNOSTICS_MES16, _DYN_AJAX_PERF_LOOKUP_DEL10, _DYN_CONTEXT, _DYN_CORE, _DYN_CORRELATION_CONTEXT, _DYN_DISABLE_AJAX_TRACKIN9, _DYN_DISABLE_FETCH_TRACKI11, _DYN_ENABLE_AJAX_ERROR_ST5, _DYN_ENABLE_AJAX_PERF_TRA6, _DYN_ENABLE_REQUEST_HEADE4, _DYN_ENABLE_RESPONSE_HEAD12, _DYN_ERROR_STATUS_TEXT, _DYN_EXCEPTION, _DYN_EXCLUDE_REQUEST_FROM8, _DYN_GET_ABSOLUTE_URL, _DYN_GET_ALL_RESPONSE_HEA15, _DYN_GET_PART_APROPS, _DYN_GET_TRACE_FLAGS, _DYN_GET_TRACE_ID, _DYN_HEADERS, _DYN_HEADER_MAP, _DYN_INCLUDE_CORRELATION_2, _DYN_INST, _DYN_LENGTH, _DYN_MAX_AJAX_CALLS_PER_V7, _DYN_METHOD, _DYN_NAME, _DYN_OPEN_DONE, _DYN_PERF_MARK, _DYN_PERF_TIMING, _DYN_REQUEST_HEADERS, _DYN_REQUEST_SENT_TIME, _DYN_REQUEST_URL, _DYN_RESPONSE, _DYN_RESPONSE_FINISHED_TI14, _DYN_RESPONSE_TEXT, _DYN_SEND_DONE, _DYN_SET_REQUEST_HEADER, _DYN_SPAN_ID, _DYN_SPAN_ID1, _DYN_START_TIME, _DYN_STATE_CHANGE_ATTACHE13, _DYN_STATUS, _DYN_STATUS_TEXT, _DYN_TO_LOWER_CASE, _DYN_TRACE_FLAGS, _DYN_TRACE_ID, _DYN_TRACE_ID0, _DYN_TRACK_DEPENDENCY_DAT3, _DYN__ADD_HOOK, _DYN__CREATE_TRACK_ITEM } from \"./__DynamicConstants\";\r\nimport { ajaxRecord } from \"./ajaxRecord\";\r\nvar AJAX_MONITOR_PREFIX = \"ai.ajxmn.\";\r\nvar strDiagLog = \"diagLog\";\r\nvar AJAX_DATA_CONTAINER = \"_ajaxData\";\r\nvar STR_FETCH = \"fetch\";\r\nvar ERROR_HEADER = \"Failed to monitor XMLHttpRequest\";\r\nvar ERROR_PREFIX = \", monitoring data for this ajax call \";\r\nvar ERROR_POSTFIX = ERROR_PREFIX + \"may be incorrect.\";\r\nvar ERROR_NOT_SENT = ERROR_PREFIX + \"won't be sent.\";\r\nvar CORRELATION_HEADER_ERROR = \"Failed to get Request-Context correlation header as it may be not included in the response or not accessible.\";\r\nvar CUSTOM_REQUEST_CONTEXT_ERROR = \"Failed to add custom defined request context as configured call back may missing a null check.\";\r\nvar FAILED_TO_CALCULATE_DURATION_ERROR = \"Failed to calculate the duration of the \";\r\n// Using a global value so that to handle same iKey with multiple app insights instances (mostly for testing)\r\nvar _markCount = 0;\r\n/** @Ignore */\r\nfunction _supportsFetch() {\r\n var _global = getGlobal();\r\n if (!_global ||\r\n isNullOrUndefined(_global.Request) ||\r\n isNullOrUndefined(_global.Request[strPrototype]) ||\r\n isNullOrUndefined(_global[STR_FETCH])) {\r\n return null;\r\n }\r\n return _global[STR_FETCH];\r\n}\r\n/**\r\n * Determines whether ajax monitoring can be enabled on this document\r\n * @returns True if Ajax monitoring is supported on this page, otherwise false\r\n * @ignore\r\n */\r\nfunction _supportsAjaxMonitoring(ajaxMonitorInstance, ajaxDataId) {\r\n var _a, _b;\r\n var result = false;\r\n if (isXhrSupported()) {\r\n var proto = XMLHttpRequest[strPrototype];\r\n result = !isNullOrUndefined(proto) &&\r\n !isNullOrUndefined(proto.open) && // eslint-disable-line security/detect-non-literal-fs-filename -- false positive\r\n !isNullOrUndefined(proto.send) &&\r\n !isNullOrUndefined(proto.abort);\r\n }\r\n var ieVer = getIEVersion();\r\n if (ieVer && ieVer < 9) {\r\n result = false;\r\n }\r\n if (result) {\r\n // Disable if the XmlHttpRequest can't be extended or hooked\r\n try {\r\n var xhr = new XMLHttpRequest();\r\n var xhrData = {\r\n xh: [],\r\n i: (_a = {},\r\n _a[ajaxDataId] = {},\r\n _a)\r\n };\r\n xhr[AJAX_DATA_CONTAINER] = xhrData;\r\n // Check that we can update the prototype\r\n var theOpen = XMLHttpRequest[strPrototype].open;\r\n XMLHttpRequest[strPrototype].open = theOpen;\r\n }\r\n catch (e) {\r\n // We can't decorate the xhr object so disable monitoring\r\n result = false;\r\n _throwInternalCritical(ajaxMonitorInstance, 15 /* _eInternalMessageId.FailedMonitorAjaxOpen */, \"Failed to enable XMLHttpRequest monitoring, extension is not supported\", (_b = {},\r\n _b[_DYN_EXCEPTION /* @min:exception */] = dumpObj(e),\r\n _b));\r\n }\r\n }\r\n return result;\r\n}\r\n/**\r\n * Internal helper to fetch the SDK instance tracking data for this XHR request\r\n * @param xhr\r\n * @param ajaxDataId\r\n * @returns\r\n */\r\nvar _getAjaxData = function (xhr, ajaxDataId) {\r\n if (xhr && ajaxDataId && xhr[AJAX_DATA_CONTAINER]) {\r\n return (xhr[AJAX_DATA_CONTAINER].i || {})[ajaxDataId];\r\n }\r\n return null;\r\n};\r\n/**\r\n * @ignore\r\n * Internal helper to track the singleton shared tracking headers, so we can attempt to not create headers\r\n * that might cause an issue if multiple values are populated.\r\n * @param xhr - The instrumented XHR instance\r\n */\r\nvar _addSharedXhrHeaders = function (xhr, name, value) {\r\n if (xhr) {\r\n var headers = (xhr[AJAX_DATA_CONTAINER] || {}).xh;\r\n if (headers) {\r\n headers.push({\r\n n: name,\r\n v: value\r\n });\r\n }\r\n }\r\n};\r\nvar _isHeaderSet = function (xhr, name) {\r\n var isPresent = false;\r\n if (xhr) {\r\n var headers = (xhr[AJAX_DATA_CONTAINER] || {}).xh;\r\n if (headers) {\r\n arrForEach(headers, function (header) {\r\n if (header.n === name) {\r\n isPresent = true;\r\n return -1;\r\n }\r\n });\r\n }\r\n }\r\n return isPresent;\r\n};\r\n/** @Ignore */\r\nfunction _getFailedAjaxDiagnosticsMessage(xhr, ajaxDataId) {\r\n var result = \"\";\r\n try {\r\n var ajaxData = _getAjaxData(xhr, ajaxDataId);\r\n if (ajaxData && ajaxData[_DYN_REQUEST_URL /* @min:%2erequestUrl */]) {\r\n result += \"(url: '\" + ajaxData[_DYN_REQUEST_URL /* @min:%2erequestUrl */] + \"')\";\r\n }\r\n }\r\n catch (e) {\r\n // eslint-disable-next-line no-empty\r\n }\r\n return result;\r\n}\r\n/** @ignore */\r\nfunction _throwInternalCritical(ajaxMonitorInstance, msgId, message, properties, isUserAct) {\r\n _throwInternal(ajaxMonitorInstance[strDiagLog](), 1 /* eLoggingSeverity.CRITICAL */, msgId, message, properties, isUserAct);\r\n}\r\n/** @ignore */\r\nfunction _throwInternalWarning(ajaxMonitorInstance, msgId, message, properties, isUserAct) {\r\n _throwInternal(ajaxMonitorInstance[strDiagLog](), 2 /* eLoggingSeverity.WARNING */, msgId, message, properties, isUserAct);\r\n}\r\n/** @Ignore */\r\nfunction _createErrorCallbackFunc(ajaxMonitorInstance, internalMessage, message) {\r\n // tslint:disable-next-line\r\n return function (callDetails) {\r\n var _a;\r\n _throwInternalCritical(ajaxMonitorInstance, internalMessage, message, (_a = {\r\n ajaxDiagnosticsMessage: _getFailedAjaxDiagnosticsMessage(callDetails[_DYN_INST /* @min:%2einst */], ajaxMonitorInstance._ajaxDataId)\r\n },\r\n _a[_DYN_EXCEPTION /* @min:exception */] = dumpObj(callDetails.err),\r\n _a));\r\n };\r\n}\r\nfunction _indexOf(value, match) {\r\n if (value && match) {\r\n return strIndexOf(value, match);\r\n }\r\n return -1;\r\n}\r\nfunction _addHandler(container, id, theFunc) {\r\n var theHandler = {\r\n id: id,\r\n fn: theFunc\r\n };\r\n container.push(theHandler);\r\n return {\r\n remove: function () {\r\n arrForEach(container, function (initializer, idx) {\r\n if (initializer.id === theHandler.id) {\r\n container.splice(idx, 1);\r\n return -1;\r\n }\r\n });\r\n }\r\n };\r\n}\r\nfunction _processDependencyContainer(core, container, details, message) {\r\n var result = true;\r\n arrForEach(container, function (theFunc, idx) {\r\n try {\r\n if (theFunc.fn.call(null, details) === false) {\r\n result = false;\r\n }\r\n }\r\n catch (e) {\r\n _throwInternal(core && core.logger, 1 /* eLoggingSeverity.CRITICAL */, 64 /* _eInternalMessageId.TelemetryInitializerFailed */, \"Dependency \" + message + \" [#\" + idx + \"] failed: \" + getExceptionName(e), { exception: dumpObj(e) }, true);\r\n }\r\n });\r\n return result;\r\n}\r\nfunction _processDependencyListeners(listeners, core, ajaxData, xhr, input, init) {\r\n var _a;\r\n var initializersCount = listeners[_DYN_LENGTH /* @min:%2elength */];\r\n if (initializersCount > 0) {\r\n var details = (_a = {},\r\n _a[_DYN_CORE /* @min:core */] = core,\r\n _a.xhr = xhr,\r\n _a.input = input,\r\n _a.init = init,\r\n _a.traceId = ajaxData[_DYN_TRACE_ID /* @min:%2etraceID */],\r\n _a.spanId = ajaxData[_DYN_SPAN_ID /* @min:%2espanID */],\r\n _a.traceFlags = ajaxData[_DYN_TRACE_FLAGS /* @min:%2etraceFlags */],\r\n _a.context = ajaxData[_DYN_CONTEXT /* @min:%2econtext */] || {},\r\n _a.aborted = !!ajaxData[_DYN_ABORTED /* @min:%2eaborted */],\r\n _a);\r\n _processDependencyContainer(core, listeners, details, \"listener\");\r\n ajaxData[_DYN_TRACE_ID /* @min:%2etraceID */] = details[_DYN_TRACE_ID0 /* @min:%2etraceId */];\r\n ajaxData[_DYN_SPAN_ID /* @min:%2espanID */] = details[_DYN_SPAN_ID1 /* @min:%2espanId */];\r\n ajaxData[_DYN_TRACE_FLAGS /* @min:%2etraceFlags */] = details[_DYN_TRACE_FLAGS /* @min:%2etraceFlags */];\r\n ajaxData[_DYN_CONTEXT /* @min:%2econtext */] = details[_DYN_CONTEXT /* @min:%2econtext */];\r\n }\r\n}\r\nvar BLOB_CORE = \"*.blob.core.\";\r\nexport var DfltAjaxCorrelationHeaderExDomains = objFreeze([\r\n BLOB_CORE + \"windows.net\",\r\n BLOB_CORE + \"chinacloudapi.cn\",\r\n BLOB_CORE + \"cloudapi.de\",\r\n BLOB_CORE + \"usgovcloudapi.net\"\r\n]);\r\nvar _internalExcludeEndpoints = [\r\n /https:\\/\\/[^\\/]*(\\.pipe\\.aria|aria\\.pipe|events\\.data|collector\\.azure)\\.[^\\/]+\\/(OneCollector\\/1|Collector\\/3)\\.0/i\r\n];\r\nvar _defaultConfig = objFreeze((_a = {},\r\n _a[_DYN_MAX_AJAX_CALLS_PER_V7 /* @min:maxAjaxCallsPerView */] = 500,\r\n _a[_DYN_DISABLE_AJAX_TRACKIN9 /* @min:disableAjaxTracking */] = false,\r\n _a[_DYN_DISABLE_FETCH_TRACKI11 /* @min:disableFetchTracking */] = false,\r\n _a[_DYN_EXCLUDE_REQUEST_FROM8 /* @min:excludeRequestFromAutoTrackingPatterns */] = undefined,\r\n _a.disableCorrelationHeaders = false,\r\n _a.distributedTracingMode = 1 /* eDistributedTracingModes.AI_AND_W3C */,\r\n _a.correlationHeaderExcludedDomains = DfltAjaxCorrelationHeaderExDomains,\r\n _a.correlationHeaderDomains = undefined,\r\n _a.correlationHeaderExcludePatterns = undefined,\r\n _a.appId = undefined,\r\n _a.enableCorsCorrelation = false,\r\n _a[_DYN_ENABLE_REQUEST_HEADE4 /* @min:enableRequestHeaderTracking */] = false,\r\n _a[_DYN_ENABLE_RESPONSE_HEAD12 /* @min:enableResponseHeaderTracking */] = false,\r\n _a[_DYN_ENABLE_AJAX_ERROR_ST5 /* @min:enableAjaxErrorStatusText */] = false,\r\n _a[_DYN_ENABLE_AJAX_PERF_TRA6 /* @min:enableAjaxPerfTracking */] = false,\r\n _a.maxAjaxPerfLookupAttempts = 3,\r\n _a[_DYN_AJAX_PERF_LOOKUP_DEL10 /* @min:ajaxPerfLookupDelay */] = 25,\r\n _a.ignoreHeaders = [\r\n \"Authorization\",\r\n \"X-API-Key\",\r\n \"WWW-Authenticate\"\r\n ],\r\n _a[_DYN_ADD_REQUEST_CONTEXT /* @min:addRequestContext */] = undefined,\r\n _a.addIntEndpoints = true,\r\n _a));\r\nvar AjaxMonitor = /** @class */ (function (_super) {\r\n __extends(AjaxMonitor, _super);\r\n function AjaxMonitor() {\r\n var _this = _super.call(this) || this;\r\n _this.identifier = AjaxMonitor.identifier;\r\n _this.priority = 120;\r\n var _fetchInitialized; // fetch monitoring initialized\r\n var _xhrInitialized; // XHR monitoring initialized\r\n var _currentWindowHost;\r\n var _extensionConfig;\r\n var _enableRequestHeaderTracking;\r\n var _enableAjaxErrorStatusText;\r\n var _trackAjaxAttempts;\r\n var _context;\r\n var _isUsingW3CHeaders;\r\n var _isUsingAIHeaders;\r\n var _markPrefix;\r\n var _enableAjaxPerfTracking;\r\n var _maxAjaxCallsPerView;\r\n var _enableResponseHeaderTracking;\r\n var _disabledUrls;\r\n var _disableAjaxTracking;\r\n var _disableFetchTracking;\r\n var _excludeRequestFromAutoTrackingPatterns;\r\n var _addRequestContext;\r\n var _evtNamespace;\r\n var _ajaxDataId;\r\n var _dependencyHandlerId;\r\n var _dependencyListeners;\r\n var _dependencyInitializers;\r\n var _ignoreHeaders;\r\n var _maxAjaxPerfLookupAttempts;\r\n var _ajaxPerfLookupDelay;\r\n var _distributedTracingMode;\r\n var _appId;\r\n var _polyfillInitialized;\r\n dynamicProto(AjaxMonitor, _this, function (_self, _base) {\r\n var _addHook = _base[_DYN__ADD_HOOK /* @min:%2e_addHook */];\r\n _initDefaults();\r\n _self.initialize = function (config, core, extensions, pluginChain) {\r\n if (!_self.isInitialized()) {\r\n _base.initialize(config, core, extensions, pluginChain);\r\n _evtNamespace = mergeEvtNamespace(createUniqueNamespace(\"ajax\"), core && core.evtNamespace && core.evtNamespace());\r\n _populateDefaults(config);\r\n _instrumentXhr();\r\n _instrumentFetch();\r\n _populateContext();\r\n }\r\n };\r\n _self._doTeardown = function () {\r\n _initDefaults();\r\n };\r\n _self.trackDependencyData = function (dependency, properties) {\r\n _reportDependencyInternal(_dependencyInitializers, _self[_DYN_CORE /* @min:%2ecore */], null, dependency, properties);\r\n };\r\n _self[_DYN_INCLUDE_CORRELATION_2 /* @min:%2eincludeCorrelationHeaders */] = function (ajaxData, input, init, xhr) {\r\n // Test Hook to allow the overriding of the location host\r\n var currentWindowHost = _self[\"_currentWindowHost\"] || _currentWindowHost;\r\n _processDependencyListeners(_dependencyListeners, _self[_DYN_CORE /* @min:%2ecore */], ajaxData, xhr, input, init);\r\n if (input || input === \"\") { // Fetch\r\n if (correlationIdCanIncludeCorrelationHeader(_extensionConfig, ajaxData[_DYN_GET_ABSOLUTE_URL /* @min:%2egetAbsoluteUrl */](), currentWindowHost)) {\r\n if (!init) {\r\n init = {};\r\n }\r\n // init headers override original request headers\r\n // so, if they exist use only them, otherwise use request's because they should have been applied in the first place\r\n // not using original request headers will result in them being lost\r\n var headers = new Headers(init[_DYN_HEADERS /* @min:%2eheaders */] || (input instanceof Request ? (input[_DYN_HEADERS /* @min:%2eheaders */] || {}) : {}));\r\n if (_isUsingAIHeaders) {\r\n var id = \"|\" + ajaxData[_DYN_TRACE_ID /* @min:%2etraceID */] + \".\" + ajaxData[_DYN_SPAN_ID /* @min:%2espanID */];\r\n headers.set(RequestHeaders[3 /* eRequestHeaders.requestIdHeader */], id);\r\n if (_enableRequestHeaderTracking) {\r\n ajaxData[_DYN_REQUEST_HEADERS /* @min:%2erequestHeaders */][RequestHeaders[3 /* eRequestHeaders.requestIdHeader */]] = id;\r\n }\r\n }\r\n var appId = _appId || (_context && _context.appId());\r\n if (appId) {\r\n headers.set(RequestHeaders[0 /* eRequestHeaders.requestContextHeader */], RequestHeaders[2 /* eRequestHeaders.requestContextAppIdFormat */] + appId);\r\n if (_enableRequestHeaderTracking) {\r\n ajaxData[_DYN_REQUEST_HEADERS /* @min:%2erequestHeaders */][RequestHeaders[0 /* eRequestHeaders.requestContextHeader */]] = RequestHeaders[2 /* eRequestHeaders.requestContextAppIdFormat */] + appId;\r\n }\r\n }\r\n if (_isUsingW3CHeaders) {\r\n var traceFlags = ajaxData[_DYN_TRACE_FLAGS /* @min:%2etraceFlags */];\r\n if (isNullOrUndefined(traceFlags)) {\r\n traceFlags = 0x01;\r\n }\r\n var traceParent = formatTraceParent(createTraceParent(ajaxData[_DYN_TRACE_ID /* @min:%2etraceID */], ajaxData[_DYN_SPAN_ID /* @min:%2espanID */], traceFlags));\r\n headers.set(RequestHeaders[4 /* eRequestHeaders.traceParentHeader */], traceParent);\r\n if (_enableRequestHeaderTracking) {\r\n ajaxData[_DYN_REQUEST_HEADERS /* @min:%2erequestHeaders */][RequestHeaders[4 /* eRequestHeaders.traceParentHeader */]] = traceParent;\r\n }\r\n }\r\n init[_DYN_HEADERS /* @min:%2eheaders */] = headers;\r\n }\r\n return init;\r\n }\r\n else if (xhr) { // XHR\r\n if (correlationIdCanIncludeCorrelationHeader(_extensionConfig, ajaxData[_DYN_GET_ABSOLUTE_URL /* @min:%2egetAbsoluteUrl */](), currentWindowHost)) {\r\n if (_isUsingAIHeaders) {\r\n if (!_isHeaderSet(xhr, RequestHeaders[3 /* eRequestHeaders.requestIdHeader */])) {\r\n var id = \"|\" + ajaxData[_DYN_TRACE_ID /* @min:%2etraceID */] + \".\" + ajaxData[_DYN_SPAN_ID /* @min:%2espanID */];\r\n xhr[_DYN_SET_REQUEST_HEADER /* @min:%2esetRequestHeader */](RequestHeaders[3 /* eRequestHeaders.requestIdHeader */], id);\r\n if (_enableRequestHeaderTracking) {\r\n ajaxData[_DYN_REQUEST_HEADERS /* @min:%2erequestHeaders */][RequestHeaders[3 /* eRequestHeaders.requestIdHeader */]] = id;\r\n }\r\n }\r\n else {\r\n _throwInternalWarning(_self, 71 /* _eInternalMessageId.FailedMonitorAjaxSetRequestHeader */, \"Unable to set [\" + RequestHeaders[3 /* eRequestHeaders.requestIdHeader */] + \"] as it has already been set by another instance\");\r\n }\r\n }\r\n var appId = _appId || (_context && _context.appId());\r\n if (appId) {\r\n if (!_isHeaderSet(xhr, RequestHeaders[0 /* eRequestHeaders.requestContextHeader */])) {\r\n xhr[_DYN_SET_REQUEST_HEADER /* @min:%2esetRequestHeader */](RequestHeaders[0 /* eRequestHeaders.requestContextHeader */], RequestHeaders[2 /* eRequestHeaders.requestContextAppIdFormat */] + appId);\r\n if (_enableRequestHeaderTracking) {\r\n ajaxData[_DYN_REQUEST_HEADERS /* @min:%2erequestHeaders */][RequestHeaders[0 /* eRequestHeaders.requestContextHeader */]] = RequestHeaders[2 /* eRequestHeaders.requestContextAppIdFormat */] + appId;\r\n }\r\n }\r\n else {\r\n _throwInternalWarning(_self, 71 /* _eInternalMessageId.FailedMonitorAjaxSetRequestHeader */, \"Unable to set [\" + RequestHeaders[0 /* eRequestHeaders.requestContextHeader */] + \"] as it has already been set by another instance\");\r\n }\r\n }\r\n if (_isUsingW3CHeaders) {\r\n var traceFlags = ajaxData[_DYN_TRACE_FLAGS /* @min:%2etraceFlags */];\r\n if (isNullOrUndefined(traceFlags)) {\r\n traceFlags = 0x01;\r\n }\r\n if (!_isHeaderSet(xhr, RequestHeaders[4 /* eRequestHeaders.traceParentHeader */])) {\r\n var traceParent = formatTraceParent(createTraceParent(ajaxData[_DYN_TRACE_ID /* @min:%2etraceID */], ajaxData[_DYN_SPAN_ID /* @min:%2espanID */], traceFlags));\r\n xhr[_DYN_SET_REQUEST_HEADER /* @min:%2esetRequestHeader */](RequestHeaders[4 /* eRequestHeaders.traceParentHeader */], traceParent);\r\n if (_enableRequestHeaderTracking) {\r\n ajaxData[_DYN_REQUEST_HEADERS /* @min:%2erequestHeaders */][RequestHeaders[4 /* eRequestHeaders.traceParentHeader */]] = traceParent;\r\n }\r\n }\r\n else {\r\n _throwInternalWarning(_self, 71 /* _eInternalMessageId.FailedMonitorAjaxSetRequestHeader */, \"Unable to set [\" + RequestHeaders[4 /* eRequestHeaders.traceParentHeader */] + \"] as it has already been set by another instance\");\r\n }\r\n }\r\n }\r\n return xhr;\r\n }\r\n return undefined;\r\n };\r\n _self[_DYN_TRACK_DEPENDENCY_DAT3 /* @min:%2etrackDependencyDataInternal */] = function (dependency, properties, systemProperties) {\r\n if (_maxAjaxCallsPerView === -1 || _trackAjaxAttempts < _maxAjaxCallsPerView) {\r\n // Hack since expected format in w3c mode is |abc.def.\r\n // Non-w3c format is |abc.def\r\n // @todo Remove if better solution is available, e.g. handle in portal\r\n if ((_distributedTracingMode === 2 /* eDistributedTracingModes.W3C */\r\n || _distributedTracingMode === 1 /* eDistributedTracingModes.AI_AND_W3C */)\r\n && typeof dependency.id === \"string\" && dependency.id[dependency.id[_DYN_LENGTH /* @min:%2elength */] - 1] !== \".\") {\r\n dependency.id += \".\";\r\n }\r\n if (isNullOrUndefined(dependency[_DYN_START_TIME /* @min:%2estartTime */])) {\r\n dependency[_DYN_START_TIME /* @min:%2estartTime */] = new Date();\r\n }\r\n var item = createTelemetryItem(dependency, RemoteDependencyData.dataType, RemoteDependencyData.envelopeType, _self[strDiagLog](), properties, systemProperties);\r\n _self[_DYN_CORE /* @min:%2ecore */].track(item);\r\n }\r\n else if (_trackAjaxAttempts === _maxAjaxCallsPerView) {\r\n _throwInternalCritical(_self, 55 /* _eInternalMessageId.MaxAjaxPerPVExceeded */, \"Maximum ajax per page view limit reached, ajax monitoring is paused until the next trackPageView(). In order to increase the limit set the maxAjaxCallsPerView configuration parameter.\", true);\r\n }\r\n ++_trackAjaxAttempts;\r\n };\r\n _self.addDependencyListener = function (dependencyListener) {\r\n return _addHandler(_dependencyListeners, _dependencyHandlerId++, dependencyListener);\r\n };\r\n _self.addDependencyInitializer = function (dependencyInitializer) {\r\n return _addHandler(_dependencyInitializers, _dependencyHandlerId++, dependencyInitializer);\r\n };\r\n function _initDefaults() {\r\n var location = getLocation();\r\n _fetchInitialized = false; // fetch monitoring initialized\r\n _xhrInitialized = false; // XHR monitoring initialized\r\n _polyfillInitialized = false; // polyfill monitoring initialized\r\n _currentWindowHost = location && location.host && location.host[_DYN_TO_LOWER_CASE /* @min:%2etoLowerCase */]();\r\n _extensionConfig = null;\r\n _enableRequestHeaderTracking = false;\r\n _enableAjaxErrorStatusText = false;\r\n _trackAjaxAttempts = 0;\r\n _context = null;\r\n _isUsingW3CHeaders = false;\r\n _isUsingAIHeaders = false;\r\n _markPrefix = null;\r\n _enableAjaxPerfTracking = false;\r\n _maxAjaxCallsPerView = 0;\r\n _enableResponseHeaderTracking = false;\r\n _disabledUrls = {};\r\n _disableAjaxTracking = false;\r\n _disableFetchTracking = false;\r\n _excludeRequestFromAutoTrackingPatterns = null;\r\n _addRequestContext = null;\r\n _evtNamespace = null;\r\n _dependencyHandlerId = 0;\r\n _dependencyListeners = [];\r\n _dependencyInitializers = [];\r\n _ajaxDataId = createUniqueNamespace(\"ajaxData\");\r\n _self._ajaxDataId = _ajaxDataId;\r\n _ignoreHeaders = null;\r\n _maxAjaxPerfLookupAttempts = 1;\r\n _ajaxPerfLookupDelay = 1;\r\n _distributedTracingMode = 1 /* eDistributedTracingModes.AI_AND_W3C */;\r\n _appId = null;\r\n }\r\n function _populateDefaults(config) {\r\n _self[_DYN__ADD_HOOK /* @min:%2e_addHook */](onConfigChange(config, function (details) {\r\n var config = details.cfg;\r\n var ctx = createProcessTelemetryContext(null, config, _self[_DYN_CORE /* @min:%2ecore */]);\r\n _extensionConfig = ctx.getExtCfg(AjaxMonitor.identifier, _defaultConfig);\r\n _distributedTracingMode = _extensionConfig.distributedTracingMode;\r\n _enableRequestHeaderTracking = _extensionConfig[_DYN_ENABLE_REQUEST_HEADE4 /* @min:%2eenableRequestHeaderTracking */];\r\n _enableAjaxErrorStatusText = _extensionConfig[_DYN_ENABLE_AJAX_ERROR_ST5 /* @min:%2eenableAjaxErrorStatusText */];\r\n _enableAjaxPerfTracking = _extensionConfig[_DYN_ENABLE_AJAX_PERF_TRA6 /* @min:%2eenableAjaxPerfTracking */];\r\n _maxAjaxCallsPerView = _extensionConfig[_DYN_MAX_AJAX_CALLS_PER_V7 /* @min:%2emaxAjaxCallsPerView */];\r\n _excludeRequestFromAutoTrackingPatterns = [].concat(_extensionConfig[_DYN_EXCLUDE_REQUEST_FROM8 /* @min:%2eexcludeRequestFromAutoTrackingPatterns */] || [], _extensionConfig.addIntEndpoints !== false ? _internalExcludeEndpoints : []);\r\n _addRequestContext = _extensionConfig[_DYN_ADD_REQUEST_CONTEXT /* @min:%2eaddRequestContext */];\r\n _isUsingAIHeaders = _distributedTracingMode === 0 /* eDistributedTracingModes.AI */ || _distributedTracingMode === 1 /* eDistributedTracingModes.AI_AND_W3C */;\r\n _isUsingW3CHeaders = _distributedTracingMode === 1 /* eDistributedTracingModes.AI_AND_W3C */ || _distributedTracingMode === 2 /* eDistributedTracingModes.W3C */;\r\n if (_enableAjaxPerfTracking) {\r\n _markPrefix = _ajaxDataId;\r\n }\r\n _disableAjaxTracking = !!_extensionConfig[_DYN_DISABLE_AJAX_TRACKIN9 /* @min:%2edisableAjaxTracking */];\r\n _maxAjaxPerfLookupAttempts = _extensionConfig.maxAjaxPerfLookupAttempts;\r\n _ajaxPerfLookupDelay = _extensionConfig[_DYN_AJAX_PERF_LOOKUP_DEL10 /* @min:%2eajaxPerfLookupDelay */];\r\n _ignoreHeaders = _extensionConfig.ignoreHeaders;\r\n _appId = _extensionConfig.appId;\r\n }));\r\n }\r\n function _populateContext() {\r\n var propExt = _self[_DYN_CORE /* @min:%2ecore */].getPlugin(PropertiesPluginIdentifier);\r\n if (propExt) {\r\n _context = propExt.plugin[_DYN_CONTEXT /* @min:%2econtext */]; // we could move IPropertiesPlugin to common as well\r\n }\r\n }\r\n // discard the header if it's defined as ignoreHeaders in ICorrelationConfig\r\n function _canIncludeHeaders(header) {\r\n var rlt = true;\r\n if (header || _ignoreHeaders) {\r\n arrForEach(_ignoreHeaders, (function (key) {\r\n if (key[_DYN_TO_LOWER_CASE /* @min:%2etoLowerCase */]() === header[_DYN_TO_LOWER_CASE /* @min:%2etoLowerCase */]()) {\r\n rlt = false;\r\n return -1;\r\n }\r\n }));\r\n }\r\n return rlt;\r\n }\r\n // Fetch Stuff\r\n function _instrumentFetch() {\r\n var fetch = _supportsFetch();\r\n if (!fetch) {\r\n return;\r\n }\r\n var global = getGlobal();\r\n var isPolyfill = fetch.polyfill;\r\n _self[_DYN__ADD_HOOK /* @min:%2e_addHook */](onConfigChange(_extensionConfig, function () {\r\n _disableFetchTracking = !!_extensionConfig[_DYN_DISABLE_FETCH_TRACKI11 /* @min:%2edisableFetchTracking */];\r\n _enableResponseHeaderTracking = _extensionConfig[_DYN_ENABLE_RESPONSE_HEAD12 /* @min:%2eenableResponseHeaderTracking */];\r\n if (!_disableFetchTracking && !_fetchInitialized) {\r\n _addHook(InstrumentFunc(global, STR_FETCH, {\r\n ns: _evtNamespace,\r\n // Add request hook\r\n req: function (callDetails, input, init) {\r\n var fetchData;\r\n if (!_disableFetchTracking && _fetchInitialized &&\r\n !_isDisabledRequest(null, input, init) &&\r\n // If we have a polyfil and XHR instrumented then let XHR report otherwise we get duplicates\r\n !(isPolyfill && _xhrInitialized)) {\r\n var ctx = callDetails.ctx();\r\n fetchData = _createFetchRecord(input, init);\r\n var newInit = _self[_DYN_INCLUDE_CORRELATION_2 /* @min:%2eincludeCorrelationHeaders */](fetchData, input, init);\r\n if (newInit !== init) {\r\n callDetails.set(1, newInit);\r\n }\r\n ctx.data = fetchData;\r\n }\r\n },\r\n rsp: function (callDetails, input) {\r\n if (!_disableFetchTracking) {\r\n var fetchData_1 = callDetails.ctx().data;\r\n if (fetchData_1) {\r\n // Replace the result with the new promise from this code\r\n callDetails.rslt = callDetails.rslt.then(function (response) {\r\n _reportFetchMetrics(callDetails, (response || {})[_DYN_STATUS /* @min:%2estatus */], input, response, fetchData_1, function () {\r\n var _a;\r\n var ajaxResponse = (_a = {\r\n statusText: (response || {})[_DYN_STATUS_TEXT /* @min:%2estatusText */]\r\n },\r\n _a[_DYN_HEADER_MAP /* @min:headerMap */] = null,\r\n _a[_DYN_CORRELATION_CONTEXT /* @min:correlationContext */] = _getFetchCorrelationContext(response),\r\n _a);\r\n if (_enableResponseHeaderTracking && response) {\r\n var responseHeaderMap_1 = {};\r\n response.headers.forEach(function (value, name) {\r\n if (_canIncludeHeaders(name)) {\r\n responseHeaderMap_1[name] = value;\r\n }\r\n });\r\n ajaxResponse[_DYN_HEADER_MAP /* @min:%2eheaderMap */] = responseHeaderMap_1;\r\n }\r\n return ajaxResponse;\r\n });\r\n return response;\r\n })\r\n .catch(function (reason) {\r\n _reportFetchMetrics(callDetails, 0, input, null, fetchData_1, null, { error: reason.message || dumpObj(reason) });\r\n throw reason;\r\n });\r\n }\r\n }\r\n },\r\n // Create an error callback to report any hook errors\r\n hkErr: _createErrorCallbackFunc(_self, 15 /* _eInternalMessageId.FailedMonitorAjaxOpen */, \"Failed to monitor Window.fetch\" + ERROR_POSTFIX)\r\n }, true, isWebWorker()));\r\n _fetchInitialized = true;\r\n }\r\n else if (isPolyfill && !_polyfillInitialized) {\r\n // If fetch is a polyfill we need to capture the request to ensure that we correctly track\r\n // disabled request URLS (i.e. internal urls) to ensure we don't end up in a constant loop\r\n // of reporting ourselves, for example React Native uses a polyfill for fetch\r\n // Note: Polyfill implementations that don't support the \"polyfill\" tag are not supported\r\n // the workaround is to add a polyfill property to your fetch implementation before initializing\r\n // App Insights\r\n _addHook(InstrumentFunc(global, STR_FETCH, {\r\n ns: _evtNamespace,\r\n req: function (callDetails, input, init) {\r\n // Just call so that we record any disabled URL\r\n _isDisabledRequest(null, input, init);\r\n }\r\n }));\r\n _polyfillInitialized = true;\r\n }\r\n }));\r\n if (isPolyfill) {\r\n // retag the instrumented fetch with the same polyfill settings this is mostly for testing\r\n // But also supports multiple App Insights usages\r\n global[STR_FETCH].polyfill = isPolyfill;\r\n }\r\n }\r\n function _hookProto(target, funcName, callbacks) {\r\n _addHook(InstrumentProto(target, funcName, callbacks));\r\n }\r\n function _instrumentXhr() {\r\n if (!_supportsAjaxMonitoring(_self, _ajaxDataId)) {\r\n return;\r\n }\r\n _self[_DYN__ADD_HOOK /* @min:%2e_addHook */](onConfigChange(_extensionConfig, function () {\r\n _disableAjaxTracking = !!_extensionConfig[_DYN_DISABLE_AJAX_TRACKIN9 /* @min:%2edisableAjaxTracking */];\r\n _enableRequestHeaderTracking = _extensionConfig[_DYN_ENABLE_REQUEST_HEADE4 /* @min:%2eenableRequestHeaderTracking */];\r\n if (!_disableAjaxTracking && !_xhrInitialized) {\r\n // Instrument open\r\n _hookProto(XMLHttpRequest, \"open\", {\r\n ns: _evtNamespace,\r\n req: function (callDetails, method, url, async) {\r\n if (!_disableAjaxTracking) {\r\n var xhr = callDetails[_DYN_INST /* @min:%2einst */];\r\n var ajaxData = _getAjaxData(xhr, _ajaxDataId);\r\n if (!_isDisabledRequest(xhr, url) && _isMonitoredXhrInstance(xhr, ajaxData, true)) {\r\n if (!ajaxData || !ajaxData.xhrMonitoringState[_DYN_OPEN_DONE /* @min:%2eopenDone */]) {\r\n // Only create a single ajaxData (even when multiple AI instances are running)\r\n ajaxData = _openHandler(xhr, method, url, async);\r\n }\r\n // always attach to the on ready state change (required for handling multiple instances)\r\n _attachToOnReadyStateChange(xhr, ajaxData);\r\n }\r\n }\r\n },\r\n hkErr: _createErrorCallbackFunc(_self, 15 /* _eInternalMessageId.FailedMonitorAjaxOpen */, ERROR_HEADER + \".open\" + ERROR_POSTFIX)\r\n });\r\n // Instrument send\r\n _hookProto(XMLHttpRequest, \"send\", {\r\n ns: _evtNamespace,\r\n req: function (callDetails, context) {\r\n if (!_disableAjaxTracking) {\r\n var xhr = callDetails[_DYN_INST /* @min:%2einst */];\r\n var ajaxData = _getAjaxData(xhr, _ajaxDataId);\r\n if (_isMonitoredXhrInstance(xhr, ajaxData) && !ajaxData.xhrMonitoringState[_DYN_SEND_DONE /* @min:%2esendDone */]) {\r\n _createMarkId(\"xhr\", ajaxData);\r\n ajaxData[_DYN_REQUEST_SENT_TIME /* @min:%2erequestSentTime */] = dateTimeUtilsNow();\r\n _self[_DYN_INCLUDE_CORRELATION_2 /* @min:%2eincludeCorrelationHeaders */](ajaxData, undefined, undefined, xhr);\r\n ajaxData.xhrMonitoringState[_DYN_SEND_DONE /* @min:%2esendDone */] = true;\r\n }\r\n }\r\n },\r\n hkErr: _createErrorCallbackFunc(_self, 17 /* _eInternalMessageId.FailedMonitorAjaxSend */, ERROR_HEADER + ERROR_POSTFIX)\r\n });\r\n // Instrument abort\r\n _hookProto(XMLHttpRequest, \"abort\", {\r\n ns: _evtNamespace,\r\n req: function (callDetails) {\r\n if (!_disableAjaxTracking) {\r\n var xhr = callDetails[_DYN_INST /* @min:%2einst */];\r\n var ajaxData = _getAjaxData(xhr, _ajaxDataId);\r\n if (_isMonitoredXhrInstance(xhr, ajaxData) && !ajaxData.xhrMonitoringState[_DYN_ABORT_DONE /* @min:%2eabortDone */]) {\r\n ajaxData[_DYN_ABORTED /* @min:%2eaborted */] = 1;\r\n ajaxData.xhrMonitoringState[_DYN_ABORT_DONE /* @min:%2eabortDone */] = true;\r\n }\r\n }\r\n },\r\n hkErr: _createErrorCallbackFunc(_self, 13 /* _eInternalMessageId.FailedMonitorAjaxAbort */, ERROR_HEADER + \".abort\" + ERROR_POSTFIX)\r\n });\r\n // Instrument setRequestHeader\r\n _hookProto(XMLHttpRequest, \"setRequestHeader\", {\r\n ns: _evtNamespace,\r\n req: function (callDetails, header, value) {\r\n if (!_disableAjaxTracking) {\r\n var xhr = callDetails[_DYN_INST /* @min:%2einst */];\r\n var ajaxData = _getAjaxData(xhr, _ajaxDataId);\r\n if (ajaxData && _isMonitoredXhrInstance(xhr, ajaxData)) {\r\n _addSharedXhrHeaders(xhr, header, value);\r\n if (_enableRequestHeaderTracking && _canIncludeHeaders(header)) {\r\n if (ajaxData) {\r\n ajaxData[_DYN_REQUEST_HEADERS /* @min:%2erequestHeaders */][header] = value;\r\n }\r\n }\r\n }\r\n }\r\n },\r\n hkErr: _createErrorCallbackFunc(_self, 71 /* _eInternalMessageId.FailedMonitorAjaxSetRequestHeader */, ERROR_HEADER + \".setRequestHeader\" + ERROR_POSTFIX)\r\n });\r\n _xhrInitialized = true;\r\n }\r\n }));\r\n }\r\n function _isDisabledRequest(xhr, request, init) {\r\n var isDisabled = false;\r\n var theUrl = ((!isString(request) ? (request || {}).url || \"\" : request) || \"\")[_DYN_TO_LOWER_CASE /* @min:%2etoLowerCase */]();\r\n // check excludeRequestFromAutoTrackingPatterns before stripping off any query string\r\n arrForEach(_excludeRequestFromAutoTrackingPatterns, function (regex) {\r\n var theRegex = regex;\r\n if (isString(regex)) {\r\n theRegex = new RegExp(regex);\r\n }\r\n if (!isDisabled) {\r\n isDisabled = theRegex.test(theUrl);\r\n }\r\n });\r\n // if request url matches with exclude regex pattern, return true and no need to check for headers\r\n if (isDisabled) {\r\n return isDisabled;\r\n }\r\n var idx = _indexOf(theUrl, \"?\");\r\n var idx2 = _indexOf(theUrl, \"#\");\r\n if (idx === -1 || (idx2 !== -1 && idx2 < idx)) {\r\n idx = idx2;\r\n }\r\n if (idx !== -1) {\r\n // Strip off any Query string\r\n theUrl = theUrl.substring(0, idx);\r\n }\r\n // check that this instance is not not used by ajax call performed inside client side monitoring to send data to collector\r\n if (!isNullOrUndefined(xhr)) {\r\n // Look on the XMLHttpRequest of the URL string value\r\n isDisabled = xhr[DisabledPropertyName] === true || theUrl[DisabledPropertyName] === true;\r\n }\r\n else if (!isNullOrUndefined(request)) { // fetch\r\n // Look for DisabledPropertyName in either Request or RequestInit\r\n isDisabled = (typeof request === \"object\" ? request[DisabledPropertyName] === true : false) ||\r\n (init ? init[DisabledPropertyName] === true : false);\r\n }\r\n // Also add extra check just in case the XHR or fetch objects where not decorated with the DisableProperty due to sealing or freezing\r\n if (!isDisabled && theUrl && isInternalApplicationInsightsEndpoint(theUrl)) {\r\n isDisabled = true;\r\n }\r\n if (isDisabled) {\r\n // Add the disabled url if not present\r\n if (!_disabledUrls[theUrl]) {\r\n _disabledUrls[theUrl] = 1;\r\n }\r\n }\r\n else {\r\n // Check to see if the url is listed as disabled\r\n if (_disabledUrls[theUrl]) {\r\n isDisabled = true;\r\n }\r\n }\r\n return isDisabled;\r\n }\r\n /// Verifies that particular instance of XMLHttpRequest needs to be monitored\r\n /// Optional parameter. True if ajaxData must be excluded from verification\r\n /// True if instance needs to be monitored, otherwise false\r\n function _isMonitoredXhrInstance(xhr, ajaxData, excludeAjaxDataValidation) {\r\n var ajaxValidation = true;\r\n var initialized = _xhrInitialized;\r\n if (!isNullOrUndefined(xhr)) {\r\n ajaxValidation = excludeAjaxDataValidation === true || !isNullOrUndefined(ajaxData);\r\n }\r\n // checking to see that all interested functions on xhr were instrumented\r\n return initialized\r\n // checking on ajaxData to see that it was not removed in user code\r\n && ajaxValidation;\r\n }\r\n function _getDistributedTraceCtx() {\r\n var distributedTraceCtx = null;\r\n if (_self[_DYN_CORE /* @min:%2ecore */] && _self[_DYN_CORE /* @min:%2ecore */].getTraceCtx) {\r\n distributedTraceCtx = _self[_DYN_CORE /* @min:%2ecore */].getTraceCtx(false);\r\n }\r\n // Fall back\r\n if (!distributedTraceCtx && _context && _context.telemetryTrace) {\r\n distributedTraceCtx = createDistributedTraceContextFromTrace(_context.telemetryTrace);\r\n }\r\n return distributedTraceCtx;\r\n }\r\n function _openHandler(xhr, method, url, async) {\r\n var _a;\r\n var distributedTraceCtx = _getDistributedTraceCtx();\r\n var traceID = (distributedTraceCtx && distributedTraceCtx[_DYN_GET_TRACE_ID /* @min:%2egetTraceId */]()) || generateW3CId();\r\n var spanID = strSubstr(generateW3CId(), 0, 16);\r\n var xhrRequestData = xhr[AJAX_DATA_CONTAINER] = (xhr[AJAX_DATA_CONTAINER] || { xh: [], i: {} });\r\n var ajaxDataCntr = xhrRequestData.i = (xhrRequestData.i || {});\r\n var ajaxData = ajaxDataCntr[_ajaxDataId] = (ajaxDataCntr[_ajaxDataId] || new ajaxRecord(traceID, spanID, _self[strDiagLog](), (_a = _self.core) === null || _a === void 0 ? void 0 : _a.getTraceCtx()));\r\n ajaxData[_DYN_TRACE_FLAGS /* @min:%2etraceFlags */] = distributedTraceCtx && distributedTraceCtx[_DYN_GET_TRACE_FLAGS /* @min:%2egetTraceFlags */]();\r\n ajaxData[_DYN_METHOD /* @min:%2emethod */] = method;\r\n ajaxData[_DYN_REQUEST_URL /* @min:%2erequestUrl */] = url;\r\n ajaxData.xhrMonitoringState[_DYN_OPEN_DONE /* @min:%2eopenDone */] = true;\r\n ajaxData[_DYN_REQUEST_HEADERS /* @min:%2erequestHeaders */] = {};\r\n ajaxData.async = async;\r\n ajaxData[_DYN_ERROR_STATUS_TEXT /* @min:%2eerrorStatusText */] = _enableAjaxErrorStatusText;\r\n return ajaxData;\r\n }\r\n function _attachToOnReadyStateChange(xhr, ajaxData) {\r\n ajaxData.xhrMonitoringState[_DYN_STATE_CHANGE_ATTACHE13 /* @min:%2estateChangeAttached */] = eventOn(xhr, \"readystatechange\", function () {\r\n var _a;\r\n try {\r\n if (xhr && xhr.readyState === 4 && _isMonitoredXhrInstance(xhr, ajaxData)) {\r\n _onAjaxComplete(xhr);\r\n }\r\n }\r\n catch (e) {\r\n var exceptionText = dumpObj(e);\r\n // ignore messages with c00c023f, as this a known IE9 XHR abort issue\r\n if (!exceptionText || _indexOf(exceptionText[_DYN_TO_LOWER_CASE /* @min:%2etoLowerCase */](), \"c00c023f\") === -1) {\r\n _throwInternalCritical(_self, 16 /* _eInternalMessageId.FailedMonitorAjaxRSC */, ERROR_HEADER + \" 'readystatechange' event handler\" + ERROR_POSTFIX, (_a = {},\r\n _a[_DYN_AJAX_DIAGNOSTICS_MES16 /* @min:ajaxDiagnosticsMessage */] = _getFailedAjaxDiagnosticsMessage(xhr, _ajaxDataId),\r\n _a[_DYN_EXCEPTION /* @min:exception */] = exceptionText,\r\n _a));\r\n }\r\n }\r\n }, _evtNamespace);\r\n }\r\n function _getResponseText(xhr) {\r\n try {\r\n var responseType = xhr.responseType;\r\n if (responseType === \"\" || responseType === \"text\") {\r\n // As per the specification responseText is only valid if the type is an empty string or \"text\"\r\n return xhr[_DYN_RESPONSE_TEXT /* @min:%2eresponseText */];\r\n }\r\n }\r\n catch (e) {\r\n // This shouldn't happen because of the above check -- but just in case, so just ignore\r\n }\r\n return null;\r\n }\r\n function _onAjaxComplete(xhr) {\r\n var ajaxData = _getAjaxData(xhr, _ajaxDataId);\r\n ajaxData[_DYN_RESPONSE_FINISHED_TI14 /* @min:%2eresponseFinishedTime */] = dateTimeUtilsNow();\r\n ajaxData[_DYN_STATUS /* @min:%2estatus */] = xhr[_DYN_STATUS /* @min:%2estatus */];\r\n function _reportXhrError(e, failedProps) {\r\n var errorProps = failedProps || {};\r\n errorProps[\"ajaxDiagnosticsMessage\"] = _getFailedAjaxDiagnosticsMessage(xhr, _ajaxDataId);\r\n if (e) {\r\n errorProps[\"exception\"] = dumpObj(e);\r\n }\r\n _throwInternalWarning(_self, 14 /* _eInternalMessageId.FailedMonitorAjaxDur */, FAILED_TO_CALCULATE_DURATION_ERROR + \"ajax call\" + ERROR_NOT_SENT, errorProps);\r\n }\r\n _findPerfResourceEntry(\"xmlhttprequest\", ajaxData, function () {\r\n try {\r\n var dependency = ajaxData[_DYN__CREATE_TRACK_ITEM /* @min:%2eCreateTrackItem */](\"Ajax\", _enableRequestHeaderTracking, function () {\r\n var _a;\r\n var ajaxResponse = (_a = {\r\n statusText: xhr[_DYN_STATUS_TEXT /* @min:%2estatusText */]\r\n },\r\n _a[_DYN_HEADER_MAP /* @min:headerMap */] = null,\r\n _a[_DYN_CORRELATION_CONTEXT /* @min:correlationContext */] = _getAjaxCorrelationContext(xhr),\r\n _a.type = xhr.responseType,\r\n _a[_DYN_RESPONSE_TEXT /* @min:responseText */] = _getResponseText(xhr),\r\n _a.response = xhr[_DYN_RESPONSE /* @min:%2eresponse */],\r\n _a);\r\n if (_enableResponseHeaderTracking) {\r\n var headers = xhr[_DYN_GET_ALL_RESPONSE_HEA15 /* @min:%2egetAllResponseHeaders */]();\r\n if (headers) {\r\n // xhr.getAllResponseHeaders() method returns all the response headers, separated by CRLF, as a string or null\r\n // the regex converts the header string into an array of individual headers\r\n var arr = strTrim(headers).split(/[\\r\\n]+/);\r\n var responseHeaderMap_2 = {};\r\n arrForEach(arr, function (line) {\r\n var parts = line.split(\": \");\r\n var header = parts.shift();\r\n var value = parts.join(\": \");\r\n if (_canIncludeHeaders(header)) {\r\n responseHeaderMap_2[header] = value;\r\n }\r\n });\r\n ajaxResponse[_DYN_HEADER_MAP /* @min:%2eheaderMap */] = responseHeaderMap_2;\r\n }\r\n }\r\n return ajaxResponse;\r\n });\r\n var properties = void 0;\r\n try {\r\n if (!!_addRequestContext) {\r\n properties = _addRequestContext({ status: xhr[_DYN_STATUS /* @min:%2estatus */], xhr: xhr });\r\n }\r\n }\r\n catch (e) {\r\n _throwInternalWarning(_self, 104 /* _eInternalMessageId.FailedAddingCustomDefinedRequestContext */, CUSTOM_REQUEST_CONTEXT_ERROR);\r\n }\r\n if (dependency) {\r\n if (properties !== undefined) {\r\n dependency[STR_PROPERTIES /* @min:%2eproperties */] = __assign(__assign({}, dependency.properties), properties);\r\n }\r\n var sysProperties = ajaxData[_DYN_GET_PART_APROPS /* @min:%2egetPartAProps */]();\r\n _reportDependencyInternal(_dependencyInitializers, _self[_DYN_CORE /* @min:%2ecore */], ajaxData, dependency, null, sysProperties);\r\n }\r\n else {\r\n _reportXhrError(null, {\r\n requestSentTime: ajaxData[_DYN_REQUEST_SENT_TIME /* @min:%2erequestSentTime */],\r\n responseFinishedTime: ajaxData[_DYN_RESPONSE_FINISHED_TI14 /* @min:%2eresponseFinishedTime */]\r\n });\r\n }\r\n }\r\n finally {\r\n // cleanup telemetry data\r\n try {\r\n var xhrRequestData = (xhr[AJAX_DATA_CONTAINER] || { i: {} });\r\n var ajaxDataCntr = (xhrRequestData.i || {});\r\n if (ajaxDataCntr[_ajaxDataId]) {\r\n ajaxDataCntr[_ajaxDataId] = null;\r\n }\r\n }\r\n catch (e) {\r\n // May throw in environments that prevent extension or freeze xhr\r\n }\r\n }\r\n }, function (e) {\r\n _reportXhrError(e, null);\r\n });\r\n }\r\n function _getAjaxCorrelationContext(xhr) {\r\n var _a;\r\n try {\r\n var responseHeadersString = xhr[_DYN_GET_ALL_RESPONSE_HEA15 /* @min:%2egetAllResponseHeaders */]();\r\n if (responseHeadersString !== null) {\r\n var index = _indexOf(responseHeadersString[_DYN_TO_LOWER_CASE /* @min:%2etoLowerCase */](), RequestHeaders[8 /* eRequestHeaders.requestContextHeaderLowerCase */]);\r\n if (index !== -1) {\r\n var responseHeader = xhr.getResponseHeader(RequestHeaders[0 /* eRequestHeaders.requestContextHeader */]);\r\n return correlationIdGetCorrelationContext(responseHeader);\r\n }\r\n }\r\n }\r\n catch (e) {\r\n _throwInternalWarning(_self, 18 /* _eInternalMessageId.FailedMonitorAjaxGetCorrelationHeader */, CORRELATION_HEADER_ERROR, (_a = {},\r\n _a[_DYN_AJAX_DIAGNOSTICS_MES16 /* @min:ajaxDiagnosticsMessage */] = _getFailedAjaxDiagnosticsMessage(xhr, _ajaxDataId),\r\n _a[_DYN_EXCEPTION /* @min:exception */] = dumpObj(e),\r\n _a));\r\n }\r\n }\r\n function _createMarkId(type, ajaxData) {\r\n if (ajaxData[_DYN_REQUEST_URL /* @min:%2erequestUrl */] && _markPrefix && _enableAjaxPerfTracking) {\r\n var performance_1 = getPerformance();\r\n if (performance_1 && isFunction(performance_1.mark)) {\r\n _markCount++;\r\n var markId = _markPrefix + type + \"#\" + _markCount;\r\n performance_1.mark(markId);\r\n var entries = performance_1.getEntriesByName(markId);\r\n if (entries && entries[_DYN_LENGTH /* @min:%2elength */] === 1) {\r\n ajaxData[_DYN_PERF_MARK /* @min:%2eperfMark */] = entries[0];\r\n }\r\n }\r\n }\r\n }\r\n function _findPerfResourceEntry(initiatorType, ajaxData, trackCallback, reportError) {\r\n var perfMark = ajaxData[_DYN_PERF_MARK /* @min:%2eperfMark */];\r\n var performance = getPerformance();\r\n var maxAttempts = _maxAjaxPerfLookupAttempts;\r\n var retryDelay = _ajaxPerfLookupDelay;\r\n var requestUrl = ajaxData[_DYN_REQUEST_URL /* @min:%2erequestUrl */];\r\n var attempt = 0;\r\n (function locateResourceTiming() {\r\n try {\r\n if (performance && perfMark) {\r\n attempt++;\r\n var perfTiming = null;\r\n var entries = performance.getEntries();\r\n for (var lp = entries[_DYN_LENGTH /* @min:%2elength */] - 1; lp >= 0; lp--) {\r\n var entry = entries[lp];\r\n if (entry) {\r\n if (entry.entryType === \"resource\") {\r\n if (entry.initiatorType === initiatorType &&\r\n (_indexOf(entry[_DYN_NAME /* @min:%2ename */], requestUrl) !== -1 || _indexOf(requestUrl, entry[_DYN_NAME /* @min:%2ename */]) !== -1)) {\r\n perfTiming = entry;\r\n }\r\n }\r\n else if (entry.entryType === \"mark\" && entry[_DYN_NAME /* @min:%2ename */] === perfMark[_DYN_NAME /* @min:%2ename */]) {\r\n // We hit the start event\r\n ajaxData[_DYN_PERF_TIMING /* @min:%2eperfTiming */] = perfTiming;\r\n break;\r\n }\r\n if (entry[_DYN_START_TIME /* @min:%2estartTime */] < perfMark[_DYN_START_TIME /* @min:%2estartTime */] - 1000) {\r\n // Fallback to try and reduce the time spent looking for the perf entry\r\n break;\r\n }\r\n }\r\n }\r\n }\r\n if (!perfMark || // - we don't have a perfMark or\r\n ajaxData[_DYN_PERF_TIMING /* @min:%2eperfTiming */] || // - we have not found the perf entry or\r\n attempt >= maxAttempts || // - we have tried too many attempts or\r\n ajaxData.async === false) { // - this is a sync request\r\n if (perfMark && isFunction(performance.clearMarks)) {\r\n // Remove the mark so we don't fill up the performance resources too much\r\n performance.clearMarks(perfMark[_DYN_NAME /* @min:%2ename */]);\r\n }\r\n ajaxData.perfAttempts = attempt;\r\n // just continue and report the track event\r\n trackCallback();\r\n }\r\n else {\r\n // We need to wait for the browser to populate the window.performance entry\r\n // This needs to be at least 1ms as waiting <= 1 (on firefox) is not enough time for fetch or xhr,\r\n // this is a scheduling issue for the browser implementation\r\n scheduleTimeout(locateResourceTiming, retryDelay);\r\n }\r\n }\r\n catch (e) {\r\n reportError(e);\r\n }\r\n })();\r\n }\r\n function _createFetchRecord(input, init) {\r\n var _a;\r\n var distributedTraceCtx = _getDistributedTraceCtx();\r\n var traceID = (distributedTraceCtx && distributedTraceCtx[_DYN_GET_TRACE_ID /* @min:%2egetTraceId */]()) || generateW3CId();\r\n var spanID = strSubstr(generateW3CId(), 0, 16);\r\n var ajaxData = new ajaxRecord(traceID, spanID, _self[strDiagLog](), (_a = _self.core) === null || _a === void 0 ? void 0 : _a.getTraceCtx());\r\n ajaxData[_DYN_TRACE_FLAGS /* @min:%2etraceFlags */] = distributedTraceCtx && distributedTraceCtx[_DYN_GET_TRACE_FLAGS /* @min:%2egetTraceFlags */]();\r\n ajaxData[_DYN_REQUEST_SENT_TIME /* @min:%2erequestSentTime */] = dateTimeUtilsNow();\r\n ajaxData[_DYN_ERROR_STATUS_TEXT /* @min:%2eerrorStatusText */] = _enableAjaxErrorStatusText;\r\n var requestUrl;\r\n if (input instanceof Request) {\r\n requestUrl = (input || {}).url || \"\";\r\n }\r\n else {\r\n requestUrl = input;\r\n }\r\n if (requestUrl === \"\") {\r\n var location_1 = getLocation();\r\n if (location_1 && location_1.href) {\r\n requestUrl = strSplit(location_1.href, \"#\")[0];\r\n }\r\n }\r\n ajaxData[_DYN_REQUEST_URL /* @min:%2erequestUrl */] = requestUrl;\r\n var method = \"GET\";\r\n if (init && init[_DYN_METHOD /* @min:%2emethod */]) {\r\n method = init[_DYN_METHOD /* @min:%2emethod */];\r\n }\r\n else if (input && input instanceof Request) {\r\n method = input[_DYN_METHOD /* @min:%2emethod */];\r\n }\r\n ajaxData[_DYN_METHOD /* @min:%2emethod */] = method;\r\n var requestHeaders = {};\r\n if (_enableRequestHeaderTracking) {\r\n var headers = new Headers((init ? init[_DYN_HEADERS /* @min:%2eheaders */] : 0) || (input instanceof Request ? (input[_DYN_HEADERS /* @min:%2eheaders */] || {}) : {}));\r\n headers.forEach(function (value, key) {\r\n if (_canIncludeHeaders(key)) {\r\n requestHeaders[key] = value;\r\n }\r\n });\r\n }\r\n ajaxData[_DYN_REQUEST_HEADERS /* @min:%2erequestHeaders */] = requestHeaders;\r\n _createMarkId(STR_FETCH, ajaxData);\r\n return ajaxData;\r\n }\r\n function _getFailedFetchDiagnosticsMessage(input) {\r\n var result = \"\";\r\n try {\r\n if (!isNullOrUndefined(input)) {\r\n if (typeof (input) === \"string\") {\r\n result += \"(url: '\".concat(input, \"')\");\r\n }\r\n else {\r\n result += \"(url: '\".concat(input.url, \"')\");\r\n }\r\n }\r\n }\r\n catch (e) {\r\n _throwInternalCritical(_self, 15 /* _eInternalMessageId.FailedMonitorAjaxOpen */, \"Failed to grab failed fetch diagnostics message\", { exception: dumpObj(e) });\r\n }\r\n return result;\r\n }\r\n function _reportFetchMetrics(callDetails, status, input, response, ajaxData, getResponse, properties) {\r\n if (!ajaxData) {\r\n return;\r\n }\r\n function _reportFetchError(msgId, e, failedProps) {\r\n var errorProps = failedProps || {};\r\n errorProps[\"fetchDiagnosticsMessage\"] = _getFailedFetchDiagnosticsMessage(input);\r\n if (e) {\r\n errorProps[\"exception\"] = dumpObj(e);\r\n }\r\n _throwInternalWarning(_self, msgId, FAILED_TO_CALCULATE_DURATION_ERROR + \"fetch call\" + ERROR_NOT_SENT, errorProps);\r\n }\r\n ajaxData[_DYN_RESPONSE_FINISHED_TI14 /* @min:%2eresponseFinishedTime */] = dateTimeUtilsNow();\r\n ajaxData[_DYN_STATUS /* @min:%2estatus */] = status;\r\n _findPerfResourceEntry(STR_FETCH, ajaxData, function () {\r\n var dependency = ajaxData[_DYN__CREATE_TRACK_ITEM /* @min:%2eCreateTrackItem */](\"Fetch\", _enableRequestHeaderTracking, getResponse);\r\n var properties;\r\n try {\r\n if (!!_addRequestContext) {\r\n properties = _addRequestContext({ status: status, request: input, response: response });\r\n }\r\n }\r\n catch (e) {\r\n _throwInternalWarning(_self, 104 /* _eInternalMessageId.FailedAddingCustomDefinedRequestContext */, CUSTOM_REQUEST_CONTEXT_ERROR);\r\n }\r\n if (dependency) {\r\n if (properties !== undefined) {\r\n dependency[STR_PROPERTIES /* @min:%2eproperties */] = __assign(__assign({}, dependency.properties), properties);\r\n }\r\n var sysProperties = ajaxData[_DYN_GET_PART_APROPS /* @min:%2egetPartAProps */]();\r\n _reportDependencyInternal(_dependencyInitializers, _self[_DYN_CORE /* @min:%2ecore */], ajaxData, dependency, null, sysProperties);\r\n }\r\n else {\r\n _reportFetchError(14 /* _eInternalMessageId.FailedMonitorAjaxDur */, null, {\r\n requestSentTime: ajaxData[_DYN_REQUEST_SENT_TIME /* @min:%2erequestSentTime */],\r\n responseFinishedTime: ajaxData[_DYN_RESPONSE_FINISHED_TI14 /* @min:%2eresponseFinishedTime */]\r\n });\r\n }\r\n }, function (e) {\r\n _reportFetchError(18 /* _eInternalMessageId.FailedMonitorAjaxGetCorrelationHeader */, e, null);\r\n });\r\n }\r\n function _getFetchCorrelationContext(response) {\r\n var _a;\r\n if (response && response[_DYN_HEADERS /* @min:%2eheaders */]) {\r\n try {\r\n var responseHeader = response[_DYN_HEADERS /* @min:%2eheaders */].get(RequestHeaders[0 /* eRequestHeaders.requestContextHeader */]);\r\n return correlationIdGetCorrelationContext(responseHeader);\r\n }\r\n catch (e) {\r\n _throwInternalWarning(_self, 18 /* _eInternalMessageId.FailedMonitorAjaxGetCorrelationHeader */, CORRELATION_HEADER_ERROR, (_a = {\r\n fetchDiagnosticsMessage: _getFailedFetchDiagnosticsMessage(response)\r\n },\r\n _a[_DYN_EXCEPTION /* @min:exception */] = dumpObj(e),\r\n _a));\r\n }\r\n }\r\n }\r\n function _reportDependencyInternal(initializers, core, ajaxData, dependency, properties, systemProperties) {\r\n var _a;\r\n var result = true;\r\n var initializersCount = initializers[_DYN_LENGTH /* @min:%2elength */];\r\n if (initializersCount > 0) {\r\n var details = (_a = {\r\n item: dependency\r\n },\r\n _a[STR_PROPERTIES /* @min:properties */] = properties,\r\n _a.sysProperties = systemProperties,\r\n _a.context = ajaxData ? ajaxData[_DYN_CONTEXT /* @min:%2econtext */] : null,\r\n _a.aborted = ajaxData ? !!ajaxData[_DYN_ABORTED /* @min:%2eaborted */] : false,\r\n _a);\r\n result = _processDependencyContainer(core, initializers, details, \"initializer\");\r\n }\r\n if (result) {\r\n _self[_DYN_TRACK_DEPENDENCY_DAT3 /* @min:%2etrackDependencyDataInternal */](dependency, properties, systemProperties);\r\n }\r\n }\r\n });\r\n return _this;\r\n }\r\n AjaxMonitor.prototype.initialize = function (config, core, extensions, pluginChain) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n AjaxMonitor.prototype.processTelemetry = function (item, itemCtx) {\r\n this.processNext(item, itemCtx);\r\n };\r\n /**\r\n * Logs dependency call\r\n * @param dependencyData - dependency data object\r\n */\r\n AjaxMonitor.prototype.trackDependencyData = function (dependency, properties) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n AjaxMonitor.prototype.includeCorrelationHeaders = function (ajaxData, input, init, xhr) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n /**\r\n * Add an ajax listener which is called just prior to the request being sent and before the correlation headers are added, to allow you\r\n * to access the headers and modify the values used to generate the distributed tracing correlation headers.\r\n * @param dependencyListener - The Telemetry Initializer function\r\n * @returns - A IDependencyListenerHandler to enable the initializer to be removed\r\n */\r\n AjaxMonitor.prototype.addDependencyListener = function (dependencyListener) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n return null;\r\n };\r\n /**\r\n * Add an dependency telemetry initializer callback function to allow populating additional properties or drop the request.\r\n * It is called after the dependency call has completed and any available performance details are available. A dependency\r\n * initializer is similar to the TelemetryInitializer function but it allows you to block the reporting of the dependency\r\n * request so that it doesn't count against the `maxAjaxCallsPerView`.\r\n * @param dependencyInitializer - The Dependency Telemetry Initializer function\r\n * @returns - A IDependencyInitializerHandler to enable the initializer to be removed\r\n */\r\n AjaxMonitor.prototype.addDependencyInitializer = function (dependencyInitializer) {\r\n return null;\r\n };\r\n /**\r\n * Protected function to allow sub classes the chance to add additional properties to the dependency event\r\n * before it's sent. This function calls track, so sub-classes must call this function after they have\r\n * populated their properties.\r\n * @param dependencyData - dependency data object\r\n */\r\n AjaxMonitor.prototype.trackDependencyDataInternal = function (dependency, properties, systemProperties) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n AjaxMonitor.identifier = \"AjaxDependencyPlugin\";\r\n return AjaxMonitor;\r\n}(BaseTelemetryPlugin));\r\nexport { AjaxMonitor };\r\n//# sourceMappingURL=ajax.js.map","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\nvar Application = /** @class */ (function () {\r\n function Application() {\r\n }\r\n return Application;\r\n}());\r\nexport { Application };\r\n//# sourceMappingURL=Application.js.map","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\nvar Device = /** @class */ (function () {\r\n /**\r\n * Constructs a new instance of the Device class\r\n */\r\n function Device() {\r\n // don't attempt to fingerprint browsers\r\n this.id = \"browser\";\r\n // Device type is a dimension in our data platform\r\n // Setting it to 'Browser' allows to separate client and server dependencies/exceptions\r\n this.deviceClass = \"Browser\";\r\n }\r\n return Device;\r\n}());\r\nexport { Device };\r\n//# sourceMappingURL=Device.js.map","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\nimport { onConfigChange } from \"@microsoft/applicationinsights-core-js\";\r\nvar Version = '3.3.5';\r\nvar Internal = /** @class */ (function () {\r\n /**\r\n * Constructs a new instance of the internal telemetry data class.\r\n */\r\n function Internal(config, unloadHookContainer) {\r\n var _this = this;\r\n var unloadHook = onConfigChange((config), function () {\r\n var prefix = config.sdkExtension;\r\n _this.sdkVersion = (prefix ? prefix + \"_\" : \"\") + \"javascript:\" + Version;\r\n });\r\n unloadHookContainer && unloadHookContainer.add(unloadHook);\r\n }\r\n return Internal;\r\n}());\r\nexport { Internal };\r\n//# sourceMappingURL=Internal.js.map","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\nvar Location = /** @class */ (function () {\r\n function Location() {\r\n }\r\n return Location;\r\n}());\r\nexport { Location };\r\n//# sourceMappingURL=Location.js.map","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\n// @skip-file-minify\r\n// ##############################################################\r\n// AUTO GENERATED FILE: This file is Auto Generated during build.\r\n// ##############################################################\r\n// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\r\n// Note: DON'T Export these const from the package as we are still targeting ES3 this will export a mutable variables that someone could change!!!\r\n// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\r\nexport var _DYN_SESSION_MANAGER = \"sessionManager\"; // Count: 3\r\nexport var _DYN_UPDATE = \"update\"; // Count: 4\r\nexport var _DYN_IS_USER_COOKIE_SET = \"isUserCookieSet\"; // Count: 4\r\nexport var _DYN_IS_NEW_USER = \"isNewUser\"; // Count: 4\r\nexport var _DYN_GET_TRACE_CTX = \"getTraceCtx\"; // Count: 3\r\nexport var _DYN_TELEMETRY_TRACE = \"telemetryTrace\"; // Count: 3\r\nexport var _DYN_APPLY_SESSION_CONTEX0 = \"applySessionContext\"; // Count: 2\r\nexport var _DYN_APPLY_APPLICATION_CO1 = \"applyApplicationContext\"; // Count: 2\r\nexport var _DYN_APPLY_DEVICE_CONTEXT = \"applyDeviceContext\"; // Count: 2\r\nexport var _DYN_APPLY_OPERATION_CONT2 = \"applyOperationContext\"; // Count: 2\r\nexport var _DYN_APPLY_USER_CONTEXT = \"applyUserContext\"; // Count: 2\r\nexport var _DYN_APPLY_OPERATING_SYST3 = \"applyOperatingSystemContxt\"; // Count: 2\r\nexport var _DYN_APPLY_LOCATION_CONTE4 = \"applyLocationContext\"; // Count: 2\r\nexport var _DYN_APPLY_INTERNAL_CONTE5 = \"applyInternalContext\"; // Count: 2\r\nexport var _DYN_ACCOUNT_ID = \"accountId\"; // Count: 7\r\nexport var _DYN_GET_SESSION_ID = \"getSessionId\"; // Count: 4\r\nexport var _DYN_NAME_PREFIX = \"namePrefix\"; // Count: 3\r\nexport var _DYN_SESSION_COOKIE_POSTF6 = \"sessionCookiePostfix\"; // Count: 2\r\nexport var _DYN_USER_COOKIE_POSTFIX = \"userCookiePostfix\"; // Count: 2\r\nexport var _DYN_ID_LENGTH = \"idLength\"; // Count: 4\r\nexport var _DYN_GET_NEW_ID = \"getNewId\"; // Count: 3\r\nexport var _DYN_LENGTH = \"length\"; // Count: 4\r\nexport var _DYN_AUTOMATIC_SESSION = \"automaticSession\"; // Count: 5\r\nexport var _DYN_AUTHENTICATED_ID = \"authenticatedId\"; // Count: 6\r\nexport var _DYN_ACQUISITION_DATE = \"acquisitionDate\"; // Count: 5\r\nexport var _DYN_RENEWAL_DATE = \"renewalDate\"; // Count: 4\r\nexport var _DYN_JOIN = \"join\"; // Count: 5\r\nexport var _DYN_COOKIE_SEPARATOR = \"cookieSeparator\"; // Count: 5\r\nexport var _DYN_AUTH_USER_COOKIE_NAM7 = \"authUserCookieName\"; // Count: 3\r\n//# sourceMappingURL=__DynamicConstants.js.map","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\nimport dynamicProto from \"@microsoft/dynamicproto-js\";\r\nimport { utlCanUseLocalStorage, utlGetLocalStorage, utlSetLocalStorage } from \"@microsoft/applicationinsights-common\";\r\nimport { _throwInternal, dateNow, dumpObj, getExceptionName, isFunction, newId, onConfigChange, safeGetCookieMgr, safeGetLogger } from \"@microsoft/applicationinsights-core-js\";\r\nimport { _DYN_ACQUISITION_DATE, _DYN_AUTOMATIC_SESSION, _DYN_GET_NEW_ID, _DYN_ID_LENGTH, _DYN_JOIN, _DYN_LENGTH, _DYN_NAME_PREFIX, _DYN_RENEWAL_DATE, _DYN_UPDATE } from \"../__DynamicConstants\";\r\nvar SESSION_COOKIE_NAME = \"ai_session\";\r\nvar ACQUISITION_SPAN = 86400000; // 24 hours in ms\r\nvar RENEWAL_SPAN = 1800000; // 30 minutes in ms\r\nvar COOKIE_UPDATE_INTERVAL = 60000; // 1 minute in ms\r\nvar Session = /** @class */ (function () {\r\n function Session() {\r\n }\r\n return Session;\r\n}());\r\nexport { Session };\r\nvar _SessionManager = /** @class */ (function () {\r\n function _SessionManager(config, core, unloadHookContainer) {\r\n var self = this;\r\n var _storageNamePrefix;\r\n var _cookieUpdatedTimestamp;\r\n var _logger = safeGetLogger(core);\r\n var _cookieManager = safeGetCookieMgr(core);\r\n var _sessionExpirationMs;\r\n var _sessionRenewalMs;\r\n dynamicProto(_SessionManager, self, function (_self) {\r\n if (!config) {\r\n config = {};\r\n }\r\n var unloadHook = onConfigChange(config, function (details) {\r\n _sessionExpirationMs = config.sessionExpirationMs || ACQUISITION_SPAN;\r\n _sessionRenewalMs = config.sessionRenewalMs || RENEWAL_SPAN;\r\n // sessionCookiePostfix takes the preference if it is configured, otherwise takes namePrefix if configured.\r\n var sessionCookiePostfix = config.sessionCookiePostfix || config[_DYN_NAME_PREFIX /* @min:%2enamePrefix */] || \"\";\r\n _storageNamePrefix = SESSION_COOKIE_NAME + sessionCookiePostfix;\r\n });\r\n unloadHookContainer && unloadHookContainer.add(unloadHook);\r\n _self[_DYN_AUTOMATIC_SESSION /* @min:%2eautomaticSession */] = new Session();\r\n _self[_DYN_UPDATE /* @min:%2eupdate */] = function () {\r\n // Always using Date getTime() as there is a bug in older IE instances that causes the performance timings to have the hi-bit set eg 0x800000000 causing\r\n // the number to be incorrect.\r\n var nowMs = dateNow();\r\n var isExpired = false;\r\n var session = _self[_DYN_AUTOMATIC_SESSION /* @min:%2eautomaticSession */];\r\n if (!session.id) {\r\n isExpired = !_initializeAutomaticSession(session, nowMs);\r\n }\r\n if (!isExpired && _sessionExpirationMs > 0) {\r\n var timeSinceAcqMs = nowMs - session[_DYN_ACQUISITION_DATE /* @min:%2eacquisitionDate */];\r\n var timeSinceRenewalMs = nowMs - session[_DYN_RENEWAL_DATE /* @min:%2erenewalDate */];\r\n isExpired = timeSinceAcqMs < 0 || timeSinceRenewalMs < 0; // expired if the acquisition or last renewal are in the future\r\n isExpired = isExpired || timeSinceAcqMs > _sessionExpirationMs; // expired if the time since acquisition is more than session Expiration\r\n isExpired = isExpired || timeSinceRenewalMs > _sessionRenewalMs; // expired if the time since last renewal is more than renewal period\r\n }\r\n // renew if acquisitionSpan or renewalSpan has elapsed\r\n if (isExpired) {\r\n // update automaticSession so session state has correct id\r\n _renew(nowMs);\r\n }\r\n else {\r\n // do not update the cookie more often than cookieUpdateInterval\r\n if (!_cookieUpdatedTimestamp || nowMs - _cookieUpdatedTimestamp > COOKIE_UPDATE_INTERVAL) {\r\n _setCookie(session, nowMs);\r\n }\r\n }\r\n };\r\n /**\r\n * Record the current state of the automatic session and store it in our cookie string format\r\n * into the browser's local storage. This is used to restore the session data when the cookie\r\n * expires.\r\n */\r\n _self.backup = function () {\r\n var session = _self[_DYN_AUTOMATIC_SESSION /* @min:%2eautomaticSession */];\r\n _setStorage(session.id, session[_DYN_ACQUISITION_DATE /* @min:%2eacquisitionDate */], session[_DYN_RENEWAL_DATE /* @min:%2erenewalDate */]);\r\n };\r\n /**\r\n * Use config.namePrefix + ai_session cookie data or local storage data (when the cookie is unavailable) to\r\n * initialize the automatic session.\r\n * @returns true if values set otherwise false\r\n */\r\n function _initializeAutomaticSession(session, now) {\r\n var isValid = false;\r\n var cookieValue = _cookieManager.get(_storageNamePrefix);\r\n if (cookieValue && isFunction(cookieValue.split)) {\r\n isValid = _initializeAutomaticSessionWithData(session, cookieValue);\r\n }\r\n else {\r\n // There's no cookie, but we might have session data in local storage\r\n // This can happen if the session expired or the user actively deleted the cookie\r\n // We only want to recover data if the cookie is missing from expiry. We should respect the user's wishes if the cookie was deleted actively.\r\n // The User class handles this for us and deletes our local storage object if the persistent user cookie was removed.\r\n var storageValue = utlGetLocalStorage(_logger, _storageNamePrefix);\r\n if (storageValue) {\r\n isValid = _initializeAutomaticSessionWithData(session, storageValue);\r\n }\r\n }\r\n return isValid || !!session.id;\r\n }\r\n /**\r\n * Extract id, acquisitionDate, and renewalDate from an ai_session payload string and\r\n * use this data to initialize automaticSession.\r\n *\r\n * @param sessionData - The string stored in an ai_session cookie or local storage backup\r\n * @returns true if values set otherwise false\r\n */\r\n function _initializeAutomaticSessionWithData(session, sessionData) {\r\n var isValid = false;\r\n var sessionReset = \", session will be reset\";\r\n var tokens = sessionData.split(\"|\");\r\n if (tokens[_DYN_LENGTH /* @min:%2elength */] >= 2) {\r\n try {\r\n var acqMs = +tokens[1] || 0;\r\n var renewalMs = +tokens[2] || 0;\r\n if (isNaN(acqMs) || acqMs <= 0) {\r\n _throwInternal(_logger, 2 /* eLoggingSeverity.WARNING */, 27 /* _eInternalMessageId.SessionRenewalDateIsZero */, \"AI session acquisition date is 0\" + sessionReset);\r\n }\r\n else if (isNaN(renewalMs) || renewalMs <= 0) {\r\n _throwInternal(_logger, 2 /* eLoggingSeverity.WARNING */, 27 /* _eInternalMessageId.SessionRenewalDateIsZero */, \"AI session renewal date is 0\" + sessionReset);\r\n }\r\n else if (tokens[0]) {\r\n // Everything looks valid so set the values\r\n session.id = tokens[0];\r\n session[_DYN_ACQUISITION_DATE /* @min:%2eacquisitionDate */] = acqMs;\r\n session[_DYN_RENEWAL_DATE /* @min:%2erenewalDate */] = renewalMs;\r\n isValid = true;\r\n }\r\n }\r\n catch (e) {\r\n _throwInternal(_logger, 1 /* eLoggingSeverity.CRITICAL */, 9 /* _eInternalMessageId.ErrorParsingAISessionCookie */, \"Error parsing ai_session value [\" + (sessionData || \"\") + \"]\" + sessionReset + \" - \" + getExceptionName(e), { exception: dumpObj(e) });\r\n }\r\n }\r\n return isValid;\r\n }\r\n function _renew(nowMs) {\r\n var getNewId = config[_DYN_GET_NEW_ID /* @min:%2egetNewId */] || newId;\r\n _self.automaticSession.id = getNewId(config[_DYN_ID_LENGTH /* @min:%2eidLength */] || 22);\r\n _self[_DYN_AUTOMATIC_SESSION /* @min:%2eautomaticSession */][_DYN_ACQUISITION_DATE /* @min:%2eacquisitionDate */] = nowMs;\r\n _setCookie(_self[_DYN_AUTOMATIC_SESSION /* @min:%2eautomaticSession */], nowMs);\r\n // If this browser does not support local storage, fire an internal log to keep track of it at this point\r\n if (!utlCanUseLocalStorage()) {\r\n _throwInternal(_logger, 2 /* eLoggingSeverity.WARNING */, 0 /* _eInternalMessageId.BrowserDoesNotSupportLocalStorage */, \"Browser does not support local storage. Session durations will be inaccurate.\");\r\n }\r\n }\r\n function _setCookie(session, nowMs) {\r\n var acq = session[_DYN_ACQUISITION_DATE /* @min:%2eacquisitionDate */];\r\n session[_DYN_RENEWAL_DATE /* @min:%2erenewalDate */] = nowMs;\r\n var renewalPeriodMs = _sessionRenewalMs;\r\n // Set cookie to expire after the session expiry time passes or the session renewal deadline, whichever is sooner\r\n // Expiring the cookie will cause the session to expire even if the user isn't on the page\r\n var acqTimeLeftMs = (acq + _sessionExpirationMs) - nowMs;\r\n var cookie = [session.id, acq, nowMs];\r\n var maxAgeSec = 0;\r\n if (acqTimeLeftMs < renewalPeriodMs) {\r\n maxAgeSec = acqTimeLeftMs / 1000;\r\n }\r\n else {\r\n maxAgeSec = renewalPeriodMs / 1000;\r\n }\r\n var cookieDomain = config.cookieDomain || null;\r\n // if sessionExpirationMs is set to 0, it means the expiry is set to 0 for this session cookie\r\n // A cookie with 0 expiry in the session cookie will never expire for that browser session. If the browser is closed the cookie expires.\r\n // Depending on the browser, another instance does not inherit this cookie, however, another tab will\r\n _cookieManager.set(_storageNamePrefix, cookie[_DYN_JOIN /* @min:%2ejoin */](\"|\"), _sessionExpirationMs > 0 ? maxAgeSec : null, cookieDomain);\r\n _cookieUpdatedTimestamp = nowMs;\r\n }\r\n function _setStorage(guid, acq, renewal) {\r\n // Keep data in local storage to retain the last session id, allowing us to cleanly end the session when it expires\r\n // Browsers that don't support local storage won't be able to end sessions cleanly from the client\r\n // The server will notice this and end the sessions itself, with loss of accurate session duration\r\n utlSetLocalStorage(_logger, _storageNamePrefix, [guid, acq, renewal][_DYN_JOIN /* @min:%2ejoin */](\"|\"));\r\n }\r\n });\r\n }\r\n _SessionManager.prototype.update = function () {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n /**\r\n * Record the current state of the automatic session and store it in our cookie string format\r\n * into the browser's local storage. This is used to restore the session data when the cookie\r\n * expires.\r\n */\r\n _SessionManager.prototype.backup = function () {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n return _SessionManager;\r\n}());\r\nexport { _SessionManager };\r\n//# sourceMappingURL=Session.js.map","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\nimport { dataSanitizeString } from \"@microsoft/applicationinsights-common\";\r\nimport { generateW3CId, getLocation } from \"@microsoft/applicationinsights-core-js\";\r\nvar TelemetryTrace = /** @class */ (function () {\r\n function TelemetryTrace(id, parentId, name, logger) {\r\n var _self = this;\r\n _self.traceID = id || generateW3CId();\r\n _self.parentID = parentId;\r\n var location = getLocation();\r\n if (!name && location && location.pathname) {\r\n name = location.pathname;\r\n }\r\n _self.name = dataSanitizeString(logger, name);\r\n }\r\n return TelemetryTrace;\r\n}());\r\nexport { TelemetryTrace };\r\n//# sourceMappingURL=TelemetryTrace.js.map","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\nimport dynamicProto from \"@microsoft/dynamicproto-js\";\r\nimport { utlRemoveStorage } from \"@microsoft/applicationinsights-common\";\r\nimport { _throwInternal, newId, onConfigChange, safeGetCookieMgr, safeGetLogger, toISOString } from \"@microsoft/applicationinsights-core-js\";\r\nimport { objDefine } from \"@nevware21/ts-utils\";\r\nimport { _DYN_ACCOUNT_ID, _DYN_AUTHENTICATED_ID, _DYN_AUTH_USER_COOKIE_NAM7, _DYN_COOKIE_SEPARATOR, _DYN_GET_NEW_ID, _DYN_ID_LENGTH, _DYN_IS_NEW_USER, _DYN_IS_USER_COOKIE_SET, _DYN_JOIN, _DYN_LENGTH, _DYN_NAME_PREFIX, _DYN_UPDATE, _DYN_USER_COOKIE_POSTFIX } from \"../__DynamicConstants\";\r\nfunction _validateUserInput(id) {\r\n // Validate:\r\n // 1. Id is a non-empty string.\r\n // 2. It does not contain special characters for cookies.\r\n if (typeof id !== \"string\" ||\r\n !id ||\r\n id.match(/,|;|=| |\\|/)) {\r\n return false;\r\n }\r\n return true;\r\n}\r\nvar User = /** @class */ (function () {\r\n function User(config, core, unloadHookContainer) {\r\n /**\r\n * A flag indicating whether this represents a new user\r\n */\r\n this.isNewUser = false;\r\n /**\r\n * A flag indicating whether the user cookie has been set\r\n */\r\n this.isUserCookieSet = false;\r\n var _logger = safeGetLogger(core);\r\n var _cookieManager = safeGetCookieMgr(core);\r\n var _storageNamePrefix;\r\n dynamicProto(User, this, function (_self) {\r\n // Define _self.config\r\n objDefine(_self, \"config\", {\r\n g: function () { return config; }\r\n });\r\n var unloadHook = onConfigChange(config, function () {\r\n var userCookiePostfix = config[_DYN_USER_COOKIE_POSTFIX /* @min:%2euserCookiePostfix */] || \"\";\r\n _storageNamePrefix = User.userCookieName + userCookiePostfix;\r\n // get userId or create new one if none exists\r\n var cookie = _cookieManager.get(_storageNamePrefix);\r\n if (cookie) {\r\n _self[_DYN_IS_NEW_USER /* @min:%2eisNewUser */] = false;\r\n var params = cookie.split(User[_DYN_COOKIE_SEPARATOR /* @min:%2ecookieSeparator */]);\r\n if (params[_DYN_LENGTH /* @min:%2elength */] > 0) {\r\n _self.id = params[0];\r\n // we already have a cookie\r\n _self[_DYN_IS_USER_COOKIE_SET /* @min:%2eisUserCookieSet */] = !!_self.id;\r\n }\r\n }\r\n if (!_self.id) {\r\n _self.id = _generateNewId();\r\n var newCookie = _generateNewCookie(_self.id);\r\n _setUserCookie(newCookie[_DYN_JOIN /* @min:%2ejoin */](User[_DYN_COOKIE_SEPARATOR /* @min:%2ecookieSeparator */]));\r\n // If we have an config.namePrefix() + ai_session in local storage this means the user actively removed our cookies.\r\n // We should respect their wishes and clear ourselves from local storage\r\n var name_1 = (config[_DYN_NAME_PREFIX /* @min:%2enamePrefix */] || \"\") + \"ai_session\";\r\n utlRemoveStorage(_logger, name_1);\r\n }\r\n // We still take the account id from the ctor param for backward compatibility.\r\n // But if the the customer set the accountId through the newer setAuthenticatedUserContext API, we will override it.\r\n _self[_DYN_ACCOUNT_ID /* @min:%2eaccountId */] = config[_DYN_ACCOUNT_ID /* @min:%2eaccountId */] || undefined;\r\n // Get the auth user id and account id from the cookie if exists\r\n // Cookie is in the pattern: |\r\n var authCookie = _cookieManager.get(User[_DYN_AUTH_USER_COOKIE_NAM7 /* @min:%2eauthUserCookieName */]);\r\n if (authCookie) {\r\n authCookie = decodeURI(authCookie);\r\n var authCookieString = authCookie.split(User[_DYN_COOKIE_SEPARATOR /* @min:%2ecookieSeparator */]);\r\n if (authCookieString[0]) {\r\n _self[_DYN_AUTHENTICATED_ID /* @min:%2eauthenticatedId */] = authCookieString[0];\r\n }\r\n if (authCookieString[_DYN_LENGTH /* @min:%2elength */] > 1 && authCookieString[1]) {\r\n _self[_DYN_ACCOUNT_ID /* @min:%2eaccountId */] = authCookieString[1];\r\n }\r\n }\r\n });\r\n unloadHookContainer && unloadHookContainer.add(unloadHook);\r\n function _generateNewId() {\r\n var theConfig = (config || {});\r\n var getNewId = theConfig[_DYN_GET_NEW_ID /* @min:%2egetNewId */] || newId;\r\n var id = getNewId(theConfig[_DYN_ID_LENGTH /* @min:%2eidLength */] ? config[_DYN_ID_LENGTH /* @min:%2eidLength */] : 22);\r\n return id;\r\n }\r\n function _generateNewCookie(userId) {\r\n var acqStr = toISOString(new Date());\r\n _self.accountAcquisitionDate = acqStr;\r\n _self[_DYN_IS_NEW_USER /* @min:%2eisNewUser */] = true;\r\n var newCookie = [userId, acqStr];\r\n return newCookie;\r\n }\r\n function _setUserCookie(cookie) {\r\n // without expiration, cookies expire at the end of the session\r\n // set it to 365 days from now\r\n // 365 * 24 * 60 * 60 = 31536000\r\n var oneYear = 31536000;\r\n _self[_DYN_IS_USER_COOKIE_SET /* @min:%2eisUserCookieSet */] = _cookieManager.set(_storageNamePrefix, cookie, oneYear);\r\n }\r\n _self.setAuthenticatedUserContext = function (authenticatedUserId, accountId, storeInCookie) {\r\n if (storeInCookie === void 0) { storeInCookie = false; }\r\n // Validate inputs to ensure no cookie control characters.\r\n var isInvalidInput = !_validateUserInput(authenticatedUserId) || (accountId && !_validateUserInput(accountId));\r\n if (isInvalidInput) {\r\n _throwInternal(_logger, 2 /* eLoggingSeverity.WARNING */, 60 /* _eInternalMessageId.SetAuthContextFailedAccountName */, \"Setting auth user context failed. \" +\r\n \"User auth/account id should be of type string, and not contain commas, semi-colons, equal signs, spaces, or vertical-bars.\", true);\r\n return;\r\n }\r\n // Create cookie string.\r\n _self[_DYN_AUTHENTICATED_ID /* @min:%2eauthenticatedId */] = authenticatedUserId;\r\n var authCookie = _self[_DYN_AUTHENTICATED_ID /* @min:%2eauthenticatedId */];\r\n if (accountId) {\r\n _self[_DYN_ACCOUNT_ID /* @min:%2eaccountId */] = accountId;\r\n authCookie = [_self[_DYN_AUTHENTICATED_ID /* @min:%2eauthenticatedId */], _self.accountId][_DYN_JOIN /* @min:%2ejoin */](User[_DYN_COOKIE_SEPARATOR /* @min:%2ecookieSeparator */]);\r\n }\r\n if (storeInCookie) {\r\n // Set the cookie. No expiration date because this is a session cookie (expires when browser closed).\r\n // Encoding the cookie to handle unexpected unicode characters.\r\n _cookieManager.set(User[_DYN_AUTH_USER_COOKIE_NAM7 /* @min:%2eauthUserCookieName */], encodeURI(authCookie));\r\n }\r\n };\r\n /**\r\n * Clears the authenticated user id and the account id from the user context.\r\n * @returns {}\r\n */\r\n _self.clearAuthenticatedUserContext = function () {\r\n _self[_DYN_AUTHENTICATED_ID /* @min:%2eauthenticatedId */] = null;\r\n _self[_DYN_ACCOUNT_ID /* @min:%2eaccountId */] = null;\r\n _cookieManager.del(User[_DYN_AUTH_USER_COOKIE_NAM7 /* @min:%2eauthUserCookieName */]);\r\n };\r\n _self[_DYN_UPDATE /* @min:%2eupdate */] = function (userId) {\r\n // Optimizations to avoid setting and processing the cookie when not needed\r\n if (_self.id !== userId || !_self[_DYN_IS_USER_COOKIE_SET /* @min:%2eisUserCookieSet */]) {\r\n var user_id = userId ? userId : _generateNewId();\r\n var user_cookie = _generateNewCookie(user_id);\r\n _setUserCookie(user_cookie[_DYN_JOIN /* @min:%2ejoin */](User[_DYN_COOKIE_SEPARATOR /* @min:%2ecookieSeparator */]));\r\n }\r\n };\r\n });\r\n }\r\n /**\r\n * Sets the authenticated user id and the account id in this session.\r\n *\r\n * @param authenticatedUserId - The authenticated user id. A unique and persistent string that represents each authenticated user in the service.\r\n * @param accountId - An optional string to represent the account associated with the authenticated user.\r\n */\r\n User.prototype.setAuthenticatedUserContext = function (authenticatedUserId, accountId, storeInCookie) {\r\n if (storeInCookie === void 0) { storeInCookie = false; }\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n /**\r\n * Clears the authenticated user id and the account id from the user context.\r\n * @returns {}\r\n */\r\n User.prototype.clearAuthenticatedUserContext = function () {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n /**\r\n * Update or create the user cookie if cookies where previously disabled or the new userId does not match the existing value.\r\n * If you pass nothing a new random user id will be created.\r\n * @param userId - Specific either the current (via appInsights.context.user.id) or new id that you want to set\r\n */\r\n User.prototype.update = function (userId) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n User.cookieSeparator = \"|\";\r\n User.userCookieName = \"ai_user\";\r\n User.authUserCookieName = \"ai_authUser\";\r\n return User;\r\n}());\r\nexport { User };\r\n//# sourceMappingURL=User.js.map","/**\r\n* TelemetryContext.ts\r\n* @copyright Microsoft 2018\r\n*/\r\nimport dynamicProto from \"@microsoft/dynamicproto-js\";\r\nimport { CtxTagKeys, Extensions, PageView, dataSanitizeString } from \"@microsoft/applicationinsights-common\";\r\nimport { _InternalLogMessage, getSetValue, hasWindow, isNullOrUndefined, isString, objKeys, setValue } from \"@microsoft/applicationinsights-core-js\";\r\nimport { Application } from \"./Context/Application\";\r\nimport { Device } from \"./Context/Device\";\r\nimport { Internal } from \"./Context/Internal\";\r\nimport { Location } from \"./Context/Location\";\r\nimport { Session, _SessionManager } from \"./Context/Session\";\r\nimport { TelemetryTrace } from \"./Context/TelemetryTrace\";\r\nimport { User } from \"./Context/User\";\r\nimport { _DYN_ACCOUNT_ID, _DYN_APPLY_APPLICATION_CO1, _DYN_APPLY_DEVICE_CONTEXT, _DYN_APPLY_INTERNAL_CONTE5, _DYN_APPLY_LOCATION_CONTE4, _DYN_APPLY_OPERATING_SYST3, _DYN_APPLY_OPERATION_CONT2, _DYN_APPLY_SESSION_CONTEX0, _DYN_APPLY_USER_CONTEXT, _DYN_AUTHENTICATED_ID, _DYN_AUTOMATIC_SESSION, _DYN_GET_SESSION_ID, _DYN_LENGTH, _DYN_SESSION_MANAGER, _DYN_TELEMETRY_TRACE } from \"./__DynamicConstants\";\r\nvar strExt = \"ext\";\r\nvar strTags = \"tags\";\r\nfunction _removeEmpty(target, name) {\r\n if (target && target[name] && objKeys(target[name])[_DYN_LENGTH /* @min:%2elength */] === 0) {\r\n delete target[name];\r\n }\r\n}\r\nfunction _nullResult() {\r\n return null;\r\n}\r\nvar TelemetryContext = /** @class */ (function () {\r\n function TelemetryContext(core, defaultConfig, previousTraceCtx, unloadHookContainer) {\r\n var _this = this;\r\n var logger = core.logger;\r\n dynamicProto(TelemetryContext, this, function (_self) {\r\n _self.appId = _nullResult;\r\n _self[_DYN_GET_SESSION_ID /* @min:%2egetSessionId */] = _nullResult;\r\n _self.application = new Application();\r\n _self.internal = new Internal(defaultConfig, unloadHookContainer);\r\n if (hasWindow()) {\r\n _self[_DYN_SESSION_MANAGER /* @min:%2esessionManager */] = new _SessionManager(defaultConfig, core, unloadHookContainer);\r\n _self.device = new Device();\r\n _self.location = new Location();\r\n _self.user = new User(defaultConfig, core, unloadHookContainer);\r\n var traceId = void 0;\r\n var parentId = void 0;\r\n var name_1;\r\n if (previousTraceCtx) {\r\n traceId = previousTraceCtx.getTraceId();\r\n parentId = previousTraceCtx.getSpanId();\r\n name_1 = previousTraceCtx.getName();\r\n }\r\n _self[_DYN_TELEMETRY_TRACE /* @min:%2etelemetryTrace */] = new TelemetryTrace(traceId, parentId, name_1, logger);\r\n _self.session = new Session();\r\n }\r\n _self[_DYN_GET_SESSION_ID /* @min:%2egetSessionId */] = function () {\r\n var session = _self.session;\r\n var sesId = null;\r\n // If customer set session info, apply their context; otherwise apply context automatically generated\r\n if (session && isString(session.id)) {\r\n sesId = session.id;\r\n }\r\n else {\r\n // Gets the automatic session if it exists or an empty object\r\n var autoSession = (_self[_DYN_SESSION_MANAGER /* @min:%2esessionManager */] || {})[_DYN_AUTOMATIC_SESSION /* @min:%2eautomaticSession */];\r\n sesId = autoSession && isString(autoSession.id) ? autoSession.id : null;\r\n }\r\n return sesId;\r\n };\r\n _self[_DYN_APPLY_SESSION_CONTEX0 /* @min:%2eapplySessionContext */] = function (evt, itemCtx) {\r\n setValue(getSetValue(evt.ext, Extensions.AppExt), \"sesId\", _self[_DYN_GET_SESSION_ID /* @min:%2egetSessionId */](), isString);\r\n };\r\n _self[_DYN_APPLY_OPERATING_SYST3 /* @min:%2eapplyOperatingSystemContxt */] = function (evt, itemCtx) {\r\n setValue(evt.ext, Extensions.OSExt, _self.os);\r\n };\r\n _self[_DYN_APPLY_APPLICATION_CO1 /* @min:%2eapplyApplicationContext */] = function (evt, itemCtx) {\r\n var application = _self.application;\r\n if (application) {\r\n // evt.ext.app\r\n var tags = getSetValue(evt, strTags);\r\n setValue(tags, CtxTagKeys.applicationVersion, application.ver, isString);\r\n setValue(tags, CtxTagKeys.applicationBuild, application.build, isString);\r\n }\r\n };\r\n _self[_DYN_APPLY_DEVICE_CONTEXT /* @min:%2eapplyDeviceContext */] = function (evt, itemCtx) {\r\n var device = _self.device;\r\n if (device) {\r\n // evt.ext.device\r\n var extDevice = getSetValue(getSetValue(evt, strExt), Extensions.DeviceExt);\r\n setValue(extDevice, \"localId\", device.id, isString);\r\n setValue(extDevice, \"ip\", device.ip, isString);\r\n setValue(extDevice, \"model\", device.model, isString);\r\n setValue(extDevice, \"deviceClass\", device.deviceClass, isString);\r\n }\r\n };\r\n _self[_DYN_APPLY_INTERNAL_CONTE5 /* @min:%2eapplyInternalContext */] = function (evt, itemCtx) {\r\n var internal = _self.internal;\r\n if (internal) {\r\n var tags = getSetValue(evt, strTags);\r\n setValue(tags, CtxTagKeys.internalAgentVersion, internal.agentVersion, isString); // not mapped in CS 4.0\r\n setValue(tags, CtxTagKeys.internalSdkVersion, dataSanitizeString(logger, internal.sdkVersion, 64), isString);\r\n if (evt.baseType === _InternalLogMessage.dataType || evt.baseType === PageView.dataType) {\r\n setValue(tags, CtxTagKeys.internalSnippet, internal.snippetVer, isString);\r\n setValue(tags, CtxTagKeys.internalSdkSrc, internal.sdkSrc, isString);\r\n }\r\n }\r\n };\r\n _self[_DYN_APPLY_LOCATION_CONTE4 /* @min:%2eapplyLocationContext */] = function (evt, itemCtx) {\r\n var location = _this.location;\r\n if (location) {\r\n setValue(getSetValue(evt, strTags, []), CtxTagKeys.locationIp, location.ip, isString);\r\n }\r\n };\r\n _self[_DYN_APPLY_OPERATION_CONT2 /* @min:%2eapplyOperationContext */] = function (evt, itemCtx) {\r\n var telemetryTrace = _self[_DYN_TELEMETRY_TRACE /* @min:%2etelemetryTrace */];\r\n if (telemetryTrace) {\r\n var extTrace = getSetValue(getSetValue(evt, strExt), Extensions.TraceExt, { traceID: undefined, parentID: undefined });\r\n setValue(extTrace, \"traceID\", telemetryTrace.traceID, isString, isNullOrUndefined);\r\n setValue(extTrace, \"name\", telemetryTrace.name, isString, isNullOrUndefined);\r\n setValue(extTrace, \"parentID\", telemetryTrace.parentID, isString, isNullOrUndefined);\r\n }\r\n };\r\n _self.applyWebContext = function (evt, itemCtx) {\r\n var web = _this.web;\r\n if (web) {\r\n setValue(getSetValue(evt, strExt), Extensions.WebExt, web);\r\n }\r\n };\r\n _self[_DYN_APPLY_USER_CONTEXT /* @min:%2eapplyUserContext */] = function (evt, itemCtx) {\r\n var user = _self.user;\r\n if (user) {\r\n var tags = getSetValue(evt, strTags, []);\r\n // stays in tags\r\n setValue(tags, CtxTagKeys.userAccountId, user[_DYN_ACCOUNT_ID /* @min:%2eaccountId */], isString);\r\n // CS 4.0\r\n var extUser = getSetValue(getSetValue(evt, strExt), Extensions.UserExt);\r\n setValue(extUser, \"id\", user.id, isString);\r\n setValue(extUser, \"authId\", user[_DYN_AUTHENTICATED_ID /* @min:%2eauthenticatedId */], isString);\r\n }\r\n };\r\n _self.cleanUp = function (evt, itemCtx) {\r\n var ext = evt.ext;\r\n if (ext) {\r\n _removeEmpty(ext, Extensions.DeviceExt);\r\n _removeEmpty(ext, Extensions.UserExt);\r\n _removeEmpty(ext, Extensions.WebExt);\r\n _removeEmpty(ext, Extensions.OSExt);\r\n _removeEmpty(ext, Extensions.AppExt);\r\n _removeEmpty(ext, Extensions.TraceExt);\r\n }\r\n };\r\n });\r\n }\r\n TelemetryContext.prototype.applySessionContext = function (evt, itemCtx) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n TelemetryContext.prototype.applyOperatingSystemContxt = function (event, itemCtx) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n TelemetryContext.prototype.applyApplicationContext = function (event, itemCtx) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n TelemetryContext.prototype.applyDeviceContext = function (event, itemCtx) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n TelemetryContext.prototype.applyInternalContext = function (event, itemCtx) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n TelemetryContext.prototype.applyLocationContext = function (event, itemCtx) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n TelemetryContext.prototype.applyOperationContext = function (event, itemCtx) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n TelemetryContext.prototype.applyWebContext = function (event, itemCtx) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n TelemetryContext.prototype.applyUserContext = function (event, itemCtx) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n TelemetryContext.prototype.cleanUp = function (event, itemCtx) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n return TelemetryContext;\r\n}());\r\nexport { TelemetryContext };\r\n//# sourceMappingURL=TelemetryContext.js.map","/**\r\n* PropertiesPlugin.ts\r\n* @copyright Microsoft 2018\r\n*/\r\nvar _a;\r\nimport { __extends } from \"tslib\";\r\nimport dynamicProto from \"@microsoft/dynamicproto-js\";\r\nimport { BreezeChannelIdentifier, PageView, PropertiesPluginIdentifier, createDistributedTraceContextFromTrace, utlSetStoragePrefix } from \"@microsoft/applicationinsights-common\";\r\nimport { BaseTelemetryPlugin, _InternalLogMessage, _logInternalMessage, createProcessTelemetryContext, getNavigator, getSetValue, isNullOrUndefined, onConfigChange } from \"@microsoft/applicationinsights-core-js\";\r\nimport { objDeepFreeze, objDefine } from \"@nevware21/ts-utils\";\r\nimport { TelemetryContext } from \"./TelemetryContext\";\r\nimport { _DYN_ACCOUNT_ID, _DYN_APPLY_APPLICATION_CO1, _DYN_APPLY_DEVICE_CONTEXT, _DYN_APPLY_INTERNAL_CONTE5, _DYN_APPLY_LOCATION_CONTE4, _DYN_APPLY_OPERATING_SYST3, _DYN_APPLY_OPERATION_CONT2, _DYN_APPLY_SESSION_CONTEX0, _DYN_APPLY_USER_CONTEXT, _DYN_GET_NEW_ID, _DYN_GET_SESSION_ID, _DYN_GET_TRACE_CTX, _DYN_ID_LENGTH, _DYN_IS_NEW_USER, _DYN_IS_USER_COOKIE_SET, _DYN_NAME_PREFIX, _DYN_SESSION_COOKIE_POSTF6, _DYN_SESSION_MANAGER, _DYN_TELEMETRY_TRACE, _DYN_UPDATE, _DYN_USER_COOKIE_POSTFIX } from \"./__DynamicConstants\";\r\nvar undefString;\r\nvar nullValue = null;\r\nvar _defaultConfig = objDeepFreeze((_a = {},\r\n _a[_DYN_ACCOUNT_ID /* @min:accountId */] = nullValue,\r\n _a.sessionRenewalMs = 30 * 60 * 1000,\r\n _a.samplingPercentage = 100,\r\n _a.sessionExpirationMs = 24 * 60 * 60 * 1000,\r\n _a.cookieDomain = nullValue,\r\n _a.sdkExtension = nullValue,\r\n _a.isBrowserLinkTrackingEnabled = false,\r\n _a.appId = nullValue,\r\n _a[_DYN_GET_SESSION_ID /* @min:getSessionId */] = nullValue,\r\n _a[_DYN_NAME_PREFIX /* @min:namePrefix */] = undefString,\r\n _a[_DYN_SESSION_COOKIE_POSTF6 /* @min:sessionCookiePostfix */] = undefString,\r\n _a[_DYN_USER_COOKIE_POSTFIX /* @min:userCookiePostfix */] = undefString,\r\n _a[_DYN_ID_LENGTH /* @min:idLength */] = 22,\r\n _a[_DYN_GET_NEW_ID /* @min:getNewId */] = nullValue,\r\n _a));\r\nvar PropertiesPlugin = /** @class */ (function (_super) {\r\n __extends(PropertiesPlugin, _super);\r\n function PropertiesPlugin() {\r\n var _this = _super.call(this) || this;\r\n _this.priority = 110;\r\n _this.identifier = PropertiesPluginIdentifier;\r\n var _extensionConfig;\r\n var _distributedTraceCtx;\r\n var _previousTraceCtx;\r\n var _context;\r\n var _disableUserInitMessage;\r\n dynamicProto(PropertiesPlugin, _this, function (_self, _base) {\r\n _initDefaults();\r\n objDefine(_self, \"context\", {\r\n g: function () {\r\n return _context;\r\n }\r\n });\r\n _self.initialize = function (config, core, extensions, pluginChain) {\r\n _base.initialize(config, core, extensions, pluginChain);\r\n _populateDefaults(config);\r\n };\r\n /**\r\n * Add Part A fields to the event\r\n * @param event - The event that needs to be processed\r\n */\r\n _self.processTelemetry = function (event, itemCtx) {\r\n if (!isNullOrUndefined(event)) {\r\n itemCtx = _self._getTelCtx(itemCtx);\r\n // If the envelope is PageView, reset the internal message count so that we can send internal telemetry for the new page.\r\n if (event.name === PageView.envelopeType) {\r\n itemCtx.diagLog().resetInternalMessageCount();\r\n }\r\n var theContext = (_context || {});\r\n if (theContext.session) {\r\n // If customer did not provide custom session id update the session manager\r\n if (typeof _context.session.id !== \"string\" && theContext[_DYN_SESSION_MANAGER /* @min:%2esessionManager */]) {\r\n theContext[_DYN_SESSION_MANAGER /* @min:%2esessionManager */][_DYN_UPDATE /* @min:%2eupdate */]();\r\n }\r\n }\r\n var userCtx = theContext.user;\r\n if (userCtx && !userCtx[_DYN_IS_USER_COOKIE_SET /* @min:%2eisUserCookieSet */]) {\r\n userCtx[_DYN_UPDATE /* @min:%2eupdate */](theContext.user.id);\r\n }\r\n _processTelemetryInternal(event, itemCtx);\r\n if (userCtx && userCtx[_DYN_IS_NEW_USER /* @min:%2eisNewUser */]) {\r\n userCtx[_DYN_IS_NEW_USER /* @min:%2eisNewUser */] = false;\r\n if (!_disableUserInitMessage) {\r\n var message = new _InternalLogMessage(72 /* _eInternalMessageId.SendBrowserInfoOnUserInit */, ((getNavigator() || {}).userAgent || \"\"));\r\n _logInternalMessage(itemCtx.diagLog(), 1 /* eLoggingSeverity.CRITICAL */, message);\r\n }\r\n }\r\n _self.processNext(event, itemCtx);\r\n }\r\n };\r\n _self._doTeardown = function (unloadCtx, unloadState) {\r\n var core = (unloadCtx || {}).core();\r\n if (core && core[_DYN_GET_TRACE_CTX /* @min:%2egetTraceCtx */]) {\r\n var traceCtx = core[_DYN_GET_TRACE_CTX /* @min:%2egetTraceCtx */](false);\r\n if (traceCtx === _distributedTraceCtx) {\r\n core.setTraceCtx(_previousTraceCtx);\r\n }\r\n }\r\n _initDefaults();\r\n };\r\n function _initDefaults() {\r\n _extensionConfig = null;\r\n _distributedTraceCtx = null;\r\n _previousTraceCtx = null;\r\n _context = null;\r\n _disableUserInitMessage = true;\r\n }\r\n function _populateDefaults(config) {\r\n var identifier = _self.identifier;\r\n var core = _self.core;\r\n // This function will be re-called whenever any referenced configuration is changed\r\n _self._addHook(onConfigChange(config, function () {\r\n var ctx = createProcessTelemetryContext(null, config, core);\r\n if (config.storagePrefix) {\r\n utlSetStoragePrefix(config.storagePrefix);\r\n }\r\n _disableUserInitMessage = config.disableUserInitMessage === false ? false : true;\r\n _extensionConfig = ctx.getExtCfg(identifier, _defaultConfig);\r\n // Test hook to allow accessing the internal values -- explicitly not defined as an available property on the class\r\n _self[\"_extConfig\"] = _extensionConfig;\r\n }));\r\n // This is outside of the onConfigChange as we don't want to update (replace) these values whenever a referenced config item changes\r\n _previousTraceCtx = core[_DYN_GET_TRACE_CTX /* @min:%2egetTraceCtx */](false);\r\n _context = new TelemetryContext(core, _extensionConfig, _previousTraceCtx, _self._unloadHooks);\r\n _distributedTraceCtx = createDistributedTraceContextFromTrace(_self.context[_DYN_TELEMETRY_TRACE /* @min:%2etelemetryTrace */], _previousTraceCtx);\r\n core.setTraceCtx(_distributedTraceCtx);\r\n _self.context.appId = function () {\r\n var breezeChannel = core.getPlugin(BreezeChannelIdentifier);\r\n return breezeChannel ? breezeChannel.plugin[\"_appId\"] : null;\r\n };\r\n }\r\n function _processTelemetryInternal(evt, itemCtx) {\r\n // Set Part A fields\r\n getSetValue(evt, \"tags\", []);\r\n getSetValue(evt, \"ext\", {});\r\n var ctx = _self.context;\r\n ctx[_DYN_APPLY_SESSION_CONTEX0 /* @min:%2eapplySessionContext */](evt, itemCtx);\r\n ctx[_DYN_APPLY_APPLICATION_CO1 /* @min:%2eapplyApplicationContext */](evt, itemCtx);\r\n ctx[_DYN_APPLY_DEVICE_CONTEXT /* @min:%2eapplyDeviceContext */](evt, itemCtx);\r\n ctx[_DYN_APPLY_OPERATION_CONT2 /* @min:%2eapplyOperationContext */](evt, itemCtx);\r\n ctx[_DYN_APPLY_USER_CONTEXT /* @min:%2eapplyUserContext */](evt, itemCtx);\r\n ctx[_DYN_APPLY_OPERATING_SYST3 /* @min:%2eapplyOperatingSystemContxt */](evt, itemCtx);\r\n ctx.applyWebContext(evt, itemCtx);\r\n ctx[_DYN_APPLY_LOCATION_CONTE4 /* @min:%2eapplyLocationContext */](evt, itemCtx); // legacy tags\r\n ctx[_DYN_APPLY_INTERNAL_CONTE5 /* @min:%2eapplyInternalContext */](evt, itemCtx); // legacy tags\r\n ctx.cleanUp(evt, itemCtx);\r\n }\r\n });\r\n return _this;\r\n }\r\n PropertiesPlugin.prototype.initialize = function (config, core, extensions, pluginChain) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n /**\r\n * Add Part A fields to the event\r\n * @param event - The event that needs to be processed\r\n */\r\n PropertiesPlugin.prototype.processTelemetry = function (event, itemCtx) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n return PropertiesPlugin;\r\n}(BaseTelemetryPlugin));\r\nexport default PropertiesPlugin;\r\n//# sourceMappingURL=PropertiesPlugin.js.map","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\n// ###################################################################################################################################################\r\n// Note: DON'T Export these const from the package as we are still targeting IE/ES5 this will export a mutable variables that someone could change ###\r\n// ###################################################################################################################################################\r\n// Generally you should only put values that are used more than 2 times and then only if not already exposed as a constant (such as SdkCoreNames)\r\n// as when using \"short\" named values from here they will be will be minified smaller than the SdkCoreNames[eSdkCoreNames.xxxx] value.\r\nvar _AUTHENTICATED_USER_CONTEXT = \"AuthenticatedUserContext\";\r\nvar _TRACK = \"track\";\r\nexport var STR_EMPTY = \"\";\r\nexport var STR_SNIPPET = \"snippet\";\r\nexport var STR_GET_COOKIE_MGR = \"getCookieMgr\";\r\nexport var STR_START_TRACK_PAGE = \"startTrackPage\";\r\nexport var STR_STOP_TRACK_PAGE = \"stopTrackPage\";\r\nexport var STR_FLUSH = \"flush\";\r\nexport var STR_START_TRACK_EVENT = \"startTrackEvent\";\r\nexport var STR_STOP_TRACK_EVENT = \"stopTrackEvent\";\r\nexport var STR_ADD_TELEMETRY_INITIALIZER = \"addTelemetryInitializer\";\r\nexport var STR_ADD_TELEMETRY_INITIALIZERS = STR_ADD_TELEMETRY_INITIALIZER + \"s\";\r\nexport var STR_POLL_INTERNAL_LOGS = \"pollInternalLogs\";\r\nexport var STR_GET_PLUGIN = \"getPlugin\";\r\nexport var STR_EVT_NAMESPACE = \"evtNamespace\";\r\nexport var STR_TRACK_EVENT = _TRACK + \"Event\";\r\nexport var STR_TRACK_TRACE = _TRACK + \"Trace\";\r\nexport var STR_TRACK_METRIC = _TRACK + \"Metric\";\r\nexport var STR_TRACK_PAGE_VIEW = _TRACK + \"PageView\";\r\nexport var STR_TRACK_EXCEPTION = _TRACK + \"Exception\";\r\nexport var STR_TRACK_DEPENDENCY_DATA = _TRACK + \"DependencyData\";\r\nexport var STR_SET_AUTHENTICATED_USER_CONTEXT = \"set\" + _AUTHENTICATED_USER_CONTEXT;\r\nexport var STR_CLEAR_AUTHENTICATED_USER_CONTEXT = \"clear\" + _AUTHENTICATED_USER_CONTEXT;\r\nexport var CONFIG_ENDPOINT_URL = \"https://js.monitor.azure.com/scripts/b/ai.config.1.cfg.json\";\r\n//# sourceMappingURL=InternalConstants.js.map","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\n\"use strict\";\r\nvar _a, _b, _c, _d;\r\nimport dynamicProto from \"@microsoft/dynamicproto-js\";\r\nimport { AnalyticsPlugin } from \"@microsoft/applicationinsights-analytics-js\";\r\nimport { CfgSyncPlugin } from \"@microsoft/applicationinsights-cfgsync-js\";\r\nimport { Sender } from \"@microsoft/applicationinsights-channel-js\";\r\nimport { AnalyticsPluginIdentifier, DEFAULT_BREEZE_PATH, PropertiesPluginIdentifier, ThrottleMgr, parseConnectionString } from \"@microsoft/applicationinsights-common\";\r\nimport { AppInsightsCore, _throwInternal, addPageHideEventListener, addPageUnloadEventListener, cfgDfMerge, cfgDfValidate, createDynamicConfig, createProcessTelemetryContext, createUniqueNamespace, doPerf, hasDocument, hasWindow, isArray, isFeatureEnabled, isFunction, isNullOrUndefined, isReactNative, isString, mergeEvtNamespace, onConfigChange, proxyAssign, proxyFunctions, removePageHideEventListener, removePageUnloadEventListener } from \"@microsoft/applicationinsights-core-js\";\r\nimport { AjaxPlugin as DependenciesPlugin } from \"@microsoft/applicationinsights-dependencies-js\";\r\nimport { PropertiesPlugin } from \"@microsoft/applicationinsights-properties-js\";\r\nimport { createPromise, createSyncPromise, doAwaitResponse } from \"@nevware21/ts-async\";\r\nimport { arrForEach, arrIndexOf, isPromiseLike, objDefine, objForEachKey, strIndexOf, throwUnsupported } from \"@nevware21/ts-utils\";\r\nimport { CONFIG_ENDPOINT_URL, STR_ADD_TELEMETRY_INITIALIZER, STR_CLEAR_AUTHENTICATED_USER_CONTEXT, STR_EVT_NAMESPACE, STR_FLUSH, STR_GET_COOKIE_MGR, STR_GET_PLUGIN, STR_POLL_INTERNAL_LOGS, STR_SET_AUTHENTICATED_USER_CONTEXT, STR_SNIPPET, STR_START_TRACK_EVENT, STR_START_TRACK_PAGE, STR_STOP_TRACK_EVENT, STR_STOP_TRACK_PAGE, STR_TRACK_DEPENDENCY_DATA, STR_TRACK_EVENT, STR_TRACK_EXCEPTION, STR_TRACK_METRIC, STR_TRACK_PAGE_VIEW, STR_TRACK_TRACE } from \"./InternalConstants\";\r\nimport { _DYN_ADD_HOUSEKEEPING_BEF2, _DYN_CONNECTION_STRING, _DYN_CONTEXT, _DYN_ENDPOINT_URL, _DYN_INGESTIONENDPOINT, _DYN_INSTRUMENTATIONKEY0, _DYN_INSTRUMENTATION_KEY, _DYN_ONUNLOAD_FLUSH, _DYN_QUEUE, _DYN_SEND_MESSAGE, _DYN_UPDATE_SNIPPET_DEFIN3, _DYN_USER_OVERRIDE_ENDPOI1, _DYN_VERSION } from \"./__DynamicConstants\";\r\nvar _internalSdkSrc;\r\n// This is an exclude list of properties that should not be updated during initialization\r\n// They include a combination of private and internal property names\r\nvar _ignoreUpdateSnippetProperties = [\r\n STR_SNIPPET, \"dependencies\", \"properties\", \"_snippetVersion\", \"appInsightsNew\", \"getSKUDefaults\"\r\n];\r\nvar IKEY_USAGE = \"iKeyUsage\";\r\nvar CDN_USAGE = \"CdnUsage\";\r\nvar SDK_LOADER_VER = \"SdkLoaderVer\";\r\nvar UNDEFINED_VALUE = undefined;\r\nvar default_limit = {\r\n samplingRate: 100,\r\n maxSendNumber: 1\r\n};\r\nvar default_interval = {\r\n monthInterval: 3,\r\n daysOfMonth: [28]\r\n};\r\nvar default_throttle_config = {\r\n disabled: true,\r\n limit: cfgDfMerge(default_limit),\r\n interval: cfgDfMerge(default_interval)\r\n};\r\n// We need to include all properties that we only reference that we want to be dynamically updatable here\r\n// So they are converted even when not specified in the passed configuration\r\nvar defaultConfigValues = (_a = {},\r\n _a[_DYN_CONNECTION_STRING /* @min:connectionString */] = UNDEFINED_VALUE,\r\n _a[_DYN_ENDPOINT_URL /* @min:endpointUrl */] = UNDEFINED_VALUE,\r\n _a[_DYN_INSTRUMENTATION_KEY /* @min:instrumentationKey */] = UNDEFINED_VALUE,\r\n _a[_DYN_USER_OVERRIDE_ENDPOI1 /* @min:userOverrideEndpointUrl */] = UNDEFINED_VALUE,\r\n _a.diagnosticLogInterval = cfgDfValidate(_chkDiagLevel, 10000),\r\n _a.featureOptIn = (_b = {},\r\n _b[IKEY_USAGE] = { mode: 3 /* FeatureOptInMode.enable */ },\r\n _b[CDN_USAGE] = { mode: 2 /* FeatureOptInMode.disable */ },\r\n _b[SDK_LOADER_VER] = { mode: 2 /* FeatureOptInMode.disable */ },\r\n _b),\r\n _a.throttleMgrCfg = cfgDfMerge((_c = {},\r\n _c[109 /* _eInternalMessageId.DefaultThrottleMsgKey */] = cfgDfMerge(default_throttle_config),\r\n _c[106 /* _eInternalMessageId.InstrumentationKeyDeprecation */] = cfgDfMerge(default_throttle_config),\r\n _c[111 /* _eInternalMessageId.SdkLdrUpdate */] = cfgDfMerge(default_throttle_config),\r\n _c[110 /* _eInternalMessageId.CdnDeprecation */] = cfgDfMerge(default_throttle_config),\r\n _c)),\r\n _a.extensionConfig = cfgDfMerge((_d = {},\r\n _d[\"AppInsightsCfgSyncPlugin\"] = cfgDfMerge({\r\n cfgUrl: CONFIG_ENDPOINT_URL,\r\n syncMode: 2 /* ICfgSyncMode.Receive */\r\n }),\r\n _d)),\r\n _a);\r\nfunction _chkDiagLevel(value) {\r\n // Make sure we have a value > 0\r\n return value && value > 0;\r\n}\r\n/**\r\n * Application Insights API\r\n * @group Entrypoint\r\n * @group Classes\r\n * @class Initialization\r\n * @implements {IApplicationInsights}\r\n */\r\nvar AppInsightsSku = /** @class */ (function () {\r\n function AppInsightsSku(snippet) {\r\n var _this = this;\r\n // NOTE!: DON'T set default values here, instead set them in the _initDefaults() function as it is also called during teardown()\r\n var dependencies;\r\n var properties;\r\n var _sender;\r\n var _snippetVersion;\r\n var _evtNamespace;\r\n var _houseKeepingNamespace;\r\n var _core;\r\n var _config;\r\n var _analyticsPlugin;\r\n var _cfgSyncPlugin;\r\n var _throttleMgr;\r\n var _iKeySentMessage;\r\n var _cdnSentMessage;\r\n var _sdkVerSentMessage;\r\n dynamicProto(AppInsightsSku, this, function (_self) {\r\n _initDefaults();\r\n objDefine(_self, \"config\", {\r\n g: function () {\r\n return _config;\r\n }\r\n });\r\n arrForEach([\"pluginVersionStringArr\", \"pluginVersionString\"], function (key) {\r\n objDefine(_self, key, {\r\n g: function () {\r\n if (_core) {\r\n return _core[key];\r\n }\r\n return null;\r\n }\r\n });\r\n });\r\n // initialize the queue and config in case they are undefined\r\n _snippetVersion = \"\" + (snippet.sv || snippet[_DYN_VERSION /* @min:%2eversion */] || \"\");\r\n snippet[_DYN_QUEUE /* @min:%2equeue */] = snippet[_DYN_QUEUE /* @min:%2equeue */] || [];\r\n snippet[_DYN_VERSION /* @min:%2eversion */] = snippet[_DYN_VERSION /* @min:%2eversion */] || 2.0; // Default to new version\r\n var cfgHandler = createDynamicConfig(snippet.config || {}, defaultConfigValues);\r\n _config = cfgHandler.cfg;\r\n _analyticsPlugin = new AnalyticsPlugin();\r\n objDefine(_self, \"appInsights\", {\r\n g: function () {\r\n return _analyticsPlugin;\r\n }\r\n });\r\n properties = new PropertiesPlugin();\r\n dependencies = new DependenciesPlugin();\r\n _sender = new Sender();\r\n _core = new AppInsightsCore();\r\n objDefine(_self, \"core\", {\r\n g: function () {\r\n return _core;\r\n }\r\n });\r\n // Will get recalled if any referenced values are changed\r\n _addUnloadHook(onConfigChange(cfgHandler, function () {\r\n var configCs = _config[_DYN_CONNECTION_STRING /* @min:%2econnectionString */];\r\n function _parseCs() {\r\n return createSyncPromise(function (resolve, reject) {\r\n doAwaitResponse(configCs, function (res) {\r\n var curCs = res && res.value;\r\n var parsedCs = null;\r\n if (!res.rejected && curCs) {\r\n // replace cs with resolved values in case of circular promises\r\n _config[_DYN_CONNECTION_STRING /* @min:%2econnectionString */] = curCs;\r\n parsedCs = parseConnectionString(curCs);\r\n }\r\n // if can't resolve cs promise, null will be returned\r\n resolve(parsedCs);\r\n });\r\n });\r\n }\r\n if (isPromiseLike(configCs)) {\r\n var ikeyPromise = createSyncPromise(function (resolve, reject) {\r\n _parseCs().then(function (cs) {\r\n var ikey = _config[_DYN_INSTRUMENTATION_KEY /* @min:%2einstrumentationKey */];\r\n ikey = cs && cs[_DYN_INSTRUMENTATIONKEY0 /* @min:%2einstrumentationkey */] || ikey;\r\n resolve(ikey);\r\n }).catch(function (e) {\r\n // parseCs will always resolve(unless timeout)\r\n // return null in case any error happens\r\n resolve(null);\r\n });\r\n });\r\n var url = _config[_DYN_USER_OVERRIDE_ENDPOI1 /* @min:%2euserOverrideEndpointUrl */];\r\n if (isNullOrUndefined(url)) {\r\n url = createSyncPromise(function (resolve, reject) {\r\n _parseCs().then(function (cs) {\r\n var url = _config[_DYN_ENDPOINT_URL /* @min:%2eendpointUrl */];\r\n var ingest = cs && cs[_DYN_INGESTIONENDPOINT /* @min:%2eingestionendpoint */];\r\n url = ingest ? ingest + DEFAULT_BREEZE_PATH : url;\r\n resolve(url);\r\n }).catch(function (e) {\r\n // parseCs will always resolve(unless timeout)\r\n // return null in case any error happens\r\n resolve(null);\r\n });\r\n });\r\n }\r\n _config[_DYN_INSTRUMENTATION_KEY /* @min:%2einstrumentationKey */] = ikeyPromise;\r\n _config[_DYN_ENDPOINT_URL /* @min:%2eendpointUrl */] = url;\r\n }\r\n if (isString(configCs) && configCs) {\r\n // confirm if promiselike function present\r\n // handle cs promise here\r\n // add cases to oneNote\r\n var cs = parseConnectionString(configCs);\r\n var ingest = cs[_DYN_INGESTIONENDPOINT /* @min:%2eingestionendpoint */];\r\n _config.endpointUrl = _config[_DYN_USER_OVERRIDE_ENDPOI1 /* @min:%2euserOverrideEndpointUrl */] ? _config[_DYN_USER_OVERRIDE_ENDPOI1 /* @min:%2euserOverrideEndpointUrl */] : ingest + DEFAULT_BREEZE_PATH; // add /v2/track\r\n _config[_DYN_INSTRUMENTATION_KEY /* @min:%2einstrumentationKey */] = cs[_DYN_INSTRUMENTATIONKEY0 /* @min:%2einstrumentationkey */] || _config[_DYN_INSTRUMENTATION_KEY /* @min:%2einstrumentationKey */];\r\n }\r\n // userOverrideEndpointUrl have the highest priority\r\n _config.endpointUrl = _config[_DYN_USER_OVERRIDE_ENDPOI1 /* @min:%2euserOverrideEndpointUrl */] ? _config[_DYN_USER_OVERRIDE_ENDPOI1 /* @min:%2euserOverrideEndpointUrl */] : _config[_DYN_ENDPOINT_URL /* @min:%2eendpointUrl */];\r\n }));\r\n _self[STR_SNIPPET /* @min:%2esnippet */] = snippet;\r\n _self[STR_FLUSH /* @min:%2eflush */] = function (async, callBack) {\r\n if (async === void 0) { async = true; }\r\n var result;\r\n doPerf(_core, function () { return \"AISKU.flush\"; }, function () {\r\n if (async && !callBack) {\r\n result = createPromise(function (resolve) {\r\n callBack = resolve;\r\n });\r\n }\r\n var waiting = 1;\r\n var flushDone = function () {\r\n waiting--;\r\n if (waiting === 0) {\r\n callBack();\r\n }\r\n };\r\n arrForEach(_core.getChannels(), function (channel) {\r\n if (channel) {\r\n waiting++;\r\n channel[STR_FLUSH /* @min:%2eflush */](async, flushDone);\r\n }\r\n });\r\n // decrement the initial \"waiting\"\r\n flushDone();\r\n }, null, async);\r\n return result;\r\n };\r\n _self[_DYN_ONUNLOAD_FLUSH /* @min:%2eonunloadFlush */] = function (async) {\r\n if (async === void 0) { async = true; }\r\n arrForEach(_core.getChannels(), function (channel) {\r\n if (channel[_DYN_ONUNLOAD_FLUSH /* @min:%2eonunloadFlush */]) {\r\n channel[_DYN_ONUNLOAD_FLUSH /* @min:%2eonunloadFlush */]();\r\n }\r\n else {\r\n channel[STR_FLUSH /* @min:%2eflush */](async);\r\n }\r\n });\r\n };\r\n _self.loadAppInsights = function (legacyMode, logger, notificationManager) {\r\n if (legacyMode === void 0) { legacyMode = false; }\r\n if (legacyMode) {\r\n throwUnsupported(\"Legacy Mode is no longer supported\");\r\n }\r\n function _updateSnippetProperties(snippet) {\r\n if (snippet) {\r\n var snippetVer = \"\";\r\n if (!isNullOrUndefined(_snippetVersion)) {\r\n snippetVer += _snippetVersion;\r\n }\r\n if (_self[_DYN_CONTEXT /* @min:%2econtext */] && _self[_DYN_CONTEXT /* @min:%2econtext */].internal) {\r\n _self[_DYN_CONTEXT /* @min:%2econtext */].internal.snippetVer = snippetVer || \"-\";\r\n }\r\n // apply updated properties to the global instance (snippet)\r\n objForEachKey(_self, function (field, value) {\r\n if (isString(field) &&\r\n !isFunction(value) &&\r\n field && field[0] !== \"_\" && // Don't copy \"internal\" values\r\n arrIndexOf(_ignoreUpdateSnippetProperties, field) === -1) {\r\n if (snippet[field] !== value) {\r\n snippet[field] = value;\r\n }\r\n }\r\n });\r\n }\r\n }\r\n doPerf(_self.core, function () { return \"AISKU.loadAppInsights\"; }, function () {\r\n // initialize core\r\n _core.initialize(_config, [_sender, properties, dependencies, _analyticsPlugin, _cfgSyncPlugin], logger, notificationManager);\r\n objDefine(_self, \"context\", {\r\n g: function () { return properties[_DYN_CONTEXT /* @min:%2econtext */]; }\r\n });\r\n if (!_throttleMgr) {\r\n _throttleMgr = new ThrottleMgr(_core);\r\n }\r\n var sdkSrc = _findSdkSourceFile();\r\n if (sdkSrc && _self[_DYN_CONTEXT /* @min:%2econtext */]) {\r\n _self[_DYN_CONTEXT /* @min:%2econtext */].internal.sdkSrc = sdkSrc;\r\n }\r\n _updateSnippetProperties(_self[STR_SNIPPET /* @min:%2esnippet */]);\r\n // Empty queue of all api calls logged prior to sdk download\r\n _self.emptyQueue();\r\n _self[STR_POLL_INTERNAL_LOGS /* @min:%2epollInternalLogs */]();\r\n _self[_DYN_ADD_HOUSEKEEPING_BEF2 /* @min:%2eaddHousekeepingBeforeUnload */](_self);\r\n _addUnloadHook(onConfigChange(cfgHandler, function () {\r\n var defaultEnable = false;\r\n if (_config.throttleMgrCfg[109 /* _eInternalMessageId.DefaultThrottleMsgKey */]) {\r\n defaultEnable = !_config.throttleMgrCfg[109 /* _eInternalMessageId.DefaultThrottleMsgKey */].disabled;\r\n }\r\n if (!_throttleMgr.isReady() && _config.extensionConfig && _config.extensionConfig[_cfgSyncPlugin.identifier] && defaultEnable) {\r\n // set ready state to true will automatically trigger flush()\r\n _throttleMgr.onReadyState(true);\r\n }\r\n var result;\r\n if (!_iKeySentMessage && !_config[_DYN_CONNECTION_STRING /* @min:%2econnectionString */] && isFeatureEnabled(IKEY_USAGE, _config)) {\r\n result = _throttleMgr[_DYN_SEND_MESSAGE /* @min:%2esendMessage */](106 /* _eInternalMessageId.InstrumentationKeyDeprecation */, \"See Instrumentation key support at aka.ms/IkeyMigrate\");\r\n _iKeySentMessage = true;\r\n }\r\n if (!_cdnSentMessage && _self[_DYN_CONTEXT /* @min:%2econtext */].internal.sdkSrc && _self[_DYN_CONTEXT /* @min:%2econtext */].internal.sdkSrc.indexOf(\"az416426\") != -1 && isFeatureEnabled(CDN_USAGE, _config)) {\r\n result = _throttleMgr[_DYN_SEND_MESSAGE /* @min:%2esendMessage */](110 /* _eInternalMessageId.CdnDeprecation */, \"See Cdn support notice at aka.ms/JsActiveCdn\");\r\n _cdnSentMessage = true;\r\n }\r\n if (!_sdkVerSentMessage && parseInt(_snippetVersion) < 6 && isFeatureEnabled(SDK_LOADER_VER, _config)) {\r\n result = _throttleMgr[_DYN_SEND_MESSAGE /* @min:%2esendMessage */](111 /* _eInternalMessageId.SdkLdrUpdate */, \"An updated Sdk Loader is available, see aka.ms/SnippetVer\");\r\n _sdkVerSentMessage = true;\r\n }\r\n }));\r\n });\r\n return _self;\r\n };\r\n _self[_DYN_UPDATE_SNIPPET_DEFIN3 /* @min:%2eupdateSnippetDefinitions */] = function (snippet) {\r\n // apply full appInsights to the global instance\r\n // Note: This must be called before loadAppInsights is called\r\n proxyAssign(snippet, _self, function (name) {\r\n // Not excluding names prefixed with \"_\" as we need to proxy some functions like _onError\r\n return name && arrIndexOf(_ignoreUpdateSnippetProperties, name) === -1;\r\n });\r\n };\r\n _self.emptyQueue = function () {\r\n // call functions that were queued before the main script was loaded\r\n try {\r\n if (isArray(_self.snippet[_DYN_QUEUE /* @min:%2equeue */])) {\r\n // note: do not check length in the for-loop conditional in case something goes wrong and the stub methods are not overridden.\r\n var length_1 = _self.snippet[_DYN_QUEUE /* @min:%2equeue */].length;\r\n for (var i = 0; i < length_1; i++) {\r\n var call = _self.snippet[_DYN_QUEUE /* @min:%2equeue */][i];\r\n call();\r\n }\r\n _self.snippet[_DYN_QUEUE /* @min:%2equeue */] = undefined;\r\n delete _self.snippet[_DYN_QUEUE /* @min:%2equeue */];\r\n }\r\n }\r\n catch (exception) {\r\n var properties_1 = {};\r\n if (exception && isFunction(exception.toString)) {\r\n properties_1.exception = exception.toString();\r\n }\r\n // need from core\r\n // Microsoft.ApplicationInsights._InternalLogging.throwInternal(\r\n // eLoggingSeverity.WARNING,\r\n // _eInternalMessageId.FailedToSendQueuedTelemetry,\r\n // \"Failed to send queued telemetry\",\r\n // properties);\r\n }\r\n };\r\n _self[_DYN_ADD_HOUSEKEEPING_BEF2 /* @min:%2eaddHousekeepingBeforeUnload */] = function (appInsightsInstance) {\r\n // Add callback to push events when the user navigates away\r\n if (hasWindow() || hasDocument()) {\r\n var performHousekeeping_1 = function () {\r\n // Adds the ability to flush all data before the page unloads.\r\n // Note: This approach tries to push a sync request with all the pending events onbeforeunload.\r\n // Firefox does not respect this.Other browsers DO push out the call with < 100% hit rate.\r\n // Telemetry here will help us analyze how effective this approach is.\r\n // Another approach would be to make this call sync with a acceptable timeout to reduce the\r\n // impact on user experience.\r\n // appInsightsInstance.context._sender.triggerSend();\r\n appInsightsInstance[_DYN_ONUNLOAD_FLUSH /* @min:%2eonunloadFlush */](false);\r\n // Back up the current session to local storage\r\n // This lets us close expired sessions after the cookies themselves expire\r\n if (isFunction(_self.core[STR_GET_PLUGIN /* @min:%2egetPlugin */])) {\r\n var loadedPlugin = _this.core[STR_GET_PLUGIN /* @min:%2egetPlugin */](PropertiesPluginIdentifier);\r\n if (loadedPlugin) {\r\n var propertiesPlugin = loadedPlugin.plugin;\r\n if (propertiesPlugin && propertiesPlugin[_DYN_CONTEXT /* @min:%2econtext */] && propertiesPlugin[_DYN_CONTEXT /* @min:%2econtext */]._sessionManager) {\r\n propertiesPlugin[_DYN_CONTEXT /* @min:%2econtext */]._sessionManager.backup();\r\n }\r\n }\r\n }\r\n };\r\n var added_1 = false;\r\n if (!_houseKeepingNamespace) {\r\n _houseKeepingNamespace = mergeEvtNamespace(_evtNamespace, _core[STR_EVT_NAMESPACE /* @min:%2eevtNamespace */] && _core[STR_EVT_NAMESPACE /* @min:%2eevtNamespace */]());\r\n }\r\n // Will be recalled if any referenced config properties change\r\n _addUnloadHook(onConfigChange(_config, function (details) {\r\n var coreConfig = details.cfg;\r\n var analyticsPlugin = appInsightsInstance.appInsights;\r\n var ctx = createProcessTelemetryContext(null, coreConfig, analyticsPlugin.core);\r\n var extConfig = ctx.getExtCfg(analyticsPlugin.identifier || AnalyticsPluginIdentifier);\r\n // As we could get recalled, remove any previously registered event handlers first\r\n _removePageEventHandlers();\r\n var excludePageUnloadEvents = coreConfig.disablePageUnloadEvents;\r\n if (!extConfig.disableFlushOnBeforeUnload) {\r\n // Hook the unload event for the document, window and body to ensure that the client events are flushed to the server\r\n // As just hooking the window does not always fire (on chrome) for page navigation's.\r\n if (addPageUnloadEventListener(performHousekeeping_1, excludePageUnloadEvents, _houseKeepingNamespace)) {\r\n added_1 = true;\r\n }\r\n // We also need to hook the pagehide and visibilitychange events as not all versions of Safari support load/unload events.\r\n if (addPageHideEventListener(performHousekeeping_1, excludePageUnloadEvents, _houseKeepingNamespace)) {\r\n added_1 = true;\r\n }\r\n // A reactNative app may not have a window and therefore the beforeunload/pagehide events -- so don't\r\n // log the failure in this case\r\n if (!added_1 && !isReactNative()) {\r\n _throwInternal(_core.logger, 1 /* eLoggingSeverity.CRITICAL */, 19 /* _eInternalMessageId.FailedToAddHandlerForOnBeforeUnload */, \"Could not add handler for beforeunload and pagehide\");\r\n }\r\n }\r\n if (!added_1 && !extConfig.disableFlushOnUnload) {\r\n // If we didn't add the normal set then attempt to add the pagehide and visibilitychange only\r\n addPageHideEventListener(performHousekeeping_1, excludePageUnloadEvents, _houseKeepingNamespace);\r\n }\r\n }));\r\n }\r\n };\r\n _self.getSender = function () {\r\n return _sender;\r\n };\r\n _self.unload = function (isAsync, unloadComplete, cbTimeout) {\r\n var unloadDone = false;\r\n var result;\r\n if (isAsync && !unloadComplete) {\r\n result = createPromise(function (resolve) {\r\n // Set the callback to the promise resolve callback\r\n unloadComplete = resolve;\r\n });\r\n }\r\n function _unloadCallback(unloadState) {\r\n if (!unloadDone) {\r\n unloadDone = true;\r\n _initDefaults();\r\n unloadComplete && unloadComplete(unloadState);\r\n }\r\n }\r\n _self[_DYN_ONUNLOAD_FLUSH /* @min:%2eonunloadFlush */](isAsync);\r\n _removePageEventHandlers();\r\n _core.unload && _core.unload(isAsync, _unloadCallback, cbTimeout);\r\n return result;\r\n };\r\n proxyFunctions(_self, _analyticsPlugin, [\r\n STR_GET_COOKIE_MGR,\r\n STR_TRACK_EVENT,\r\n STR_TRACK_PAGE_VIEW,\r\n \"trackPageViewPerformance\",\r\n STR_TRACK_EXCEPTION,\r\n \"_onerror\",\r\n STR_TRACK_TRACE,\r\n STR_TRACK_METRIC,\r\n STR_START_TRACK_PAGE,\r\n STR_STOP_TRACK_PAGE,\r\n STR_START_TRACK_EVENT,\r\n STR_STOP_TRACK_EVENT\r\n ]);\r\n proxyFunctions(_self, _getCurrentDependencies, [\r\n STR_TRACK_DEPENDENCY_DATA,\r\n \"addDependencyListener\",\r\n \"addDependencyInitializer\"\r\n ]);\r\n proxyFunctions(_self, _core, [\r\n STR_ADD_TELEMETRY_INITIALIZER,\r\n STR_POLL_INTERNAL_LOGS,\r\n \"stopPollingInternalLogs\",\r\n STR_GET_PLUGIN,\r\n \"addPlugin\",\r\n STR_EVT_NAMESPACE,\r\n \"addUnloadCb\",\r\n \"getTraceCtx\",\r\n \"updateCfg\",\r\n \"onCfgChange\"\r\n ]);\r\n proxyFunctions(_self, function () {\r\n var context = properties[_DYN_CONTEXT /* @min:%2econtext */];\r\n return context ? context.user : null;\r\n }, [\r\n STR_SET_AUTHENTICATED_USER_CONTEXT,\r\n STR_CLEAR_AUTHENTICATED_USER_CONTEXT\r\n ]);\r\n // Using a function to support the dynamic adding / removal of plugins, so this will always return the current value\r\n function _getCurrentDependencies() {\r\n return dependencies;\r\n }\r\n function _initDefaults() {\r\n _evtNamespace = createUniqueNamespace(\"AISKU\");\r\n _houseKeepingNamespace = null;\r\n dependencies = null;\r\n properties = null;\r\n _sender = null;\r\n _snippetVersion = null;\r\n _throttleMgr = null;\r\n _iKeySentMessage = false;\r\n _cdnSentMessage = false;\r\n _sdkVerSentMessage = false;\r\n _cfgSyncPlugin = new CfgSyncPlugin();\r\n }\r\n function _removePageEventHandlers() {\r\n // Remove any registered event handlers\r\n if (_houseKeepingNamespace) {\r\n removePageUnloadEventListener(null, _houseKeepingNamespace);\r\n removePageHideEventListener(null, _houseKeepingNamespace);\r\n }\r\n }\r\n function _addUnloadHook(hooks) {\r\n _core.addUnloadHook(hooks);\r\n }\r\n });\r\n }\r\n // Analytics Plugin\r\n /**\r\n * Get the current cookie manager for this instance\r\n */\r\n AppInsightsSku.prototype.getCookieMgr = function () {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n return null;\r\n };\r\n /**\r\n * Log a user action or other occurrence.\r\n * @param event - event to be sent\r\n * @param customProperties - properties that would be included as part of the event\r\n */\r\n AppInsightsSku.prototype.trackEvent = function (event, customProperties) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n /**\r\n * Logs that a page, or similar container was displayed to the user.\r\n * @param pageView - page view to be sent\r\n */\r\n AppInsightsSku.prototype.trackPageView = function (pageView) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n /**\r\n * Log a bag of performance information via the customProperties field.\r\n * @param pageViewPerformance - performance information to be sent\r\n */\r\n AppInsightsSku.prototype.trackPageViewPerformance = function (pageViewPerformance) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n /**\r\n * Log an exception that you have caught.\r\n * @param exception - exception to be sent\r\n * @param customProperties - Additional data used to filter pages and metrics in the portal. Defaults to empty.\r\n */\r\n AppInsightsSku.prototype.trackException = function (exception, customProperties) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n /**\r\n * Manually send uncaught exception telemetry. This method is automatically triggered\r\n * on a window.onerror event.\r\n * @param exception - The exception to be sent.\r\n */\r\n AppInsightsSku.prototype._onerror = function (exception) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n /**\r\n * Log a diagnostic scenario such entering or leaving a function.\r\n * @param trace - trace to be sent\r\n * @param customProperties - Additional custom properties to include in the event.\r\n */\r\n AppInsightsSku.prototype.trackTrace = function (trace, customProperties) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n /**\r\n * Log a numeric value that is not associated with a specific event. Typically used\r\n * to send regular reports of performance indicators.\r\n *\r\n * To send a single measurement, just use the `name` and `average` fields\r\n * of {@link IMetricTelemetry}.\r\n *\r\n * If you take measurements frequently, you can reduce the telemetry bandwidth by\r\n * aggregating multiple measurements and sending the resulting average and modifying\r\n * the `sampleCount` field of {@link IMetricTelemetry}.\r\n * @param metric - input object argument. Only `name` and `average` are mandatory.\r\n * @param customProperties - Additional custom properties to include in the event.\r\n */\r\n AppInsightsSku.prototype.trackMetric = function (metric, customProperties) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n /**\r\n * Starts the timer for tracking a page load time. Use this instead of `trackPageView` if you want to control when the page view timer starts and stops,\r\n * but don't want to calculate the duration yourself. This method doesn't send any telemetry. Call `stopTrackPage` to log the end of the page view\r\n * and send the event.\r\n * @param name - A string that idenfities this item, unique within this HTML document. Defaults to the document title.\r\n */\r\n AppInsightsSku.prototype.startTrackPage = function (name) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n /**\r\n * Stops the timer that was started by calling `startTrackPage` and sends the pageview load time telemetry with the specified properties and measurements.\r\n * The duration of the page view will be the time between calling `startTrackPage` and `stopTrackPage`.\r\n * @param name - The string you used as the name in startTrackPage. Defaults to the document title.\r\n * @param url - a relative or absolute URL that identifies the page or other item. Defaults to the window location.\r\n * @param properties - additional data used to filter pages and metrics in the portal. Defaults to empty.\r\n * @param measurements - metrics associated with this page, displayed in Metrics Explorer on the portal. Defaults to empty.\r\n */\r\n AppInsightsSku.prototype.stopTrackPage = function (name, url, properties, measurements) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n AppInsightsSku.prototype.startTrackEvent = function (name) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n /**\r\n * Log an extended event that you started timing with `startTrackEvent`.\r\n * @param name - The string you used to identify this event in `startTrackEvent`.\r\n * @param properties - map[string, string] - additional data used to filter events and metrics in the portal. Defaults to empty.\r\n * @param measurements - map[string, number] - metrics associated with this event, displayed in Metrics Explorer on the portal. Defaults to empty.\r\n */\r\n AppInsightsSku.prototype.stopTrackEvent = function (name, properties, measurements) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n AppInsightsSku.prototype.addTelemetryInitializer = function (telemetryInitializer) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n return null;\r\n };\r\n // Properties Plugin\r\n /**\r\n * Set the authenticated user id and the account id. Used for identifying a specific signed-in user. Parameters must not contain whitespace or ,;=|\r\n *\r\n * The method will only set the `authenticatedUserId` and `accountId` in the current page view. To set them for the whole session, you should set `storeInCookie = true`\r\n * @param authenticatedUserId - The account ID to set\r\n * @param accountId - The account ID to set\r\n * @param storeInCookie - Whether the values should be set for the whole session\r\n */\r\n AppInsightsSku.prototype.setAuthenticatedUserContext = function (authenticatedUserId, accountId, storeInCookie) {\r\n if (storeInCookie === void 0) { storeInCookie = false; }\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n /**\r\n * Clears the authenticated user id and account id. The associated cookie is cleared, if present.\r\n */\r\n AppInsightsSku.prototype.clearAuthenticatedUserContext = function () {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n // Dependencies Plugin\r\n /**\r\n * Log a dependency call (e.g. ajax)\r\n * @param dependencyData - dependency data object\r\n */\r\n AppInsightsSku.prototype.trackDependencyData = function (dependency) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n // Misc\r\n /**\r\n * Attempt to flush data immediately; If executing asynchronously (the default) and\r\n * you DO NOT pass a callback function then a [IPromise](https://nevware21.github.io/ts-async/typedoc/interfaces/IPromise.html)\r\n * will be returned which will resolve once the flush is complete. The actual implementation of the `IPromise`\r\n * will be a native Promise (if supported) or the default as supplied by [ts-async library](https://github.com/nevware21/ts-async)\r\n * @param async - send data asynchronously when true\r\n * @param callBack - if specified, notify caller when send is complete, the channel should return true to indicate to the caller that it will be called.\r\n * If the caller doesn't return true the caller should assume that it may never be called.\r\n * @returns - If a callback is provided `true` to indicate that callback will be called after the flush is complete otherwise the caller\r\n * should assume that any provided callback will never be called, Nothing or if occurring asynchronously a\r\n * [IPromise](https://nevware21.github.io/ts-async/typedoc/interfaces/IPromise.html) which will be resolved once the unload is complete,\r\n * the [IPromise](https://nevware21.github.io/ts-async/typedoc/interfaces/IPromise.html) will only be returned when no callback is provided\r\n * and async is true.\r\n */\r\n AppInsightsSku.prototype.flush = function (async, callBack) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n /**\r\n * Manually trigger an immediate send of all telemetry still in the buffer using beacon Sender.\r\n * Fall back to xhr sender if beacon is not supported.\r\n * @param [async=true]\r\n */\r\n AppInsightsSku.prototype.onunloadFlush = function (async) {\r\n if (async === void 0) { async = true; }\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n /**\r\n * Initialize this instance of ApplicationInsights\r\n * @returns {IApplicationInsights}\r\n * @param legacyMode - MUST always be false, it is no longer supported from v3.x onwards\r\n */\r\n AppInsightsSku.prototype.loadAppInsights = function (legacyMode, logger, notificationManager) {\r\n if (legacyMode === void 0) { legacyMode = false; }\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n return null;\r\n };\r\n /**\r\n * Overwrite the lazy loaded fields of global window snippet to contain the\r\n * actual initialized API methods\r\n * @param snippet - The global snippet\r\n */\r\n AppInsightsSku.prototype.updateSnippetDefinitions = function (snippet) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n /**\r\n * Call any functions that were queued before the main script was loaded\r\n */\r\n AppInsightsSku.prototype.emptyQueue = function () {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n AppInsightsSku.prototype.pollInternalLogs = function () {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n AppInsightsSku.prototype.stopPollingInternalLogs = function () {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n AppInsightsSku.prototype.addHousekeepingBeforeUnload = function (appInsightsInstance) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n AppInsightsSku.prototype.getSender = function () {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n return null;\r\n };\r\n /**\r\n * Unload and Tear down the SDK and any initialized plugins, after calling this the SDK will be considered\r\n * to be un-initialized and non-operational, re-initializing the SDK should only be attempted if the previous\r\n * unload call return `true` stating that all plugins reported that they also unloaded, the recommended\r\n * approach is to create a new instance and initialize that instance.\r\n * This is due to possible unexpected side effects caused by plugins not supporting unload / teardown, unable\r\n * to successfully remove any global references or they may just be completing the unload process asynchronously.\r\n * If you pass isAsync as true and do not provide\r\n * If you pass isAsync as `true` (also the default) and DO NOT pass a callback function then an [IPromise](https://nevware21.github.io/ts-async/typedoc/interfaces/IPromise.html)\r\n * will be returned which will resolve once the unload is complete. The actual implementation of the `IPromise`\r\n * will be a native Promise (if supported) or the default as supplied by [ts-async library](https://github.com/nevware21/ts-async)\r\n * @param isAsync - Can the unload be performed asynchronously (default)\r\n * @param unloadComplete - An optional callback that will be called once the unload has completed\r\n * @param cbTimeout - An optional timeout to wait for any flush operations to complete before proceeding with the\r\n * unload. Defaults to 5 seconds.\r\n * @returns Nothing or if occurring asynchronously a [IPromise](https://nevware21.github.io/ts-async/typedoc/interfaces/IPromise.html)\r\n * which will be resolved once the unload is complete, the [IPromise](https://nevware21.github.io/ts-async/typedoc/interfaces/IPromise.html)\r\n * will only be returned when no callback is provided and isAsync is true\r\n */\r\n AppInsightsSku.prototype.unload = function (isAsync, unloadComplete, cbTimeout) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n return null;\r\n };\r\n AppInsightsSku.prototype.getPlugin = function (pluginIdentifier) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n return null;\r\n };\r\n /**\r\n * Add a new plugin to the installation\r\n * @param plugin - The new plugin to add\r\n * @param replaceExisting - should any existing plugin be replaced, default is false\r\n * @param doAsync - Should the add be performed asynchronously\r\n * @param addCb - [Optional] callback to call after the plugin has been added\r\n */\r\n AppInsightsSku.prototype.addPlugin = function (plugin, replaceExisting, doAsync, addCb) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n /**\r\n * Update the configuration used and broadcast the changes to all loaded plugins\r\n * @param newConfig - The new configuration is apply\r\n * @param mergeExisting - Should the new configuration merge with the existing or just replace it. Default is to merge.\r\n */\r\n AppInsightsSku.prototype.updateCfg = function (newConfig, mergeExisting) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n /**\r\n * Returns the unique event namespace that should be used\r\n */\r\n AppInsightsSku.prototype.evtNamespace = function () {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n return null;\r\n };\r\n /**\r\n * Add an unload handler that will be called when the SDK is being unloaded\r\n * @param handler - the handler\r\n */\r\n AppInsightsSku.prototype.addUnloadCb = function (handler) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n /**\r\n * Add an ajax listener which is called just prior to the request being sent and before the correlation headers are added, to allow you\r\n * to access the headers and modify the values used to generate the distributed tracing correlation headers. (added in v2.8.4)\r\n * @param dependencyListener - The Telemetry Initializer function\r\n * @returns - A IDependencyListenerHandler to enable the initializer to be removed\r\n */\r\n AppInsightsSku.prototype.addDependencyListener = function (dependencyListener) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n return null;\r\n };\r\n /**\r\n * Add an dependency telemetry initializer callback function to allow populating additional properties or drop the request.\r\n * It is called after the dependency call has completed and any available performance details are available. A dependency\r\n * initializer is similar to the TelemetryInitializer function but it allows you to block the reporting of the dependency\r\n * request so that it doesn't count against the `maxAjaxCallsPerView`.\r\n * @param dependencyInitializer - The Dependency Telemetry Initializer function\r\n * @returns - A IDependencyInitializerHandler to enable the initializer to be removed\r\n */\r\n AppInsightsSku.prototype.addDependencyInitializer = function (dependencyInitializer) {\r\n return null;\r\n };\r\n /**\r\n * Gets the current distributed trace context for this instance if available\r\n */\r\n AppInsightsSku.prototype.getTraceCtx = function () {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n return null;\r\n };\r\n /**\r\n * Watches and tracks changes for accesses to the current config, and if the accessed config changes the\r\n * handler will be recalled.\r\n * @param handler - The handler to call when the config changes\r\n * @returns A watcher handler instance that can be used to remove itself when being unloaded\r\n */\r\n AppInsightsSku.prototype.onCfgChange = function (handler) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n return null;\r\n };\r\n return AppInsightsSku;\r\n}());\r\nexport { AppInsightsSku };\r\n// tslint:disable-next-line\r\nexport function _findSdkSourceFile() {\r\n if (_internalSdkSrc) {\r\n // Use the cached value\r\n return _internalSdkSrc;\r\n }\r\n var sdkSrc = null;\r\n var isModule = false;\r\n var cdns = [\r\n \"://js.monitor.azure.com/\",\r\n \"://az416426.vo.msecnd.net/\"\r\n ];\r\n try {\r\n // Try and determine whether the sdk is being loaded from the CDN\r\n // currentScript is only valid during initial processing\r\n var scrpt = (document || {}).currentScript;\r\n if (scrpt) {\r\n sdkSrc = scrpt.src;\r\n // } else {\r\n // // We need to update to at least typescript 2.9 for this to work :-(\r\n // // Leaving as a stub for now so after we upgrade this breadcrumb is available\r\n // let meta = import.meta;\r\n // sdkSrc = (meta || {}).url;\r\n // isModule = true;\r\n }\r\n }\r\n catch (e) {\r\n // eslint-disable-next-line no-empty\r\n }\r\n if (sdkSrc) {\r\n try {\r\n var url_1 = sdkSrc.toLowerCase();\r\n if (url_1) {\r\n var src_1 = \"\";\r\n arrForEach(cdns, function (value, idx) {\r\n if (strIndexOf(url_1, value) !== -1) {\r\n src_1 = \"cdn\" + (idx + 1);\r\n if (strIndexOf(url_1, \"/scripts/\") === -1) {\r\n if (strIndexOf(url_1, \"/next/\") !== -1) {\r\n src_1 += \"-next\";\r\n }\r\n else if (strIndexOf(url_1, \"/beta/\") !== -1) {\r\n src_1 += \"-beta\";\r\n }\r\n }\r\n _internalSdkSrc = src_1 + (isModule ? \".mod\" : \"\");\r\n return -1;\r\n }\r\n });\r\n }\r\n }\r\n catch (e) {\r\n // eslint-disable-next-line no-empty\r\n }\r\n // Cache the found value so we don't have to look it up again\r\n _internalSdkSrc = sdkSrc;\r\n }\r\n return _internalSdkSrc;\r\n}\r\n//# sourceMappingURL=AISku.js.map","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\n// @skip-file-minify\r\n// ##############################################################\r\n// AUTO GENERATED FILE: This file is Auto Generated during build.\r\n// ##############################################################\r\n// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\r\n// Note: DON'T Export these const from the package as we are still targeting ES3 this will export a mutable variables that someone could change!!!\r\n// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\r\nexport var _DYN_VERSION = \"version\"; // Count: 6\r\nexport var _DYN_QUEUE = \"queue\"; // Count: 6\r\nexport var _DYN_CONNECTION_STRING = \"connectionString\"; // Count: 4\r\nexport var _DYN_INSTRUMENTATION_KEY = \"instrumentationKey\"; // Count: 5\r\nexport var _DYN_INSTRUMENTATIONKEY0 = \"instrumentationkey\"; // Count: 2\r\nexport var _DYN_USER_OVERRIDE_ENDPOI1 = \"userOverrideEndpointUrl\"; // Count: 6\r\nexport var _DYN_ENDPOINT_URL = \"endpointUrl\"; // Count: 6\r\nexport var _DYN_INGESTIONENDPOINT = \"ingestionendpoint\"; // Count: 2\r\nexport var _DYN_ONUNLOAD_FLUSH = \"onunloadFlush\"; // Count: 6\r\nexport var _DYN_CONTEXT = \"context\"; // Count: 5\r\nexport var _DYN_ADD_HOUSEKEEPING_BEF2 = \"addHousekeepingBeforeUnload\"; // Count: 2\r\nexport var _DYN_SEND_MESSAGE = \"sendMessage\"; // Count: 3\r\nexport var _DYN_UPDATE_SNIPPET_DEFIN3 = \"updateSnippetDefinitions\"; // Count: 2\r\n//# sourceMappingURL=__DynamicConstants.js.map","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\nimport { createEnumStyle } from \"@microsoft/applicationinsights-core-js\";\r\n/**\r\n * Defines the level of severity for the event.\r\n */\r\nexport var SeverityLevel = createEnumStyle({\r\n Verbose: 0 /* eSeverityLevel.Verbose */,\r\n Information: 1 /* eSeverityLevel.Information */,\r\n Warning: 2 /* eSeverityLevel.Warning */,\r\n Error: 3 /* eSeverityLevel.Error */,\r\n Critical: 4 /* eSeverityLevel.Critical */\r\n});\r\n//# sourceMappingURL=SeverityLevel.js.map","/**\r\n* ReactPlugin.ts\r\n* @copyright Microsoft 2019\r\n*/\r\nimport { __extends } from \"tslib\";\r\nimport dynamicProto from \"@microsoft/dynamicproto-js\";\r\nimport { AnalyticsPluginIdentifier } from \"@microsoft/applicationinsights-common\";\r\nimport { BaseTelemetryPlugin, _throwInternal, isFunction, proxyFunctions, safeGetCookieMgr, onConfigChange, objDefineAccessors } from \"@microsoft/applicationinsights-core-js\";\r\nimport { objDeepFreeze } from \"@nevware21/ts-utils\";\r\nvar defaultReactExtensionConfig = objDeepFreeze({\r\n history: { blkVal: true, v: undefined }\r\n});\r\nvar ReactPlugin = /** @class */ (function (_super) {\r\n __extends(ReactPlugin, _super);\r\n function ReactPlugin() {\r\n var _this = _super.call(this) || this;\r\n _this.priority = 185;\r\n _this.identifier = 'ReactPlugin';\r\n var _analyticsPlugin;\r\n var _extensionConfig;\r\n var _unlisten;\r\n var _pageViewTimer;\r\n var _pageViewTracked;\r\n dynamicProto(ReactPlugin, _this, function (_self, _base) {\r\n _initDefaults();\r\n _self.initialize = function (config, core, extensions, pluginChain) {\r\n _super.prototype.initialize.call(_this, config, core, extensions, pluginChain);\r\n _self._addHook(onConfigChange(config, function (details) {\r\n var _a;\r\n var ctx = _self._getTelCtx();\r\n _extensionConfig = ctx.getExtCfg(_this.identifier, defaultReactExtensionConfig);\r\n _analyticsPlugin = (_a = core.getPlugin(AnalyticsPluginIdentifier)) === null || _a === void 0 ? void 0 : _a.plugin;\r\n if (isFunction(_unlisten)) {\r\n _unlisten();\r\n _unlisten = null;\r\n }\r\n if (_extensionConfig.history) {\r\n _addHistoryListener(_extensionConfig.history);\r\n if (!_pageViewTracked) {\r\n var pageViewTelemetry = {\r\n uri: _extensionConfig.history.location.pathname\r\n };\r\n _self.trackPageView(pageViewTelemetry);\r\n _pageViewTracked = true;\r\n }\r\n }\r\n }));\r\n };\r\n _self.getCookieMgr = function () {\r\n return safeGetCookieMgr(_self.core);\r\n };\r\n _self.getAppInsights = _getAnalytics;\r\n _self.processTelemetry = function (event, itemCtx) {\r\n _self.processNext(event, itemCtx);\r\n };\r\n _self._doTeardown = function (unloadCtx, unloadState, asyncCallback) {\r\n if (isFunction(_unlisten)) {\r\n _unlisten();\r\n }\r\n if (_pageViewTimer) {\r\n clearTimeout(_pageViewTimer);\r\n }\r\n _initDefaults();\r\n };\r\n // Proxy the analytics functions\r\n proxyFunctions(_self, _getAnalytics, [\r\n \"trackMetric\",\r\n \"trackPageView\",\r\n \"trackEvent\",\r\n \"trackException\",\r\n \"trackTrace\",\r\n ]);\r\n function _initDefaults() {\r\n _analyticsPlugin = null;\r\n _extensionConfig = null;\r\n _unlisten = null;\r\n _pageViewTimer = null;\r\n _pageViewTracked = false;\r\n }\r\n function _getAnalytics() {\r\n if (!_analyticsPlugin) {\r\n _throwInternal(_self.diagLog(), 1 /* eLoggingSeverity.CRITICAL */, 64 /* _eInternalMessageId.TelemetryInitializerFailed */, \"Analytics plugin is not available, React plugin telemetry will not be sent: \");\r\n }\r\n return _analyticsPlugin;\r\n }\r\n function _addHistoryListener(history) {\r\n var locationListener = function (arg) {\r\n // v4 of the history API passes \"location\" as the first argument, while v5 passes an object that contains location and action \r\n var locn = null;\r\n if (\"location\" in arg) {\r\n // Looks like v5\r\n locn = arg[\"location\"];\r\n }\r\n else {\r\n locn = arg;\r\n }\r\n // Timeout to ensure any changes to the DOM made by route changes get included in pageView telemetry\r\n _pageViewTimer = setTimeout(function () {\r\n _pageViewTimer = null;\r\n var pageViewTelemetry = { uri: locn.pathname };\r\n _self.trackPageView(pageViewTelemetry);\r\n }, 500);\r\n };\r\n _unlisten = history.listen(locationListener);\r\n }\r\n objDefineAccessors(_self, \"_extensionConfig\", function () { return _extensionConfig; });\r\n });\r\n return _this;\r\n }\r\n ReactPlugin.prototype.initialize = function (config, core, extensions, pluginChain) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n /**\r\n * Get the current cookie manager for this instance\r\n */\r\n ReactPlugin.prototype.getCookieMgr = function () {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n return null;\r\n };\r\n /**\r\n * Get application insights instance.\r\n */\r\n ReactPlugin.prototype.getAppInsights = function () {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n return null;\r\n };\r\n /**\r\n * Add Part A fields to the event\r\n * @param event The event that needs to be processed\r\n */\r\n ReactPlugin.prototype.processTelemetry = function (event, itemCtx) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n ReactPlugin.prototype.trackMetric = function (metric, customProperties) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n ReactPlugin.prototype.trackPageView = function (pageView) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n ReactPlugin.prototype.trackEvent = function (event, customProperties) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n ReactPlugin.prototype.trackException = function (exception, customProperties) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n ReactPlugin.prototype.trackTrace = function (trace, customProperties) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n return ReactPlugin;\r\n}(BaseTelemetryPlugin));\r\nexport default ReactPlugin;\r\n//# sourceMappingURL=ReactPlugin.js.map","// lifted and adapted from https://github.com/Azure-Samples/application-insights-react-demo/blob/master/src/TelemetryService.js\r\n// initialises the Application Insights instance\r\nimport { ApplicationInsights, SeverityLevel } from \"@microsoft/applicationinsights-web\";\r\nimport { ReactPlugin } from \"@microsoft/applicationinsights-react-js\";\r\n\r\nlet reactPlugin: ReactPlugin | null = null;\r\nlet appInsights: ApplicationInsights | null = null;\r\n\r\n// intialiser\r\n// - history object will no longer be available in react-router v6, use enableAutoRouteTracking as per https://learn.microsoft.com/en-us/azure/azure-monitor/app/javascript-react-plugin\r\n// - as noted in a github issue this will mean losing pageview duration data, but I don't believe this is used: https://github.com/microsoft/applicationinsights-react-js/issues/13#issuecomment-1201875312\r\nfunction createTelemetryService() {\r\n const initialize = (connectionString: string, browserHistory: any) => {\r\n if (!browserHistory) {\r\n throw new Error(\"Could not initialize Telemetry Service\");\r\n }\r\n if (!connectionString) {\r\n throw new Error(\"Connection string not provided in ./src/telemetry-provider.jsx\");\r\n }\r\n\r\n reactPlugin = new ReactPlugin();\r\n\r\n appInsights = new ApplicationInsights({\r\n config: {\r\n connectionString: connectionString,\r\n maxBatchInterval: 0,\r\n disableFetchTracking: false,\r\n extensions: [reactPlugin],\r\n extensionConfig: {\r\n [reactPlugin.identifier]: {\r\n history: browserHistory,\r\n },\r\n },\r\n },\r\n });\r\n\r\n appInsights.loadAppInsights();\r\n };\r\n\r\n return { reactPlugin, appInsights, initialize };\r\n}\r\n\r\n// for integration with TelemetryProvider\r\nexport const ai = createTelemetryService();\r\n\r\n//\r\n// helper functions\r\n//\r\n\r\nexport function logError(message: string) {\r\n if (appInsights !== null) appInsights.trackException({ error: new Error(message), severityLevel: SeverityLevel.Error });\r\n}\r\n\r\nexport function logTrace(message: string) {\r\n if (appInsights !== null) appInsights.trackTrace({ message });\r\n}\r\n","function r(e){var t,f,n=\"\";if(\"string\"==typeof e||\"number\"==typeof e)n+=e;else if(\"object\"==typeof e)if(Array.isArray(e)){var o=e.length;for(t=0;t*{opacity:0}.Toastify__toast--stacked:after{content:\\\"\\\";position:absolute;left:0;right:0;height:calc(var(--g) * 1px);bottom:100%}.Toastify__toast--stacked[data-pos=top]{top:0}.Toastify__toast--stacked[data-pos=bot]{bottom:0}.Toastify__toast--stacked[data-pos=bot].Toastify__toast--stacked:before{transform-origin:top}.Toastify__toast--stacked[data-pos=top].Toastify__toast--stacked:before{transform-origin:bottom}.Toastify__toast--stacked:before{content:\\\"\\\";position:absolute;left:0;right:0;bottom:0;height:100%;transform:scaleY(3);z-index:-1}.Toastify__toast--rtl{direction:rtl}.Toastify__toast--close-on-click{cursor:pointer}.Toastify__toast-icon{margin-inline-end:10px;width:22px;flex-shrink:0;display:flex}.Toastify--animate{animation-fill-mode:both;animation-duration:.5s}.Toastify--animate-icon{animation-fill-mode:both;animation-duration:.3s}.Toastify__toast-theme--dark{background:var(--toastify-color-dark);color:var(--toastify-text-color-dark)}.Toastify__toast-theme--light,.Toastify__toast-theme--colored.Toastify__toast--default{background:var(--toastify-color-light);color:var(--toastify-text-color-light)}.Toastify__toast-theme--colored.Toastify__toast--info{color:var(--toastify-text-color-info);background:var(--toastify-color-info)}.Toastify__toast-theme--colored.Toastify__toast--success{color:var(--toastify-text-color-success);background:var(--toastify-color-success)}.Toastify__toast-theme--colored.Toastify__toast--warning{color:var(--toastify-text-color-warning);background:var(--toastify-color-warning)}.Toastify__toast-theme--colored.Toastify__toast--error{color:var(--toastify-text-color-error);background:var(--toastify-color-error)}.Toastify__progress-bar-theme--light{background:var(--toastify-color-progress-light)}.Toastify__progress-bar-theme--dark{background:var(--toastify-color-progress-dark)}.Toastify__progress-bar--info{background:var(--toastify-color-progress-info)}.Toastify__progress-bar--success{background:var(--toastify-color-progress-success)}.Toastify__progress-bar--warning{background:var(--toastify-color-progress-warning)}.Toastify__progress-bar--error{background:var(--toastify-color-progress-error)}.Toastify__progress-bar-theme--colored.Toastify__progress-bar--info,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--success,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--warning,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--error{background:var(--toastify-color-transparent)}.Toastify__close-button{color:#fff;position:absolute;top:6px;right:6px;background:transparent;outline:none;border:none;padding:0;cursor:pointer;opacity:.7;transition:.3s ease;z-index:1}.Toastify__toast--rtl .Toastify__close-button{left:6px;right:unset}.Toastify__close-button--light{color:#000;opacity:.3}.Toastify__close-button>svg{fill:currentColor;height:16px;width:14px}.Toastify__close-button:hover,.Toastify__close-button:focus{opacity:1}@keyframes Toastify__trackProgress{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.Toastify__progress-bar{position:absolute;bottom:0;left:0;width:100%;height:100%;z-index:1;opacity:.7;transform-origin:left}.Toastify__progress-bar--animated{animation:Toastify__trackProgress linear 1 forwards}.Toastify__progress-bar--controlled{transition:transform .2s}.Toastify__progress-bar--rtl{right:0;left:initial;transform-origin:right;border-bottom-left-radius:initial}.Toastify__progress-bar--wrp{position:absolute;overflow:hidden;bottom:0;left:0;width:100%;height:5px;border-bottom-left-radius:var(--toastify-toast-bd-radius);border-bottom-right-radius:var(--toastify-toast-bd-radius)}.Toastify__progress-bar--wrp[data-hidden=true]{opacity:0}.Toastify__progress-bar--bg{opacity:var(--toastify-color-progress-bgo);width:100%;height:100%}.Toastify__spinner{width:20px;height:20px;box-sizing:border-box;border:2px solid;border-radius:100%;border-color:var(--toastify-spinner-color-empty-area);border-right-color:var(--toastify-spinner-color);animation:Toastify__spin .65s linear infinite}@keyframes Toastify__bounceInRight{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(3000px,0,0)}60%{opacity:1;transform:translate3d(-25px,0,0)}75%{transform:translate3d(10px,0,0)}90%{transform:translate3d(-5px,0,0)}to{transform:none}}@keyframes Toastify__bounceOutRight{20%{opacity:1;transform:translate3d(-20px,var(--y),0)}to{opacity:0;transform:translate3d(2000px,var(--y),0)}}@keyframes Toastify__bounceInLeft{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(-3000px,0,0)}60%{opacity:1;transform:translate3d(25px,0,0)}75%{transform:translate3d(-10px,0,0)}90%{transform:translate3d(5px,0,0)}to{transform:none}}@keyframes Toastify__bounceOutLeft{20%{opacity:1;transform:translate3d(20px,var(--y),0)}to{opacity:0;transform:translate3d(-2000px,var(--y),0)}}@keyframes Toastify__bounceInUp{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(0,3000px,0)}60%{opacity:1;transform:translate3d(0,-20px,0)}75%{transform:translate3d(0,10px,0)}90%{transform:translate3d(0,-5px,0)}to{transform:translateZ(0)}}@keyframes Toastify__bounceOutUp{20%{transform:translate3d(0,calc(var(--y) - 10px),0)}40%,45%{opacity:1;transform:translate3d(0,calc(var(--y) + 20px),0)}to{opacity:0;transform:translate3d(0,-2000px,0)}}@keyframes Toastify__bounceInDown{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(0,-3000px,0)}60%{opacity:1;transform:translate3d(0,25px,0)}75%{transform:translate3d(0,-10px,0)}90%{transform:translate3d(0,5px,0)}to{transform:none}}@keyframes Toastify__bounceOutDown{20%{transform:translate3d(0,calc(var(--y) - 10px),0)}40%,45%{opacity:1;transform:translate3d(0,calc(var(--y) + 20px),0)}to{opacity:0;transform:translate3d(0,2000px,0)}}.Toastify__bounce-enter--top-left,.Toastify__bounce-enter--bottom-left{animation-name:Toastify__bounceInLeft}.Toastify__bounce-enter--top-right,.Toastify__bounce-enter--bottom-right{animation-name:Toastify__bounceInRight}.Toastify__bounce-enter--top-center{animation-name:Toastify__bounceInDown}.Toastify__bounce-enter--bottom-center{animation-name:Toastify__bounceInUp}.Toastify__bounce-exit--top-left,.Toastify__bounce-exit--bottom-left{animation-name:Toastify__bounceOutLeft}.Toastify__bounce-exit--top-right,.Toastify__bounce-exit--bottom-right{animation-name:Toastify__bounceOutRight}.Toastify__bounce-exit--top-center{animation-name:Toastify__bounceOutUp}.Toastify__bounce-exit--bottom-center{animation-name:Toastify__bounceOutDown}@keyframes Toastify__zoomIn{0%{opacity:0;transform:scale3d(.3,.3,.3)}50%{opacity:1}}@keyframes Toastify__zoomOut{0%{opacity:1}50%{opacity:0;transform:translate3d(0,var(--y),0) scale3d(.3,.3,.3)}to{opacity:0}}.Toastify__zoom-enter{animation-name:Toastify__zoomIn}.Toastify__zoom-exit{animation-name:Toastify__zoomOut}@keyframes Toastify__flipIn{0%{transform:perspective(400px) rotateX(90deg);animation-timing-function:ease-in;opacity:0}40%{transform:perspective(400px) rotateX(-20deg);animation-timing-function:ease-in}60%{transform:perspective(400px) rotateX(10deg);opacity:1}80%{transform:perspective(400px) rotateX(-5deg)}to{transform:perspective(400px)}}@keyframes Toastify__flipOut{0%{transform:translate3d(0,var(--y),0) perspective(400px)}30%{transform:translate3d(0,var(--y),0) perspective(400px) rotateX(-20deg);opacity:1}to{transform:translate3d(0,var(--y),0) perspective(400px) rotateX(90deg);opacity:0}}.Toastify__flip-enter{animation-name:Toastify__flipIn}.Toastify__flip-exit{animation-name:Toastify__flipOut}@keyframes Toastify__slideInRight{0%{transform:translate3d(110%,0,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideInLeft{0%{transform:translate3d(-110%,0,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideInUp{0%{transform:translate3d(0,110%,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideInDown{0%{transform:translate3d(0,-110%,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideOutRight{0%{transform:translate3d(0,var(--y),0)}to{visibility:hidden;transform:translate3d(110%,var(--y),0)}}@keyframes Toastify__slideOutLeft{0%{transform:translate3d(0,var(--y),0)}to{visibility:hidden;transform:translate3d(-110%,var(--y),0)}}@keyframes Toastify__slideOutDown{0%{transform:translate3d(0,var(--y),0)}to{visibility:hidden;transform:translate3d(0,500px,0)}}@keyframes Toastify__slideOutUp{0%{transform:translate3d(0,var(--y),0)}to{visibility:hidden;transform:translate3d(0,-500px,0)}}.Toastify__slide-enter--top-left,.Toastify__slide-enter--bottom-left{animation-name:Toastify__slideInLeft}.Toastify__slide-enter--top-right,.Toastify__slide-enter--bottom-right{animation-name:Toastify__slideInRight}.Toastify__slide-enter--top-center{animation-name:Toastify__slideInDown}.Toastify__slide-enter--bottom-center{animation-name:Toastify__slideInUp}.Toastify__slide-exit--top-left,.Toastify__slide-exit--bottom-left{animation-name:Toastify__slideOutLeft;animation-timing-function:ease-in;animation-duration:.3s}.Toastify__slide-exit--top-right,.Toastify__slide-exit--bottom-right{animation-name:Toastify__slideOutRight;animation-timing-function:ease-in;animation-duration:.3s}.Toastify__slide-exit--top-center{animation-name:Toastify__slideOutUp;animation-timing-function:ease-in;animation-duration:.3s}.Toastify__slide-exit--bottom-center{animation-name:Toastify__slideOutDown;animation-timing-function:ease-in;animation-duration:.3s}@keyframes Toastify__spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}\\n\");","import { isValidElement } from 'react';\nimport { Id } from '../types';\n\nexport const isNum = (v: any): v is Number => typeof v === 'number' && !isNaN(v);\n\nexport const isStr = (v: any): v is String => typeof v === 'string';\n\nexport const isFn = (v: any): v is Function => typeof v === 'function';\n\nexport const isId = (v: unknown): v is Id => isStr(v) || isNum(v);\n\nexport const parseClassName = (v: any) => (isStr(v) || isFn(v) ? v : null);\n\nexport const getAutoCloseDelay = (toastAutoClose?: false | number, containerAutoClose?: false | number) =>\n toastAutoClose === false || (isNum(toastAutoClose) && toastAutoClose > 0) ? toastAutoClose : containerAutoClose;\n\nexport const canBeRendered = (content: T): boolean =>\n isValidElement(content) || isStr(content) || isFn(content) || isNum(content);\n","import React, { useEffect, useLayoutEffect, useRef } from 'react';\nimport { collapseToast } from './collapseToast';\nimport { Default } from './constant';\n\nimport { ToastTransitionProps } from '../types';\n\nexport interface CSSTransitionProps {\n /**\n * Css class to apply when toast enter\n */\n enter: string;\n\n /**\n * Css class to apply when toast leave\n */\n exit: string;\n\n /**\n * Append current toast position to the classname.\n * If multiple classes are provided, only the last one will get the position\n * For instance `myclass--top-center`...\n * `Default: false`\n */\n appendPosition?: boolean;\n\n /**\n * Collapse toast smoothly when exit animation end\n * `Default: true`\n */\n collapse?: boolean;\n\n /**\n * Collapse transition duration\n * `Default: 300`\n */\n collapseDuration?: number;\n}\n\nconst enum AnimationStep {\n Enter,\n Exit\n}\n\n/**\n * Css animation that just work.\n * You could use animate.css for instance\n *\n *\n * ```\n * cssTransition({\n * enter: \"animate__animated animate__bounceIn\",\n * exit: \"animate__animated animate__bounceOut\"\n * })\n * ```\n *\n */\nexport function cssTransition({\n enter,\n exit,\n appendPosition = false,\n collapse = true,\n collapseDuration = Default.COLLAPSE_DURATION\n}: CSSTransitionProps) {\n return function ToastTransition({\n children,\n position,\n preventExitTransition,\n done,\n nodeRef,\n isIn,\n playToast\n }: ToastTransitionProps) {\n const enterClassName = appendPosition ? `${enter}--${position}` : enter;\n const exitClassName = appendPosition ? `${exit}--${position}` : exit;\n const animationStep = useRef(AnimationStep.Enter);\n\n useLayoutEffect(() => {\n const node = nodeRef.current!;\n const classToToken = enterClassName.split(' ');\n\n const onEntered = (e: AnimationEvent) => {\n if (e.target !== nodeRef.current) return;\n\n playToast();\n node.removeEventListener('animationend', onEntered);\n node.removeEventListener('animationcancel', onEntered);\n if (animationStep.current === AnimationStep.Enter && e.type !== 'animationcancel') {\n node.classList.remove(...classToToken);\n }\n };\n\n const onEnter = () => {\n node.classList.add(...classToToken);\n node.addEventListener('animationend', onEntered);\n node.addEventListener('animationcancel', onEntered);\n };\n\n onEnter();\n }, []);\n\n useEffect(() => {\n const node = nodeRef.current!;\n\n const onExited = () => {\n node.removeEventListener('animationend', onExited);\n collapse ? collapseToast(node, done, collapseDuration) : done();\n };\n\n const onExit = () => {\n animationStep.current = AnimationStep.Exit;\n node.className += ` ${exitClassName}`;\n node.addEventListener('animationend', onExited);\n };\n\n if (!isIn) preventExitTransition ? onExited() : onExit();\n }, [isIn]);\n\n return <>{children};\n };\n}\n","import { Default } from './constant';\n\n/**\n * Used to collapse toast after exit animation\n */\nexport function collapseToast(node: HTMLElement, done: () => void, duration = Default.COLLAPSE_DURATION) {\n const { scrollHeight, style } = node;\n\n requestAnimationFrame(() => {\n style.minHeight = 'initial';\n style.height = scrollHeight + 'px';\n style.transition = `all ${duration}ms`;\n\n requestAnimationFrame(() => {\n style.height = '0';\n style.padding = '0';\n style.margin = '0';\n setTimeout(done, duration as number);\n });\n });\n}\n","import { Toast, ToastContentProps, ToastItem, ToastItemStatus, ToastProps } from '../types';\nimport { cloneElement, isValidElement, ReactElement } from 'react';\nimport { isFn, isStr } from './propValidator';\n\nexport function toToastItem(toast: Toast, status: ToastItemStatus): ToastItem {\n return {\n content: renderContent(toast.content, toast.props),\n containerId: toast.props.containerId,\n id: toast.props.toastId,\n theme: toast.props.theme,\n type: toast.props.type,\n data: toast.props.data || {},\n isLoading: toast.props.isLoading,\n icon: toast.props.icon,\n reason: toast.removalReason,\n status\n };\n}\n\nexport function renderContent(content: unknown, props: ToastProps, isPaused: boolean = false) {\n if (isValidElement(content) && !isStr(content.type)) {\n return cloneElement(content as ReactElement, {\n closeToast: props.closeToast,\n toastProps: props,\n data: props.data,\n isPaused\n });\n } else if (isFn(content)) {\n return content({\n closeToast: props.closeToast,\n toastProps: props,\n data: props.data,\n isPaused\n });\n }\n\n return content;\n}\n","import React from 'react';\nimport cx from 'clsx';\n\nimport { Default, isFn, Type } from '../utils';\nimport { Theme, ToastClassName, TypeOptions } from '../types';\n\nexport interface ProgressBarProps {\n /**\n * The animation delay which determine when to close the toast\n */\n delay: number;\n\n /**\n * The animation is running or paused\n */\n isRunning: boolean;\n\n /**\n * Func to close the current toast\n */\n closeToast: () => void;\n\n /**\n * Optional type : info, success ...\n */\n type?: TypeOptions;\n\n /**\n * The theme that is currently used\n */\n theme: Theme;\n\n /**\n * Hide or not the progress bar\n */\n hide?: boolean;\n\n /**\n * Optional className\n */\n className?: ToastClassName;\n\n /**\n * Tell whether a controlled progress bar is used\n */\n controlledProgress?: boolean;\n\n /**\n * Controlled progress value\n */\n progress?: number | string;\n\n /**\n * Support rtl content\n */\n rtl?: boolean;\n\n /**\n * Tell if the component is visible on screen or not\n */\n isIn?: boolean;\n}\n\nexport function ProgressBar({\n delay,\n isRunning,\n closeToast,\n type = Type.DEFAULT,\n hide,\n className,\n controlledProgress,\n progress,\n rtl,\n isIn,\n theme\n}: ProgressBarProps) {\n const isHidden = hide || (controlledProgress && progress === 0);\n const style: React.CSSProperties = {\n animationDuration: `${delay}ms`,\n animationPlayState: isRunning ? 'running' : 'paused'\n };\n\n if (controlledProgress) style.transform = `scaleX(${progress})`;\n const defaultClassName = cx(\n `${Default.CSS_NAMESPACE}__progress-bar`,\n controlledProgress\n ? `${Default.CSS_NAMESPACE}__progress-bar--controlled`\n : `${Default.CSS_NAMESPACE}__progress-bar--animated`,\n `${Default.CSS_NAMESPACE}__progress-bar-theme--${theme}`,\n `${Default.CSS_NAMESPACE}__progress-bar--${type}`,\n {\n [`${Default.CSS_NAMESPACE}__progress-bar--rtl`]: rtl\n }\n );\n const classNames = isFn(className)\n ? className({\n rtl,\n type,\n defaultClassName\n })\n : cx(defaultClassName, className);\n\n // 🧐 controlledProgress is derived from progress\n // so if controlledProgress is set\n // it means that this is also the case for progress\n const animationEvent = {\n [controlledProgress && (progress as number)! >= 1 ? 'onTransitionEnd' : 'onAnimationEnd']:\n controlledProgress && (progress as number)! < 1\n ? null\n : () => {\n isIn && closeToast();\n }\n };\n\n // TODO: add aria-valuenow, aria-valuemax, aria-valuemin\n\n return (\n
\n \n \n
\n );\n}\n","let TOAST_ID = 1;\n\nexport const genToastId = () => `${TOAST_ID++}`;\n","import {\n Id,\n NotValidatedToastProps,\n OnChangeCallback,\n Toast,\n ToastContainerProps,\n ToastContent,\n ToastProps\n} from '../types';\nimport { canBeRendered, getAutoCloseDelay, isNum, parseClassName, toToastItem } from '../utils';\n\ntype Notify = () => void;\n\nexport type ContainerObserver = ReturnType;\n\nexport function createContainerObserver(\n id: Id,\n containerProps: ToastContainerProps,\n dispatchChanges: OnChangeCallback\n) {\n let toastKey = 1;\n let toastCount = 0;\n let queue: Toast[] = [];\n let snapshot: Toast[] = [];\n let props = containerProps;\n const toasts = new Map();\n const listeners = new Set();\n\n const observe = (notify: Notify) => {\n listeners.add(notify);\n return () => listeners.delete(notify);\n };\n\n const notify = () => {\n snapshot = Array.from(toasts.values());\n listeners.forEach(cb => cb());\n };\n\n const shouldIgnoreToast = ({ containerId, toastId, updateId }: NotValidatedToastProps) => {\n const containerMismatch = containerId ? containerId !== id : id !== 1;\n const isDuplicate = toasts.has(toastId) && updateId == null;\n\n return containerMismatch || isDuplicate;\n };\n\n const toggle = (v: boolean, id?: Id) => {\n toasts.forEach(t => {\n if (id == null || id === t.props.toastId) t.toggle?.(v);\n });\n };\n\n const markAsRemoved = (v: Toast) => {\n v.props?.onClose?.(v.removalReason);\n v.isActive = false;\n };\n\n const removeToast = (id?: Id) => {\n if (id == null) {\n toasts.forEach(markAsRemoved);\n } else {\n const t = toasts.get(id);\n if (t) markAsRemoved(t);\n }\n notify();\n };\n\n const clearQueue = () => {\n toastCount -= queue.length;\n queue = [];\n };\n\n const addActiveToast = (toast: Toast) => {\n const { toastId, updateId } = toast.props;\n const isNew = updateId == null;\n\n if (toast.staleId) toasts.delete(toast.staleId);\n toast.isActive = true;\n\n toasts.set(toastId, toast);\n notify();\n dispatchChanges(toToastItem(toast, isNew ? 'added' : 'updated'));\n\n if (isNew) toast.props.onOpen?.();\n };\n\n const buildToast = (content: ToastContent, options: NotValidatedToastProps) => {\n if (shouldIgnoreToast(options)) return;\n\n const { toastId, updateId, data, staleId, delay } = options;\n\n const isNotAnUpdate = updateId == null;\n\n if (isNotAnUpdate) toastCount++;\n\n const toastProps = {\n ...props,\n style: props.toastStyle,\n key: toastKey++,\n ...Object.fromEntries(Object.entries(options).filter(([_, v]) => v != null)),\n toastId,\n updateId,\n data,\n isIn: false,\n className: parseClassName(options.className || props.toastClassName),\n progressClassName: parseClassName(options.progressClassName || props.progressClassName),\n autoClose: options.isLoading ? false : getAutoCloseDelay(options.autoClose, props.autoClose),\n closeToast(reason?: true) {\n toasts.get(toastId)!.removalReason = reason;\n removeToast(toastId);\n },\n deleteToast() {\n const toastToRemove = toasts.get(toastId);\n\n if (toastToRemove == null) return;\n\n dispatchChanges(toToastItem(toastToRemove, 'removed'));\n toasts.delete(toastId);\n\n toastCount--;\n if (toastCount < 0) toastCount = 0;\n\n if (queue.length > 0) {\n addActiveToast(queue.shift());\n return;\n }\n\n notify();\n }\n } as ToastProps;\n\n toastProps.closeButton = props.closeButton;\n\n if (options.closeButton === false || canBeRendered(options.closeButton)) {\n toastProps.closeButton = options.closeButton;\n } else if (options.closeButton === true) {\n toastProps.closeButton = canBeRendered(props.closeButton) ? props.closeButton : true;\n }\n\n const activeToast = {\n content,\n props: toastProps,\n staleId\n } as Toast;\n\n // not handling limit + delay by design. Waiting for user feedback first\n if (props.limit && props.limit > 0 && toastCount > props.limit && isNotAnUpdate) {\n queue.push(activeToast);\n } else if (isNum(delay)) {\n setTimeout(() => {\n addActiveToast(activeToast);\n }, delay);\n } else {\n addActiveToast(activeToast);\n }\n };\n\n return {\n id,\n props,\n observe,\n toggle,\n removeToast,\n toasts,\n clearQueue,\n buildToast,\n setProps(p: ToastContainerProps) {\n props = p;\n },\n setToggle: (id: Id, fn: (v: boolean) => void) => {\n const t = toasts.get(id);\n if (t) t.toggle = fn;\n },\n isToastActive: (id: Id) => toasts.get(id)?.isActive,\n getSnapshot: () => snapshot\n };\n}\n","import {\n ClearWaitingQueueParams,\n Id,\n NotValidatedToastProps,\n OnChangeCallback,\n ToastContainerProps,\n ToastContent,\n ToastItem,\n ToastOptions\n} from '../types';\nimport { Default, canBeRendered, isId } from '../utils';\nimport { ContainerObserver, createContainerObserver } from './containerObserver';\n\ninterface EnqueuedToast {\n content: ToastContent;\n options: NotValidatedToastProps;\n}\n\ninterface RemoveParams {\n id?: Id;\n containerId: Id;\n}\n\nconst containers = new Map();\nlet renderQueue: EnqueuedToast[] = [];\nconst listeners = new Set();\n\nconst dispatchChanges = (data: ToastItem) => listeners.forEach(cb => cb(data));\n\nconst hasContainers = () => containers.size > 0;\n\nfunction flushRenderQueue() {\n renderQueue.forEach(v => pushToast(v.content, v.options));\n renderQueue = [];\n}\n\nexport const getToast = (id: Id, { containerId }: ToastOptions) =>\n containers.get(containerId || Default.CONTAINER_ID)?.toasts.get(id);\n\nexport function isToastActive(id: Id, containerId?: Id) {\n if (containerId) return !!containers.get(containerId)?.isToastActive(id);\n\n let isActive = false;\n containers.forEach(c => {\n if (c.isToastActive(id)) isActive = true;\n });\n\n return isActive;\n}\n\nexport function removeToast(params?: Id | RemoveParams) {\n if (!hasContainers()) {\n renderQueue = renderQueue.filter(v => params != null && v.options.toastId !== params);\n return;\n }\n\n if (params == null || isId(params)) {\n containers.forEach(c => {\n c.removeToast(params as Id);\n });\n } else if (params && ('containerId' in params || 'id' in params)) {\n const container = containers.get(params.containerId);\n container\n ? container.removeToast(params.id)\n : containers.forEach(c => {\n c.removeToast(params.id);\n });\n }\n}\n\nexport const clearWaitingQueue = (p: ClearWaitingQueueParams = {}) => {\n containers.forEach(c => {\n if (c.props.limit && (!p.containerId || c.id === p.containerId)) {\n c.clearQueue();\n }\n });\n};\n\nexport function pushToast(content: ToastContent, options: NotValidatedToastProps) {\n if (!canBeRendered(content)) return;\n if (!hasContainers()) renderQueue.push({ content, options });\n\n containers.forEach(c => {\n c.buildToast(content, options);\n });\n}\n\ninterface ToggleToastParams {\n id?: Id;\n containerId?: Id;\n}\n\ntype RegisterToggleOpts = {\n id: Id;\n containerId?: Id;\n fn: (v: boolean) => void;\n};\n\nexport function registerToggle(opts: RegisterToggleOpts) {\n containers.get(opts.containerId || Default.CONTAINER_ID)?.setToggle(opts.id, opts.fn);\n}\n\nexport function toggleToast(v: boolean, opt?: ToggleToastParams) {\n containers.forEach(c => {\n if (opt == null || !opt?.containerId) {\n c.toggle(v, opt?.id);\n } else if (opt?.containerId === c.id) {\n c.toggle(v, opt?.id);\n }\n });\n}\n\nexport function registerContainer(props: ToastContainerProps) {\n const id = props.containerId || Default.CONTAINER_ID;\n return {\n subscribe(notify: () => void) {\n const container = createContainerObserver(id, props, dispatchChanges);\n\n containers.set(id, container);\n const unobserve = container.observe(notify);\n flushRenderQueue();\n\n return () => {\n unobserve();\n containers.delete(id);\n };\n },\n setProps(p: ToastContainerProps) {\n containers.get(id)?.setProps(p);\n },\n getSnapshot() {\n return containers.get(id)?.getSnapshot();\n }\n };\n}\n\nexport function onChange(cb: OnChangeCallback) {\n listeners.add(cb);\n\n return () => {\n listeners.delete(cb);\n };\n}\n","import {\n ClearWaitingQueueFunc,\n Id,\n IdOpts,\n NotValidatedToastProps,\n OnChangeCallback,\n ToastContent,\n ToastOptions,\n ToastProps,\n TypeOptions,\n UpdateOptions\n} from '../types';\nimport { isFn, isNum, isStr, Type } from '../utils';\nimport { genToastId } from './genToastId';\nimport { clearWaitingQueue, getToast, isToastActive, onChange, pushToast, removeToast, toggleToast } from './store';\n\n/**\n * Generate a toastId or use the one provided\n */\nfunction getToastId(options?: ToastOptions) {\n return options && (isStr(options.toastId) || isNum(options.toastId)) ? options.toastId : genToastId();\n}\n\n/**\n * If the container is not mounted, the toast is enqueued\n */\nfunction dispatchToast(content: ToastContent, options: NotValidatedToastProps): Id {\n pushToast(content, options);\n return options.toastId;\n}\n\n/**\n * Merge provided options with the defaults settings and generate the toastId\n */\nfunction mergeOptions(type: string, options?: ToastOptions) {\n return {\n ...options,\n type: (options && options.type) || type,\n toastId: getToastId(options)\n } as NotValidatedToastProps;\n}\n\nfunction createToastByType(type: string) {\n return (content: ToastContent, options?: ToastOptions) =>\n dispatchToast(content, mergeOptions(type, options));\n}\n\nfunction toast(content: ToastContent, options?: ToastOptions) {\n return dispatchToast(content, mergeOptions(Type.DEFAULT, options));\n}\n\ntoast.loading = (content: ToastContent, options?: ToastOptions) =>\n dispatchToast(\n content,\n mergeOptions(Type.DEFAULT, {\n isLoading: true,\n autoClose: false,\n closeOnClick: false,\n closeButton: false,\n draggable: false,\n ...options\n })\n );\n\nexport interface ToastPromiseParams {\n pending?: string | UpdateOptions;\n success?: string | UpdateOptions;\n error?: string | UpdateOptions;\n}\n\nfunction handlePromise(\n promise: Promise | (() => Promise),\n { pending, error, success }: ToastPromiseParams,\n options?: ToastOptions\n) {\n let id: Id;\n\n if (pending) {\n id = isStr(pending)\n ? toast.loading(pending, options)\n : toast.loading(pending.render, {\n ...options,\n ...(pending as ToastOptions)\n } as ToastOptions);\n }\n\n const resetParams = {\n isLoading: null,\n autoClose: null,\n closeOnClick: null,\n closeButton: null,\n draggable: null\n };\n\n const resolver = (type: TypeOptions, input: string | UpdateOptions | undefined, result: T) => {\n // Remove the toast if the input has not been provided. This prevents the toast from hanging\n // in the pending state if a success/error toast has not been provided.\n if (input == null) {\n toast.dismiss(id);\n return;\n }\n\n const baseParams = {\n type,\n ...resetParams,\n ...options,\n data: result\n };\n const params = isStr(input) ? { render: input } : input;\n\n // if the id is set we know that it's an update\n if (id) {\n toast.update(id, {\n ...baseParams,\n ...params\n } as UpdateOptions);\n } else {\n // using toast.promise without loading\n toast(params!.render, {\n ...baseParams,\n ...params\n } as ToastOptions);\n }\n\n return result;\n };\n\n const p = isFn(promise) ? promise() : promise;\n\n //call the resolvers only when needed\n p.then(result => resolver('success', success, result)).catch(err => resolver('error', error, err));\n\n return p;\n}\n\n/**\n * Supply a promise or a function that return a promise and the notification will be updated if it resolves or fails.\n * When the promise is pending a spinner is displayed by default.\n * `toast.promise` returns the provided promise so you can chain it.\n *\n * Simple example:\n *\n * ```\n * toast.promise(MyPromise,\n * {\n * pending: 'Promise is pending',\n * success: 'Promise resolved 👌',\n * error: 'Promise rejected 🤯'\n * }\n * )\n *\n * ```\n *\n * Advanced usage:\n * ```\n * toast.promise<{name: string}, {message: string}, undefined>(\n * resolveWithSomeData,\n * {\n * pending: {\n * render: () => \"I'm loading\",\n * icon: false,\n * },\n * success: {\n * render: ({data}) => `Hello ${data.name}`,\n * icon: \"🟢\",\n * },\n * error: {\n * render({data}){\n * // When the promise reject, data will contains the error\n * return \n * }\n * }\n * }\n * )\n * ```\n */\ntoast.promise = handlePromise;\ntoast.success = createToastByType(Type.SUCCESS);\ntoast.info = createToastByType(Type.INFO);\ntoast.error = createToastByType(Type.ERROR);\ntoast.warning = createToastByType(Type.WARNING);\ntoast.warn = toast.warning;\ntoast.dark = (content: ToastContent, options?: ToastOptions) =>\n dispatchToast(\n content,\n mergeOptions(Type.DEFAULT, {\n theme: 'dark',\n ...options\n })\n );\n\ninterface RemoveParams {\n id?: Id;\n containerId: Id;\n}\n\nfunction dismiss(params: RemoveParams): void;\nfunction dismiss(params?: Id): void;\nfunction dismiss(params?: Id | RemoveParams) {\n removeToast(params);\n}\n\n/**\n * Remove toast programmatically\n *\n * - Remove all toasts:\n * ```\n * toast.dismiss()\n * ```\n *\n * - Remove all toasts that belongs to a given container\n * ```\n * toast.dismiss({ container: \"123\" })\n * ```\n *\n * - Remove toast that has a given id regardless the container\n * ```\n * toast.dismiss({ id: \"123\" })\n * ```\n *\n * - Remove toast that has a given id for a specific container\n * ```\n * toast.dismiss({ id: \"123\", containerId: \"12\" })\n * ```\n */\ntoast.dismiss = dismiss;\n\n/**\n * Clear waiting queue when limit is used\n */\ntoast.clearWaitingQueue = clearWaitingQueue as ClearWaitingQueueFunc;\n\n/**\n * Check if a toast is active\n *\n * - Check regardless the container\n * ```\n * toast.isActive(\"123\")\n * ```\n *\n * - Check in a specific container\n * ```\n * toast.isActive(\"123\", \"containerId\")\n * ```\n */\ntoast.isActive = isToastActive;\n\n/**\n * Update a toast, see https://fkhadra.github.io/react-toastify/update-toast/ for more\n *\n * Example:\n * ```\n * // With a string\n * toast.update(toastId, {\n * render: \"New content\",\n * type: \"info\",\n * });\n *\n * // Or with a component\n * toast.update(toastId, {\n * render: MyComponent\n * });\n *\n * // Or a function\n * toast.update(toastId, {\n * render: () =>
New content
\n * });\n *\n * // Apply a transition\n * toast.update(toastId, {\n * render: \"New Content\",\n * type: toast.TYPE.INFO,\n * transition: Rotate\n * })\n * ```\n */\ntoast.update = (toastId: Id, options: UpdateOptions = {}) => {\n const toast = getToast(toastId, options as ToastOptions);\n\n if (toast) {\n const { props: oldOptions, content: oldContent } = toast;\n\n const nextOptions = {\n delay: 100,\n ...oldOptions,\n ...options,\n toastId: options.toastId || toastId,\n updateId: genToastId()\n } as ToastProps & UpdateOptions;\n\n if (nextOptions.toastId !== toastId) nextOptions.staleId = toastId;\n\n const content = nextOptions.render || oldContent;\n delete nextOptions.render;\n\n dispatchToast(content, nextOptions);\n }\n};\n\n/**\n * Used for controlled progress bar. It will automatically close the notification.\n *\n * If you don't want your notification to be clsoed when the timer is done you should use `toast.update` instead as follow instead:\n *\n * ```\n * toast.update(id, {\n * progress: null, // remove controlled progress bar\n * render: \"ok\",\n * type: \"success\",\n * autoClose: 5000 // set autoClose to the desired value\n * });\n * ```\n */\ntoast.done = (id: Id) => {\n toast.update(id, {\n progress: 1\n });\n};\n\n/**\n * Subscribe to change when a toast is added, removed and updated\n *\n * Usage:\n * ```\n * const unsubscribe = toast.onChange((payload) => {\n * switch (payload.status) {\n * case \"added\":\n * // new toast added\n * break;\n * case \"updated\":\n * // toast updated\n * break;\n * case \"removed\":\n * // toast has been removed\n * break;\n * }\n * })\n * ```\n */\ntoast.onChange = onChange as (cb: OnChangeCallback) => () => void;\n\n/**\n * Play a toast(s) timer progammatically\n *\n * Usage:\n *\n * - Play all toasts\n * ```\n * toast.play()\n * ```\n *\n * - Play all toasts for a given container\n * ```\n * toast.play({ containerId: \"123\" })\n * ```\n *\n * - Play toast that has a given id regardless the container\n * ```\n * toast.play({ id: \"123\" })\n * ```\n *\n * - Play toast that has a given id for a specific container\n * ```\n * toast.play({ id: \"123\", containerId: \"12\" })\n * ```\n */\ntoast.play = (opts?: IdOpts) => toggleToast(true, opts);\n\n/**\n * Pause a toast(s) timer progammatically\n *\n * Usage:\n *\n * - Pause all toasts\n * ```\n * toast.pause()\n * ```\n *\n * - Pause all toasts for a given container\n * ```\n * toast.pause({ containerId: \"123\" })\n * ```\n *\n * - Pause toast that has a given id regardless the container\n * ```\n * toast.pause({ id: \"123\" })\n * ```\n *\n * - Pause toast that has a given id for a specific container\n * ```\n * toast.pause({ id: \"123\", containerId: \"12\" })\n * ```\n */\ntoast.pause = (opts?: IdOpts) => toggleToast(false, opts);\n\nexport { toast };\n","import { DOMAttributes, useEffect, useRef, useState } from 'react';\n\nimport { ToastProps } from '../types';\nimport { Default, Direction } from '../utils';\nimport { registerToggle } from '../core/store';\n\ninterface Draggable {\n start: number;\n delta: number;\n removalDistance: number;\n canCloseOnClick: boolean;\n canDrag: boolean;\n didMove: boolean;\n}\n\nexport function useToast(props: ToastProps) {\n const [isRunning, setIsRunning] = useState(false);\n const [preventExitTransition, setPreventExitTransition] = useState(false);\n const toastRef = useRef(null);\n const drag = useRef({\n start: 0,\n delta: 0,\n removalDistance: 0,\n canCloseOnClick: true,\n canDrag: false,\n didMove: false\n }).current;\n const { autoClose, pauseOnHover, closeToast, onClick, closeOnClick } = props;\n\n registerToggle({\n id: props.toastId,\n containerId: props.containerId,\n fn: setIsRunning\n });\n\n useEffect(() => {\n if (props.pauseOnFocusLoss) {\n bindFocusEvents();\n\n return () => {\n unbindFocusEvents();\n };\n }\n }, [props.pauseOnFocusLoss]);\n\n function bindFocusEvents() {\n if (!document.hasFocus()) pauseToast();\n\n window.addEventListener('focus', playToast);\n window.addEventListener('blur', pauseToast);\n }\n\n function unbindFocusEvents() {\n window.removeEventListener('focus', playToast);\n window.removeEventListener('blur', pauseToast);\n }\n\n function onDragStart(e: React.PointerEvent) {\n if (props.draggable === true || props.draggable === e.pointerType) {\n bindDragEvents();\n const toast = toastRef.current!;\n drag.canCloseOnClick = true;\n drag.canDrag = true;\n toast.style.transition = 'none';\n\n if (props.draggableDirection === Direction.X) {\n drag.start = e.clientX;\n drag.removalDistance = toast.offsetWidth * (props.draggablePercent / 100);\n } else {\n drag.start = e.clientY;\n drag.removalDistance =\n (toast.offsetHeight *\n (props.draggablePercent === Default.DRAGGABLE_PERCENT\n ? props.draggablePercent * 1.5\n : props.draggablePercent)) /\n 100;\n }\n }\n }\n\n function onDragTransitionEnd(e: React.PointerEvent) {\n const { top, bottom, left, right } = toastRef.current!.getBoundingClientRect();\n\n if (\n e.nativeEvent.type !== 'touchend' &&\n props.pauseOnHover &&\n e.clientX >= left &&\n e.clientX <= right &&\n e.clientY >= top &&\n e.clientY <= bottom\n ) {\n pauseToast();\n } else {\n playToast();\n }\n }\n\n function playToast() {\n setIsRunning(true);\n }\n\n function pauseToast() {\n setIsRunning(false);\n }\n\n function bindDragEvents() {\n drag.didMove = false;\n document.addEventListener('pointermove', onDragMove);\n document.addEventListener('pointerup', onDragEnd);\n }\n\n function unbindDragEvents() {\n document.removeEventListener('pointermove', onDragMove);\n document.removeEventListener('pointerup', onDragEnd);\n }\n\n function onDragMove(e: PointerEvent) {\n const toast = toastRef.current!;\n if (drag.canDrag && toast) {\n drag.didMove = true;\n if (isRunning) pauseToast();\n if (props.draggableDirection === Direction.X) {\n drag.delta = e.clientX - drag.start;\n } else {\n drag.delta = e.clientY - drag.start;\n }\n\n // prevent false positive during a toast click\n if (drag.start !== e.clientX) drag.canCloseOnClick = false;\n const translate =\n props.draggableDirection === 'x' ? `${drag.delta}px, var(--y)` : `0, calc(${drag.delta}px + var(--y))`;\n toast.style.transform = `translate3d(${translate},0)`;\n toast.style.opacity = `${1 - Math.abs(drag.delta / drag.removalDistance)}`;\n }\n }\n\n function onDragEnd() {\n unbindDragEvents();\n const toast = toastRef.current!;\n if (drag.canDrag && drag.didMove && toast) {\n drag.canDrag = false;\n if (Math.abs(drag.delta) > drag.removalDistance) {\n setPreventExitTransition(true);\n props.closeToast(true);\n props.collapseAll();\n return;\n }\n\n toast.style.transition = 'transform 0.2s, opacity 0.2s';\n toast.style.removeProperty('transform');\n toast.style.removeProperty('opacity');\n }\n }\n\n const eventHandlers: DOMAttributes = {\n onPointerDown: onDragStart,\n onPointerUp: onDragTransitionEnd\n };\n\n if (autoClose && pauseOnHover) {\n eventHandlers.onMouseEnter = pauseToast;\n\n // progress control is delegated to the container\n if (!props.stacked) eventHandlers.onMouseLeave = playToast;\n }\n\n // prevent toast from closing when user drags the toast\n if (closeOnClick) {\n eventHandlers.onClick = (e: React.MouseEvent) => {\n onClick && onClick(e);\n drag.canCloseOnClick && closeToast(true);\n };\n }\n\n return {\n playToast,\n pauseToast,\n isRunning,\n preventExitTransition,\n toastRef,\n eventHandlers\n };\n}\n","import { useEffect, useLayoutEffect } from 'react';\n\nexport const useIsomorphicLayoutEffect = typeof window !== 'undefined' ? useLayoutEffect : useEffect;\n","import React, { cloneElement, isValidElement } from 'react';\n\nimport { Theme, ToastProps, TypeOptions } from '../types';\nimport { Default, isFn } from '../utils';\n\n/**\n * Used when providing custom icon\n */\nexport interface IconProps {\n theme: Theme;\n type: TypeOptions;\n isLoading?: boolean;\n}\n\nexport type BuiltInIconProps = React.SVGProps & IconProps;\n\nconst Svg: React.FC = ({ theme, type, isLoading, ...rest }) => (\n \n);\n\nfunction Warning(props: BuiltInIconProps) {\n return (\n \n \n \n );\n}\n\nfunction Info(props: BuiltInIconProps) {\n return (\n \n \n \n );\n}\n\nfunction Success(props: BuiltInIconProps) {\n return (\n \n \n \n );\n}\n\nfunction Error(props: BuiltInIconProps) {\n return (\n \n \n \n );\n}\n\nfunction Spinner() {\n return
;\n}\n\nexport const Icons = {\n info: Info,\n warning: Warning,\n success: Success,\n error: Error,\n spinner: Spinner\n};\n\nconst maybeIcon = (type: string): type is keyof typeof Icons => type in Icons;\n\nexport type IconParams = Pick;\n\nexport function getIcon({ theme, type, isLoading, icon }: IconParams) {\n let Icon: React.ReactNode = null;\n const iconProps = { theme, type };\n\n if (icon === false) {\n // hide\n } else if (isFn(icon)) {\n Icon = icon({ ...iconProps, isLoading });\n } else if (isValidElement(icon)) {\n Icon = cloneElement(icon, iconProps);\n } else if (isLoading) {\n Icon = Icons.spinner();\n } else if (maybeIcon(type)) {\n Icon = Icons[type](iconProps);\n }\n\n return Icon;\n}\n","import cx from 'clsx';\nimport React, { cloneElement, isValidElement } from 'react';\n\nimport { useToast } from '../hooks/useToast';\nimport { ToastProps } from '../types';\nimport { Default, isFn, renderContent } from '../utils';\nimport { CloseButton } from './CloseButton';\nimport { ProgressBar } from './ProgressBar';\nimport { getIcon } from './Icons';\n\nexport const Toast: React.FC = props => {\n const { isRunning, preventExitTransition, toastRef, eventHandlers, playToast } = useToast(props);\n const {\n closeButton,\n children,\n autoClose,\n onClick,\n type,\n hideProgressBar,\n closeToast,\n transition: Transition,\n position,\n className,\n style,\n progressClassName,\n updateId,\n role,\n progress,\n rtl,\n toastId,\n deleteToast,\n isIn,\n isLoading,\n closeOnClick,\n theme,\n ariaLabel\n } = props;\n const defaultClassName = cx(\n `${Default.CSS_NAMESPACE}__toast`,\n `${Default.CSS_NAMESPACE}__toast-theme--${theme}`,\n `${Default.CSS_NAMESPACE}__toast--${type}`,\n {\n [`${Default.CSS_NAMESPACE}__toast--rtl`]: rtl\n },\n {\n [`${Default.CSS_NAMESPACE}__toast--close-on-click`]: closeOnClick\n }\n );\n const cssClasses = isFn(className)\n ? className({\n rtl,\n position,\n type,\n defaultClassName\n })\n : cx(defaultClassName, className);\n const icon = getIcon(props);\n const isProgressControlled = !!progress || !autoClose;\n\n const closeButtonProps = { closeToast, type, theme };\n let Close: React.ReactNode = null;\n\n if (closeButton === false) {\n // hide\n } else if (isFn(closeButton)) {\n Close = closeButton(closeButtonProps);\n } else if (isValidElement(closeButton)) {\n Close = cloneElement(closeButton, closeButtonProps);\n } else {\n Close = CloseButton(closeButtonProps);\n }\n\n return (\n \n \n {icon != null && (\n \n {icon}\n
\n )}\n {renderContent(children, props, !isRunning)}\n {Close}\n {!props.customProgressBar && (\n \n )}\n \n \n );\n};\n","import React from 'react';\nimport { Default } from '../utils';\nimport { CloseToastFunc, Theme, TypeOptions } from '../types';\n\nexport interface CloseButtonProps {\n closeToast: CloseToastFunc;\n type: TypeOptions;\n ariaLabel?: string;\n theme: Theme;\n}\n\nexport function CloseButton({ closeToast, theme, ariaLabel = 'close' }: CloseButtonProps) {\n return (\n {\n e.stopPropagation();\n closeToast(true);\n }}\n aria-label={ariaLabel}\n >\n \n \n \n \n );\n}\n","import { cssTransition, Default } from '../utils';\n\nconst getConfig = (animationName: string, appendPosition = false) => ({\n enter: `${Default.CSS_NAMESPACE}--animate ${Default.CSS_NAMESPACE}__${animationName}-enter`,\n exit: `${Default.CSS_NAMESPACE}--animate ${Default.CSS_NAMESPACE}__${animationName}-exit`,\n appendPosition\n});\n\nconst Bounce = cssTransition(getConfig('bounce', true));\n\nconst Slide = cssTransition(getConfig('slide', true));\n\nconst Zoom = cssTransition(getConfig('zoom'));\n\nconst Flip = cssTransition(getConfig('flip'));\n\nexport { Bounce, Slide, Zoom, Flip };\n","import cx from 'clsx';\nimport React, { useEffect, useRef, useState } from 'react';\n\nimport { toast } from '../core';\nimport { useToastContainer } from '../hooks';\nimport { useIsomorphicLayoutEffect } from '../hooks/useIsomorphicLayoutEffect';\nimport { ToastContainerProps, ToastPosition } from '../types';\nimport { Default, Direction, isFn, parseClassName } from '../utils';\nimport { Toast } from './Toast';\nimport { Bounce } from './Transitions';\n\nexport const defaultProps: ToastContainerProps = {\n position: 'top-right',\n transition: Bounce,\n autoClose: 5000,\n closeButton: true,\n pauseOnHover: true,\n pauseOnFocusLoss: true,\n draggable: 'touch',\n draggablePercent: Default.DRAGGABLE_PERCENT as number,\n draggableDirection: Direction.X,\n role: 'alert',\n theme: 'light',\n 'aria-label': 'Notifications Alt+T',\n hotKeys: e => e.altKey && e.code === 'KeyT'\n};\n\nexport function ToastContainer(props: ToastContainerProps) {\n let containerProps: ToastContainerProps = {\n ...defaultProps,\n ...props\n };\n const stacked = props.stacked;\n const [collapsed, setIsCollapsed] = useState(true);\n const containerRef = useRef(null);\n const { getToastToRender, isToastActive, count } = useToastContainer(containerProps);\n const { className, style, rtl, containerId, hotKeys } = containerProps;\n\n function getClassName(position: ToastPosition) {\n const defaultClassName = cx(\n `${Default.CSS_NAMESPACE}__toast-container`,\n `${Default.CSS_NAMESPACE}__toast-container--${position}`,\n { [`${Default.CSS_NAMESPACE}__toast-container--rtl`]: rtl }\n );\n return isFn(className)\n ? className({\n position,\n rtl,\n defaultClassName\n })\n : cx(defaultClassName, parseClassName(className));\n }\n\n function collapseAll() {\n if (stacked) {\n setIsCollapsed(true);\n toast.play();\n }\n }\n\n useIsomorphicLayoutEffect(() => {\n if (stacked) {\n const nodes = containerRef.current!.querySelectorAll('[data-in=\"true\"]');\n const gap = 12;\n const isTop = containerProps.position?.includes('top');\n let usedHeight = 0;\n let prevS = 0;\n\n Array.from(nodes)\n .reverse()\n .forEach((n, i) => {\n const node = n as HTMLElement;\n node.classList.add(`${Default.CSS_NAMESPACE}__toast--stacked`);\n\n if (i > 0) node.dataset.collapsed = `${collapsed}`;\n\n if (!node.dataset.pos) node.dataset.pos = isTop ? 'top' : 'bot';\n\n const y = usedHeight * (collapsed ? 0.2 : 1) + (collapsed ? 0 : gap * i);\n\n node.style.setProperty('--y', `${isTop ? y : y * -1}px`);\n node.style.setProperty('--g', `${gap}`);\n node.style.setProperty('--s', `${1 - (collapsed ? prevS : 0)}`);\n\n usedHeight += node.offsetHeight;\n prevS += 0.025;\n });\n }\n }, [collapsed, count, stacked]);\n\n useEffect(() => {\n function focusFirst(e: KeyboardEvent) {\n const node = containerRef.current;\n if (hotKeys(e)) {\n (node.querySelector('[tabIndex=\"0\"]') as HTMLElement)?.focus();\n setIsCollapsed(false);\n toast.pause();\n }\n if (e.key === 'Escape' && (document.activeElement === node || node?.contains(document.activeElement))) {\n setIsCollapsed(true);\n toast.play();\n }\n }\n\n document.addEventListener('keydown', focusFirst);\n\n return () => {\n document.removeEventListener('keydown', focusFirst);\n };\n }, [hotKeys]);\n\n return (\n {\n if (stacked) {\n setIsCollapsed(false);\n toast.pause();\n }\n }}\n onMouseLeave={collapseAll}\n aria-live=\"polite\"\n aria-atomic=\"false\"\n aria-relevant=\"additions text\"\n aria-label={containerProps['aria-label']}\n >\n {getToastToRender((position, toastList) => {\n const containerStyle: React.CSSProperties = !toastList.length\n ? { ...style, pointerEvents: 'none' }\n : { ...style };\n\n return (\n \n {toastList.map(({ content, props: toastProps }) => {\n return (\n \n {content}\n \n );\n })}\n \n );\n })}\n \n );\n}\n","import { useRef, useSyncExternalStore } from 'react';\nimport { isToastActive, registerContainer } from '../core/store';\nimport { Toast, ToastContainerProps, ToastPosition } from '../types';\n\nexport function useToastContainer(props: ToastContainerProps) {\n const { subscribe, getSnapshot, setProps } = useRef(registerContainer(props)).current;\n setProps(props);\n const snapshot = useSyncExternalStore(subscribe, getSnapshot, getSnapshot)?.slice();\n\n function getToastToRender(cb: (position: ToastPosition, toastList: Toast[]) => T) {\n if (!snapshot) return [];\n\n const toRender = new Map();\n\n if (props.newestOnTop) snapshot.reverse();\n\n snapshot.forEach(toast => {\n const { position } = toast.props;\n toRender.has(position) || toRender.set(position, []);\n toRender.get(position)!.push(toast);\n });\n\n return Array.from(toRender, p => cb(p[0], p[1]));\n }\n\n return {\n getToastToRender,\n isToastActive,\n count: snapshot?.length\n };\n}\n","import { toast } from \"react-toastify\";\r\n\r\nexport function showExceptionNotification(title: string = \"Unexpected Error\", message: string = \"Please try the operation again. If the issue persists, please contact support.\"): void {\r\n // when an exception occurs, this takes precedence over all existing notifications\r\n toast.dismiss();\r\n\r\n toast.error(\r\n
\r\n {title}\r\n
\r\n {message}\r\n
,\r\n { autoClose: false }\r\n );\r\n}\r\n\r\nexport function showDevelopmentUnexpectedExceptionNotification(): void {\r\n toast.error(\r\n
\r\n ¯\\_(ツ)_/¯\r\n
\r\n Check the console window.\r\n
,\r\n { autoClose: false }\r\n );\r\n}\r\n\r\nexport function showSuccessNotification(title: string, message: string): void {\r\n toast.success(\r\n
\r\n {title}\r\n
\r\n {message}\r\n
\r\n );\r\n}\r\n\r\nexport function showValidationErrorNotification(title: string = \"Action Required\", message: string = \"Please review validation errors.\"): void {\r\n toast.error(\r\n
\r\n {title}\r\n
\r\n {message}\r\n
\r\n );\r\n}\r\n","import * as Client from \"./Client\";\r\nimport { logError } from \"../infrastructure/TelemetryService\";\r\nimport * as toastHelper from \"../common/toastHelper\";\r\n\r\n// Simple\r\n// - makes the service call\r\n// - only use this for simple/lightweight operations that are likely to succeed (i.e. loading reference data)\r\n// - throws exceptions to manage control flow\r\n// - will show default toast notifications\r\nexport async function simpleCall(operation: () => Promise): Promise {\r\n try {\r\n return await withRetry(operation);\r\n } catch (ex: any) {\r\n const apiExceptionDetails = getApiExceptionDetails(ex);\r\n showToastNotification(apiExceptionDetails.errorType, apiExceptionDetails.unitOfWorkCorrelation);\r\n throw new Error(\"The operation failed.\");\r\n }\r\n}\r\n\r\n// Call\r\n// - makes the service call\r\n// - use this for operations that may reasonably fail for more complicated entities\r\n// - logs and wraps exceptions into the result object\r\n// - caller is in full control of what to do for specific error scenarios\r\nexport async function call(operation: () => Promise): Promise> {\r\n try {\r\n const response = await withRetry(operation);\r\n return new CallResult(true, response, undefined, undefined);\r\n } catch (ex: any) {\r\n const apiExceptionDetails = getApiExceptionDetails(ex);\r\n return new CallResult(false, undefined, apiExceptionDetails.errorType, apiExceptionDetails.unitOfWorkCorrelation);\r\n }\r\n}\r\n\r\nexport interface ICallResultHandlers {\r\n OnSuccess: (response: T) => void;\r\n OnNotAuthorised403?: () => void | undefined;\r\n OnNotFound404?: () => void | undefined;\r\n OnConflict409?: () => void | undefined;\r\n}\r\n\r\nexport enum ErrorTypeEnum {\r\n BadRequest400,\r\n NotAuthenticated401,\r\n NotAuthorised403,\r\n NotFound404,\r\n Conflict409,\r\n ServerTooBusy429,\r\n InternalServerError500,\r\n ServiceUnavailable,\r\n UnexpectedError,\r\n}\r\n\r\nexport class CallResult {\r\n constructor(isSuccess: boolean, response: T | undefined, error: ErrorTypeEnum | undefined, correlationId: string | undefined) {\r\n this.IsSuccess = isSuccess;\r\n this.Response = response;\r\n this.Error = error;\r\n this.CorrelationId = correlationId;\r\n\r\n // in the context of a service call, 404 signifies that the resource that was there is no longer, which is typical for a delete conflict\r\n this.IsConflict = error === ErrorTypeEnum.NotFound404 || error === ErrorTypeEnum.Conflict409;\r\n this.IsUnauthorised = error === ErrorTypeEnum.NotAuthorised403;\r\n }\r\n\r\n IsSuccess: boolean;\r\n IsConflict: boolean;\r\n IsUnauthorised: boolean;\r\n Response: T | undefined;\r\n Error: ErrorTypeEnum | undefined;\r\n CorrelationId: string | undefined;\r\n\r\n ShowToastNotification(): void {\r\n showToastNotification(this.Error!, this.CorrelationId!);\r\n }\r\n}\r\n\r\nasync function withRetry(operation: () => Promise): Promise {\r\n const attempts: number = 3;\r\n const transientErrorCodes: Array = [500, undefined];\r\n const delay: number = 1000;\r\n let attempt: number = 0;\r\n\r\n while (true) {\r\n attempt++;\r\n try {\r\n // give it a crack\r\n return await operation();\r\n } catch (ex: any) {\r\n //console.log(JSON.stringify(ex));\r\n const apiExceptionDetails = getApiExceptionDetails(ex);\r\n console.warn(`Failed service call; attempt ${attempt} of ${attempts} with correlation '${apiExceptionDetails.unitOfWorkCorrelation}'.`);\r\n // always log (to appinsights)\r\n logError(JSON.stringify(ex));\r\n // all exceptions from nswag are wrapped with this type\r\n // intransient errors do not get retries, immediately fail\r\n if (!transientErrorCodes.includes(apiExceptionDetails.status)) {\r\n console.error(\"Non-transient error encountered, not retrying.\");\r\n throw ex;\r\n }\r\n // if we're exceeded the number of attempts, fail\r\n if (attempt === attempts) throw ex;\r\n // wait before retrying\r\n await new Promise((r) => setTimeout(r, delay));\r\n }\r\n }\r\n}\r\n\r\nfunction getApiExceptionDetails(ex: any): { unitOfWorkCorrelation: string; status: number; errorType: ErrorTypeEnum } {\r\n const apiException: Client.ApiException = ex;\r\n const headers = apiException?.headers;\r\n\r\n // yes, it must be lowercase \"unit-of-work-correlation\"\r\n return {\r\n unitOfWorkCorrelation: headers ? headers[\"unit-of-work-correlation\"] : \"\",\r\n status: apiException?.status,\r\n errorType: getErrorType(ex),\r\n };\r\n}\r\n\r\nfunction getErrorType(ex: Client.ApiException): ErrorTypeEnum {\r\n switch (ex.status) {\r\n case undefined: // was unable to fetch (i.e. the endpoint was inaccessible)\r\n return ErrorTypeEnum.ServiceUnavailable;\r\n case 500: // internal server error\r\n return ErrorTypeEnum.InternalServerError500;\r\n case 401: // not authenticated\r\n return ErrorTypeEnum.NotAuthenticated401;\r\n case 403: // unauthorised\r\n return ErrorTypeEnum.NotAuthorised403;\r\n case 400: // bad request\r\n return ErrorTypeEnum.BadRequest400;\r\n case 404: // not found\r\n return ErrorTypeEnum.NotFound404;\r\n case 409: // conflict\r\n return ErrorTypeEnum.Conflict409;\r\n case 429: // too busy\r\n return ErrorTypeEnum.ServerTooBusy429;\r\n default:\r\n // unknown\r\n return ErrorTypeEnum.UnexpectedError;\r\n }\r\n}\r\n\r\nexport function showToastNotification(result: ErrorTypeEnum, correlationId: string) {\r\n let message = \"Please try the operation again. If the issue persists, please contact support.\";\r\n if (correlationId && correlationId.length > 0) {\r\n message = `Please try the operation again. If the issue persists, please contact support and quote ${correlationId.substring(0, 6).toUpperCase()}.`;\r\n }\r\n\r\n switch (result) {\r\n case ErrorTypeEnum.ServiceUnavailable:\r\n toastHelper.showExceptionNotification(\"Service Unavailable\", message);\r\n return;\r\n case ErrorTypeEnum.InternalServerError500:\r\n toastHelper.showExceptionNotification(\"Internal Error\", message);\r\n return;\r\n case ErrorTypeEnum.NotAuthenticated401:\r\n toastHelper.showExceptionNotification(\"Not Authenticated\", message);\r\n return;\r\n case ErrorTypeEnum.NotAuthorised403:\r\n toastHelper.showExceptionNotification(\"Not Authorised\", message);\r\n return;\r\n case ErrorTypeEnum.BadRequest400:\r\n toastHelper.showExceptionNotification(\"Bad Request\", message);\r\n return;\r\n case ErrorTypeEnum.NotFound404:\r\n toastHelper.showExceptionNotification(\"Not Found\", message);\r\n return;\r\n case ErrorTypeEnum.Conflict409:\r\n toastHelper.showExceptionNotification(\"Conflict\", message);\r\n return;\r\n case ErrorTypeEnum.ServerTooBusy429:\r\n toastHelper.showExceptionNotification(\"Server Too Busy\", message);\r\n return;\r\n case ErrorTypeEnum.UnexpectedError:\r\n toastHelper.showExceptionNotification(\"Unexpected Error\", message);\r\n return;\r\n }\r\n}\r\n","// framework\r\nimport { takeEvery, call, put } from \"redux-saga/effects\";\r\n// redux\r\nimport { ITitleSearchActions, searchTitleActions, searchTitleResponseAction } from \"./titleSearchActions\";\r\n// api\r\nimport { createOpggsTitlesClient } from \"../../../../api/clientFactory\";\r\nimport { simpleCall } from \"../../../../api/callHelper\";\r\nimport * as Client from \"../../../../api/Client\";\r\n// shell\r\nimport { setBusyAction, clearBusyAction } from \"../../../../shell/redux/shellActions\";\r\n\r\nexport default function* watcherSaga() {\r\n yield takeEvery(searchTitleActions.SearchTitlesRequest, workerSaga);\r\n}\r\n\r\nfunction* workerSaga(action: ITitleSearchActions) {\r\n try {\r\n // start query\r\n yield put(setBusyAction());\r\n const response: Client.GetPublicTitlesListItemDto[] = yield call(query, action.filter!);\r\n // post response\r\n yield put(searchTitleResponseAction(response));\r\n } catch {\r\n // suppress\r\n } finally {\r\n yield put(clearBusyAction());\r\n }\r\n}\r\n\r\nasync function query(filter: string): Promise {\r\n const client = createOpggsTitlesClient();\r\n\r\n const request = new Client.GetPublicTitlesListRequestDto({ filterFullTextSearch: filter });\r\n\r\n const response = await simpleCall(() => client.getPublicTitlesList(request));\r\n return response.titles;\r\n}\r\n","// framework\r\nimport { takeEvery, call, put } from \"redux-saga/effects\";\r\n// redux\r\nimport { ITitleDetailsActions, titleDetailsActions, getTitleDetailsResponseAction } from \"./titleDetailsActions\";\r\n// api\r\nimport { createOpggsTitlesClient } from \"../../../../api/clientFactory\";\r\nimport * as Client from \"../../../../api/Client\";\r\n// shell\r\nimport { setBusyAction, clearBusyAction } from \"../../../../shell/redux/shellActions\";\r\nimport { simpleCall } from \"../../../../api/callHelper\";\r\n\r\nexport default function* watcherSaga() {\r\n yield takeEvery(titleDetailsActions.GetTitleDetailsRequest, workerSaga);\r\n}\r\n\r\nfunction* workerSaga(action: ITitleDetailsActions) {\r\n try {\r\n // start query\r\n yield put(setBusyAction());\r\n const response: Client.GetPublicTitleDetailsResponseDto = yield call(query, action.titleId!);\r\n // post response\r\n yield put(getTitleDetailsResponseAction(response));\r\n } catch {\r\n // suppress\r\n } finally {\r\n yield put(clearBusyAction());\r\n }\r\n}\r\n\r\nasync function query(titleId: string): Promise {\r\n const client = createOpggsTitlesClient();\r\n\r\n const request = new Client.GetPublicTitleDetailsRequestDto({ titleId: titleId });\r\n\r\n const response = await simpleCall(() => client.getPublicTitleDetails(request));\r\n return response;\r\n}\r\n","import { takeEvery, call, put } from \"redux-saga/effects\";\r\nimport { createOpggsTitlesClient } from \"../../../../api/clientFactory\";\r\nimport * as Client from \"../../../../api/Client\";\r\nimport { ITitleDetailsActions, titleDetailsActions } from \"./titleDetailsActions\";\r\nimport { getTitleMapDetailsResponseAction } from \"./titleDetailsActions\";\r\nimport { simpleCall } from \"../../../../api/callHelper\";\r\n\r\nexport default function* watcherSaga() {\r\n yield takeEvery(titleDetailsActions.GetTitleMapDetailsRequest, workerSaga);\r\n}\r\n\r\nfunction* workerSaga(action: ITitleDetailsActions) {\r\n // don't show busy state, as it's slow and not the main part of the screen\r\n try {\r\n const response: Client.GetPublicTitleDetailsMapResponseDto = yield call(query, action.titleId!);\r\n yield put(getTitleMapDetailsResponseAction(response));\r\n } catch {\r\n // suppress\r\n }\r\n}\r\n\r\nasync function query(titleId: string): Promise {\r\n const client = createOpggsTitlesClient();\r\n\r\n const request = new Client.GetPublicTitleDetailsMapRequestDto({\r\n titleId: titleId,\r\n });\r\n\r\n const response = await simpleCall(() => client.getPublicTitleDetailsMap(request));\r\n return response;\r\n}\r\n","// framework\r\nimport { takeEvery, call, put } from \"redux-saga/effects\";\r\n// redux\r\nimport { IApplicationTrackingActions, applicationTrackingActions, getOpggsApplicationTrackingResponseAction } from \"./opggsApplicationTrackingActions\";\r\n// api\r\nimport { createOpggsApplicationsClient } from \"../../../../api/clientFactory\";\r\nimport { simpleCall } from \"../../../../api/callHelper\";\r\nimport * as Client from \"../../../../api/Client\";\r\n// shell\r\nimport { setBusyAction, clearBusyAction } from \"../../../../shell/redux/shellActions\";\r\n\r\nexport default function* watcherSaga() {\r\n yield takeEvery(applicationTrackingActions.GetApplicationTrackingRequest, workerSaga);\r\n}\r\n\r\nfunction* workerSaga(action: IApplicationTrackingActions) {\r\n try {\r\n // start query\r\n yield put(setBusyAction());\r\n const response: Client.GetPublicOpggsApplicationsTrackingResponseDto = yield call(query, action.isCompleted, action.applicationTrackingType);\r\n // post response\r\n yield put(getOpggsApplicationTrackingResponseAction(response));\r\n } catch {\r\n // suppress\r\n } finally {\r\n yield put(clearBusyAction());\r\n }\r\n}\r\n\r\nasync function query(isCompleted: boolean | undefined, applicationTrackingType: Client.OpggsApplicationTrackingTypeEnum | undefined): Promise {\r\n const client = createOpggsApplicationsClient();\r\n\r\n const request = new Client.GetPublicOpggsApplicationsTrackingRequestDto({\r\n isCompleted: isCompleted ?? false,\r\n applicationTrackingType: applicationTrackingType,\r\n });\r\n\r\n const response = await simpleCall(() => client.getPublicOpggsApplicationsTracking(request));\r\n return response;\r\n}\r\n","// framework\r\nimport { takeEvery, call, put } from \"redux-saga/effects\";\r\n// redux\r\nimport { IApplicationTrackingDetailsActions, applicationTrackingDetailsActions, getOpggsApplicationTrackingDetailsResponseAction } from \"./opggsApplicationTrackingDetailsActions\";\r\n// api\r\nimport { createOpggsApplicationsClient } from \"../../../../api/clientFactory\";\r\nimport * as Client from \"../../../../api/Client\";\r\n// shell\r\nimport { setBusyAction, clearBusyAction } from \"../../../../shell/redux/shellActions\";\r\nimport { simpleCall } from \"../../../../api/callHelper\";\r\n\r\nexport default function* watcherSaga() {\r\n yield takeEvery(applicationTrackingDetailsActions.GetApplicationTrackingDetailsRequest, workerSaga);\r\n}\r\n\r\nfunction* workerSaga(action: IApplicationTrackingDetailsActions) {\r\n try {\r\n // start query\r\n yield put(setBusyAction());\r\n const response: Client.GetPublicOpggsApplicationsTrackingDetailsResponseDto = yield call(query, action.applicationId!);\r\n // post response\r\n yield put(getOpggsApplicationTrackingDetailsResponseAction(response));\r\n } catch {\r\n // suppress\r\n } finally {\r\n yield put(clearBusyAction());\r\n }\r\n}\r\n\r\nasync function query(applicationId: string): Promise {\r\n const client = createOpggsApplicationsClient();\r\n\r\n const request = new Client.GetPublicOpggsApplicationsTrackingDetailsRequestDto({ applicationId: applicationId });\r\n\r\n const response = await simpleCall(() => client.getPublicOpggsApplicationsTrackingDetails(request));\r\n return response;\r\n}\r\n","// framework\r\nimport { takeEvery, call, put } from \"redux-saga/effects\";\r\n// redux\r\nimport { IStorageFormationsListActions, storageFormationsListActions, storageFormationsListResponseAction } from \"./storageFormationsListActions\";\r\n// api\r\nimport { createOpggsStorageFormationsClient } from \"../../../../api/clientFactory\";\r\nimport { simpleCall } from \"../../../../api/callHelper\";\r\nimport * as Client from \"../../../../api/Client\";\r\n// shell\r\nimport { setBusyAction, clearBusyAction } from \"../../../../shell/redux/shellActions\";\r\n\r\nexport default function* watcherSaga() {\r\n yield takeEvery(storageFormationsListActions.ListStorageFormationsRequest, workerSaga);\r\n}\r\n\r\nfunction* workerSaga(action: IStorageFormationsListActions) {\r\n try {\r\n // start query\r\n yield put(setBusyAction());\r\n const response: Client.GetPublicStorageFormationListItemDto[] = yield call(query);\r\n // post response\r\n yield put(storageFormationsListResponseAction(response));\r\n } catch {\r\n // suppress\r\n } finally {\r\n yield put(clearBusyAction());\r\n }\r\n}\r\n\r\nasync function query(): Promise {\r\n const client = createOpggsStorageFormationsClient();\r\n const response = await simpleCall(() => client.getPublicStorageFormationsList(new Client.GetPublicStorageFormationsListRequestDto()));\r\n return response.storageFormations;\r\n}\r\n","import { takeEvery, call, put } from \"redux-saga/effects\";\r\nimport * as Client from \"../../../api/Client\";\r\nimport { createOpggsTitlesClient } from \"../../../api/clientFactory\";\r\nimport { simpleCall } from \"../../../api/callHelper\";\r\nimport { setBusyAction, clearBusyAction } from \"../../../shell/redux/shellActions\";\r\nimport * as Actions from \"./openTitleActions\";\r\n\r\nexport default function* watcherSaga() {\r\n yield takeEvery(Actions.openTitleActions.GetTitleIdRequest, workerSaga);\r\n}\r\n\r\nfunction* workerSaga(action: Actions.IOpenTitleActions) {\r\n try {\r\n // start query\r\n yield put(setBusyAction());\r\n const response: Client.GetPublicOpenTitleIdResponseDto = yield call(query, action.titleNumber!);\r\n // post response\r\n yield put(Actions.getTitleIdResponse(response.titleId));\r\n } catch {\r\n // suppress\r\n } finally {\r\n yield put(clearBusyAction());\r\n }\r\n}\r\n\r\nasync function query(titleNumber: string): Promise {\r\n const client = createOpggsTitlesClient();\r\n const request = new Client.GetPublicOpenTitleIdRequestDto({ titleNumber: titleNumber });\r\n const response = await simpleCall(() => client.getPublicOpenTitleId(request));\r\n return response;\r\n}\r\n","// framework\r\nimport { takeEvery, call, put } from \"redux-saga/effects\";\r\n// redux\r\nimport { shellActions, refreshStaticConfigurationResponseAction } from \"./shellActions\";\r\n// api\r\nimport { createShellClient } from \"../../api/clientFactory\";\r\nimport { simpleCall } from \"../../api/callHelper\";\r\nimport * as Client from \"../../api/Client\";\r\n// shell\r\nimport { setBusyAction, clearBusyAction } from \"../../shell/redux/shellActions\";\r\n\r\nexport default function* watcherSaga() {\r\n yield takeEvery(shellActions.refreshStaticConfigurationRequest, workerSaga);\r\n}\r\n\r\nfunction* workerSaga() {\r\n try {\r\n // start query\r\n yield put(setBusyAction());\r\n const featureSwitchesResponse: Client.GetShellFeatureSwitchesResponseDto = yield call(getFeatureSwitches);\r\n const portalLinksResponse: Client.GetPublicShellPortalLinksResponseDto = yield call(getPortalLinks);\r\n // post response\r\n yield put(refreshStaticConfigurationResponseAction(featureSwitchesResponse, portalLinksResponse));\r\n } catch {\r\n // suppress\r\n } finally {\r\n yield put(clearBusyAction());\r\n }\r\n}\r\n\r\nasync function getFeatureSwitches(): Promise {\r\n const client = createShellClient();\r\n\r\n const request = new Client.GetPublicShellFeatureSwitchesRequestDto();\r\n\r\n const response = await simpleCall(() => client.getPublicShellFeatureSwitches(request));\r\n return response;\r\n}\r\n\r\nasync function getPortalLinks(): Promise {\r\n const client = createShellClient();\r\n\r\n const request = new Client.GetPublicShellPortalLinksRequestDto();\r\n\r\n const response = await simpleCall(() => client.getPublicShellPortalLinks(request));\r\n return response;\r\n}\r\n","// framework\r\nimport { takeEvery, call, put } from \"redux-saga/effects\";\r\n// redux\r\nimport { ILicenceSearchActions, searchLicenceActions, searchLicenceResponseAction } from \"./licenceSearchActions\";\r\n// api\r\nimport { createOeiLicencesSearchClient } from \"../../../../api/clientFactory\";\r\nimport { simpleCall } from \"../../../../api/callHelper\";\r\nimport * as Client from \"../../../../api/Client\";\r\n// shell\r\nimport { setBusyAction, clearBusyAction } from \"../../../../shell/redux/shellActions\";\r\n\r\nexport default function* watcherSaga() {\r\n yield takeEvery(searchLicenceActions.SearchLicencesRequest, workerSaga);\r\n}\r\n\r\nfunction* workerSaga(action: ILicenceSearchActions) {\r\n try {\r\n // start query\r\n yield put(setBusyAction());\r\n const response: Client.GetPublicLicencesListItemDto[] = yield call(query, action.filter!);\r\n // post response\r\n yield put(searchLicenceResponseAction(response));\r\n } catch {\r\n // suppress\r\n } finally {\r\n yield put(clearBusyAction());\r\n }\r\n}\r\n\r\nasync function query(filter: string): Promise {\r\n const client = createOeiLicencesSearchClient();\r\n\r\n const request = new Client.GetPublicLicencesListRequestDto({ filterFullTextSearch: filter });\r\n\r\n const response = await simpleCall(() => client.getPublicLicencesList(request));\r\n return response.licences;\r\n}\r\n","// framework\r\nimport { takeEvery, call, put } from \"redux-saga/effects\";\r\n// redux\r\nimport { ILicenceDetailsActions, licenceDetailsActions, getLicenceDetailsResponseAction } from \"./licenceDetailsActions\";\r\n// api\r\nimport { createOeiLicenceDetailsClient } from \"../../../../api/clientFactory\";\r\nimport { simpleCall } from \"../../../../api/callHelper\";\r\nimport * as Client from \"../../../../api/Client\";\r\n// shell\r\nimport { setBusyAction, clearBusyAction } from \"../../../../shell/redux/shellActions\";\r\n\r\nexport default function* watcherSaga() {\r\n yield takeEvery(licenceDetailsActions.GetLicenceDetailsRequest, workerSaga);\r\n}\r\n\r\nfunction* workerSaga(action: ILicenceDetailsActions) {\r\n try {\r\n // start query\r\n yield put(setBusyAction());\r\n const response: Client.GetPublicLicenceDetailsResponseDto = yield call(query, action.licenceId!);\r\n // post response\r\n yield put(getLicenceDetailsResponseAction(response));\r\n } catch {\r\n // suppress\r\n } finally {\r\n yield put(clearBusyAction());\r\n }\r\n}\r\n\r\nasync function query(licenceId: number): Promise {\r\n const client = createOeiLicenceDetailsClient();\r\n\r\n const request = new Client.GetPublicLicenceDetailsRequestDto({ licenceId: licenceId });\r\n\r\n const response = await simpleCall(() => client.getPublicLicenceDetails(request));\r\n return response;\r\n}\r\n","import { takeEvery, call, put } from \"redux-saga/effects\";\r\nimport * as Client from \"../../../api/Client\";\r\nimport { createOeiLicenceOpenClient } from \"../../../api/clientFactory\";\r\nimport { simpleCall } from \"../../../api/callHelper\";\r\nimport { setBusyAction, clearBusyAction } from \"../../../shell/redux/shellActions\";\r\nimport * as Actions from \"./openLicenceActions\";\r\n\r\nexport default function* watcherSaga() {\r\n yield takeEvery(Actions.openLicenceActions.GetLicenceIdRequest, workerSaga);\r\n}\r\n\r\nfunction* workerSaga(action: Actions.IOpenLicenceActions) {\r\n try {\r\n // start query\r\n yield put(setBusyAction());\r\n const response: Client.GetPublicOpenLicenceIdResponseDto = yield call(query, action.licenceNumber!);\r\n // post response\r\n yield put(Actions.getLicenceIdResponse(response.licenceId));\r\n } catch {\r\n // suppress\r\n } finally {\r\n yield put(clearBusyAction());\r\n }\r\n}\r\n\r\nasync function query(licenceNumber: string): Promise {\r\n const client = createOeiLicenceOpenClient();\r\n const request = new Client.GetPublicOpenLicenceIdRequestDto({ licenceNumber: licenceNumber });\r\n const response = await simpleCall(() => client.getPublicOpenLicenceId(request));\r\n return response;\r\n}\r\n","// framework\r\nimport { takeEvery, call, put } from \"redux-saga/effects\";\r\n// redux\r\nimport { IOeiApplicationTrackingActions, oeiApplicationTrackingActions, getOeiApplicationTrackingResponseAction } from \"./oeiApplicationTrackingActions\";\r\n// api\r\nimport { createOeiApplicationsClient } from \"../../../../api/clientFactory\";\r\nimport { simpleCall } from \"../../../../api/callHelper\";\r\nimport * as Client from \"../../../../api/Client\";\r\n// shell\r\nimport { setBusyAction, clearBusyAction } from \"../../../../shell/redux/shellActions\";\r\n\r\nexport default function* watcherSaga() {\r\n yield takeEvery(oeiApplicationTrackingActions.GetOeiApplicationTrackingRequest, workerSaga);\r\n}\r\n\r\nfunction* workerSaga(action: IOeiApplicationTrackingActions) {\r\n try {\r\n // start query\r\n yield put(setBusyAction());\r\n const response: Client.GetPublicOeiApplicationsTrackingResponseDto = yield call(query, action.isCompleted, action.applicationTrackingType);\r\n // post response\r\n yield put(getOeiApplicationTrackingResponseAction(response));\r\n } catch {\r\n // suppress\r\n } finally {\r\n yield put(clearBusyAction());\r\n }\r\n}\r\n\r\nasync function query(isCompleted: boolean | undefined, applicationTrackingType: Client.OeiApplicationTrackingTypeEnum | undefined): Promise {\r\n const client = createOeiApplicationsClient();\r\n\r\n const request = new Client.GetPublicOeiApplicationsTrackingRequestDto({\r\n isCompleted: isCompleted ?? false,\r\n applicationTrackingType: applicationTrackingType,\r\n });\r\n\r\n const response = await simpleCall(() => client.getPublicOeiApplicationsTracking(request));\r\n return response;\r\n}\r\n","// framework\r\nimport { takeEvery, call, put } from \"redux-saga/effects\";\r\n// redux\r\nimport { IOeiApplicationTrackingDetailsActions, oeiApplicationTrackingDetailsActions, getOeiApplicationTrackingDetailsResponseAction } from \"./oeiApplicationTrackingDetailsActions\";\r\n// api\r\nimport { createOeiApplicationsClient } from \"../../../../api/clientFactory\";\r\nimport { simpleCall } from \"../../../../api/callHelper\";\r\nimport * as Client from \"../../../../api/Client\";\r\n// shell\r\nimport { setBusyAction, clearBusyAction } from \"../../../../shell/redux/shellActions\";\r\n\r\nexport default function* watcherSaga() {\r\n yield takeEvery(oeiApplicationTrackingDetailsActions.GetOeiApplicationTrackingDetailsRequest, workerSaga);\r\n}\r\n\r\nfunction* workerSaga(action: IOeiApplicationTrackingDetailsActions) {\r\n try {\r\n // start query\r\n yield put(setBusyAction());\r\n const response: Client.GetPublicOeiApplicationsTrackingDetailsResponseDto = yield call(query, action.applicationId!);\r\n // post response\r\n yield put(getOeiApplicationTrackingDetailsResponseAction(response));\r\n } catch {\r\n // suppress\r\n } finally {\r\n yield put(clearBusyAction());\r\n }\r\n}\r\n\r\nasync function query(applicationId: string): Promise {\r\n const client = createOeiApplicationsClient();\r\n\r\n const request = new Client.GetPublicOeiApplicationsTrackingDetailsRequestDto({ applicationId: applicationId });\r\n\r\n const response = await simpleCall(() => client.getPublicOeiApplicationsTrackingDetails(request));\r\n return response;\r\n}\r\n","import * as TelemetryService from \"../infrastructure/TelemetryService\";\r\nimport * as toastHelper from \"./toastHelper\";\r\n\r\n// provides AppInsights + Console logging\r\n\r\nexport function logError(message: any) {\r\n console.error(message);\r\n TelemetryService.logError(message);\r\n\r\n const environment = process.env.REACT_APP_CONFIGURATION_ENVIRONMENT as string;\r\n if (environment === \"Development\") {\r\n toastHelper.showDevelopmentUnexpectedExceptionNotification();\r\n }\r\n}\r\n\r\nexport function logTrace(message: any) {\r\n console.debug(message);\r\n TelemetryService.logTrace(message);\r\n}\r\n","import { takeEvery, call, put, select } from \"redux-saga/effects\";\r\nimport * as Actions from \"./actions\";\r\nimport { createBasketClient } from \"../../../api/clientFactory\";\r\nimport * as Client from \"../../../api/Client\";\r\nimport { simpleCall } from \"../../../api/callHelper\";\r\nimport { INopimsBasketModel, NopimsBasketItemModel } from \"./model\";\r\nimport { NopimsBasketActions } from \"./actions\";\r\nimport { logError } from \"../../../common/LogHelper\";\r\n\r\nexport default function* watcher() {\r\n yield takeEvery(Actions.NopimsBasketActions.Initialise, initialise);\r\n yield takeEvery(Actions.NopimsBasketActions.ItemsAdded, update);\r\n yield takeEvery(Actions.NopimsBasketActions.ItemsRemoved, update);\r\n}\r\n\r\nfunction* initialise() {\r\n const vm: INopimsBasketModel = yield select((state: any) => state.nopimsBasket);\r\n\r\n // load the active basket from the service layer (there can only be 0 or 1)\r\n // do not show busy state as this needs to be done silently\r\n try {\r\n const response: Client.GetPublicNopimsBasketResponseDto = yield call(loadQuery, vm.userToken!);\r\n var items = response.items.map(\r\n (i) =>\r\n new NopimsBasketItemModel(\r\n i.dataDescription,\r\n i.reportId,\r\n i.surveyDataId,\r\n i.wellBoreholeId,\r\n i.surveyAcquisitionId,\r\n i.reprocessingProjectId,\r\n i.itemId,\r\n i.activity,\r\n i.activityIdentifier,\r\n i.activityName,\r\n i.type,\r\n i.documentType\r\n )\r\n );\r\n yield put({ type: NopimsBasketActions.ItemsLoaded, items });\r\n } catch (e) {\r\n logError(e);\r\n }\r\n}\r\n\r\nasync function loadQuery(userToken: string): Promise {\r\n const client = createBasketClient();\r\n const request = new Client.GetPublicNopimsBasketRequestDto({ userToken: userToken });\r\n const response = await simpleCall(() => client.getPublicNopimsBasket(request));\r\n return response;\r\n}\r\n\r\nfunction* update() {\r\n const vm: INopimsBasketModel = yield select((state: any) => state.nopimsBasket);\r\n // update to the service layer\r\n // do not show busy state as this needs to be done silently\r\n // load the refresh the vm after the save has occurred to help reduce concurrency issues\r\n // will ignore conflicts for now, just log these, will see how this goes\r\n try {\r\n yield call(updateCommand, vm);\r\n yield put({ type: NopimsBasketActions.Initialise });\r\n } catch (e) {\r\n logError(e);\r\n }\r\n}\r\n\r\nasync function updateCommand(vm: INopimsBasketModel): Promise {\r\n const client = createBasketClient();\r\n const request = new Client.SavePublicNopimsBasketRequestDto({\r\n userToken: vm.userToken!,\r\n items: vm.items.map(\r\n (i) =>\r\n new Client.SavePublicNopimsBasketItemRequestDto({\r\n reportId: i.reportId,\r\n surveyDataId: i.surveyDataId,\r\n wellBoreholeId: i.wellBoreholeId,\r\n surveyAcquisitionId: i.surveyAcquisitionId,\r\n reprocessingProjectId: i.reprocessingProjectId,\r\n })\r\n ),\r\n });\r\n const response = await simpleCall(() => client.savePublicNopimsBasket(request));\r\n return response;\r\n}\r\n","import { createStore, applyMiddleware } from \"redux\";\r\nimport rootReducer from \"./rootReducer\";\r\nimport reduxImmutableStateInvariant from \"redux-immutable-state-invariant\";\r\nimport { composeWithDevToolsDevelopmentOnly } from \"@redux-devtools/extension\";\r\nimport createSagaMiddleware from \"redux-saga\";\r\n// user sagas\r\nimport searchTitleSaga from \"../opggs/title/titleSearch/redux/titleSearchSaga\";\r\nimport getTitleDetailsSaga from \"../opggs/title/titleDetails/redux/titleDetailsSaga\";\r\nimport getTitleMapDetailsSaga from \"../opggs/title/titleDetails/redux/titleMapDetailsSaga\";\r\nimport getOpggsApplicationTrackingSaga from \"../opggs/application/opggsApplicationTracking/redux/opggsApplicationTrackingSaga\";\r\nimport getOpggsApplicationTrackingDetailsSaga from \"../opggs/application/opggsApplicationTrackingDetails/redux/opggsApplicationTrackingDetailsSaga\";\r\nimport storageFormationsListSaga from \"../opggs/storageFormation/storageFormationsList/redux/storageFormationsListSaga\";\r\nimport openTitleSaga from \"../open/title/redux/openTitleSaga\";\r\nimport shellSaga from \"../shell/redux/shellSaga\";\r\nimport searchOeiLicenceSaga from \"../oei/licence/search/redux/licenceSearchSaga\";\r\nimport getOeiLicenceDetailsSaga from \"../oei/licence/details/redux/licenceDetailsSaga\";\r\nimport openLicenceSaga from \"../open/licence/redux/openLicenceSaga\";\r\nimport getOeiApplicationTrackingSaga from \"../oei/application/oeiApplicationTracking/redux/oeiApplicationTrackingSaga\";\r\nimport getOeiApplicationTrackingDetailsSaga from \"../oei/application/oeiApplicationTrackingDetails/redux/oeiApplicationTrackingDetailsSaga\";\r\nimport nopimsBasketSaga from \"../nopims/basket/redux/saga\";\r\n\r\nconst initialiseSagaMiddleware = createSagaMiddleware();\r\n\r\nconst store = createStore(\r\n rootReducer,\r\n // this will warn us if we accidentally mutate state\r\n composeWithDevToolsDevelopmentOnly(applyMiddleware(reduxImmutableStateInvariant(), initialiseSagaMiddleware))\r\n);\r\n\r\n// register Sagas\r\n// TODO, can this be externalised somehow?\r\n\r\n// Title\r\ninitialiseSagaMiddleware.run(searchTitleSaga);\r\ninitialiseSagaMiddleware.run(getTitleDetailsSaga);\r\ninitialiseSagaMiddleware.run(getTitleMapDetailsSaga);\r\n// Storage Formations\r\ninitialiseSagaMiddleware.run(storageFormationsListSaga);\r\n// Application\r\ninitialiseSagaMiddleware.run(getOpggsApplicationTrackingSaga);\r\ninitialiseSagaMiddleware.run(getOpggsApplicationTrackingDetailsSaga);\r\n// Open\r\ninitialiseSagaMiddleware.run(openTitleSaga);\r\ninitialiseSagaMiddleware.run(openLicenceSaga);\r\n// Oei\r\ninitialiseSagaMiddleware.run(searchOeiLicenceSaga);\r\ninitialiseSagaMiddleware.run(getOeiLicenceDetailsSaga);\r\n// Oei Application\r\ninitialiseSagaMiddleware.run(getOeiApplicationTrackingSaga);\r\ninitialiseSagaMiddleware.run(getOeiApplicationTrackingDetailsSaga);\r\n// NOPIMS\r\ninitialiseSagaMiddleware.run(nopimsBasketSaga);\r\n// Shell\r\ninitialiseSagaMiddleware.run(shellSaga);\r\n\r\n//show initialised state\r\n// console.log(store.getState());\r\n\r\nexport default store;\r\n","// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\nimport { __assign, __extends } from \"tslib\";\r\nimport { dateNow } from '@microsoft/applicationinsights-core-js';\r\nimport * as React from 'react';\r\n/**\r\n * Higher-order component base class to hook Application Insights tracking\r\n * in a React component's lifecycle.\r\n */\r\nvar AITrackedComponentBase = /** @class */ (function (_super) {\r\n __extends(AITrackedComponentBase, _super);\r\n function AITrackedComponentBase(props, reactPlugin, componentName) {\r\n var _this = _super.call(this, props) || this;\r\n _this._mountTimestamp = 0;\r\n _this._firstActiveTimestamp = 0;\r\n _this._idleStartTimestamp = 0;\r\n _this._lastActiveTimestamp = 0;\r\n _this._totalIdleTime = 0;\r\n _this._idleCount = 0;\r\n _this._idleTimeout = 5000;\r\n _this.trackActivity = function (e) {\r\n if (_this._firstActiveTimestamp === 0) {\r\n _this._firstActiveTimestamp = dateNow();\r\n _this._lastActiveTimestamp = _this._firstActiveTimestamp;\r\n }\r\n else {\r\n _this._lastActiveTimestamp = dateNow();\r\n }\r\n if (_this._idleStartTimestamp > 0) {\r\n var lastIdleTime = _this._lastActiveTimestamp - _this._idleStartTimestamp;\r\n _this._totalIdleTime += lastIdleTime;\r\n _this._idleStartTimestamp = 0;\r\n }\r\n };\r\n _this._reactPlugin = reactPlugin;\r\n _this._componentName = componentName;\r\n return _this;\r\n }\r\n AITrackedComponentBase.prototype.componentDidMount = function () {\r\n var _this = this;\r\n this._mountTimestamp = dateNow();\r\n this._firstActiveTimestamp = 0;\r\n this._totalIdleTime = 0;\r\n this._lastActiveTimestamp = 0;\r\n this._idleStartTimestamp = 0;\r\n this._idleCount = 0;\r\n this._intervalId = setInterval(function () {\r\n if (_this._lastActiveTimestamp > 0 && _this._idleStartTimestamp === 0 && dateNow() - _this._lastActiveTimestamp >= _this._idleTimeout) {\r\n _this._idleStartTimestamp = dateNow();\r\n _this._idleCount++;\r\n }\r\n }, 100);\r\n };\r\n AITrackedComponentBase.prototype.componentWillUnmount = function () {\r\n if (this._mountTimestamp === 0) {\r\n throw new Error('withAITracking:componentWillUnmount: mountTimestamp is not initialized.');\r\n }\r\n if (this._intervalId) {\r\n clearInterval(this._intervalId);\r\n }\r\n if (this._firstActiveTimestamp === 0) {\r\n return;\r\n }\r\n var engagementTime = this.getEngagementTimeSeconds();\r\n var metricData = {\r\n average: engagementTime,\r\n name: 'React Component Engaged Time (seconds)',\r\n sampleCount: 1\r\n };\r\n var additionalProperties = { 'Component Name': this._componentName };\r\n this._reactPlugin.trackMetric(metricData, additionalProperties);\r\n };\r\n AITrackedComponentBase.prototype.getEngagementTimeSeconds = function () {\r\n return (dateNow() - this._firstActiveTimestamp - this._totalIdleTime - this._idleCount * this._idleTimeout) / 1000;\r\n };\r\n return AITrackedComponentBase;\r\n}(React.Component));\r\nexport { AITrackedComponentBase };\r\n/**\r\n * Higher-order component function to hook Application Insights tracking\r\n * in a React component's lifecycle.\r\n *\r\n * @param reactPlugin ReactPlugin instance\r\n * @param Component the React component to be instrumented\r\n * @param componentName (optional) component name\r\n * @param className (optional) className of the HOC div\r\n */\r\nexport default function withAITracking(reactPlugin, Component, componentName, className) {\r\n if (componentName === undefined || componentName === null || typeof componentName !== 'string') {\r\n componentName = Component.prototype &&\r\n Component.prototype.constructor &&\r\n Component.prototype.constructor.name ||\r\n 'Unknown';\r\n }\r\n if (className === undefined || className === null || typeof className !== 'string') {\r\n className = '';\r\n }\r\n return /** @class */ (function (_super) {\r\n __extends(class_1, _super);\r\n function class_1(props) {\r\n return _super.call(this, props, reactPlugin, componentName) || this;\r\n }\r\n class_1.prototype.render = function () {\r\n return (React.createElement(\"div\", { onKeyDown: this.trackActivity, onMouseMove: this.trackActivity, onScroll: this.trackActivity, onMouseDown: this.trackActivity, onTouchStart: this.trackActivity, onTouchMove: this.trackActivity, className: className },\r\n React.createElement(Component, __assign({}, this.props))));\r\n };\r\n return class_1;\r\n }(AITrackedComponentBase));\r\n}\r\n//# sourceMappingURL=withAITracking.js.map","// lifted from https://github.com/Azure-Samples/application-insights-react-demo/blob/master/src/telemetry-provider.jsx\r\n\r\n// framework\r\nimport { Component, Fragment } from \"react\";\r\nimport { withAITracking } from \"@microsoft/applicationinsights-react-js\";\r\n// redux\r\nimport { withHistory } from \"../redux/withHistory\";\r\n// telemetry\r\nimport { ai } from \"./TelemetryService\";\r\n\r\n/**\r\n * This Component provides telemetry with Azure App Insights\r\n *\r\n * NOTE: the package '@microsoft/applicationinsights-react-js' has a HOC withAITracking that requires this to be a Class Component rather than a Functional Component\r\n */\r\nclass TelemetryProvider extends Component {\r\n state = {\r\n initialized: false,\r\n };\r\n\r\n componentDidMount() {\r\n const { history } = this.props;\r\n const { initialized } = this.state;\r\n const connectionString = this.props.connectionString;\r\n if (!Boolean(initialized) && Boolean(connectionString) && Boolean(history)) {\r\n ai.initialize(connectionString, history);\r\n this.setState({ initialized: true });\r\n }\r\n\r\n if (this.props.after !== undefined) this.props.after();\r\n }\r\n\r\n render() {\r\n const { children } = this.props;\r\n return {children};\r\n }\r\n}\r\n\r\nexport default withHistory(withAITracking(ai.reactPlugin, TelemetryProvider));\r\n","import { useHistory } from \"react-router-dom\";\r\n\r\nexport const withHistory = (WrappedComponent: React.ComponentType) => (props: any) => {\r\n const history = useHistory();\r\n\r\n return ;\r\n};\r\n","var defaultData = {\n en: {\n name: \"en\",\n identity: {\n version: {\n _unicodeVersion: \"14.0.0\",\n _cldrVersion: \"41\"\n },\n language: \"en\"\n },\n territory: \"US\",\n numbers: {\n symbols: {\n decimal: \".\",\n group: \",\",\n list: \";\",\n percentSign: \"%\",\n plusSign: \"+\",\n minusSign: \"-\",\n exponential: \"E\",\n superscriptingExponent: \"×\",\n perMille: \"‰\",\n infinity: \"∞\",\n nan: \"NaN\",\n timeSeparator: \":\",\n approximatelySign: \"~\"\n },\n decimal: {\n patterns: [\n \"n\"\n ],\n groupSize: [\n 3\n ]\n },\n scientific: {\n patterns: [\n \"nEn\"\n ],\n groupSize: []\n },\n percent: {\n patterns: [\n \"n%\"\n ],\n groupSize: [\n 3\n ]\n },\n currency: {\n patterns: [\n \"$n\"\n ],\n groupSize: [\n 3\n ],\n \"unitPattern-count-one\": \"n $\",\n \"unitPattern-count-other\": \"n $\"\n },\n currencies: {\n BGN: {\n displayName: \"Bulgarian Lev\",\n \"displayName-count-one\": \"Bulgarian lev\",\n \"displayName-count-other\": \"Bulgarian leva\",\n symbol: \"BGN\"\n },\n EUR: {\n displayName: \"Euro\",\n \"displayName-count-one\": \"euro\",\n \"displayName-count-other\": \"euros\",\n symbol: \"€\",\n \"symbol-alt-narrow\": \"€\"\n },\n USD: {\n displayName: \"US Dollar\",\n \"displayName-count-one\": \"US dollar\",\n \"displayName-count-other\": \"US dollars\",\n symbol: \"$\",\n \"symbol-alt-narrow\": \"$\"\n }\n },\n localeCurrency: \"USD\",\n accounting: {\n patterns: [\n \"$n\",\n \"($n)\"\n ],\n groupSize: [\n 3\n ]\n }\n },\n calendar: {\n gmtFormat: \"GMT{0}\",\n gmtZeroFormat: \"GMT\",\n patterns: {\n d: \"M/d/y\",\n D: \"EEEE, MMMM d, y\",\n m: \"MMM d\",\n M: \"MMMM d\",\n y: \"MMM y\",\n Y: \"MMMM y\",\n F: \"EEEE, MMMM d, y h:mm:ss a\",\n g: \"M/d/y h:mm a\",\n G: \"M/d/y h:mm:ss a\",\n t: \"h:mm a\",\n T: \"h:mm:ss a\",\n s: \"yyyy'-'MM'-'dd'T'HH':'mm':'ss\",\n u: \"yyyy'-'MM'-'dd HH':'mm':'ss'Z'\"\n },\n dateTimeFormats: {\n full: \"{1} 'at' {0}\",\n long: \"{1} 'at' {0}\",\n medium: \"{1}, {0}\",\n short: \"{1}, {0}\",\n availableFormats: {\n Bh: \"h B\",\n Bhm: \"h:mm B\",\n Bhms: \"h:mm:ss B\",\n d: \"d\",\n E: \"ccc\",\n EBhm: \"E h:mm B\",\n EBhms: \"E h:mm:ss B\",\n Ed: \"d E\",\n Ehm: \"E h:mm a\",\n EHm: \"E HH:mm\",\n Ehms: \"E h:mm:ss a\",\n EHms: \"E HH:mm:ss\",\n Gy: \"y G\",\n GyMd: \"M/d/y GGGGG\",\n GyMMM: \"MMM y G\",\n GyMMMd: \"MMM d, y G\",\n GyMMMEd: \"E, MMM d, y G\",\n h: \"h a\",\n H: \"HH\",\n hm: \"h:mm a\",\n Hm: \"HH:mm\",\n hms: \"h:mm:ss a\",\n Hms: \"HH:mm:ss\",\n hmsv: \"h:mm:ss a v\",\n Hmsv: \"HH:mm:ss v\",\n hmv: \"h:mm a v\",\n Hmv: \"HH:mm v\",\n M: \"L\",\n Md: \"M/d\",\n MEd: \"E, M/d\",\n MMM: \"LLL\",\n MMMd: \"MMM d\",\n MMMEd: \"E, MMM d\",\n MMMMd: \"MMMM d\",\n \"MMMMW-count-one\": \"'week' W 'of' MMMM\",\n \"MMMMW-count-other\": \"'week' W 'of' MMMM\",\n ms: \"mm:ss\",\n y: \"y\",\n yM: \"M/y\",\n yMd: \"M/d/y\",\n yMEd: \"E, M/d/y\",\n yMMM: \"MMM y\",\n yMMMd: \"MMM d, y\",\n yMMMEd: \"E, MMM d, y\",\n yMMMM: \"MMMM y\",\n yQQQ: \"QQQ y\",\n yQQQQ: \"QQQQ y\",\n \"yw-count-one\": \"'week' w 'of' Y\",\n \"yw-count-other\": \"'week' w 'of' Y\"\n }\n },\n timeFormats: {\n full: \"h:mm:ss a zzzz\",\n long: \"h:mm:ss a z\",\n medium: \"h:mm:ss a\",\n short: \"h:mm a\"\n },\n dateFormats: {\n full: \"EEEE, MMMM d, y\",\n long: \"MMMM d, y\",\n medium: \"MMM d, y\",\n short: \"M/d/yy\"\n },\n days: {\n format: {\n abbreviated: [\n \"Sun\",\n \"Mon\",\n \"Tue\",\n \"Wed\",\n \"Thu\",\n \"Fri\",\n \"Sat\"\n ],\n narrow: [\n \"S\",\n \"M\",\n \"T\",\n \"W\",\n \"T\",\n \"F\",\n \"S\"\n ],\n short: [\n \"Su\",\n \"Mo\",\n \"Tu\",\n \"We\",\n \"Th\",\n \"Fr\",\n \"Sa\"\n ],\n wide: [\n \"Sunday\",\n \"Monday\",\n \"Tuesday\",\n \"Wednesday\",\n \"Thursday\",\n \"Friday\",\n \"Saturday\"\n ]\n },\n \"stand-alone\": {\n abbreviated: [\n \"Sun\",\n \"Mon\",\n \"Tue\",\n \"Wed\",\n \"Thu\",\n \"Fri\",\n \"Sat\"\n ],\n narrow: [\n \"S\",\n \"M\",\n \"T\",\n \"W\",\n \"T\",\n \"F\",\n \"S\"\n ],\n short: [\n \"Su\",\n \"Mo\",\n \"Tu\",\n \"We\",\n \"Th\",\n \"Fr\",\n \"Sa\"\n ],\n wide: [\n \"Sunday\",\n \"Monday\",\n \"Tuesday\",\n \"Wednesday\",\n \"Thursday\",\n \"Friday\",\n \"Saturday\"\n ]\n }\n },\n months: {\n format: {\n abbreviated: [\n \"Jan\",\n \"Feb\",\n \"Mar\",\n \"Apr\",\n \"May\",\n \"Jun\",\n \"Jul\",\n \"Aug\",\n \"Sep\",\n \"Oct\",\n \"Nov\",\n \"Dec\"\n ],\n narrow: [\n \"J\",\n \"F\",\n \"M\",\n \"A\",\n \"M\",\n \"J\",\n \"J\",\n \"A\",\n \"S\",\n \"O\",\n \"N\",\n \"D\"\n ],\n wide: [\n \"January\",\n \"February\",\n \"March\",\n \"April\",\n \"May\",\n \"June\",\n \"July\",\n \"August\",\n \"September\",\n \"October\",\n \"November\",\n \"December\"\n ]\n },\n \"stand-alone\": {\n abbreviated: [\n \"Jan\",\n \"Feb\",\n \"Mar\",\n \"Apr\",\n \"May\",\n \"Jun\",\n \"Jul\",\n \"Aug\",\n \"Sep\",\n \"Oct\",\n \"Nov\",\n \"Dec\"\n ],\n narrow: [\n \"J\",\n \"F\",\n \"M\",\n \"A\",\n \"M\",\n \"J\",\n \"J\",\n \"A\",\n \"S\",\n \"O\",\n \"N\",\n \"D\"\n ],\n wide: [\n \"January\",\n \"February\",\n \"March\",\n \"April\",\n \"May\",\n \"June\",\n \"July\",\n \"August\",\n \"September\",\n \"October\",\n \"November\",\n \"December\"\n ]\n }\n },\n quarters: {\n format: {\n abbreviated: [\n \"Q1\",\n \"Q2\",\n \"Q3\",\n \"Q4\"\n ],\n narrow: [\n \"1\",\n \"2\",\n \"3\",\n \"4\"\n ],\n wide: [\n \"1st quarter\",\n \"2nd quarter\",\n \"3rd quarter\",\n \"4th quarter\"\n ]\n },\n \"stand-alone\": {\n abbreviated: [\n \"Q1\",\n \"Q2\",\n \"Q3\",\n \"Q4\"\n ],\n narrow: [\n \"1\",\n \"2\",\n \"3\",\n \"4\"\n ],\n wide: [\n \"1st quarter\",\n \"2nd quarter\",\n \"3rd quarter\",\n \"4th quarter\"\n ]\n }\n },\n dayPeriods: {\n format: {\n abbreviated: {\n midnight: \"midnight\",\n am: \"AM\",\n \"am-alt-variant\": \"am\",\n noon: \"noon\",\n pm: \"PM\",\n \"pm-alt-variant\": \"pm\",\n morning1: \"in the morning\",\n afternoon1: \"in the afternoon\",\n evening1: \"in the evening\",\n night1: \"at night\"\n },\n narrow: {\n midnight: \"mi\",\n am: \"a\",\n \"am-alt-variant\": \"am\",\n noon: \"n\",\n pm: \"p\",\n \"pm-alt-variant\": \"pm\",\n morning1: \"in the morning\",\n afternoon1: \"in the afternoon\",\n evening1: \"in the evening\",\n night1: \"at night\"\n },\n wide: {\n midnight: \"midnight\",\n am: \"AM\",\n \"am-alt-variant\": \"am\",\n noon: \"noon\",\n pm: \"PM\",\n \"pm-alt-variant\": \"pm\",\n morning1: \"in the morning\",\n afternoon1: \"in the afternoon\",\n evening1: \"in the evening\",\n night1: \"at night\"\n }\n },\n \"stand-alone\": {\n abbreviated: {\n midnight: \"midnight\",\n am: \"AM\",\n \"am-alt-variant\": \"am\",\n noon: \"noon\",\n pm: \"PM\",\n \"pm-alt-variant\": \"pm\",\n morning1: \"morning\",\n afternoon1: \"afternoon\",\n evening1: \"evening\",\n night1: \"night\"\n },\n narrow: {\n midnight: \"midnight\",\n am: \"AM\",\n \"am-alt-variant\": \"am\",\n noon: \"noon\",\n pm: \"PM\",\n \"pm-alt-variant\": \"pm\",\n morning1: \"morning\",\n afternoon1: \"afternoon\",\n evening1: \"evening\",\n night1: \"night\"\n },\n wide: {\n midnight: \"midnight\",\n am: \"AM\",\n \"am-alt-variant\": \"am\",\n noon: \"noon\",\n pm: \"PM\",\n \"pm-alt-variant\": \"pm\",\n morning1: \"morning\",\n afternoon1: \"afternoon\",\n evening1: \"evening\",\n night1: \"night\"\n }\n }\n },\n eras: {\n format: {\n wide: {\n \"0\": \"Before Christ\",\n \"1\": \"Anno Domini\",\n \"0-alt-variant\": \"Before Common Era\",\n \"1-alt-variant\": \"Common Era\"\n },\n abbreviated: {\n \"0\": \"BC\",\n \"1\": \"AD\",\n \"0-alt-variant\": \"BCE\",\n \"1-alt-variant\": \"CE\"\n },\n narrow: {\n \"0\": \"B\",\n \"1\": \"A\",\n \"0-alt-variant\": \"BCE\",\n \"1-alt-variant\": \"CE\"\n }\n }\n },\n dateFields: {\n era: {\n wide: \"era\",\n short: \"era\",\n narrow: \"era\"\n },\n year: {\n wide: \"year\",\n short: \"yr.\",\n narrow: \"yr.\"\n },\n quarter: {\n wide: \"quarter\",\n short: \"qtr.\",\n narrow: \"qtr.\"\n },\n month: {\n wide: \"month\",\n short: \"mo.\",\n narrow: \"mo.\"\n },\n week: {\n wide: \"week\",\n short: \"wk.\",\n narrow: \"wk.\"\n },\n weekOfMonth: {\n wide: \"week of month\",\n short: \"wk. of mo.\",\n narrow: \"wk. of mo.\"\n },\n day: {\n wide: \"day\",\n short: \"day\",\n narrow: \"day\"\n },\n dayOfYear: {\n wide: \"day of year\",\n short: \"day of yr.\",\n narrow: \"day of yr.\"\n },\n weekday: {\n wide: \"day of the week\",\n short: \"day of wk.\",\n narrow: \"day of wk.\"\n },\n weekdayOfMonth: {\n wide: \"weekday of the month\",\n short: \"wkday. of mo.\",\n narrow: \"wkday. of mo.\"\n },\n dayperiod: {\n short: \"AM/PM\",\n wide: \"AM/PM\",\n narrow: \"AM/PM\"\n },\n hour: {\n wide: \"hour\",\n short: \"hr.\",\n narrow: \"hr.\"\n },\n minute: {\n wide: \"minute\",\n short: \"min.\",\n narrow: \"min.\"\n },\n second: {\n wide: \"second\",\n short: \"sec.\",\n narrow: \"sec.\"\n },\n zone: {\n wide: \"time zone\",\n short: \"zone\",\n narrow: \"zone\"\n },\n millisecond: {\n narrow: \"ms\",\n short: \"ms\",\n wide: \"millisecond\"\n }\n }\n }\n },\n supplemental: {\n likelySubtags: {\n en: \"en-Latn-US\"\n },\n currencyData: {\n region: {\n US: [\n {\n USD: {\n _from: \"1792-01-01\"\n }\n }\n ]\n }\n },\n weekData: {\n firstDay: {\n US: \"sun\"\n },\n weekendStart: {\n \"001\": \"sat\"\n },\n weekendEnd: {\n \"001\": \"sun\"\n }\n }\n }\n};\nexport default defaultData;","export default function isString(value) {\n return typeof value === \"string\";\n}","import errorDetails from './error-details';\n\nvar formatRegExp = /\\{(\\d+)}?\\}/g;\n\nvar IntlError = function IntlError(ref) {\n var name = ref.name;\n var message = ref.message;\n\n if (!name || !message) {\n throw new Error(\"{ name: string, message: string } object is required!\");\n }\n\n this.name = name;\n this.message = message;\n};\n\nIntlError.prototype.formatMessage = function formatMessage () {\n var values = [], len = arguments.length;\n while ( len-- ) values[ len ] = arguments[ len ];\n\n var flattenValues = flatten(values);\n\n var formattedMessage = this.message.replace(formatRegExp, function(match, index) {\n return flattenValues[parseInt(index, 10)];\n });\n\n return ((this.name) + \": \" + formattedMessage);\n};\n\nIntlError.prototype.error = function error () {\n var values = [], len = arguments.length;\n while ( len-- ) values[ len ] = arguments[ len ];\n\n return new Error(this.formatMessage(values));\n};\n\nvar flatten = function(arr) {\n return arr.reduce(function (a, b) { return a.concat(b); }, []);\n};\n\nvar toIntlErrors = function(errors) {\n var predicate = function(prev, name) {\n prev[name] = new IntlError({ name: name, message: errors[name] });\n return prev;\n };\n\n return Object.keys(errors).reduce(predicate, {});\n};\n\nvar errors = toIntlErrors(errorDetails);\n\nexport {\n errors,\n IntlError,\n toIntlErrors\n};\n","//The error is represented by unique name and corresponding message\n//The message can contain placeholders with index, e.g. {0}, {1}\n\nexport default {\n \"NoLocale\": \"Missing locale info for '{0}'\",\n \"NoCurrency\": \"Cannot determine currency information. Please load the locale currencies data.\",\n \"NoSupplementalCurrency\": \"Cannot determine currency. Please load the supplemental currencyData.\",\n \"NoCurrencyRegion\": \"No currency data for region '{0}'\",\n \"NoCurrencyDisplay\": \"Cannot determine currency display information. Please load the locale currencies data. The default culture does not include the all currencies data.\",\n \"NoGMTInfo\": \"Cannot determine locale GMT format. Please load the locale timeZoneNames data.\",\n \"NoWeekData\": \"Cannot determine locale first day of week. Please load the supplemental weekData.\",\n \"NoFirstDay\": \"Cannot determine locale first day of week. Please load the supplemental weekData. The default culture includes only the 'en-US' first day info.\",\n \"NoValidCurrency\": \"Cannot determine a default currency for the {0} locale. Please specify explicitly the currency with the format options.\",\n \"NoDateFieldNames\": \"Cannot determine the locale date field names. Please load the locale dateFields data.\"\n};\n","import defaultData from './default-data';\nimport isString from '../common/is-string';\nimport { errors } from '../errors';\n\nfunction availableLocaleInfo(fullName, suffixes) {\n var parts = fullName.split(\"-\");\n var language = parts[0];\n var script = parts[1];\n var territory = parts[2];\n\n return cldr[fullName] || (suffixes.indexOf(territory) !== -1 && cldr[language + \"-\" + territory]) || (suffixes.indexOf(script) !== -1 && cldr[language + \"-\" + script]) || cldr[language];\n}\n\nfunction localeFullName(language, suffixes) {\n var likelySubtags = cldr.supplemental.likelySubtags;\n\n for (var idx = 0; idx < suffixes.length; idx++) {\n var name = likelySubtags[language + \"-\" + suffixes[idx ]];\n if (name) {\n return name;\n }\n }\n\n if (likelySubtags[language]) {\n return likelySubtags[language];\n }\n}\n\nexport var cldr = defaultData;\n\nexport function getLocaleInfo(locale) {\n var info;\n if (isString(locale)) {\n info = localeInfo(locale);\n } else {\n info = locale;\n }\n return info;\n}\n\nexport function localeInfo(locale) {\n if (cldr[locale]) {\n return cldr[locale];\n }\n\n var likelySubtags = cldr.supplemental.likelySubtags;\n if (likelySubtags) {\n var parts = locale.split(\"-\");\n var language = parts[0];\n var suffixes = parts.slice(1);\n var fullName = localeFullName(language, suffixes);\n var info = fullName ? availableLocaleInfo(fullName, suffixes) : null;\n if (info) {\n return info;\n }\n }\n\n throw errors.NoLocale.error(locale);\n}\n","export var DECIMAL = \"decimal\";\nexport var CURRENCY = \"currency\";\nexport var ACCOUNTING = \"accounting\";\nexport var PERCENT = \"percent\";\nexport var SCIENTIFIC = \"scientific\";\n\nexport var CURRENCY_PLACEHOLDER = \"$\";\nexport var PERCENT_PLACEHOLDER = \"%\";\nexport var NUMBER_PLACEHOLDER = \"n\";\n\nexport var LIST_SEPARATOR = \";\";\nexport var GROUP_SEPARATOR = \",\";\n\nexport var POINT = \".\";\nexport var EMPTY = \"\";\n\nexport var DEFAULT_LOCALE = \"en\";\n\n","import { cldr } from './info';\nimport { CURRENCY, ACCOUNTING, DECIMAL, CURRENCY_PLACEHOLDER, NUMBER_PLACEHOLDER, LIST_SEPARATOR, GROUP_SEPARATOR, POINT } from '../common/constants';\n\nvar LATIN_NUMBER_FORMATS = \"Formats-numberSystem-latn\";\nvar LATIN_NUMBER_SYMBOLS = \"symbols-numberSystem-latn\";\n\nvar patternRegExp = /([#,0.]+)/g;\nvar cldrCurrencyRegExp = /¤/g;\n\nfunction getPatterns(pattern) {\n patternRegExp.lastIndex = 0;\n\n return pattern.replace(cldrCurrencyRegExp, CURRENCY_PLACEHOLDER).replace(patternRegExp, NUMBER_PLACEHOLDER).split(LIST_SEPARATOR);\n}\n\nfunction getGroupSize(pattern) {\n patternRegExp.lastIndex = 0;\n\n var numberPatterns = patternRegExp.exec(pattern.split(LIST_SEPARATOR)[0])[0].split(POINT);\n var integer = numberPatterns[0];\n\n var groupSize = integer.split(GROUP_SEPARATOR).slice(1).map(function(group) {\n return group.length;\n }).reverse();\n\n return groupSize;\n}\n\nfunction loadCurrencyUnitPatterns(currencyInfo, currencyFormats) {\n for (var field in currencyFormats) {\n if (field.startsWith(\"unitPattern\")) {\n currencyInfo[field] = currencyFormats[field].replace(\"{0}\", NUMBER_PLACEHOLDER).replace(\"{1}\", CURRENCY_PLACEHOLDER);\n }\n }\n}\n\nexport default function loadNumbersInfo(locale, info) {\n var localeInfo = cldr[locale];\n var numbers = localeInfo.numbers = localeInfo.numbers || {};\n numbers.symbols = numbers.symbols || {};\n for (var field in info) {\n if (field === LATIN_NUMBER_SYMBOLS) {\n Object.assign(numbers.symbols, info[field]);\n } else if (field.includes(LATIN_NUMBER_FORMATS)) {\n var style = field.substr(0, field.indexOf(LATIN_NUMBER_FORMATS));\n var pattern = info[field].standard;\n numbers[style] = {\n patterns: getPatterns(pattern)\n };\n if (style === CURRENCY) {\n numbers[style].groupSize = getGroupSize((info[DECIMAL + LATIN_NUMBER_FORMATS] || info[field]).standard);\n loadCurrencyUnitPatterns(numbers[style], info[field]);\n numbers[ACCOUNTING] = {\n patterns: getPatterns(info[field][ACCOUNTING]),\n groupSize: numbers[style].groupSize\n };\n } else {\n numbers[style].groupSize = getGroupSize(pattern);\n }\n } else if (field === \"currencies\") {\n numbers.currencies = info[field];\n }\n }\n}","import { cldr } from './info';\n\nvar predefinedDatePatterns = {\n s: \"yyyy'-'MM'-'dd'T'HH':'mm':'ss\",\n u: \"yyyy'-'MM'-'dd HH':'mm':'ss'Z'\"\n};\n\nvar YEAR_REGEX = /y+/g;\nvar SHORT_DATE = [ [ \"dateFormats\", \"short\" ] ];\n\nvar datePatterns = {\n D: [ [ \"dateFormats\", \"full\" ] ],\n m: [ [ \"dateTimeFormats\", \"availableFormats\", \"MMMd\" ] ],\n M: [ [ \"dateTimeFormats\", \"availableFormats\", \"MMMMd\" ] ],\n y: [ [ \"dateTimeFormats\", \"availableFormats\", \"yMMM\" ] ],\n Y: [ [ \"dateTimeFormats\", \"availableFormats\", \"yMMMM\" ] ],\n F: [ [ \"dateFormats\", \"full\" ], [ \"timeFormats\", \"medium\" ] ],\n g: [ [ \"dateTimeFormats\", \"availableFormats\", \"yMd\" ], [ \"timeFormats\", \"short\" ] ],\n G: [ [ \"dateTimeFormats\", \"availableFormats\", \"yMd\" ], [ \"timeFormats\", \"medium\" ] ],\n t: [ [ \"timeFormats\", \"short\" ] ],\n T: [ [ \"timeFormats\", \"medium\" ] ]\n};\n\nfunction toArray(obj) {\n var result = [];\n var names = Object.getOwnPropertyNames(obj);\n for (var idx = 0; idx < names.length; idx++) {\n var value = obj[names[idx]];\n result.push(value);\n }\n return result;\n}\n\nfunction getCalendarNames(info, isObj) {\n var result = {};\n for (var formatType in info) {\n var names = result[formatType] = {};\n for (var format in info[formatType]) {\n var formats = info[formatType][format];\n names[format] = isObj ? formats : toArray(formats);\n }\n }\n return result;\n}\n\nfunction getEraNames(eras) {\n var result = {};\n var format = result.format = {};\n var eraNameMap = {\n eraAbbr: \"abbreviated\",\n eraNames: \"wide\",\n eraNarrow: \"narrow\"\n };\n\n for (var eraFormatName in eras) {\n var formatName = eraNameMap[eraFormatName];\n format[formatName] = eras[eraFormatName];\n }\n\n return result;\n}\n\nfunction loadCalendarNames(locale, calendar) {\n var localeCalendar = cldr[locale].calendar;\n localeCalendar.days = getCalendarNames(calendar.days);\n localeCalendar.months = getCalendarNames(calendar.months);\n localeCalendar.quarters = getCalendarNames(calendar.quarters);\n localeCalendar.dayPeriods = getCalendarNames(calendar.dayPeriods, true);\n\n localeCalendar.eras = getEraNames(calendar.eras);\n}\n\nfunction loadCalendarDateFields(locale, fields) {\n var localeCalendar = cldr[locale].calendar;\n var dateFields = {};\n\n for (var field in fields) {\n var ref = field.split('-');\n var fieldName = ref[0];\n var formatType = ref[1]; if ( formatType === void 0 ) formatType = 'wide';\n var fieldInfo = dateFields[fieldName] || {};\n var displayName = fields[field].displayName;\n\n if (!displayName) { continue; }\n\n fieldInfo[formatType] = displayName;\n dateFields[fieldName] = fieldInfo;\n }\n\n localeCalendar.dateFields = dateFields;\n}\n\nfunction getPredefinedFormat(paths, calendar) {\n var result = [];\n\n for (var pathIdx = 0; pathIdx < paths.length; pathIdx++) {\n var fields = paths[ pathIdx ];\n var pattern = calendar;\n for (var idx = 0; idx < fields.length; idx++) {\n pattern = pattern[fields[idx]];\n }\n result.push(pattern);\n }\n\n return result.join(\" \");\n}\n\nfunction loadCalendarPatterns(locale, calendar) {\n var cldrCalendar = cldr[locale].calendar;\n var patterns = cldrCalendar.patterns = {};\n\n patterns.d = getPredefinedFormat(SHORT_DATE, calendar).replace(YEAR_REGEX, 'y');\n\n for (var pattern in datePatterns) {\n patterns[pattern] = getPredefinedFormat(datePatterns[pattern], calendar);\n }\n\n for (var pattern$1 in predefinedDatePatterns) {\n patterns[pattern$1] = predefinedDatePatterns[pattern$1];\n }\n\n var dateTimeFormats = calendar.dateTimeFormats;\n cldrCalendar.dateTimeFormats = {\n full: dateTimeFormats.full,\n long: dateTimeFormats.long,\n medium: dateTimeFormats.medium,\n short: dateTimeFormats.short,\n availableFormats: dateTimeFormats.availableFormats\n };\n cldrCalendar.timeFormats = calendar.timeFormats;\n cldrCalendar.dateFormats = calendar.dateFormats;\n}\n\n\nexport default function loadCalendarInfo(locale, info) {\n var calendar = cldr[locale].calendar = cldr[locale].calendar || {};\n for (var field in info) {\n if (field === \"timeZoneNames\") {\n calendar.gmtFormat = info[field].gmtFormat;\n calendar.gmtZeroFormat = info[field].gmtZeroFormat;\n } else if (field === \"calendars\" && info[field].gregorian) {\n loadCalendarPatterns(locale, info[field].gregorian);\n loadCalendarNames(locale, info[field].gregorian);\n } else if (field === \"fields\") {\n loadCalendarDateFields(locale, info.fields);\n }\n }\n}\n","import { cldr } from './info';\n\nfunction territoryFromName(name, identity) {\n var likelySubtags = cldr.supplemental.likelySubtags;\n var parts = name.split(\"-\");\n if (likelySubtags) {\n var likelyName = likelySubtags[name] || likelySubtags[parts[0]];\n if (likelyName) {\n parts = likelyName.split(\"-\");\n }\n }\n\n if (identity) {\n for (var idx = parts.length - 1; idx >= 1; idx--) {\n var part = parts[idx];\n if (part === identity.variant || part === identity.script) {\n parts.splice(idx, 1);\n }\n }\n }\n\n var length = parts.length;\n\n if (length > 1) {\n var territory = parts[length - 1];\n return territory.toUpperCase();\n }\n}\n\nexport default function localeTerritory(info) {\n if (info.territory) {\n return info.territory;\n }\n\n var name = info.name;\n var identity = info.identity;\n var territory;\n\n if (identity && identity.territory) {\n territory = identity.territory;\n } else {\n territory = territoryFromName(name, identity);\n }\n\n info.territory = territory;\n\n return territory;\n}\n","var MILLISECOND = 'duration-millisecond';\nvar UNIT_PATTERN_ONE = 'unitPattern-count-one';\nvar UNIT_PATTERN_OTHER = 'unitPattern-count-other';\nvar placeholderPattern = /\\{0\\}\\s?/;\n\nfunction extractUnit(unit) {\n var value = unit[UNIT_PATTERN_ONE] || unit[UNIT_PATTERN_OTHER];\n return value.replace(placeholderPattern, '');\n}\n\nexport default function loadUnits(localeInfo, units) {\n localeInfo.calendar.dateFields.millisecond = {\n narrow: extractUnit(units.narrow[MILLISECOND]),\n short: extractUnit(units.short[MILLISECOND]),\n wide: extractUnit(units.long[MILLISECOND])\n };\n}\n","import { cldr } from './info';\nimport loadNumbersInfo from './load-numbers';\nimport loadCalendarInfo from './load-dates';\nimport localeTerritory from './territory';\nimport loadUnits from './load-units';\n\nfunction loadLocale(locale, info) {\n for (var field in info) {\n if (field === \"numbers\") {\n loadNumbersInfo(locale, info[field]);\n } else if (field === \"dates\") {\n loadCalendarInfo(locale, info[field]);\n }\n }\n}\n\nexport default function load() {\n var arguments$1 = arguments;\n\n var length = arguments.length;\n for (var idx = 0; idx < length; idx++) {\n var entry = arguments$1[idx];\n if (entry.main) {\n var locale = Object.keys(entry.main)[0];\n var info = entry.main[locale];\n var localeInfo = cldr[locale] = cldr[locale] || {};\n\n if (info.units) {\n loadUnits(localeInfo, info.units);\n } else {\n localeInfo.name = localeInfo.name || locale;\n localeInfo.identity = localeInfo.identity || info.identity;\n\n localeTerritory(localeInfo);\n loadLocale(locale, info);\n }\n } else if (entry.supplemental) {\n if (entry.supplemental.weekData) {\n cldr.supplemental.weekData = {\n firstDay: entry.supplemental.weekData.firstDay,\n weekendStart: entry.supplemental.weekData.weekendStart,\n weekendEnd: entry.supplemental.weekData.weekendEnd\n };\n } else if (entry.supplemental.likelySubtags) {\n cldr.supplemental.likelySubtags = Object.assign(cldr.supplemental.likelySubtags, entry.supplemental.likelySubtags);\n } else if (entry.supplemental.currencyData) {\n var currencyData = cldr.supplemental.currencyData;\n currencyData.region = Object.assign(currencyData.region || {}, entry.supplemental.currencyData.region);\n currencyData.fractions = Object.assign(currencyData.fractions || {}, entry.supplemental.currencyData.fractions);\n }\n }\n }\n}\n","import { getLocaleInfo } from './info';\nimport { EMPTY } from '../common/constants';\n\nfunction lowerArray(arr) {\n var result = [];\n for (var idx = 0; idx < arr.length; idx++) {\n result.push(arr[idx].toLowerCase());\n }\n return result;\n}\n\nfunction lowerObject(obj) {\n var result = {};\n for (var field in obj) {\n result[field] = obj[field].toLowerCase();\n }\n return result;\n}\n\nfunction cloneLower(obj) {\n var result = Array.isArray(obj) ? lowerArray(obj) : lowerObject(obj);\n return result;\n}\n\nexport default function dateFormatNames(locale, options) {\n var type = options.type;\n var nameType = options.nameType;\n var standAlone = options.standAlone;\n var lower = options.lower;\n var info = getLocaleInfo(locale);\n var formatType = standAlone ? \"stand-alone\" : \"format\";\n var lowerNameType = (lower ? \"lower-\" : EMPTY) + nameType;\n var formatNames = info.calendar[type][formatType];\n var result = formatNames[lowerNameType];\n if (!result && lower) {\n result = formatNames[lowerNameType] = cloneLower(formatNames[nameType]);\n }\n return result;\n}","export default function parseRangeDate(value) {\n var parts = value.split('-');\n var year = parseInt(parts[0], 10);\n var month = parseInt(parts[1], 10) - 1;\n var day = parseInt(parts[2], 10);\n\n return new Date(year, month, day);\n}\n","import { cldr, getLocaleInfo } from './info';\nimport { errors } from '../errors';\nimport localeTerritory from './territory';\nimport parseRangeDate from './parse-range-date';\n\n/* eslint-disable consistent-return */\n\nvar NoCurrency = errors.NoCurrency;\nvar NoCurrencyDisplay = errors.NoCurrencyDisplay;\nvar NoSupplementalCurrency = errors.NoSupplementalCurrency;\nvar NoCurrencyRegion = errors.NoCurrencyRegion;\nvar NoValidCurrency = errors.NoValidCurrency;\n\nvar DEFAULT_CURRENCY_FRACTIONS = 2;\nvar SYMBOL = \"symbol\";\nvar INVALID_CURRENCY_CODE = 'XXX';\n\nvar GLOBAL_CURRENCIES = {\n '001': 'USD', // 001 refers to world. not sure if it is correct to assume USD but seems better than throw an error\n '150': 'EUR' // 150 territory for Europe\n\n};\n\nfunction getCurrencyInfo(locale, currency, throwIfNoValid) {\n var info = getLocaleInfo(locale);\n var currencies = info.numbers.currencies;\n if (!currencies) {\n if (throwIfNoValid) {\n throw NoCurrency.error();\n }\n\n return;\n }\n\n var currencyDisplayInfo = currencies[currency];\n\n if (!currencyDisplayInfo) {\n if (throwIfNoValid) {\n throw NoCurrencyDisplay.error();\n }\n\n return;\n }\n\n return currencyDisplayInfo;\n}\n\nfunction lengthComparer(a, b) {\n return b.length - a.length;\n}\n\nfunction regionCurrency(regionCurrencies) {\n var latestValidUntil, latestValidUntilRange;\n var latestStillValid, latestStillValidDate;\n\n for (var idx = 0; idx < regionCurrencies.length; idx++) {\n var currency = regionCurrencies[idx];\n var code = Object.keys(currency)[0];\n var info = currency[code];\n if (code !== INVALID_CURRENCY_CODE && info._tender !== 'false' && info._from) {\n if (!info._to) {\n var stillValidDate = parseRangeDate(info._from);\n if (!latestStillValidDate || latestStillValidDate < stillValidDate) {\n latestStillValid = code;\n latestStillValidDate = stillValidDate;\n }\n } else if (!latestStillValid) {\n var validFrom = parseRangeDate(info._from);\n var validTo = parseRangeDate(info._to);\n if (!latestValidUntilRange || latestValidUntilRange.to < validTo || latestValidUntilRange.from < validFrom) {\n latestValidUntil = code;\n latestValidUntilRange = {\n from: validFrom,\n to: validTo\n };\n }\n }\n }\n }\n\n return latestStillValid || latestValidUntil;\n}\n\nexport function currencyDisplays(locale, currency, throwIfNoValid) {\n if ( throwIfNoValid === void 0 ) throwIfNoValid = true;\n\n var currencyInfo = getCurrencyInfo(locale, currency, throwIfNoValid);\n if (!currencyInfo) {\n return;\n }\n\n if (!currencyInfo.displays) {\n var displays = [ currency ];\n for (var field in currencyInfo) {\n displays.push(currencyInfo[field]);\n }\n displays.sort(lengthComparer);\n currencyInfo.displays = displays;\n }\n\n return currencyInfo.displays;\n}\n\nexport function currencyDisplay(locale, options) {\n var value = options.value;\n var currency = options.currency;\n var currencyDisplay = options.currencyDisplay; if ( currencyDisplay === void 0 ) currencyDisplay = SYMBOL;\n\n if (currencyDisplay === \"code\") {\n return currency;\n }\n\n var currencyInfo = getCurrencyInfo(locale, currency, true);\n var result;\n\n if (currencyDisplay === SYMBOL) {\n result = currencyInfo[\"symbol-alt-narrow\"] || currencyInfo[SYMBOL] || currency;\n } else {\n if (typeof value === \"undefined\" || value !== 1) {\n result = currencyInfo[\"displayName-count-other\"];\n } else {\n result = currencyInfo[\"displayName-count-one\"];\n }\n }\n\n return result;\n}\n\nexport function currencyFractionOptions(code) {\n var minimumFractionDigits = DEFAULT_CURRENCY_FRACTIONS;\n var maximumFractionDigits = DEFAULT_CURRENCY_FRACTIONS;\n\n var fractions = ((cldr.supplemental.currencyData || {}).fractions || {})[code];\n\n if (fractions && fractions._digits) {\n maximumFractionDigits = minimumFractionDigits = parseInt(fractions._digits, 10);\n }\n\n return {\n minimumFractionDigits: minimumFractionDigits,\n maximumFractionDigits: maximumFractionDigits\n };\n}\n\nexport function territoryCurrencyCode(territory, throwIfNoValid) {\n if ( throwIfNoValid === void 0 ) throwIfNoValid = true;\n\n if (GLOBAL_CURRENCIES[territory]) {\n return GLOBAL_CURRENCIES[territory];\n }\n\n var currencyData = cldr.supplemental.currencyData;\n if (!currencyData) {\n if (throwIfNoValid) {\n throw NoSupplementalCurrency.error();\n }\n\n return;\n }\n\n var regionCurrencies = currencyData.region[territory];\n\n if (!regionCurrencies) {\n if (throwIfNoValid) {\n throw NoCurrencyRegion.error(territory);\n }\n\n return;\n }\n\n var currencyCode = regionCurrency(regionCurrencies);\n\n return currencyCode;\n}\n\nexport function localeCurrency(locale, throwIfNoValid) {\n var info = getLocaleInfo(locale);\n var numbers = info.numbers;\n\n if (!numbers.localeCurrency) {\n var currency = territoryCurrencyCode(localeTerritory(info), throwIfNoValid);\n\n if (!currency && throwIfNoValid) {\n throw NoValidCurrency.error(info.name);\n }\n\n numbers.localeCurrency = currency;\n }\n\n return numbers.localeCurrency;\n}\n","\nexport var DAYS_OF_WEEK = [ \"sun\", \"mon\", \"tue\", \"wed\", \"thu\", \"fri\", \"sat\" ];\n\nexport var DEFAULT_TERRITORY = '001';\n","import { cldr, getLocaleInfo } from './info';\nimport localeTerritory from './territory';\n\nimport { DAYS_OF_WEEK, DEFAULT_TERRITORY } from './constants';\nimport { errors } from '../errors';\n\nvar NoWeekData = errors.NoWeekData;\nvar NoFirstDay = errors.NoFirstDay;\n\nexport default function firstDay(locale) {\n var info = getLocaleInfo(locale);\n\n if (!isNaN(info.firstDay)) {\n return info.firstDay;\n }\n\n var weekData = cldr.supplemental.weekData;\n if (!weekData) {\n throw NoWeekData.error();\n }\n\n var firstDay = weekData.firstDay[localeTerritory(info)] || weekData.firstDay[DEFAULT_TERRITORY];\n\n if (!firstDay) {\n throw NoFirstDay.error();\n }\n\n info.firstDay = DAYS_OF_WEEK.indexOf(firstDay);\n\n return info.firstDay;\n}\n","import { cldr, getLocaleInfo } from './info';\nimport localeTerritory from './territory';\n\nimport { DAYS_OF_WEEK, DEFAULT_TERRITORY } from './constants';\nimport { errors } from '../errors';\n\nvar NoWeekData = errors.NoWeekData;\n\nexport default function weekendRange(locale) {\n var info = getLocaleInfo(locale);\n\n if (info.weekendRange) {\n return info.weekendRange;\n }\n\n var weekData = cldr.supplemental.weekData;\n if (!weekData) {\n throw NoWeekData.error();\n }\n\n var territory = localeTerritory(info);\n var start = weekData.weekendStart[territory] || weekData.weekendStart[DEFAULT_TERRITORY];\n var end = weekData.weekendEnd[territory] || weekData.weekendEnd[DEFAULT_TERRITORY];\n\n info.weekendRange = {\n start: DAYS_OF_WEEK.indexOf(start),\n end: DAYS_OF_WEEK.indexOf(end)\n };\n\n return info.weekendRange;\n}\n","export default function isNegativeZero(value) {\n return (1 / value === -Infinity);\n}\n","import { currencyDisplay, localeCurrency } from '../cldr';\n\nexport default function formatCurrencySymbol(info, options) {\n if ( options === void 0 ) options = {};\n\n if (!options.currency) {\n options.currency = localeCurrency(info, true);\n }\n\n var display = currencyDisplay(info, options);\n\n return display;\n}\n","export default function groupInteger(number, start, end, options, info) {\n var symbols = info.numbers.symbols;\n var decimalIndex = number.indexOf(symbols.decimal);\n var groupSizes = options.groupSize.slice();\n var groupSize = groupSizes.shift();\n\n var integerEnd = decimalIndex !== -1 ? decimalIndex : end + 1;\n\n var integer = number.substring(start, integerEnd);\n var result = number;\n var integerLength = integer.length;\n\n if (integerLength >= groupSize) {\n var idx = integerLength;\n var parts = [];\n\n while (idx > -1) {\n var value = integer.substring(idx - groupSize, idx);\n if (value) {\n parts.push(value);\n }\n idx -= groupSize;\n var newGroupSize = groupSizes.shift();\n groupSize = newGroupSize !== undefined ? newGroupSize : groupSize;\n\n if (groupSize === 0) {\n value = integer.substring(0, idx);\n if (value) {\n parts.push(value);\n }\n break;\n }\n }\n\n integer = parts.reverse().join(symbols.group);\n result = number.substring(0, start) + integer + number.substring(integerEnd);\n }\n\n return result;\n}","import { CURRENCY, ACCOUNTING } from '../common/constants';\n\nexport default function isCurrencyStyle(style) {\n return style === CURRENCY || style === ACCOUNTING;\n}","export default function pad(number, digits, right) {\n if ( digits === void 0 ) digits = 2;\n if ( right === void 0 ) right = false;\n\n var count = digits - String(number).length;\n var result = number;\n\n if (count > 0) {\n var padString = new Array(count + 1).join(\"0\");\n result = right ? number + padString : padString + number;\n }\n\n return result;\n}","var MAX_PRECISION = 20;\n\nexport default function round(value, precision) {\n var result = value;\n var decimals = precision || 0;\n\n result = result.toString().split('e');\n result = Math.round(Number(result[0] + 'e' + (result[1] ? (Number(result[1]) + decimals) : decimals)));\n\n result = result.toString().split('e');\n result = Number(result[0] + 'e' + (result[1] ? (Number(result[1]) - decimals) : -decimals));\n\n return result.toFixed(Math.min(decimals, MAX_PRECISION));\n}","import { PERCENT, SCIENTIFIC, NUMBER_PLACEHOLDER, CURRENCY_PLACEHOLDER, PERCENT_PLACEHOLDER, EMPTY, POINT } from '../common/constants';\nimport isNegativeZero from '../common/is-negative-zero';\nimport formatCurrencySymbol from './format-currency-symbol';\nimport groupInteger from './group-integer';\nimport isCurrencyStyle from './is-currency-style';\nimport pad from '../common/pad';\nimport round from '../common/round';\nimport { currencyFractionOptions } from '../cldr';\n\nvar DEFAULT_DECIMAL_ROUNDING = 3;\nvar DEFAULT_PERCENT_ROUNDING = 0;\n\nvar trailingZeroRegex = /0+$/;\n\nfunction fractionOptions(options) {\n var minimumFractionDigits = options.minimumFractionDigits;\n var maximumFractionDigits = options.maximumFractionDigits;\n var style = options.style;\n var isCurrency = isCurrencyStyle(style);\n var currencyFractions;\n if (isCurrency) {\n currencyFractions = currencyFractionOptions(options.currency);\n }\n\n if (minimumFractionDigits === undefined) {\n minimumFractionDigits = isCurrency ? currencyFractions.minimumFractionDigits : 0;\n }\n\n if (maximumFractionDigits === undefined) {\n if (style === PERCENT) {\n maximumFractionDigits = Math.max(minimumFractionDigits, DEFAULT_PERCENT_ROUNDING);\n } else if (isCurrency) {\n maximumFractionDigits = Math.max(minimumFractionDigits, currencyFractions.maximumFractionDigits);\n } else {\n maximumFractionDigits = Math.max(minimumFractionDigits, DEFAULT_DECIMAL_ROUNDING);\n }\n }\n\n return {\n minimumFractionDigits: minimumFractionDigits,\n maximumFractionDigits: maximumFractionDigits\n };\n}\n\nfunction applyPattern(value, pattern, symbol) {\n var result = EMPTY;\n for (var idx = 0, length = pattern.length; idx < length; idx++) {\n var ch = pattern.charAt(idx);\n\n if (ch === NUMBER_PLACEHOLDER) {\n result += value;\n } else if (ch === CURRENCY_PLACEHOLDER || ch === PERCENT_PLACEHOLDER) {\n result += symbol;\n } else {\n result += ch;\n }\n }\n return result;\n}\n\nfunction currencyUnitPattern(info, value) {\n var currencyInfo = info.numbers.currency;\n var pattern = value !== 1 ? currencyInfo[\"unitPattern-count-other\"] : currencyInfo[\"unitPattern-count-one\"];\n if (value < 0) {\n pattern = pattern.replace(NUMBER_PLACEHOLDER, (\"-\" + NUMBER_PLACEHOLDER));\n }\n\n return pattern;\n}\n\n\nexport default function standardNumberFormat(number, options, info) {\n var symbols = info.numbers.symbols;\n var style = options.style;\n var isCurrency = isCurrencyStyle(style);\n\n //return number in exponential format\n if (style === SCIENTIFIC) {\n var exponential = options.minimumFractionDigits !== undefined ? number.toExponential(options.minimumFractionDigits) : number.toExponential();\n return exponential.replace(POINT, symbols.decimal);\n }\n\n var value = number;\n var symbol;\n\n if (isCurrency) {\n options.value = value;\n symbol = formatCurrencySymbol(info, options);\n }\n\n if (style === PERCENT) {\n value *= 100;\n symbol = symbols.percentSign;\n }\n\n var ref = fractionOptions(options);\n var minimumFractionDigits = ref.minimumFractionDigits;\n var maximumFractionDigits = ref.maximumFractionDigits;\n\n value = round(value, maximumFractionDigits);\n\n var negative = value < 0;\n var negativeZero = isNegativeZero(number);\n\n var parts = value.split(POINT);\n\n var integer = parts[0];\n var fraction = pad(parts[1] ? parts[1].replace(trailingZeroRegex, EMPTY) : EMPTY, minimumFractionDigits, true);\n\n //exclude \"-\" if number is negative.\n if (negative) {\n integer = integer.substring(1);\n }\n\n if (options.minimumIntegerDigits) {\n integer = pad(integer, options.minimumIntegerDigits);\n }\n\n var formattedValue = options.useGrouping !== false ? groupInteger(integer, 0, integer.length, options, info) : integer;\n\n if (fraction) {\n formattedValue += symbols.decimal + fraction;\n }\n\n var pattern;\n\n if (isCurrency && options.currencyDisplay === \"name\") {\n pattern = currencyUnitPattern(info, number);\n } else {\n var patterns = options.patterns;\n pattern = (negative || negativeZero) ? patterns[1] || (\"-\" + patterns[0]) : patterns[0];\n }\n\n if (pattern === NUMBER_PLACEHOLDER && !negative) {\n return formattedValue;\n }\n\n var result = applyPattern(formattedValue, pattern, symbol);\n\n return result;\n}","import { PERCENT_PLACEHOLDER, CURRENCY_PLACEHOLDER, CURRENCY, PERCENT, EMPTY } from '../common/constants';\nimport formatCurrencySymbol from './format-currency-symbol';\n\nvar literalRegExp = /(\\\\.)|(['][^']*[']?)|([\"][^\"]*[\"]?)/g;\nvar PLACEHOLDER = \"__??__\";\n\nexport function setStyleOptions(formatOptions, info) {\n var format = formatOptions.format;\n\n //multiply number if the format has percent\n if (format.indexOf(PERCENT_PLACEHOLDER) !== -1) {\n formatOptions.style = PERCENT;\n formatOptions.symbol = info.numbers.symbols.percentSign;\n formatOptions.number *= 100;\n }\n\n if (format.indexOf(CURRENCY_PLACEHOLDER) !== -1) {\n formatOptions.style = CURRENCY;\n formatOptions.symbol = formatCurrencySymbol(info);\n }\n}\n\nexport function setFormatLiterals(formatOptions) {\n var format = formatOptions.format;\n if (format.indexOf(\"'\") > -1 || format.indexOf(\"\\\"\") > -1 || format.indexOf(\"\\\\\") > -1) {\n var literals = formatOptions.literals = [];\n formatOptions.format = format.replace(literalRegExp, function(match) {\n var quoteChar = match.charAt(0).replace(\"\\\\\", EMPTY);\n var literal = match.slice(1).replace(quoteChar, EMPTY);\n\n literals.push(literal);\n\n return PLACEHOLDER;\n });\n }\n}\n\nexport function replaceLiterals(number, literals) {\n var result = number;\n if (literals) {\n var length = literals.length;\n for (var idx = 0; idx < length; idx++) {\n result = result.replace(PLACEHOLDER, literals[idx]);\n }\n }\n return result;\n}","import { CURRENCY, PERCENT, LIST_SEPARATOR, GROUP_SEPARATOR, CURRENCY_PLACEHOLDER, PERCENT_PLACEHOLDER, POINT, EMPTY } from '../common/constants';\nimport isNegativeZero from '../common/is-negative-zero';\nimport groupInteger from './group-integer';\nimport round from '../common/round';\nimport { setStyleOptions, setFormatLiterals, replaceLiterals } from './utils';\n\nvar SHARP = \"#\";\nvar ZERO = \"0\";\n\nvar trailingZerosRegExp = /(\\.(?:[0-9]*[1-9])?)0+$/g;\nvar trailingPointRegExp = /\\.$/;\nvar commaRegExp = /,/g;\n\nfunction trimTrailingZeros(value, lastZero) {\n var trimRegex;\n\n if (lastZero === 0) {\n trimRegex = trailingZerosRegExp;\n } else {\n trimRegex = new RegExp((\"(\\\\.[0-9]{\" + lastZero + \"}[1-9]*)0+$\"), 'g');\n }\n\n return value.replace(trimRegex, '$1').replace(trailingPointRegExp, EMPTY);\n}\n\nfunction roundNumber(formatOptions) {\n var number = formatOptions.number;\n var format = formatOptions.format;\n var decimalIndex = format.indexOf(POINT);\n\n if (decimalIndex !== -1) {\n var zeroIndex = format.lastIndexOf(ZERO) - decimalIndex;\n var sharpIndex = format.lastIndexOf(SHARP) - decimalIndex;\n var hasZero = zeroIndex > -1;\n var hasSharp = sharpIndex > -1;\n var fraction = number.toString().split(\"e\");\n\n if (fraction[1]) {\n fraction = round(number, Math.abs(fraction[1]));\n } else {\n fraction = fraction[0];\n }\n fraction = fraction.split(POINT)[1] || EMPTY;\n\n var precision = fraction.length;\n var trailingZeros = -1;\n\n if (!hasZero && !hasSharp) {\n formatOptions.format = format.substring(0, decimalIndex) + format.substring(decimalIndex + 1);\n decimalIndex = -1;\n precision = 0;\n } else if (hasZero && zeroIndex > sharpIndex) {\n precision = zeroIndex;\n } else if (sharpIndex > zeroIndex) {\n if (hasSharp && precision > sharpIndex) {\n precision = sharpIndex;\n } else if (hasZero && precision < zeroIndex) {\n precision = zeroIndex;\n }\n\n trailingZeros = hasZero ? zeroIndex : 0;\n }\n\n if (precision > -1) {\n number = round(number, precision);\n if (trailingZeros > -1) {\n number = trimTrailingZeros(number, trailingZeros);\n }\n }\n } else {\n number = round(number);\n }\n\n if (formatOptions.negative && (number * -1) >= 0 && !formatOptions.negativeZero) {\n formatOptions.negative = false;\n }\n\n formatOptions.number = number;\n formatOptions.decimalIndex = decimalIndex;\n}\n\nfunction isConstantFormat(format) {\n return format.indexOf(SHARP) === -1 && format.indexOf(ZERO) === -1;\n}\n\nfunction setValueSpecificFormat(formatOptions) {\n var number = formatOptions.number;\n var format = formatOptions.format;\n format = format.split(LIST_SEPARATOR);\n if ((formatOptions.negative || formatOptions.negativeZero) && format[1]) {\n format = format[1];\n formatOptions.hasNegativeFormat = true;\n } else if (number === 0) {\n var zeroFormat = format[2];\n format = zeroFormat || format[0];\n if (zeroFormat && isConstantFormat(zeroFormat)) {\n formatOptions.constant = zeroFormat;\n }\n } else {\n format = format[0];\n }\n\n formatOptions.format = format;\n}\n\nfunction setGroupOptions(formatOptions) {\n formatOptions.hasGroup = formatOptions.format.indexOf(GROUP_SEPARATOR) > -1;\n if (formatOptions.hasGroup) {\n formatOptions.format = formatOptions.format.replace(commaRegExp, EMPTY);\n }\n}\n\nfunction placeholderIndex(index1, index2, start) {\n var index;\n if (index1 === -1 && index2 !== -1) {\n index = index2;\n } else if (index1 !== -1 && index2 === -1) {\n index = index1;\n } else {\n index = start ? Math.min(index1, index2) : Math.max(index1, index2);\n }\n return index;\n}\n\nfunction setPlaceholderIndices(formatOptions) {\n var format = formatOptions.format;\n var sharpIndex = format.indexOf(SHARP);\n var zeroIndex = format.indexOf(ZERO);\n\n var start = placeholderIndex(sharpIndex, zeroIndex, true);\n\n sharpIndex = format.lastIndexOf(SHARP);\n zeroIndex = format.lastIndexOf(ZERO);\n\n var end = placeholderIndex(sharpIndex, zeroIndex);\n\n if (start === format.length) {\n end = start;\n }\n\n formatOptions.start = start;\n formatOptions.end = end;\n formatOptions.lastZeroIndex = zeroIndex;\n}\n\nfunction replaceStyleSymbols(number, style, symbol) {\n var result = number;\n if (style === CURRENCY || style === PERCENT) {\n result = EMPTY;\n for (var idx = 0, length = number.length; idx < length; idx++) {\n var ch = number.charAt(idx);\n result += (ch === CURRENCY_PLACEHOLDER || ch === PERCENT_PLACEHOLDER) ? symbol : ch;\n }\n }\n return result;\n}\n\nfunction replacePlaceHolders(formatOptions, info) {\n var start = formatOptions.start;\n var end = formatOptions.end;\n var negative = formatOptions.negative;\n var negativeZero = formatOptions.negativeZero;\n var format = formatOptions.format;\n var decimalIndex = formatOptions.decimalIndex;\n var lastZeroIndex = formatOptions.lastZeroIndex;\n var hasNegativeFormat = formatOptions.hasNegativeFormat;\n var hasGroup = formatOptions.hasGroup;\n var number = formatOptions.number;\n var value = number.toString().split(POINT);\n var length = format.length;\n var integer = value[0];\n var fraction = value[1] || EMPTY;\n var integerLength = integer.length;\n var replacement = EMPTY;\n\n number = format.substring(0, start);\n\n if ((negative || negativeZero) && !hasNegativeFormat) {\n number += \"-\";\n }\n\n for (var idx = start; idx < length; idx++) {\n var ch = format.charAt(idx);\n\n if (decimalIndex === -1) {\n if (end - idx < integerLength) {\n\n number += integer;\n break;\n }\n } else {\n if (lastZeroIndex !== -1 && lastZeroIndex < idx) {\n replacement = EMPTY;\n }\n\n if ((decimalIndex - idx) <= integerLength && decimalIndex - idx > -1) {\n number += integer;\n idx = decimalIndex;\n }\n\n if (decimalIndex === idx) {\n number += (fraction ? info.numbers.symbols.decimal : EMPTY) + fraction;\n idx += end - decimalIndex + 1;\n continue;\n }\n }\n\n if (ch === ZERO) {\n number += ch;\n replacement = ch;\n } else if (ch === SHARP) {\n number += replacement;\n }\n }\n\n if (hasGroup) {\n number = groupInteger(number, start + (negative && !hasNegativeFormat ? 1 : 0), Math.max(end, (integerLength + start)), info.numbers.decimal, info);\n }\n\n if (end >= start) {\n number += format.substring(end + 1);\n }\n\n return number;\n}\n\nfunction applyCustomFormat(formatOptions, info) {\n var number = formatOptions.number;\n if (formatOptions.start !== -1) {\n number = replacePlaceHolders(formatOptions, info);\n number = replaceStyleSymbols(number, formatOptions.style, formatOptions.symbol);\n number = replaceLiterals(number, formatOptions.literals);\n }\n\n return number;\n}\n\nexport default function customNumberFormat(number, format, info) {\n var formatOptions = {\n negative: number < 0,\n number: Math.abs(number),\n negativeZero: isNegativeZero(number),\n format: format\n };\n\n setValueSpecificFormat(formatOptions);\n\n if (formatOptions.constant) {\n return formatOptions.constant;\n }\n\n setFormatLiterals(formatOptions);\n setStyleOptions(formatOptions, info);\n setGroupOptions(formatOptions);\n roundNumber(formatOptions);\n setPlaceholderIndices(formatOptions);\n\n return applyCustomFormat(formatOptions, info);\n}","import { CURRENCY, ACCOUNTING, DECIMAL, PERCENT, SCIENTIFIC } from '../common/constants';\nimport isString from '../common/is-string';\n\nvar standardFormatRegExp = /^(n|c|p|e|a)(\\d*)$/i;\n\nfunction standardFormatOptions(format) {\n var formatAndPrecision = standardFormatRegExp.exec(format);\n\n if (formatAndPrecision) {\n var options = {\n style: DECIMAL\n };\n\n var style = formatAndPrecision[1].toLowerCase();\n\n if (style === \"c\") {\n options.style = CURRENCY;\n } else if (style === \"a\") {\n options.style = ACCOUNTING;\n } else if (style === \"p\") {\n options.style = PERCENT;\n } else if (style === \"e\") {\n options.style = SCIENTIFIC;\n }\n\n if (formatAndPrecision[2]) {\n options.minimumFractionDigits = options.maximumFractionDigits = parseInt(formatAndPrecision[2], 10);\n }\n\n return options;\n }\n}\n\nexport default function formatOptions(format) {\n var options;\n if (isString(format)) {\n options = standardFormatOptions(format);\n } else {\n options = format;\n }\n\n return options;\n}","import { localeInfo } from '../cldr';\nimport { DECIMAL, DEFAULT_LOCALE, NUMBER_PLACEHOLDER, EMPTY } from '../common/constants';\nimport standardNumberFormat from './standard-number-format';\nimport customNumberFormat from './custom-number-format';\nimport formatOptions from './format-options';\n\nexport default function formatNumber(number, format, locale) {\n if ( format === void 0 ) format = NUMBER_PLACEHOLDER;\n if ( locale === void 0 ) locale = DEFAULT_LOCALE;\n\n if (number === undefined || number === null) {\n return EMPTY;\n }\n\n if (!isFinite(number)) {\n return String(number);\n }\n\n var info = localeInfo(locale);\n var options = formatOptions(format);\n\n var result;\n if (options) {\n var style = options.style || DECIMAL;\n result = standardNumberFormat(number, Object.assign({}, info.numbers[style], options), info);\n } else {\n result = customNumberFormat(number, format, info);\n }\n\n return result;\n}\n","export default function isNumber(value) {\n return typeof value === \"number\";\n}","import { localeInfo, localeCurrency, currencyDisplays } from '../cldr';\nimport { PERCENT, NUMBER_PLACEHOLDER, CURRENCY_PLACEHOLDER, DEFAULT_LOCALE, EMPTY, POINT } from '../common/constants';\nimport { setStyleOptions, setFormatLiterals } from './utils';\nimport isNumber from '../common/is-number';\nimport isCurrencyStyle from './is-currency-style';\nimport formatOptions from './format-options';\nimport isString from '../common/is-string';\n\nvar exponentRegExp = /[eE][-+]?[0-9]+/;\nvar nonBreakingSpaceRegExp = /\\u00A0/g;\n\nfunction cleanNegativePattern(number, patterns) {\n if (patterns.length > 1) {\n var parts = (patterns[1] || EMPTY).replace(CURRENCY_PLACEHOLDER, EMPTY).split(NUMBER_PLACEHOLDER);\n if (number.indexOf(parts[0]) > -1 && number.indexOf(parts[1]) > -1) {\n return number.replace(parts[0], EMPTY).replace(parts[1], EMPTY);\n }\n }\n}\n\nfunction cleanCurrencyNumber(value, info, format) {\n var options = formatOptions(format) || {};\n var isCurrency = isCurrencyStyle(options.style);\n var number = value;\n var negative;\n\n var currency = options.currency || localeCurrency(info, isCurrency);\n\n if (currency) {\n var displays = currencyDisplays(info, currency, isCurrency);\n if (displays) {\n for (var idx = 0; idx < displays.length; idx++) {\n var display = displays[idx];\n if (number.includes(display)) {\n number = number.replace(display, EMPTY);\n isCurrency = true;\n break;\n }\n }\n }\n\n if (isCurrency) {\n var cleanNumber = cleanNegativePattern(number, info.numbers.currency.patterns) ||\n cleanNegativePattern(number, info.numbers.accounting.patterns);\n\n if (cleanNumber) {\n negative = true;\n number = cleanNumber;\n }\n\n }\n }\n\n return {\n number: number,\n negative: negative\n };\n}\n\nfunction cleanLiterals(number, formatOptions) {\n var literals = formatOptions.literals;\n var result = number;\n\n if (literals) {\n for (var idx = 0; idx < literals.length; idx++) {\n result = result.replace(literals[idx], EMPTY);\n }\n }\n\n return result;\n}\n\nfunction divideBy100(number) {\n var strNumber = String(number);\n var pointIndex = strNumber.indexOf(POINT);\n var zeroesCount = 2;\n var result = number / Math.pow(10, zeroesCount);\n\n if (pointIndex === -1 || String(result).length <= strNumber.length + zeroesCount) {\n return result;\n }\n\n var fractionDigits = strNumber.length - pointIndex + 1 + zeroesCount;\n return parseFloat(result.toFixed(fractionDigits));\n}\n\nexport default function parseNumber(value, locale, format) {\n if ( locale === void 0 ) locale = DEFAULT_LOCALE;\n if ( format === void 0 ) format = {};\n\n if (!value && value !== 0) {\n return null;\n }\n\n if (isNumber(value)) {\n return value;\n }\n\n var info = localeInfo(locale);\n var symbols = info.numbers.symbols;\n\n var number = value.toString();\n var formatOptions = format || {};\n var isPercent;\n\n if (isString(format)) {\n formatOptions = { format: format };\n setFormatLiterals(formatOptions);\n number = cleanLiterals(number, formatOptions);\n\n setStyleOptions(formatOptions, info);\n }\n\n if (formatOptions.style === PERCENT || number.indexOf(symbols.percentSign) > -1) {\n number = number.replace(symbols.percentSign, EMPTY);\n isPercent = true;\n }\n\n if (exponentRegExp.test(number)) {\n number = parseFloat(number.replace(symbols.decimal, POINT));\n return isNaN(number) ? null : number;\n }\n\n var ref = cleanCurrencyNumber(number, info, formatOptions);\n var negativeCurrency = ref.negative;\n var currencyNumber = ref.number;\n number = String(currencyNumber).trim();\n\n var negativeSignIndex = number.indexOf(\"-\");\n if (negativeSignIndex > 0) {\n return null;\n }\n\n var isNegative = negativeSignIndex > -1;\n\n isNegative = negativeCurrency !== undefined ? negativeCurrency : isNegative;\n\n number = number.replace(\"-\", EMPTY)\n .replace(nonBreakingSpaceRegExp, \" \")\n .split(symbols.group.replace(nonBreakingSpaceRegExp, \" \")).join(EMPTY)\n .replace(symbols.decimal, POINT);\n\n number = parseFloat(number);\n\n if (isNaN(number)) {\n number = null;\n } else if (isNegative) {\n number *= -1;\n }\n\n if (number && isPercent) {\n number = divideBy100(number);\n }\n\n return number;\n}\n","var formatRegExp = /\\{(\\d+)}/g;\n\nexport default function formatString(format) {\n var values = arguments;\n\n return format.replace(formatRegExp, function (match, index) {\n var value = values[parseInt(index, 10) + 1];\n\n return value;\n });\n}","import formatString from '../common/format-string';\nimport isString from '../common/is-string';\nimport { EMPTY } from '../common/constants';\n\nvar REMOVAL_PENALTY = 120;\nvar ADDITION_PENALTY = 20;\nvar LENGHT_DELTA = [ 2, 1, 5, 3, 4 ];\nvar LONG_LESS_PENALTY_DELTA = -2;\nvar SHORT_LESS_PENALTY_DELTA = -1;\nvar SHORT_MORE_PENALTY_DELTA = 1;\nvar LONG_MORE_PENALTY_DELTA = 2;\n\nvar PENALTIES = {};\nPENALTIES[LONG_LESS_PENALTY_DELTA.toString()] = 8;\nPENALTIES[SHORT_LESS_PENALTY_DELTA.toString()] = 6;\nPENALTIES[LONG_MORE_PENALTY_DELTA.toString()] = 6;\nPENALTIES[SHORT_MORE_PENALTY_DELTA.toString()] = 3;\n\nvar VALUE_FORMAT_LENGTH = {\n numeric: 1,\n \"2-digit\": 2,\n short: 3,\n long: 4,\n narrow: 5\n};\n\nvar TIME_SPECIFIERS_REGEX = /[hHmsSzZoOvVxX]/;\n\nfunction getHourSpecifier(options) {\n return options.hour12 ? \"h\" : \"H\";\n}\n\nvar DATE_OPTIONS_MAP = [ {\n key: \"era\",\n specifier: \"G\"\n}, {\n key: \"year\",\n specifier: \"y\"\n}, {\n key: \"month\",\n specifier: \"M\"\n}, {\n key: \"day\",\n specifier: \"d\"\n}, {\n key: \"weekday\",\n specifier: \"E\"\n}, {\n key: \"hour\",\n getSpecifier: getHourSpecifier\n}, {\n key: \"minute\",\n specifier: \"m\"\n}, {\n key: \"second\",\n specifier: \"s\"\n}, {\n key: \"timeZoneName\",\n specifier: \"z\"\n} ];\n\nvar STAND_ALONE_SPECIFIERS = {\n e: 'c',\n E: 'c',\n M: 'L',\n Q: 'q'\n};\n\nvar specifiersRegex = {};\nvar resolvedFormats = {};\n\nfunction getSpecifierRegex(specifier) {\n if (!specifiersRegex[specifier]) {\n specifiersRegex[specifier] = new RegExp(specifier + \"+\");\n }\n return specifiersRegex[specifier];\n}\n\nfunction skeletonSpecifiers(skeleton) {\n var result = [];\n var current = skeleton.charAt(0);\n var specifier = current;\n for (var idx = 1; idx < skeleton.length; idx++) {\n var character = skeleton.charAt(idx);\n if (character === specifier) {\n current += character;\n } else {\n result.push(current);\n current = specifier = character;\n }\n }\n\n result.push(current);\n\n return result;\n}\n\nfunction findBestMatch(specifiers, availableFormats) {\n var specifiersLength = specifiers.length;\n var maxScore = -Number.MAX_VALUE;\n var bestMatches, result;\n for (var format in availableFormats) {\n var matches = [];\n var currentFormat = format.replace(\"v\", \"z\");\n var score = 0;\n for (var idx = 0; idx < specifiersLength; idx++) {\n var specifier = specifiers[idx];\n var specifierRegex = getSpecifierRegex(specifier[0]);\n var match = (specifierRegex.exec(currentFormat) || [])[0];\n\n if (!match) {\n score -= REMOVAL_PENALTY;\n } else {\n currentFormat = currentFormat.replace(match, EMPTY);\n if (match.length !== specifier.length) {\n var delta = Math.max(Math.min(LENGHT_DELTA[match.length] - LENGHT_DELTA[specifier.length], 2), -2);\n score -= PENALTIES[delta];\n }\n }\n\n matches.push(match);\n\n if (score < maxScore) {\n break;\n }\n }\n\n if (currentFormat.length) {\n score -= skeletonSpecifiers(currentFormat).length * ADDITION_PENALTY;\n }\n\n if (score > maxScore) {\n maxScore = score;\n bestMatches = matches;\n result = availableFormats[format];\n }\n }\n\n result = result.replace(\"v\", \"z\");\n\n for (var idx$1 = 0; idx$1 < specifiersLength; idx$1++) {\n var bestMatch = bestMatches[idx$1];\n if (bestMatch && bestMatch !== specifiers[idx$1]) {\n var matchSpecifier = bestMatches[idx$1][0];\n result = result.replace(getSpecifierRegex(matchSpecifier), specifiers[idx$1]);\n if (STAND_ALONE_SPECIFIERS[matchSpecifier]) {\n result = result.replace(getSpecifierRegex(STAND_ALONE_SPECIFIERS[matchSpecifier]), specifiers[idx$1]);\n }\n }\n }\n\n return result;\n}\n\nfunction cacheFormat(skeleton, format, locale) {\n if (!resolvedFormats[locale]) {\n resolvedFormats[locale] = {};\n }\n resolvedFormats[locale][skeleton] = format;\n}\n\n\nfunction skeletonFormat(skeleton, info) {\n var availableFormats = info.calendar.dateTimeFormats.availableFormats;\n if (availableFormats[skeleton]) {\n return availableFormats[skeleton];\n }\n if (resolvedFormats[info.name] && resolvedFormats[info.name][skeleton]) {\n return resolvedFormats[info.name][skeleton];\n }\n var timeStartIndex = skeleton.search(TIME_SPECIFIERS_REGEX);\n var result;\n if (timeStartIndex > 0) {\n var dateSkeleton = skeleton.substr(0, timeStartIndex);\n var timeSkeleton = skeleton.substr(timeStartIndex);\n\n result = formatString(info.calendar.dateTimeFormats.short, //should be deterimed based on specifiers\n availableFormats[timeSkeleton] || findBestMatch(skeletonSpecifiers(timeSkeleton), availableFormats),\n availableFormats[dateSkeleton] || findBestMatch(skeletonSpecifiers(dateSkeleton), availableFormats));\n } else {\n result = findBestMatch(skeletonSpecifiers(skeleton), availableFormats);\n }\n\n cacheFormat(skeleton, result, info.name);\n return result;\n}\n\nfunction skeletonFromOptions(options) {\n var result = [];\n for (var idx = 0; idx < DATE_OPTIONS_MAP.length; idx++) {\n var option = DATE_OPTIONS_MAP[idx];\n var field = option.key;\n var value = options[field];\n if (value) {\n var spcifier = option.specifier || option.getSpecifier(options);\n result.push(spcifier.repeat(VALUE_FORMAT_LENGTH[value]));\n }\n }\n\n return result.join(EMPTY);\n}\n\nexport default function datePattern(format, info) {\n var calendar = info.calendar;\n var result;\n if (isString(format)) {\n if (calendar.patterns[format]) {\n result = calendar.patterns[format];\n } else {\n result = format;\n }\n } else if (format) {\n if (format.pattern) {\n return format.pattern;\n }\n\n var skeleton = format.skeleton;\n if (!skeleton) {\n if (format.datetime) {\n result = formatString(calendar.dateTimeFormats[format.datetime], calendar.timeFormats[format.datetime], calendar.dateFormats[format.datetime]);\n } else if (format.date) {\n result = calendar.dateFormats[format.date];\n } else if (format.time) {\n result = calendar.timeFormats[format.time];\n } else {\n skeleton = skeletonFromOptions(format);\n }\n }\n\n if (skeleton) {\n result = skeletonFormat(skeleton, info);\n }\n }\n\n if (!result) {\n result = calendar.patterns.d;\n }\n\n return result;\n}\n","export default function dateNameType(formatLength) {\n var nameType;\n if (formatLength <= 3) {\n nameType = \"abbreviated\";\n } else if (formatLength === 4) {\n nameType = \"wide\";\n } else if (formatLength === 5) {\n nameType = \"narrow\";\n } else if (formatLength === 6) {\n nameType = \"short\";\n }\n\n return nameType;\n}","import dateFormatNames from '../cldr/date-format-names';\nimport dateNameType from './date-name-type';\n\nexport default function formatNames(locale, type, formatLength, standAlone, lower) {\n return dateFormatNames(locale, {\n type: type,\n nameType: dateNameType(formatLength),\n standAlone: standAlone,\n lower: lower\n });\n}","function isFunction(fun) {\n return typeof(fun) === 'function';\n}\n\nexport default function isDate(value) {\n return Boolean(value) && isFunction(value.getTime) && isFunction(value.getMonth);\n}\n","var MONTH = 'month';\nvar HOUR = 'hour';\nvar ZONE = 'zone';\nvar WEEKDAY = 'weekday';\nvar QUARTER = 'quarter';\n\nvar DATE_FIELD_MAP = {\n 'G': 'era',\n 'y': 'year',\n 'q': QUARTER,\n 'Q': QUARTER,\n 'M': MONTH,\n 'L': MONTH,\n 'd': 'day',\n 'E': WEEKDAY,\n 'c': WEEKDAY,\n 'e': WEEKDAY,\n 'h': HOUR,\n 'H': HOUR,\n 'k': HOUR,\n 'K': HOUR,\n 'm': 'minute',\n 's': 'second',\n 'S': 'millisecond',\n 'a': 'dayperiod',\n 'x': ZONE,\n 'X': ZONE,\n 'z': ZONE,\n 'Z': ZONE\n};\n\nvar dateFormatRegExp = /d{1,2}|E{1,6}|e{1,6}|c{3,6}|c{1}|M{1,5}|L{1,5}|y{1,4}|H{1,2}|h{1,2}|k{1,2}|K{1,2}|m{1,2}|a{1,5}|s{1,2}|S{1,3}|z{1,4}|Z{1,5}|x{1,5}|X{1,5}|G{1,5}|q{1,5}|Q{1,5}|\"[^\"]*\"|'[^']*'/g;\n\nexport { dateFormatRegExp, DATE_FIELD_MAP };","import { localeInfo, firstDay } from '../cldr';\nimport { DEFAULT_LOCALE, EMPTY } from '../common/constants';\nimport formatString from '../common/format-string';\nimport datePattern from './date-pattern';\nimport formatNames from './format-names';\nimport pad from '../common/pad';\nimport isDate from '../common/is-date';\nimport { dateFormatRegExp } from './constants';\n\nfunction formatDayOfWeekIndex(day, formatLength, localeInfo) {\n var firstDayIndex = firstDay(localeInfo);\n var dayIndex;\n if (day < firstDayIndex) {\n dayIndex = 7 - firstDayIndex + day;\n } else {\n dayIndex = day - firstDayIndex;\n }\n\n return dayIndex + 1;\n}\n\nfunction formatMonth(month, formatLength, info, standAlone) {\n if (formatLength <= 2) {\n return pad(month + 1, formatLength);\n }\n return formatNames(info, \"months\", formatLength, standAlone)[month];\n}\n\nfunction formatQuarter(date, formatLength, info, standAlone) {\n var quarter = Math.floor(date.getMonth() / 3);\n if (formatLength < 3) {\n return quarter + 1;\n }\n\n return formatNames(info, \"quarters\", formatLength, standAlone)[quarter];\n}\n\n\nfunction formatTimeZone(date, info, options) {\n var shortHours = options.shortHours;\n var optionalMinutes = options.optionalMinutes;\n var separator = options.separator;\n var localizedName = options.localizedName;\n var zZeroOffset = options.zZeroOffset;\n var offset = date.getTimezoneOffset() / 60;\n if (offset === 0 && zZeroOffset) {\n return \"Z\";\n }\n var sign = offset <= 0 ? \"+\" : \"-\";\n var hoursMinutes = Math.abs(offset).toString().split(\".\");\n var minutes = hoursMinutes[1] || 0;\n var result = sign + (shortHours ? hoursMinutes[0] : pad(hoursMinutes[0], 2));\n if (minutes || !optionalMinutes) {\n result += (separator ? \":\" : EMPTY) + pad(minutes, 2);\n }\n\n if (localizedName) {\n var localizedFormat = offset === 0 ? info.calendar.gmtZeroFormat : info.calendar.gmtFormat;\n result = formatString(localizedFormat, result);\n }\n\n return result;\n}\n\nfunction formatDayOfWeek(date, formatLength, info, standAlone) {\n var result;\n if (formatLength < 3) {\n result = formatDayOfWeekIndex(date.getDay(), formatLength, info);\n } else {\n result = formatNames(info, \"days\", formatLength, standAlone)[date.getDay()];\n }\n return result;\n}\n\nvar formatters = {};\n\nformatters.d = function(date, formatLength) {\n return pad(date.getDate(), formatLength);\n};\n\nformatters.E = function(date, formatLength, info) {\n return formatNames(info, \"days\", formatLength)[date.getDay()];\n};\n\nformatters.M = function(date, formatLength, info) {\n return formatMonth(date.getMonth(), formatLength, info, false);\n};\n\nformatters.L = function(date, formatLength, info) {\n return formatMonth(date.getMonth(), formatLength, info, true);\n};\n\nformatters.y = function(date, formatLength) {\n var year = date.getFullYear();\n if (formatLength === 2) {\n year = year % 100;\n }\n return pad(year, formatLength);\n};\n\nformatters.h = function(date, formatLength) {\n var hours = date.getHours() % 12 || 12;\n return pad(hours, formatLength);\n};\n\nformatters.H = function(date, formatLength) {\n return pad(date.getHours(), formatLength);\n};\n\nformatters.k = function(date, formatLength) {\n return pad(date.getHours() || 24, formatLength);\n};\n\nformatters.K = function(date, formatLength) {\n return pad(date.getHours() % 12, formatLength);\n};\n\nformatters.m = function(date, formatLength) {\n return pad(date.getMinutes(), formatLength);\n};\n\nformatters.s = function(date, formatLength) {\n return pad(date.getSeconds(), formatLength);\n};\n\nformatters.S = function(date, formatLength) {\n var milliseconds = date.getMilliseconds();\n var result;\n if (milliseconds !== 0) {\n result = pad(String(milliseconds / 1000).split(\".\")[1].substr(0, formatLength), formatLength, true);\n } else {\n result = pad(EMPTY, formatLength);\n }\n return result;\n};\n\nformatters.a = function(date, formatLength, info) {\n return formatNames(info, \"dayPeriods\", formatLength)[date.getHours() < 12 ? \"am\" : \"pm\"];\n};\n\nformatters.z = function(date, formatLength, info) {\n return formatTimeZone(date, info, {\n shortHours: formatLength < 4,\n optionalMinutes: formatLength < 4,\n separator: true,\n localizedName: true\n });\n};\n\nformatters.Z = function(date, formatLength, info) {\n return formatTimeZone(date, info, {\n separator: formatLength > 3,\n localizedName: formatLength === 4,\n zZeroOffset: formatLength === 5\n });\n};\n\nformatters.x = function(date, formatLength, info) {\n return formatTimeZone(date, info, {\n optionalMinutes: formatLength === 1,\n separator: formatLength === 3 || formatLength === 5\n });\n};\n\nformatters.X = function(date, formatLength, info) {\n return formatTimeZone(date, info, {\n optionalMinutes: formatLength === 1,\n separator: formatLength === 3 || formatLength === 5,\n zZeroOffset: true\n });\n};\n\nformatters.G = function(date, formatLength, info) {\n var era = date.getFullYear() >= 0 ? 1 : 0;\n return formatNames(info, \"eras\", formatLength)[era];\n};\n\nformatters.e = formatDayOfWeek;\n\nformatters.c = function(date, formatLength, info) {\n return formatDayOfWeek(date, formatLength, info, true);\n};\n\nformatters.q = function(date, formatLength, info) {\n return formatQuarter(date, formatLength, info, true);\n};\n\nformatters.Q = formatQuarter;\n\nexport default function formatDate(date, format, locale) {\n if ( locale === void 0 ) locale = DEFAULT_LOCALE;\n\n if (!isDate(date)) {\n if (date === undefined || date === null) {\n return EMPTY;\n }\n return date;\n }\n\n var info = localeInfo(locale);\n var pattern = datePattern(format, info);\n\n return pattern.replace(dateFormatRegExp, function(match) {\n var formatLength = match.length;\n var result;\n\n if (match.includes(\"'\") || match.includes(\"\\\"\")) {\n result = match.slice(1, formatLength - 1);\n } else {\n result = formatters[match[0]](date, formatLength, info);\n }\n\n return result;\n });\n}\n","export function convertTimeZone(date, fromOffset, toOffset) {\n var fromLocalOffset = date.getTimezoneOffset();\n\n var offsetDate = new Date(date.getTime() + (fromOffset - toOffset) * 60000);\n\n var toLocalOffset = offsetDate.getTimezoneOffset();\n\n return new Date(offsetDate.getTime() + (toLocalOffset - fromLocalOffset) * 60000);\n}\n\nexport function adjustDST(date, hours) {\n if (!hours && date.getHours() === 23) {\n date.setHours(date.getHours() + 2);\n }\n}","import { adjustDST, convertTimeZone } from './time-utils';\nimport { localeInfo } from '../cldr';\nimport { DEFAULT_LOCALE, EMPTY } from '../common/constants';\nimport { errors } from '../errors';\nimport formatNames from './format-names';\nimport datePattern from './date-pattern';\nimport round from '../common/round';\nimport isDate from '../common/is-date';\n\nvar timeZoneOffsetRegExp = /([+|-]\\d{1,2})(:?)(\\d{2})?/;\nvar dateRegExp = /^\\/Date\\((.*?)\\)\\/$/;\nvar offsetRegExp = /[+-]\\d*/;\nvar numberRegExp = {\n 2: /^\\d{1,2}/,\n 3: /^\\d{1,3}/,\n 4: /^\\d{4}/\n};\nvar numberRegex = /\\d+/;\nvar PLACEHOLDER = \"{0}\";\n\nvar leadingSpacesRegex = /^ */;\nvar trailingSpacesRegex = / *$/;\n\nvar standardDateFormats = [\n \"yyyy/MM/dd HH:mm:ss\",\n \"yyyy/MM/dd HH:mm\",\n \"yyyy/MM/dd\",\n \"E MMM dd yyyy HH:mm:ss\",\n \"yyyy-MM-ddTHH:mm:ss.SSSSSSSXXX\",\n \"yyyy-MM-ddTHH:mm:ss.SSSXXX\",\n \"yyyy-MM-ddTHH:mm:ss.SSXXX\",\n \"yyyy-MM-ddTHH:mm:ssXXX\",\n \"yyyy-MM-ddTHH:mm:ss.SSSSSSS\",\n \"yyyy-MM-ddTHH:mm:ss.SSS\",\n \"yyyy-MM-ddTHH:mmXXX\",\n \"yyyy-MM-ddTHH:mmX\",\n \"yyyy-MM-ddTHH:mm:ss\",\n \"yyyy-MM-ddTHH:mm\",\n \"yyyy-MM-dd HH:mm:ss\",\n \"yyyy-MM-dd HH:mm\",\n \"yyyy-MM-dd\",\n \"HH:mm:ss\",\n \"HH:mm\"\n];\nvar FORMATS_SEQUENCE = [ \"G\", \"g\", \"F\", \"Y\", \"y\", \"M\", \"m\", \"D\", \"d\", \"y\", \"T\", \"t\" ];\nvar TWO_DIGIT_YEAR_MAX = 2029;\n\nfunction outOfRange(value, start, end) {\n return !(value >= start && value <= end);\n}\n\nfunction lookAhead(match, state) {\n var format = state.format;\n var idx = state.idx;\n var i = 0;\n while (format[idx] === match) {\n i++;\n idx++;\n }\n if (i > 0) {\n idx -= 1;\n }\n state.idx = idx;\n return i;\n}\n\nfunction getNumber(size, state) {\n var regex = size ? (numberRegExp[size] || new RegExp('^\\\\d{1,' + size + '}')) : numberRegex,\n match = state.value.substr(state.valueIdx, size).match(regex);\n\n if (match) {\n match = match[0];\n state.valueIdx += match.length;\n return parseInt(match, 10);\n }\n return null;\n}\n\nfunction getIndexByName(names, state, lower) {\n var i = 0,\n length = names.length,\n name, nameLength,\n matchLength = 0,\n matchIdx = 0,\n subValue;\n\n for (; i < length; i++) {\n name = names[i];\n nameLength = name.length;\n subValue = state.value.substr(state.valueIdx, nameLength);\n\n if (lower) {\n subValue = subValue.toLowerCase();\n }\n\n if (subValue === name && nameLength > matchLength) {\n matchLength = nameLength;\n matchIdx = i;\n }\n }\n\n if (matchLength) {\n state.valueIdx += matchLength;\n return matchIdx + 1;\n }\n\n return null;\n}\n\nfunction checkLiteral(state) {\n var result = false;\n if (state.value.charAt(state.valueIdx) === state.format[state.idx]) {\n state.valueIdx++;\n result = true;\n }\n return result;\n}\n\nfunction calendarGmtFormats(calendar) {\n var gmtFormat = calendar.gmtFormat;\n var gmtZeroFormat = calendar.gmtZeroFormat;\n if (!gmtFormat) {\n throw errors.NoGMTInfo.error();\n }\n\n return [ gmtFormat.replace(PLACEHOLDER, EMPTY).toLowerCase(), gmtZeroFormat.replace(PLACEHOLDER, EMPTY).toLowerCase() ];\n}\n\nfunction parseTimeZoneOffset(state, info, options) {\n var shortHours = options.shortHours;\n var noSeparator = options.noSeparator;\n var optionalMinutes = options.optionalMinutes;\n var localizedName = options.localizedName;\n var zLiteral = options.zLiteral;\n state.UTC = true;\n\n if (zLiteral && state.value.charAt(state.valueIdx) === \"Z\") {\n state.valueIdx++;\n return false;\n }\n\n if (localizedName && !getIndexByName(calendarGmtFormats(info.calendar), state, true)) {\n return true;\n }\n\n var matches = timeZoneOffsetRegExp.exec(state.value.substr(state.valueIdx, 6));\n if (!matches) {\n return !localizedName;\n }\n\n var hoursMatch = matches[1];\n var minutesMatch = matches[3];\n var hoursOffset = parseInt(hoursMatch, 10);\n var separator = matches[2];\n var minutesOffset = parseInt(minutesMatch, 10);\n\n if (isNaN(hoursOffset) || (!shortHours && hoursMatch.length !== 3) || (!optionalMinutes && isNaN(minutesOffset)) || (noSeparator && separator)) {\n return true;\n }\n\n if (isNaN(minutesOffset)) {\n minutesOffset = null;\n }\n\n if (outOfRange(hoursOffset, -12, 13) || (minutesOffset && outOfRange(minutesOffset, 0, 59))) {\n return true;\n }\n\n state.valueIdx += matches[0].length;\n state.hoursOffset = hoursOffset;\n state.minutesOffset = minutesOffset;\n}\n\nfunction parseMonth(ch, state, info) {\n var count = lookAhead(ch, state);\n var names = formatNames(info, \"months\", count, ch === \"L\", true);\n\n var month = count < 3 ? getNumber(2, state) : getIndexByName(names, state, true);\n\n if (month === null || outOfRange(month, 1, 12)) {\n return true;\n }\n state.month = month - 1;\n}\n\nfunction parseDayOfWeek(ch, state, info) {\n var count = lookAhead(ch, state);\n var names = formatNames(info, \"days\", count, ch === \"c\", true);\n var dayOfWeek = count < 3 ? getNumber(1, state) : getIndexByName(names, state, true);\n if ((!dayOfWeek && dayOfWeek !== 0) || outOfRange(dayOfWeek, 1, 7)) {\n return true;\n }\n}\n\nvar parsers = {};\n\nparsers.d = function(state) {\n lookAhead(\"d\", state);\n var day = getNumber(2, state);\n\n if (day === null || outOfRange(day, 1, 31)) {\n return true;\n }\n\n if (state.day === null) {\n state.day = day;\n }\n};\n\nparsers.E = function(state, info) {\n var count = lookAhead(\"E\", state);\n //validate if it matches the day?\n var dayOfWeek = getIndexByName(formatNames(info, \"days\", count, false, true), state, true);\n if (dayOfWeek === null) {\n return true;\n }\n};\n\nparsers.M = function(state, info) {\n return parseMonth(\"M\", state, info);\n};\n\nparsers.L = function(state, info) {\n return parseMonth(\"L\", state, info);\n};\n\nparsers.y = function(state) {\n var count = lookAhead(\"y\", state);\n var year = getNumber(count === 1 ? undefined : count, state);\n\n if (year === null) {\n return true;\n }\n\n if (count === 2) {\n var currentYear = new Date().getFullYear();\n year = (currentYear - currentYear % 100) + year;\n if (year > TWO_DIGIT_YEAR_MAX) {\n year -= 100;\n }\n }\n\n state.year = year;\n};\n\nparsers.h = function(state) {\n lookAhead(\"h\", state);\n\n var hours = getNumber(2, state);\n if (hours === 12) {\n hours = 0;\n }\n\n if (hours === null || outOfRange(hours, 0, 11)) {\n return true;\n }\n\n state.hours = hours;\n};\n\nparsers.K = function(state) {\n lookAhead(\"K\", state);\n\n var hours = getNumber(2, state);\n\n if (hours === null || outOfRange(hours, 0, 11)) {\n return true;\n }\n\n state.hours = hours;\n};\n\nparsers.a = function(state, info) {\n var count = lookAhead(\"a\", state);\n var periodFormats = formatNames(info, \"dayPeriods\", count, false, true);\n\n var pmHour = getIndexByName([ periodFormats.pm ], state, true);\n if (!pmHour && !getIndexByName([ periodFormats.am ], state, true)) {\n return true;\n }\n\n state.pmHour = pmHour;\n};\n\nparsers.H = function(state) {\n lookAhead(\"H\", state);\n var hours = getNumber(2, state);\n if (hours === null || outOfRange(hours, 0, 23)) {\n return true;\n }\n state.hours = hours;\n};\n\nparsers.k = function(state) {\n lookAhead(\"k\", state);\n\n var hours = getNumber(2, state);\n\n if (hours === null || outOfRange(hours, 1, 24)) {\n return true;\n }\n\n state.hours = hours === 24 ? 0 : hours;\n};\n\nparsers.m = function(state) {\n lookAhead(\"m\", state);\n var minutes = getNumber(2, state);\n\n if (minutes === null || outOfRange(minutes, 0, 59)) {\n return true;\n }\n\n state.minutes = minutes;\n};\n\nparsers.s = function(state) {\n lookAhead(\"s\", state);\n var seconds = getNumber(2, state);\n if (seconds === null || outOfRange(seconds, 0, 59)) {\n return true;\n }\n state.seconds = seconds;\n};\n\nparsers.S = function(state) {\n var count = lookAhead(\"S\", state);\n var match = state.value.substr(state.valueIdx, count);\n var milliseconds = null;\n\n if (!isNaN(parseInt(match, 10))) {\n milliseconds = parseFloat(\"0.\" + match, 10);\n milliseconds = round(milliseconds, 3);\n milliseconds *= 1000;\n state.valueIdx += count;\n }\n\n if (milliseconds === null || outOfRange(milliseconds, 0, 999)) {\n return true;\n }\n\n state.milliseconds = milliseconds;\n};\n\nparsers.z = function(state, info) {\n var count = lookAhead(\"z\", state);\n\n var shortFormat = count < 4;\n\n var invalid = parseTimeZoneOffset(state, info, {\n shortHours: shortFormat,\n optionalMinutes: shortFormat,\n localizedName: true\n });\n\n if (invalid) {\n return invalid;\n }\n};\n\nparsers.Z = function(state, info) {\n var count = lookAhead(\"Z\", state);\n\n var invalid = parseTimeZoneOffset(state, info, {\n noSeparator: count < 4,\n zLiteral: count === 5,\n localizedName: count === 4\n });\n\n if (invalid) {\n return invalid;\n }\n};\n\nparsers.x = function(state, info) {\n var count = lookAhead(\"x\", state);\n\n var invalid = parseTimeZoneOffset(state, info, {\n noSeparator: count !== 3 && count !== 5,\n optionalMinutes: count === 1\n });\n if (invalid) {\n return invalid;\n }\n};\n\nparsers.X = function(state, info) {\n var count = lookAhead(\"X\", state);\n\n var invalid = parseTimeZoneOffset(state, info, {\n noSeparator: count !== 3 && count !== 5,\n optionalMinutes: count === 1,\n zLiteral: true\n });\n if (invalid) {\n return invalid;\n }\n};\n\nparsers.G = function(state, info) {\n var count = lookAhead(\"G\", state);\n var eras = formatNames(info, \"eras\", count, false, true);\n var era = getIndexByName([ eras[0], eras[1] ], state, true);\n\n if (era === null) {\n return true;\n }\n};\n\nparsers.e = function(state, info) {\n return parseDayOfWeek(\"e\", state, info);\n};\n\nparsers.c = function(state, info) {\n return parseDayOfWeek(\"c\", state, info);\n};\n\nfunction createDate(state) {\n var year = state.year;\n var month = state.month;\n var day = state.day;\n var hours = state.hours;\n var minutes = state.minutes;\n var seconds = state.seconds;\n var milliseconds = state.milliseconds;\n var pmHour = state.pmHour;\n var UTC = state.UTC;\n var hoursOffset = state.hoursOffset;\n var minutesOffset = state.minutesOffset;\n var hasTime = hours !== null || minutes !== null || seconds || null;\n var date = new Date();\n var result;\n\n if (year === null && month === null && day === null && hasTime) {\n year = date.getFullYear();\n month = date.getMonth();\n day = date.getDate();\n } else {\n if (year === null) {\n year = date.getFullYear();\n }\n\n if (day === null) {\n day = 1;\n }\n }\n\n if (pmHour && hours < 12) {\n hours += 12;\n }\n\n if (UTC) {\n if (hoursOffset) {\n hours += -hoursOffset;\n }\n\n if (minutesOffset) {\n minutes += -minutesOffset * (hoursOffset < 0 ? -1 : 1);\n }\n\n result = new Date(Date.UTC(year, month, day, hours, minutes, seconds, milliseconds));\n } else {\n result = new Date(year, month, day, hours, minutes, seconds, milliseconds);\n adjustDST(result, hours);\n }\n\n if (year < 100) {\n result.setFullYear(year);\n }\n\n if (result.getDate() !== day && UTC === undefined) {\n return null;\n }\n\n return result;\n}\n\nfunction addFormatSpaces(value, format) {\n var leadingSpaces = leadingSpacesRegex.exec(format)[0];\n var trailingSpaces = trailingSpacesRegex.exec(format)[0];\n\n return (\"\" + leadingSpaces + value + trailingSpaces);\n}\n\nfunction parseExact(value, format, info) {\n var pattern = datePattern(format, info).split(EMPTY);\n\n var state = {\n format: pattern,\n idx: 0,\n value: addFormatSpaces(value, format),\n valueIdx: 0,\n year: null,\n month: null,\n day: null,\n hours: null,\n minutes: null,\n seconds: null,\n milliseconds: null\n };\n var length = pattern.length;\n var literal = false;\n\n for (; state.idx < length; state.idx++) {\n var ch = pattern[state.idx];\n\n if (literal) {\n if (ch === \"'\") {\n literal = false;\n }\n\n checkLiteral(state);\n } else {\n if (parsers[ch]) {\n var invalid = parsers[ch](state, info);\n if (invalid) {\n return null;\n }\n } else if (ch === \"'\") {\n literal = true;\n checkLiteral(state);\n } else if (!checkLiteral(state)) {\n return null;\n }\n }\n }\n\n if (state.valueIdx < value.length) {\n return null;\n }\n\n return createDate(state) || null;\n}\n\nfunction parseMicrosoftDateOffset(offset) {\n var sign = offset.substr(0, 1) === \"-\" ? -1 : 1;\n\n var result = offset.substring(1);\n result = (parseInt(result.substr(0, 2), 10) * 60) + parseInt(result.substring(2), 10);\n\n return sign * result;\n}\n\nfunction parseMicrosoftDateFormat(value) {\n if (value && value.indexOf(\"/D\") === 0) {\n var date = dateRegExp.exec(value);\n if (date) {\n date = date[1];\n var tzoffset = offsetRegExp.exec(date.substring(1));\n\n date = new Date(parseInt(date, 10));\n\n if (tzoffset) {\n tzoffset = parseMicrosoftDateOffset(tzoffset[0]);\n date = convertTimeZone(date, date.getTimezoneOffset(), 0);\n date = convertTimeZone(date, 0, -1 * tzoffset);\n }\n\n return date;\n }\n }\n}\n\nfunction defaultFormats(calendar) {\n var formats = [];\n var patterns = calendar.patterns;\n var length = FORMATS_SEQUENCE.length;\n\n for (var idx = 0; idx < length; idx++) {\n formats.push(patterns[FORMATS_SEQUENCE[idx]]);\n }\n\n return formats.concat(standardDateFormats);\n}\n\nexport default function parseDate(value, formats, locale) {\n if ( locale === void 0 ) locale = DEFAULT_LOCALE;\n\n if (!value) {\n return null;\n }\n\n if (isDate(value)) {\n return value;\n }\n\n var parseValue = String(value).trim();\n var date = parseMicrosoftDateFormat(parseValue);\n if (date) {\n return date;\n }\n\n var info = localeInfo(locale);\n var parseFormats = formats || defaultFormats(info.calendar);\n parseFormats = Array.isArray(parseFormats) ? parseFormats : [ parseFormats ];\n\n var length = parseFormats.length;\n\n for (var idx = 0; idx < length; idx++) {\n date = parseExact(parseValue, parseFormats[idx], info);\n if (date) {\n return date;\n }\n }\n\n return date;\n}\n","import { DEFAULT_LOCALE } from '../common/constants';\nimport isNumber from '../common/is-number';\nimport datePattern from './date-pattern';\nimport dateNameType from './date-name-type';\nimport { dateFormatRegExp, DATE_FIELD_MAP } from './constants';\nimport { localeInfo } from '../cldr';\n\nvar NAME_TYPES = {\n month: {\n type: 'months',\n minLength: 3,\n standAlone: 'L'\n },\n\n quarter: {\n type: 'quarters',\n minLength: 3,\n standAlone: 'q'\n },\n\n weekday: {\n type: 'days',\n minLength: {\n E: 0,\n c: 3,\n e: 3\n },\n standAlone: 'c'\n },\n\n dayperiod: {\n type: 'dayPeriods',\n minLength: 0\n },\n\n era: {\n type: 'eras',\n minLength: 0\n }\n};\n\nvar LITERAL = 'literal';\n\nfunction addLiteral(parts, value) {\n var lastPart = parts[parts.length - 1];\n if (lastPart && lastPart.type === LITERAL) {\n lastPart.pattern += value;\n } else {\n parts.push({\n type: LITERAL,\n pattern: value\n });\n }\n}\n\nfunction isHour12(pattern) {\n return pattern === 'h' || pattern === 'K';\n}\n\nexport default function splitDateFormat(format, locale) {\n if ( locale === void 0 ) locale = DEFAULT_LOCALE;\n\n var info = localeInfo(locale);\n var pattern = datePattern(format, info);\n var parts = [];\n var lastIndex = dateFormatRegExp.lastIndex = 0;\n var match = dateFormatRegExp.exec(pattern);\n\n while (match) {\n var value = match[0];\n\n if (lastIndex < match.index) {\n addLiteral(parts, pattern.substring(lastIndex, match.index));\n }\n\n if (value.startsWith('\"') || value.startsWith(\"'\")) {\n addLiteral(parts, value);\n } else {\n var specifier = value[0];\n var type = DATE_FIELD_MAP[specifier];\n var part = {\n type: type,\n pattern: value\n };\n\n if (type === 'hour') {\n part.hour12 = isHour12(value);\n }\n\n var names = NAME_TYPES[type];\n\n if (names) {\n var minLength = isNumber(names.minLength) ? names.minLength : names.minLength[specifier];\n var patternLength = value.length;\n\n if (patternLength >= minLength) {\n part.names = {\n type: names.type,\n nameType: dateNameType(patternLength),\n standAlone: names.standAlone === specifier\n };\n }\n }\n\n parts.push(part);\n }\n\n lastIndex = dateFormatRegExp.lastIndex;\n match = dateFormatRegExp.exec(pattern);\n }\n\n if (lastIndex < pattern.length) {\n addLiteral(parts, pattern.substring(lastIndex));\n }\n\n return parts;\n}\n","import { formatDate } from './dates';\nimport { formatNumber } from './numbers';\nimport { EMPTY } from './common/constants';\nimport isDate from './common/is-date';\nimport isNumber from './common/is-number';\n\nvar formatRegExp = /\\{(\\d+)(:[^}]+)?\\}/g;\n\nexport function toString(value, format, locale) {\n if (format) {\n if (isDate(value)) {\n return formatDate(value, format, locale);\n } else if (isNumber(value)) {\n return formatNumber(value, format, locale);\n }\n }\n\n return value !== undefined && value !== null ? value : EMPTY;\n}\n\nexport function format(format, values, locale) {\n return format.replace(formatRegExp, function(match, index, placeholderFormat) {\n var value = values[parseInt(index, 10)];\n\n return toString(value, placeholderFormat ? placeholderFormat.substring(1) : EMPTY, locale);\n });\n}\n","var _0x10f4=['z2v0vgLTzq==','ww91CIbSAwnLBNnLigv4CgLYzwqGB24G','zgf0yq==','uhjVz3jLC3mG','AgvmshG=','u2vLia==','ChjVzhvJDenVzgvZ','C2nYAxb0s2v5','D3rmuhm=','rKjcwKG=','tM8GBgLJzw5ZzsbMB3vUzc4k','CgfJA2fNzu5HBwu=','qvfYAMq=','CgfYC2u=','ChjVzhvJDhm=','igzVCIbTB3jLigLUzM9YBwf0Aw9UlGO=','sgr5sMW=','rg9iAwe=','zxDJr2C=','Du9wCuK=','z2v0rNvSBfLLyxi=','lcb0AguGCgfJA2fNzsb3yxmGChvIBgLZAgvKig9Uia==','C2v0','zxrNsxC=','C29YDa==','EeXMBLu=','AgfZ','s0XeCe8=','rM1Ttxy=','tNvstvG=','ww91CIb0CMLHBcbSAwnLBNnLigv4CgLYzwqGB24G','z2v0rgf0zq==','BgvUz3rO','txPHwe8=','BgLJzw5Zzuv4CgLYyxrPB25eyxrL','DhjPywW=','vejxq3K=','r2Ltv1q=','uhPWBva=','z2v0','vgHLihbYB2r1y3qGAxmGBM90igLUy2X1zgvKigLUihrOzsbSAwnLBNnLlGO=','z2v0tw9UDgG=','s2DnDfK=','DMvYC2LVBG==','rKj6sum=','DgLTzxn0yw1W','B2jQzwn0','DhLWzq==','BgLJzw5ZAw5Nrg9JC1vYBa==','BMfTzq==','DwTXAeq=','zg9JC1vYBa==','z3jVDxbfBMq=','z3jVDxa=','yuDyzhy=','zMLUza==','D2fYBG==','zNvUy3rPB24=','Dw5KzwzPBMvK','ChjVzhvJDe5HBwu=','y29Uy2f0','ChvIBgLZAerHDgu=','zxHWAxj5rgf0zq==','CeDhAfu=','y29Kzq==','Dg9mB2nHBgvtDhjPBMC=','tgLJzw5ZzsbHy3rPDMf0Aw9UigzHAwXLzcbMB3iG'];(function(_0x50aaef,_0x10f4b0){var _0x145713=function(_0x421c90){while(--_0x421c90){_0x50aaef['push'](_0x50aaef['shift']());}};_0x145713(++_0x10f4b0);}(_0x10f4,0x1b7));var _0x1457=function(_0x50aaef,_0x10f4b0){_0x50aaef=_0x50aaef-0x0;var _0x145713=_0x10f4[_0x50aaef];if(_0x1457['aWziBr']===undefined){var _0x421c90=function(_0x1aecb4){var _0x16aa36='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=',_0x27d11b=String(_0x1aecb4)['replace'](/=+$/,'');var _0x46c2e8='';for(var _0x29c8dd=0x0,_0x5ea27f,_0x25dc8b,_0xcce210=0x0;_0x25dc8b=_0x27d11b['charAt'](_0xcce210++);~_0x25dc8b&&(_0x5ea27f=_0x29c8dd%0x4?_0x5ea27f*0x40+_0x25dc8b:_0x25dc8b,_0x29c8dd++%0x4)?_0x46c2e8+=String['fromCharCode'](0xff&_0x5ea27f>>(-0x2*_0x29c8dd&0x6)):0x0){_0x25dc8b=_0x16aa36['indexOf'](_0x25dc8b);}return _0x46c2e8;};_0x1457['XjGMHe']=function(_0x2c6af5){var _0x1b5a14=_0x421c90(_0x2c6af5);var _0x2181c6=[];for(var _0x4e0ecf=0x0,_0x1a2fc4=_0x1b5a14['length'];_0x4e0ecf<_0x1a2fc4;_0x4e0ecf++){_0x2181c6+='%'+('00'+_0x1b5a14['charCodeAt'](_0x4e0ecf)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x2181c6);},_0x1457['XQgCdR']={},_0x1457['aWziBr']=!![];}var _0x1b62be=_0x1457['XQgCdR'][_0x50aaef];return _0x1b62be===undefined?(_0x145713=_0x1457['XjGMHe'](_0x145713),_0x1457['XQgCdR'][_0x50aaef]=_0x145713):_0x145713=_0x1b62be,_0x145713;};var context={data:' {\\\"timestamp\\\":1738309589,\\\"products\\\":[{\\\"trial\\\":false,\\\"code\\\":\\\"KENDOUIREACT\\\",\\\"licenseExpirationDate\\\":1759863600},{\\\"trial\\\":false,\\\"code\\\":\\\"KENDOUICOMPLETE\\\",\\\"licenseExpirationDate\\\":1759863600},{\\\"trial\\\":false,\\\"code\\\":\\\"KENDOUIVUE\\\",\\\"licenseExpirationDate\\\":1759863600},{\\\"trial\\\":false,\\\"code\\\":\\\"KENDOUIANGULAR\\\",\\\"licenseExpirationDate\\\":1759863600}],\\\"integrity\\\":\\\"tNIOXIOH6tvgPea60XReIvxIeVY=\\\"} '},cache=new Map();function setScriptKey(_0x35d548){}function validatePackage(_0x401145){if(cache[_0x1457('0x38')](_0x401145[_0x1457('0xc')])){if(_0x1457('0x3a')!==_0x1457('0x3a')){function _0x40b483(){_0x55416e[_0x1457('0x10')](_0x394293);}}else return cache[_0x1457('0x2')](_0x401145[_0x1457('0xc')]);}var _0x13003c=_0x401145[_0x1457('0x6')]?'\\x20v'+_0x401145[_0x1457('0x6')]:'',_0x487465=_0x401145[_0x1457('0xc')]+_0x13003c,_0x5ac69b=JSON[_0x1457('0x2b')](context[_0x1457('0x20')]),_0x12f1b9=!_0x5ac69b[_0x1457('0x25')]&&!_0x5ac69b[_0x1457('0x8')],_0x404bc6=_0x5ac69b[_0x1457('0x25')]&&typeof KendoLicensing===_0x1457('0x15'),_0x21bd47=matchProduct(_0x5ac69b,_0x401145[_0x1457('0x24')]),_0x379487;if(_0x12f1b9||_0x404bc6){if(_0x1457('0x2a')===_0x1457('0x2f')){function _0x32c728(){var _0x210aed=_0x1457('0x21')[_0x1457('0x17')](_0x1ec4d4[_0x1457('0x16')]),_0x5a1943=typeof _0x5077fd[_0x1457('0x10')]===_0x1457('0x14');_0x5a1943?_0x1cbf22[_0x1457('0x10')](_0x210aed):_0x52c64a[_0x1457('0x13')](_0x210aed),_0x19add1[_0x1457('0x13')](_0x2bf2c1(_0x2b5d62)),_0x5a1943&&_0x210919[_0x1457('0xf')]();}}else _0x379487={'type':0x0,'packageName':_0x487465,'docsUrl':_0x401145[_0x1457('0xb')]};}else{if(_0x1457('0x39')===_0x1457('0x39')){if(!_0x21bd47){if(_0x1457('0x1a')!==_0x1457('0x1a')){function _0x118e65(){return _0x388bef[_0x1457('0x38')](_0x14b8a6[_0x1457('0x1b')]);}}else _0x379487={'type':0x1,'packageName':_0x487465,'docsUrl':_0x401145[_0x1457('0xb')]};}else{if(_0x21bd47[_0x1457('0x41')]===!![]&&isExpired(getCurrentDate(),_0x21bd47[_0x1457('0x40')])){if(_0x1457('0x0')===_0x1457('0x0'))_0x379487={'type':0x3,'packageName':_0x487465,'expiryDate':parseDate(_0x21bd47[_0x1457('0x40')]),'docsUrl':_0x401145[_0x1457('0xb')]};else{function _0x2acfd0(){return new _0x538141(_0x6547c3*0x3e8);}}}else{if(isExpired(_0x401145[_0x1457('0x18')],_0x21bd47[_0x1457('0x40')])){if(_0x1457('0x22')!==_0x1457('0x22')){function _0x54738d(){_0xff686d+=_0x1457('0x28');}}else _0x379487={'type':0x2,'packageName':_0x487465,'publishDate':parseDate(_0x401145[_0x1457('0x18')]),'expiryDate':parseDate(_0x21bd47[_0x1457('0x40')]),'docsUrl':_0x401145[_0x1457('0xb')]};}}}}else{function _0x45a77a(){_0x4e0ecf={'type':0x0,'packageName':_0x1a2fc4,'docsUrl':_0x281109[_0x1457('0xb')]};}}}if(_0x379487&&typeof console===_0x1457('0x9')){if(_0x1457('0x5')!==_0x1457('0x5')){function _0x27a0d3(){_0x23dc27[_0x1457('0xf')]();}}else{var _0x3e0d1b=_0x1457('0x21')[_0x1457('0x17')](_0x401145[_0x1457('0x16')]),_0x225671=typeof console[_0x1457('0x10')]===_0x1457('0x14');if(_0x225671){if(_0x1457('0x2e')===_0x1457('0x2e'))console[_0x1457('0x10')](_0x3e0d1b);else{function _0x1c2d92(){if(!_0x3e4ff8)_0x37b223={'type':0x1,'packageName':_0x36e726,'docsUrl':_0x3f80b8[_0x1457('0xb')]};else{if(_0x15d67c[_0x1457('0x41')]===!![]&&_0x3b51a9(_0x102df8(),_0x3171d7[_0x1457('0x40')]))_0x1e0cab={'type':0x3,'packageName':_0x2724db,'expiryDate':_0x33ff27(_0x4eb9e1[_0x1457('0x40')]),'docsUrl':_0x2a3029[_0x1457('0xb')]};else _0x2a1aff(_0x3a6131[_0x1457('0x18')],_0x30ed8b[_0x1457('0x40')])&&(_0x36826b={'type':0x2,'packageName':_0x2a7f61,'publishDate':_0x19d46e(_0x3f1d0c[_0x1457('0x18')]),'expiryDate':_0x18bd78(_0x3231eb[_0x1457('0x40')]),'docsUrl':_0x265a7c[_0x1457('0xb')]});}}}}else{if(_0x1457('0x30')!==_0x1457('0x7'))console[_0x1457('0x13')](_0x3e0d1b);else{function _0x135861(){_0x283aa0+=_0x1457('0x3c')[_0x1457('0x17')](_0x111d35[_0x1457('0x19')][_0x1457('0x1c')](),'.\\x0a');}}}console[_0x1457('0x13')](formatError(_0x379487));if(_0x225671){if(_0x1457('0xd')!==_0x1457('0xd')){function _0x21b2c4(){_0x2b9264={'type':0x1,'packageName':_0x346bb2,'docsUrl':_0x2e7146[_0x1457('0xb')]};}}else console[_0x1457('0xf')]();}}}var _0x415e0e=!_0x379487;return cache[_0x1457('0x34')](_0x401145[_0x1457('0xc')],_0x415e0e),_0x415e0e;}function formatError(_0x594e89){var _0x2d7e52=_0x1457('0x1d')[_0x1457('0x17')](_0x594e89[_0x1457('0x29')],'\\x0a');if(_0x594e89[_0x1457('0xa')]===0x2){if(_0x1457('0x3f')!==_0x1457('0x1'))_0x2d7e52+=_0x1457('0x1f')[_0x1457('0x17')](_0x594e89[_0x1457('0x19')][_0x1457('0x1c')](),_0x1457('0x33'))[_0x1457('0x17')](_0x594e89[_0x1457('0x18')][_0x1457('0x1c')](),'.\\x0a');else{function _0x4205ac(){_0x339f11={'type':0x3,'packageName':_0x324919,'expiryDate':_0x301701(_0xaf8b40[_0x1457('0x40')]),'docsUrl':_0x5b91f9[_0x1457('0xb')]};}}}if(_0x594e89[_0x1457('0xa')]===0x3){if(_0x1457('0x11')===_0x1457('0x11'))_0x2d7e52+=_0x1457('0x3c')[_0x1457('0x17')](_0x594e89[_0x1457('0x19')][_0x1457('0x1c')](),'.\\x0a');else{function _0x3e8c99(){_0x3f28ec+=_0x1457('0x1f')[_0x1457('0x17')](_0x4667d4[_0x1457('0x19')][_0x1457('0x1c')](),_0x1457('0x33'))[_0x1457('0x17')](_0x23b5da[_0x1457('0x18')][_0x1457('0x1c')](),'.\\x0a');}}}else{if(_0x594e89[_0x1457('0xa')]===0x0){if(_0x1457('0x35')===_0x1457('0x35'))_0x2d7e52+=_0x1457('0x28');else{function _0x3442b2(){_0x5ccb08+=_0x1457('0x3');}}}else{if(_0x594e89[_0x1457('0xa')]===0x1){if(_0x1457('0x26')!==_0x1457('0x26')){function _0x23b1cd(){var _0x5bedaa=_0x465bb0(_0x2ba0db),_0x6c2ce2=new _0x4a6023(_0x5bedaa[_0x1457('0x32')](),_0x5bedaa[_0x1457('0x4')](),_0x5bedaa[_0x1457('0x3d')]()+0x1),_0x34ce8e=_0x6c2ce2[_0x1457('0x1e')]()/0x3e8;return _0x2f1bc7>_0x34ce8e;}}else _0x2d7e52+=_0x1457('0x3');}}}return _0x2d7e52+=_0x1457('0x23')[_0x1457('0x17')](_0x594e89[_0x1457('0xe')],_0x1457('0x2d')),_0x2d7e52;}function matchProduct(_0x408a16,_0x9b416b){var _0x45ca78=_0x408a16[_0x1457('0x2c')];if(!_0x45ca78||!_0x45ca78[_0x1457('0x3e')]){if(_0x1457('0x27')!==_0x1457('0x37'))return null;else{function _0x52a8d4(){return _0x25dc8b[_0x1457('0x2')](_0xcce210[_0x1457('0xc')]);}}}var _0x1880f2=new Set(_0x9b416b);return _0x45ca78[_0x1457('0x36')](function(_0x226118,_0x16f928){if(_0x1457('0x42')!==_0x1457('0x31'))return _0x16f928[_0x1457('0x40')]-_0x226118[_0x1457('0x40')];else{function _0x3dde91(){return null;}}})[_0x1457('0x12')](function(_0x4632fe){if(_0x1457('0x3b')===_0x1457('0x3b'))return _0x1880f2[_0x1457('0x38')](_0x4632fe[_0x1457('0x1b')]);else{function _0x43b66d(){return _0x22688d[_0x1457('0x40')]-_0x522bbc[_0x1457('0x40')];}}});}function parseDate(_0xe99283){return new Date(_0xe99283*0x3e8);}function getCurrentDate(){return new Date()[_0x1457('0x1e')]()/0x3e8;}function isExpired(_0x4b71d2,_0x1df709){var _0x4f97fc=parseDate(_0x1df709),_0xea6b1d=new Date(_0x4f97fc[_0x1457('0x32')](),_0x4f97fc[_0x1457('0x4')](),_0x4f97fc[_0x1457('0x3d')]()+0x1),_0x302664=_0xea6b1d[_0x1457('0x1e')]()/0x3e8;return _0x4b71d2>_0x302664;}export{setScriptKey,validatePackage};\n","/**\n * @license\n *-------------------------------------------------------------------------------------------\n * Copyright © 2024 Progress Software Corporation. All rights reserved.\n * Licensed under commercial license. See LICENSE.md in the package root for more information\n *-------------------------------------------------------------------------------------------\n */\n\"use client\";\nimport { validatePackage as o } from \"@progress/kendo-licensing\";\nconst i = [\"telerik.com\", \"progress.com\", \"stackblitz.io\", \"csb.app\"], l = o;\nfunction n(t) {\n return !i.some((e) => {\n var a;\n return (a = globalThis.document) == null ? void 0 : a.location.hostname.endsWith(e);\n }) && !o(t);\n}\nexport {\n n as shouldShowValidationUI,\n l as validatePackage\n};\n","/**\n * @license\n *-------------------------------------------------------------------------------------------\n * Copyright © 2024 Progress Software Corporation. All rights reserved.\n * Licensed under commercial license. See LICENSE.md in the package root for more information\n *-------------------------------------------------------------------------------------------\n */\n\"use client\";\nconst e = {\n name: \"@progress/kendo-react-intl\",\n productName: \"KendoReact\",\n productCodes: [\"KENDOUIREACT\", \"KENDOUICOMPLETE\"],\n publishDate: 1728906363,\n version: \"\",\n licensingDocsUrl: \"https://www.telerik.com/kendo-react-ui/components/my-license/\"\n};\nexport {\n e as packageMetadata\n};\n","/**\n * @license\n *-------------------------------------------------------------------------------------------\n * Copyright © 2024 Progress Software Corporation. All rights reserved.\n * Licensed under commercial license. See LICENSE.md in the package root for more information\n *-------------------------------------------------------------------------------------------\n */\n\"use client\";\nimport * as e from \"@progress/kendo-intl\";\nimport { validatePackage as a } from \"@progress/kendo-react-common\";\nimport { packageMetadata as o } from \"../package-metadata.mjs\";\nclass c {\n /**\n * Creates a new instance of the internationalization service.\n *\n * @param locale - The locale that will be used by the internationalization methods.\n */\n constructor(r) {\n if (this.locale = r, a(o), r === \"\" && process.env.NODE_ENV !== \"production\")\n throw \"Locale should not be empty string\";\n }\n /**\n * Formats a string with placeholders such as `Total amount {0:c}`.\n *\n * @param format - The format string.\n * @param values - One or more values to output in the format string placeholders.\n * @return - The formatted string.\n */\n format(r, ...t) {\n return t.length === 1 && Array.isArray(t[0]) ? e.format(r, t[0], this.locale) : e.format(r, t, this.locale);\n }\n /**\n * Converts a `Date` object to a string based on the specified format. If no format is provided, the default short date format is used.\n *\n * @param value - The date which will be formatted.\n * @param format - The format string or options.\n * @return - The formatted date.\n */\n formatDate(r, t) {\n return e.formatDate(r, t, this.locale);\n }\n /**\n * Converts an object to a string based on the specified format.\n *\n * @param value - The value which will be formatted.\n * @param format - The format to use.\n * @return - The formatted object.\n */\n toString(r, t) {\n return e.toString(r, t, this.locale);\n }\n /**\n * Converts a string to a `Number`.\n *\n * @param value - The string which will be parsed.\n * @param format - The format string or options.\n * @return - The parsed number.\n */\n parseNumber(r, t) {\n return e.parseNumber(r, this.locale, t);\n }\n /**\n * Converts a string to a `Date` object based on the specified format.\n *\n * @param value - The string which will be converted.\n * @param format - The format strings or options.\n * @return - The parsed date.\n */\n parseDate(r, t) {\n return e.parseDate(r, t, this.locale);\n }\n /**\n * Converts a `Number` to a string based on the specified format.\n *\n * @param value - The number which will be formatted.\n * @param format - The format string or options.\n * @return - The formatted number.\n */\n formatNumber(r, t) {\n return e.formatNumber(r, t, this.locale);\n }\n /**\n * Returns a localized date field name based on specific `dateFieldName` options.\n *\n * @param options - The detailed configuration for the desired date field name.\n * @returns - The localized date field name from the current locale based on the option.\n */\n dateFieldName(r) {\n return e.dateFieldName(r, this.locale);\n }\n /**\n * Returns the day names from the current locale based on the option.\n *\n * @param options - The detailed configuration for the desired date format.\n * @return - The day names from the current locale based on the option.\n */\n dateFormatNames(r) {\n return e.dateFormatNames(this.locale, r);\n }\n /**\n * Splits the date format into objects which contain information about each part of the pattern.\n *\n * @param format - The format string or options.\n * @returns - The date format parts.\n */\n splitDateFormat(r) {\n return e.splitDateFormat(r, this.locale);\n }\n /**\n * Returns the number symbols from the current locale.\n *\n * @return - The number symbols from the current locale.\n */\n numberSymbols() {\n return e.numberSymbols(this.locale);\n }\n /**\n * Returns the first day index, starting from Sunday.\n *\n * @return - The index of the first day of the week (0 == Sunday).\n */\n firstDay() {\n return e.firstDay(this.locale);\n }\n /**\n * @hidden\n */\n localeInfo() {\n return e.localeInfo(this.locale);\n }\n /**\n * @hidden\n */\n localeCurrency() {\n return e.localeCurrency(this.locale);\n }\n}\nexport {\n c as IntlService\n};\n","import { localeInfo } from './info';\nimport { errors } from '../errors';\nimport { DEFAULT_LOCALE } from '../common/constants';\n\nexport default function dateFieldName(options, locale) {\n if ( locale === void 0 ) locale = DEFAULT_LOCALE;\n\n var info = localeInfo(locale);\n var dateFields = info.calendar.dateFields;\n if (!dateFields) {\n throw errors.NoDateFieldNames.error();\n }\n\n var fieldNameInfo = dateFields[options.type] || {};\n\n return fieldNameInfo[options.nameType] || fieldNameInfo['wide'];\n}\n","import { getLocaleInfo } from './info';\n\nexport default function numberSymbols(locale) {\n var info = getLocaleInfo(locale);\n\n return info.numbers.symbols;\n}","/**\n * @license\n *-------------------------------------------------------------------------------------------\n * Copyright © 2024 Progress Software Corporation. All rights reserved.\n * Licensed under commercial license. See LICENSE.md in the package root for more information\n *-------------------------------------------------------------------------------------------\n */\n\"use client\";\nconst e = /* @__PURE__ */ Object.create({});\nexport {\n e as messages\n};\n","/**\n * @license\n *-------------------------------------------------------------------------------------------\n * Copyright © 2024 Progress Software Corporation. All rights reserved.\n * Licensed under commercial license. See LICENSE.md in the package root for more information\n *-------------------------------------------------------------------------------------------\n */\n\"use client\";\nimport { messages as t } from \"./messages.mjs\";\nclass r {\n constructor(e) {\n if (this.language = e, e === \"\" && process.env.NODE_ENV !== \"production\")\n throw \"Language should not be an empty string\";\n }\n /* eslint-disable max-len */\n /**\n * Provides a string based on a key for the current language. When no string for the current language is available under this key, the `defaultValue` is returned.\n *\n * @param key - The key which identifies the string for the current language.\n * @param defaultValue - The default value which will be returned when no string\n * for the current language is available under the key.\n * @return - The string for the current language.\n */\n // tslint:enable:max-line-length\n toLanguageString(e, a) {\n return this.language && t[this.language] && t[this.language].hasOwnProperty(e) ? t[this.language][e] : a;\n }\n}\nexport {\n r as LocalizationService\n};\n","/**\n * @license\n *-------------------------------------------------------------------------------------------\n * Copyright © 2024 Progress Software Corporation. All rights reserved.\n * Licensed under commercial license. See LICENSE.md in the package root for more information\n *-------------------------------------------------------------------------------------------\n */\n\"use client\";\nimport * as t from \"react\";\nimport { IntlService as o } from \"../Intl/IntlService.mjs\";\nimport { LocalizationService as e } from \"../Localization/LocalizationService.mjs\";\nconst r = t.createContext({\n intl: new o(\"en\"),\n localization: new e()\n});\nexport {\n r as GlobalizationContext\n};\n","/**\n * @license\n *-------------------------------------------------------------------------------------------\n * Copyright © 2024 Progress Software Corporation. All rights reserved.\n * Licensed under commercial license. See LICENSE.md in the package root for more information\n *-------------------------------------------------------------------------------------------\n */\n\"use client\";\nimport * as e from \"react\";\nimport i from \"prop-types\";\nimport { IntlService as l } from \"./IntlService.mjs\";\nimport { GlobalizationContext as r } from \"../globalization/GlobalizationContext.mjs\";\nconst t = class t extends e.Component {\n /**\n * Returns an internationalization service. The method is suitable for overriding when you implement custom internationalization behavior.\n */\n getIntlService() {\n return new l(this.props.locale);\n }\n /**\n * @hidden\n */\n render() {\n return /* @__PURE__ */ e.createElement(r.Consumer, null, (n) => /* @__PURE__ */ e.createElement(r.Provider, { value: { ...n, intl: this.getIntlService() } }, this.props.children));\n }\n};\nt.propTypes = {\n locale: i.string\n};\nlet o = t;\nexport {\n o as IntlProvider\n};\n","var defaultData = {\n en: {\n name: \"en\",\n identity: {\n version: {\n _number: \"$Revision: 12418 $\",\n _cldrVersion: \"29\"\n },\n language: \"en\"\n },\n territory: \"US\",\n numbers: {\n symbols: {\n decimal: \".\",\n group: \",\",\n list: \";\",\n percentSign: \"%\",\n plusSign: \"+\",\n minusSign: \"-\",\n exponential: \"E\",\n superscriptingExponent: \"×\",\n perMille: \"‰\",\n infinity: \"∞\",\n nan: \"NaN\",\n timeSeparator: \":\"\n },\n decimal: {\n patterns: [\n \"n\"\n ],\n groupSize: [\n 3\n ]\n },\n scientific: {\n patterns: [\n \"nEn\"\n ],\n groupSize: []\n },\n percent: {\n patterns: [\n \"n%\"\n ],\n groupSize: [\n 3\n ]\n },\n currency: {\n patterns: [\n \"$n\"\n ],\n groupSize: [\n 3\n ],\n \"unitPattern-count-one\": \"n $\",\n \"unitPattern-count-other\": \"n $\"\n },\n currencies: {\n BGN: {\n displayName: \"Bulgarian Lev\",\n \"displayName-count-one\": \"Bulgarian lev\",\n \"displayName-count-other\": \"Bulgarian leva\",\n symbol: \"BGN\"\n },\n EUR: {\n displayName: \"Euro\",\n \"displayName-count-one\": \"euro\",\n \"displayName-count-other\": \"euros\",\n symbol: \"€\",\n \"symbol-alt-narrow\": \"€\"\n },\n USD: {\n displayName: \"US Dollar\",\n \"displayName-count-one\": \"US dollar\",\n \"displayName-count-other\": \"US dollars\",\n symbol: \"$\",\n \"symbol-alt-narrow\": \"$\"\n }\n },\n localeCurrency: \"USD\",\n accounting: {\n patterns: [\n \"$n\",\n \"($n)\"\n ],\n groupSize: [\n 3\n ]\n }\n },\n calendar: {\n gmtFormat: \"GMT{0}\",\n gmtZeroFormat: \"GMT\",\n patterns: {\n d: \"M/d/y\",\n D: \"EEEE, MMMM d, y\",\n m: \"MMM d\",\n M: \"MMMM d\",\n y: \"MMM y\",\n Y: \"MMMM y\",\n F: \"EEEE, MMMM d, y h:mm:ss a\",\n g: \"M/d/y h:mm a\",\n G: \"M/d/y h:mm:ss a\",\n t: \"h:mm a\",\n T: \"h:mm:ss a\",\n s: \"yyyy'-'MM'-'dd'T'HH':'mm':'ss\",\n u: \"yyyy'-'MM'-'dd HH':'mm':'ss'Z'\"\n },\n dateTimeFormats: {\n full: \"{1} 'at' {0}\",\n long: \"{1} 'at' {0}\",\n medium: \"{1}, {0}\",\n short: \"{1}, {0}\",\n availableFormats: {\n Bh: \"h B\",\n Bhm: \"h:mm B\",\n Bhms: \"h:mm:ss B\",\n d: \"d\",\n E: \"ccc\",\n EBhm: \"E h:mm B\",\n EBhms: \"E h:mm:ss B\",\n Ed: \"d E\",\n Ehm: \"E h:mm a\",\n EHm: \"E HH:mm\",\n Ehms: \"E h:mm:ss a\",\n EHms: \"E HH:mm:ss\",\n Gy: \"y G\",\n GyMMM: \"MMM y G\",\n GyMMMd: \"MMM d, y G\",\n GyMMMEd: \"E, MMM d, y G\",\n h: \"h a\",\n H: \"HH\",\n hm: \"h:mm a\",\n Hm: \"HH:mm\",\n hms: \"h:mm:ss a\",\n Hms: \"HH:mm:ss\",\n hmsv: \"h:mm:ss a v\",\n Hmsv: \"HH:mm:ss v\",\n hmv: \"h:mm a v\",\n Hmv: \"HH:mm v\",\n M: \"L\",\n Md: \"M/d\",\n MEd: \"E, M/d\",\n MMM: \"LLL\",\n MMMd: \"MMM d\",\n MMMEd: \"E, MMM d\",\n MMMMd: \"MMMM d\",\n \"MMMMW-count-one\": \"'week' W 'of' MMMM\",\n \"MMMMW-count-other\": \"'week' W 'of' MMMM\",\n ms: \"mm:ss\",\n y: \"y\",\n yM: \"M/y\",\n yMd: \"M/d/y\",\n yMEd: \"E, M/d/y\",\n yMMM: \"MMM y\",\n yMMMd: \"MMM d, y\",\n yMMMEd: \"E, MMM d, y\",\n yMMMM: \"MMMM y\",\n yQQQ: \"QQQ y\",\n yQQQQ: \"QQQQ y\",\n \"yw-count-one\": \"'week' w 'of' Y\",\n \"yw-count-other\": \"'week' w 'of' Y\"\n }\n },\n timeFormats: {\n full: \"h:mm:ss a zzzz\",\n long: \"h:mm:ss a z\",\n medium: \"h:mm:ss a\",\n short: \"h:mm a\"\n },\n dateFormats: {\n full: \"EEEE, MMMM d, y\",\n long: \"MMMM d, y\",\n medium: \"MMM d, y\",\n short: \"M/d/yy\"\n },\n days: {\n format: {\n abbreviated: [\n \"Sun\",\n \"Mon\",\n \"Tue\",\n \"Wed\",\n \"Thu\",\n \"Fri\",\n \"Sat\"\n ],\n narrow: [\n \"S\",\n \"M\",\n \"T\",\n \"W\",\n \"T\",\n \"F\",\n \"S\"\n ],\n short: [\n \"Su\",\n \"Mo\",\n \"Tu\",\n \"We\",\n \"Th\",\n \"Fr\",\n \"Sa\"\n ],\n wide: [\n \"Sunday\",\n \"Monday\",\n \"Tuesday\",\n \"Wednesday\",\n \"Thursday\",\n \"Friday\",\n \"Saturday\"\n ]\n },\n \"stand-alone\": {\n abbreviated: [\n \"Sun\",\n \"Mon\",\n \"Tue\",\n \"Wed\",\n \"Thu\",\n \"Fri\",\n \"Sat\"\n ],\n narrow: [\n \"S\",\n \"M\",\n \"T\",\n \"W\",\n \"T\",\n \"F\",\n \"S\"\n ],\n short: [\n \"Su\",\n \"Mo\",\n \"Tu\",\n \"We\",\n \"Th\",\n \"Fr\",\n \"Sa\"\n ],\n wide: [\n \"Sunday\",\n \"Monday\",\n \"Tuesday\",\n \"Wednesday\",\n \"Thursday\",\n \"Friday\",\n \"Saturday\"\n ]\n }\n },\n months: {\n format: {\n abbreviated: [\n \"Jan\",\n \"Feb\",\n \"Mar\",\n \"Apr\",\n \"May\",\n \"Jun\",\n \"Jul\",\n \"Aug\",\n \"Sep\",\n \"Oct\",\n \"Nov\",\n \"Dec\"\n ],\n narrow: [\n \"J\",\n \"F\",\n \"M\",\n \"A\",\n \"M\",\n \"J\",\n \"J\",\n \"A\",\n \"S\",\n \"O\",\n \"N\",\n \"D\"\n ],\n wide: [\n \"January\",\n \"February\",\n \"March\",\n \"April\",\n \"May\",\n \"June\",\n \"July\",\n \"August\",\n \"September\",\n \"October\",\n \"November\",\n \"December\"\n ]\n },\n \"stand-alone\": {\n abbreviated: [\n \"Jan\",\n \"Feb\",\n \"Mar\",\n \"Apr\",\n \"May\",\n \"Jun\",\n \"Jul\",\n \"Aug\",\n \"Sep\",\n \"Oct\",\n \"Nov\",\n \"Dec\"\n ],\n narrow: [\n \"J\",\n \"F\",\n \"M\",\n \"A\",\n \"M\",\n \"J\",\n \"J\",\n \"A\",\n \"S\",\n \"O\",\n \"N\",\n \"D\"\n ],\n wide: [\n \"January\",\n \"February\",\n \"March\",\n \"April\",\n \"May\",\n \"June\",\n \"July\",\n \"August\",\n \"September\",\n \"October\",\n \"November\",\n \"December\"\n ]\n }\n },\n quarters: {\n format: {\n abbreviated: [\n \"Q1\",\n \"Q2\",\n \"Q3\",\n \"Q4\"\n ],\n narrow: [\n \"1\",\n \"2\",\n \"3\",\n \"4\"\n ],\n wide: [\n \"1st quarter\",\n \"2nd quarter\",\n \"3rd quarter\",\n \"4th quarter\"\n ]\n },\n \"stand-alone\": {\n abbreviated: [\n \"Q1\",\n \"Q2\",\n \"Q3\",\n \"Q4\"\n ],\n narrow: [\n \"1\",\n \"2\",\n \"3\",\n \"4\"\n ],\n wide: [\n \"1st quarter\",\n \"2nd quarter\",\n \"3rd quarter\",\n \"4th quarter\"\n ]\n }\n },\n dayPeriods: {\n format: {\n abbreviated: {\n midnight: \"midnight\",\n am: \"AM\",\n \"am-alt-variant\": \"am\",\n noon: \"noon\",\n pm: \"PM\",\n \"pm-alt-variant\": \"pm\",\n morning1: \"in the morning\",\n afternoon1: \"in the afternoon\",\n evening1: \"in the evening\",\n night1: \"at night\"\n },\n narrow: {\n midnight: \"mi\",\n am: \"a\",\n \"am-alt-variant\": \"am\",\n noon: \"n\",\n pm: \"p\",\n \"pm-alt-variant\": \"pm\",\n morning1: \"in the morning\",\n afternoon1: \"in the afternoon\",\n evening1: \"in the evening\",\n night1: \"at night\"\n },\n wide: {\n midnight: \"midnight\",\n am: \"AM\",\n \"am-alt-variant\": \"am\",\n noon: \"noon\",\n pm: \"PM\",\n \"pm-alt-variant\": \"pm\",\n morning1: \"in the morning\",\n afternoon1: \"in the afternoon\",\n evening1: \"in the evening\",\n night1: \"at night\"\n }\n },\n \"stand-alone\": {\n abbreviated: {\n midnight: \"midnight\",\n am: \"AM\",\n \"am-alt-variant\": \"am\",\n noon: \"noon\",\n pm: \"PM\",\n \"pm-alt-variant\": \"pm\",\n morning1: \"morning\",\n afternoon1: \"afternoon\",\n evening1: \"evening\",\n night1: \"night\"\n },\n narrow: {\n midnight: \"midnight\",\n am: \"AM\",\n \"am-alt-variant\": \"am\",\n noon: \"noon\",\n pm: \"PM\",\n \"pm-alt-variant\": \"pm\",\n morning1: \"morning\",\n afternoon1: \"afternoon\",\n evening1: \"evening\",\n night1: \"night\"\n },\n wide: {\n midnight: \"midnight\",\n am: \"AM\",\n \"am-alt-variant\": \"am\",\n noon: \"noon\",\n pm: \"PM\",\n \"pm-alt-variant\": \"pm\",\n morning1: \"morning\",\n afternoon1: \"afternoon\",\n evening1: \"evening\",\n night1: \"night\"\n }\n }\n },\n eras: {\n format: {\n wide: {\n \"0\": \"Before Christ\",\n \"1\": \"Anno Domini\",\n \"0-alt-variant\": \"Before Common Era\",\n \"1-alt-variant\": \"Common Era\"\n },\n abbreviated: {\n \"0\": \"BC\",\n \"1\": \"AD\",\n \"0-alt-variant\": \"BCE\",\n \"1-alt-variant\": \"CE\"\n },\n narrow: {\n \"0\": \"B\",\n \"1\": \"A\",\n \"0-alt-variant\": \"BCE\",\n \"1-alt-variant\": \"CE\"\n }\n }\n },\n dateFields: {\n era: {\n wide: \"era\"\n },\n year: {\n wide: \"year\",\n short: \"yr.\",\n narrow: \"yr.\"\n },\n quarter: {\n wide: \"quarter\",\n short: \"qtr.\",\n narrow: \"qtr.\"\n },\n month: {\n wide: \"month\",\n short: \"mo.\",\n narrow: \"mo.\"\n },\n week: {\n wide: \"week\",\n short: \"wk.\",\n narrow: \"wk.\"\n },\n day: {\n wide: \"day\",\n short: \"day\",\n narrow: \"day\"\n },\n weekday: {\n wide: \"day of the week\"\n },\n dayperiod: {\n wide: \"AM/PM\"\n },\n hour: {\n wide: \"hour\",\n short: \"hr.\",\n narrow: \"hr.\"\n },\n minute: {\n wide: \"minute\",\n short: \"min.\",\n narrow: \"min.\"\n },\n second: {\n wide: \"second\",\n short: \"sec.\",\n narrow: \"sec.\"\n },\n millisecond: {\n wide: \"millisecond\",\n short: \"ms\",\n narrow: \"ms\"\n },\n zone: {\n wide: \"time zone\"\n }\n }\n }\n },\n supplemental: {\n likelySubtags: {\n en: \"en-Latn-US\"\n },\n currencyData: {\n region: {\n US: [\n {\n USD: {\n _from: \"1792-01-01\"\n }\n }\n ]\n }\n },\n weekData: {\n firstDay: {\n US: \"sun\"\n },\n weekendStart: {\n \"001\": \"sat\"\n },\n weekendEnd: {\n \"001\": \"sun\"\n }\n }\n }\n};\nexport default defaultData;","export default function isString(value) {\n return typeof value === \"string\";\n}","import errorDetails from './error-details';\n\nvar formatRegExp = /\\{(\\d+)}?\\}/g;\n\nvar IntlError = function IntlError(ref) {\n var name = ref.name;\n var message = ref.message;\n\n if (!name || !message) {\n throw new Error(\"{ name: string, message: string } object is required!\");\n }\n\n this.name = name;\n this.message = message;\n};\n\nIntlError.prototype.formatMessage = function formatMessage () {\n var values = [], len = arguments.length;\n while ( len-- ) values[ len ] = arguments[ len ];\n\n var flattenValues = flatten(values);\n\n var formattedMessage = this.message.replace(formatRegExp, function(match, index) {\n return flattenValues[parseInt(index, 10)];\n });\n\n return ((this.name) + \": \" + formattedMessage);\n};\n\nIntlError.prototype.error = function error () {\n var values = [], len = arguments.length;\n while ( len-- ) values[ len ] = arguments[ len ];\n\n return new Error(this.formatMessage(values));\n};\n\nvar flatten = function(arr) {\n return arr.reduce(function (a, b) { return a.concat(b); }, []);\n};\n\nvar toIntlErrors = function(errors) {\n var predicate = function(prev, name) {\n prev[name] = new IntlError({ name: name, message: errors[name] });\n return prev;\n };\n\n return Object.keys(errors).reduce(predicate, {});\n};\n\nvar errors = toIntlErrors(errorDetails);\n\nexport {\n errors,\n IntlError,\n toIntlErrors\n};\n","//The error is represented by unique name and corresponding message\n//The message can contain placeholders with index, e.g. {0}, {1}\n\nexport default {\n \"NoLocale\": \"Missing locale info for '{0}'\",\n \"NoCurrency\": \"Cannot determine currency information. Please load the locale currencies data.\",\n \"NoSupplementalCurrency\": \"Cannot determine currency. Please load the supplemental currencyData.\",\n \"NoCurrencyRegion\": \"No currency data for region '{0}'\",\n \"NoCurrencyDisplay\": \"Cannot determine currency display information. Please load the locale currencies data. The default culture does not include the all currencies data.\",\n \"NoGMTInfo\": \"Cannot determine locale GMT format. Please load the locale timeZoneNames data.\",\n \"NoWeekData\": \"Cannot determine locale first day of week. Please load the supplemental weekData.\",\n \"NoFirstDay\": \"Cannot determine locale first day of week. Please load the supplemental weekData. The default culture includes only the 'en-US' first day info.\",\n \"NoValidCurrency\": \"Cannot determine a default currency for the {0} locale. Please specify explicitly the currency with the format options.\",\n \"NoDateFieldNames\": \"Cannot determine the locale date field names. Please load the locale dateFields data.\"\n};\n","import defaultData from './default-data';\nimport isString from '../common/is-string';\nimport { errors } from '../errors';\n\nfunction availableLocaleInfo(fullName, suffixes) {\n var parts = fullName.split(\"-\");\n var language = parts[0];\n var script = parts[1];\n var territory = parts[2];\n\n return cldr[fullName] || (suffixes.indexOf(territory) !== -1 && cldr[language + \"-\" + territory]) || (suffixes.indexOf(script) !== -1 && cldr[language + \"-\" + script]) || cldr[language];\n}\n\nfunction localeFullName(language, suffixes) {\n var likelySubtags = cldr.supplemental.likelySubtags;\n\n for (var idx = 0; idx < suffixes.length; idx++) {\n var name = likelySubtags[language + \"-\" + suffixes[idx ]];\n if (name) {\n return name;\n }\n }\n\n if (likelySubtags[language]) {\n return likelySubtags[language];\n }\n}\n\nexport var cldr = defaultData;\n\nexport function getLocaleInfo(locale) {\n var info;\n if (isString(locale)) {\n info = localeInfo(locale);\n } else {\n info = locale;\n }\n return info;\n}\n\nexport function localeInfo(locale) {\n if (cldr[locale]) {\n return cldr[locale];\n }\n\n var likelySubtags = cldr.supplemental.likelySubtags;\n if (likelySubtags) {\n var parts = locale.split(\"-\");\n var language = parts[0];\n var suffixes = parts.slice(1);\n var fullName = localeFullName(language, suffixes);\n var info = fullName ? availableLocaleInfo(fullName, suffixes) : null;\n if (info) {\n return info;\n }\n }\n\n throw errors.NoLocale.error(locale);\n}\n","import { cldr } from './info';\n\nfunction territoryFromName(name, identity) {\n var likelySubtags = cldr.supplemental.likelySubtags;\n var parts = name.split(\"-\");\n if (likelySubtags) {\n var likelyName = likelySubtags[name] || likelySubtags[parts[0]];\n if (likelyName) {\n parts = likelyName.split(\"-\");\n }\n }\n\n if (identity) {\n for (var idx = parts.length - 1; idx >= 1; idx--) {\n var part = parts[idx];\n if (part === identity.variant || part === identity.script) {\n parts.splice(idx, 1);\n }\n }\n }\n\n var length = parts.length;\n\n if (length > 1) {\n var territory = parts[length - 1];\n return territory.toUpperCase();\n }\n}\n\nexport default function localeTerritory(info) {\n if (info.territory) {\n return info.territory;\n }\n\n var name = info.name;\n var identity = info.identity;\n var territory;\n\n if (identity && identity.territory) {\n territory = identity.territory;\n } else {\n territory = territoryFromName(name, identity);\n }\n\n info.territory = territory;\n\n return territory;\n}\n","export var DECIMAL = \"decimal\";\nexport var CURRENCY = \"currency\";\nexport var ACCOUNTING = \"accounting\";\nexport var PERCENT = \"percent\";\nexport var SCIENTIFIC = \"scientific\";\n\nexport var CURRENCY_PLACEHOLDER = \"$\";\nexport var PERCENT_PLACEHOLDER = \"%\";\nexport var NUMBER_PLACEHOLDER = \"n\";\n\nexport var LIST_SEPARATOR = \";\";\nexport var GROUP_SEPARATOR = \",\";\n\nexport var POINT = \".\";\nexport var EMPTY = \"\";\n\nexport var DEFAULT_LOCALE = \"en\";\n\n","import { getLocaleInfo } from './info';\nimport { EMPTY } from '../common/constants';\n\nfunction lowerArray(arr) {\n var result = [];\n for (var idx = 0; idx < arr.length; idx++) {\n result.push(arr[idx].toLowerCase());\n }\n return result;\n}\n\nfunction lowerObject(obj) {\n var result = {};\n for (var field in obj) {\n result[field] = obj[field].toLowerCase();\n }\n return result;\n}\n\nfunction cloneLower(obj) {\n var result = Array.isArray(obj) ? lowerArray(obj) : lowerObject(obj);\n return result;\n}\n\nexport default function dateFormatNames(locale, options) {\n var type = options.type;\n var nameType = options.nameType;\n var standAlone = options.standAlone;\n var lower = options.lower;\n var info = getLocaleInfo(locale);\n var formatType = standAlone ? \"stand-alone\" : \"format\";\n var lowerNameType = (lower ? \"lower-\" : EMPTY) + nameType;\n var formatNames = info.calendar[type][formatType];\n var result = formatNames[lowerNameType];\n if (!result && lower) {\n result = formatNames[lowerNameType] = cloneLower(formatNames[nameType]);\n }\n return result;\n}","export default function parseRangeDate(value) {\n var parts = value.split('-');\n var year = parseInt(parts[0], 10);\n var month = parseInt(parts[1], 10) - 1;\n var day = parseInt(parts[2], 10);\n\n return new Date(year, month, day);\n}\n","import { cldr, getLocaleInfo } from './info';\nimport { errors } from '../errors';\nimport localeTerritory from './territory';\nimport parseRangeDate from './parse-range-date';\n\n/* eslint-disable consistent-return */\n\nvar NoCurrency = errors.NoCurrency;\nvar NoCurrencyDisplay = errors.NoCurrencyDisplay;\nvar NoSupplementalCurrency = errors.NoSupplementalCurrency;\nvar NoCurrencyRegion = errors.NoCurrencyRegion;\nvar NoValidCurrency = errors.NoValidCurrency;\n\nvar DEFAULT_CURRENCY_FRACTIONS = 2;\nvar SYMBOL = \"symbol\";\nvar INVALID_CURRENCY_CODE = 'XXX';\n\nvar GLOBAL_CURRENCIES = {\n '001': 'USD', // 001 refers to world. not sure if it is correct to assume USD but seems better than throw an error\n '150': 'EUR' // 150 territory for Europe\n\n};\n\nfunction getCurrencyInfo(locale, currency, throwIfNoValid) {\n var info = getLocaleInfo(locale);\n var currencies = info.numbers.currencies;\n if (!currencies) {\n if (throwIfNoValid) {\n throw NoCurrency.error();\n }\n\n return;\n }\n\n var currencyDisplayInfo = currencies[currency];\n\n if (!currencyDisplayInfo) {\n if (throwIfNoValid) {\n throw NoCurrencyDisplay.error();\n }\n\n return;\n }\n\n return currencyDisplayInfo;\n}\n\nfunction lengthComparer(a, b) {\n return b.length - a.length;\n}\n\nfunction regionCurrency(regionCurrencies) {\n var latestValidUntil, latestValidUntilRange;\n var latestStillValid, latestStillValidDate;\n\n for (var idx = 0; idx < regionCurrencies.length; idx++) {\n var currency = regionCurrencies[idx];\n var code = Object.keys(currency)[0];\n var info = currency[code];\n if (code !== INVALID_CURRENCY_CODE && info._tender !== 'false' && info._from) {\n if (!info._to) {\n var stillValidDate = parseRangeDate(info._from);\n if (!latestStillValidDate || latestStillValidDate < stillValidDate) {\n latestStillValid = code;\n latestStillValidDate = stillValidDate;\n }\n } else if (!latestStillValid) {\n var validFrom = parseRangeDate(info._from);\n var validTo = parseRangeDate(info._to);\n if (!latestValidUntilRange || latestValidUntilRange.to < validTo || latestValidUntilRange.from < validFrom) {\n latestValidUntil = code;\n latestValidUntilRange = {\n from: validFrom,\n to: validTo\n };\n }\n }\n }\n }\n\n return latestStillValid || latestValidUntil;\n}\n\nexport function currencyDisplays(locale, currency, throwIfNoValid) {\n if ( throwIfNoValid === void 0 ) throwIfNoValid = true;\n\n var currencyInfo = getCurrencyInfo(locale, currency, throwIfNoValid);\n if (!currencyInfo) {\n return;\n }\n\n if (!currencyInfo.displays) {\n var displays = [ currency ];\n for (var field in currencyInfo) {\n displays.push(currencyInfo[field]);\n }\n displays.sort(lengthComparer);\n currencyInfo.displays = displays;\n }\n\n return currencyInfo.displays;\n}\n\nexport function currencyDisplay(locale, options) {\n var value = options.value;\n var currency = options.currency;\n var currencyDisplay = options.currencyDisplay; if ( currencyDisplay === void 0 ) currencyDisplay = SYMBOL;\n\n if (currencyDisplay === \"code\") {\n return currency;\n }\n\n var currencyInfo = getCurrencyInfo(locale, currency, true);\n var result;\n\n if (currencyDisplay === SYMBOL) {\n result = currencyInfo[\"symbol-alt-narrow\"] || currencyInfo[SYMBOL];\n } else {\n if (typeof value === undefined || value !== 1) {\n result = currencyInfo[\"displayName-count-other\"];\n } else {\n result = currencyInfo[\"displayName-count-one\"];\n }\n }\n\n return result;\n}\n\nexport function currencyFractionOptions(code) {\n var minimumFractionDigits = DEFAULT_CURRENCY_FRACTIONS;\n var maximumFractionDigits = DEFAULT_CURRENCY_FRACTIONS;\n\n var fractions = ((cldr.supplemental.currencyData || {}).fractions || {})[code];\n\n if (fractions && fractions._digits) {\n maximumFractionDigits = minimumFractionDigits = parseInt(fractions._digits, 10);\n }\n\n return {\n minimumFractionDigits: minimumFractionDigits,\n maximumFractionDigits: maximumFractionDigits\n };\n}\n\nexport function territoryCurrencyCode(territory, throwIfNoValid) {\n if ( throwIfNoValid === void 0 ) throwIfNoValid = true;\n\n if (GLOBAL_CURRENCIES[territory]) {\n return GLOBAL_CURRENCIES[territory];\n }\n\n var currencyData = cldr.supplemental.currencyData;\n if (!currencyData) {\n if (throwIfNoValid) {\n throw NoSupplementalCurrency.error();\n }\n\n return;\n }\n\n var regionCurrencies = currencyData.region[territory];\n\n if (!regionCurrencies) {\n if (throwIfNoValid) {\n throw NoCurrencyRegion.error(territory);\n }\n\n return;\n }\n\n var currencyCode = regionCurrency(regionCurrencies);\n\n return currencyCode;\n}\n\nexport function localeCurrency(locale, throwIfNoValid) {\n var info = getLocaleInfo(locale);\n var numbers = info.numbers;\n\n if (!numbers.localeCurrency) {\n var currency = territoryCurrencyCode(localeTerritory(info), throwIfNoValid);\n\n if (!currency && throwIfNoValid) {\n throw NoValidCurrency.error(info.name);\n }\n\n numbers.localeCurrency = currency;\n }\n\n return numbers.localeCurrency;\n}\n","\nexport var DAYS_OF_WEEK = [ \"sun\", \"mon\", \"tue\", \"wed\", \"thu\", \"fri\", \"sat\" ];\n\nexport var DEFAULT_TERRITORY = '001';\n","import { cldr, getLocaleInfo } from './info';\nimport localeTerritory from './territory';\n\nimport { DAYS_OF_WEEK, DEFAULT_TERRITORY } from './constants';\nimport { errors } from '../errors';\n\nvar NoWeekData = errors.NoWeekData;\nvar NoFirstDay = errors.NoFirstDay;\n\nexport default function firstDay(locale) {\n var info = getLocaleInfo(locale);\n\n if (!isNaN(info.firstDay)) {\n return info.firstDay;\n }\n\n var weekData = cldr.supplemental.weekData;\n if (!weekData) {\n throw NoWeekData.error();\n }\n\n var firstDay = weekData.firstDay[localeTerritory(info)] || weekData.firstDay[DEFAULT_TERRITORY];\n\n if (!firstDay) {\n throw NoFirstDay.error();\n }\n\n info.firstDay = DAYS_OF_WEEK.indexOf(firstDay);\n\n return info.firstDay;\n}\n","import { cldr, getLocaleInfo } from './info';\nimport localeTerritory from './territory';\n\nimport { DAYS_OF_WEEK, DEFAULT_TERRITORY } from './constants';\nimport { errors } from '../errors';\n\nvar NoWeekData = errors.NoWeekData;\n\nexport default function weekendRange(locale) {\n var info = getLocaleInfo(locale);\n\n if (info.weekendRange) {\n return info.weekendRange;\n }\n\n var weekData = cldr.supplemental.weekData;\n if (!weekData) {\n throw NoWeekData.error();\n }\n\n var territory = localeTerritory(info);\n var start = weekData.weekendStart[territory] || weekData.weekendStart[DEFAULT_TERRITORY];\n var end = weekData.weekendEnd[territory] || weekData.weekendEnd[DEFAULT_TERRITORY];\n\n info.weekendRange = {\n start: DAYS_OF_WEEK.indexOf(start),\n end: DAYS_OF_WEEK.indexOf(end)\n };\n\n return info.weekendRange;\n}\n","export default function isNegativeZero(value) {\n return (1 / value === -Infinity);\n}\n","import { currencyDisplay, localeCurrency } from '../cldr';\n\nexport default function formatCurrencySymbol(info, options) {\n if ( options === void 0 ) options = {};\n\n if (!options.currency) {\n options.currency = localeCurrency(info, true);\n }\n\n var display = currencyDisplay(info, options);\n\n return display;\n}\n","export default function groupInteger(number, start, end, options, info) {\n var symbols = info.numbers.symbols;\n var decimalIndex = number.indexOf(symbols.decimal);\n var groupSizes = options.groupSize.slice();\n var groupSize = groupSizes.shift();\n\n var integerEnd = decimalIndex !== -1 ? decimalIndex : end + 1;\n\n var integer = number.substring(start, integerEnd);\n var result = number;\n var integerLength = integer.length;\n\n if (integerLength >= groupSize) {\n var idx = integerLength;\n var parts = [];\n\n while (idx > -1) {\n var value = integer.substring(idx - groupSize, idx);\n if (value) {\n parts.push(value);\n }\n idx -= groupSize;\n var newGroupSize = groupSizes.shift();\n groupSize = newGroupSize !== undefined ? newGroupSize : groupSize;\n\n if (groupSize === 0) {\n value = integer.substring(0, idx);\n if (value) {\n parts.push(value);\n }\n break;\n }\n }\n\n integer = parts.reverse().join(symbols.group);\n result = number.substring(0, start) + integer + number.substring(integerEnd);\n }\n\n return result;\n}","import { CURRENCY, ACCOUNTING } from '../common/constants';\n\nexport default function isCurrencyStyle(style) {\n return style === CURRENCY || style === ACCOUNTING;\n}","export default function pad(number, digits, right) {\n if ( digits === void 0 ) digits = 2;\n if ( right === void 0 ) right = false;\n\n var count = digits - String(number).length;\n var result = number;\n\n if (count > 0) {\n var padString = new Array(count + 1).join(\"0\");\n result = right ? number + padString : padString + number;\n }\n\n return result;\n}","var MAX_PRECISION = 20;\n\nexport default function round(value, precision) {\n var result = value;\n var decimals = precision || 0;\n\n result = result.toString().split('e');\n result = Math.round(Number(result[0] + 'e' + (result[1] ? (Number(result[1]) + decimals) : decimals)));\n\n result = result.toString().split('e');\n result = Number(result[0] + 'e' + (result[1] ? (Number(result[1]) - decimals) : -decimals));\n\n return result.toFixed(Math.min(decimals, MAX_PRECISION));\n}","import { PERCENT, SCIENTIFIC, NUMBER_PLACEHOLDER, CURRENCY_PLACEHOLDER, PERCENT_PLACEHOLDER, EMPTY, POINT } from '../common/constants';\nimport isNegativeZero from '../common/is-negative-zero';\nimport formatCurrencySymbol from './format-currency-symbol';\nimport groupInteger from './group-integer';\nimport isCurrencyStyle from './is-currency-style';\nimport pad from '../common/pad';\nimport round from '../common/round';\nimport { currencyFractionOptions } from '../cldr';\n\nvar DEFAULT_DECIMAL_ROUNDING = 3;\nvar DEFAULT_PERCENT_ROUNDING = 0;\n\nvar trailingZeroRegex = /0+$/;\n\nfunction fractionOptions(options) {\n var minimumFractionDigits = options.minimumFractionDigits;\n var maximumFractionDigits = options.maximumFractionDigits;\n var style = options.style;\n var isCurrency = isCurrencyStyle(style);\n var currencyFractions;\n if (isCurrency) {\n currencyFractions = currencyFractionOptions(options.currency);\n }\n\n if (minimumFractionDigits === undefined) {\n minimumFractionDigits = isCurrency ? currencyFractions.minimumFractionDigits : 0;\n }\n\n if (maximumFractionDigits === undefined) {\n if (style === PERCENT) {\n maximumFractionDigits = Math.max(minimumFractionDigits, DEFAULT_PERCENT_ROUNDING);\n } else if (isCurrency) {\n maximumFractionDigits = Math.max(minimumFractionDigits, currencyFractions.maximumFractionDigits);\n } else {\n maximumFractionDigits = Math.max(minimumFractionDigits, DEFAULT_DECIMAL_ROUNDING);\n }\n }\n\n return {\n minimumFractionDigits: minimumFractionDigits,\n maximumFractionDigits: maximumFractionDigits\n };\n}\n\nfunction applyPattern(value, pattern, symbol) {\n var result = EMPTY;\n for (var idx = 0, length = pattern.length; idx < length; idx++) {\n var ch = pattern.charAt(idx);\n\n if (ch === NUMBER_PLACEHOLDER) {\n result += value;\n } else if (ch === CURRENCY_PLACEHOLDER || ch === PERCENT_PLACEHOLDER) {\n result += symbol;\n } else {\n result += ch;\n }\n }\n return result;\n}\n\nfunction currencyUnitPattern(info, value) {\n var currencyInfo = info.numbers.currency;\n var pattern = value !== 1 ? currencyInfo[\"unitPattern-count-other\"] : currencyInfo[\"unitPattern-count-one\"];\n if (value < 0) {\n pattern = pattern.replace(NUMBER_PLACEHOLDER, (\"-\" + NUMBER_PLACEHOLDER));\n }\n\n return pattern;\n}\n\n\nexport default function standardNumberFormat(number, options, info) {\n var symbols = info.numbers.symbols;\n var style = options.style;\n var isCurrency = isCurrencyStyle(style);\n\n //return number in exponential format\n if (style === SCIENTIFIC) {\n var exponential = options.minimumFractionDigits !== undefined ? number.toExponential(options.minimumFractionDigits) : number.toExponential();\n return exponential.replace(POINT, symbols.decimal);\n }\n\n var value = number;\n var symbol;\n\n if (isCurrency) {\n options.value = value;\n symbol = formatCurrencySymbol(info, options);\n }\n\n if (style === PERCENT) {\n value *= 100;\n symbol = symbols.percentSign;\n }\n\n var ref = fractionOptions(options);\n var minimumFractionDigits = ref.minimumFractionDigits;\n var maximumFractionDigits = ref.maximumFractionDigits;\n\n value = round(value, maximumFractionDigits);\n\n var negative = value < 0;\n var negativeZero = isNegativeZero(number);\n\n var parts = value.split(POINT);\n\n var integer = parts[0];\n var fraction = pad(parts[1] ? parts[1].replace(trailingZeroRegex, EMPTY) : EMPTY, minimumFractionDigits, true);\n\n //exclude \"-\" if number is negative.\n if (negative) {\n integer = integer.substring(1);\n }\n\n if (options.minimumIntegerDigits) {\n integer = pad(integer, options.minimumIntegerDigits);\n }\n\n var formattedValue = options.useGrouping !== false ? groupInteger(integer, 0, integer.length, options, info) : integer;\n\n if (fraction) {\n formattedValue += symbols.decimal + fraction;\n }\n\n var pattern;\n\n if (isCurrency && options.currencyDisplay === \"name\") {\n pattern = currencyUnitPattern(info, number);\n } else {\n var patterns = options.patterns;\n pattern = (negative || negativeZero) ? patterns[1] || (\"-\" + patterns[0]) : patterns[0];\n }\n\n if (pattern === NUMBER_PLACEHOLDER && !negative) {\n return formattedValue;\n }\n\n var result = applyPattern(formattedValue, pattern, symbol);\n\n return result;\n}","import { PERCENT_PLACEHOLDER, CURRENCY_PLACEHOLDER, CURRENCY, PERCENT, EMPTY } from '../common/constants';\nimport formatCurrencySymbol from './format-currency-symbol';\n\nvar literalRegExp = /(\\\\.)|(['][^']*[']?)|([\"][^\"]*[\"]?)/g;\nvar PLACEHOLDER = \"__??__\";\n\nexport function setStyleOptions(formatOptions, info) {\n var format = formatOptions.format;\n\n //multiply number if the format has percent\n if (format.indexOf(PERCENT_PLACEHOLDER) !== -1) {\n formatOptions.style = PERCENT;\n formatOptions.symbol = info.numbers.symbols.percentSign;\n formatOptions.number *= 100;\n }\n\n if (format.indexOf(CURRENCY_PLACEHOLDER) !== -1) {\n formatOptions.style = CURRENCY;\n formatOptions.symbol = formatCurrencySymbol(info);\n }\n}\n\nexport function setFormatLiterals(formatOptions) {\n var format = formatOptions.format;\n if (format.indexOf(\"'\") > -1 || format.indexOf(\"\\\"\") > -1 || format.indexOf(\"\\\\\") > -1) {\n var literals = formatOptions.literals = [];\n formatOptions.format = format.replace(literalRegExp, function(match) {\n var quoteChar = match.charAt(0).replace(\"\\\\\", EMPTY);\n var literal = match.slice(1).replace(quoteChar, EMPTY);\n\n literals.push(literal);\n\n return PLACEHOLDER;\n });\n }\n}\n\nexport function replaceLiterals(number, literals) {\n var result = number;\n if (literals) {\n var length = literals.length;\n for (var idx = 0; idx < length; idx++) {\n result = result.replace(PLACEHOLDER, literals[idx]);\n }\n }\n return result;\n}","import { CURRENCY, PERCENT, LIST_SEPARATOR, GROUP_SEPARATOR, CURRENCY_PLACEHOLDER, PERCENT_PLACEHOLDER, POINT, EMPTY } from '../common/constants';\nimport isNegativeZero from '../common/is-negative-zero';\nimport groupInteger from './group-integer';\nimport round from '../common/round';\nimport { setStyleOptions, setFormatLiterals, replaceLiterals } from './utils';\n\nvar SHARP = \"#\";\nvar ZERO = \"0\";\n\nvar trailingZerosRegExp = /(\\.(?:[0-9]*[1-9])?)0+$/g;\nvar trailingPointRegExp = /\\.$/;\nvar commaRegExp = /\\,/g;\n\nfunction trimTrailingZeros(value, lastZero) {\n var trimRegex;\n\n if (lastZero === 0) {\n trimRegex = trailingZerosRegExp;\n } else {\n trimRegex = new RegExp((\"(\\\\.[0-9]{\" + lastZero + \"}[1-9]*)0+$\"), 'g');\n }\n\n return value.replace(trimRegex, '$1').replace(trailingPointRegExp, EMPTY);\n}\n\nfunction roundNumber(formatOptions) {\n var number = formatOptions.number;\n var format = formatOptions.format;\n var decimalIndex = format.indexOf(POINT);\n\n if (decimalIndex !== -1) {\n var zeroIndex = format.lastIndexOf(ZERO) - decimalIndex;\n var sharpIndex = format.lastIndexOf(SHARP) - decimalIndex;\n var hasZero = zeroIndex > -1;\n var hasSharp = sharpIndex > -1;\n var fraction = number.toString().split(\"e\");\n\n if (fraction[1]) {\n fraction = round(number, Math.abs(fraction[1]));\n } else {\n fraction = fraction[0];\n }\n fraction = fraction.split(POINT)[1] || EMPTY;\n\n var precision = fraction.length;\n var trailingZeros = -1;\n\n if (!hasZero && !hasSharp) {\n formatOptions.format = format.substring(0, decimalIndex) + format.substring(decimalIndex + 1);\n decimalIndex = -1;\n precision = 0;\n } else if (hasZero && zeroIndex > sharpIndex) {\n precision = zeroIndex;\n } else if (sharpIndex > zeroIndex) {\n if (hasSharp && precision > sharpIndex) {\n precision = sharpIndex;\n } else if (hasZero && precision < zeroIndex) {\n precision = zeroIndex;\n }\n\n trailingZeros = hasZero ? zeroIndex : 0;\n }\n\n if (precision > -1) {\n number = round(number, precision);\n if (trailingZeros > -1) {\n number = trimTrailingZeros(number, trailingZeros);\n }\n }\n } else {\n number = round(number);\n }\n\n if (formatOptions.negative && (number * -1) >= 0 && !formatOptions.negativeZero) {\n formatOptions.negative = false;\n }\n\n formatOptions.number = number;\n formatOptions.decimalIndex = decimalIndex;\n}\n\nfunction isConstantFormat(format) {\n return format.indexOf(SHARP) === -1 && format.indexOf(ZERO) === -1;\n}\n\nfunction setValueSpecificFormat(formatOptions) {\n var number = formatOptions.number;\n var format = formatOptions.format;\n format = format.split(LIST_SEPARATOR);\n if ((formatOptions.negative || formatOptions.negativeZero) && format[1]) {\n format = format[1];\n formatOptions.hasNegativeFormat = true;\n } else if (number === 0) {\n var zeroFormat = format[2];\n format = zeroFormat || format[0];\n if (zeroFormat && isConstantFormat(zeroFormat)) {\n formatOptions.constant = zeroFormat;\n }\n } else {\n format = format[0];\n }\n\n formatOptions.format = format;\n}\n\nfunction setGroupOptions(formatOptions) {\n formatOptions.hasGroup = formatOptions.format.indexOf(GROUP_SEPARATOR) > -1;\n if (formatOptions.hasGroup) {\n formatOptions.format = formatOptions.format.replace(commaRegExp, EMPTY);\n }\n}\n\nfunction placeholderIndex(index1, index2, start) {\n var index;\n if (index1 === -1 && index2 !== -1) {\n index = index2;\n } else if (index1 !== -1 && index2 === -1) {\n index = index1;\n } else {\n index = start ? Math.min(index1, index2) : Math.max(index1, index2);\n }\n return index;\n}\n\nfunction setPlaceholderIndices(formatOptions) {\n var format = formatOptions.format;\n var sharpIndex = format.indexOf(SHARP);\n var zeroIndex = format.indexOf(ZERO);\n\n var start = placeholderIndex(sharpIndex, zeroIndex, true);\n\n sharpIndex = format.lastIndexOf(SHARP);\n zeroIndex = format.lastIndexOf(ZERO);\n\n var end = placeholderIndex(sharpIndex, zeroIndex);\n\n if (start === format.length) {\n end = start;\n }\n\n formatOptions.start = start;\n formatOptions.end = end;\n formatOptions.lastZeroIndex = zeroIndex;\n}\n\nfunction replaceStyleSymbols(number, style, symbol) {\n var result = number;\n if (style === CURRENCY || style === PERCENT) {\n result = EMPTY;\n for (var idx = 0, length = number.length; idx < length; idx++) {\n var ch = number.charAt(idx);\n result += (ch === CURRENCY_PLACEHOLDER || ch === PERCENT_PLACEHOLDER) ? symbol : ch;\n }\n }\n return result;\n}\n\nfunction replacePlaceHolders(formatOptions, info) {\n var start = formatOptions.start;\n var end = formatOptions.end;\n var negative = formatOptions.negative;\n var negativeZero = formatOptions.negativeZero;\n var format = formatOptions.format;\n var decimalIndex = formatOptions.decimalIndex;\n var lastZeroIndex = formatOptions.lastZeroIndex;\n var hasNegativeFormat = formatOptions.hasNegativeFormat;\n var hasGroup = formatOptions.hasGroup;\n var number = formatOptions.number;\n var value = number.toString().split(POINT);\n var length = format.length;\n var integer = value[0];\n var fraction = value[1] || EMPTY;\n var integerLength = integer.length;\n var replacement = EMPTY;\n\n number = format.substring(0, start);\n\n if ((negative || negativeZero) && !hasNegativeFormat) {\n number += \"-\";\n }\n\n for (var idx = start; idx < length; idx++) {\n var ch = format.charAt(idx);\n\n if (decimalIndex === -1) {\n if (end - idx < integerLength) {\n\n number += integer;\n break;\n }\n } else {\n if (lastZeroIndex !== -1 && lastZeroIndex < idx) {\n replacement = EMPTY;\n }\n\n if ((decimalIndex - idx) <= integerLength && decimalIndex - idx > -1) {\n number += integer;\n idx = decimalIndex;\n }\n\n if (decimalIndex === idx) {\n number += (fraction ? info.numbers.symbols.decimal : EMPTY) + fraction;\n idx += end - decimalIndex + 1;\n continue;\n }\n }\n\n if (ch === ZERO) {\n number += ch;\n replacement = ch;\n } else if (ch === SHARP) {\n number += replacement;\n }\n }\n\n if (hasGroup) {\n number = groupInteger(number, start + (negative && !hasNegativeFormat ? 1 : 0), Math.max(end, (integerLength + start)), info.numbers.decimal, info);\n }\n\n if (end >= start) {\n number += format.substring(end + 1);\n }\n\n return number;\n}\n\nfunction applyCustomFormat(formatOptions, info) {\n var number = formatOptions.number;\n if (formatOptions.start !== -1) {\n number = replacePlaceHolders(formatOptions, info);\n number = replaceStyleSymbols(number, formatOptions.style, formatOptions.symbol);\n number = replaceLiterals(number, formatOptions.literals);\n }\n\n return number;\n}\n\nexport default function customNumberFormat(number, format, info) {\n var formatOptions = {\n negative: number < 0,\n number: Math.abs(number),\n negativeZero: isNegativeZero(number),\n format: format\n };\n\n setValueSpecificFormat(formatOptions);\n\n if (formatOptions.constant) {\n return formatOptions.constant;\n }\n\n setFormatLiterals(formatOptions);\n setStyleOptions(formatOptions, info);\n setGroupOptions(formatOptions);\n roundNumber(formatOptions);\n setPlaceholderIndices(formatOptions);\n\n return applyCustomFormat(formatOptions, info);\n}","import { CURRENCY, ACCOUNTING, DECIMAL, PERCENT, SCIENTIFIC } from '../common/constants';\nimport isString from '../common/is-string';\n\nvar standardFormatRegExp = /^(n|c|p|e|a)(\\d*)$/i;\n\nfunction standardFormatOptions(format) {\n var formatAndPrecision = standardFormatRegExp.exec(format);\n\n if (formatAndPrecision) {\n var options = {\n style: DECIMAL\n };\n\n var style = formatAndPrecision[1].toLowerCase();\n\n if (style === \"c\") {\n options.style = CURRENCY;\n } else if (style === \"a\") {\n options.style = ACCOUNTING;\n } else if (style === \"p\") {\n options.style = PERCENT;\n } else if (style === \"e\") {\n options.style = SCIENTIFIC;\n }\n\n if (formatAndPrecision[2]) {\n options.minimumFractionDigits = options.maximumFractionDigits = parseInt(formatAndPrecision[2], 10);\n }\n\n return options;\n }\n}\n\nexport default function formatOptions(format) {\n var options;\n if (isString(format)) {\n options = standardFormatOptions(format);\n } else {\n options = format;\n }\n\n return options;\n}","var formatRegExp = /\\{(\\d+)}/g;\n\nexport default function formatString(format) {\n var values = arguments;\n\n return format.replace(formatRegExp, function (match, index) {\n var value = values[parseInt(index, 10) + 1];\n\n return value;\n });\n}","import formatString from '../common/format-string';\nimport isString from '../common/is-string';\nimport { EMPTY } from '../common/constants';\n\nvar REMOVAL_PENALTY = 120;\nvar ADDITION_PENALTY = 20;\nvar LENGHT_DELTA = [ 2, 1, 5, 3, 4 ];\nvar LONG_LESS_PENALTY_DELTA = -2;\nvar SHORT_LESS_PENALTY_DELTA = -1;\nvar SHORT_MORE_PENALTY_DELTA = 1;\nvar LONG_MORE_PENALTY_DELTA = 2;\n\nvar PENALTIES = {};\nPENALTIES[LONG_LESS_PENALTY_DELTA.toString()] = 8;\nPENALTIES[SHORT_LESS_PENALTY_DELTA.toString()] = 6;\nPENALTIES[LONG_MORE_PENALTY_DELTA.toString()] = 6;\nPENALTIES[SHORT_MORE_PENALTY_DELTA.toString()] = 3;\n\nvar VALUE_FORMAT_LENGTH = {\n numeric: 1,\n \"2-digit\": 2,\n short: 3,\n long: 4,\n narrow: 5\n};\n\nvar TIME_SPECIFIERS_REGEX = /[hHmsSzZoOvVxX]/;\n\nfunction getHourSpecifier(options) {\n return options.hour12 ? \"h\" : \"H\";\n}\n\nvar DATE_OPTIONS_MAP = [ {\n key: \"era\",\n specifier: \"G\"\n}, {\n key: \"year\",\n specifier: \"y\"\n}, {\n key: \"month\",\n specifier: \"M\"\n}, {\n key: \"day\",\n specifier: \"d\"\n}, {\n key: \"weekday\",\n specifier: \"E\"\n}, {\n key: \"hour\",\n getSpecifier: getHourSpecifier\n}, {\n key: \"minute\",\n specifier: \"m\"\n}, {\n key: \"second\",\n specifier: \"s\"\n}, {\n key: \"timeZoneName\",\n specifier: \"z\"\n} ];\n\nvar STAND_ALONE_SPECIFIERS = {\n e: 'c',\n E: 'c',\n M: 'L',\n Q: 'q'\n};\n\nvar specifiersRegex = {};\nvar resolvedFormats = {};\n\nfunction getSpecifierRegex(specifier) {\n if (!specifiersRegex[specifier]) {\n specifiersRegex[specifier] = new RegExp(specifier + \"+\");\n }\n return specifiersRegex[specifier];\n}\n\nfunction skeletonSpecifiers(skeleton) {\n var result = [];\n var current = skeleton.charAt(0);\n var specifier = current;\n for (var idx = 1; idx < skeleton.length; idx++) {\n var character = skeleton.charAt(idx);\n if (character === specifier) {\n current += character;\n } else {\n result.push(current);\n current = specifier = character;\n }\n }\n\n result.push(current);\n\n return result;\n}\n\nfunction findBestMatch(specifiers, availableFormats) {\n var specifiersLength = specifiers.length;\n var maxScore = -Number.MAX_VALUE;\n var bestMatches, result;\n for (var format in availableFormats) {\n var matches = [];\n var currentFormat = format.replace(\"v\", \"z\");\n var score = 0;\n for (var idx = 0; idx < specifiersLength; idx++) {\n var specifier = specifiers[idx];\n var specifierRegex = getSpecifierRegex(specifier[0]);\n var match = (specifierRegex.exec(currentFormat) || [])[0];\n\n if (!match) {\n score -= REMOVAL_PENALTY;\n } else {\n currentFormat = currentFormat.replace(match, EMPTY);\n if (match.length !== specifier.length) {\n var delta = Math.max(Math.min(LENGHT_DELTA[match.length] - LENGHT_DELTA[specifier.length], 2), -2);\n score -= PENALTIES[delta];\n }\n }\n\n matches.push(match);\n\n if (score < maxScore) {\n break;\n }\n }\n\n if (currentFormat.length) {\n score -= skeletonSpecifiers(currentFormat).length * ADDITION_PENALTY;\n }\n\n if (score > maxScore) {\n maxScore = score;\n bestMatches = matches;\n result = availableFormats[format];\n }\n }\n\n result = result.replace(\"v\", \"z\");\n\n for (var idx$1 = 0; idx$1 < specifiersLength; idx$1++) {\n var bestMatch = bestMatches[idx$1];\n if (bestMatch && bestMatch !== specifiers[idx$1]) {\n var matchSpecifier = bestMatches[idx$1][0];\n result = result.replace(getSpecifierRegex(matchSpecifier), specifiers[idx$1]);\n if (STAND_ALONE_SPECIFIERS[matchSpecifier]) {\n result = result.replace(getSpecifierRegex(STAND_ALONE_SPECIFIERS[matchSpecifier]), specifiers[idx$1]);\n }\n }\n }\n\n return result;\n}\n\nfunction cacheFormat(skeleton, format, locale) {\n if (!resolvedFormats[locale]) {\n resolvedFormats[locale] = {};\n }\n resolvedFormats[locale][skeleton] = format;\n}\n\n\nfunction skeletonFormat(skeleton, info) {\n var availableFormats = info.calendar.dateTimeFormats.availableFormats;\n if (availableFormats[skeleton]) {\n return availableFormats[skeleton];\n }\n if (resolvedFormats[info.name] && resolvedFormats[info.name][skeleton]) {\n return resolvedFormats[info.name][skeleton];\n }\n var timeStartIndex = skeleton.search(TIME_SPECIFIERS_REGEX);\n var result;\n if (timeStartIndex > 0) {\n var dateSkeleton = skeleton.substr(0, timeStartIndex);\n var timeSkeleton = skeleton.substr(timeStartIndex);\n\n result = formatString(info.calendar.dateTimeFormats.short, //should be deterimed based on specifiers\n availableFormats[timeSkeleton] || findBestMatch(skeletonSpecifiers(timeSkeleton), availableFormats),\n availableFormats[dateSkeleton] || findBestMatch(skeletonSpecifiers(dateSkeleton), availableFormats));\n } else {\n result = findBestMatch(skeletonSpecifiers(skeleton), availableFormats);\n }\n\n cacheFormat(skeleton, result, info.name);\n return result;\n}\n\nfunction skeletonFromOptions(options) {\n var result = [];\n for (var idx = 0; idx < DATE_OPTIONS_MAP.length; idx++) {\n var option = DATE_OPTIONS_MAP[idx];\n var field = option.key;\n var value = options[field];\n if (value) {\n var spcifier = option.specifier || option.getSpecifier(options);\n result.push(spcifier.repeat(VALUE_FORMAT_LENGTH[value]));\n }\n }\n\n return result.join(EMPTY);\n}\n\nexport default function datePattern(format, info) {\n var calendar = info.calendar;\n var result;\n if (isString(format)) {\n if (calendar.patterns[format]) {\n result = calendar.patterns[format];\n } else {\n result = format;\n }\n } else if (format) {\n if (format.pattern) {\n return format.pattern;\n }\n\n var skeleton = format.skeleton;\n if (!skeleton) {\n if (format.datetime) {\n result = formatString(calendar.dateTimeFormats[format.datetime], calendar.timeFormats[format.datetime], calendar.dateFormats[format.datetime]);\n } else if (format.date) {\n result = calendar.dateFormats[format.date];\n } else if (format.time) {\n result = calendar.timeFormats[format.time];\n } else {\n skeleton = skeletonFromOptions(format);\n }\n }\n\n if (skeleton) {\n result = skeletonFormat(skeleton, info);\n }\n }\n\n if (!result) {\n result = calendar.patterns.d;\n }\n\n return result;\n}\n","export default function dateNameType(formatLength) {\n var nameType;\n if (formatLength <= 3) {\n nameType = \"abbreviated\";\n } else if (formatLength === 4) {\n nameType = \"wide\";\n } else if (formatLength === 5) {\n nameType = \"narrow\";\n } else if (formatLength === 6) {\n nameType = \"short\";\n }\n\n return nameType;\n}","import dateFormatNames from '../cldr/date-format-names';\nimport dateNameType from './date-name-type';\n\nexport default function formatNames(locale, type, formatLength, standAlone, lower) {\n return dateFormatNames(locale, {\n type: type,\n nameType: dateNameType(formatLength),\n standAlone: standAlone,\n lower: lower\n });\n}","function isFunction(fun) {\n return typeof(fun) === 'function';\n}\n\nexport default function isDate(value) {\n return Boolean(value) && isFunction(value.getTime) && isFunction(value.getMonth);\n}\n","var MONTH = 'month';\nvar HOUR = 'hour';\nvar ZONE = 'zone';\nvar WEEKDAY = 'weekday';\nvar QUARTER = 'quarter';\n\nvar DATE_FIELD_MAP = {\n 'G': 'era',\n 'y': 'year',\n 'q': QUARTER,\n 'Q': QUARTER,\n 'M': MONTH,\n 'L': MONTH,\n 'd': 'day',\n 'E': WEEKDAY,\n 'c': WEEKDAY,\n 'e': WEEKDAY,\n 'h': HOUR,\n 'H': HOUR,\n 'k': HOUR,\n 'K': HOUR,\n 'm': 'minute',\n 's': 'second',\n 'S': 'millisecond',\n 'a': 'dayperiod',\n 'x': ZONE,\n 'X': ZONE,\n 'z': ZONE,\n 'Z': ZONE\n};\n\nvar dateFormatRegExp = /d{1,2}|E{1,6}|e{1,6}|c{3,6}|c{1}|M{1,5}|L{1,5}|y{1,4}|H{1,2}|h{1,2}|k{1,2}|K{1,2}|m{1,2}|a{1,5}|s{1,2}|S{1,3}|z{1,4}|Z{1,5}|x{1,5}|X{1,5}|G{1,5}|q{1,5}|Q{1,5}|\"[^\"]*\"|'[^']*'/g;\n\nexport { dateFormatRegExp, DATE_FIELD_MAP };","import { localeInfo, firstDay } from '../cldr';\nimport { DEFAULT_LOCALE, EMPTY } from '../common/constants';\nimport formatString from '../common/format-string';\nimport datePattern from './date-pattern';\nimport formatNames from './format-names';\nimport pad from '../common/pad';\nimport isDate from '../common/is-date';\nimport { dateFormatRegExp } from './constants';\n\nfunction formatDayOfWeekIndex(day, formatLength, localeInfo) {\n var firstDayIndex = firstDay(localeInfo);\n var dayIndex;\n if (day < firstDayIndex) {\n dayIndex = 7 - firstDayIndex + day;\n } else {\n dayIndex = day - firstDayIndex;\n }\n\n return dayIndex + 1;\n}\n\nfunction formatMonth(month, formatLength, info, standAlone) {\n if (formatLength <= 2) {\n return pad(month + 1, formatLength);\n }\n return formatNames(info, \"months\", formatLength, standAlone)[month];\n}\n\nfunction formatQuarter(date, formatLength, info, standAlone) {\n var quarter = Math.floor(date.getMonth() / 3);\n if (formatLength < 3) {\n return quarter + 1;\n }\n\n return formatNames(info, \"quarters\", formatLength, standAlone)[quarter];\n}\n\n\nfunction formatTimeZone(date, info, options) {\n var shortHours = options.shortHours;\n var optionalMinutes = options.optionalMinutes;\n var separator = options.separator;\n var localizedName = options.localizedName;\n var zZeroOffset = options.zZeroOffset;\n var offset = date.getTimezoneOffset() / 60;\n if (offset === 0 && zZeroOffset) {\n return \"Z\";\n }\n var sign = offset <= 0 ? \"+\" : \"-\";\n var hoursMinutes = Math.abs(offset).toString().split(\".\");\n var minutes = hoursMinutes[1] || 0;\n var result = sign + (shortHours ? hoursMinutes[0] : pad(hoursMinutes[0], 2));\n if (minutes || !optionalMinutes) {\n result += (separator ? \":\" : EMPTY) + pad(minutes, 2);\n }\n\n if (localizedName) {\n var localizedFormat = offset === 0 ? info.calendar.gmtZeroFormat : info.calendar.gmtFormat;\n result = formatString(localizedFormat, result);\n }\n\n return result;\n}\n\nfunction formatDayOfWeek(date, formatLength, info, standAlone) {\n var result;\n if (formatLength < 3) {\n result = formatDayOfWeekIndex(date.getDay(), formatLength, info);\n } else {\n result = formatNames(info, \"days\", formatLength, standAlone)[date.getDay()];\n }\n return result;\n}\n\nvar formatters = {};\n\nformatters.d = function(date, formatLength) {\n return pad(date.getDate(), formatLength);\n};\n\nformatters.E = function(date, formatLength, info) {\n return formatNames(info, \"days\", formatLength)[date.getDay()];\n};\n\nformatters.M = function(date, formatLength, info) {\n return formatMonth(date.getMonth(), formatLength, info, false);\n};\n\nformatters.L = function(date, formatLength, info) {\n return formatMonth(date.getMonth(), formatLength, info, true);\n};\n\nformatters.y = function(date, formatLength) {\n var year = date.getFullYear();\n if (formatLength === 2) {\n year = year % 100;\n }\n return pad(year, formatLength);\n};\n\nformatters.h = function(date, formatLength) {\n var hours = date.getHours() % 12 || 12;\n return pad(hours, formatLength);\n};\n\nformatters.H = function(date, formatLength) {\n return pad(date.getHours(), formatLength);\n};\n\nformatters.k = function(date, formatLength) {\n return pad(date.getHours() || 24, formatLength);\n};\n\nformatters.K = function(date, formatLength) {\n return pad(date.getHours() % 12, formatLength);\n};\n\nformatters.m = function(date, formatLength) {\n return pad(date.getMinutes(), formatLength);\n};\n\nformatters.s = function(date, formatLength) {\n return pad(date.getSeconds(), formatLength);\n};\n\nformatters.S = function(date, formatLength) {\n var milliseconds = date.getMilliseconds();\n var result;\n if (milliseconds !== 0) {\n result = pad(String(milliseconds / 1000).split(\".\")[1].substr(0, formatLength), formatLength, true);\n } else {\n result = pad(EMPTY, formatLength);\n }\n return result;\n};\n\nformatters.a = function(date, formatLength, info) {\n return formatNames(info, \"dayPeriods\", formatLength)[date.getHours() < 12 ? \"am\" : \"pm\"];\n};\n\nformatters.z = function(date, formatLength, info) {\n return formatTimeZone(date, info, {\n shortHours: formatLength < 4,\n optionalMinutes: formatLength < 4,\n separator: true,\n localizedName: true\n });\n};\n\nformatters.Z = function(date, formatLength, info) {\n return formatTimeZone(date, info, {\n separator: formatLength > 3,\n localizedName: formatLength === 4,\n zZeroOffset: formatLength === 5\n });\n};\n\nformatters.x = function(date, formatLength, info) {\n return formatTimeZone(date, info, {\n optionalMinutes: formatLength === 1,\n separator: formatLength === 3 || formatLength === 5\n });\n};\n\nformatters.X = function(date, formatLength, info) {\n return formatTimeZone(date, info, {\n optionalMinutes: formatLength === 1,\n separator: formatLength === 3 || formatLength === 5,\n zZeroOffset: true\n });\n};\n\nformatters.G = function(date, formatLength, info) {\n var era = date.getFullYear() >= 0 ? 1 : 0;\n return formatNames(info, \"eras\", formatLength)[era];\n};\n\nformatters.e = formatDayOfWeek;\n\nformatters.c = function(date, formatLength, info) {\n return formatDayOfWeek(date, formatLength, info, true);\n};\n\nformatters.q = function(date, formatLength, info) {\n return formatQuarter(date, formatLength, info, true);\n};\n\nformatters.Q = formatQuarter;\n\nexport default function formatDate(date, format, locale) {\n if ( locale === void 0 ) locale = DEFAULT_LOCALE;\n\n if (!isDate(date)) {\n if (date === undefined || date === null) {\n return EMPTY;\n }\n return date;\n }\n\n var info = localeInfo(locale);\n var pattern = datePattern(format, info);\n\n return pattern.replace(dateFormatRegExp, function(match) {\n var formatLength = match.length;\n var result;\n\n if (match.includes(\"'\") || match.includes(\"\\\"\")) {\n result = match.slice(1, formatLength - 1);\n } else {\n result = formatters[match[0]](date, formatLength, info);\n }\n\n return result;\n });\n}\n","import { adjustDST, convertTimeZone } from './time-utils';\nimport { localeInfo } from '../cldr';\nimport { DEFAULT_LOCALE, EMPTY } from '../common/constants';\nimport { errors } from '../errors';\nimport formatNames from './format-names';\nimport datePattern from './date-pattern';\nimport round from '../common/round';\nimport isDate from '../common/is-date';\n\nvar timeZoneOffsetRegExp = /([+|\\-]\\d{1,2})(:?)(\\d{2})?/;\nvar dateRegExp = /^\\/Date\\((.*?)\\)\\/$/;\nvar offsetRegExp = /[+-]\\d*/;\nvar numberRegExp = {\n 2: /^\\d{1,2}/,\n 3: /^\\d{1,3}/,\n 4: /^\\d{4}/\n};\nvar numberRegex = /\\d+/;\nvar PLACEHOLDER = \"{0}\";\n\nvar leadingSpacesRegex = /^ */;\nvar trailingSpacesRegex = / *$/;\n\nvar standardDateFormats = [\n \"yyyy/MM/dd HH:mm:ss\",\n \"yyyy/MM/dd HH:mm\",\n \"yyyy/MM/dd\",\n \"E MMM dd yyyy HH:mm:ss\",\n \"yyyy-MM-ddTHH:mm:ss.SSSSSSSXXX\",\n \"yyyy-MM-ddTHH:mm:ss.SSSXXX\",\n \"yyyy-MM-ddTHH:mm:ss.SSXXX\",\n \"yyyy-MM-ddTHH:mm:ssXXX\",\n \"yyyy-MM-ddTHH:mm:ss.SSSSSSS\",\n \"yyyy-MM-ddTHH:mm:ss.SSS\",\n \"yyyy-MM-ddTHH:mmXXX\",\n \"yyyy-MM-ddTHH:mmX\",\n \"yyyy-MM-ddTHH:mm:ss\",\n \"yyyy-MM-ddTHH:mm\",\n \"yyyy-MM-dd HH:mm:ss\",\n \"yyyy-MM-dd HH:mm\",\n \"yyyy-MM-dd\",\n \"HH:mm:ss\",\n \"HH:mm\"\n];\nvar FORMATS_SEQUENCE = [ \"G\", \"g\", \"F\", \"Y\", \"y\", \"M\", \"m\", \"D\", \"d\", \"y\", \"T\", \"t\" ];\nvar TWO_DIGIT_YEAR_MAX = 2029;\n\nfunction outOfRange(value, start, end) {\n return !(value >= start && value <= end);\n}\n\nfunction lookAhead(match, state) {\n var format = state.format;\n var idx = state.idx;\n var i = 0;\n while (format[idx] === match) {\n i++;\n idx++;\n }\n if (i > 0) {\n idx -= 1;\n }\n state.idx = idx;\n return i;\n}\n\nfunction getNumber(size, state) {\n var regex = size ? (numberRegExp[size] || new RegExp('^\\\\d{1,' + size + '}')) : numberRegex,\n match = state.value.substr(state.valueIdx, size).match(regex);\n\n if (match) {\n match = match[0];\n state.valueIdx += match.length;\n return parseInt(match, 10);\n }\n return null;\n}\n\nfunction getIndexByName(names, state, lower) {\n var i = 0,\n length = names.length,\n name, nameLength,\n matchLength = 0,\n matchIdx = 0,\n subValue;\n\n for (; i < length; i++) {\n name = names[i];\n nameLength = name.length;\n subValue = state.value.substr(state.valueIdx, nameLength);\n\n if (lower) {\n subValue = subValue.toLowerCase();\n }\n\n if (subValue === name && nameLength > matchLength) {\n matchLength = nameLength;\n matchIdx = i;\n }\n }\n\n if (matchLength) {\n state.valueIdx += matchLength;\n return matchIdx + 1;\n }\n\n return null;\n}\n\nfunction checkLiteral(state) {\n var result = false;\n if (state.value.charAt(state.valueIdx) === state.format[state.idx]) {\n state.valueIdx++;\n result = true;\n }\n return result;\n}\n\nfunction calendarGmtFormats(calendar) {\n var gmtFormat = calendar.gmtFormat;\n var gmtZeroFormat = calendar.gmtZeroFormat;\n if (!gmtFormat) {\n throw errors.NoGMTInfo.error();\n }\n\n return [ gmtFormat.replace(PLACEHOLDER, EMPTY).toLowerCase(), gmtZeroFormat.replace(PLACEHOLDER, EMPTY).toLowerCase() ];\n}\n\nfunction parseTimeZoneOffset(state, info, options) {\n var shortHours = options.shortHours;\n var noSeparator = options.noSeparator;\n var optionalMinutes = options.optionalMinutes;\n var localizedName = options.localizedName;\n var zLiteral = options.zLiteral;\n state.UTC = true;\n\n if (zLiteral && state.value.charAt(state.valueIdx) === \"Z\") {\n state.valueIdx++;\n return false;\n }\n\n if (localizedName && !getIndexByName(calendarGmtFormats(info.calendar), state, true)) {\n return true;\n }\n\n var matches = timeZoneOffsetRegExp.exec(state.value.substr(state.valueIdx, 6));\n if (!matches) {\n return !localizedName;\n }\n\n var hoursMatch = matches[1];\n var minutesMatch = matches[3];\n var hoursOffset = parseInt(hoursMatch, 10);\n var separator = matches[2];\n var minutesOffset = parseInt(minutesMatch, 10);\n\n if (isNaN(hoursOffset) || (!shortHours && hoursMatch.length !== 3) || (!optionalMinutes && isNaN(minutesOffset)) || (noSeparator && separator)) {\n return true;\n }\n\n if (isNaN(minutesOffset)) {\n minutesOffset = null;\n }\n\n if (outOfRange(hoursOffset, -12, 13) || (minutesOffset && outOfRange(minutesOffset, 0, 59))) {\n return true;\n }\n\n state.valueIdx += matches[0].length;\n state.hoursOffset = hoursOffset;\n state.minutesOffset = minutesOffset;\n}\n\nfunction parseMonth(ch, state, info) {\n var count = lookAhead(ch, state);\n var names = formatNames(info, \"months\", count, ch === \"L\", true);\n\n var month = count < 3 ? getNumber(2, state) : getIndexByName(names, state, true);\n\n if (month === null || outOfRange(month, 1, 12)) {\n return true;\n }\n state.month = month - 1;\n}\n\nfunction parseDayOfWeek(ch, state, info) {\n var count = lookAhead(ch, state);\n var names = formatNames(info, \"days\", count, ch === \"c\", true);\n var dayOfWeek = count < 3 ? getNumber(1, state) : getIndexByName(names, state, true);\n if ((!dayOfWeek && dayOfWeek !== 0) || outOfRange(dayOfWeek, 1, 7)) {\n return true;\n }\n}\n\nvar parsers = {};\n\nparsers.d = function(state) {\n lookAhead(\"d\", state);\n var day = getNumber(2, state);\n\n if (day === null || outOfRange(day, 1, 31)) {\n return true;\n }\n\n if (state.day === null) {\n state.day = day;\n }\n};\n\nparsers.E = function(state, info) {\n var count = lookAhead(\"E\", state);\n //validate if it matches the day?\n var dayOfWeek = getIndexByName(formatNames(info, \"days\", count, false, true), state, true);\n if (dayOfWeek === null) {\n return true;\n }\n};\n\nparsers.M = function(state, info) {\n return parseMonth(\"M\", state, info);\n};\n\nparsers.L = function(state, info) {\n return parseMonth(\"L\", state, info);\n};\n\nparsers.y = function(state) {\n var count = lookAhead(\"y\", state);\n var year = getNumber(count === 1 ? undefined : count, state);\n\n if (year === null) {\n return true;\n }\n\n if (count === 2) {\n var currentYear = new Date().getFullYear();\n year = (currentYear - currentYear % 100) + year;\n if (year > TWO_DIGIT_YEAR_MAX) {\n year -= 100;\n }\n }\n\n state.year = year;\n};\n\nparsers.h = function(state) {\n lookAhead(\"h\", state);\n\n var hours = getNumber(2, state);\n if (hours === 12) {\n hours = 0;\n }\n\n if (hours === null || outOfRange(hours, 0, 11)) {\n return true;\n }\n\n state.hours = hours;\n};\n\nparsers.K = function(state) {\n lookAhead(\"K\", state);\n\n var hours = getNumber(2, state);\n\n if (hours === null || outOfRange(hours, 0, 11)) {\n return true;\n }\n\n state.hours = hours;\n};\n\nparsers.a = function(state, info) {\n var count = lookAhead(\"a\", state);\n var periodFormats = formatNames(info, \"dayPeriods\", count, false, true);\n\n var pmHour = getIndexByName([ periodFormats.pm ], state, true);\n if (!pmHour && !getIndexByName([ periodFormats.am ], state, true)) {\n return true;\n }\n\n state.pmHour = pmHour;\n};\n\nparsers.H = function(state) {\n lookAhead(\"H\", state);\n var hours = getNumber(2, state);\n if (hours === null || outOfRange(hours, 0, 23)) {\n return true;\n }\n state.hours = hours;\n};\n\nparsers.k = function(state) {\n lookAhead(\"k\", state);\n\n var hours = getNumber(2, state);\n\n if (hours === null || outOfRange(hours, 1, 24)) {\n return true;\n }\n\n state.hours = hours === 24 ? 0 : hours;\n};\n\nparsers.m = function(state) {\n lookAhead(\"m\", state);\n var minutes = getNumber(2, state);\n\n if (minutes === null || outOfRange(minutes, 0, 59)) {\n return true;\n }\n\n state.minutes = minutes;\n};\n\nparsers.s = function(state) {\n lookAhead(\"s\", state);\n var seconds = getNumber(2, state);\n if (seconds === null || outOfRange(seconds, 0, 59)) {\n return true;\n }\n state.seconds = seconds;\n};\n\nparsers.S = function(state) {\n var count = lookAhead(\"S\", state);\n var match = state.value.substr(state.valueIdx, count);\n var milliseconds = null;\n\n if (!isNaN(parseInt(match, 10))) {\n milliseconds = parseFloat(\"0.\" + match, 10);\n milliseconds = round(milliseconds, 3);\n milliseconds *= 1000;\n state.valueIdx += count;\n }\n\n if (milliseconds === null || outOfRange(milliseconds, 0, 999)) {\n return true;\n }\n\n state.milliseconds = milliseconds;\n};\n\nparsers.z = function(state, info) {\n var count = lookAhead(\"z\", state);\n\n var shortFormat = count < 4;\n\n var invalid = parseTimeZoneOffset(state, info, {\n shortHours: shortFormat,\n optionalMinutes: shortFormat,\n localizedName: true\n });\n\n if (invalid) {\n return invalid;\n }\n};\n\nparsers.Z = function(state, info) {\n var count = lookAhead(\"Z\", state);\n\n var invalid = parseTimeZoneOffset(state, info, {\n noSeparator: count < 4,\n zLiteral: count === 5,\n localizedName: count === 4\n });\n\n if (invalid) {\n return invalid;\n }\n};\n\nparsers.x = function(state, info) {\n var count = lookAhead(\"x\", state);\n\n var invalid = parseTimeZoneOffset(state, info, {\n noSeparator: count !== 3 && count !== 5,\n optionalMinutes: count === 1\n });\n if (invalid) {\n return invalid;\n }\n};\n\nparsers.X = function(state, info) {\n var count = lookAhead(\"X\", state);\n\n var invalid = parseTimeZoneOffset(state, info, {\n noSeparator: count !== 3 && count !== 5,\n optionalMinutes: count === 1,\n zLiteral: true\n });\n if (invalid) {\n return invalid;\n }\n};\n\nparsers.G = function(state, info) {\n var count = lookAhead(\"G\", state);\n var eras = formatNames(info, \"eras\", count, false, true);\n var era = getIndexByName([ eras[0], eras[1] ], state, true);\n\n if (era === null) {\n return true;\n }\n};\n\nparsers.e = function(state, info) {\n return parseDayOfWeek(\"e\", state, info);\n};\n\nparsers.c = function(state, info) {\n return parseDayOfWeek(\"c\", state, info);\n};\n\nfunction createDate(state) {\n var year = state.year;\n var month = state.month;\n var day = state.day;\n var hours = state.hours;\n var minutes = state.minutes;\n var seconds = state.seconds;\n var milliseconds = state.milliseconds;\n var pmHour = state.pmHour;\n var UTC = state.UTC;\n var hoursOffset = state.hoursOffset;\n var minutesOffset = state.minutesOffset;\n var hasTime = hours !== null || minutes !== null || seconds || null;\n var date = new Date();\n var result;\n\n if (year === null && month === null && day === null && hasTime) {\n year = date.getFullYear();\n month = date.getMonth();\n day = date.getDate();\n } else {\n if (year === null) {\n year = date.getFullYear();\n }\n\n if (day === null) {\n day = 1;\n }\n }\n\n if (pmHour && hours < 12) {\n hours += 12;\n }\n\n if (UTC) {\n if (hoursOffset) {\n hours += -hoursOffset;\n }\n\n if (minutesOffset) {\n minutes += -minutesOffset * (hoursOffset < 0 ? -1 : 1);\n }\n\n result = new Date(Date.UTC(year, month, day, hours, minutes, seconds, milliseconds));\n } else {\n result = new Date(year, month, day, hours, minutes, seconds, milliseconds);\n adjustDST(result, hours);\n }\n\n if (year < 100) {\n result.setFullYear(year);\n }\n\n if (result.getDate() !== day && UTC === undefined) {\n return null;\n }\n\n return result;\n}\n\nfunction addFormatSpaces(value, format) {\n var leadingSpaces = leadingSpacesRegex.exec(format)[0];\n var trailingSpaces = trailingSpacesRegex.exec(format)[0];\n\n return (\"\" + leadingSpaces + value + trailingSpaces);\n}\n\nfunction parseExact(value, format, info) {\n var pattern = datePattern(format, info).split(EMPTY);\n\n var state = {\n format: pattern,\n idx: 0,\n value: addFormatSpaces(value, format),\n valueIdx: 0,\n year: null,\n month: null,\n day: null,\n hours: null,\n minutes: null,\n seconds: null,\n milliseconds: null\n };\n var length = pattern.length;\n var literal = false;\n\n for (; state.idx < length; state.idx++) {\n var ch = pattern[state.idx];\n\n if (literal) {\n if (ch === \"'\") {\n literal = false;\n }\n\n checkLiteral(state);\n } else {\n if (parsers[ch]) {\n var invalid = parsers[ch](state, info);\n if (invalid) {\n return null;\n }\n } else if (ch === \"'\") {\n literal = true;\n checkLiteral(state);\n } else if (!checkLiteral(state)) {\n return null;\n }\n }\n }\n\n if (state.valueIdx < value.length) {\n return null;\n }\n\n return createDate(state) || null;\n}\n\nfunction parseMicrosoftDateOffset(offset) {\n var sign = offset.substr(0, 1) === \"-\" ? -1 : 1;\n\n var result = offset.substring(1);\n result = (parseInt(result.substr(0, 2), 10) * 60) + parseInt(result.substring(2), 10);\n\n return sign * result;\n}\n\nfunction parseMicrosoftDateFormat(value) {\n if (value && value.indexOf(\"/D\") === 0) {\n var date = dateRegExp.exec(value);\n if (date) {\n date = date[1];\n var tzoffset = offsetRegExp.exec(date.substring(1));\n\n date = new Date(parseInt(date, 10));\n\n if (tzoffset) {\n tzoffset = parseMicrosoftDateOffset(tzoffset[0]);\n date = convertTimeZone(date, date.getTimezoneOffset(), 0);\n date = convertTimeZone(date, 0, -1 * tzoffset);\n }\n\n return date;\n }\n }\n}\n\nfunction defaultFormats(calendar) {\n var formats = [];\n var patterns = calendar.patterns;\n var length = FORMATS_SEQUENCE.length;\n\n for (var idx = 0; idx < length; idx++) {\n formats.push(patterns[FORMATS_SEQUENCE[idx]]);\n }\n\n return formats.concat(standardDateFormats);\n}\n\nexport default function parseDate(value, formats, locale) {\n if ( locale === void 0 ) locale = DEFAULT_LOCALE;\n\n if (!value) {\n return null;\n }\n\n if (isDate(value)) {\n return value;\n }\n\n var parseValue = String(value).trim();\n var date = parseMicrosoftDateFormat(parseValue);\n if (date) {\n return date;\n }\n\n var info = localeInfo(locale);\n var parseFormats = formats || defaultFormats(info.calendar);\n parseFormats = Array.isArray(parseFormats) ? parseFormats : [ parseFormats ];\n\n var length = parseFormats.length;\n\n for (var idx = 0; idx < length; idx++) {\n date = parseExact(parseValue, parseFormats[idx], info);\n if (date) {\n return date;\n }\n }\n\n return date;\n}\n","import { formatDate, formatNumber } from \"@telerik/kendo-intl\";\r\n\r\n// to be used for simple helper functions used globally across the app\r\n\r\nexport function toNoptaDateString(value: Date | undefined | null, valueIfNullOrUndefined: string = \"\"): string {\r\n return value ? formatDate(value, NoptaDateFormat, NoptaLocale) : valueIfNullOrUndefined;\r\n}\r\n\r\nexport function toNoptaDatetimeString(value: Date | undefined | null, valueIfNullOrUndefined: string = \"\"): string {\r\n return value ? formatDate(value, NoptaDatetimeFormat, NoptaLocale) : valueIfNullOrUndefined;\r\n}\r\n\r\nexport function toNoptaNumberString(value: number | undefined | null, format: string, unit: string = \"\", valueIfNullOrUndefined: string = \"\"): string {\r\n if (value === null || value === undefined) return valueIfNullOrUndefined;\r\n\r\n const valueString = formatNumber(value, format, NoptaLocale);\r\n return unit ? `${valueString} ${unit}` : valueString;\r\n}\r\n\r\nexport function toNoptaIntegerString(value: number | undefined | null, unit: string = \"\", valueIfNullOrUndefined: string = \"\"): string {\r\n return toNoptaNumberString(value, \"n0\", unit, valueIfNullOrUndefined);\r\n}\r\n\r\nexport function convertBooleanToRadioValue(bool: boolean | undefined, trueRadioValue: string, falseRadioValue: string): string | undefined {\r\n if (bool === undefined) return undefined;\r\n\r\n return bool ? trueRadioValue : falseRadioValue;\r\n}\r\n\r\nexport function convertBytesToString(bytes: number): string {\r\n if (bytes < 1024) return `${bytes} bytes`;\r\n else if (bytes / 1024 < 1024) return `${toNoptaNumberString(bytes / 1024, \"n2\")} KB`;\r\n else if (bytes / 1024 / 1024 < 1024) return `${toNoptaNumberString(bytes / 1024 / 1024, \"n2\")} MB`;\r\n else if (bytes / 1024 / 1024 / 1024 < 1024) return `${toNoptaNumberString(bytes / 1024 / 1024 / 1024, \"n2\")} GB`;\r\n else return `${toNoptaNumberString(bytes / 1024 / 1024 / 1024 / 1024, \"n2\")} TB`;\r\n}\r\n\r\nexport function getDateOffsetMinutes(date: Date | undefined): number | undefined {\r\n // for +08:00 this returns -480\r\n // 480 minutes = 8 hours\r\n // javascript is opposite to .NET, so we need to invert it!\r\n if (!date) return undefined;\r\n\r\n const offsetMinutes = date.getTimezoneOffset();\r\n return -offsetMinutes;\r\n}\r\n\r\n// locale\r\nexport const NoptaLocale = \"en-AU\";\r\n\r\n// kendo library formats\r\n// https://github.com/telerik/kendo-intl/blob/develop/docs/date-formatting/index.md#custom\r\nexport const NoptaDateFormat = \"dd/MM/yyyy\";\r\nexport const NoptaDateFormatForKendo = \"{0:dd/MM/yyyy}\";\r\n\r\nexport const NoptaDatetimeFormat = \"dd/MM/yyyy hh:mm:ssa\";\r\nexport const NoptaDatetimeFormatForKendo = \"{0:dd/MM/yyyy hh:mm:ssa}\";\r\n","import { localeInfo } from '../cldr';\nimport { DECIMAL, DEFAULT_LOCALE, NUMBER_PLACEHOLDER, EMPTY } from '../common/constants';\nimport standardNumberFormat from './standard-number-format';\nimport customNumberFormat from './custom-number-format';\nimport formatOptions from './format-options';\n\nexport default function formatNumber(number, format, locale) {\n if ( format === void 0 ) format = NUMBER_PLACEHOLDER;\n if ( locale === void 0 ) locale = DEFAULT_LOCALE;\n\n if (number === undefined || number === null) {\n return EMPTY;\n }\n\n if (!isFinite(number)) {\n return String(number);\n }\n\n var info = localeInfo(locale);\n var options = formatOptions(format);\n\n var result;\n if (options) {\n var style = options.style || DECIMAL;\n result = standardNumberFormat(number, Object.assign({}, info.numbers[style], options), info);\n } else {\n result = customNumberFormat(number, format, info);\n }\n\n return result;\n}\n","// framework\r\nimport { ReactNode } from \"react\";\r\n// kendo\r\nimport { IntlProvider, load } from \"@progress/kendo-react-intl\";\r\n// CLDR data\r\nimport likelySubtags from \"cldr-core/supplemental/likelySubtags.json\";\r\nimport currencyData from \"cldr-core/supplemental/currencyData.json\";\r\nimport weekData from \"cldr-core/supplemental/weekData.json\";\r\nimport auNumbers from \"cldr-numbers-full/main/en-AU/numbers.json\";\r\nimport auLocalCurrency from \"cldr-numbers-full/main/en-AU/currencies.json\";\r\nimport auCaGregorian from \"cldr-dates-full/main/en-AU/ca-gregorian.json\";\r\nimport auDateFields from \"cldr-dates-full/main/en-AU/dateFields.json\";\r\n// other\r\nimport * as GlobalHelpers from \"../common/GlobalHelpers\";\r\n\r\nload(likelySubtags, currencyData, weekData, auNumbers, auLocalCurrency, auCaGregorian, auDateFields);\r\n\r\nfunction KendoIntlProvider(props: { children: ReactNode }) {\r\n return {props.children};\r\n}\r\n\r\nexport default KendoIntlProvider;\r\n","import { useSelector } from \"react-redux\";\r\nimport * as Client from \"../../api/Client\";\r\nimport { IRootReduxState } from \"../../redux/rootReducer\";\r\nimport { IShellState } from \"../../shell/redux/shellReducers\";\r\n\r\nexport function useIsDirty(): boolean {\r\n const state = useShellState();\r\n return state.dirtyCount > 0;\r\n}\r\n\r\nexport function useHelpUrl(): string | undefined {\r\n const state = useShellState();\r\n return state.helpUrl;\r\n}\r\n\r\nexport function useUserToken(): string | undefined {\r\n const state = useShellState();\r\n return state.userToken;\r\n}\r\n\r\nexport function usePortalLink(name: Client.ExternalLinkEnum): string | undefined {\r\n const state = useShellState();\r\n const portalLinks = state.portalLinks?.links;\r\n return portalLinks ? portalLinks.filter((l) => l.name === name)[0].url : undefined;\r\n}\r\n\r\nexport function useFeatureSwitch(): FeatureSwitch {\r\n const state = useShellState();\r\n const featureSwitches = state.featureSwitches?.featureSwitches;\r\n return new FeatureSwitch(featureSwitches);\r\n}\r\n\r\nexport class FeatureSwitch {\r\n constructor(featureSwitches: Array | undefined) {\r\n this._featureSwitches = featureSwitches;\r\n }\r\n\r\n private _featureSwitches: Array | undefined;\r\n\r\n public check(featureSwitch: Client.NeatsFeatureSwitchEnum): boolean {\r\n if (!this._featureSwitches) return false;\r\n return this._featureSwitches.some((fs) => fs === featureSwitch);\r\n }\r\n}\r\n\r\nfunction useShellState(): IShellState {\r\n // don't expose this externally as it leaks too much internals of the shell\r\n // use this as a helper for exported functions\r\n return useSelector((state: IRootReduxState) => state.shell);\r\n}\r\n","// framework\r\nimport { useEffect } from \"react\";\r\nimport { connect } from \"react-redux\";\r\n// api\r\nimport { refreshStaticConfigurationRequestAction } from \"../redux/shellActions\";\r\nimport * as Actions from \"../redux/shellActions\";\r\nimport * as Reducers from \"../redux/shellReducers\";\r\n\r\ninterface IConfigurationControllerProps {\r\n state: Reducers.IShellState;\r\n children: React.ReactNode;\r\n refreshStaticConfigurationRequestAction(): Actions.IShellActions;\r\n}\r\n\r\nfunction ConfigurationController(props: IConfigurationControllerProps) {\r\n const { state, children, refreshStaticConfigurationRequestAction } = props;\r\n\r\n useEffect(() => {\r\n console.debug(\"Updating Static Configuration...\");\r\n refreshStaticConfigurationRequestAction();\r\n }, []); // eslint-disable-line react-hooks/exhaustive-deps\r\n\r\n // return - if the static configuration data is loaded\r\n if (!state.isStaticConfigurationLoaded) return <>;\r\n return <>{children};\r\n}\r\n\r\n// connect redux\r\nexport default connect((state: any) => ({ state: state.shell }), {\r\n refreshStaticConfigurationRequestAction,\r\n})(ConfigurationController);\r\n","import invariant from 'invariant';\n\nvar noop = function noop() {};\n\nfunction readOnlyPropType(handler, name) {\n return function (props, propName) {\n if (props[propName] !== undefined) {\n if (!props[handler]) {\n return new Error(\"You have provided a `\" + propName + \"` prop to `\" + name + \"` \" + (\"without an `\" + handler + \"` handler prop. This will render a read-only field. \") + (\"If the field should be mutable use `\" + defaultKey(propName) + \"`. \") + (\"Otherwise, set `\" + handler + \"`.\"));\n }\n }\n };\n}\n\nexport function uncontrolledPropTypes(controlledValues, displayName) {\n var propTypes = {};\n Object.keys(controlledValues).forEach(function (prop) {\n // add default propTypes for folks that use runtime checks\n propTypes[defaultKey(prop)] = noop;\n\n if (process.env.NODE_ENV !== 'production') {\n var handler = controlledValues[prop];\n !(typeof handler === 'string' && handler.trim().length) ? process.env.NODE_ENV !== \"production\" ? invariant(false, 'Uncontrollable - [%s]: the prop `%s` needs a valid handler key name in order to make it uncontrollable', displayName, prop) : invariant(false) : void 0;\n propTypes[prop] = readOnlyPropType(handler, displayName);\n }\n });\n return propTypes;\n}\nexport function isProp(props, prop) {\n return props[prop] !== undefined;\n}\nexport function defaultKey(key) {\n return 'default' + key.charAt(0).toUpperCase() + key.substr(1);\n}\n/**\n * Copyright (c) 2013-present, Facebook, Inc.\n * All rights reserved.\n *\n * This source code is licensed under the BSD-style license found in the\n * LICENSE file in the root directory of this source tree. An additional grant\n * of patent rights can be found in the PATENTS file in the same directory.\n */\n\nexport function canAcceptRef(component) {\n return !!component && (typeof component !== 'function' || component.prototype && component.prototype.isReactComponent);\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\n\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\n\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\n\nimport { useCallback, useRef, useState } from 'react';\nimport * as Utils from './utils';\n\nfunction useUncontrolledProp(propValue, defaultValue, handler) {\n var wasPropRef = useRef(propValue !== undefined);\n\n var _useState = useState(defaultValue),\n stateValue = _useState[0],\n setState = _useState[1];\n\n var isProp = propValue !== undefined;\n var wasProp = wasPropRef.current;\n wasPropRef.current = isProp;\n /**\n * If a prop switches from controlled to Uncontrolled\n * reset its value to the defaultValue\n */\n\n if (!isProp && wasProp && stateValue !== defaultValue) {\n setState(defaultValue);\n }\n\n return [isProp ? propValue : stateValue, useCallback(function (value) {\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n\n if (handler) handler.apply(void 0, [value].concat(args));\n setState(value);\n }, [handler])];\n}\n\nexport { useUncontrolledProp };\nexport default function useUncontrolled(props, config) {\n return Object.keys(config).reduce(function (result, fieldName) {\n var _extends2;\n\n var _ref = result,\n defaultValue = _ref[Utils.defaultKey(fieldName)],\n propsValue = _ref[fieldName],\n rest = _objectWithoutPropertiesLoose(_ref, [Utils.defaultKey(fieldName), fieldName].map(_toPropertyKey));\n\n var handlerName = config[fieldName];\n\n var _useUncontrolledProp = useUncontrolledProp(propsValue, defaultValue, props[handlerName]),\n value = _useUncontrolledProp[0],\n handler = _useUncontrolledProp[1];\n\n return _extends({}, rest, (_extends2 = {}, _extends2[fieldName] = value, _extends2[handlerName] = handler, _extends2));\n }, props);\n}","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nfunction componentWillMount() {\n // Call this.constructor.gDSFP to support sub-classes.\n var state = this.constructor.getDerivedStateFromProps(this.props, this.state);\n if (state !== null && state !== undefined) {\n this.setState(state);\n }\n}\n\nfunction componentWillReceiveProps(nextProps) {\n // Call this.constructor.gDSFP to support sub-classes.\n // Use the setState() updater to ensure state isn't stale in certain edge cases.\n function updater(prevState) {\n var state = this.constructor.getDerivedStateFromProps(nextProps, prevState);\n return state !== null && state !== undefined ? state : null;\n }\n // Binding \"this\" is important for shallow renderer support.\n this.setState(updater.bind(this));\n}\n\nfunction componentWillUpdate(nextProps, nextState) {\n try {\n var prevProps = this.props;\n var prevState = this.state;\n this.props = nextProps;\n this.state = nextState;\n this.__reactInternalSnapshotFlag = true;\n this.__reactInternalSnapshot = this.getSnapshotBeforeUpdate(\n prevProps,\n prevState\n );\n } finally {\n this.props = prevProps;\n this.state = prevState;\n }\n}\n\n// React may warn about cWM/cWRP/cWU methods being deprecated.\n// Add a flag to suppress these warnings for this special case.\ncomponentWillMount.__suppressDeprecationWarning = true;\ncomponentWillReceiveProps.__suppressDeprecationWarning = true;\ncomponentWillUpdate.__suppressDeprecationWarning = true;\n\nfunction polyfill(Component) {\n var prototype = Component.prototype;\n\n if (!prototype || !prototype.isReactComponent) {\n throw new Error('Can only polyfill class components');\n }\n\n if (\n typeof Component.getDerivedStateFromProps !== 'function' &&\n typeof prototype.getSnapshotBeforeUpdate !== 'function'\n ) {\n return Component;\n }\n\n // If new component APIs are defined, \"unsafe\" lifecycles won't be called.\n // Error if any of these lifecycles are present,\n // Because they would work differently between older and newer (16.3+) versions of React.\n var foundWillMountName = null;\n var foundWillReceivePropsName = null;\n var foundWillUpdateName = null;\n if (typeof prototype.componentWillMount === 'function') {\n foundWillMountName = 'componentWillMount';\n } else if (typeof prototype.UNSAFE_componentWillMount === 'function') {\n foundWillMountName = 'UNSAFE_componentWillMount';\n }\n if (typeof prototype.componentWillReceiveProps === 'function') {\n foundWillReceivePropsName = 'componentWillReceiveProps';\n } else if (typeof prototype.UNSAFE_componentWillReceiveProps === 'function') {\n foundWillReceivePropsName = 'UNSAFE_componentWillReceiveProps';\n }\n if (typeof prototype.componentWillUpdate === 'function') {\n foundWillUpdateName = 'componentWillUpdate';\n } else if (typeof prototype.UNSAFE_componentWillUpdate === 'function') {\n foundWillUpdateName = 'UNSAFE_componentWillUpdate';\n }\n if (\n foundWillMountName !== null ||\n foundWillReceivePropsName !== null ||\n foundWillUpdateName !== null\n ) {\n var componentName = Component.displayName || Component.name;\n var newApiName =\n typeof Component.getDerivedStateFromProps === 'function'\n ? 'getDerivedStateFromProps()'\n : 'getSnapshotBeforeUpdate()';\n\n throw Error(\n 'Unsafe legacy lifecycles will not be called for components using new component APIs.\\n\\n' +\n componentName +\n ' uses ' +\n newApiName +\n ' but also contains the following legacy lifecycles:' +\n (foundWillMountName !== null ? '\\n ' + foundWillMountName : '') +\n (foundWillReceivePropsName !== null\n ? '\\n ' + foundWillReceivePropsName\n : '') +\n (foundWillUpdateName !== null ? '\\n ' + foundWillUpdateName : '') +\n '\\n\\nThe above lifecycles should be removed. Learn more about this warning here:\\n' +\n 'https://fb.me/react-async-component-lifecycle-hooks'\n );\n }\n\n // React <= 16.2 does not support static getDerivedStateFromProps.\n // As a workaround, use cWM and cWRP to invoke the new static lifecycle.\n // Newer versions of React will ignore these lifecycles if gDSFP exists.\n if (typeof Component.getDerivedStateFromProps === 'function') {\n prototype.componentWillMount = componentWillMount;\n prototype.componentWillReceiveProps = componentWillReceiveProps;\n }\n\n // React <= 16.2 does not support getSnapshotBeforeUpdate.\n // As a workaround, use cWU to invoke the new lifecycle.\n // Newer versions of React will ignore that lifecycle if gSBU exists.\n if (typeof prototype.getSnapshotBeforeUpdate === 'function') {\n if (typeof prototype.componentDidUpdate !== 'function') {\n throw new Error(\n 'Cannot polyfill getSnapshotBeforeUpdate() for components that do not define componentDidUpdate() on the prototype'\n );\n }\n\n prototype.componentWillUpdate = componentWillUpdate;\n\n var componentDidUpdate = prototype.componentDidUpdate;\n\n prototype.componentDidUpdate = function componentDidUpdatePolyfill(\n prevProps,\n prevState,\n maybeSnapshot\n ) {\n // 16.3+ will not execute our will-update method;\n // It will pass a snapshot value to did-update though.\n // Older versions will require our polyfilled will-update value.\n // We need to handle both cases, but can't just check for the presence of \"maybeSnapshot\",\n // Because for <= 15.x versions this might be a \"prevContext\" object.\n // We also can't just check \"__reactInternalSnapshot\",\n // Because get-snapshot might return a falsy value.\n // So check for the explicit __reactInternalSnapshotFlag flag to determine behavior.\n var snapshot = this.__reactInternalSnapshotFlag\n ? this.__reactInternalSnapshot\n : maybeSnapshot;\n\n componentDidUpdate.call(this, prevProps, prevState, snapshot);\n };\n }\n\n return Component;\n}\n\nexport { polyfill };\n","import { useEffect, useRef } from 'react';\n\n/**\n * Creates a `Ref` whose value is updated in an effect, ensuring the most recent\n * value is the one rendered with. Generally only required for Concurrent mode usage\n * where previous work in `render()` may be discarded before being used.\n *\n * This is safe to access in an event handler.\n *\n * @param value The `Ref` value\n */\nfunction useCommittedRef(value) {\n const ref = useRef(value);\n useEffect(() => {\n ref.current = value;\n }, [value]);\n return ref;\n}\nexport default useCommittedRef;","import { useCallback } from 'react';\nimport useCommittedRef from './useCommittedRef';\nexport default function useEventCallback(fn) {\n const ref = useCommittedRef(fn);\n return useCallback(function (...args) {\n return ref.current && ref.current(...args);\n }, [ref]);\n}","\"use client\";\n\nimport * as React from 'react';\nimport { useContext, useMemo } from 'react';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport const DEFAULT_BREAKPOINTS = ['xxl', 'xl', 'lg', 'md', 'sm', 'xs'];\nexport const DEFAULT_MIN_BREAKPOINT = 'xs';\nconst ThemeContext = /*#__PURE__*/React.createContext({\n prefixes: {},\n breakpoints: DEFAULT_BREAKPOINTS,\n minBreakpoint: DEFAULT_MIN_BREAKPOINT\n});\nconst {\n Consumer,\n Provider\n} = ThemeContext;\nfunction ThemeProvider({\n prefixes = {},\n breakpoints = DEFAULT_BREAKPOINTS,\n minBreakpoint = DEFAULT_MIN_BREAKPOINT,\n dir,\n children\n}) {\n const contextValue = useMemo(() => ({\n prefixes: {\n ...prefixes\n },\n breakpoints,\n minBreakpoint,\n dir\n }), [prefixes, breakpoints, minBreakpoint, dir]);\n return /*#__PURE__*/_jsx(Provider, {\n value: contextValue,\n children: children\n });\n}\nexport function useBootstrapPrefix(prefix, defaultPrefix) {\n const {\n prefixes\n } = useContext(ThemeContext);\n return prefix || prefixes[defaultPrefix] || defaultPrefix;\n}\nexport function useBootstrapBreakpoints() {\n const {\n breakpoints\n } = useContext(ThemeContext);\n return breakpoints;\n}\nexport function useBootstrapMinBreakpoint() {\n const {\n minBreakpoint\n } = useContext(ThemeContext);\n return minBreakpoint;\n}\nexport function useIsRTL() {\n const {\n dir\n } = useContext(ThemeContext);\n return dir === 'rtl';\n}\nfunction createBootstrapComponent(Component, opts) {\n if (typeof opts === 'string') opts = {\n prefix: opts\n };\n const isClassy = Component.prototype && Component.prototype.isReactComponent;\n // If it's a functional component make sure we don't break it with a ref\n const {\n prefix,\n forwardRefAs = isClassy ? 'ref' : 'innerRef'\n } = opts;\n const Wrapped = /*#__PURE__*/React.forwardRef(({\n ...props\n }, ref) => {\n props[forwardRefAs] = ref;\n const bsPrefix = useBootstrapPrefix(props.bsPrefix, prefix);\n return /*#__PURE__*/_jsx(Component, {\n ...props,\n bsPrefix: bsPrefix\n });\n });\n Wrapped.displayName = `Bootstrap(${Component.displayName || Component.name})`;\n return Wrapped;\n}\nexport { createBootstrapComponent, Consumer as ThemeConsumer };\nexport default ThemeProvider;","import * as React from 'react';\nimport classNames from 'classnames';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport default (className => /*#__PURE__*/React.forwardRef((p, ref) => /*#__PURE__*/_jsx(\"div\", {\n ...p,\n ref: ref,\n className: classNames(p.className, className)\n})));","\"use client\";\n\nimport * as React from 'react';\nimport classNames from 'classnames';\nimport { useBootstrapPrefix } from './ThemeProvider';\nimport divWithClassName from './divWithClassName';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst DivStyledAsH4 = divWithClassName('h4');\nDivStyledAsH4.displayName = 'DivStyledAsH4';\nconst AlertHeading = /*#__PURE__*/React.forwardRef(({\n className,\n bsPrefix,\n as: Component = DivStyledAsH4,\n ...props\n}, ref) => {\n bsPrefix = useBootstrapPrefix(bsPrefix, 'alert-heading');\n return /*#__PURE__*/_jsx(Component, {\n ref: ref,\n className: classNames(className, bsPrefix),\n ...props\n });\n});\nAlertHeading.displayName = 'AlertHeading';\nexport default AlertHeading;","import { useEffect, useRef } from 'react';\n\n/**\n * Creates a `Ref` whose value is updated in an effect, ensuring the most recent\n * value is the one rendered with. Generally only required for Concurrent mode usage\n * where previous work in `render()` may be discarded before being used.\n *\n * This is safe to access in an event handler.\n *\n * @param value The `Ref` value\n */\nfunction useCommittedRef(value) {\n const ref = useRef(value);\n useEffect(() => {\n ref.current = value;\n }, [value]);\n return ref;\n}\nexport default useCommittedRef;","import { useCallback } from 'react';\nimport useCommittedRef from './useCommittedRef';\nexport default function useEventCallback(fn) {\n const ref = useCommittedRef(fn);\n return useCallback(function (...args) {\n return ref.current && ref.current(...args);\n }, [ref]);\n}","import { useRef, useEffect } from 'react';\n\n/**\n * Track whether a component is current mounted. Generally less preferable than\n * properlly canceling effects so they don't run after a component is unmounted,\n * but helpful in cases where that isn't feasible, such as a `Promise` resolution.\n *\n * @returns a function that returns the current isMounted state of the component\n *\n * ```ts\n * const [data, setData] = useState(null)\n * const isMounted = useMounted()\n *\n * useEffect(() => {\n * fetchdata().then((newData) => {\n * if (isMounted()) {\n * setData(newData);\n * }\n * })\n * })\n * ```\n */\nexport default function useMounted() {\n const mounted = useRef(true);\n const isMounted = useRef(() => mounted.current);\n useEffect(() => {\n mounted.current = true;\n return () => {\n mounted.current = false;\n };\n }, []);\n return isMounted.current;\n}","import { useEffect, useRef } from 'react';\n\n/**\n * Store the last of some value. Tracked via a `Ref` only updating it\n * after the component renders.\n *\n * Helpful if you need to compare a prop value to it's previous value during render.\n *\n * ```ts\n * function Component(props) {\n * const lastProps = usePrevious(props)\n *\n * if (lastProps.foo !== props.foo)\n * resetValueFromProps(props.foo)\n * }\n * ```\n *\n * @param value the value to track\n */\nexport default function usePrevious(value) {\n const ref = useRef(null);\n useEffect(() => {\n ref.current = value;\n });\n return ref.current;\n}","import { useEffect, useLayoutEffect } from 'react';\nconst isReactNative = typeof global !== 'undefined' &&\n// @ts-ignore\nglobal.navigator &&\n// @ts-ignore\nglobal.navigator.product === 'ReactNative';\nconst isDOM = typeof document !== 'undefined';\n\n/**\n * Is `useLayoutEffect` in a DOM or React Native environment, otherwise resolves to useEffect\n * Only useful to avoid the console warning.\n *\n * PREFER `useEffect` UNLESS YOU KNOW WHAT YOU ARE DOING.\n *\n * @category effects\n */\nexport default isDOM || isReactNative ? useLayoutEffect : useEffect;","import { useState } from 'react';\nimport useEffect from './useIsomorphicEffect';\nconst targetMap = new WeakMap();\nlet resizeObserver;\nfunction getResizeObserver() {\n // eslint-disable-next-line no-return-assign\n return resizeObserver = resizeObserver || new window.ResizeObserver(entries => {\n entries.forEach(entry => {\n const handler = targetMap.get(entry.target);\n if (handler) handler(entry.contentRect);\n });\n });\n}\n\n/**\n * Efficiently observe size changes on an element. Depends on the `ResizeObserver` api,\n * and polyfills are needed in older browsers.\n *\n * ```ts\n * const [ref, attachRef] = useCallbackRef(null);\n *\n * const rect = useResizeObserver(ref);\n *\n * return (\n *
\n * {JSON.stringify(rect)}\n *
\n * )\n * ```\n *\n * @param element The DOM element to observe\n */\nexport default function useResizeObserver(element) {\n const [rect, setRect] = useState(null);\n useEffect(() => {\n if (!element) return;\n getResizeObserver().observe(element);\n setRect(element.getBoundingClientRect());\n targetMap.set(element, rect => {\n setRect(rect);\n });\n return () => {\n targetMap.delete(element);\n };\n }, [element]);\n return rect;\n}","const _excluded = [\"as\", \"disabled\"];\nfunction _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (e.indexOf(n) >= 0) continue; t[n] = r[n]; } return t; }\nimport * as React from 'react';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport function isTrivialHref(href) {\n return !href || href.trim() === '#';\n}\nexport function useButtonProps({\n tagName,\n disabled,\n href,\n target,\n rel,\n role,\n onClick,\n tabIndex = 0,\n type\n}) {\n if (!tagName) {\n if (href != null || target != null || rel != null) {\n tagName = 'a';\n } else {\n tagName = 'button';\n }\n }\n const meta = {\n tagName\n };\n if (tagName === 'button') {\n return [{\n type: type || 'button',\n disabled\n }, meta];\n }\n const handleClick = event => {\n if (disabled || tagName === 'a' && isTrivialHref(href)) {\n event.preventDefault();\n }\n if (disabled) {\n event.stopPropagation();\n return;\n }\n onClick == null ? void 0 : onClick(event);\n };\n const handleKeyDown = event => {\n if (event.key === ' ') {\n event.preventDefault();\n handleClick(event);\n }\n };\n if (tagName === 'a') {\n // Ensure there's a href so Enter can trigger anchor button.\n href || (href = '#');\n if (disabled) {\n href = undefined;\n }\n }\n return [{\n role: role != null ? role : 'button',\n // explicitly undefined so that it overrides the props disabled in a spread\n // e.g. \n disabled: undefined,\n tabIndex: disabled ? undefined : tabIndex,\n href,\n target: tagName === 'a' ? target : undefined,\n 'aria-disabled': !disabled ? undefined : disabled,\n rel: tagName === 'a' ? rel : undefined,\n onClick: handleClick,\n onKeyDown: handleKeyDown\n }, meta];\n}\nconst Button = /*#__PURE__*/React.forwardRef((_ref, ref) => {\n let {\n as: asProp,\n disabled\n } = _ref,\n props = _objectWithoutPropertiesLoose(_ref, _excluded);\n const [buttonProps, {\n tagName: Component\n }] = useButtonProps(Object.assign({\n tagName: asProp,\n disabled\n }, props));\n return /*#__PURE__*/_jsx(Component, Object.assign({}, props, buttonProps, {\n ref: ref\n }));\n});\nButton.displayName = 'Button';\nexport default Button;","const _excluded = [\"onKeyDown\"];\nfunction _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (e.indexOf(n) >= 0) continue; t[n] = r[n]; } return t; }\n/* eslint-disable jsx-a11y/no-static-element-interactions */\n/* eslint-disable jsx-a11y/anchor-has-content */\n\nimport * as React from 'react';\nimport { useEventCallback } from '@restart/hooks';\nimport { useButtonProps } from './Button';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport function isTrivialHref(href) {\n return !href || href.trim() === '#';\n}\n/**\n * An generic `
` component that covers a few A11y cases, ensuring that\n * cases where the `href` is missing or trivial like \"#\" are treated like buttons.\n */\nconst Anchor = /*#__PURE__*/React.forwardRef((_ref, ref) => {\n let {\n onKeyDown\n } = _ref,\n props = _objectWithoutPropertiesLoose(_ref, _excluded);\n const [buttonProps] = useButtonProps(Object.assign({\n tagName: 'a'\n }, props));\n const handleKeyDown = useEventCallback(e => {\n buttonProps.onKeyDown(e);\n onKeyDown == null ? void 0 : onKeyDown(e);\n });\n if (isTrivialHref(props.href) || props.role === 'button') {\n return /*#__PURE__*/_jsx(\"a\", Object.assign({\n ref: ref\n }, props, buttonProps, {\n onKeyDown: handleKeyDown\n }));\n }\n return /*#__PURE__*/_jsx(\"a\", Object.assign({\n ref: ref\n }, props, {\n onKeyDown: onKeyDown\n }));\n});\nAnchor.displayName = 'Anchor';\nexport default Anchor;","\"use client\";\n\nimport * as React from 'react';\nimport classNames from 'classnames';\nimport Anchor from '@restart/ui/Anchor';\nimport { useBootstrapPrefix } from './ThemeProvider';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst AlertLink = /*#__PURE__*/React.forwardRef(({\n className,\n bsPrefix,\n as: Component = Anchor,\n ...props\n}, ref) => {\n bsPrefix = useBootstrapPrefix(bsPrefix, 'alert-link');\n return /*#__PURE__*/_jsx(Component, {\n ref: ref,\n className: classNames(className, bsPrefix),\n ...props\n });\n});\nAlertLink.displayName = 'AlertLink';\nexport default AlertLink;","export default {\n disabled: false\n};","import React from 'react';\nexport default React.createContext(null);","export var forceReflow = function forceReflow(node) {\n return node.scrollTop;\n};","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _inheritsLoose from \"@babel/runtime/helpers/esm/inheritsLoose\";\nimport PropTypes from 'prop-types';\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport config from './config';\nimport { timeoutsShape } from './utils/PropTypes';\nimport TransitionGroupContext from './TransitionGroupContext';\nimport { forceReflow } from './utils/reflow';\nexport var UNMOUNTED = 'unmounted';\nexport var EXITED = 'exited';\nexport var ENTERING = 'entering';\nexport var ENTERED = 'entered';\nexport var EXITING = 'exiting';\n/**\n * The Transition component lets you describe a transition from one component\n * state to another _over time_ with a simple declarative API. Most commonly\n * it's used to animate the mounting and unmounting of a component, but can also\n * be used to describe in-place transition states as well.\n *\n * ---\n *\n * **Note**: `Transition` is a platform-agnostic base component. If you're using\n * transitions in CSS, you'll probably want to use\n * [`CSSTransition`](https://reactcommunity.org/react-transition-group/css-transition)\n * instead. It inherits all the features of `Transition`, but contains\n * additional features necessary to play nice with CSS transitions (hence the\n * name of the component).\n *\n * ---\n *\n * By default the `Transition` component does not alter the behavior of the\n * component it renders, it only tracks \"enter\" and \"exit\" states for the\n * components. It's up to you to give meaning and effect to those states. For\n * example we can add styles to a component when it enters or exits:\n *\n * ```jsx\n * import { Transition } from 'react-transition-group';\n *\n * const duration = 300;\n *\n * const defaultStyle = {\n * transition: `opacity ${duration}ms ease-in-out`,\n * opacity: 0,\n * }\n *\n * const transitionStyles = {\n * entering: { opacity: 1 },\n * entered: { opacity: 1 },\n * exiting: { opacity: 0 },\n * exited: { opacity: 0 },\n * };\n *\n * const Fade = ({ in: inProp }) => (\n * \n * {state => (\n *
\n * I'm a fade Transition!\n *
\n * )}\n *
\n * );\n * ```\n *\n * There are 4 main states a Transition can be in:\n * - `'entering'`\n * - `'entered'`\n * - `'exiting'`\n * - `'exited'`\n *\n * Transition state is toggled via the `in` prop. When `true` the component\n * begins the \"Enter\" stage. During this stage, the component will shift from\n * its current transition state, to `'entering'` for the duration of the\n * transition and then to the `'entered'` stage once it's complete. Let's take\n * the following example (we'll use the\n * [useState](https://reactjs.org/docs/hooks-reference.html#usestate) hook):\n *\n * ```jsx\n * function App() {\n * const [inProp, setInProp] = useState(false);\n * return (\n *
\n * \n * {state => (\n * // ...\n * )}\n * \n * \n *
\n * );\n * }\n * ```\n *\n * When the button is clicked the component will shift to the `'entering'` state\n * and stay there for 500ms (the value of `timeout`) before it finally switches\n * to `'entered'`.\n *\n * When `in` is `false` the same thing happens except the state moves from\n * `'exiting'` to `'exited'`.\n */\n\nvar Transition = /*#__PURE__*/function (_React$Component) {\n _inheritsLoose(Transition, _React$Component);\n\n function Transition(props, context) {\n var _this;\n\n _this = _React$Component.call(this, props, context) || this;\n var parentGroup = context; // In the context of a TransitionGroup all enters are really appears\n\n var appear = parentGroup && !parentGroup.isMounting ? props.enter : props.appear;\n var initialStatus;\n _this.appearStatus = null;\n\n if (props.in) {\n if (appear) {\n initialStatus = EXITED;\n _this.appearStatus = ENTERING;\n } else {\n initialStatus = ENTERED;\n }\n } else {\n if (props.unmountOnExit || props.mountOnEnter) {\n initialStatus = UNMOUNTED;\n } else {\n initialStatus = EXITED;\n }\n }\n\n _this.state = {\n status: initialStatus\n };\n _this.nextCallback = null;\n return _this;\n }\n\n Transition.getDerivedStateFromProps = function getDerivedStateFromProps(_ref, prevState) {\n var nextIn = _ref.in;\n\n if (nextIn && prevState.status === UNMOUNTED) {\n return {\n status: EXITED\n };\n }\n\n return null;\n } // getSnapshotBeforeUpdate(prevProps) {\n // let nextStatus = null\n // if (prevProps !== this.props) {\n // const { status } = this.state\n // if (this.props.in) {\n // if (status !== ENTERING && status !== ENTERED) {\n // nextStatus = ENTERING\n // }\n // } else {\n // if (status === ENTERING || status === ENTERED) {\n // nextStatus = EXITING\n // }\n // }\n // }\n // return { nextStatus }\n // }\n ;\n\n var _proto = Transition.prototype;\n\n _proto.componentDidMount = function componentDidMount() {\n this.updateStatus(true, this.appearStatus);\n };\n\n _proto.componentDidUpdate = function componentDidUpdate(prevProps) {\n var nextStatus = null;\n\n if (prevProps !== this.props) {\n var status = this.state.status;\n\n if (this.props.in) {\n if (status !== ENTERING && status !== ENTERED) {\n nextStatus = ENTERING;\n }\n } else {\n if (status === ENTERING || status === ENTERED) {\n nextStatus = EXITING;\n }\n }\n }\n\n this.updateStatus(false, nextStatus);\n };\n\n _proto.componentWillUnmount = function componentWillUnmount() {\n this.cancelNextCallback();\n };\n\n _proto.getTimeouts = function getTimeouts() {\n var timeout = this.props.timeout;\n var exit, enter, appear;\n exit = enter = appear = timeout;\n\n if (timeout != null && typeof timeout !== 'number') {\n exit = timeout.exit;\n enter = timeout.enter; // TODO: remove fallback for next major\n\n appear = timeout.appear !== undefined ? timeout.appear : enter;\n }\n\n return {\n exit: exit,\n enter: enter,\n appear: appear\n };\n };\n\n _proto.updateStatus = function updateStatus(mounting, nextStatus) {\n if (mounting === void 0) {\n mounting = false;\n }\n\n if (nextStatus !== null) {\n // nextStatus will always be ENTERING or EXITING.\n this.cancelNextCallback();\n\n if (nextStatus === ENTERING) {\n if (this.props.unmountOnExit || this.props.mountOnEnter) {\n var node = this.props.nodeRef ? this.props.nodeRef.current : ReactDOM.findDOMNode(this); // https://github.com/reactjs/react-transition-group/pull/749\n // With unmountOnExit or mountOnEnter, the enter animation should happen at the transition between `exited` and `entering`.\n // To make the animation happen, we have to separate each rendering and avoid being processed as batched.\n\n if (node) forceReflow(node);\n }\n\n this.performEnter(mounting);\n } else {\n this.performExit();\n }\n } else if (this.props.unmountOnExit && this.state.status === EXITED) {\n this.setState({\n status: UNMOUNTED\n });\n }\n };\n\n _proto.performEnter = function performEnter(mounting) {\n var _this2 = this;\n\n var enter = this.props.enter;\n var appearing = this.context ? this.context.isMounting : mounting;\n\n var _ref2 = this.props.nodeRef ? [appearing] : [ReactDOM.findDOMNode(this), appearing],\n maybeNode = _ref2[0],\n maybeAppearing = _ref2[1];\n\n var timeouts = this.getTimeouts();\n var enterTimeout = appearing ? timeouts.appear : timeouts.enter; // no enter animation skip right to ENTERED\n // if we are mounting and running this it means appear _must_ be set\n\n if (!mounting && !enter || config.disabled) {\n this.safeSetState({\n status: ENTERED\n }, function () {\n _this2.props.onEntered(maybeNode);\n });\n return;\n }\n\n this.props.onEnter(maybeNode, maybeAppearing);\n this.safeSetState({\n status: ENTERING\n }, function () {\n _this2.props.onEntering(maybeNode, maybeAppearing);\n\n _this2.onTransitionEnd(enterTimeout, function () {\n _this2.safeSetState({\n status: ENTERED\n }, function () {\n _this2.props.onEntered(maybeNode, maybeAppearing);\n });\n });\n });\n };\n\n _proto.performExit = function performExit() {\n var _this3 = this;\n\n var exit = this.props.exit;\n var timeouts = this.getTimeouts();\n var maybeNode = this.props.nodeRef ? undefined : ReactDOM.findDOMNode(this); // no exit animation skip right to EXITED\n\n if (!exit || config.disabled) {\n this.safeSetState({\n status: EXITED\n }, function () {\n _this3.props.onExited(maybeNode);\n });\n return;\n }\n\n this.props.onExit(maybeNode);\n this.safeSetState({\n status: EXITING\n }, function () {\n _this3.props.onExiting(maybeNode);\n\n _this3.onTransitionEnd(timeouts.exit, function () {\n _this3.safeSetState({\n status: EXITED\n }, function () {\n _this3.props.onExited(maybeNode);\n });\n });\n });\n };\n\n _proto.cancelNextCallback = function cancelNextCallback() {\n if (this.nextCallback !== null) {\n this.nextCallback.cancel();\n this.nextCallback = null;\n }\n };\n\n _proto.safeSetState = function safeSetState(nextState, callback) {\n // This shouldn't be necessary, but there are weird race conditions with\n // setState callbacks and unmounting in testing, so always make sure that\n // we can cancel any pending setState callbacks after we unmount.\n callback = this.setNextCallback(callback);\n this.setState(nextState, callback);\n };\n\n _proto.setNextCallback = function setNextCallback(callback) {\n var _this4 = this;\n\n var active = true;\n\n this.nextCallback = function (event) {\n if (active) {\n active = false;\n _this4.nextCallback = null;\n callback(event);\n }\n };\n\n this.nextCallback.cancel = function () {\n active = false;\n };\n\n return this.nextCallback;\n };\n\n _proto.onTransitionEnd = function onTransitionEnd(timeout, handler) {\n this.setNextCallback(handler);\n var node = this.props.nodeRef ? this.props.nodeRef.current : ReactDOM.findDOMNode(this);\n var doesNotHaveTimeoutOrListener = timeout == null && !this.props.addEndListener;\n\n if (!node || doesNotHaveTimeoutOrListener) {\n setTimeout(this.nextCallback, 0);\n return;\n }\n\n if (this.props.addEndListener) {\n var _ref3 = this.props.nodeRef ? [this.nextCallback] : [node, this.nextCallback],\n maybeNode = _ref3[0],\n maybeNextCallback = _ref3[1];\n\n this.props.addEndListener(maybeNode, maybeNextCallback);\n }\n\n if (timeout != null) {\n setTimeout(this.nextCallback, timeout);\n }\n };\n\n _proto.render = function render() {\n var status = this.state.status;\n\n if (status === UNMOUNTED) {\n return null;\n }\n\n var _this$props = this.props,\n children = _this$props.children,\n _in = _this$props.in,\n _mountOnEnter = _this$props.mountOnEnter,\n _unmountOnExit = _this$props.unmountOnExit,\n _appear = _this$props.appear,\n _enter = _this$props.enter,\n _exit = _this$props.exit,\n _timeout = _this$props.timeout,\n _addEndListener = _this$props.addEndListener,\n _onEnter = _this$props.onEnter,\n _onEntering = _this$props.onEntering,\n _onEntered = _this$props.onEntered,\n _onExit = _this$props.onExit,\n _onExiting = _this$props.onExiting,\n _onExited = _this$props.onExited,\n _nodeRef = _this$props.nodeRef,\n childProps = _objectWithoutPropertiesLoose(_this$props, [\"children\", \"in\", \"mountOnEnter\", \"unmountOnExit\", \"appear\", \"enter\", \"exit\", \"timeout\", \"addEndListener\", \"onEnter\", \"onEntering\", \"onEntered\", \"onExit\", \"onExiting\", \"onExited\", \"nodeRef\"]);\n\n return (\n /*#__PURE__*/\n // allows for nested Transitions\n React.createElement(TransitionGroupContext.Provider, {\n value: null\n }, typeof children === 'function' ? children(status, childProps) : React.cloneElement(React.Children.only(children), childProps))\n );\n };\n\n return Transition;\n}(React.Component);\n\nTransition.contextType = TransitionGroupContext;\nTransition.propTypes = process.env.NODE_ENV !== \"production\" ? {\n /**\n * A React reference to DOM element that need to transition:\n * https://stackoverflow.com/a/51127130/4671932\n *\n * - When `nodeRef` prop is used, `node` is not passed to callback functions\n * (e.g. `onEnter`) because user already has direct access to the node.\n * - When changing `key` prop of `Transition` in a `TransitionGroup` a new\n * `nodeRef` need to be provided to `Transition` with changed `key` prop\n * (see\n * [test/CSSTransition-test.js](https://github.com/reactjs/react-transition-group/blob/13435f897b3ab71f6e19d724f145596f5910581c/test/CSSTransition-test.js#L362-L437)).\n */\n nodeRef: PropTypes.shape({\n current: typeof Element === 'undefined' ? PropTypes.any : function (propValue, key, componentName, location, propFullName, secret) {\n var value = propValue[key];\n return PropTypes.instanceOf(value && 'ownerDocument' in value ? value.ownerDocument.defaultView.Element : Element)(propValue, key, componentName, location, propFullName, secret);\n }\n }),\n\n /**\n * A `function` child can be used instead of a React element. This function is\n * called with the current transition status (`'entering'`, `'entered'`,\n * `'exiting'`, `'exited'`), which can be used to apply context\n * specific props to a component.\n *\n * ```jsx\n * \n * {state => (\n * \n * )}\n * \n * ```\n */\n children: PropTypes.oneOfType([PropTypes.func.isRequired, PropTypes.element.isRequired]).isRequired,\n\n /**\n * Show the component; triggers the enter or exit states\n */\n in: PropTypes.bool,\n\n /**\n * By default the child component is mounted immediately along with\n * the parent `Transition` component. If you want to \"lazy mount\" the component on the\n * first `in={true}` you can set `mountOnEnter`. After the first enter transition the component will stay\n * mounted, even on \"exited\", unless you also specify `unmountOnExit`.\n */\n mountOnEnter: PropTypes.bool,\n\n /**\n * By default the child component stays mounted after it reaches the `'exited'` state.\n * Set `unmountOnExit` if you'd prefer to unmount the component after it finishes exiting.\n */\n unmountOnExit: PropTypes.bool,\n\n /**\n * By default the child component does not perform the enter transition when\n * it first mounts, regardless of the value of `in`. If you want this\n * behavior, set both `appear` and `in` to `true`.\n *\n * > **Note**: there are no special appear states like `appearing`/`appeared`, this prop\n * > only adds an additional enter transition. However, in the\n * > `` component that first enter transition does result in\n * > additional `.appear-*` classes, that way you can choose to style it\n * > differently.\n */\n appear: PropTypes.bool,\n\n /**\n * Enable or disable enter transitions.\n */\n enter: PropTypes.bool,\n\n /**\n * Enable or disable exit transitions.\n */\n exit: PropTypes.bool,\n\n /**\n * The duration of the transition, in milliseconds.\n * Required unless `addEndListener` is provided.\n *\n * You may specify a single timeout for all transitions:\n *\n * ```jsx\n * timeout={500}\n * ```\n *\n * or individually:\n *\n * ```jsx\n * timeout={{\n * appear: 500,\n * enter: 300,\n * exit: 500,\n * }}\n * ```\n *\n * - `appear` defaults to the value of `enter`\n * - `enter` defaults to `0`\n * - `exit` defaults to `0`\n *\n * @type {number | { enter?: number, exit?: number, appear?: number }}\n */\n timeout: function timeout(props) {\n var pt = timeoutsShape;\n if (!props.addEndListener) pt = pt.isRequired;\n\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n\n return pt.apply(void 0, [props].concat(args));\n },\n\n /**\n * Add a custom transition end trigger. Called with the transitioning\n * DOM node and a `done` callback. Allows for more fine grained transition end\n * logic. Timeouts are still used as a fallback if provided.\n *\n * **Note**: when `nodeRef` prop is passed, `node` is not passed.\n *\n * ```jsx\n * addEndListener={(node, done) => {\n * // use the css transitionend event to mark the finish of a transition\n * node.addEventListener('transitionend', done, false);\n * }}\n * ```\n */\n addEndListener: PropTypes.func,\n\n /**\n * Callback fired before the \"entering\" status is applied. An extra parameter\n * `isAppearing` is supplied to indicate if the enter stage is occurring on the initial mount\n *\n * **Note**: when `nodeRef` prop is passed, `node` is not passed.\n *\n * @type Function(node: HtmlElement, isAppearing: bool) -> void\n */\n onEnter: PropTypes.func,\n\n /**\n * Callback fired after the \"entering\" status is applied. An extra parameter\n * `isAppearing` is supplied to indicate if the enter stage is occurring on the initial mount\n *\n * **Note**: when `nodeRef` prop is passed, `node` is not passed.\n *\n * @type Function(node: HtmlElement, isAppearing: bool)\n */\n onEntering: PropTypes.func,\n\n /**\n * Callback fired after the \"entered\" status is applied. An extra parameter\n * `isAppearing` is supplied to indicate if the enter stage is occurring on the initial mount\n *\n * **Note**: when `nodeRef` prop is passed, `node` is not passed.\n *\n * @type Function(node: HtmlElement, isAppearing: bool) -> void\n */\n onEntered: PropTypes.func,\n\n /**\n * Callback fired before the \"exiting\" status is applied.\n *\n * **Note**: when `nodeRef` prop is passed, `node` is not passed.\n *\n * @type Function(node: HtmlElement) -> void\n */\n onExit: PropTypes.func,\n\n /**\n * Callback fired after the \"exiting\" status is applied.\n *\n * **Note**: when `nodeRef` prop is passed, `node` is not passed.\n *\n * @type Function(node: HtmlElement) -> void\n */\n onExiting: PropTypes.func,\n\n /**\n * Callback fired after the \"exited\" status is applied.\n *\n * **Note**: when `nodeRef` prop is passed, `node` is not passed\n *\n * @type Function(node: HtmlElement) -> void\n */\n onExited: PropTypes.func\n} : {}; // Name the function so it is clearer in the documentation\n\nfunction noop() {}\n\nTransition.defaultProps = {\n in: false,\n mountOnEnter: false,\n unmountOnExit: false,\n appear: false,\n enter: true,\n exit: true,\n onEnter: noop,\n onEntering: noop,\n onEntered: noop,\n onExit: noop,\n onExiting: noop,\n onExited: noop\n};\nTransition.UNMOUNTED = UNMOUNTED;\nTransition.EXITED = EXITED;\nTransition.ENTERING = ENTERING;\nTransition.ENTERED = ENTERED;\nTransition.EXITING = EXITING;\nexport default Transition;","import * as React from 'react';\nexport function isEscKey(e) {\n return e.code === 'Escape' || e.keyCode === 27;\n}\nexport function getReactVersion() {\n const parts = React.version.split('.');\n return {\n major: +parts[0],\n minor: +parts[1],\n patch: +parts[2]\n };\n}\nexport function getChildRef(element) {\n if (!element || typeof element === 'function') {\n return null;\n }\n const {\n major\n } = getReactVersion();\n const childRef = major >= 19 ? element.props.ref : element.ref;\n return childRef;\n}","/**\n * Returns the owner document of a given element.\n * \n * @param node the element\n */\nexport default function ownerDocument(node) {\n return node && node.ownerDocument || document;\n}","import ownerWindow from './ownerWindow';\n/**\n * Returns one or all computed style properties of an element.\n * \n * @param node the element\n * @param psuedoElement the style property\n */\n\nexport default function getComputedStyle(node, psuedoElement) {\n return ownerWindow(node).getComputedStyle(node, psuedoElement);\n}","import ownerDocument from './ownerDocument';\n/**\n * Returns the owner window of a given element.\n * \n * @param node the element\n */\n\nexport default function ownerWindow(node) {\n var doc = ownerDocument(node);\n return doc && doc.defaultView || window;\n}","var rUpper = /([A-Z])/g;\nexport default function hyphenate(string) {\n return string.replace(rUpper, '-$1').toLowerCase();\n}","/**\n * Copyright 2013-2014, Facebook, Inc.\n * All rights reserved.\n * https://github.com/facebook/react/blob/2aeb8a2a6beb00617a4217f7f8284924fa2ad819/src/vendor/core/hyphenateStyleName.js\n */\nimport hyphenate from './hyphenate';\nvar msPattern = /^ms-/;\nexport default function hyphenateStyleName(string) {\n return hyphenate(string).replace(msPattern, '-ms-');\n}","var supportedTransforms = /^((translate|rotate|scale)(X|Y|Z|3d)?|matrix(3d)?|perspective|skew(X|Y)?)$/i;\nexport default function isTransform(value) {\n return !!(value && supportedTransforms.test(value));\n}","import getComputedStyle from './getComputedStyle';\nimport hyphenate from './hyphenateStyle';\nimport isTransform from './isTransform';\n\nfunction style(node, property) {\n var css = '';\n var transforms = '';\n\n if (typeof property === 'string') {\n return node.style.getPropertyValue(hyphenate(property)) || getComputedStyle(node).getPropertyValue(hyphenate(property));\n }\n\n Object.keys(property).forEach(function (key) {\n var value = property[key];\n\n if (!value && value !== 0) {\n node.style.removeProperty(hyphenate(key));\n } else if (isTransform(key)) {\n transforms += key + \"(\" + value + \") \";\n } else {\n css += hyphenate(key) + \": \" + value + \";\";\n }\n });\n\n if (transforms) {\n css += \"transform: \" + transforms + \";\";\n }\n\n node.style.cssText += \";\" + css;\n}\n\nexport default style;","export default !!(typeof window !== 'undefined' && window.document && window.document.createElement);","/* eslint-disable no-return-assign */\nimport canUseDOM from './canUseDOM';\nexport var optionsSupported = false;\nexport var onceSupported = false;\n\ntry {\n var options = {\n get passive() {\n return optionsSupported = true;\n },\n\n get once() {\n // eslint-disable-next-line no-multi-assign\n return onceSupported = optionsSupported = true;\n }\n\n };\n\n if (canUseDOM) {\n window.addEventListener('test', options, options);\n window.removeEventListener('test', options, true);\n }\n} catch (e) {\n /* */\n}\n\n/**\n * An `addEventListener` ponyfill, supports the `once` option\n * \n * @param node the element\n * @param eventName the event name\n * @param handle the handler\n * @param options event options\n */\nfunction addEventListener(node, eventName, handler, options) {\n if (options && typeof options !== 'boolean' && !onceSupported) {\n var once = options.once,\n capture = options.capture;\n var wrappedHandler = handler;\n\n if (!onceSupported && once) {\n wrappedHandler = handler.__once || function onceHandler(event) {\n this.removeEventListener(eventName, onceHandler, capture);\n handler.call(this, event);\n };\n\n handler.__once = wrappedHandler;\n }\n\n node.addEventListener(eventName, wrappedHandler, optionsSupported ? options : capture);\n }\n\n node.addEventListener(eventName, handler, options);\n}\n\nexport default addEventListener;","/**\n * A `removeEventListener` ponyfill\n * \n * @param node the element\n * @param eventName the event name\n * @param handle the handler\n * @param options event options\n */\nfunction removeEventListener(node, eventName, handler, options) {\n var capture = options && typeof options !== 'boolean' ? options.capture : options;\n node.removeEventListener(eventName, handler, capture);\n\n if (handler.__once) {\n node.removeEventListener(eventName, handler.__once, capture);\n }\n}\n\nexport default removeEventListener;","import addEventListener from './addEventListener';\nimport removeEventListener from './removeEventListener';\n\nfunction listen(node, eventName, handler, options) {\n addEventListener(node, eventName, handler, options);\n return function () {\n removeEventListener(node, eventName, handler, options);\n };\n}\n\nexport default listen;","import css from './css';\nimport listen from './listen';\nimport triggerEvent from './triggerEvent';\n\nfunction parseDuration(node) {\n var str = css(node, 'transitionDuration') || '';\n var mult = str.indexOf('ms') === -1 ? 1000 : 1;\n return parseFloat(str) * mult;\n}\n\nfunction emulateTransitionEnd(element, duration, padding) {\n if (padding === void 0) {\n padding = 5;\n }\n\n var called = false;\n var handle = setTimeout(function () {\n if (!called) triggerEvent(element, 'transitionend', true);\n }, duration + padding);\n var remove = listen(element, 'transitionend', function () {\n called = true;\n }, {\n once: true\n });\n return function () {\n clearTimeout(handle);\n remove();\n };\n}\n\nexport default function transitionEnd(element, handler, duration, padding) {\n if (duration == null) duration = parseDuration(element) || 0;\n var removeEmulate = emulateTransitionEnd(element, duration, padding);\n var remove = listen(element, 'transitionend', handler);\n return function () {\n removeEmulate();\n remove();\n };\n}","/**\n * Triggers an event on a given element.\n * \n * @param node the element\n * @param eventName the event name to trigger\n * @param bubbles whether the event should bubble up\n * @param cancelable whether the event should be cancelable\n */\nexport default function triggerEvent(node, eventName, bubbles, cancelable) {\n if (bubbles === void 0) {\n bubbles = false;\n }\n\n if (cancelable === void 0) {\n cancelable = true;\n }\n\n if (node) {\n var event = document.createEvent('HTMLEvents');\n event.initEvent(eventName, bubbles, cancelable);\n node.dispatchEvent(event);\n }\n}","import css from 'dom-helpers/css';\nimport transitionEnd from 'dom-helpers/transitionEnd';\nfunction parseDuration(node, property) {\n const str = css(node, property) || '';\n const mult = str.indexOf('ms') === -1 ? 1000 : 1;\n return parseFloat(str) * mult;\n}\nexport default function transitionEndListener(element, handler) {\n const duration = parseDuration(element, 'transitionDuration');\n const delay = parseDuration(element, 'transitionDelay');\n const remove = transitionEnd(element, e => {\n if (e.target === element) {\n remove();\n handler(e);\n }\n }, duration + delay);\n}","// reading a dimension prop will cause the browser to recalculate,\n// which will let our animations work\nexport default function triggerBrowserReflow(node) {\n // eslint-disable-next-line @typescript-eslint/no-unused-expressions\n node.offsetHeight;\n}","import { useMemo } from 'react';\nconst toFnRef = ref => !ref || typeof ref === 'function' ? ref : value => {\n ref.current = value;\n};\nexport function mergeRefs(refA, refB) {\n const a = toFnRef(refA);\n const b = toFnRef(refB);\n return value => {\n if (a) a(value);\n if (b) b(value);\n };\n}\n\n/**\n * Create and returns a single callback ref composed from two other Refs.\n *\n * ```tsx\n * const Button = React.forwardRef((props, ref) => {\n * const [element, attachRef] = useCallbackRef();\n * const mergedRef = useMergedRefs(ref, attachRef);\n *\n * return \r\n \r\n \r\n \r\n \r\n );\r\n }\r\n\r\n function copyLinkTextToClipboard() {\r\n const textBox = linkTextRef.current!;\r\n textBox.select();\r\n textBox.setSelectionRange(0, textBox.value.length);\r\n document.execCommand(\"copy\");\r\n\r\n setShowCopied(true);\r\n }\r\n\r\n return (\r\n <>\r\n \r\n {showDialog && copyLinkDialog(props.href)}\r\n \r\n );\r\n}\r\n","import { getServicesUri } from \"../../api/uriHelper\";\r\n\r\nexport interface IClient {\r\n initialise(id: number): void;\r\n getUrl(): string;\r\n}\r\n\r\nexport class Client implements IClient {\r\n private _id: number | undefined;\r\n\r\n public initialise(id: number) {\r\n this._assertNotInitialised();\r\n this._id = id;\r\n }\r\n\r\n public getUrl(): string {\r\n this._assertInitialised();\r\n\r\n // this returns the unauthenticated URL which uses the token\r\n // the ids are returned to help avoid caching and provide better traceability in logs\r\n // they are also cross-checked server-side\r\n\r\n const query = this._getQueryString();\r\n return getServicesUri() + \"/file/public/download/content?\" + query;\r\n }\r\n\r\n private _getQueryString() {\r\n return \"id=\" + this._id;\r\n }\r\n\r\n private _assertInitialised() {\r\n if (!this._id) throw new Error(\"Not yet intialised.\");\r\n }\r\n\r\n private _assertNotInitialised() {\r\n if (this._id) throw new Error(\"Already intialised.\");\r\n }\r\n}\r\n","// framework\r\nimport { useState, ReactElement, ReactNode } from \"react\";\r\nimport { Client } from \"./client\";\r\nimport { DownloadIcon } from \"@primer/octicons-react\";\r\n\r\ninterface IProps {\r\n className?: string | undefined;\r\n disabled?: boolean | undefined;\r\n title?: string | undefined;\r\n children?: ReactNode | undefined;\r\n fileId: number;\r\n}\r\n\r\nexport function LinkControl(props: IProps): ReactElement {\r\n // we won't trigger a global busy state, however we'll just show the link as acknowledging the download by disabling it\r\n const [isBusy, setIsBusy] = useState(false);\r\n\r\n async function onClick(): Promise {\r\n setIsBusy(true);\r\n\r\n // generate the token and get the URL\r\n const client = new Client();\r\n client.initialise(props.fileId);\r\n const url = client.getUrl();\r\n\r\n // initiate the download\r\n // - this opens a new browser window, but given it's a file response it will automatically close\r\n // - if anything goes wrong, the window is left open\r\n window.open(url);\r\n\r\n setIsBusy(false);\r\n }\r\n\r\n return (\r\n \r\n {\r\n await onClick();\r\n }}\r\n >\r\n {props.children ?? \"Download\"}\r\n \r\n \r\n \r\n );\r\n}\r\n","// framework\r\nimport { useState } from \"react\";\r\n// kendo\r\nimport { Grid, GridColumn } from \"@progress/kendo-react-grid\";\r\nimport { process, State } from \"@progress/kendo-data-query\";\r\n// api\r\nimport * as Client from \"../../../../api/Client\";\r\n// common\r\nimport * as GlobalHelpers from \"../../../../common/GlobalHelpers\";\r\nimport * as OpenTitleHelper from \"../../../../open/title/openTitleHelper\";\r\nimport CopyLink from \"../../../../common/links/CopyLinkView\";\r\nimport { DashIcon } from \"@primer/octicons-react\";\r\nimport CustomGridCell from \"../../../../common/kendoGrid/CustomGridCell\";\r\nimport { createGridColumnCheckboxFilterMenu } from \"../../../../common/kendoGrid/GridColumnCheckboxFilterMenu\";\r\nimport * as SecureFileDownloadLinkControl from \"../../../../common/secureFileDownload/SecureFileDownloadLinkControl\";\r\n\r\nfunction MemorialView(props: { response: Client.GetPublicTitleDetailsResponseDto | undefined }) {\r\n const response = props.response;\r\n const titleNumber = response?.titleNumber;\r\n const applications = response?.memorial?.applications ?? new Array(); // applications are sorted in the service\r\n\r\n const [gridState, setGridState] = useState({\r\n skip: 0,\r\n take: 10,\r\n } as State);\r\n\r\n function documentDownload(fileId: number | undefined, applicationId: string) {\r\n if (!fileId) {\r\n return ;\r\n }\r\n\r\n // titleNumber will have a value when there is a file associated\r\n const uri = OpenTitleHelper.generateDownloadMemorialDocumentUrl(titleNumber!, applicationId);\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n );\r\n }\r\n\r\n return (\r\n <>\r\n
\r\n
\r\n

Memorial

\r\n {\r\n setGridState(e.dataState);\r\n }}\r\n >\r\n createGridColumnCheckboxFilterMenu(p, applications)} />\r\n createGridColumnCheckboxFilterMenu(p, applications)} />\r\n \r\n \r\n \r\n \r\n \r\n {documentDownload(props.dataItem.fileId, props.dataItem.applicationId)}}\r\n />\r\n \r\n
\r\n
\r\n \r\n );\r\n}\r\n\r\nexport default MemorialView;\r\n","// framework\r\nimport { useState } from \"react\";\r\n// kendo\r\nimport { Grid, GridColumn } from \"@progress/kendo-react-grid\";\r\nimport { process, State } from \"@progress/kendo-data-query\";\r\n// api\r\nimport * as Client from \"../../../../../api/Client\";\r\n// other\r\nimport * as GlobalHelpers from \"../../../../../common/GlobalHelpers\";\r\nimport * as Forms from \"../../../../../common/forms/BootstrapForms\";\r\n\r\nfunction BlocksView(props: { blocks: Client.GetPublicTitleDetailsBlockDto[]; areaSqKm: number | undefined; showLocations: boolean }) {\r\n const blocks = props.blocks;\r\n const areaSqKm = props.areaSqKm;\r\n const showLocationName = props.showLocations;\r\n\r\n const [gridState, setGridState] = useState({\r\n sort: [\r\n { field: \"mapSheetCode\", dir: \"asc\" },\r\n { field: \"blockNumber\", dir: \"asc\" },\r\n ],\r\n } as State);\r\n\r\n return (\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {/* blocks grid */}\r\n {\r\n setGridState(e.dataState);\r\n }}\r\n >\r\n \r\n \r\n \r\n \r\n {showLocationName && }\r\n \r\n
\r\n
\r\n );\r\n}\r\n\r\nexport default BlocksView;\r\n","// kendo\r\nimport { Grid, GridColumn } from \"@progress/kendo-react-grid\";\r\nimport { orderBy } from \"@progress/kendo-data-query\";\r\n// api\r\nimport * as Client from \"../../../../../api/Client\";\r\n// other\r\nimport * as GlobalHelpers from \"../../../../../common/GlobalHelpers\";\r\n\r\nfunction LocationsView(props: { locations: Client.GetPublicTitleDetailsLocationDto[] }) {\r\n const sortedLocations = orderBy(props.locations, [\r\n { field: \"isActive\", dir: \"desc\" },\r\n { field: \"locationName\", dir: \"asc\" },\r\n ]);\r\n\r\n return (\r\n
\r\n
\r\n
For more information please refer to the Memorial tab
\r\n {/* locations grid */}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n );\r\n}\r\n\r\nexport default LocationsView;\r\n","// framework\r\nimport Tabs from \"react-bootstrap/Tabs\";\r\nimport Tab from \"react-bootstrap/Tab\";\r\n// api\r\nimport * as Client from \"../../../../../api/Client\";\r\n// children views\r\nimport BlocksView from \"./BlocksView\";\r\nimport LocationsView from \"./LocationsView\";\r\n// other\r\nimport TitleDetailsConfiguration from \"../TitleDetailsConfiguration\";\r\n\r\nfunction BlocksAndLocationsView(props: {\r\n configuration: TitleDetailsConfiguration;\r\n response: Client.GetPublicTitleDetailsResponseDto | undefined;\r\n mapResponse: Client.GetPublicTitleDetailsMapResponseDto | undefined;\r\n}) {\r\n const configuration = props.configuration;\r\n const response = props.response;\r\n const blocks = response?.blocksAndLocations?.blocks ?? new Array();\r\n const locations = response?.blocksAndLocations?.locations ?? new Array();\r\n const areaSqKm = props.mapResponse?.areaSqKm;\r\n\r\n return (\r\n <>\r\n
\r\n \r\n {/* Blocks Tab */}\r\n \r\n \r\n \r\n\r\n {/* Locations Tab */}\r\n {configuration.IsLocationsDataVisible && (\r\n \r\n \r\n \r\n )}\r\n \r\n
\r\n \r\n );\r\n}\r\n\r\nexport default BlocksAndLocationsView;\r\n","// framework\r\nimport Tabs from \"react-bootstrap/Tabs\";\r\nimport Tab from \"react-bootstrap/Tab\";\r\n// api\r\nimport * as Client from \"../../../../api/Client\";\r\n// children views\r\nimport TitleSummaryView from \"./titleSummary/TitleSummaryView\";\r\nimport TitleholdersView from \"./TitleholdersView\";\r\nimport WorkProgramView from \"./workProgram/WorkProgramView\";\r\nimport MemorialView from \"./MemorialView\";\r\nimport BlocksAndLocationsView from \"./blocksAndLocations/BlocksAndLocationsView\";\r\n// other\r\nimport TitleDetailsConfiguration from \"./TitleDetailsConfiguration\";\r\n\r\nexport enum TitleDetailsTabsEnum {\r\n summary,\r\n titleHolders,\r\n workProgram,\r\n memorial,\r\n blocksAndLocations,\r\n}\r\n\r\nfunction TitleDetailsView(props: {\r\n configuration: TitleDetailsConfiguration;\r\n response: Client.GetPublicTitleDetailsResponseDto | undefined;\r\n mapResponse: Client.GetPublicTitleDetailsMapResponseDto | undefined;\r\n preferredTab?: TitleDetailsTabsEnum;\r\n}) {\r\n const configuration = props.configuration;\r\n const response = props.response;\r\n const mapResponse = props.mapResponse;\r\n const preferredTab = props.preferredTab ?? TitleDetailsTabsEnum.summary;\r\n\r\n return (\r\n \r\n {/* Summary Tab */}\r\n \r\n \r\n \r\n\r\n {/* Titleholders Tab */}\r\n \r\n \r\n \r\n\r\n {/* Work Program Tab */}\r\n {configuration.IsWorkProgramVisible && (\r\n \r\n \r\n \r\n )}\r\n\r\n {/* Memorial Tab */}\r\n \r\n \r\n \r\n\r\n {/* Blocks & Locations Tab */}\r\n {configuration.IsBlocksAndLocationsTabVisible && (\r\n \r\n \r\n \r\n )}\r\n \r\n );\r\n}\r\n\r\nexport default TitleDetailsView;\r\n","import { TitleTypeEnum } from \"../../../../api/Client\";\r\n\r\nexport default class TitleDetailsConfiguration {\r\n public constructor(titleType: TitleTypeEnum | undefined) {\r\n if (!titleType) {\r\n this.IsWorkProgramVisible = false;\r\n this.IsBlocksAndLocationsTabVisible = false;\r\n this.IsLocationsDataVisible = false;\r\n return;\r\n }\r\n\r\n switch (titleType) {\r\n case TitleTypeEnum.AccessAuthority:\r\n this.IsWorkProgramVisible = false;\r\n this.IsBlocksAndLocationsTabVisible = true;\r\n this.IsLocationsDataVisible = false;\r\n return;\r\n case TitleTypeEnum.ExplorationPermit:\r\n this.IsWorkProgramVisible = true;\r\n this.IsBlocksAndLocationsTabVisible = true;\r\n this.IsLocationsDataVisible = true;\r\n return;\r\n case TitleTypeEnum.InfrastructureLicence:\r\n this.IsWorkProgramVisible = false;\r\n this.IsBlocksAndLocationsTabVisible = false;\r\n this.IsLocationsDataVisible = false;\r\n return;\r\n case TitleTypeEnum.PipelineLicence:\r\n this.IsWorkProgramVisible = false;\r\n this.IsBlocksAndLocationsTabVisible = false;\r\n this.IsLocationsDataVisible = false;\r\n return;\r\n case TitleTypeEnum.ProductionLicence:\r\n this.IsWorkProgramVisible = false;\r\n this.IsBlocksAndLocationsTabVisible = true;\r\n this.IsLocationsDataVisible = false;\r\n return;\r\n case TitleTypeEnum.RetentionLease:\r\n this.IsWorkProgramVisible = true;\r\n this.IsBlocksAndLocationsTabVisible = true;\r\n this.IsLocationsDataVisible = false;\r\n return;\r\n case TitleTypeEnum.SpecialProspectingAuthority:\r\n this.IsWorkProgramVisible = false;\r\n this.IsBlocksAndLocationsTabVisible = true;\r\n this.IsLocationsDataVisible = false;\r\n return;\r\n case TitleTypeEnum.GreenhouseGasAssessmentPermit:\r\n this.IsWorkProgramVisible = true;\r\n this.IsBlocksAndLocationsTabVisible = true;\r\n this.IsLocationsDataVisible = false;\r\n return;\r\n default:\r\n throw new Error(`Unsupported Title Type '${titleType}'.`);\r\n }\r\n }\r\n\r\n public IsWorkProgramVisible: boolean;\r\n public IsBlocksAndLocationsTabVisible: boolean;\r\n public IsLocationsDataVisible: boolean;\r\n}\r\n","// framework\r\nimport { useEffect, useState } from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport { useParams, useLocation } from \"react-router-dom\";\r\n// shell\r\nimport { setLayout } from \"../../../../shell/redux/shellActions\";\r\n// api\r\nimport { getTitleDetailsRequestAction, getTitleMapDetailsRequestAction, clearTitleDetailsAction, clearTitleMapDetailsAction } from \"../redux/titleDetailsActions\";\r\n// helpers\r\nimport * as TitleDetailsHelper from \"../titleDetailsHelper\";\r\n// children views\r\nimport TitleDetailsView from \"./TitleDetailsView\";\r\nimport TitleDetailsConfiguration from \"./TitleDetailsConfiguration\";\r\nimport { ITitleDetailsState } from \"../redux/titleDetailsReducers\";\r\n\r\ninterface IRouteParameters {\r\n titleId: string;\r\n}\r\n\r\nfunction TitleDetailsController(props: any) {\r\n const { titleId } = useParams();\r\n\r\n const { setLayout, getTitleDetailsRequestAction, clearTitleDetailsAction, getTitleMapDetailsRequestAction, clearTitleMapDetailsAction } = props;\r\n const state: ITitleDetailsState = props.state;\r\n\r\n // Title Details\r\n const response = state.response;\r\n\r\n // - initial title load\r\n useEffect(() => {\r\n getTitleDetailsRequestAction(titleId);\r\n\r\n return function onUnmount() {\r\n clearTitleDetailsAction();\r\n };\r\n }, [getTitleDetailsRequestAction, clearTitleDetailsAction, titleId]);\r\n\r\n // - set page header when response received\r\n useEffect(() => {\r\n if (!response) {\r\n setLayout(\"\");\r\n return;\r\n }\r\n\r\n setLayout(response.titleTypeName + \" \" + response.titleNumber);\r\n }, [setLayout, response]);\r\n\r\n // Configuration\r\n var configuration = new TitleDetailsConfiguration(response?.titleType);\r\n\r\n // Title Map Details\r\n const mapResponse = state.mapResponse;\r\n\r\n // - initial map load\r\n useEffect(() => {\r\n getTitleMapDetailsRequestAction(titleId);\r\n\r\n return function onUnmount() {\r\n clearTitleMapDetailsAction();\r\n };\r\n }, [getTitleMapDetailsRequestAction, clearTitleMapDetailsAction, titleId]);\r\n\r\n // automation requests\r\n const [hasAutomationRun, setHasAutomationRun] = useState(false);\r\n const location = useLocation();\r\n const params = new URLSearchParams(location.search);\r\n const tab = TitleDetailsHelper.tryGetPreferredTab(params);\r\n useEffect(() => {\r\n if (!response) return; // only allow automation to run after the page has initialised\r\n if (hasAutomationRun) return; // only run automation once\r\n\r\n TitleDetailsHelper.tryOpenTitleMemorialDocument(state, params);\r\n\r\n setHasAutomationRun(true);\r\n }, [response, hasAutomationRun]); // eslint-disable-line react-hooks/exhaustive-deps\r\n\r\n // return\r\n return ;\r\n}\r\n\r\n// connect redux\r\nexport default connect((state: any) => ({ state: state.titleDetails }), {\r\n setLayout,\r\n getTitleDetailsRequestAction,\r\n clearTitleDetailsAction,\r\n getTitleMapDetailsRequestAction,\r\n clearTitleMapDetailsAction,\r\n})(TitleDetailsController);\r\n","export var ARC = \"arc\";\nexport var ARROW_UP = \"ArrowUp\";\nexport var ARROW_DOWN = \"ArrowDown\";\nexport var ARROW_LEFT = \"ArrowLeft\";\nexport var ARROW_RIGHT = \"ArrowRight\";\nexport var TAB = \"Tab\";\nexport var ARIA_ACTIVE_DESCENDANT = \"aria-activedescendant\";\nexport var AXIS_LABEL_CLICK = \"axisLabelClick\";\nexport var BLACK = \"#000\";\nexport var BOTTOM = \"bottom\";\nexport var CENTER = \"center\";\nexport var CIRCLE = \"circle\";\nexport var COORD_PRECISION = 3;\nexport var CROSS = \"cross\";\nexport var DATE = \"date\";\nexport var DEFAULT_FONT = \"12px sans-serif\";\nexport var DEFAULT_HEIGHT = 400;\nexport var DEFAULT_PRECISION = 10;\nexport var DEFAULT_WIDTH = 600;\nexport var END = \"end\";\nexport var ENTER = \"Enter\";\nexport var ESCAPE = \"Escape\";\nexport var FORMAT_REGEX = /\\{\\d+:?/;\nexport var HEIGHT = \"height\";\nexport var HIGHLIGHT_ZINDEX = 100;\nexport var INSIDE = \"inside\";\nexport var INHERIT = \"inherit\";\nexport var LEFT = \"left\";\nexport var MAX_VALUE = Number.MAX_VALUE;\nexport var MIN_VALUE = -Number.MAX_VALUE;\nexport var NONE = \"none\";\nexport var NOTE_CLICK = \"noteClick\";\nexport var NOTE_HOVER = \"noteHover\";\nexport var NOTE_LEAVE = \"noteLeave\";\nexport var OBJECT = \"object\";\nexport var OUTSIDE = \"outside\";\nexport var RIGHT = \"right\";\nexport var ROUNDED_RECT = \"roundedRect\";\nexport var START = \"start\";\nexport var STRING = \"string\";\nexport var TOP = \"top\";\nexport var TRIANGLE = \"triangle\";\nexport var SQUARE = \"square\";\nexport var RECT = \"rect\";\nexport var VALUE = \"value\";\nexport var WHITE = \"#fff\";\nexport var WIDTH = \"width\";\nexport var X = \"x\";\nexport var Y = \"y\";\nexport var DEFAULT_SERIES_OPACITY = 1;\nexport var POINTER = \"pointer\";\nexport var HORIZONTAL = \"horizontal\";\nexport var VERTICAL = \"vertical\";\n","export default function isArray(value) {\n return Array.isArray(value);\n}","import isArray from './is-array';\n\nexport default function addClass(element, classes) {\n var classArray = isArray(classes) ? classes : [ classes ];\n\n for (var idx = 0; idx < classArray.length; idx++) {\n var className = classArray[idx];\n if (element.className.indexOf(className) === -1) {\n element.className += \" \" + className;\n }\n }\n}","var SPACE_REGEX = /\\s+/g;\n\nexport default function removeClass(element, className) {\n if (element && element.className) {\n element.className = element.className.replace(className, \"\").replace(SPACE_REGEX, \" \");\n }\n}","var UNDEFINED = \"undefined\";\n\nexport default function defined(value) {\n return typeof value !== UNDEFINED;\n}","import { drawing } from '@progress/kendo-drawing';\n\nexport default function alignPathToPixel(path) {\n var offset = 0.5;\n if (path.options.stroke && drawing.util.defined(path.options.stroke.width)) {\n if (path.options.stroke.width % 2 === 0) {\n offset = 0;\n }\n }\n\n for (var i = 0; i < path.segments.length; i++) {\n path.segments[i].anchor().round(0).translate(offset, offset);\n }\n\n return path;\n}","export default function clockwise(angle1, angle2) {\n // True if angle2 is clockwise of angle1\n // assuming angles grow in clock-wise direction\n // (as in the pie and radar charts)\n return -angle1.x * angle2.y + angle1.y * angle2.x < 0;\n}","export default function isNumber(value) {\n return typeof value === \"number\" && !isNaN(value);\n}","import { STRING } from './constants';\n\nexport default function isString(value) {\n return typeof value === STRING;\n}","import isNumber from './is-number';\nimport isString from './is-string';\n\nexport default function convertableToNumber(value) {\n return isNumber(value) || (isString(value) && isFinite(value));\n}","export default function cycleUp(index, count) {\n return (index + 1) % count;\n}\n","export default function cycleDown(index, count) {\n var result = index - 1;\n\n return result < 0 ? count - 1 : result;\n}\n","export default function cycleIndex(index, length) {\n if (length === 1 || (index % length) === 0) {\n return 0;\n }\n\n if (index < 0) {\n return length + (index % length);\n } else if (index >= length) {\n return index % length;\n }\n\n return index;\n}","export default function isFunction(fn) {\n return typeof fn === \"function\";\n}","import isFunction from './is-function';\n\nvar OBJECT = \"object\";\nvar UNDEFINED = \"undefined\";\n\nfunction deepExtendOne(destination, source) {\n for (var property in source) {\n if (property === '__proto__' || property === 'constructor') {\n continue;\n }\n\n var propValue = source[property];\n var propType = typeof propValue;\n\n var propInit = (void 0);\n if (propType === OBJECT && propValue !== null) {\n propInit = propValue.constructor;\n } else {\n propInit = null;\n }\n\n if (propInit && propInit !== Array) {\n if (propValue instanceof Date) {\n destination[property] = new Date(propValue.getTime());\n } else if (isFunction(propValue.clone)) {\n destination[property] = propValue.clone();\n } else {\n var destProp = destination[property];\n if (typeof (destProp) === OBJECT) {\n destination[property] = destProp || {};\n } else {\n destination[property] = {};\n }\n deepExtendOne(destination[property], propValue);\n }\n } else if (propType !== UNDEFINED) {\n destination[property] = propValue;\n }\n }\n\n return destination;\n}\n\nexport default function deepExtend(destination) {\n var arguments$1 = arguments;\n\n var length = arguments.length;\n\n for (var i = 1; i < length; i++) {\n deepExtendOne(destination, arguments$1[i]);\n }\n\n return destination;\n}\n","export default function isObject(value) {\n return typeof value === \"object\";\n}","import isNumber from './is-number';\n\nexport default function styleValue(value) {\n if (isNumber(value)) {\n return value + \"px\";\n }\n return value;\n}","import isObject from './is-object';\nimport isArray from './is-array';\nimport isString from './is-string';\nimport styleValue from './style-value';\n\nvar SIZE_STYLES_REGEX = /width|height|top|left|bottom|right/i;\n\nfunction isSizeField(field) {\n return SIZE_STYLES_REGEX.test(field);\n}\n\nexport default function elementStyles(element, styles) {\n var stylesArray = isString(styles) ? [ styles ] : styles;\n\n if (isArray(stylesArray)) {\n var result = {};\n var style = window.getComputedStyle(element);\n\n for (var idx = 0; idx < stylesArray.length; idx++) {\n var field = stylesArray[idx];\n result[field] = isSizeField(field) ? parseFloat(style[field]) : style[field];\n }\n\n return result;\n } else if (isObject(styles)) {\n for (var field$1 in styles) {\n element.style[field$1] = styleValue(styles[field$1]);\n }\n }\n}","import { TOP, BOTTOM, LEFT, RIGHT } from './constants';\n\nexport default function getSpacing(value, defaultSpacing) {\n if ( defaultSpacing === void 0 ) defaultSpacing = 0;\n\n var spacing = { top: 0, right: 0, bottom: 0, left: 0 };\n\n if (typeof(value) === \"number\") {\n spacing[TOP] = spacing[RIGHT] = spacing[BOTTOM] = spacing[LEFT] = value;\n } else {\n spacing[TOP] = value[TOP] || defaultSpacing;\n spacing[RIGHT] = value[RIGHT] || defaultSpacing;\n spacing[BOTTOM] = value[BOTTOM] || defaultSpacing;\n spacing[LEFT] = value[LEFT] || defaultSpacing;\n }\n\n return spacing;\n}","var current = {\n compile: function(template) {\n return template;\n }\n};\n\nvar TemplateService = function TemplateService () {};\n\nTemplateService.register = function register (userImplementation) {\n current = userImplementation;\n};\n\nTemplateService.compile = function compile (template, options) {\n return current.compile(template, options);\n};\n\nexport default TemplateService;\n","import TemplateService from '../services/template-service';\nimport isFunction from './is-function';\n\nexport default function getTemplate(options) {\n if ( options === void 0 ) options = {};\n\n var template;\n if (options.template) {\n options.template = template = TemplateService.compile(options.template);\n } else if (isFunction(options.content)) {\n template = options.content;\n }\n\n return template;\n}\n","import TemplateService from '../services/template-service';\nimport isFunction from './is-function';\n\nexport default function getTemplate(options) {\n if ( options === void 0 ) options = {};\n\n var ariaTemplate;\n if (options.ariaTemplate) {\n options.ariaTemplate = ariaTemplate = TemplateService.compile(options.ariaTemplate);\n } else if (isFunction(options.ariaContent)) {\n ariaTemplate = options.ariaContent;\n }\n\n return ariaTemplate;\n}\n","import { drawing } from '@progress/kendo-drawing';\n\nvar FIELD_REGEX = /\\[(?:(\\d+)|['\"](.*?)['\"])\\]|((?:(?!\\[.*?\\]|\\.).)+)/g;\nvar getterCache = {};\n\ngetterCache['undefined'] = function(obj) {\n return obj;\n};\n\nexport default function getter(field) {\n if (getterCache[field]) {\n return getterCache[field];\n }\n\n var fields = [];\n field.replace(FIELD_REGEX, function(match, index, indexAccessor, field) {\n fields.push(drawing.util.defined(index) ? index : (indexAccessor || field));\n });\n\n getterCache[field] = function(obj) {\n var result = obj;\n for (var idx = 0; idx < fields.length && result; idx++) {\n result = result[fields[idx]];\n }\n\n return result;\n };\n\n return getterCache[field];\n}","export default function grep(array, callback) {\n var length = array.length;\n var result = [];\n for (var idx = 0; idx < length; idx++) {\n if (callback(array[idx])) {\n result .push(array[idx]);\n }\n }\n\n return result;\n}","export default function hasClasses(element, classNames) {\n if (element.className) {\n var names = classNames.split(\" \");\n for (var idx = 0; idx < names.length; idx++) {\n if (element.className.indexOf && element.className.indexOf(names[idx]) !== -1) {\n return true;\n }\n }\n }\n}\n","// TODO: Remove and replace with Map/WeakMap.\nvar HashMap = function HashMap() {\n this._map = new Map();\n};\n\nHashMap.prototype.get = function get (key) {\n return this._map.get(key);\n};\n\nHashMap.prototype.set = function set (key, value) {\n this._map.set(key, value);\n};\n\nexport default HashMap;\n","export default function inArray(value, array) {\n if (array) {\n return array.indexOf(value) !== -1;\n }\n}","function pow(p) {\n if (p) {\n return Math.pow(10, p);\n }\n\n return 1;\n}\n\nexport default function round(value, precision) {\n var power = pow(precision);\n return Math.round(value * power) / power;\n}","import { drawing } from '@progress/kendo-drawing';\nimport { COORD_PRECISION } from './constants';\n\nexport default function interpolateValue(start, end, progress) {\n return drawing.util.round(start + (end - start) * progress, COORD_PRECISION);\n}","import deepExtend from './deep-extend';\n\nvar TRIGGER = 'trigger';\n\nvar InstanceObserver = function InstanceObserver(observer, handlers) {\n this.observer = observer;\n this.handlerMap = deepExtend({}, this.handlerMap, handlers);\n};\n\nInstanceObserver.prototype.trigger = function trigger (name, args) {\n var ref = this;\n var observer = ref.observer;\n var handlerMap = ref.handlerMap;\n var isDefaultPrevented;\n if (handlerMap[name]) {\n isDefaultPrevented = this.callObserver(handlerMap[name], args);\n } else if (observer[TRIGGER]) {\n isDefaultPrevented = this.callObserver(TRIGGER, name, args);\n }\n\n return isDefaultPrevented;\n};\n\nInstanceObserver.prototype.callObserver = function callObserver (fnName) {\n var args = [], len = arguments.length - 1;\n while ( len-- > 0 ) args[ len ] = arguments[ len + 1 ];\n\n return this.observer[fnName].apply(this.observer, args);\n};\n\nInstanceObserver.prototype.requiresHandlers = function requiresHandlers (names) {\n var this$1 = this;\n\n if (this.observer.requiresHandlers) {\n return this.observer.requiresHandlers(names);\n }\n\n for (var idx = 0; idx < names.length; idx++) {\n if (this$1.handlerMap[names[idx]]) {\n return true;\n }\n }\n};\n\nexport default InstanceObserver;","import { drawing } from '@progress/kendo-drawing';\n\nexport default function map(array, callback) {\n var length = array.length;\n var result = [];\n for (var idx = 0; idx < length; idx++) {\n var value = callback(array[idx]);\n if (drawing.util.defined(value)) {\n result.push(value);\n }\n }\n return result;\n}","function matchUserAgent(userAgent) {\n var browserRxs = {\n edge: /(edge)[ \\/]([\\w.]+)/i,\n webkit: /(chrome)[ \\/]([\\w.]+)/i,\n safari: /(webkit)[ \\/]([\\w.]+)/i,\n opera: /(opera)(?:.*version|)[ \\/]([\\w.]+)/i,\n msie: /(msie\\s|trident.*? rv:)([\\w.]+)/i,\n mozilla: /(mozilla)(?:.*? rv:([\\w.]+))/i\n };\n\n var browser = {};\n\n for (var agent in browserRxs) {\n if (browserRxs.hasOwnProperty(agent)) {\n var match = userAgent.match(browserRxs[agent]);\n if (match) {\n browser[agent] = true;\n browser[match[1].toLowerCase().split(\" \")[0].split(\"/\")[0]] = true;\n browser.version = parseInt(document.documentMode || match[2], 10);\n\n break;\n }\n }\n }\n\n return browser;\n}\n\nvar browser = null;\n\nvar support = {\n get browser() {\n if (typeof window === 'undefined' || browser) {\n return browser;\n }\n\n browser = matchUserAgent(window.navigator.userAgent);\n return browser;\n }\n};\n\nexport default support;\n","import { support } from '@progress/kendo-drawing';\n\nvar browser = support.browser || {};\n\nexport default function mousewheelDelta(e) {\n var delta = 0;\n\n if (e.wheelDelta) {\n delta = -e.wheelDelta / 120;\n\n if (browser.webkit) {\n // Webkit browsers scale the delta by twice the device resolution.\n // Possibly related to https://bugs.webkit.org/show_bug.cgi?id=196339\n //\n // Low device resolutions (e.g. zoom-out to 30%) also behave strangely.\n delta = delta / (2 * Math.max(window.devicePixelRatio, 0.625));\n }\n } else if (e.detail) {\n delta = e.detail / 3;\n }\n\n delta = delta > 0 ? Math.ceil(delta) : Math.floor(delta);\n\n return delta;\n}\n","var Class = function Class () {};\n\nexport default Class;\n","/* eslint-disable no-console */\n\nexport default function logToConsole(message) {\n var console = window.console;\n\n if (typeof(console) != \"undefined\" && console.log) {\n console.log(message);\n }\n}","export default function append(first, second) {\n first.push.apply(first, second);\n return first;\n}","/* eslint-disable key-spacing,no-multi-spaces,no-param-reassign */\n\nvar literals = {\n 1 : \"i\", 10 : \"x\", 100 : \"c\",\n 2 : \"ii\", 20 : \"xx\", 200 : \"cc\",\n 3 : \"iii\", 30 : \"xxx\", 300 : \"ccc\",\n 4 : \"iv\", 40 : \"xl\", 400 : \"cd\",\n 5 : \"v\", 50 : \"l\", 500 : \"d\",\n 6 : \"vi\", 60 : \"lx\", 600 : \"dc\",\n 7 : \"vii\", 70 : \"lxx\", 700 : \"dcc\",\n 8 : \"viii\", 80 : \"lxxx\", 800 : \"dccc\",\n 9 : \"ix\", 90 : \"xc\", 900 : \"cm\",\n 1000 : \"m\"\n};\n\nexport default function arabicToRoman(n) {\n var values = [ 1000,\n 900 , 800, 700, 600, 500, 400, 300, 200, 100,\n 90 , 80 , 70 , 60 , 50 , 40 , 30 , 20 , 10 ,\n 9 , 8 , 7 , 6 , 5 , 4 , 3 , 2 , 1 ];\n\n var roman = \"\";\n while (n > 0) {\n if (n < values[0]) {\n values.shift();\n } else {\n roman += literals[values[0]];\n n -= values[0];\n }\n }\n return roman;\n}\n","export default function createPromise() {\n var resolveFn, rejectFn;\n var promise = new Promise(function (resolve, reject) {\n resolveFn = function (data) {\n promise._state = \"resolved\";\n resolve(data);\n return promise;\n };\n rejectFn = function (data) {\n promise._state = \"rejected\";\n reject(data);\n\n return promise;\n };\n });\n promise._state = \"pending\";\n promise.resolve = resolveFn;\n promise.reject = rejectFn;\n promise.state = function () { return promise._state; };\n\n return promise;\n}\n","var defId = 1;\n\nexport default function definitionId() {\n return \"kdef\" + defId++;\n}","var DEG_TO_RAD = Math.PI / 180;\nvar MAX_NUM = Number.MAX_VALUE;\nvar MIN_NUM = -Number.MAX_VALUE;\n\nexport { DEG_TO_RAD, MAX_NUM, MIN_NUM };","import { DEG_TO_RAD } from './constants';\n\nexport default function deg(radians) {\n return radians / DEG_TO_RAD;\n}","var fromCharCode = String.fromCharCode;\n\nexport var BOM = '\\xfe\\xff';\n\n// Encodes a string as UTF-8\nexport function encodeUTF8(input) {\n var output = \"\";\n\n for (var i = 0; i < input.length; i++) {\n var code = input.charCodeAt(i);\n\n if (0xD800 <= code && code <= 0xDBFF) {\n var hi = code;\n var low = input.charCodeAt(++i);\n\n if (!isNaN(low)) {\n // Combine high and low surrogate\n // See https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/charCodeAt\n code = (hi - 0xD800) * 0x400 +\n (low - 0xDC00) + 0x10000;\n }\n }\n\n if (code < 0x80) {\n // One byte\n output += fromCharCode(code);\n } else if (code < 0x800) {\n // Two bytes\n output += fromCharCode(0xC0 | (code >>> 6));\n output += fromCharCode(0x80 | (code & 0x3f));\n } else if (code < 0x10000) {\n // Three bytes\n output += fromCharCode(0xE0 | (code >>> 12));\n output += fromCharCode(0x80 | (code >>> 6 & 0x3f));\n output += fromCharCode(0x80 | (code & 0x3f));\n } else if (code < 0x10FFFF) {\n // Four bytes\n output += fromCharCode(0xF0 | (code >>> 18));\n output += fromCharCode(0x80 | (code >>> 12 & 0x3f));\n output += fromCharCode(0x80 | (code >>> 6 & 0x3f));\n output += fromCharCode(0x80 | (code & 0x3f));\n }\n }\n\n return output;\n}\n\nfunction encodeUnit(codeUnit) {\n return fromCharCode(codeUnit >> 8) + fromCharCode(codeUnit & 0x00ff);\n}\n\n// Encodes a string as UTF-16 big-endian\nexport function encodeUTF16BE(input) {\n var output = '';\n\n for (var i = 0; i < input.length; i++) {\n var c = input.charCodeAt(i);\n\n if (c < 0xFFFF) {\n output += encodeUnit(c);\n } else {\n var lead = ((c - 0x10000) >> 10) + 0xD800;\n var trail = ((c - 0x10000) & 0x3FF) + 0xDC00;\n output += encodeUnit(lead);\n output += encodeUnit(trail);\n }\n }\n\n return output;\n}\n","import { encodeUTF8 } from './encode-utf';\n\nvar KEY_STR = \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\";\n\nexport default function encodeBase64(input) {\n var output = \"\";\n var i = 0;\n\n var utfInput = encodeUTF8(input);\n\n while (i < utfInput.length) {\n var chr1 = utfInput.charCodeAt(i++);\n var chr2 = utfInput.charCodeAt(i++);\n var chr3 = utfInput.charCodeAt(i++);\n\n var enc1 = chr1 >> 2;\n var enc2 = ((chr1 & 3) << 4) | (chr2 >> 4);\n var enc3 = ((chr2 & 15) << 2) | (chr3 >> 6);\n var enc4 = chr3 & 63;\n\n if (isNaN(chr2)) {\n enc3 = enc4 = 64;\n } else if (isNaN(chr3)) {\n enc4 = 64;\n }\n\n output = output +\n KEY_STR.charAt(enc1) + KEY_STR.charAt(enc2) +\n KEY_STR.charAt(enc3) + KEY_STR.charAt(enc4);\n }\n\n return output;\n}","import defined from './defined';\n\nexport default function eventCoordinates(e) {\n if (defined((e.x || {}).location)) {\n return {\n x: e.x.location,\n y: e.y.location\n };\n }\n\n return {\n x: e.pageX || e.clientX || 0,\n y: e.pageY || e.clientY || 0\n };\n}","export default function eventElement(e) {\n if ( e === void 0 ) e = {};\n\n return e.touch ? e.touch.initialTouch : e.target;\n}","import defined from './defined';\n\nexport default function isTransparent(color) {\n return color === \"\" || color === null || color === \"none\" || color === \"transparent\" || !defined(color);\n}","export default function last(array) {\n if (array) {\n return array[array.length - 1];\n }\n}","export default function limitValue(value, min, max) {\n return Math.max(Math.min(value, max), min);\n}","/* eslint-disable no-multi-spaces, key-spacing, indent, camelcase, space-before-blocks, eqeqeq, brace-style */\n/* eslint-disable space-infix-ops, space-before-function-paren, array-bracket-spacing, object-curly-spacing */\n/* eslint-disable no-nested-ternary, max-params, default-case, no-else-return, no-empty */\n/* eslint-disable no-param-reassign, no-var, block-scoped-var */\n\n// mergeSort is stable.\nexport default function mergeSort(a, cmp) {\n if (a.length < 2) {\n return a.slice();\n }\n function merge(a, b) {\n var r = [], ai = 0, bi = 0, i = 0;\n while (ai < a.length && bi < b.length) {\n if (cmp(a[ai], b[bi]) <= 0) {\n r[i++] = a[ai++];\n } else {\n r[i++] = b[bi++];\n }\n }\n if (ai < a.length) {\n r.push.apply(r, a.slice(ai));\n }\n if (bi < b.length) {\n r.push.apply(r, b.slice(bi));\n }\n return r;\n }\n return (function sort(a) {\n if (a.length <= 1) {\n return a;\n }\n var m = Math.floor(a.length / 2);\n var left = a.slice(0, m);\n var right = a.slice(m);\n left = sort(left);\n right = sort(right);\n return merge(left, right);\n })(a);\n}","var now = Date.now || function() {\n return new Date().getTime();\n};\n\nexport default now;\n","export default function promiseAll(promises) {\n return Promise.all(promises);\n}","import { DEG_TO_RAD } from './constants';\n\nexport default function rad(degrees) {\n return degrees * DEG_TO_RAD;\n}\n","import defined from './defined';\n\nexport default function valueOrDefault(value, defaultValue) {\n return defined(value) ? value : defaultValue;\n}","export default function bindEvents(element, events) {\n for (var eventName in events) {\n var eventNames = eventName.trim().split(\" \");\n for (var idx = 0; idx < eventNames.length; idx++) {\n element.addEventListener(eventNames[idx], events[eventName], false);\n }\n }\n}","export default function elementOffset(element) {\n var box = element.getBoundingClientRect();\n\n var documentElement = document.documentElement;\n\n return {\n top: box.top + (window.pageYOffset || documentElement.scrollTop) - (documentElement.clientTop || 0),\n left: box.left + (window.pageXOffset || documentElement.scrollLeft) - (documentElement.clientLeft || 0)\n };\n}","export default function elementStyles(element, styles) {\n var result = {};\n var style = window.getComputedStyle(element) || {};\n var stylesArray = Array.isArray(styles) ? styles : [ styles ];\n\n for (var idx = 0; idx < stylesArray.length; idx++) {\n var field = stylesArray[idx];\n result[field] = style[field];\n }\n\n return result;\n}","import elementStyles from './element-styles';\nimport defined from './defined';\n\nfunction getPixels(value) {\n if (isNaN(value)) {\n return value;\n }\n return value + \"px\";\n}\n\nexport default function elementSize(element, size) {\n if (size) {\n var width = size.width;\n var height = size.height;\n\n if (defined(width)) {\n element.style.width = getPixels(width);\n }\n\n if (defined(height)) {\n element.style.height = getPixels(height);\n }\n\n } else {\n var size$1 = elementStyles(element, [ 'width', 'height' ]);\n\n return {\n width: parseInt(size$1.width, 10),\n height: parseInt(size$1.height, 10)\n };\n }\n}","export default function unbindEvents(element, events) {\n if ( events === void 0 ) events = {};\n\n for (var name in events) {\n var eventNames = name.trim().split(\" \");\n for (var idx = 0; idx < eventNames.length; idx++) {\n element.removeEventListener(eventNames[idx], events[name], false);\n }\n }\n}","import { default as elementStyles } from './element-styles';\n\nexport default function elementPadding(element) {\n var ref = elementStyles(element, [ \"paddingLeft\", \"paddingTop\" ]);\n var paddingLeft = ref.paddingLeft;\n var paddingTop = ref.paddingTop;\n return {\n top: parseFloat(paddingTop),\n left: parseFloat(paddingLeft)\n };\n}\n","import { Class } from '../common';\nimport defined from '../util/defined';\nimport rad from '../util/rad';\nimport round from '../util/round';\n\nvar Matrix = (function (Class) {\n function Matrix(a, b, c, d, e, f) {\n if ( a === void 0 ) a = 0;\n if ( b === void 0 ) b = 0;\n if ( c === void 0 ) c = 0;\n if ( d === void 0 ) d = 0;\n if ( e === void 0 ) e = 0;\n if ( f === void 0 ) f = 0;\n\n Class.call(this);\n\n this.a = a;\n this.b = b;\n this.c = c;\n this.d = d;\n this.e = e;\n this.f = f;\n }\n\n if ( Class ) Matrix.__proto__ = Class;\n Matrix.prototype = Object.create( Class && Class.prototype );\n Matrix.prototype.constructor = Matrix;\n\n Matrix.prototype.multiplyCopy = function multiplyCopy (matrix) {\n return new Matrix(\n this.a * matrix.a + this.c * matrix.b,\n this.b * matrix.a + this.d * matrix.b,\n this.a * matrix.c + this.c * matrix.d,\n this.b * matrix.c + this.d * matrix.d,\n this.a * matrix.e + this.c * matrix.f + this.e,\n this.b * matrix.e + this.d * matrix.f + this.f\n );\n };\n\n Matrix.prototype.invert = function invert () {\n var ref = this;\n var a = ref.a;\n var b = ref.b;\n var d = ref.c;\n var e = ref.d;\n var g = ref.e;\n var h = ref.f;\n var det = a * e - b * d;\n\n if (det === 0) {\n return null;\n }\n\n return new Matrix(e / det, -b / det, -d / det, a / det,\n (d * h - e * g) / det, (b * g - a * h) / det);\n };\n\n Matrix.prototype.clone = function clone () {\n return new Matrix(this.a, this.b, this.c, this.d, this.e, this.f);\n };\n\n Matrix.prototype.equals = function equals (other) {\n if (!other) {\n return false;\n }\n\n return this.a === other.a && this.b === other.b &&\n this.c === other.c && this.d === other.d &&\n this.e === other.e && this.f === other.f;\n };\n\n Matrix.prototype.round = function round$1 (precision) {\n this.a = round(this.a, precision);\n this.b = round(this.b, precision);\n this.c = round(this.c, precision);\n this.d = round(this.d, precision);\n this.e = round(this.e, precision);\n this.f = round(this.f, precision);\n\n return this;\n };\n\n Matrix.prototype.toArray = function toArray (precision) {\n var result = [ this.a, this.b, this.c, this.d, this.e, this.f ];\n\n if (defined(precision)) {\n for (var i = 0; i < result.length; i++) {\n result[i] = round(result[i], precision);\n }\n }\n\n return result;\n };\n\n Matrix.prototype.toString = function toString (precision, separator) {\n if ( separator === void 0 ) separator = \",\";\n\n return this.toArray(precision).join(separator);\n };\n\n Matrix.translate = function translate (x, y) {\n return new Matrix(1, 0, 0, 1, x, y);\n };\n\n Matrix.unit = function unit () {\n return new Matrix(1, 0, 0, 1, 0, 0);\n };\n\n Matrix.rotate = function rotate (angle, x, y) {\n var matrix = new Matrix();\n matrix.a = Math.cos(rad(angle));\n matrix.b = Math.sin(rad(angle));\n matrix.c = -matrix.b;\n matrix.d = matrix.a;\n matrix.e = (x - x * matrix.a + y * matrix.b) || 0;\n matrix.f = (y - y * matrix.a - x * matrix.b) || 0;\n\n return matrix;\n };\n\n Matrix.scale = function scale (scaleX, scaleY) {\n return new Matrix(scaleX, 0, 0, scaleY, 0, 0);\n };\n\n return Matrix;\n}(Class));\n\nMatrix.IDENTITY = Matrix.unit();\n\nexport default Matrix;\n","import Matrix from '../geometry/matrix';\n\nvar matrixRegexp = /matrix\\((.*)\\)/;\n\nfunction parseMatrix(matrixString) {\n var match = matrixString.match(matrixRegexp);\n if (match === null || match.length !== 2) {\n return Matrix.unit();\n }\n\n var members = match[1].split(',').map(function (x) { return parseFloat(x); });\n return new (Function.prototype.bind.apply( Matrix, [ null ].concat( members) ));\n}\n\nfunction transformMatrix(element) {\n var transform = getComputedStyle(element).transform;\n\n if (transform === 'none') {\n return Matrix.unit();\n }\n\n return parseMatrix(transform);\n}\n\nexport default function elementScale(element) {\n if (!element) {\n return Matrix.unit();\n }\n\n var matrix = transformMatrix(element);\n var parent = element.parentElement;\n while (parent) {\n var parentMatrix = transformMatrix(parent);\n matrix = matrix.multiplyCopy(parentMatrix);\n parent = parent.parentElement;\n }\n\n matrix.b = matrix.c = matrix.e = matrix.f = 0;\n return matrix;\n}\n","import { Class } from '../common';\n\nvar LRUCache = (function (Class) {\n function LRUCache(size) {\n Class.call(this);\n\n this._size = size;\n this._length = 0;\n this._map = {};\n }\n\n if ( Class ) LRUCache.__proto__ = Class;\n LRUCache.prototype = Object.create( Class && Class.prototype );\n LRUCache.prototype.constructor = LRUCache;\n\n LRUCache.prototype.put = function put (key, value) {\n var map = this._map;\n var entry = { key: key, value: value };\n\n map[key] = entry;\n\n if (!this._head) {\n this._head = this._tail = entry;\n } else {\n this._tail.newer = entry;\n entry.older = this._tail;\n this._tail = entry;\n }\n\n if (this._length >= this._size) {\n map[this._head.key] = null;\n this._head = this._head.newer;\n this._head.older = null;\n } else {\n this._length++;\n }\n };\n\n LRUCache.prototype.get = function get (key) {\n var entry = this._map[key];\n\n if (entry) {\n if (entry === this._head && entry !== this._tail) {\n this._head = entry.newer;\n this._head.older = null;\n }\n\n if (entry !== this._tail) {\n if (entry.older) {\n entry.older.newer = entry.newer;\n entry.newer.older = entry.older;\n }\n\n entry.older = this._tail;\n entry.newer = null;\n\n this._tail.newer = entry;\n this._tail = entry;\n }\n\n return entry.value;\n }\n };\n\n return LRUCache;\n}(Class));\n\nexport default LRUCache;","var REPLACE_REGEX = /\\r?\\n|\\r|\\t/g;\nvar SPACE = ' ';\n\nfunction normalizeText(text) {\n return String(text).replace(REPLACE_REGEX, SPACE);\n}\n\nfunction objectKey(object) {\n var parts = [];\n for (var key in object) {\n parts.push(key + object[key]);\n }\n\n return parts.sort().join(\"\");\n}\n\n// Computes FNV-1 hash\n// See http://en.wikipedia.org/wiki/Fowler%E2%80%93Noll%E2%80%93Vo_hash_function\nfunction hashKey(str) {\n // 32-bit FNV-1 offset basis\n // See http://isthe.com/chongo/tech/comp/fnv/#FNV-param\n var hash = 0x811C9DC5;\n\n for (var i = 0; i < str.length; ++i) {\n hash += (hash << 1) + (hash << 4) + (hash << 7) + (hash << 8) + (hash << 24);\n hash ^= str.charCodeAt(i);\n }\n\n return hash >>> 0;\n}\n\nexport { objectKey, hashKey, normalizeText };","import LRUCache from './lru-cache';\nimport { Class } from '../common';\nimport { objectKey, hashKey, normalizeText } from './util';\n\nfunction zeroSize() {\n return { width: 0, height: 0, baseline: 0 };\n}\n\nvar DEFAULT_OPTIONS = {\n baselineMarkerSize: 1\n};\n\nvar defaultMeasureBox;\n\nif (typeof document !== \"undefined\") {\n defaultMeasureBox = document.createElement(\"div\");\n defaultMeasureBox.style.setProperty(\"position\", \"absolute\", \"important\");\n defaultMeasureBox.style.setProperty(\"top\", \"-4000px\", \"important\");\n defaultMeasureBox.style.setProperty(\"width\", \"auto\", \"important\");\n defaultMeasureBox.style.setProperty(\"height\", \"auto\", \"important\");\n defaultMeasureBox.style.setProperty(\"padding\", \"0\", \"important\");\n defaultMeasureBox.style.setProperty(\"margin\", \"0\", \"important\");\n defaultMeasureBox.style.setProperty(\"border\", \"0\", \"important\");\n defaultMeasureBox.style.setProperty(\"line-height\", \"normal\", \"important\");\n defaultMeasureBox.style.setProperty(\"visibility\", \"hidden\", \"important\");\n defaultMeasureBox.style.setProperty(\"white-space\", \"pre\", \"important\");\n}\n\nvar TextMetrics = (function (Class) {\n function TextMetrics(options) {\n Class.call(this);\n\n this._cache = new LRUCache(1000);\n this.options = Object.assign({}, DEFAULT_OPTIONS, options);\n }\n\n if ( Class ) TextMetrics.__proto__ = Class;\n TextMetrics.prototype = Object.create( Class && Class.prototype );\n TextMetrics.prototype.constructor = TextMetrics;\n\n TextMetrics.prototype.measure = function measure (text, style, options) {\n if ( options === void 0 ) options = {};\n\n if (typeof text === 'undefined' || text === null) {\n return zeroSize();\n }\n\n var styleKey = objectKey(style);\n var cacheKey = hashKey(text + styleKey);\n var cachedResult = this._cache.get(cacheKey);\n\n if (cachedResult) {\n return cachedResult;\n }\n\n var size = zeroSize();\n var measureBox = options.box || defaultMeasureBox;\n var baselineMarker = this._baselineMarker().cloneNode(false);\n\n for (var key in style) {\n var value = style[key];\n if (typeof value !== \"undefined\") {\n measureBox.style[key] = value;\n }\n }\n\n var textStr = options.normalizeText !== false ? normalizeText(text) : String(text);\n\n measureBox.textContent = textStr;\n measureBox.appendChild(baselineMarker);\n document.body.appendChild(measureBox);\n\n if (textStr.length) {\n size.width = measureBox.offsetWidth - this.options.baselineMarkerSize;\n size.height = measureBox.offsetHeight;\n size.baseline = baselineMarker.offsetTop + this.options.baselineMarkerSize;\n }\n\n if (size.width > 0 && size.height > 0) {\n this._cache.put(cacheKey, size);\n }\n\n measureBox.parentNode.removeChild(measureBox);\n\n return size;\n };\n\n TextMetrics.prototype._baselineMarker = function _baselineMarker () {\n var marker = document.createElement(\"div\");\n marker.style.display = \"inline-block\";\n marker.style.verticalAlign = \"baseline\";\n marker.style.width = this.options.baselineMarkerSize + \"px\";\n marker.style.height = this.options.baselineMarkerSize + \"px\";\n marker.style.overflow = \"hidden\";\n\n return marker;\n };\n\n return TextMetrics;\n}(Class));\n\nTextMetrics.current = new TextMetrics();\n\nexport default TextMetrics;\n","import TextMetrics from './text-metrics';\n\nexport default function measureText(text, style, measureBox) {\n return TextMetrics.current.measure(text, style, measureBox);\n}\n","import {\n drawing,\n Class,\n logToConsole\n} from '@progress/kendo-drawing';\n\nvar ref = drawing.util;\nvar append = ref.append;\nvar bindEvents = ref.bindEvents;\nvar defined = ref.defined;\nvar deg = ref.deg;\nvar elementOffset = ref.elementOffset;\nvar elementSize = ref.elementSize;\nvar eventCoordinates = ref.eventCoordinates;\nvar eventElement = ref.eventElement;\nvar hashKey = ref.hashKey;\nvar last = ref.last;\nvar limitValue = ref.limitValue;\nvar objectKey = ref.objectKey;\nvar rad = ref.rad;\nvar round = ref.round;\nvar unbindEvents = ref.unbindEvents;\nvar valueOrDefault = ref.valueOrDefault;\n\nexport {\n append,\n bindEvents,\n Class,\n defined,\n deg,\n elementOffset,\n elementSize,\n eventCoordinates,\n eventElement,\n hashKey,\n last,\n limitValue,\n logToConsole,\n objectKey,\n rad,\n round,\n unbindEvents,\n valueOrDefault\n};\n","import { logToConsole } from '../drawing-utils';\n\nvar FontLoader = function FontLoader () {};\n\nFontLoader.fetchFonts = function fetchFonts (options, fonts, state) {\n if ( state === void 0 ) state = { depth: 0 };\n\n var MAX_DEPTH = 5;\n\n if (!options || state.depth > MAX_DEPTH || !document.fonts) {\n return;\n }\n\n Object.keys(options).forEach(function(key) {\n var value = options[key];\n if (key === \"dataSource\" || key[0] === \"$\" || !value) {\n return;\n }\n\n if (key === \"font\") {\n fonts.push(value);\n } else if (typeof value === \"object\") {\n state.depth++;\n FontLoader.fetchFonts(value, fonts, state);\n state.depth--;\n }\n });\n};\n\nFontLoader.loadFonts = function loadFonts (fonts, callback) {\n var promises = [];\n\n if (fonts.length > 0 && document.fonts) {\n try {\n promises = fonts.map(function(font) {\n return document.fonts.load(font);\n });\n } catch (e) {\n // Silence font-loading errors\n logToConsole(e);\n }\n\n Promise.all(promises).then(callback, callback);\n } else {\n callback();\n }\n};\n\nFontLoader.preloadFonts = function preloadFonts (options, callback) {\n var fonts = [];\n FontLoader.fetchFonts(options, fonts);\n\n FontLoader.loadFonts(fonts, callback);\n};\n\nexport default FontLoader;","import deepExtend from './deep-extend';\n\nexport default function setDefaultOptions(type, options) {\n var proto = type.prototype;\n if (proto.options) {\n proto.options = deepExtend({}, proto.options, options);\n } else {\n proto.options = options;\n }\n}","import isObject from './is-object';\nimport isPlainObject from './is-plain-object';\nimport isString from './is-string';\nimport deepExtend from './deep-extend';\nimport setDefaultOptions from './set-default-options';\nimport addClass from './add-class';\nimport removeClass from './remove-class';\n\nvar KICON = 'k-icon';\nvar KI_PREFFIX = 'k-i-';\nvar KFONTICON = 'k-font-icon';\nvar KSVGICON = 'k-svg-icon';\nvar KSVG_PREFFIX = 'k-svg-i-';\n\nvar HTMLBaseIcon = function HTMLBaseIcon(element, options) {\n this.element = element;\n this.options = deepExtend({}, this.options, options);\n\n this.wrapper();\n};\n\nHTMLBaseIcon.prototype.wrapper = function wrapper () {\n this.addClasses();\n};\n\nHTMLBaseIcon.prototype.addClasses = function addClasses () {\n};\n\nHTMLBaseIcon.prototype.html = function html () {\n return this.element.outerHTML;\n};\n\nsetDefaultOptions(HTMLBaseIcon, {\n name: '',\n size: 'none',\n themeColor: 'none',\n flip: 'default',\n iconClass: '',\n stylingOptions: [ 'size', 'themeColor', 'fill' ]\n});\n\nvar HTMLFontIcon = (function (HTMLBaseIcon) {\n function HTMLFontIcon(element, options) {\n HTMLBaseIcon.call(this, element, options);\n }\n\n if ( HTMLBaseIcon ) HTMLFontIcon.__proto__ = HTMLBaseIcon;\n HTMLFontIcon.prototype = Object.create( HTMLBaseIcon && HTMLBaseIcon.prototype );\n HTMLFontIcon.prototype.constructor = HTMLFontIcon;\n\n HTMLFontIcon.prototype.wrapper = function wrapper () {\n // Find if there is an existing k-i- class appended to the element.\n var currentIconClass = this.element.className.split(\" \").find(function (x) { return x.startsWith(KI_PREFFIX); });\n var className = this.options.icon ? (\"\" + (this.options.icon.startsWith(KI_PREFFIX) ? \"\" : KI_PREFFIX) + (this.options.icon)) : \"\";\n\n this._className = className;\n\n addClass(this.element, KICON);\n addClass(this.element, KFONTICON);\n removeClass(this.element, currentIconClass); // Remove any existing icons.\n addClass(this.element, className);\n addClass(this.element, this.options.iconClass || '');\n\n HTMLBaseIcon.prototype.wrapper.call(this);\n };\n\n return HTMLFontIcon;\n}(HTMLBaseIcon));\n\nsetDefaultOptions(HTMLFontIcon, {\n name: 'HTMLFontIcon',\n icon: null\n});\n\nvar HTMLSvgIcon = (function (HTMLBaseIcon) {\n function HTMLSvgIcon(element, options) {\n // Ensure that the inner contents of the wrapping span element are always removed for re-rendering purposes.\n element.innerHTML = \"\";\n\n HTMLBaseIcon.call(this, element, options);\n }\n\n if ( HTMLBaseIcon ) HTMLSvgIcon.__proto__ = HTMLBaseIcon;\n HTMLSvgIcon.prototype = Object.create( HTMLBaseIcon && HTMLBaseIcon.prototype );\n HTMLSvgIcon.prototype.constructor = HTMLSvgIcon;\n\n HTMLSvgIcon.prototype.wrapper = function wrapper () {\n var icon = this.options.icon;\n var iconClass = this.options.iconClass;\n var currentIconClass = this.element.className.split(\" \").find(function (x) { return x.startsWith(KSVG_PREFFIX); });\n\n if (!icon && iconClass) {\n // match k-i-(some-icon-name)\n var regex = /k-i-(\\w+(?:-\\w+)*)/;\n var iconNameMatch = iconClass.match(regex);\n if (iconNameMatch) {\n icon = iconNameMatch[1];\n iconClass = iconClass.replace(iconNameMatch[0], \"\");\n }\n }\n\n if (isString(icon)) {\n icon = icon.replace(\"k-i-\", \"\").replace(/-./g, function (x) { return x[1].toUpperCase(); });\n icon = this.options.svgIcons[icon] || this.options.svgIcons[(icon + \"Icon\")];\n }\n\n var className = icon && icon.name ? (\"\" + KSVG_PREFFIX + (icon.name)) : \"\";\n this._className = className;\n\n addClass(this.element, KSVGICON);\n removeClass(this.element, currentIconClass);\n addClass(this.element, className);\n addClass(this.element, iconClass || \"\");\n this.element.setAttribute(\"aria-hidden\", \"true\");\n\n if (icon && isPlainObject(icon)) {\n var svgElement = document.createElementNS('http://www.w3.org/2000/svg', 'svg');\n svgElement.setAttribute(\"viewBox\", icon.viewBox || \"\");\n svgElement.setAttribute(\"focusable\", \"false\");\n svgElement.innerHTML = icon.content || \"\";\n\n this.element.appendChild(svgElement);\n }\n\n HTMLBaseIcon.prototype.wrapper.call(this);\n };\n\n return HTMLSvgIcon;\n}(HTMLBaseIcon));\n\nsetDefaultOptions(HTMLSvgIcon, {\n name: 'HTMLSvgIcon',\n icon: null,\n svgIcons: {}\n});\n\nvar ICON_TYPES = {\n 'svg': HTMLSvgIcon,\n 'font': HTMLFontIcon\n};\n\nexport default function renderIcon(iconElement, iconOptions) {\n var element = iconElement;\n var options = iconOptions;\n\n if (!element\n || (isObject(element) && !(element instanceof HTMLElement))\n || isString(element)) {\n options = element;\n element = document.createElement(\"span\");\n }\n\n if (isString(options)) {\n options = {\n icon: options\n };\n }\n\n if (!options.type) {\n options.type = 'svg';\n }\n\n if (!ICON_TYPES[options.type]) {\n return null;\n }\n\n return (new ICON_TYPES[options.type](element, options).html());\n}\n","export default function isPlainObject(value) {\n return Object.prototype.toString.call(value) === \"[object Object]\";\n}","import { MIN_VALUE, MAX_VALUE } from './constants';\n\nexport default function sparseArrayLimits(arr) {\n var min = MAX_VALUE;\n var max = MIN_VALUE;\n\n for (var idx = 0, length = arr.length; idx < length; idx++) {\n var value = arr[idx];\n if (value !== null && isFinite(value)) {\n min = Math.min(min, value);\n max = Math.max(max, value);\n }\n }\n\n return {\n min: min === MAX_VALUE ? undefined : min,\n max: max === MIN_VALUE ? undefined : max\n };\n}","export default function find(array, predicate) {\n for (var i = 0; i < array.length; i++) {\n var item = array[i];\n if (predicate(item, i, array)) {\n return item;\n }\n }\n}\n","import { geometry } from '@progress/kendo-drawing';\n\nvar Matrix = geometry.Matrix;\nvar matrixRegexp = /matrix\\((.*)\\)/;\n\nfunction parseMatrix(matrixString) {\n var match = matrixString.match(matrixRegexp);\n if (match === null || match.length !== 2) {\n return Matrix.unit();\n }\n\n var members = match[1].split(',').map(function (x) { return parseFloat(x); });\n return new (Function.prototype.bind.apply( Matrix, [ null ].concat( members) ));\n}\n\nfunction transformMatrix(element) {\n var transform = getComputedStyle(element).transform;\n\n if (transform === 'none') {\n return Matrix.unit();\n }\n\n return parseMatrix(transform);\n}\n\nexport default function elementScale(element) {\n if (!element) {\n return Matrix.unit();\n }\n\n var matrix = transformMatrix(element);\n var parent = element.parentElement;\n while (parent) {\n var parentMatrix = transformMatrix(parent);\n matrix = matrix.multiplyCopy(parentMatrix);\n parent = parent.parentElement;\n }\n\n matrix.b = matrix.c = matrix.e = matrix.f = 0;\n return matrix;\n}\n","var namedColors = {\n aliceblue: \"f0f8ff\", antiquewhite: \"faebd7\", aqua: \"00ffff\",\n aquamarine: \"7fffd4\", azure: \"f0ffff\", beige: \"f5f5dc\",\n bisque: \"ffe4c4\", black: \"000000\", blanchedalmond: \"ffebcd\",\n blue: \"0000ff\", blueviolet: \"8a2be2\", brown: \"a52a2a\",\n burlywood: \"deb887\", cadetblue: \"5f9ea0\", chartreuse: \"7fff00\",\n chocolate: \"d2691e\", coral: \"ff7f50\", cornflowerblue: \"6495ed\",\n cornsilk: \"fff8dc\", crimson: \"dc143c\", cyan: \"00ffff\",\n darkblue: \"00008b\", darkcyan: \"008b8b\", darkgoldenrod: \"b8860b\",\n darkgray: \"a9a9a9\", darkgrey: \"a9a9a9\", darkgreen: \"006400\",\n darkkhaki: \"bdb76b\", darkmagenta: \"8b008b\", darkolivegreen: \"556b2f\",\n darkorange: \"ff8c00\", darkorchid: \"9932cc\", darkred: \"8b0000\",\n darksalmon: \"e9967a\", darkseagreen: \"8fbc8f\", darkslateblue: \"483d8b\",\n darkslategray: \"2f4f4f\", darkslategrey: \"2f4f4f\", darkturquoise: \"00ced1\",\n darkviolet: \"9400d3\", deeppink: \"ff1493\", deepskyblue: \"00bfff\",\n dimgray: \"696969\", dimgrey: \"696969\", dodgerblue: \"1e90ff\",\n firebrick: \"b22222\", floralwhite: \"fffaf0\", forestgreen: \"228b22\",\n fuchsia: \"ff00ff\", gainsboro: \"dcdcdc\", ghostwhite: \"f8f8ff\",\n gold: \"ffd700\", goldenrod: \"daa520\", gray: \"808080\",\n grey: \"808080\", green: \"008000\", greenyellow: \"adff2f\",\n honeydew: \"f0fff0\", hotpink: \"ff69b4\", indianred: \"cd5c5c\",\n indigo: \"4b0082\", ivory: \"fffff0\", khaki: \"f0e68c\",\n lavender: \"e6e6fa\", lavenderblush: \"fff0f5\", lawngreen: \"7cfc00\",\n lemonchiffon: \"fffacd\", lightblue: \"add8e6\", lightcoral: \"f08080\",\n lightcyan: \"e0ffff\", lightgoldenrodyellow: \"fafad2\", lightgray: \"d3d3d3\",\n lightgrey: \"d3d3d3\", lightgreen: \"90ee90\", lightpink: \"ffb6c1\",\n lightsalmon: \"ffa07a\", lightseagreen: \"20b2aa\", lightskyblue: \"87cefa\",\n lightslategray: \"778899\", lightslategrey: \"778899\", lightsteelblue: \"b0c4de\",\n lightyellow: \"ffffe0\", lime: \"00ff00\", limegreen: \"32cd32\",\n linen: \"faf0e6\", magenta: \"ff00ff\", maroon: \"800000\",\n mediumaquamarine: \"66cdaa\", mediumblue: \"0000cd\", mediumorchid: \"ba55d3\",\n mediumpurple: \"9370d8\", mediumseagreen: \"3cb371\", mediumslateblue: \"7b68ee\",\n mediumspringgreen: \"00fa9a\", mediumturquoise: \"48d1cc\", mediumvioletred: \"c71585\",\n midnightblue: \"191970\", mintcream: \"f5fffa\", mistyrose: \"ffe4e1\",\n moccasin: \"ffe4b5\", navajowhite: \"ffdead\", navy: \"000080\",\n oldlace: \"fdf5e6\", olive: \"808000\", olivedrab: \"6b8e23\",\n orange: \"ffa500\", orangered: \"ff4500\", orchid: \"da70d6\",\n palegoldenrod: \"eee8aa\", palegreen: \"98fb98\", paleturquoise: \"afeeee\",\n palevioletred: \"d87093\", papayawhip: \"ffefd5\", peachpuff: \"ffdab9\",\n peru: \"cd853f\", pink: \"ffc0cb\", plum: \"dda0dd\",\n powderblue: \"b0e0e6\", purple: \"800080\", red: \"ff0000\",\n rosybrown: \"bc8f8f\", royalblue: \"4169e1\", saddlebrown: \"8b4513\",\n salmon: \"fa8072\", sandybrown: \"f4a460\", seagreen: \"2e8b57\",\n seashell: \"fff5ee\", sienna: \"a0522d\", silver: \"c0c0c0\",\n skyblue: \"87ceeb\", slateblue: \"6a5acd\", slategray: \"708090\",\n slategrey: \"708090\", snow: \"fffafa\", springgreen: \"00ff7f\",\n steelblue: \"4682b4\", tan: \"d2b48c\", teal: \"008080\",\n thistle: \"d8bfd8\", tomato: \"ff6347\", turquoise: \"40e0d0\",\n violet: \"ee82ee\", wheat: \"f5deb3\", white: \"ffffff\",\n whitesmoke: \"f5f5f5\", yellow: \"ffff00\", yellowgreen: \"9acd32\"\n};\n\nexport default namedColors;","import Class from '../class';\nimport support from '../support';\nimport namedColors from './named-colors';\n\nvar browser = support.browser;\n\nvar matchNamedColor = function (color) {\n var colorNames = Object.keys(namedColors);\n colorNames.push(\"transparent\");\n\n var regexp = new RegExp(\"^(\" + colorNames.join(\"|\") + \")(\\\\W|$)\", \"i\");\n matchNamedColor = function (color) { return regexp.exec(color); };\n\n return regexp.exec(color);\n};\n\nvar BaseColor = (function (Class) {\n function BaseColor() { Class.call(this); }\n\n if ( Class ) BaseColor.__proto__ = Class;\n BaseColor.prototype = Object.create( Class && Class.prototype );\n BaseColor.prototype.constructor = BaseColor;\n BaseColor.prototype.toHSV = function toHSV () { return this; };\n\n BaseColor.prototype.toRGB = function toRGB () { return this; };\n\n BaseColor.prototype.toHex = function toHex (options) { return this.toBytes().toHex(options); };\n\n BaseColor.prototype.toBytes = function toBytes () { return this; };\n\n BaseColor.prototype.toCss = function toCss (options) { return \"#\" + this.toHex(options); };\n\n BaseColor.prototype.toCssRgba = function toCssRgba () {\n var rgb = this.toBytes();\n return (\"rgba(\" + (rgb.r) + \", \" + (rgb.g) + \", \" + (rgb.b) + \", \" + (parseFloat((Number(this.a)).toFixed(3))) + \")\");\n };\n\n BaseColor.prototype.toDisplay = function toDisplay () {\n if (browser.msie && browser.version < 9) {\n return this.toCss(); // no RGBA support; does it support any opacity in colors?\n }\n return this.toCssRgba();\n };\n\n BaseColor.prototype.equals = function equals (c) {\n return c === this || ((c !== null && c !== undefined) && this.toCssRgba() === parseColor(c).toCssRgba());\n };\n\n BaseColor.prototype.diff = function diff (other) {\n if (other === null) {\n return NaN;\n }\n\n var c1 = this.toBytes();\n var c2 = other.toBytes();\n\n return Math.sqrt(Math.pow((c1.r - c2.r) * 0.30, 2) +\n Math.pow((c1.g - c2.g) * 0.59, 2) +\n Math.pow((c1.b - c2.b) * 0.11, 2));\n };\n\n BaseColor.prototype.clone = function clone () {\n var c = this.toBytes();\n if (c === this) {\n c = new Bytes(c.r, c.g, c.b, c.a);\n }\n\n return c;\n };\n\n return BaseColor;\n}(Class));\n\nvar RGB = (function (BaseColor) {\n function RGB(r, g, b, a) {\n BaseColor.call(this);\n\n this.r = r;\n this.g = g;\n this.b = b;\n this.a = a;\n }\n\n if ( BaseColor ) RGB.__proto__ = BaseColor;\n RGB.prototype = Object.create( BaseColor && BaseColor.prototype );\n RGB.prototype.constructor = RGB;\n\n RGB.prototype.toHSV = function toHSV () {\n var ref = this;\n var r = ref.r;\n var g = ref.g;\n var b = ref.b;\n var min = Math.min(r, g, b);\n var max = Math.max(r, g, b);\n var delta = max - min;\n var v = max;\n var h, s;\n\n if (delta === 0) {\n return new HSV(0, 0, v, this.a);\n }\n\n if (max !== 0) {\n s = delta / max;\n if (r === max) {\n h = (g - b) / delta;\n } else if (g === max) {\n h = 2 + (b - r) / delta;\n } else {\n h = 4 + (r - g) / delta;\n }\n\n h *= 60;\n if (h < 0) {\n h += 360;\n }\n } else {\n s = 0;\n h = -1;\n }\n\n return new HSV(h, s, v, this.a);\n };\n\n RGB.prototype.toHSL = function toHSL () {\n var ref = this;\n var r = ref.r;\n var g = ref.g;\n var b = ref.b;\n var max = Math.max(r, g, b);\n var min = Math.min(r, g, b);\n var h, s, l = (max + min) / 2;\n\n if (max === min) {\n h = s = 0;\n } else {\n var d = max - min;\n s = l > 0.5 ? d / (2 - max - min) : d / (max + min);\n switch (max) {\n case r: h = (g - b) / d + (g < b ? 6 : 0); break;\n case g: h = (b - r) / d + 2; break;\n case b: h = (r - g) / d + 4; break;\n default: break;\n }\n }\n\n return new HSL(h * 60, s * 100, l * 100, this.a);\n };\n\n RGB.prototype.toBytes = function toBytes () {\n return new Bytes(this.r * 255, this.g * 255, this.b * 255, this.a);\n };\n\n return RGB;\n}(BaseColor));\n\nvar Bytes = (function (RGB) {\n function Bytes(r, g, b, a) {\n RGB.call(this, Math.round(r), Math.round(g), Math.round(b), a);\n }\n\n if ( RGB ) Bytes.__proto__ = RGB;\n Bytes.prototype = Object.create( RGB && RGB.prototype );\n Bytes.prototype.constructor = Bytes;\n\n Bytes.prototype.toRGB = function toRGB () {\n return new RGB(this.r / 255, this.g / 255, this.b / 255, this.a);\n };\n\n Bytes.prototype.toHSV = function toHSV () {\n return this.toRGB().toHSV();\n };\n\n Bytes.prototype.toHSL = function toHSL () {\n return this.toRGB().toHSL();\n };\n\n Bytes.prototype.toHex = function toHex (options) {\n var value = hex(this.r, 2) + hex(this.g, 2) + hex(this.b, 2);\n\n if (options && options.alpha) {\n value += hex(Math.round(this.a * 255), 2);\n }\n\n return value;\n };\n\n Bytes.prototype.toBytes = function toBytes () {\n return this;\n };\n\n return Bytes;\n}(RGB));\n\nfunction hex(n, width, pad) {\n if ( pad === void 0 ) pad = \"0\";\n\n var result = n.toString(16);\n while (width > result.length) {\n result = pad + result;\n }\n\n return result;\n}\n\nvar HSV = (function (BaseColor) {\n function HSV(h, s, v, a) {\n BaseColor.call(this);\n\n this.h = h;\n this.s = s;\n this.v = v;\n this.a = a;\n }\n\n if ( BaseColor ) HSV.__proto__ = BaseColor;\n HSV.prototype = Object.create( BaseColor && BaseColor.prototype );\n HSV.prototype.constructor = HSV;\n\n HSV.prototype.toRGB = function toRGB () {\n var ref = this;\n var h = ref.h;\n var s = ref.s;\n var v = ref.v;\n var r, g, b;\n\n if (s === 0) {\n r = g = b = v;\n } else {\n h /= 60;\n\n var i = Math.floor(h);\n var f = h - i;\n var p = v * (1 - s);\n var q = v * (1 - s * f);\n var t = v * (1 - s * (1 - f));\n\n switch (i) {\n case 0: r = v; g = t; b = p; break;\n case 1: r = q; g = v; b = p; break;\n case 2: r = p; g = v; b = t; break;\n case 3: r = p; g = q; b = v; break;\n case 4: r = t; g = p; b = v; break;\n default: r = v; g = p; b = q; break;\n }\n }\n\n return new RGB(r, g, b, this.a);\n };\n\n HSV.prototype.toHSL = function toHSL () {\n return this.toRGB().toHSL();\n };\n\n HSV.prototype.toBytes = function toBytes () {\n return this.toRGB().toBytes();\n };\n\n return HSV;\n}(BaseColor));\n\nvar HSL = (function (BaseColor) {\n function HSL(h, s, l, a) {\n BaseColor.call(this);\n\n this.h = h;\n this.s = s;\n this.l = l;\n this.a = a;\n }\n\n if ( BaseColor ) HSL.__proto__ = BaseColor;\n HSL.prototype = Object.create( BaseColor && BaseColor.prototype );\n HSL.prototype.constructor = HSL;\n\n HSL.prototype.toRGB = function toRGB () {\n var h = this.h / 360;\n var s = this.s / 100;\n var l = this.l / 100;\n var r, g, b;\n\n if (s === 0) {\n r = g = b = l; // achromatic\n } else {\n var q = l < 0.5 ? l * (1 + s) : l + s - l * s;\n var p = 2 * l - q;\n r = hue2rgb(p, q, h + 1 / 3);\n g = hue2rgb(p, q, h);\n b = hue2rgb(p, q, h - 1 / 3);\n }\n\n return new RGB(r, g, b, this.a);\n };\n\n HSL.prototype.toHSV = function toHSV () {\n return this.toRGB().toHSV();\n };\n\n HSL.prototype.toBytes = function toBytes () {\n return this.toRGB().toBytes();\n };\n\n return HSL;\n}(BaseColor));\n\nfunction hue2rgb(p, q, s) {\n var t = s;\n\n if (t < 0) {\n t += 1;\n }\n\n if (t > 1) {\n t -= 1;\n }\n\n if (t < 1 / 6) {\n return p + (q - p) * 6 * t;\n }\n\n if (t < 1 / 2) {\n return q;\n }\n\n if (t < 2 / 3) {\n return p + (q - p) * (2 / 3 - t) * 6;\n }\n\n return p;\n}\n\nfunction alphaFromHex(a) {\n return parseFloat(parseFloat(parseInt(a, 16) / 255 ).toFixed(3));\n}\n\nexport { RGB, Bytes, HSV, HSL };\n\nexport default function parseColor(value, safe) {\n var m, ret;\n\n if (!value || value === \"none\") {\n return null;\n }\n\n if (value instanceof BaseColor) {\n return value;\n }\n\n var color = value.toLowerCase();\n if ((m = matchNamedColor(color))) {\n if (m[1] === \"transparent\") {\n color = new RGB(1, 1, 1, 0);\n } else {\n color = parseColor(namedColors[m[1]], safe);\n }\n color.match = [ m[1] ];\n return color;\n }\n if ((m = /^#?([0-9a-f]{2})([0-9a-f]{2})([0-9a-f]{2})\\b/i.exec(color))) {\n ret = new Bytes(parseInt(m[1], 16),\n parseInt(m[2], 16),\n parseInt(m[3], 16), 1);\n } else if ((m = /^#?([0-9a-f])([0-9a-f])([0-9a-f])\\b/i.exec(color))) {\n ret = new Bytes(parseInt(m[1] + m[1], 16),\n parseInt(m[2] + m[2], 16),\n parseInt(m[3] + m[3], 16), 1);\n } else if ((m = /^#?([0-9a-f])([0-9a-f])([0-9a-f])([0-9a-f])\\b/i.exec(color))) { // Parse 4 digit hex color\n ret = new Bytes(parseInt(m[1] + m[1], 16),\n parseInt(m[2] + m[2], 16),\n parseInt(m[3] + m[3], 16),\n alphaFromHex(m[4] + m[4]));\n } else if ((m = /^#?([0-9a-f]{2})([0-9a-f]{2})([0-9a-f]{2})([0-9a-f]{2})\\b/i.exec(color))) { // Parse 8 digit hex color\n ret = new Bytes(parseInt(m[1], 16),\n parseInt(m[2], 16),\n parseInt(m[3], 16),\n alphaFromHex(m[4]));\n } else if ((m = /^rgb\\(\\s*([0-9]+)\\s*,\\s*([0-9]+)\\s*,\\s*([0-9]+)\\s*\\)/.exec(color))) {\n ret = new Bytes(parseInt(m[1], 10),\n parseInt(m[2], 10),\n parseInt(m[3], 10), 1);\n } else if ((m = /^rgba\\(\\s*([0-9]+)\\s*,\\s*([0-9]+)\\s*,\\s*([0-9]+)\\s*,\\s*([0-9.]+)\\s*\\)/.exec(color))) {\n ret = new Bytes(parseInt(m[1], 10),\n parseInt(m[2], 10),\n parseInt(m[3], 10), parseFloat(m[4]));\n } else if ((m = /^rgb\\(\\s*([0-9]*\\.?[0-9]+)%\\s*,\\s*([0-9]*\\.?[0-9]+)%\\s*,\\s*([0-9]*\\.?[0-9]+)%\\s*\\)/.exec(color))) {\n ret = new RGB(parseFloat(m[1]) / 100,\n parseFloat(m[2]) / 100,\n parseFloat(m[3]) / 100, 1);\n } else if ((m = /^rgba\\(\\s*([0-9]*\\.?[0-9]+)%\\s*,\\s*([0-9]*\\.?[0-9]+)%\\s*,\\s*([0-9]*\\.?[0-9]+)%\\s*,\\s*([0-9.]+)\\s*\\)/.exec(color))) {\n ret = new RGB(parseFloat(m[1]) / 100,\n parseFloat(m[2]) / 100,\n parseFloat(m[3]) / 100, parseFloat(m[4]));\n } else if ((m = /^color\\(\\s*srgb\\s*([0-9]*\\.?[0-9]+)\\s+([0-9]*\\.?[0-9]+)\\s+([0-9]*\\.?[0-9]+)\\s*(\\/\\s+([0-9]*\\.?[0-9]+))?\\)/.exec(color))) {\n ret = new RGB(\n parseFloat(m[1]),\n parseFloat(m[2]),\n parseFloat(m[3]),\n parseFloat(m[5] || '1'));\n }\n\n if (ret) {\n ret.match = m;\n } else if (!safe) {\n throw new Error(\"Cannot parse color: \" + color);\n }\n\n return ret;\n}\n","import Class from '../class';\nimport namedColors from './named-colors';\nimport { Bytes, RGB, HSV, HSL } from './parse-color';\n\nvar DARK_TRESHOLD = 180;\n\nvar Color = (function (Class) {\n function Color(value) {\n var this$1 = this;\n\n Class.call(this);\n\n if (arguments.length === 1) {\n var formats = Color.formats;\n var resolvedColor = this.resolveColor(value);\n\n for (var idx = 0; idx < formats.length; idx++) {\n var formatRegex = formats[idx].re;\n var processor = formats[idx].process;\n var parts = formatRegex.exec(resolvedColor);\n\n if (parts) {\n var channels = processor(parts);\n this$1.r = channels[0];\n this$1.g = channels[1];\n this$1.b = channels[2];\n }\n }\n } else {\n this.r = arguments[0];\n this.g = arguments[1];\n this.b = arguments[2];\n }\n\n this.r = this.normalizeByte(this.r);\n this.g = this.normalizeByte(this.g);\n this.b = this.normalizeByte(this.b);\n }\n\n if ( Class ) Color.__proto__ = Class;\n Color.prototype = Object.create( Class && Class.prototype );\n Color.prototype.constructor = Color;\n\n Color.prototype.toHex = function toHex () {\n var pad = this.padDigit;\n var r = this.r.toString(16);\n var g = this.g.toString(16);\n var b = this.b.toString(16);\n\n return \"#\" + pad(r) + pad(g) + pad(b);\n };\n\n Color.prototype.resolveColor = function resolveColor (value) {\n var color = value || \"black\";\n\n if (color.charAt(0) === \"#\") {\n color = color.substr(1, 6);\n }\n\n color = color.replace(/ /g, \"\");\n color = color.toLowerCase();\n color = Color.namedColors[color] || color;\n\n return color;\n };\n\n Color.prototype.normalizeByte = function normalizeByte (value) {\n if (value < 0 || isNaN(value)) {\n return 0;\n }\n\n return value > 255 ? 255 : value;\n };\n\n Color.prototype.padDigit = function padDigit (value) {\n return (value.length === 1) ? \"0\" + value : value;\n };\n\n Color.prototype.brightness = function brightness (value) {\n var round = Math.round;\n\n this.r = round(this.normalizeByte(this.r * value));\n this.g = round(this.normalizeByte(this.g * value));\n this.b = round(this.normalizeByte(this.b * value));\n\n return this;\n };\n\n Color.prototype.percBrightness = function percBrightness () {\n return Math.sqrt(0.241 * this.r * this.r + 0.691 * this.g * this.g + 0.068 * this.b * this.b);\n };\n\n Color.prototype.isDark = function isDark () {\n return this.percBrightness() < DARK_TRESHOLD;\n };\n\n Color.fromBytes = function fromBytes (r, g, b, a) {\n return new Bytes(r, g, b, a != null ? a : 1);\n };\n\n Color.fromRGB = function fromRGB (r, g, b, a) {\n return new RGB(r, g, b, a != null ? a : 1);\n };\n\n Color.fromHSV = function fromHSV (h, s, v, a) {\n return new HSV(h, s, v, a != null ? a : 1);\n };\n\n Color.fromHSL = function fromHSL (h, s, l, a) {\n return new HSL(h, s, l, a != null ? a : 1);\n };\n\n return Color;\n}(Class));\n\nColor.formats = [ {\n re: /^rgb\\((\\d{1,3}),\\s*(\\d{1,3}),\\s*(\\d{1,3})\\)$/,\n process: function(parts) {\n return [\n parseInt(parts[1], 10), parseInt(parts[2], 10), parseInt(parts[3], 10)\n ];\n }\n}, {\n re: /^(\\w{2})(\\w{2})(\\w{2})$/,\n process: function(parts) {\n return [\n parseInt(parts[1], 16), parseInt(parts[2], 16), parseInt(parts[3], 16)\n ];\n }\n}, {\n re: /^(\\w{1})(\\w{1})(\\w{1})$/,\n process: function(parts) {\n return [\n parseInt(parts[1] + parts[1], 16),\n parseInt(parts[2] + parts[2], 16),\n parseInt(parts[3] + parts[3], 16)\n ];\n }\n} ];\n\nColor.namedColors = namedColors;\n\nexport default Color;","import { Color } from '@progress/kendo-drawing';\nimport { WHITE, BLACK } from './constants';\n\nfunction autoTextColor(color) {\n var isDark = new Color(color).isDark();\n if (isDark) {\n return WHITE;\n }\n\n return BLACK;\n}\n\nexport default autoTextColor;\n","var DELETED = {};\n\nvar LegacySet = function LegacySet(values) {\n var this$1 = this;\n\n this._index = {};\n this._values = values ? values.slice(0) : [];\n\n for (var i = 0; i < this._values.length; i++) {\n this$1._index[this$1._values[i]] = i;\n }\n};\n\nvar prototypeAccessors = { size: { configurable: true } };\n\nLegacySet.prototype.values = function values () {\n return this._values.filter(function (item) { return item !== DELETED; });\n};\n\nLegacySet.prototype.has = function has (value) {\n return this._index[value] !== undefined;\n};\n\nLegacySet.prototype.add = function add (value) {\n if (!this.has(value)) {\n this._index[value] = this._values.length;\n this._values.push(value);\n }\n};\n\nLegacySet.prototype.delete = function delete$1 (value) {\n var index = this._index[value];\n if (index !== undefined) {\n this._values[index] = DELETED;\n delete this._index[value];\n }\n};\n\nLegacySet.prototype.clear = function clear () {\n this._index = {};\n this._values = [];\n};\n\nprototypeAccessors.size.get = function () {\n return this._values.length;\n};\n\nObject.defineProperties( LegacySet.prototype, prototypeAccessors );\n\nvar SetWrapper = function SetWrapper(values) {\n this._set = new Set(values);\n};\n\nvar prototypeAccessors$1 = { size: { configurable: true } };\n\nSetWrapper.prototype.values = function values () {\n return Array.from(this._set);\n};\n\nSetWrapper.prototype.has = function has (value) {\n return this._set.has(value);\n};\n\nSetWrapper.prototype.add = function add (value) {\n this._set.add(value);\n};\n\nSetWrapper.prototype.delete = function delete$2 (value) {\n this._set.delete(value);\n};\n\nSetWrapper.prototype.clear = function clear () {\n this._set.clear();\n};\n\nprototypeAccessors$1.size.get = function () {\n return this._set.size;\n};\n\nObject.defineProperties( SetWrapper.prototype, prototypeAccessors$1 );\n\n// TODO: Drop LegacySet when removing support for IE10\nvar supportsSet = function () {\n var supported = false;\n\n if (typeof Set === 'function') {\n var set = new Set([1]);\n supported = set.has(1);\n }\n\n return supported;\n};\n\nexport default function createHashSet(values) {\n if (supportsSet()) {\n return new SetWrapper(values);\n }\n\n return new LegacySet(values);\n}\n","export default function defaultErrorHandler(error) {\n throw error;\n}\n","var keys = {\n INSERT: 45,\n DELETE: 46,\n BACKSPACE: 8,\n TAB: 9,\n ENTER: 13,\n ESC: 27,\n LEFT: 37,\n UP: 38,\n RIGHT: 39,\n DOWN: 40,\n END: 35,\n HOME: 36,\n SPACEBAR: 32,\n PAGEUP: 33,\n PAGEDOWN: 34,\n F2: 113,\n F10: 121,\n F12: 123,\n NUMPAD_PLUS: 107,\n NUMPAD_MINUS: 109,\n NUMPAD_DOT: 110\n};\n\nexport default keys;\n","export default function hasOwnProperty(obj, property) {\n return Object.prototype.hasOwnProperty.call(obj, property);\n}\n","// Based on the implementation from kendo-spreadsheet-common/src/calc.js\nvar Matrix = function Matrix() {\n this.height = 0;\n this.width = 0;\n this.data = [];\n};\n\nMatrix.prototype.clone = function clone () {\n var m = new Matrix();\n m.height = this.height;\n m.width = this.width;\n m.data = this.data.map(function (row) { return row.slice(); });\n return m;\n};\n\nMatrix.prototype.get = function get (row, col) {\n var line = this.data[row];\n var val = line ? line[col] : null;\n return val;\n};\n\nMatrix.prototype.set = function set (row, col, data) {\n var line = this.data[row];\n if (line == null) {\n line = this.data[row] = [];\n }\n line[col] = data;\n if (row >= this.height) {\n this.height = row + 1;\n }\n if (col >= this.width) {\n this.width = col + 1;\n }\n};\n\nMatrix.prototype.each = function each (f, includeEmpty) {\n var this$1 = this;\n\n for (var row = 0; row < this.height; ++row) {\n for (var col = 0; col < this.width; ++col) {\n var val = this$1.get(row, col);\n if (includeEmpty || val != null) {\n val = f(val, row, col);\n if (val !== undefined) {\n return val;\n }\n }\n }\n }\n};\n\nMatrix.prototype.map = function map (f, includeEmpty) {\n var m = new Matrix();\n this.each(function(el, row, col) {\n m.set(row, col, f(el, row, col));\n }, includeEmpty);\n return m;\n};\n\nMatrix.prototype.transpose = function transpose () {\n var m = new Matrix();\n this.each(function(el, row, col) {\n m.set(col, row, el);\n });\n return m;\n};\n\nMatrix.prototype.unit = function unit (n) {\n this.width = this.height = n;\n var a = this.data = new Array(n);\n for (var i = n; --i >= 0;) {\n var row = a[i] = new Array(n);\n for (var j = n; --j >= 0;) {\n row[j] = i === j ? 1 : 0;\n }\n }\n return this;\n};\n\nMatrix.prototype.multiply = function multiply (b) {\n var a = this;\n var m = new Matrix();\n for (var row = 0; row < a.height; ++row) {\n for (var col = 0; col < b.width; ++col) {\n var s = 0;\n for (var i = 0; i < a.width; ++i) {\n var va = a.get(row, i);\n var vb = b.get(i, col);\n if (typeof va === \"number\" && typeof vb === \"number\") {\n s += va * vb;\n }\n }\n m.set(row, col, s);\n }\n }\n return m;\n};\n\nMatrix.prototype.inverse = function inverse () {\n var n = this.width;\n var m = this.augment(new Matrix().unit(n));\n var a = m.data;\n\n // Gaussian elimination\n // https://en.wikipedia.org/wiki/Gaussian_elimination#Finding_the_inverse_of_a_matrix\n\n // 1. Get zeros below main diagonal\n var loop = function ( k ) {\n var imax = argmax(k, n, function(i) { return a[i][k]; });\n if (!a[imax][k]) {\n return { v: null }; // singular matrix\n }\n if (k !== imax) {\n var tmp = a[k];\n a[k] = a[imax];\n a[imax] = tmp;\n }\n for (var i = k + 1; i < n; ++i) {\n for (var j = k + 1; j < 2 * n; ++j) {\n a[i][j] -= a[k][j] * a[i][k] / a[k][k];\n }\n a[i][k] = 0;\n }\n };\n\n for (var k = 0; k < n; ++k) {\n var returned = loop( k );\n\n if ( returned ) return returned.v;\n }\n\n // 2. Get 1-s on main diagonal, dividing by pivot\n for (var i$1 = 0; i$1 < n; ++i$1) {\n for (var f = a[i$1][i$1], j$1 = 0; j$1 < 2 * n; ++j$1) {\n a[i$1][j$1] /= f;\n }\n }\n\n // 3. Get zeros above main diagonal. Actually, we only care to compute the right side\n // here (that will be the inverse), so in the inner loop below we go while j >= n,\n // instead of j >= k.\n for (var k$1 = n; --k$1 >= 0;) {\n for (var i$2 = k$1; --i$2 >= 0;) {\n if (a[i$2][k$1]) {\n for (var j$2 = 2 * n; --j$2 >= n;) {\n a[i$2][j$2] -= a[k$1][j$2] * a[i$2][k$1];\n }\n }\n }\n }\n\n return m.slice(0, n, n, n);\n};\n\nMatrix.prototype.augment = function augment (m) {\n var ret = this.clone();\n var n = ret.width;\n m.each(function(val, row, col) {\n ret.set(row, col + n, val);\n });\n return ret;\n};\n\nMatrix.prototype.slice = function slice (row, col, height, width) {\n var this$1 = this;\n\n var m = new Matrix();\n for (var i = 0; i < height; ++i) {\n for (var j = 0; j < width; ++j) {\n m.set(i, j, this$1.get(row + i, col + j));\n }\n }\n return m;\n};\n\nfunction argmax(start, end, f) {\n var max = f(start), pos = start;\n for (var i = start + 1; i < end; i++) {\n var v = f(start);\n if (v > max) {\n max = v;\n pos = start;\n }\n }\n return pos;\n}\n\nexport default Matrix;\n","export var eventMap = {\n down: \"pointerdown\",\n move: \"pointermove\",\n up: \"pointerup\",\n cancel: \"pointercancel pointerleave\"\n};\n\nfunction queryEventMap(e) {\n return eventMap[e] || e;\n}\n\nexport var applyEventMap = function (events) {\n var eventRegEx = /([^ ]+)/g;\n var appliedEvents = events.replace(eventRegEx, queryEventMap);\n\n return appliedEvents;\n};\n","export default function guid() {\n var id = \"\";\n var i;\n var random;\n\n for (i = 0; i < 32; i++) {\n random = Math.random() * 16 | 0;\n\n if (i === 8 || i === 12 || i === 16 || i === 20) {\n id += \"-\";\n }\n\n id += (i === 12 ? 4 : (i === 16 ? (random & 3 | 8) : random)).toString(16); // eslint-disable-line no-nested-ternary\n }\n\n return id;\n}","import isFunction from './is-function';\nimport isArray from './is-array';\nimport guid from '../core/utils/guid';\n\nvar elementEventHandlers = new WeakMap();\nvar ID = Symbol('id');\n\nexport function on(element, events, filter, handler, useCapture) {\n addEventListeners(element, events, filter, handler, useCapture);\n}\n\nexport function off(element, events, filter, handler, useCapture) {\n removeEventListeners(element, events, filter, handler, useCapture);\n}\n\nfunction isString(value) {\n return typeof(value) === \"string\";\n}\n\nfunction addEventListeners(element, events, filter, handler, useCapture) {\n var eventNames = isArray(events) ? events : (events || \"\").split(\" \");\n\n eventNames.forEach(function(eventName) {\n addEventListener(element, eventName, filter, handler, useCapture);\n });\n}\n\nfunction addEventListener(element, event, filter, handler, useCapture) {\n var eventHandler = handler;\n var eventFilter;\n\n if (filter && isFunction(filter) && !handler) {\n eventHandler = filter;\n } else if (filter && isString(filter) && isFunction(eventHandler)) {\n eventFilter = filter;\n }\n\n var attachedHandler = function(e) {\n var closestMatchingTarget = e.target ? e.target.closest(eventFilter) : null;\n\n if (!eventFilter ||\n (eventFilter && e.target && closestMatchingTarget)) {\n var currentTarget = eventFilter ? closestMatchingTarget : e.currentTarget;\n\n // reassign the property as it is a getters only\n Object.defineProperty(e, \"currentTarget\", { value: currentTarget });\n // keep a reference to the top-level target\n Object.defineProperty(e, \"delegateTarget\", { value: element });\n\n eventHandler(e);\n }\n };\n eventHandler[ID] = guid();\n\n var eventHandlers = elementEventHandlers.get(element);\n\n if (!eventHandlers) {\n eventHandlers = new Map();\n elementEventHandlers.set(element, eventHandlers);\n }\n\n eventHandlers.set(eventHandler[ID], attachedHandler);\n element.addEventListener(event, attachedHandler, Boolean(useCapture));\n}\n\nfunction removeEventListeners(element, events, handler, useCapture) {\n var eventNames = isArray(events) ? events : (events || \"\").split(\" \");\n\n eventNames.forEach(function(eventName) {\n removeEventListener(element, eventName, handler, useCapture);\n });\n}\n\nfunction removeEventListener(element, event, handler, useCapture) {\n var eventHandlers = elementEventHandlers.get(element);\n\n if (eventHandlers && handler && handler[ID]) {\n var handlerId = handler[ID];\n var attachedHandler = eventHandlers.get(handlerId);\n\n eventHandlers.delete(handlerId);\n\n if (attachedHandler) {\n element.removeEventListener(event, attachedHandler, Boolean(useCapture));\n }\n }\n}\n","export default function getSupportedFeatures() {\n var os = detectOS(navigator.userAgent);\n var support = {};\n\n support.mobileOS = os;\n\n return support;\n}\n\nfunction detectOS(ua) {\n var os = false;\n var agentRxs = {\n wp: /(Windows Phone(?: OS)?)\\s(\\d+)\\.(\\d+(\\.\\d+)?)/,\n fire: /(Silk)\\/(\\d+)\\.(\\d+(\\.\\d+)?)/,\n android: /(Android|Android.*(?:Opera|Firefox).*?\\/)\\s*(\\d+)\\.?(\\d+(\\.\\d+)?)?/,\n iphone: /(iPhone|iPod).*OS\\s+(\\d+)[\\._]([\\d\\._]+)/,\n ipad: /(iPad).*OS\\s+(\\d+)[\\._]([\\d_]+)/,\n playbook: /(PlayBook).*?Tablet\\s*OS\\s*(\\d+)\\.(\\d+(\\.\\d+)?)/,\n windows: /(MSIE)\\s+(\\d+)\\.(\\d+(\\.\\d+)?)/,\n tizen: /(tizen).*?Version\\/(\\d+)\\.(\\d+(\\.\\d+)?)/i,\n sailfish: /(sailfish).*rv:(\\d+)\\.(\\d+(\\.\\d+)?).*firefox/i\n },\n osRxs = {\n ios: /^i(phone|pad|pod)$/i,\n android: /^android|fire$/i,\n windows: /windows/,\n wp: /wp/,\n flat: /sailfish|ffos|tizen/i\n };\n\n for (var agent in agentRxs) {\n var match = ua.match(agentRxs[agent]);\n if (match) {\n if (agent === \"windows\" && \"plugins\" in navigator) { return false; } // Break if not Metro/Mobile Windows\n\n os = {};\n os.device = agent;\n os.name = testRegex(agent, osRxs);\n os[os.name] = true;\n\n break;\n }\n }\n\n return os;\n}\n\nfunction testRegex(agent, regexes, dflt) {\n for (var regex in regexes) {\n if (regexes[regex].test(agent)) {\n return regex;\n }\n }\n return dflt !== undefined ? dflt : agent;\n}\n","export default function noop() {}\n","export default function now() {\n return new Date().getTime();\n}\n","import { Class } from '../drawing-utils';\n\nvar STRING = \"string\";\nvar FUNCTION = \"function\";\n\nvar preventDefault = function() {\n this._defaultPrevented = true;\n};\n\nvar isDefaultPrevented = function() {\n return this._defaultPrevented === true;\n};\n\nvar Observable = (function (Class) {\n function Observable() {\n Class.call(this);\n this._events = {};\n }\n\n if ( Class ) Observable.__proto__ = Class;\n Observable.prototype = Object.create( Class && Class.prototype );\n Observable.prototype.constructor = Observable;\n\n Observable.prototype.destroy = function destroy () {\n this.unbind();\n };\n\n Observable.prototype.bind = function bind (event, handlers, one) {\n var that = this,\n idx,\n eventNames = typeof event === STRING ? [event] : event || [],\n length,\n original,\n handler,\n handlersIsFunction = typeof handlers === FUNCTION,\n events;\n\n if (handlers === undefined) {\n for (idx in event) {\n that.bind(idx, event[idx]);\n }\n\n return that;\n }\n\n /* eslint-disable no-loop-func */\n var loop = function ( ) {\n var eventName = eventNames[idx];\n\n handler = handlersIsFunction ? handlers : handlers[eventName];\n\n if (handler) {\n if (one) {\n original = handler;\n handler = function() {\n that.unbind(eventName, handler);\n original.apply(that, arguments);\n };\n\n handler.original = original;\n }\n\n events = that._events[eventName] = that._events[eventName] || [];\n events.push(handler);\n }\n };\n\n for (idx = 0, length = eventNames.length; idx < length; idx++) loop( );\n /* eslint-enable no-loop-func */\n\n return that;\n };\n\n Observable.prototype.one = function one (eventNames, handlers) {\n return this.bind(eventNames, handlers, true);\n };\n\n Observable.prototype.first = function first (eventName, handlers) {\n var that = this,\n idx,\n eventNames = typeof eventName === STRING ? [eventName] : eventName,\n length,\n handler,\n handlersIsFunction = typeof handlers === FUNCTION,\n events;\n\n for (idx = 0, length = eventNames.length; idx < length; idx++) {\n var eventName$1 = eventNames[idx];\n\n handler = handlersIsFunction ? handlers : handlers[eventName$1];\n\n if (handler) {\n events = that._events[eventName$1] = that._events[eventName$1] || [];\n events.unshift(handler);\n }\n }\n\n return that;\n };\n\n Observable.prototype.trigger = function trigger (eventName, eventArgs) {\n var that = this,\n events = that._events[eventName],\n idx,\n length;\n\n if (events) {\n var e = eventArgs || {};\n\n e.sender = that;\n\n e._defaultPrevented = false;\n\n e.preventDefault = preventDefault;\n\n e.isDefaultPrevented = isDefaultPrevented;\n\n events = events.slice();\n\n for (idx = 0, length = events.length; idx < length; idx++) {\n events[idx].call(that, e);\n }\n\n return e._defaultPrevented === true;\n }\n\n return false;\n };\n\n Observable.prototype.unbind = function unbind (eventName, handler) {\n var that = this,\n events = that._events[eventName],\n idx;\n\n if (eventName === undefined) {\n that._events = {};\n } else if (events) {\n if (handler) {\n for (idx = events.length - 1; idx >= 0; idx--) {\n if (events[idx] === handler || events[idx].original === handler) {\n events.splice(idx, 1);\n }\n }\n } else {\n that._events[eventName] = [];\n }\n }\n\n return that;\n };\n\n Observable.prototype._setEvents = function _setEvents (options) {\n var this$1 = this;\n\n var length = (this.events || []).length;\n\n for (var idx = 0; idx < length; idx ++) {\n var e = this$1.events[idx];\n\n if (this$1.options[e] && options[e]) {\n this$1.unbind(e, this$1.options[e]);\n\n if (this$1._events && this$1._events[e]) {\n delete this$1._events[e];\n }\n }\n }\n\n this.bind(this.events, options);\n };\n\n return Observable;\n}(Class));\n\nexport default Observable;\n","import { Class } from '../drawing-utils';\nimport { applyEventMap, eventMap } from './event-map';\nimport { on, off } from './event-utils';\nimport getSupportedFeatures from './get-supported-features';\nimport noop from './noop';\nimport now from './now';\nimport grep from './grep';\nimport Observable from './observable';\n\nvar extend = Object.assign;\n\nvar preventDefault = function (e) {\n e.preventDefault();\n};\n\nvar\n DEFAULT_MIN_HOLD = 800,\n CLICK_DELAY = 300,\n DEFAULT_THRESHOLD = 0,\n PRESS = 'press',\n HOLD = 'hold',\n SELECT = 'select',\n START = 'start',\n MOVE = 'move',\n END = 'end',\n CANCEL = 'cancel',\n TAP = 'tap',\n DOUBLETAP = 'doubleTap',\n RELEASE = 'release',\n GESTURESTART = 'gesturestart',\n GESTURECHANGE = 'gesturechange',\n GESTUREEND = 'gestureend',\n GESTURETAP = 'gesturetap';\n\nvar THRESHOLD = {\n 'api': 0,\n 'touch': 0,\n 'mouse': 9,\n 'pointer': 9\n};\n\nfunction touchDelta(touch1, touch2) {\n var x1 = touch1.x.location,\n y1 = touch1.y.location,\n x2 = touch2.x.location,\n y2 = touch2.y.location,\n dx = x1 - x2,\n dy = y1 - y2;\n\n return {\n center: {\n x: (x1 + x2) / 2,\n y: (y1 + y2) / 2\n },\n distance: Math.sqrt(dx * dx + dy * dy)\n };\n}\n\nfunction getTouches(e) {\n var touches = [],\n originalEvent = e.originalEvent || e,\n currentTarget = e.currentTarget;\n\n if (e.api) {\n touches.push({\n id: 2, // hardcoded ID for API call\n event: e,\n target: e.target,\n currentTarget: e.target,\n location: e,\n type: 'api'\n });\n } else {\n touches.push({\n location: originalEvent,\n event: e,\n target: e.target,\n currentTarget: currentTarget,\n id: originalEvent.pointerId,\n type: 'pointer'\n });\n }\n\n return touches;\n}\nvar TouchAxis = (function (Class) {\n function TouchAxis(axis, location) {\n Class.call(this);\n var that = this;\n\n that.support = getSupportedFeatures();\n that.invalidZeroEvents = this.support.mobileOS && this.support.mobileOS.android;\n that.axis = axis;\n that._updateLocationData(location);\n that.startLocation = that.location;\n that.velocity = that.delta = 0;\n that.timeStamp = now();\n }\n\n if ( Class ) TouchAxis.__proto__ = Class;\n TouchAxis.prototype = Object.create( Class && Class.prototype );\n TouchAxis.prototype.constructor = TouchAxis;\n\n TouchAxis.prototype.move = function move (location) {\n var that = this,\n offset = location['page' + that.axis],\n timeStamp = now(),\n timeDelta = timeStamp - that.timeStamp || 1;\n\n if (!offset && this.invalidZeroEvents) {\n return;\n }\n\n that.delta = offset - that.location;\n that._updateLocationData(location);\n that.initialDelta = offset - that.startLocation;\n that.velocity = that.delta / timeDelta;\n that.timeStamp = timeStamp;\n };\n\n TouchAxis.prototype._updateLocationData = function _updateLocationData (location) {\n var that = this,\n axis = that.axis;\n\n that.location = location['page' + axis];\n that.client = location['client' + axis];\n that.screen = location['screen' + axis];\n };\n\n return TouchAxis;\n}(Class));\n\nvar Touch = (function (Class) {\n function Touch(userEvents, target, touchInfo) {\n Class.call(this);\n\n extend(this, {\n x: new TouchAxis('X', touchInfo.location),\n y: new TouchAxis('Y', touchInfo.location),\n type: touchInfo.type,\n threshold: userEvents.threshold || THRESHOLD[touchInfo.type],\n userEvents: userEvents,\n target: target,\n currentTarget: touchInfo.currentTarget,\n initialTouch: touchInfo.target,\n id: touchInfo.id,\n pressEvent: touchInfo,\n _clicks: userEvents._clicks,\n supportDoubleTap: userEvents.supportDoubleTap,\n _moved: false,\n _finished: false\n });\n }\n\n if ( Class ) Touch.__proto__ = Class;\n Touch.prototype = Object.create( Class && Class.prototype );\n Touch.prototype.constructor = Touch;\n\n Touch.prototype.press = function press () {\n var this$1 = this;\n\n this._holdTimeout = setTimeout(function () { return this$1._hold(); }, this.userEvents.minHold);\n this._trigger(PRESS, this.pressEvent);\n };\n\n Touch.prototype._tap = function _tap (touchInfo) {\n var that = this;\n\n that.userEvents._clicks++;\n\n if (that.userEvents._clicks === 1) {\n that._clickTimeout = setTimeout(function() {\n if (that.userEvents._clicks === 1) {\n that._trigger(TAP, touchInfo);\n } else {\n that._trigger(DOUBLETAP, touchInfo);\n }\n\n that.userEvents._clicks = 0;\n }, CLICK_DELAY);\n }\n };\n\n Touch.prototype._hold = function _hold () {\n this._trigger(HOLD, this.pressEvent);\n };\n\n /* eslint-disable consistent-return */\n Touch.prototype.move = function move (touchInfo) {\n var that = this;\n var preventMove = touchInfo.type !== 'api' && that.userEvents._shouldNotMove;\n\n if (that._finished || preventMove) {\n return;\n }\n\n that.x.move(touchInfo.location);\n that.y.move(touchInfo.location);\n\n if (!that._moved) {\n if (that._withinIgnoreThreshold()) {\n return;\n }\n\n if (!UserEvents.current || UserEvents.current === that.userEvents) {\n that._start(touchInfo);\n } else {\n return that.dispose();\n }\n }\n\n if (!that._finished) {\n that._trigger(MOVE, touchInfo);\n }\n };\n /* eslint-enable consistent-return */\n\n Touch.prototype.end = function end (touchInfo) {\n this.endTime = now();\n\n if (this._finished) {\n return;\n }\n\n this._finished = true;\n this._trigger(RELEASE, touchInfo);\n\n if (this._moved) {\n this._trigger(END, touchInfo);\n } else {\n if (this.supportDoubleTap) {\n this._tap(touchInfo);\n } else {\n this._trigger(TAP, touchInfo);\n }\n }\n\n clearTimeout(this._holdTimeout);\n this.dispose();\n };\n\n Touch.prototype.dispose = function dispose () {\n var userEvents = this.userEvents,\n activeTouches = userEvents.touches || [];\n\n this._finished = true;\n this.pressEvent = null;\n\n clearTimeout(this._holdTimeout);\n // activeTouches.splice($.inArray(this, activeTouches), 1);\n var activeTouchIndex = activeTouches.indexOf(this);\n activeTouches.splice(activeTouchIndex, 1);\n };\n\n Touch.prototype.skip = function skip () {\n this.dispose();\n };\n\n Touch.prototype.cancel = function cancel () {\n this.dispose();\n };\n\n Touch.prototype.isMoved = function isMoved () {\n return this._moved;\n };\n\n Touch.prototype._start = function _start (touchInfo) {\n clearTimeout(this._holdTimeout);\n this.startTime = now();\n this._moved = true;\n this._trigger(START, touchInfo);\n };\n\n Touch.prototype._trigger = function _trigger (name, touchInfo) {\n var e = touchInfo.event;\n var data = {\n touch: this,\n x: this.x,\n y: this.y,\n target: this.target,\n event: e\n };\n\n if (this.userEvents.notify(name, data)) {\n e.preventDefault();\n }\n };\n\n Touch.prototype._withinIgnoreThreshold = function _withinIgnoreThreshold () {\n var xDelta = this.x.initialDelta,\n yDelta = this.y.initialDelta;\n return Math.sqrt(xDelta * xDelta + yDelta * yDelta) <= this.threshold;\n };\n\n return Touch;\n}(Class));\n\nfunction withEachUpEvent(callback) {\n var downEvents = eventMap.up.split(' '),\n idx = 0,\n length = downEvents.length;\n\n for (; idx < length; idx++) {\n callback(downEvents[idx]);\n }\n}\n\nvar UserEvents = (function (Observable) {\n function UserEvents(element, options) {\n Observable.call(this);\n var that = this;\n var filter;\n\n var support = getSupportedFeatures();\n this.support = support;\n\n /* eslint-disable no-param-reassign */\n options = options || {};\n /* eslint-enable no-param-reassign */\n this.options = options;\n\n filter = that.filter = options.filter;\n that.threshold = options.threshold || DEFAULT_THRESHOLD;\n that.minHold = options.minHold || DEFAULT_MIN_HOLD;\n that.touches = [];\n that._maxTouches = options.multiTouch ? 2 : 1;\n that.allowSelection = options.allowSelection;\n that.captureUpIfMoved = options.captureUpIfMoved;\n that._clicks = 0;\n that.supportDoubleTap = options.supportDoubleTap;\n\n extend(that, {\n element: element,\n surface: options.surface || element,\n stopPropagation: options.stopPropagation,\n pressed: false\n });\n\n this._surfaceMoveHandler = this._move.bind(this);\n on(that.surface, applyEventMap('move'), this._surfaceMoveHandler);\n\n this._surfaceEndHandler = this._end.bind(this);\n on(that.surface, applyEventMap('up cancel'), this._surfaceEndHandler);\n\n this._elementStartHandler = this._start.bind(this);\n on(element, applyEventMap('down'), filter, this._elementStartHandler);\n\n element.style['touch-action'] = options.touchAction || 'none';\n\n if (options.preventDragEvent) {\n this._elementDragStartHandler = preventDefault;\n on(element, applyEventMap('dragstart'), this._elementDragStartHandler);\n }\n\n // element.on(kendo.applyEventMap('mousedown'), filter, {\n // root: element\n // } '_select');\n\n // todo: use root\n this._elementSelectHandler = this._select.bind(this);\n on(element, applyEventMap('mousedown'), filter, this._elementSelectHandler);\n\n if (that.captureUpIfMoved) {\n var surfaceElement = that.surface,\n preventIfMovingProxy = that.preventIfMoving.bind(that);\n\n withEachUpEvent(function(eventName) {\n surfaceElement.addEventListener(eventName, preventIfMovingProxy, true);\n });\n }\n\n that.bind([\n PRESS,\n HOLD,\n TAP,\n DOUBLETAP,\n START,\n MOVE,\n END,\n RELEASE,\n CANCEL,\n GESTURESTART,\n GESTURECHANGE,\n GESTUREEND,\n GESTURETAP,\n SELECT\n ], options);\n }\n\n if ( Observable ) UserEvents.__proto__ = Observable;\n UserEvents.prototype = Object.create( Observable && Observable.prototype );\n UserEvents.prototype.constructor = UserEvents;\n\n UserEvents.prototype.preventIfMoving = function preventIfMoving (e) {\n if (this._isMoved()) {\n e.preventDefault();\n }\n };\n\n UserEvents.prototype.destroy = function destroy () {\n var that = this;\n var options = this.options;\n var element = this.element;\n\n if (that._destroyed) {\n return;\n }\n\n that._destroyed = true;\n\n if (that.captureUpIfMoved) {\n var surfaceElement = that.surface;\n withEachUpEvent(function(eventName) {\n surfaceElement.removeEventListener(eventName, that.preventIfMoving);\n });\n }\n\n off(that.surface, applyEventMap('move'), this._surfaceMoveHandler);\n off(that.surface, applyEventMap('up cancel'), this._surfaceEndHandler);\n\n off(element, applyEventMap('down'), this._elementStartHandler);\n\n if (options.preventDragEvent) {\n off(element, applyEventMap('dragstart'), this._elementDragStartHandler);\n }\n\n off(element, applyEventMap('mousedown'), this._elementSelectHandler);\n\n that._disposeAll();\n that.unbind();\n\n delete that.surface;\n delete that.element;\n delete that.currentTarget;\n };\n\n UserEvents.prototype.capture = function capture () {\n UserEvents.current = this;\n };\n\n UserEvents.prototype.cancel = function cancel () {\n this._disposeAll();\n this.trigger(CANCEL);\n };\n\n UserEvents.prototype.notify = function notify (event, data) {\n var that = this,\n touches = that.touches;\n var eventName = event;\n\n if (this._isMultiTouch()) {\n switch (eventName) {\n case MOVE:\n eventName = GESTURECHANGE;\n break;\n case END:\n eventName = GESTUREEND;\n break;\n case TAP:\n eventName = GESTURETAP;\n break;\n default:\n break;\n }\n\n extend(data, {\n touches: touches\n }, touchDelta(touches[0], touches[1]));\n }\n\n return this.trigger(eventName, extend(data, {\n type: eventName\n }));\n };\n\n UserEvents.prototype.press = function press (x, y, target) {\n this._apiCall('_start', x, y, target);\n };\n\n UserEvents.prototype.move = function move (x, y) {\n this._apiCall('_move', x, y);\n };\n\n UserEvents.prototype.end = function end (x, y) {\n this._apiCall('_end', x, y);\n };\n\n UserEvents.prototype._isMultiTouch = function _isMultiTouch () {\n return this.touches.length > 1;\n };\n\n UserEvents.prototype._maxTouchesReached = function _maxTouchesReached () {\n return this.touches.length >= this._maxTouches;\n };\n\n UserEvents.prototype._disposeAll = function _disposeAll () {\n var touches = this.touches;\n while (touches.length > 0) {\n touches.pop().dispose();\n }\n };\n\n UserEvents.prototype._isMoved = function _isMoved () {\n return grep(this.touches, function(touch) {\n return touch.isMoved();\n }).length;\n };\n\n UserEvents.prototype._select = function _select (e) {\n if (!this.allowSelection || this.trigger(SELECT, { event: e })) {\n e.preventDefault();\n }\n };\n\n UserEvents.prototype._start = function _start (e) {\n var this$1 = this;\n\n if (e.which && e.which > 1 || this._maxTouchesReached()) {\n return;\n }\n\n UserEvents.current = null;\n this.currentTarget = e.currentTarget;\n\n if (this.stopPropagation) {\n e.stopPropagation();\n }\n\n var target;\n var eventTouches = getTouches(e);\n for (var idx = 0; idx < eventTouches.length; idx++) {\n if (this$1._maxTouchesReached()) {\n break;\n }\n\n var eventTouch = eventTouches[idx];\n if (this$1.filter) {\n target = eventTouch.currentTarget;\n } else {\n target = this$1.element;\n }\n\n if (target && target.length === 0) {\n continue;\n }\n\n var touch = new Touch(this$1, target, eventTouch);\n this$1.touches.push(touch);\n touch.press();\n\n if (this$1._isMultiTouch()) {\n this$1.notify('gesturestart', {});\n }\n }\n };\n\n UserEvents.prototype._move = function _move (e) {\n this._eachTouch('move', e);\n };\n\n UserEvents.prototype._end = function _end (e) {\n this._eachTouch('end', e);\n };\n\n UserEvents.prototype._eachTouch = function _eachTouch (methodName, e) {\n var this$1 = this;\n\n var that = this,\n dict = {},\n touches = getTouches(e),\n activeTouches = that.touches,\n idx,\n touch,\n touchInfo,\n matchingTouch;\n\n for (idx = 0; idx < activeTouches.length; idx++) {\n touch = activeTouches[idx];\n dict[touch.id] = touch;\n }\n\n for (idx = 0; idx < touches.length; idx++) {\n touchInfo = touches[idx];\n matchingTouch = dict[touchInfo.id];\n\n if (matchingTouch) {\n var shouldCapture = methodName === 'move' && touchInfo.type === 'pointer' && !this$1.surface.hasPointerCapture(touchInfo.id);\n if (shouldCapture) {\n this$1.surface.setPointerCapture(touchInfo.id);\n }\n\n matchingTouch[methodName](touchInfo);\n }\n }\n };\n\n UserEvents.prototype._apiCall = function _apiCall (type, x, y, target) {\n this[type]({\n api: true,\n pageX: x,\n pageY: y,\n clientX: x,\n clientY: y,\n target: target || this.element,\n stopPropagation: noop,\n preventDefault: noop\n });\n };\n\n UserEvents.defaultThreshold = function defaultThreshold (value) {\n DEFAULT_THRESHOLD = value;\n };\n\n UserEvents.minHold = function minHold (value) {\n DEFAULT_MIN_HOLD = value;\n };\n\n return UserEvents;\n}(Observable));\n\nexport default UserEvents;\n","import { DEFAULT_PRECISION } from '../../common/constants';\nimport { round } from '../../common';\n\nexport default function autoMajorUnit(min, max) {\n var diff = round(max - min, DEFAULT_PRECISION - 1);\n\n if (diff === 0) {\n if (max === 0) {\n return 0.1;\n }\n\n diff = Math.abs(max);\n }\n\n var scale = Math.pow(10, Math.floor(Math.log(diff) / Math.log(10)));\n var relativeValue = round((diff / scale), DEFAULT_PRECISION);\n var scaleMultiplier = 1;\n\n if (relativeValue < 1.904762) {\n scaleMultiplier = 0.2;\n } else if (relativeValue < 4.761904) {\n scaleMultiplier = 0.5;\n } else if (relativeValue < 9.523809) {\n scaleMultiplier = 1;\n } else {\n scaleMultiplier = 2;\n }\n\n return round(scale * scaleMultiplier, DEFAULT_PRECISION);\n}","import { COORD_PRECISION } from '../common/constants';\nimport { Class, rad, round } from '../common';\n\nvar Point = (function (Class) {\n function Point(x, y) {\n Class.call(this);\n\n this.x = x || 0;\n this.y = y || 0;\n }\n\n if ( Class ) Point.__proto__ = Class;\n Point.prototype = Object.create( Class && Class.prototype );\n Point.prototype.constructor = Point;\n\n Point.prototype.clone = function clone () {\n return new Point(this.x, this.y);\n };\n\n Point.prototype.equals = function equals (point) {\n return point && this.x === point.x && this.y === point.y;\n };\n\n Point.prototype.rotate = function rotate (center, degrees) {\n var theta = rad(degrees);\n var cosT = Math.cos(theta);\n var sinT = Math.sin(theta);\n var cx = center.x;\n var cy = center.y;\n var ref = this;\n var x = ref.x;\n var y = ref.y;\n\n this.x = round(\n cx + (x - cx) * cosT + (y - cy) * sinT,\n COORD_PRECISION\n );\n\n this.y = round(\n cy + (y - cy) * cosT - (x - cx) * sinT,\n COORD_PRECISION\n );\n\n return this;\n };\n\n Point.prototype.multiply = function multiply (a) {\n\n this.x *= a;\n this.y *= a;\n\n return this;\n };\n\n Point.prototype.distanceTo = function distanceTo (point) {\n var dx = this.x - point.x;\n var dy = this.y - point.y;\n\n return Math.sqrt(dx * dx + dy * dy);\n };\n\n Point.onCircle = function onCircle (center, angle, radius) {\n var radians = rad(angle);\n\n return new Point(\n center.x - radius * Math.cos(radians),\n center.y - radius * Math.sin(radians)\n );\n };\n\n return Point;\n}(Class));\n\n\nexport default Point;","import { Class } from '../common';\n\nvar HasObservers = (function (Class) {\n function HasObservers () {\n Class.apply(this, arguments);\n }\n\n if ( Class ) HasObservers.__proto__ = Class;\n HasObservers.prototype = Object.create( Class && Class.prototype );\n HasObservers.prototype.constructor = HasObservers;\n\n HasObservers.prototype.observers = function observers () {\n this._observers = this._observers || [];\n return this._observers;\n };\n\n HasObservers.prototype.addObserver = function addObserver (element) {\n if (!this._observers) {\n this._observers = [ element ];\n } else {\n this._observers.push(element);\n }\n return this;\n };\n\n HasObservers.prototype.removeObserver = function removeObserver (element) {\n var observers = this.observers();\n var index = observers.indexOf(element);\n if (index !== -1) {\n observers.splice(index, 1);\n }\n return this;\n };\n\n HasObservers.prototype.trigger = function trigger (methodName, event) {\n var observers = this._observers;\n\n if (observers && !this._suspended) {\n for (var idx = 0; idx < observers.length; idx++) {\n var observer = observers[idx];\n if (observer[methodName]) {\n observer[methodName](event);\n }\n }\n }\n return this;\n };\n\n HasObservers.prototype.optionsChange = function optionsChange (e) {\n if ( e === void 0 ) e = {};\n\n e.element = this;\n this.trigger(\"optionsChange\", e);\n };\n\n HasObservers.prototype.geometryChange = function geometryChange () {\n this.trigger(\"geometryChange\", {\n element: this\n });\n };\n\n HasObservers.prototype.suspend = function suspend () {\n this._suspended = (this._suspended || 0) + 1;\n return this;\n };\n\n HasObservers.prototype.resume = function resume () {\n this._suspended = Math.max((this._suspended || 0) - 1, 0);\n return this;\n };\n\n HasObservers.prototype._observerField = function _observerField (field, value) {\n if (this[field]) {\n this[field].removeObserver(this);\n }\n this[field] = value;\n value.addObserver(this);\n };\n\n return HasObservers;\n}(Class));\n\nexport default HasObservers;\n\n","function setAccessor(field) {\n return function(value) {\n if (this[field] !== value) {\n this[field] = value;\n this.geometryChange();\n }\n\n return this;\n };\n}\n\nfunction getAccessor(field) {\n return function() {\n return this[field];\n };\n}\n\nfunction defineAccessors(fn, fields) {\n for (var i = 0; i < fields.length; i++) {\n var name = fields[i];\n var capitalized = name.charAt(0).toUpperCase() +\n name.substring(1, name.length);\n\n fn[\"set\" + capitalized] = setAccessor(name);\n fn[\"get\" + capitalized] = getAccessor(name);\n }\n}\n\nvar withAccessors = function (TBase, names) {\n var result = (function (TBase) {\n function result () {\n TBase.apply(this, arguments);\n }if ( TBase ) result.__proto__ = TBase;\n result.prototype = Object.create( TBase && TBase.prototype );\n result.prototype.constructor = result;\n\n \n\n return result;\n }(TBase));\n defineAccessors(result.prototype, names);\n\n return result;\n};\n\nexport default withAccessors;\n","export default function toMatrix(transformation) {\n if (transformation && typeof transformation.matrix === \"function\") {\n return transformation.matrix();\n }\n\n return transformation;\n}","import withAccessors from '../mixins/with-accessors';\nimport HasObservers from '../core/has-observers';\nimport { defined, MIN_NUM, MAX_NUM, round } from '../util';\nimport Matrix from './matrix';\nimport toMatrix from './to-matrix';\n\n\nvar Point = (function (superclass) {\n function Point(x, y) {\n superclass.call(this);\n\n this.x = x || 0;\n this.y = y || 0;\n }\n\n if ( superclass ) Point.__proto__ = superclass;\n Point.prototype = Object.create( superclass && superclass.prototype );\n Point.prototype.constructor = Point;\n\n var staticAccessors = { ZERO: { configurable: true } };\n\n Point.prototype.equals = function equals (other) {\n return other && other.x === this.x && other.y === this.y;\n };\n\n Point.prototype.clone = function clone () {\n return new Point(this.x, this.y);\n };\n\n Point.prototype.rotate = function rotate (angle, origin) {\n var originPoint = Point.create(origin) || Point.ZERO;\n\n return this.transform(Matrix.rotate(angle, originPoint.x, originPoint.y));\n };\n\n Point.prototype.translate = function translate (x, y) {\n this.x += x;\n this.y += y;\n\n this.geometryChange();\n\n return this;\n };\n\n Point.prototype.translateWith = function translateWith (point) {\n return this.translate(point.x, point.y);\n };\n\n Point.prototype.move = function move (x, y) {\n this.x = this.y = 0;\n return this.translate(x, y);\n };\n\n Point.prototype.scale = function scale (scaleX, scaleY) {\n if ( scaleY === void 0 ) scaleY = scaleX;\n\n this.x *= scaleX;\n this.y *= scaleY;\n\n this.geometryChange();\n\n return this;\n };\n\n Point.prototype.scaleCopy = function scaleCopy (scaleX, scaleY) {\n return this.clone().scale(scaleX, scaleY);\n };\n\n Point.prototype.transform = function transform (transformation) {\n var matrix = toMatrix(transformation);\n var ref = this;\n var x = ref.x;\n var y = ref.y;\n\n this.x = matrix.a * x + matrix.c * y + matrix.e;\n this.y = matrix.b * x + matrix.d * y + matrix.f;\n\n this.geometryChange();\n\n return this;\n };\n\n Point.prototype.transformCopy = function transformCopy (transformation) {\n var point = this.clone();\n\n if (transformation) {\n point.transform(transformation);\n }\n\n return point;\n };\n\n Point.prototype.distanceTo = function distanceTo (point) {\n var dx = this.x - point.x;\n var dy = this.y - point.y;\n\n return Math.sqrt(dx * dx + dy * dy);\n };\n\n Point.prototype.round = function round$1 (digits) {\n this.x = round(this.x, digits);\n this.y = round(this.y, digits);\n\n this.geometryChange();\n\n return this;\n };\n\n Point.prototype.toArray = function toArray (digits) {\n var doRound = defined(digits);\n var x = doRound ? round(this.x, digits) : this.x;\n var y = doRound ? round(this.y, digits) : this.y;\n\n return [ x, y ];\n };\n\n Point.prototype.toString = function toString (digits, separator) {\n if ( separator === void 0 ) separator = \" \";\n\n var ref = this;\n var x = ref.x;\n var y = ref.y;\n\n if (defined(digits)) {\n x = round(x, digits);\n y = round(y, digits);\n }\n\n return x + separator + y;\n };\n\n Point.create = function create (arg0, arg1) {\n if (defined(arg0)) {\n if (arg0 instanceof Point) {\n return arg0;\n } else if (arguments.length === 1 && arg0.length === 2) {\n return new Point(arg0[0], arg0[1]);\n }\n\n return new Point(arg0, arg1);\n }\n };\n\n Point.min = function min () {\n var arguments$1 = arguments;\n\n var minX = MAX_NUM;\n var minY = MAX_NUM;\n\n for (var i = 0; i < arguments.length; i++) {\n var point = arguments$1[i];\n minX = Math.min(point.x, minX);\n minY = Math.min(point.y, minY);\n }\n\n return new Point(minX, minY);\n };\n\n Point.max = function max () {\n var arguments$1 = arguments;\n\n var maxX = MIN_NUM;\n var maxY = MIN_NUM;\n\n for (var i = 0; i < arguments.length; i++) {\n var point = arguments$1[i];\n maxX = Math.max(point.x, maxX);\n maxY = Math.max(point.y, maxY);\n }\n\n return new Point(maxX, maxY);\n };\n\n Point.minPoint = function minPoint () {\n return new Point(MIN_NUM, MIN_NUM);\n };\n\n Point.maxPoint = function maxPoint () {\n return new Point(MAX_NUM, MAX_NUM);\n };\n\n staticAccessors.ZERO.get = function () {\n return new Point(0, 0);\n };\n\n Object.defineProperties( Point, staticAccessors );\n\n return Point;\n}(withAccessors(HasObservers, [ \"x\", \"y\" ])));\n\nexport default Point;\n","import HasObservers from '../core/has-observers';\nimport withAccessors from '../mixins/with-accessors';\nimport { defined, round } from '../util';\n\n\nvar Size = (function (superclass) {\n function Size(width, height) {\n superclass.call(this);\n\n this.width = width || 0;\n this.height = height || 0;\n }\n\n if ( superclass ) Size.__proto__ = superclass;\n Size.prototype = Object.create( superclass && superclass.prototype );\n Size.prototype.constructor = Size;\n\n var staticAccessors = { ZERO: { configurable: true } };\n\n Size.prototype.equals = function equals (other) {\n return other && other.width === this.width && other.height === this.height;\n };\n\n Size.prototype.clone = function clone () {\n return new Size(this.width, this.height);\n };\n\n Size.prototype.toArray = function toArray (digits) {\n var doRound = defined(digits);\n var width = doRound ? round(this.width, digits) : this.width;\n var height = doRound ? round(this.height, digits) : this.height;\n\n return [ width, height ];\n };\n\n Size.create = function create (arg0, arg1) {\n if (defined(arg0)) {\n if (arg0 instanceof Size) {\n return arg0;\n } else if (arguments.length === 1 && arg0.length === 2) {\n return new Size(arg0[0], arg0[1]);\n }\n\n return new Size(arg0, arg1);\n }\n };\n\n staticAccessors.ZERO.get = function () {\n return new Size(0, 0);\n };\n\n Object.defineProperties( Size, staticAccessors );\n\n return Size;\n}(withAccessors(HasObservers, [ \"width\", \"height\" ])));\n\nexport default Size;\n","import HasObservers from '../core/has-observers';\nimport Point from './point';\nimport Size from './size';\n\nvar Rect = (function (HasObservers) {\n function Rect(origin, size, cornerRadius) {\n if ( origin === void 0 ) origin = new Point();\n if ( size === void 0 ) size = new Size();\n if ( cornerRadius === void 0 ) cornerRadius = 0;\n\n HasObservers.call(this);\n\n this.setOrigin(origin);\n this.setSize(size);\n this.setCornerRadius(cornerRadius);\n }\n\n if ( HasObservers ) Rect.__proto__ = HasObservers;\n Rect.prototype = Object.create( HasObservers && HasObservers.prototype );\n Rect.prototype.constructor = Rect;\n\n Rect.prototype.clone = function clone () {\n return new Rect(\n this.origin.clone(),\n this.size.clone()\n );\n };\n\n Rect.prototype.equals = function equals (other) {\n return other &&\n other.origin.equals(this.origin) &&\n other.size.equals(this.size);\n };\n\n Rect.prototype.setOrigin = function setOrigin (value) {\n this._observerField(\"origin\", Point.create(value));\n this.geometryChange();\n return this;\n };\n\n Rect.prototype.getOrigin = function getOrigin () {\n return this.origin;\n };\n\n Rect.prototype.setCornerRadius = function setCornerRadius (radius) {\n this.cornerRadius = Array.isArray(radius) ? radius : [ radius, radius ];\n\n this.geometryChange();\n return this;\n };\n\n Rect.prototype.getCornerRadius = function getCornerRadius () {\n return this.cornerRadius;\n };\n\n Rect.prototype.setSize = function setSize (value) {\n this._observerField(\"size\", Size.create(value));\n this.geometryChange();\n return this;\n };\n\n Rect.prototype.getSize = function getSize () {\n return this.size;\n };\n\n Rect.prototype.width = function width () {\n return this.size.width;\n };\n\n Rect.prototype.height = function height () {\n return this.size.height;\n };\n\n Rect.prototype.topLeft = function topLeft () {\n return this.origin.clone();\n };\n\n Rect.prototype.bottomRight = function bottomRight () {\n return this.origin.clone().translate(this.width(), this.height());\n };\n\n Rect.prototype.topRight = function topRight () {\n return this.origin.clone().translate(this.width(), 0);\n };\n\n Rect.prototype.bottomLeft = function bottomLeft () {\n return this.origin.clone().translate(0, this.height());\n };\n\n Rect.prototype.center = function center () {\n return this.origin.clone().translate(this.width() / 2, this.height() / 2);\n };\n\n Rect.prototype.bbox = function bbox (matrix) {\n var tl = this.topLeft().transformCopy(matrix);\n var tr = this.topRight().transformCopy(matrix);\n var br = this.bottomRight().transformCopy(matrix);\n var bl = this.bottomLeft().transformCopy(matrix);\n\n return Rect.fromPoints(tl, tr, br, bl);\n };\n\n Rect.prototype.transformCopy = function transformCopy (m) {\n return Rect.fromPoints(\n this.topLeft().transform(m),\n this.bottomRight().transform(m)\n );\n };\n\n Rect.prototype.expand = function expand (x, y) {\n if ( y === void 0 ) y = x;\n\n\n this.size.width += 2 * x;\n this.size.height += 2 * y;\n\n this.origin.translate(-x, -y);\n\n return this;\n };\n\n Rect.prototype.expandCopy = function expandCopy (x, y) {\n return this.clone().expand(x, y);\n };\n\n Rect.prototype.containsPoint = function containsPoint (point) {\n var origin = this.origin;\n var bottomRight = this.bottomRight();\n return !(point.x < origin.x || point.y < origin.y || bottomRight.x < point.x || bottomRight.y < point.y);\n };\n\n Rect.prototype._isOnPath = function _isOnPath (point, width) {\n var rectOuter = this.expandCopy(width, width);\n var rectInner = this.expandCopy(-width, -width);\n\n return rectOuter.containsPoint(point) && !rectInner.containsPoint(point);\n };\n\n Rect.fromPoints = function fromPoints () {\n var topLeft = Point.min.apply(null, arguments);\n var bottomRight = Point.max.apply(null, arguments);\n var size = new Size(\n bottomRight.x - topLeft.x,\n bottomRight.y - topLeft.y\n );\n\n return new Rect(topLeft, size);\n };\n\n Rect.union = function union (a, b) {\n return Rect.fromPoints(\n Point.min(a.topLeft(), b.topLeft()),\n Point.max(a.bottomRight(), b.bottomRight())\n );\n };\n\n Rect.intersect = function intersect (a, b) {\n var rect1 = {\n left: a.topLeft().x,\n top: a.topLeft().y,\n right: a.bottomRight().x,\n bottom: a.bottomRight().y\n };\n\n var rect2 = {\n left: b.topLeft().x,\n top: b.topLeft().y,\n right: b.bottomRight().x,\n bottom: b.bottomRight().y\n };\n\n if (rect1.left <= rect2.right &&\n rect2.left <= rect1.right &&\n rect1.top <= rect2.bottom &&\n rect2.top <= rect1.bottom) {\n return Rect.fromPoints(\n new Point(Math.max(rect1.left, rect2.left), Math.max(rect1.top, rect2.top)),\n new Point(Math.min(rect1.right, rect2.right), Math.min(rect1.bottom, rect2.bottom))\n );\n }\n };\n\n return Rect;\n}(HasObservers));\n\nexport default Rect;\n","import { geometry as geom } from '@progress/kendo-drawing';\n\nimport Point from './point';\n\nimport { X, Y, TOP, BOTTOM, LEFT, RIGHT, CENTER, WIDTH, HEIGHT } from '../common/constants';\nimport { Class, defined, getSpacing, inArray, isArray, rad } from '../common';\n\nvar Box = (function (Class) {\n function Box(x1, y1, x2, y2) {\n Class.call(this);\n\n this.x1 = x1 || 0;\n this.y1 = y1 || 0;\n this.x2 = x2 || 0;\n this.y2 = y2 || 0;\n }\n\n if ( Class ) Box.__proto__ = Class;\n Box.prototype = Object.create( Class && Class.prototype );\n Box.prototype.constructor = Box;\n\n Box.prototype.equals = function equals (box) {\n return this.x1 === box.x1 && this.x2 === box.x2 &&\n this.y1 === box.y1 && this.y2 === box.y2;\n };\n\n Box.prototype.width = function width () {\n return this.x2 - this.x1;\n };\n\n Box.prototype.height = function height () {\n return this.y2 - this.y1;\n };\n\n Box.prototype.translate = function translate (dx, dy) {\n this.x1 += dx;\n this.x2 += dx;\n this.y1 += dy;\n this.y2 += dy;\n\n return this;\n };\n\n Box.prototype.move = function move (x, y) {\n var height = this.height();\n var width = this.width();\n\n if (defined(x)) {\n this.x1 = x;\n this.x2 = this.x1 + width;\n }\n\n if (defined(y)) {\n this.y1 = y;\n this.y2 = this.y1 + height;\n }\n\n return this;\n };\n\n Box.prototype.wrap = function wrap (targetBox) {\n this.x1 = Math.min(this.x1, targetBox.x1);\n this.y1 = Math.min(this.y1, targetBox.y1);\n this.x2 = Math.max(this.x2, targetBox.x2);\n this.y2 = Math.max(this.y2, targetBox.y2);\n\n return this;\n };\n\n Box.prototype.wrapPoint = function wrapPoint (point) {\n var arrayPoint = isArray(point);\n var x = arrayPoint ? point[0] : point.x;\n var y = arrayPoint ? point[1] : point.y;\n this.wrap(new Box(x, y, x, y));\n\n return this;\n };\n\n Box.prototype.snapTo = function snapTo (targetBox, axis) {\n\n if (axis === X || !axis) {\n this.x1 = targetBox.x1;\n this.x2 = targetBox.x2;\n }\n\n if (axis === Y || !axis) {\n this.y1 = targetBox.y1;\n this.y2 = targetBox.y2;\n }\n\n return this;\n };\n\n Box.prototype.alignTo = function alignTo (targetBox, anchor) {\n var height = this.height();\n var width = this.width();\n var axis = anchor === TOP || anchor === BOTTOM ? Y : X;\n var offset = axis === Y ? height : width;\n\n if (anchor === CENTER) {\n var targetCenter = targetBox.center();\n var center = this.center();\n\n this.x1 += targetCenter.x - center.x;\n this.y1 += targetCenter.y - center.y;\n } else if (anchor === TOP || anchor === LEFT) {\n this[axis + 1] = targetBox[axis + 1] - offset;\n } else {\n this[axis + 1] = targetBox[axis + 2];\n }\n\n this.x2 = this.x1 + width;\n this.y2 = this.y1 + height;\n\n return this;\n };\n\n Box.prototype.shrink = function shrink (dw, dh) {\n\n this.x2 -= dw;\n this.y2 -= dh;\n\n return this;\n };\n\n Box.prototype.expand = function expand (dw, dh) {\n this.shrink(-dw, -dh);\n return this;\n };\n\n Box.prototype.pad = function pad (padding) {\n var spacing = getSpacing(padding);\n\n this.x1 -= spacing.left;\n this.x2 += spacing.right;\n this.y1 -= spacing.top;\n this.y2 += spacing.bottom;\n\n return this;\n };\n\n Box.prototype.unpad = function unpad (padding) {\n var spacing = getSpacing(padding);\n\n spacing.left = -spacing.left;\n spacing.top = -spacing.top;\n spacing.right = -spacing.right;\n spacing.bottom = -spacing.bottom;\n\n return this.pad(spacing);\n };\n\n Box.prototype.clone = function clone () {\n return new Box(this.x1, this.y1, this.x2, this.y2);\n };\n\n Box.prototype.center = function center () {\n return new Point(\n this.x1 + this.width() / 2,\n this.y1 + this.height() / 2\n );\n };\n\n Box.prototype.containsPoint = function containsPoint (point) {\n\n return point.x >= this.x1 && point.x <= this.x2 &&\n point.y >= this.y1 && point.y <= this.y2;\n };\n\n Box.prototype.points = function points () {\n return [\n new Point(this.x1, this.y1),\n new Point(this.x2, this.y1),\n new Point(this.x2, this.y2),\n new Point(this.x1, this.y2)\n ];\n };\n\n Box.prototype.getHash = function getHash () {\n return [ this.x1, this.y1, this.x2, this.y2 ].join(\",\");\n };\n\n Box.prototype.overlaps = function overlaps (box) {\n return !(box.y2 < this.y1 || this.y2 < box.y1 || box.x2 < this.x1 || this.x2 < box.x1);\n };\n\n Box.prototype.rotate = function rotate (rotation) {\n var width = this.width();\n var height = this.height();\n var ref = this.center();\n var cx = ref.x;\n var cy = ref.y;\n\n var r1 = rotatePoint(0, 0, cx, cy, rotation);\n var r2 = rotatePoint(width, 0, cx, cy, rotation);\n var r3 = rotatePoint(width, height, cx, cy, rotation);\n var r4 = rotatePoint(0, height, cx, cy, rotation);\n\n width = Math.max(r1.x, r2.x, r3.x, r4.x) - Math.min(r1.x, r2.x, r3.x, r4.x);\n height = Math.max(r1.y, r2.y, r3.y, r4.y) - Math.min(r1.y, r2.y, r3.y, r4.y);\n\n this.x2 = this.x1 + width;\n this.y2 = this.y1 + height;\n\n return this;\n };\n\n Box.prototype.toRect = function toRect () {\n return new geom.Rect([ this.x1, this.y1 ], [ this.width(), this.height() ]);\n };\n\n Box.prototype.hasSize = function hasSize () {\n return this.width() !== 0 && this.height() !== 0;\n };\n\n Box.prototype.align = function align (targetBox, axis, alignment) {\n var c1 = axis + 1;\n var c2 = axis + 2;\n var sizeFunc = axis === X ? WIDTH : HEIGHT;\n var size = this[sizeFunc]();\n\n if (inArray(alignment, [ LEFT, TOP ])) {\n this[c1] = targetBox[c1];\n this[c2] = this[c1] + size;\n } else if (inArray(alignment, [ RIGHT, BOTTOM ])) {\n this[c2] = targetBox[c2];\n this[c1] = this[c2] - size;\n } else if (alignment === CENTER) {\n this[c1] = targetBox[c1] + (targetBox[sizeFunc]() - size) / 2;\n this[c2] = this[c1] + size;\n }\n };\n\n return Box;\n}(Class));\n\nfunction rotatePoint(x, y, cx, cy, angle) {\n var theta = rad(angle);\n\n return new Point(\n cx + (x - cx) * Math.cos(theta) + (y - cy) * Math.sin(theta),\n cy - (x - cx) * Math.sin(theta) + (y - cy) * Math.cos(theta)\n );\n}\n\nexport default Box;\n","import Box from './box';\nimport Point from './point';\nimport { COORD_PRECISION, MAX_VALUE, MIN_VALUE } from '../common/constants';\nimport { Class, clockwise, rad, round } from '../common';\n\nvar Ring = (function (Class) {\n function Ring(center, innerRadius, radius, startAngle, angle) {\n Class.call(this);\n\n this.center = center;\n this.innerRadius = innerRadius;\n this.radius = radius;\n this.startAngle = startAngle;\n this.angle = angle;\n }\n\n if ( Class ) Ring.__proto__ = Class;\n Ring.prototype = Object.create( Class && Class.prototype );\n Ring.prototype.constructor = Ring;\n\n Ring.prototype.clone = function clone () {\n return new Ring(this.center, this.innerRadius, this.radius, this.startAngle, this.angle);\n };\n\n Ring.prototype.middle = function middle () {\n return this.startAngle + this.angle / 2;\n };\n\n Ring.prototype.setRadius = function setRadius (newRadius, innerRadius) {\n if (innerRadius) {\n this.innerRadius = newRadius;\n } else {\n this.radius = newRadius;\n }\n\n return this;\n };\n\n // TODO: Remove and replace with Point.onCircle\n Ring.prototype.point = function point (angle, innerRadius) {\n var radianAngle = rad(angle);\n var ax = Math.cos(radianAngle);\n var ay = Math.sin(radianAngle);\n var radius = innerRadius ? this.innerRadius : this.radius;\n var x = round(this.center.x - (ax * radius), COORD_PRECISION);\n var y = round(this.center.y - (ay * radius), COORD_PRECISION);\n\n return new Point(x, y);\n };\n\n Ring.prototype.adjacentBox = function adjacentBox (distance, width, height) {\n var sector = this.clone().expand(distance);\n var midAndle = sector.middle();\n var midPoint = sector.point(midAndle);\n var hw = width / 2;\n var hh = height / 2;\n var sa = Math.sin(rad(midAndle));\n var ca = Math.cos(rad(midAndle));\n var x = midPoint.x - hw;\n var y = midPoint.y - hh;\n\n if (Math.abs(sa) < 0.9) {\n x += hw * -ca / Math.abs(ca);\n }\n\n if (Math.abs(ca) < 0.9) {\n y += hh * -sa / Math.abs(sa);\n }\n\n return new Box(x, y, x + width, y + height);\n };\n\n Ring.prototype.containsPoint = function containsPoint (p) {\n var center = this.center;\n var innerRadius = this.innerRadius;\n var radius = this.radius;\n var startAngle = this.startAngle;\n var endAngle = this.startAngle + this.angle;\n var dx = p.x - center.x;\n var dy = p.y - center.y;\n var vector = new Point(dx, dy);\n var startPoint = this.point(startAngle);\n var startVector = new Point(startPoint.x - center.x, startPoint.y - center.y);\n var endPoint = this.point(endAngle);\n var endVector = new Point(endPoint.x - center.x, endPoint.y - center.y);\n var dist = round(dx * dx + dy * dy, COORD_PRECISION);\n\n return (startVector.equals(vector) || clockwise(startVector, vector)) &&\n !clockwise(endVector, vector) &&\n dist >= innerRadius * innerRadius && dist <= radius * radius;\n };\n\n Ring.prototype.getBBox = function getBBox () {\n var this$1 = this;\n\n var box = new Box(MAX_VALUE, MAX_VALUE, MIN_VALUE, MIN_VALUE);\n var startAngle = round(this.startAngle % 360);\n var endAngle = round((startAngle + this.angle) % 360);\n var innerRadius = this.innerRadius;\n var allAngles = [ 0, 90, 180, 270, startAngle, endAngle ].sort(numericComparer);\n var startAngleIndex = allAngles.indexOf(startAngle);\n var endAngleIndex = allAngles.indexOf(endAngle);\n var angles;\n\n if (startAngle === endAngle) {\n angles = allAngles;\n } else {\n if (startAngleIndex < endAngleIndex) {\n angles = allAngles.slice(startAngleIndex, endAngleIndex + 1);\n } else {\n angles = [].concat(\n allAngles.slice(0, endAngleIndex + 1),\n allAngles.slice(startAngleIndex, allAngles.length)\n );\n }\n }\n\n for (var i = 0; i < angles.length; i++) {\n var point = this$1.point(angles[i]);\n box.wrapPoint(point);\n box.wrapPoint(point, innerRadius);\n }\n\n if (!innerRadius) {\n box.wrapPoint(this.center);\n }\n\n return box;\n };\n\n Ring.prototype.expand = function expand (value) {\n this.radius += value;\n return this;\n };\n\n return Ring;\n}(Class));\n\nfunction numericComparer(a, b) {\n return a - b;\n}\n\nexport default Ring;","import Ring from './ring';\n\nvar Sector = (function (Ring) {\n function Sector(center, radius, startAngle, angle) {\n Ring.call(this, center, 0, radius, startAngle, angle);\n }\n\n if ( Ring ) Sector.__proto__ = Ring;\n Sector.prototype = Object.create( Ring && Ring.prototype );\n Sector.prototype.constructor = Sector;\n\n Sector.prototype.expand = function expand (value) {\n return Ring.prototype.expand.call(this, value);\n };\n\n Sector.prototype.clone = function clone () {\n return new Sector(this.center, this.radius, this.startAngle, this.angle);\n };\n\n Sector.prototype.setRadius = function setRadius (newRadius) {\n this.radius = newRadius;\n\n return this;\n };\n\n return Sector;\n}(Ring));\n\nexport default Sector;","var PRECISION = 10;\n\nexport { PRECISION };","import { PRECISION } from '../constants';\n\nimport { round } from '../../util';\n\nexport default function close(a, b, tolerance) {\n if ( tolerance === void 0 ) tolerance = PRECISION;\n\n return round(Math.abs(a - b), tolerance) === 0;\n}","import close from './close';\n\nexport default function closeOrLess(a, b, tolerance) {\n return a < b || close(a, b, tolerance);\n}","export default function ellipseExtremeAngles(center, rx, ry, matrix) {\n var extremeX = 0;\n var extremeY = 0;\n\n if (matrix) {\n extremeX = Math.atan2(matrix.c * ry, matrix.a * rx);\n if (matrix.b !== 0) {\n extremeY = Math.atan2(matrix.d * ry, matrix.b * rx);\n }\n }\n\n return {\n x: extremeX,\n y: extremeY\n };\n}","import HasObservers from '../core/has-observers';\nimport toMatrix from './to-matrix';\nimport Matrix from './matrix';\nimport Point from './point';\n\nvar Transformation = (function (HasObservers) {\n function Transformation(matrix) {\n if ( matrix === void 0 ) matrix = Matrix.unit();\n\n HasObservers.call(this);\n\n this._matrix = matrix;\n }\n\n if ( HasObservers ) Transformation.__proto__ = HasObservers;\n Transformation.prototype = Object.create( HasObservers && HasObservers.prototype );\n Transformation.prototype.constructor = Transformation;\n\n Transformation.prototype.clone = function clone () {\n return new Transformation(\n this._matrix.clone()\n );\n };\n\n Transformation.prototype.equals = function equals (other) {\n return other &&\n other._matrix.equals(this._matrix);\n };\n\n Transformation.prototype.translate = function translate (x, y) {\n this._matrix = this._matrix.multiplyCopy(Matrix.translate(x, y));\n\n this._optionsChange();\n return this;\n };\n\n Transformation.prototype.scale = function scale (scaleX, scaleY, origin) {\n if ( scaleY === void 0 ) scaleY = scaleX;\n if ( origin === void 0 ) origin = null;\n\n var originPoint = origin;\n\n if (originPoint) {\n originPoint = Point.create(originPoint);\n this._matrix = this._matrix.multiplyCopy(Matrix.translate(originPoint.x, originPoint.y));\n }\n\n this._matrix = this._matrix.multiplyCopy(Matrix.scale(scaleX, scaleY));\n\n if (originPoint) {\n this._matrix = this._matrix.multiplyCopy(Matrix.translate(-originPoint.x, -originPoint.y));\n }\n\n this._optionsChange();\n return this;\n };\n\n Transformation.prototype.rotate = function rotate (angle, origin) {\n var originPoint = Point.create(origin) || Point.ZERO;\n\n this._matrix = this._matrix.multiplyCopy(Matrix.rotate(angle, originPoint.x, originPoint.y));\n\n this._optionsChange();\n return this;\n };\n\n Transformation.prototype.multiply = function multiply (transformation) {\n var matrix = toMatrix(transformation);\n\n this._matrix = this._matrix.multiplyCopy(matrix);\n\n this._optionsChange();\n return this;\n };\n\n Transformation.prototype.matrix = function matrix (value) {\n if (value) {\n this._matrix = value;\n this._optionsChange();\n return this;\n }\n\n return this._matrix;\n };\n\n Transformation.prototype._optionsChange = function _optionsChange () {\n this.optionsChange({\n field: \"transform\",\n value: this\n });\n };\n\n return Transformation;\n}(HasObservers));\n\nexport default Transformation;\n","import Transformation from './transformation';\n\nexport default function transform(matrix) {\n if (matrix === null) {\n return null;\n }\n\n if (matrix instanceof Transformation) {\n return matrix;\n }\n\n return new Transformation(matrix);\n}","import HasObservers from '../core/has-observers';\nimport { deg, rad, round } from '../util';\nimport withAccessors from '../mixins/with-accessors';\n\nimport closeOrLess from './math/close-or-less';\nimport lineIntersection from './math/line-intersection';\nimport ellipseExtremeAngles from './math/ellipse-extreme-angles';\n\nimport { PRECISION } from './constants';\nimport Point from './point';\nimport Rect from './rect';\nimport transform from './transform';\n\n\nvar MAX_INTERVAL = 45;\nvar pow = Math.pow;\nvar accessors = [ \"radiusX\", \"radiusY\", \"startAngle\", \"endAngle\", \"anticlockwise\" ];\n\nvar Arc = (function (superclass) {\n function Arc(center, options) {\n if ( center === void 0 ) center = new Point();\n if ( options === void 0 ) options = {};\n\n superclass.call(this);\n\n this.setCenter(center);\n\n this.radiusX = options.radiusX;\n this.radiusY = options.radiusY || options.radiusX;\n this.startAngle = options.startAngle;\n this.endAngle = options.endAngle;\n this.anticlockwise = options.anticlockwise || false;\n this.xRotation = options.xRotation;\n }\n\n if ( superclass ) Arc.__proto__ = superclass;\n Arc.prototype = Object.create( superclass && superclass.prototype );\n Arc.prototype.constructor = Arc;\n\n Arc.prototype.clone = function clone () {\n return new Arc(this.center, {\n radiusX: this.radiusX,\n radiusY: this.radiusY,\n startAngle: this.startAngle,\n endAngle: this.endAngle,\n anticlockwise: this.anticlockwise\n });\n };\n\n Arc.prototype.setCenter = function setCenter (value) {\n this._observerField(\"center\", Point.create(value));\n this.geometryChange();\n return this;\n };\n\n Arc.prototype.getCenter = function getCenter () {\n return this.center;\n };\n\n Arc.prototype.pointAt = function pointAt (angle) {\n var center = this.center;\n var radian = rad(angle);\n\n return new Point(\n center.x + this.radiusX * Math.cos(radian),\n center.y + this.radiusY * Math.sin(radian)\n );\n };\n\n Arc.prototype.curvePoints = function curvePoints () {\n var this$1 = this;\n\n var startAngle = this.startAngle;\n var dir = this.anticlockwise ? -1 : 1;\n var curvePoints = [ this.pointAt(startAngle) ];\n var interval = this._arcInterval();\n var intervalAngle = interval.endAngle - interval.startAngle;\n var subIntervalsCount = Math.ceil(intervalAngle / MAX_INTERVAL);\n var subIntervalAngle = intervalAngle / subIntervalsCount;\n var currentAngle = startAngle;\n var transformation;\n if (this.xRotation) {\n transformation = transform().rotate(this.xRotation, this.center);\n }\n\n for (var i = 1; i <= subIntervalsCount; i++) {\n var nextAngle = currentAngle + dir * subIntervalAngle;\n var points = this$1._intervalCurvePoints(currentAngle, nextAngle, transformation);\n\n curvePoints.push(points.cp1, points.cp2, points.p2);\n currentAngle = nextAngle;\n }\n\n return curvePoints;\n };\n\n Arc.prototype.bbox = function bbox (matrix) {\n var this$1 = this;\n\n var interval = this._arcInterval();\n var startAngle = interval.startAngle;\n var endAngle = interval.endAngle;\n var extremeAngles = ellipseExtremeAngles(this.center, this.radiusX, this.radiusY, matrix);\n var extremeX = deg(extremeAngles.x);\n var extremeY = deg(extremeAngles.y);\n var endPoint = this.pointAt(endAngle).transformCopy(matrix);\n var currentAngleX = bboxStartAngle(extremeX, startAngle);\n var currentAngleY = bboxStartAngle(extremeY, startAngle);\n var currentPoint = this.pointAt(startAngle).transformCopy(matrix);\n var minPoint = Point.min(currentPoint, endPoint);\n var maxPoint = Point.max(currentPoint, endPoint);\n\n while (currentAngleX < endAngle || currentAngleY < endAngle) {\n var currentPointX = (void 0);\n if (currentAngleX < endAngle) {\n currentPointX = this$1.pointAt(currentAngleX).transformCopy(matrix);\n currentAngleX += 90;\n }\n\n var currentPointY = (void 0);\n if (currentAngleY < endAngle) {\n currentPointY = this$1.pointAt(currentAngleY).transformCopy(matrix);\n currentAngleY += 90;\n }\n\n currentPoint = new Point(currentPointX.x, currentPointY.y);\n minPoint = Point.min(minPoint, currentPoint);\n maxPoint = Point.max(maxPoint, currentPoint);\n }\n\n return Rect.fromPoints(minPoint, maxPoint);\n };\n\n Arc.prototype._arcInterval = function _arcInterval () {\n var ref = this;\n var startAngle = ref.startAngle;\n var endAngle = ref.endAngle;\n var anticlockwise = ref.anticlockwise;\n\n if (anticlockwise) {\n var oldStart = startAngle;\n startAngle = endAngle;\n endAngle = oldStart;\n }\n\n if (startAngle > endAngle || (anticlockwise && startAngle === endAngle)) {\n endAngle += 360;\n }\n\n return {\n startAngle: startAngle,\n endAngle: endAngle\n };\n };\n\n Arc.prototype._intervalCurvePoints = function _intervalCurvePoints (startAngle, endAngle, transformation) {\n var p1 = this.pointAt(startAngle);\n var p2 = this.pointAt(endAngle);\n var p1Derivative = this._derivativeAt(startAngle);\n var p2Derivative = this._derivativeAt(endAngle);\n var t = (rad(endAngle) - rad(startAngle)) / 3;\n var cp1 = new Point(p1.x + t * p1Derivative.x, p1.y + t * p1Derivative.y);\n var cp2 = new Point(p2.x - t * p2Derivative.x, p2.y - t * p2Derivative.y);\n if (transformation) {\n p1.transform(transformation);\n p2.transform(transformation);\n cp1.transform(transformation);\n cp2.transform(transformation);\n }\n\n return {\n p1: p1,\n cp1: cp1,\n cp2: cp2,\n p2: p2\n };\n };\n\n Arc.prototype._derivativeAt = function _derivativeAt (angle) {\n var radian = rad(angle);\n\n return new Point(-this.radiusX * Math.sin(radian), this.radiusY * Math.cos(radian));\n };\n\n Arc.prototype.containsPoint = function containsPoint (point) {\n var interval = this._arcInterval();\n var intervalAngle = interval.endAngle - interval.startAngle;\n var ref = this;\n var center = ref.center;\n var radiusX = ref.radiusX;\n var radiusY = ref.radiusY;\n var distance = center.distanceTo(point);\n var angleRad = Math.atan2(point.y - center.y, point.x - center.x);\n var pointRadius = (radiusX * radiusY) /\n Math.sqrt(pow(radiusX, 2) * pow(Math.sin(angleRad), 2) + pow(radiusY, 2) * pow(Math.cos(angleRad), 2));\n var startPoint = this.pointAt(this.startAngle).round(PRECISION);\n var endPoint = this.pointAt(this.endAngle).round(PRECISION);\n var intersection = lineIntersection(center, point.round(PRECISION), startPoint, endPoint);\n var containsPoint;\n\n if (intervalAngle < 180) {\n containsPoint = intersection && closeOrLess(center.distanceTo(intersection), distance) && closeOrLess(distance, pointRadius);\n } else {\n var angle = calculateAngle(center.x, center.y, radiusX, radiusY, point.x, point.y);\n if (angle !== 360) {\n angle = (360 + angle) % 360;\n }\n\n var inAngleRange = interval.startAngle <= angle && angle <= interval.endAngle;\n containsPoint = (inAngleRange && closeOrLess(distance, pointRadius)) || (!inAngleRange && (!intersection || intersection.equals(point)));\n }\n return containsPoint;\n };\n\n Arc.prototype._isOnPath = function _isOnPath (point, width) {\n var interval = this._arcInterval();\n var center = this.center;\n var angle = calculateAngle(center.x, center.y, this.radiusX, this.radiusY, point.x, point.y);\n if (angle !== 360) {\n angle = (360 + angle) % 360;\n }\n\n var inAngleRange = interval.startAngle <= angle && angle <= interval.endAngle;\n\n return inAngleRange && this.pointAt(angle).distanceTo(point) <= width;\n };\n\n Arc.fromPoints = function fromPoints (start, end, rx, ry, largeArc, swipe, rotation) {// eslint-disable-line max-params\n var arcParameters = normalizeArcParameters({\n x1: start.x,\n y1: start.y,\n x2: end.x,\n y2: end.y,\n rx: rx,\n ry: ry,\n largeArc: largeArc,\n swipe: swipe,\n rotation: rotation\n });\n\n return new Arc(arcParameters.center, {\n startAngle: arcParameters.startAngle,\n endAngle: arcParameters.endAngle,\n radiusX: arcParameters.radiusX,\n radiusY: arcParameters.radiusY,\n xRotation: arcParameters.xRotation,\n anticlockwise: swipe === 0\n });\n };\n\n return Arc;\n}(withAccessors(HasObservers, accessors)));\n\nfunction calculateAngle(cx, cy, rx, ry, x, y) {\n var cos = round((x - cx) / rx, 3);\n var sin = round((y - cy) / ry, 3);\n\n return round(deg(Math.atan2(sin, cos)));\n}\n\nfunction normalizeArcParameters(parameters) {\n var x1 = parameters.x1;\n var y1 = parameters.y1;\n var x2 = parameters.x2;\n var y2 = parameters.y2;\n var rx = parameters.rx;\n var ry = parameters.ry;\n var largeArc = parameters.largeArc;\n var swipe = parameters.swipe;\n var rotation = parameters.rotation; if ( rotation === void 0 ) rotation = 0;\n\n var radians = rad(rotation);\n var cosine = Math.cos(radians);\n var sine = Math.sin(radians);\n\n var xT = cosine * (x1 - x2) / 2 + sine * (y1 - y2) / 2;\n var yT = -sine * (x1 - x2) / 2 + cosine * (y1 - y2) / 2;\n\n var sign = largeArc !== swipe ? 1 : -1;\n\n var xt2 = Math.pow(xT, 2);\n var yt2 = Math.pow(yT, 2);\n var rx2 = Math.pow(rx, 2);\n var ry2 = Math.pow(ry, 2);\n\n var delta = xt2 / rx2 + yt2 / ry2;\n\n if (delta > 1) {\n delta = Math.sqrt(xt2 / rx2 + yt2 / ry2);\n rx = delta * rx;\n rx2 = Math.pow(rx, 2);\n\n ry = delta * ry;\n ry2 = Math.pow(ry, 2);\n }\n\n var constT = sign * Math.sqrt((rx2 * ry2 - rx2 * yt2 - ry2 * xt2) / (rx2 * yt2 + ry2 * xt2));\n // due to rounding errors the value could become NaN even after radii correction\n if (isNaN(constT)) {\n constT = 0;\n }\n\n var cxT = constT * (rx * yT) / ry;\n var cyT = - constT * (ry * xT) / rx;\n\n var cx = cosine * cxT - sine * cyT + (x1 + x2) / 2;\n var cy = sine * cxT + cosine * cyT + (y1 + y2) / 2;\n\n\n var uX = (xT - cxT) / rx;\n var uY = (yT - cyT) / ry;\n var vX = -(xT + cxT) / rx;\n var vY = -(yT + cyT) / ry;\n\n var startAngle = (uY >= 0 ? 1 : -1) * deg(Math.acos(uX / Math.sqrt(uX * uX + uY * uY)));\n\n var angleCosine = round((uX * vX + uY * vY) / (Math.sqrt(uX * uX + uY * uY) * Math.sqrt(vX * vX + vY * vY)), 10);\n var angle = (uX * vY - uY * vX >= 0 ? 1 : -1) * deg(Math.acos(angleCosine));\n\n if (!swipe && angle > 0) {\n angle -= 360;\n }\n\n if (swipe && angle < 0) {\n angle += 360;\n }\n var endAngle = startAngle + angle;\n var signEndAngle = endAngle >= 0 ? 1 : -1;\n endAngle = (Math.abs(endAngle) % 360) * signEndAngle;\n\n return {\n center: new Point(cx, cy),\n startAngle: startAngle,\n endAngle: endAngle,\n radiusX: rx,\n radiusY: ry,\n xRotation: rotation\n };\n}\n\nfunction bboxStartAngle(angle, start) {\n var startAngle = angle;\n\n while (startAngle < start) {\n startAngle += 90;\n }\n\n return startAngle;\n}\n\nexport default Arc;\n","import Point from '../point';\n\nexport default function lineIntersection(p0, p1, p2, p3) {\n var s1x = p1.x - p0.x;\n var s2x = p3.x - p2.x;\n var s1y = p1.y - p0.y;\n var s2y = p3.y - p2.y;\n var nx = p0.x - p2.x;\n var ny = p0.y - p2.y;\n var d = s1x * s2y - s2x * s1y;\n var s = (s1x * ny - s1y * nx) / d;\n var t = (s2x * ny - s2y * nx) / d;\n\n if (s >= 0 && s <= 1 && t >= 0 && t <= 1) {\n return new Point(p0.x + t * s1x, p0.y + t * s1y);\n }\n}","import HasObservers from '../core/has-observers';\n\nvar push = [].push;\nvar pop = [].pop;\nvar splice = [].splice;\nvar shift = [].shift;\nvar slice = [].slice;\nvar unshift = [].unshift;\n\nvar ElementsArray = (function (HasObservers) {\n function ElementsArray(array) {\n if ( array === void 0 ) array = [];\n\n HasObservers.call(this);\n\n this.length = 0;\n this._splice(0, array.length, array);\n }\n\n if ( HasObservers ) ElementsArray.__proto__ = HasObservers;\n ElementsArray.prototype = Object.create( HasObservers && HasObservers.prototype );\n ElementsArray.prototype.constructor = ElementsArray;\n\n ElementsArray.prototype.elements = function elements (value) {\n if (value) {\n this._splice(0, this.length, value);\n\n this._change();\n return this;\n }\n\n return this.slice(0);\n };\n\n ElementsArray.prototype.push = function push$1 () {\n var elements = arguments;\n var result = push.apply(this, elements);\n\n this._add(elements);\n\n return result;\n };\n\n ElementsArray.prototype.slice = function slice$1 () {\n return slice.call(this);\n };\n\n ElementsArray.prototype.pop = function pop$1 () {\n var length = this.length;\n var result = pop.apply(this);\n\n if (length) {\n this._remove([ result ]);\n }\n\n return result;\n };\n\n ElementsArray.prototype.splice = function splice (index, howMany) {\n var elements = slice.call(arguments, 2);\n var result = this._splice(index, howMany, elements);\n\n this._change();\n\n return result;\n };\n\n ElementsArray.prototype.shift = function shift$1 () {\n var length = this.length;\n var result = shift.apply(this);\n\n if (length) {\n this._remove([ result ]);\n }\n\n return result;\n };\n\n ElementsArray.prototype.unshift = function unshift$1 () {\n var elements = arguments;\n var result = unshift.apply(this, elements);\n\n this._add(elements);\n\n return result;\n };\n\n ElementsArray.prototype.indexOf = function indexOf (element) {\n var this$1 = this;\n\n var length = this.length;\n\n for (var idx = 0; idx < length; idx++) {\n if (this$1[idx] === element) {\n return idx;\n }\n }\n return -1;\n };\n\n ElementsArray.prototype._splice = function _splice (index, howMany, elements) {\n var result = splice.apply(this, [ index, howMany ].concat(elements));\n\n this._clearObserver(result);\n this._setObserver(elements);\n\n return result;\n };\n\n ElementsArray.prototype._add = function _add (elements) {\n this._setObserver(elements);\n this._change();\n };\n\n ElementsArray.prototype._remove = function _remove (elements) {\n this._clearObserver(elements);\n this._change();\n };\n\n ElementsArray.prototype._setObserver = function _setObserver (elements) {\n var this$1 = this;\n\n for (var idx = 0; idx < elements.length; idx++) {\n elements[idx].addObserver(this$1);\n }\n };\n\n ElementsArray.prototype._clearObserver = function _clearObserver (elements) {\n var this$1 = this;\n\n for (var idx = 0; idx < elements.length; idx++) {\n elements[idx].removeObserver(this$1);\n }\n };\n\n ElementsArray.prototype._change = function _change () {};\n\n return ElementsArray;\n}(HasObservers));\n\nexport default ElementsArray;\n","import ElementsArray from './elements-array';\n\nvar GeometryElementsArray = (function (ElementsArray) {\n function GeometryElementsArray () {\n ElementsArray.apply(this, arguments);\n }\n\n if ( ElementsArray ) GeometryElementsArray.__proto__ = ElementsArray;\n GeometryElementsArray.prototype = Object.create( ElementsArray && ElementsArray.prototype );\n GeometryElementsArray.prototype.constructor = GeometryElementsArray;\n\n GeometryElementsArray.prototype._change = function _change () {\n this.geometryChange();\n };\n\n return GeometryElementsArray;\n}(ElementsArray));\n\nexport default GeometryElementsArray;","import { Class } from '../common';\nimport HasObservers from './has-observers';\nimport { defined } from '../util';\n\n\nvar toString = {}.toString;\n\nvar OptionsStore = (function (HasObservers) {\n function OptionsStore(options, prefix) {\n var this$1 = this;\n if ( prefix === void 0 ) prefix = \"\";\n\n HasObservers.call(this);\n\n this.prefix = prefix;\n\n for (var field in options) {\n var member = options[field];\n member = this$1._wrap(member, field);\n this$1[field] = member;\n }\n }\n\n if ( HasObservers ) OptionsStore.__proto__ = HasObservers;\n OptionsStore.prototype = Object.create( HasObservers && HasObservers.prototype );\n OptionsStore.prototype.constructor = OptionsStore;\n\n OptionsStore.prototype.get = function get (field) {\n var parts = field.split(\".\");\n var result = this;\n\n while (parts.length && result) {\n var part = parts.shift();\n result = result[part];\n }\n\n return result;\n };\n\n OptionsStore.prototype.set = function set (field, value) {\n var current = this.get(field);\n\n if (current !== value) {\n this._set(field, this._wrap(value, field));\n this.optionsChange({\n field: this.prefix + field,\n value: value\n });\n }\n };\n\n OptionsStore.prototype._set = function _set (field, value) {\n var this$1 = this;\n\n var composite = field.indexOf(\".\") >= 0;\n var parentObj = this;\n var fieldName = field;\n\n if (composite) {\n var parts = fieldName.split(\".\");\n var prefix = this.prefix;\n\n while (parts.length > 1) {\n fieldName = parts.shift();\n prefix += fieldName + \".\";\n\n var obj = parentObj[fieldName];\n\n if (!obj) {\n obj = new OptionsStore({}, prefix);\n obj.addObserver(this$1);\n parentObj[fieldName] = obj;\n }\n parentObj = obj;\n }\n fieldName = parts[0];\n }\n\n parentObj._clear(fieldName);\n parentObj[fieldName] = value;\n };\n\n OptionsStore.prototype._clear = function _clear (field) {\n var current = this[field];\n if (current && current.removeObserver) {\n current.removeObserver(this);\n }\n };\n\n OptionsStore.prototype._wrap = function _wrap (object, field) {\n var type = toString.call(object);\n var wrapped = object;\n\n if (wrapped !== null && defined(wrapped) && type === \"[object Object]\") {\n if (!(object instanceof OptionsStore) && !(object instanceof Class)) {\n wrapped = new OptionsStore(wrapped, this.prefix + field + \".\");\n }\n\n wrapped.addObserver(this);\n }\n\n return wrapped;\n };\n\n return OptionsStore;\n}(HasObservers));\n\nexport default OptionsStore;\n","var DASH_ARRAYS = {\n dot: [ 1.5, 3.5 ],\n dash: [ 4, 3.5 ],\n longdash: [ 8, 3.5 ],\n dashdot: [ 3.5, 3.5, 1.5, 3.5 ],\n longdashdot: [ 8, 3.5, 1.5, 3.5 ],\n longdashdotdot: [ 8, 3.5, 1.5, 3.5, 1.5, 3.5 ]\n};\n\nvar SOLID = \"solid\";\nvar BUTT = \"butt\";\nvar PATTERN = \"Pattern\";\n\nexport { DASH_ARRAYS, SOLID, BUTT, PATTERN };\n","import OptionsStore from '../core/options-store';\nimport Rect from '../geometry/rect';\nimport Matrix from '../geometry/matrix';\nimport createTransform from '../geometry/transform';\nimport toMatrix from '../geometry/to-matrix';\nimport HasObservers from '../core/has-observers';\nimport { defined, definitionId, isTransparent, valueOrDefault } from '../util';\nimport { PATTERN } from '../core/constants';\n\nvar Element = (function (HasObservers) {\n function Element(options) {\n HasObservers.call(this);\n\n this._initOptions(options);\n }\n\n if ( HasObservers ) Element.__proto__ = HasObservers;\n Element.prototype = Object.create( HasObservers && HasObservers.prototype );\n Element.prototype.constructor = Element;\n\n var prototypeAccessors = { nodeType: { configurable: true } };\n\n prototypeAccessors.nodeType.get = function () {\n return \"Rect\";\n };\n\n Element.prototype._initOptions = function _initOptions (options) {\n if ( options === void 0 ) options = {};\n\n var clip = options.clip;\n var transform = options.transform;\n\n if (transform) {\n options.transform = createTransform(transform);\n }\n\n if (clip && !clip.id) {\n clip.id = definitionId();\n }\n\n this.options = new OptionsStore(options);\n this.options.addObserver(this);\n };\n\n Element.prototype.transform = function transform (value) {\n if (defined(value)) {\n this.options.set(\"transform\", createTransform(value));\n } else {\n return this.options.get(\"transform\");\n }\n };\n\n Element.prototype.parentTransform = function parentTransform () {\n var element = this;\n var parentMatrix;\n\n while (element.parent) {\n element = element.parent;\n var transformation = element.transform();\n if (transformation) {\n parentMatrix = transformation.matrix().multiplyCopy(parentMatrix || Matrix.unit());\n }\n }\n\n if (parentMatrix) {\n return createTransform(parentMatrix);\n }\n };\n\n Element.prototype.currentTransform = function currentTransform (parentTransform) {\n if ( parentTransform === void 0 ) parentTransform = this.parentTransform();\n\n var elementTransform = this.transform();\n var elementMatrix = toMatrix(elementTransform);\n\n var parentMatrix = toMatrix(parentTransform);\n var combinedMatrix;\n\n if (elementMatrix && parentMatrix) {\n combinedMatrix = parentMatrix.multiplyCopy(elementMatrix);\n } else {\n combinedMatrix = elementMatrix || parentMatrix;\n }\n\n if (combinedMatrix) {\n return createTransform(combinedMatrix);\n }\n };\n\n Element.prototype.visible = function visible (value) {\n if (defined(value)) {\n this.options.set(\"visible\", value);\n return this;\n }\n\n return this.options.get(\"visible\") !== false;\n };\n\n Element.prototype.clip = function clip (value) {\n var options = this.options;\n if (defined(value)) {\n if (value && !value.id) {\n value.id = definitionId();\n }\n options.set(\"clip\", value);\n return this;\n }\n\n return options.get(\"clip\");\n };\n\n Element.prototype.opacity = function opacity (value) {\n if (defined(value)) {\n this.options.set(\"opacity\", value);\n return this;\n }\n\n return valueOrDefault(this.options.get(\"opacity\"), 1);\n };\n\n Element.prototype.className = function className (value) {\n if (defined(value)) {\n this.options.set(\"className\", value);\n return this;\n }\n\n return this.options.get(\"className\");\n };\n\n Element.prototype.clippedBBox = function clippedBBox (transformation) {\n var bbox = this._clippedBBox(transformation);\n if (bbox) {\n var clip = this.clip();\n return clip ? Rect.intersect(bbox, clip.bbox(transformation)) : bbox;\n }\n };\n\n Element.prototype.containsPoint = function containsPoint (point, parentTransform) {\n if (this.visible()) {\n var transform = this.currentTransform(parentTransform);\n var transformedPoint = point;\n if (transform) {\n transformedPoint = point.transformCopy(transform.matrix().invert());\n }\n return (this._hasFill() && this._containsPoint(transformedPoint)) || (this._isOnPath && this._hasStroke() && this._isOnPath(transformedPoint));\n }\n return false;\n };\n\n Element.prototype._hasFill = function _hasFill () {\n var fill = this.options.fill;\n return fill && (fill.nodeType === PATTERN || !isTransparent(fill.color));\n };\n\n Element.prototype._hasStroke = function _hasStroke () {\n var stroke = this.options.stroke;\n return stroke && stroke.width > 0 && !isTransparent(stroke.color);\n };\n\n Element.prototype._clippedBBox = function _clippedBBox (transformation) {\n return this.bbox(transformation);\n };\n\n Object.defineProperties( Element.prototype, prototypeAccessors );\n\n return Element;\n}(HasObservers));\n\nexport default Element;\n","import { deg } from '../../util';\nimport transform from '../transform';\n\nexport default function isOutOfEndPoint(endPoint, controlPoint, point) {\n var angle = deg(Math.atan2(controlPoint.y - endPoint.y, controlPoint.x - endPoint.x));\n var rotatedPoint = point.transformCopy(transform().rotate(-angle, endPoint));\n\n return rotatedPoint.x < endPoint.x;\n}","export default function calculateCurveAt(t, field, points) {\n var t1 = 1 - t;\n return Math.pow(t1, 3) * points[0][field] +\n 3 * Math.pow(t1, 2) * t * points[1][field] +\n 3 * Math.pow(t, 2) * t1 * points[2][field] +\n Math.pow(t, 3) * points[3][field];\n}","export default function toCubicPolynomial(points, field) {\n return [ -points[0][field] + 3 * points[1][field] - 3 * points[2][field] + points[3][field],\n 3 * (points[0][field] - 2 * points[1][field] + points[2][field]),\n 3 * (-points[0][field] + points[1][field]),\n points[0][field]\n ];\n}","import { PRECISION } from '../constants';\nimport { Class } from '../../common';\nimport { round } from '../../util';\n\nvar ComplexNumber = (function (Class) {\n function ComplexNumber(real, img) {\n if ( real === void 0 ) real = 0;\n if ( img === void 0 ) img = 0;\n\n Class.call(this);\n\n this.real = real;\n this.img = img;\n }\n\n if ( Class ) ComplexNumber.__proto__ = Class;\n ComplexNumber.prototype = Object.create( Class && Class.prototype );\n ComplexNumber.prototype.constructor = ComplexNumber;\n\n ComplexNumber.prototype.add = function add (cNumber) {\n return new ComplexNumber(round(this.real + cNumber.real, PRECISION), round(this.img + cNumber.img, PRECISION));\n };\n\n ComplexNumber.prototype.addConstant = function addConstant (value) {\n return new ComplexNumber(this.real + value, this.img);\n };\n\n ComplexNumber.prototype.negate = function negate () {\n return new ComplexNumber(-this.real, -this.img);\n };\n\n ComplexNumber.prototype.multiply = function multiply (cNumber) {\n return new ComplexNumber(this.real * cNumber.real - this.img * cNumber.img,\n this.real * cNumber.img + this.img * cNumber.real);\n };\n\n ComplexNumber.prototype.multiplyConstant = function multiplyConstant (value) {\n return new ComplexNumber(this.real * value, this.img * value);\n };\n\n ComplexNumber.prototype.nthRoot = function nthRoot (n) {\n var rad = Math.atan2(this.img, this.real);\n var r = Math.sqrt(Math.pow(this.img, 2) + Math.pow(this.real, 2));\n var nthR = Math.pow(r, 1 / n);\n\n return new ComplexNumber(nthR * Math.cos(rad / n), nthR * Math.sin(rad / n)); //Moivre's formula\n };\n\n ComplexNumber.prototype.equals = function equals (cNumber) {\n return this.real === cNumber.real && this.img === cNumber.img;\n };\n\n ComplexNumber.prototype.isReal = function isReal () {\n return this.img === 0;\n };\n\n return ComplexNumber;\n}(Class));\n\nexport default ComplexNumber;","import ComplexNumber from './complex-number';\nimport { PRECISION } from '../constants';\nimport { round } from '../../util';\n\nfunction numberSign(x) {\n return x < 0 ? -1 : 1;\n}\n\nfunction solveQuadraticEquation(a, b, c) {\n var squareRoot = Math.sqrt(Math.pow(b, 2) - 4 * a * c);\n return [\n (-b + squareRoot) / (2 * a),\n (-b - squareRoot) / (2 * a)\n ];\n}\n\n//Cardano's formula\nexport default function solveCubicEquation(a, b, c, d) {\n if (a === 0) {\n return solveQuadraticEquation(b, c, d);\n }\n\n var p = (3 * a * c - Math.pow(b, 2)) / (3 * Math.pow(a, 2));\n var q = (2 * Math.pow(b, 3) - 9 * a * b * c + 27 * Math.pow(a, 2) * d) / (27 * Math.pow(a, 3));\n var Q = Math.pow(p / 3, 3) + Math.pow(q / 2, 2);\n var i = new ComplexNumber(0,1);\n var b3a = -b / (3 * a);\n var x1, x2, y1, y2, y3, z1, z2;\n\n if (Q < 0) {\n x1 = new ComplexNumber(-q / 2, Math.sqrt(-Q)).nthRoot(3);\n x2 = new ComplexNumber(-q / 2, - Math.sqrt(-Q)).nthRoot(3);\n } else {\n x1 = -q / 2 + Math.sqrt(Q);\n x1 = new ComplexNumber(numberSign(x1) * Math.pow(Math.abs(x1), 1 / 3));\n x2 = -q / 2 - Math.sqrt(Q);\n x2 = new ComplexNumber(numberSign(x2) * Math.pow(Math.abs(x2), 1 / 3));\n }\n\n y1 = x1.add(x2);\n\n z1 = x1.add(x2).multiplyConstant(-1 / 2);\n z2 = x1.add(x2.negate()).multiplyConstant(Math.sqrt(3) / 2);\n\n y2 = z1.add(i.multiply(z2));\n y3 = z1.add(i.negate().multiply(z2));\n\n var result = [];\n\n if (y1.isReal()) {\n result.push(round(y1.real + b3a, PRECISION));\n }\n if (y2.isReal()) {\n result.push(round(y2.real + b3a, PRECISION));\n }\n if (y3.isReal()) {\n result.push(round(y3.real + b3a, PRECISION));\n }\n\n return result;\n}","import toCubicPolynomial from './to-cubic-polynomial';\nimport solveCubicEquation from './solve-cubic-equation';\nimport calculateCurveAt from './calculate-curve-at';\n\nexport default function hasRootsInRange(points, point, field, rootField, range) {\n var polynomial = toCubicPolynomial(points, rootField);\n var roots = solveCubicEquation(polynomial[0], polynomial[1], polynomial[2], polynomial[3] - point[rootField]);\n var intersection;\n\n for (var idx = 0; idx < roots.length; idx++) {\n if (0 <= roots[idx] && roots[idx] <= 1) {\n intersection = calculateCurveAt(roots[idx], field, points);\n if (Math.abs(intersection - point[field]) <= range) {\n return true;\n }\n }\n }\n}","export default function lineIntersectionsCount(a, b, point) {\n var intersects;\n if (a.x !== b.x) {\n var minX = Math.min(a.x, b.x);\n var maxX = Math.max(a.x, b.x);\n var minY = Math.min(a.y, b.y);\n var maxY = Math.max(a.y, b.y);\n var inRange = minX <= point.x && point.x < maxX;\n\n if (minY === maxY) {\n intersects = point.y <= minY && inRange;\n } else {\n intersects = inRange && (((maxY - minY) * ((a.x - b.x) * (a.y - b.y) > 0 ? point.x - minX : maxX - point.x)) / (maxX - minX) + minY - point.y) >= 0;\n }\n }\n\n return intersects ? 1 : 0;\n}","import { defined } from '../util';\nimport Point from '../geometry/point';\n\nfunction pointAccessor(name) {\n var fieldName = \"_\" + name;\n return function(value) {\n if (defined(value)) {\n this._observerField(fieldName, Point.create(value));\n this.geometryChange();\n return this;\n }\n\n return this[fieldName];\n };\n}\n\nfunction definePointAccessors(fn, names) {\n for (var i = 0; i < names.length; i++) {\n fn[names[i]] = pointAccessor(names[i]);\n }\n}\n\nvar withPoints = function (TBase, names) {\n var result = (function (TBase) {\n function result () {\n TBase.apply(this, arguments);\n }if ( TBase ) result.__proto__ = TBase;\n result.prototype = Object.create( TBase && TBase.prototype );\n result.prototype.constructor = result;\n\n \n\n return result;\n }(TBase));\n definePointAccessors(result.prototype, names);\n\n return result;\n};\n\nexport default withPoints;\n","import HasObservers from '../core/has-observers';\nimport Rect from './rect';\nimport Point from './point';\nimport transform from './transform';\nimport { deg, MIN_NUM, MAX_NUM } from '../util';\nimport isOutOfEndPoint from './math/is-out-of-end-point';\nimport calculateCurveAt from './math/calculate-curve-at';\nimport hasRootsInRange from './math/has-roots-in-range';\nimport curveIntersectionsCount from './math/curve-intersections-count';\nimport lineIntersectionsCount from './math/line-intersections-count';\nimport withPoints from '../mixins/with-points';\n\n\nvar points = [ \"anchor\", \"controlIn\", \"controlOut\" ];\n\nvar Segment = (function (superclass) {\n function Segment(anchor, controlIn, controlOut) {\n superclass.call(this);\n\n this.anchor(anchor || new Point());\n this.controlIn(controlIn);\n this.controlOut(controlOut);\n }\n\n if ( superclass ) Segment.__proto__ = superclass;\n Segment.prototype = Object.create( superclass && superclass.prototype );\n Segment.prototype.constructor = Segment;\n\n Segment.prototype.bboxTo = function bboxTo (toSegment, matrix) {\n var segmentAnchor = this.anchor().transformCopy(matrix);\n var toSegmentAnchor = toSegment.anchor().transformCopy(matrix);\n var rect;\n\n if (this.controlOut() && toSegment.controlIn()) {\n rect = this._curveBoundingBox(\n segmentAnchor, this.controlOut().transformCopy(matrix),\n toSegment.controlIn().transformCopy(matrix), toSegmentAnchor\n );\n } else {\n rect = this._lineBoundingBox(segmentAnchor, toSegmentAnchor);\n }\n\n return rect;\n };\n\n Segment.prototype._lineBoundingBox = function _lineBoundingBox (p1, p2) {\n return Rect.fromPoints(p1, p2);\n };\n\n Segment.prototype._curveBoundingBox = function _curveBoundingBox (p1, cp1, cp2, p2) {\n var points = [ p1, cp1, cp2, p2 ];\n var extremesX = this._curveExtremesFor(points, \"x\");\n var extremesY = this._curveExtremesFor(points, \"y\");\n var xLimits = arrayLimits([ extremesX.min, extremesX.max, p1.x, p2.x ]);\n var yLimits = arrayLimits([ extremesY.min, extremesY.max, p1.y, p2.y ]);\n\n return Rect.fromPoints(new Point(xLimits.min, yLimits.min), new Point(xLimits.max, yLimits.max));\n };\n\n Segment.prototype._curveExtremesFor = function _curveExtremesFor (points, field) {\n var extremes = this._curveExtremes(\n points[0][field], points[1][field],\n points[2][field], points[3][field]\n );\n\n return {\n min: calculateCurveAt(extremes.min, field, points),\n max: calculateCurveAt(extremes.max, field, points)\n };\n };\n\n Segment.prototype._curveExtremes = function _curveExtremes (x1, x2, x3, x4) {\n var a = x1 - 3 * x2 + 3 * x3 - x4;\n var b = - 2 * (x1 - 2 * x2 + x3);\n var c = x1 - x2;\n var sqrt = Math.sqrt(b * b - 4 * a * c);\n var t1 = 0;\n var t2 = 1;\n\n if (a === 0) {\n if (b !== 0) {\n t1 = t2 = -c / b;\n }\n } else if (!isNaN(sqrt)) {\n t1 = (- b + sqrt) / (2 * a);\n t2 = (- b - sqrt) / (2 * a);\n }\n\n var min = Math.max(Math.min(t1, t2), 0);\n if (min < 0 || min > 1) {\n min = 0;\n }\n\n var max = Math.min(Math.max(t1, t2), 1);\n if (max > 1 || max < 0) {\n max = 1;\n }\n\n return {\n min: min,\n max: max\n };\n };\n\n Segment.prototype._intersectionsTo = function _intersectionsTo (segment, point) {\n var intersectionsCount;\n if (this.controlOut() && segment.controlIn()) {\n intersectionsCount = curveIntersectionsCount([ this.anchor(), this.controlOut(), segment.controlIn(), segment.anchor() ], point, this.bboxTo(segment));\n } else {\n intersectionsCount = lineIntersectionsCount(this.anchor(), segment.anchor(), point);\n }\n return intersectionsCount;\n };\n\n Segment.prototype._isOnCurveTo = function _isOnCurveTo (segment, point, width, endSegment) {\n var bbox = this.bboxTo(segment).expand(width, width);\n if (bbox.containsPoint(point)) {\n var p1 = this.anchor();\n var p2 = this.controlOut();\n var p3 = segment.controlIn();\n var p4 = segment.anchor();\n\n if (endSegment === \"start\" && p1.distanceTo(point) <= width) {\n return !isOutOfEndPoint(p1, p2, point);\n } else if (endSegment === \"end\" && p4.distanceTo(point) <= width) {\n return !isOutOfEndPoint(p4, p3, point);\n }\n\n //the approach is not entirely correct but is close and the alternatives are solving a 6th degree polynomial or testing the segment points\n var points = [ p1, p2, p3, p4 ];\n if (hasRootsInRange(points, point, \"x\", \"y\", width) || hasRootsInRange(points, point, \"y\", \"x\", width)) {\n return true;\n }\n var rotation = transform().rotate(45, point);\n var rotatedPoints = [ p1.transformCopy(rotation), p2.transformCopy(rotation), p3.transformCopy(rotation), p4.transformCopy(rotation) ];\n return hasRootsInRange(rotatedPoints, point, \"x\", \"y\", width) || hasRootsInRange(rotatedPoints, point, \"y\", \"x\", width);\n }\n };\n\n Segment.prototype._isOnLineTo = function _isOnLineTo (segment, point, width) {\n var p1 = this.anchor();\n var p2 = segment.anchor();\n var angle = deg(Math.atan2(p2.y - p1.y, p2.x - p1.x));\n var rect = new Rect([ p1.x, p1.y - width / 2 ], [ p1.distanceTo(p2), width ]);\n return rect.containsPoint(point.transformCopy(transform().rotate(-angle, p1)));\n };\n\n Segment.prototype._isOnPathTo = function _isOnPathTo (segment, point, width, endSegment) {\n var isOnPath;\n if (this.controlOut() && segment.controlIn()) {\n isOnPath = this._isOnCurveTo(segment, point, width / 2, endSegment);\n } else {\n isOnPath = this._isOnLineTo(segment, point, width);\n }\n return isOnPath;\n };\n\n return Segment;\n}(withPoints(HasObservers, points)));\n\nfunction arrayLimits(arr) {\n var length = arr.length;\n var min = MAX_NUM;\n var max = MIN_NUM;\n\n for (var i = 0; i < length; i ++) {\n max = Math.max(max, arr[i]);\n min = Math.min(min, arr[i]);\n }\n\n return {\n min: min,\n max: max\n };\n}\n\nexport default Segment;\n","import toCubicPolynomial from './to-cubic-polynomial';\nimport solveCubicEquation from './solve-cubic-equation';\nimport calculateCurveAt from './calculate-curve-at';\nimport close from './close';\n\nexport default function curveIntersectionsCount(points, point, bbox) {\n var polynomial = toCubicPolynomial(points, \"x\");\n var roots = solveCubicEquation(polynomial[0], polynomial[1], polynomial[2], polynomial[3] - point.x);\n var rayIntersection, intersectsRay;\n var count = 0;\n for (var i = 0; i < roots.length; i++) {\n rayIntersection = calculateCurveAt(roots[i], \"y\", points);\n intersectsRay = close(rayIntersection, point.y) || rayIntersection > point.y;\n if (intersectsRay && (((roots[i] === 0 || roots[i] === 1) && bbox.bottomRight().x > point.x) || (0 < roots[i] && roots[i] < 1))) {\n count++;\n }\n }\n\n return count;\n}","import { Point, Segment } from '../../geometry';\nimport { last, round } from '../../util';\n\nvar WEIGHT = 0.333;\nvar EXTREMUM_ALLOWED_DEVIATION = 0.01;\nvar X = \"x\";\nvar Y = \"y\";\n\nexport function pointsToCurve(pointsIn, closed) {\n var points = pointsIn.slice(0);\n var segments = [];\n var length = points.length;\n\n if (length > 2) {\n removeDuplicates(0, points);\n length = points.length;\n }\n\n if (length < 2 || (length === 2 && points[0].equals(points[1]))) {\n return segments;\n }\n\n var p0 = points[0];\n var p1 = points[1];\n var p2 = points[2];\n\n segments.push(new Segment(p0));\n\n while (p0.equals(points[length - 1])) {\n closed = true;\n points.pop();\n length--;\n }\n\n if (length === 2) {\n var tangent = getTangent(p0,p1, X, Y);\n\n last(segments).controlOut(\n firstControlPoint(tangent, p0, p1, X, Y)\n );\n\n segments.push(new Segment(\n p1,\n secondControlPoint(tangent, p0, p1, X, Y)\n ));\n\n return segments;\n }\n\n var initialControlPoint, lastControlPoint;\n\n if (closed) {\n p0 = points[length - 1]; p1 = points[0]; p2 = points[1];\n var controlPoints = getControlPoints(p0, p1, p2);\n initialControlPoint = controlPoints[1];\n lastControlPoint = controlPoints[0];\n } else {\n var tangent$1 = getTangent(p0, p1, X,Y);\n initialControlPoint = firstControlPoint(tangent$1, p0, p1, X, Y);\n }\n\n var cp0 = initialControlPoint;\n for (var idx = 0; idx <= length - 3; idx++) {\n removeDuplicates(idx, points);\n length = points.length;\n if (idx + 3 <= length) {\n p0 = points[idx]; p1 = points[idx + 1]; p2 = points[idx + 2];\n var controlPoints$1 = getControlPoints(p0,p1,p2);\n\n last(segments).controlOut(cp0);\n cp0 = controlPoints$1[1];\n\n var cp1 = controlPoints$1[0];\n segments.push(new Segment(p1, cp1));\n }\n }\n\n if (closed) {\n p0 = points[length - 2]; p1 = points[length - 1]; p2 = points[0];\n var controlPoints$2 = getControlPoints(p0, p1, p2);\n\n last(segments).controlOut(cp0);\n segments.push(new Segment(\n p1,\n controlPoints$2[0]\n ));\n\n last(segments).controlOut(controlPoints$2[1]);\n segments.push(new Segment(\n p2,\n lastControlPoint\n ));\n } else {\n var tangent$2 = getTangent(p1, p2, X, Y);\n\n last(segments).controlOut(cp0);\n segments.push(new Segment(\n p2,\n secondControlPoint(tangent$2, p1, p2, X, Y)\n ));\n }\n\n return segments;\n}\n\nexport function pointsToClosedCurve(pointsIn) {\n return pointsToCurve(pointsIn, true);\n}\n\nexport function removeDuplicates(idx, points) {\n while (points[idx + 1] && (points[idx].equals(points[idx + 1]) || points[idx + 1].equals(points[idx + 2]))) {\n points.splice(idx + 1, 1);\n }\n}\n\nexport function invertAxis(p0, p1, p2) {\n var invertAxis = false;\n\n if (p0.x === p1.x) {\n invertAxis = true;\n } else if (p1.x === p2.x) {\n if ((p1.y < p2.y && p0.y <= p1.y) || (p2.y < p1.y && p1.y <= p0.y)) {\n invertAxis = true;\n }\n } else {\n var fn = lineFunction(p0,p1);\n var y2 = calculateFunction(fn, p2.x);\n if (!(p0.y <= p1.y && p2.y <= y2) &&\n !(p1.y <= p0.y && p2.y >= y2)) {\n invertAxis = true;\n }\n }\n\n return invertAxis;\n}\n\nexport function isLine(p0, p1, p2) {\n var fn = lineFunction(p0, p1);\n var y2 = calculateFunction(fn, p2.x);\n\n return (p0.x === p1.x && p1.x === p2.x) || round(y2, 1) === round(p2.y, 1);\n}\n\nexport function lineFunction(p1, p2) {\n var a = (p2.y - p1.y) / (p2.x - p1.x);\n var b = p1.y - a * p1.x;\n\n return [ b, a ];\n}\n\nexport function getControlPoints(p0, p1, p2) {\n var xField = X;\n var yField = Y;\n var restrict = false;\n var switchOrientation = false;\n var tangent;\n\n if (isLine(p0, p1, p2)) {\n tangent = getTangent(p0, p1, X, Y);\n } else {\n var monotonic = {\n x: isMonotonicByField(p0, p1, p2, X),\n y: isMonotonicByField(p0, p1, p2, Y)\n };\n\n if (monotonic.x && monotonic.y) {\n tangent = getTangent(p0, p2, X, Y);\n restrict = true;\n } else {\n if (invertAxis(p0, p1, p2)) {\n xField = Y;\n yField = X;\n }\n\n if (monotonic[xField]) {\n tangent = 0;\n } else {\n var sign;\n if ((p2[yField] < p0[yField] && p0[yField] <= p1[yField]) ||\n (p0[yField] < p2[yField] && p1[yField] <= p0[yField])) {\n sign = numberSign((p2[yField] - p0[yField]) * (p1[xField] - p0[xField]));\n } else {\n sign = -numberSign((p2[xField] - p0[xField]) * (p1[yField] - p0[yField]));\n }\n\n tangent = EXTREMUM_ALLOWED_DEVIATION * sign;\n switchOrientation = true;\n }\n }\n }\n\n var secondCP = secondControlPoint(tangent, p0, p1, xField, yField);\n\n if (switchOrientation) {\n var oldXField = xField;\n xField = yField;\n yField = oldXField;\n }\n\n var firstCP = firstControlPoint(tangent, p1, p2, xField, yField);\n\n if (restrict) {\n restrictControlPoint(p0, p1, secondCP, tangent);\n restrictControlPoint(p1, p2, firstCP, tangent);\n }\n\n return [ secondCP, firstCP ];\n}\n\nexport function restrictControlPoint(p1, p2, cp, tangent) {\n if (p1.y < p2.y) {\n if (p2.y < cp.y) {\n cp.x = p1.x + (p2.y - p1.y) / tangent;\n cp.y = p2.y;\n } else if (cp.y < p1.y) {\n cp.x = p2.x - (p2.y - p1.y) / tangent;\n cp.y = p1.y;\n }\n } else {\n if (cp.y < p2.y) {\n cp.x = p1.x - (p1.y - p2.y) / tangent;\n cp.y = p2.y;\n } else if (p1.y < cp.y) {\n cp.x = p2.x + (p1.y - p2.y) / tangent;\n cp.y = p1.y;\n }\n }\n}\n\nexport function getTangent(p0, p1, xField, yField) {\n var x = p1[xField] - p0[xField];\n var y = p1[yField] - p0[yField];\n var tangent;\n\n if (x === 0) {\n tangent = 0;\n } else {\n tangent = y / x;\n }\n\n return tangent;\n}\n\nexport function isMonotonicByField(p0, p1, p2, field) {\n return (p2[field] > p1[field] && p1[field] > p0[field]) ||\n (p2[field] < p1[field] && p1[field] < p0[field]);\n}\n\nexport function firstControlPoint(tangent, p0, p3, xField, yField) {\n var t1 = p0[xField];\n var t2 = p3[xField];\n var distance = (t2 - t1) * WEIGHT;\n\n return point(t1 + distance, p0[yField] + distance * tangent, xField, yField);\n}\n\nexport function secondControlPoint(tangent, p0, p3, xField, yField) {\n var t1 = p0[xField];\n var t2 = p3[xField];\n var distance = (t2 - t1) * WEIGHT;\n\n return point(t2 - distance, p3[yField] - distance * tangent, xField, yField);\n}\n\nexport function point(xValue, yValue, xField, yField) {\n var controlPoint = new Point();\n controlPoint[xField] = xValue;\n controlPoint[yField] = yValue;\n\n return controlPoint;\n}\n\nexport function calculateFunction(fn, x) {\n var length = fn.length;\n var result = 0;\n\n for (var i = 0; i < length; i++) {\n result += Math.pow(x,i) * fn[i];\n }\n return result;\n}\n\nexport function numberSign(value) {\n return value <= 0 ? -1 : 1;\n}\n","import { defined } from '../util';\n\nvar GRADIENT = \"Gradient\";\n\nvar paintable = function (TBase) { return (\n (function (TBase) {\n function anonymous () {\n TBase.apply(this, arguments);\n }\n\n if ( TBase ) anonymous.__proto__ = TBase;\n anonymous.prototype = Object.create( TBase && TBase.prototype );\n anonymous.prototype.constructor = anonymous;\n\n anonymous.prototype.fill = function fill (color, opacity) {\n var options = this.options;\n\n if (defined(color)) {\n if (color && color.nodeType !== GRADIENT) {\n var newFill = {\n color: color\n };\n if (defined(opacity)) {\n newFill.opacity = opacity;\n }\n options.set(\"fill\", newFill);\n } else {\n options.set(\"fill\", color);\n }\n\n return this;\n }\n\n return options.get(\"fill\");\n };\n\n anonymous.prototype.stroke = function stroke (color, width, opacity) {\n if (defined(color)) {\n this.options.set(\"stroke.color\", color);\n\n if (defined(width)) {\n this.options.set(\"stroke.width\", width);\n }\n\n if (defined(opacity)) {\n this.options.set(\"stroke.opacity\", opacity);\n }\n\n return this;\n }\n\n return this.options.get(\"stroke\");\n };\n\n return anonymous;\n }(TBase))\n); };\n\nexport default paintable;\n","import Matrix from '../geometry/matrix';\nimport toMatrix from '../geometry/to-matrix';\n\nvar IDENTITY_MATRIX_HASH = Matrix.IDENTITY.toString();\n\nvar measurable = function (TBase) { return (\n (function (TBase) {\n function anonymous () {\n TBase.apply(this, arguments);\n }\n\n if ( TBase ) anonymous.__proto__ = TBase;\n anonymous.prototype = Object.create( TBase && TBase.prototype );\n anonymous.prototype.constructor = anonymous;\n\n anonymous.prototype.bbox = function bbox (transformation) {\n var combinedMatrix = toMatrix(this.currentTransform(transformation));\n var matrixHash = combinedMatrix ? combinedMatrix.toString() : IDENTITY_MATRIX_HASH;\n var bbox;\n\n if (this._bboxCache && this._matrixHash === matrixHash) {\n bbox = this._bboxCache.clone();\n } else {\n bbox = this._bbox(combinedMatrix);\n this._bboxCache = bbox ? bbox.clone() : null;\n this._matrixHash = matrixHash;\n }\n\n var strokeWidth = this.options.get(\"stroke.width\");\n if (strokeWidth && bbox) {\n bbox.expand(strokeWidth / 2);\n }\n\n return bbox;\n };\n\n anonymous.prototype.geometryChange = function geometryChange () {\n delete this._bboxCache;\n this.trigger(\"geometryChange\", {\n element: this\n });\n };\n\n return anonymous;\n }(TBase))\n); };\n\nexport default measurable;","import Point from '../geometry/point';\nimport { last } from '../util';\n\nvar ShapeMap = {\n l: function(path, options) {\n var parameters = options.parameters;\n var position = options.position;\n\n for (var i = 0; i < parameters.length; i += 2) {\n var point = new Point(parameters[i], parameters[i + 1]);\n\n if (options.isRelative) {\n point.translateWith(position);\n }\n\n path.lineTo(point.x, point.y);\n\n position.x = point.x;\n position.y = point.y;\n }\n },\n\n c: function(path, options) {\n var parameters = options.parameters;\n var position = options.position;\n\n for (var i = 0; i < parameters.length; i += 6) {\n var controlOut = new Point(parameters[i], parameters[i + 1]);\n var controlIn = new Point(parameters[i + 2], parameters[i + 3]);\n var point = new Point(parameters[i + 4], parameters[i + 5]);\n if (options.isRelative) {\n controlIn.translateWith(position);\n controlOut.translateWith(position);\n point.translateWith(position);\n }\n\n path.curveTo(controlOut, controlIn, point);\n\n position.x = point.x;\n position.y = point.y;\n }\n },\n\n v: function(path, options) {\n var value = options.isRelative ? 0 : options.position.x;\n\n toLineParamaters(options.parameters, true, value);\n this.l(path, options);\n },\n\n h: function(path, options) {\n var value = options.isRelative ? 0 : options.position.y;\n\n toLineParamaters(options.parameters, false, value);\n this.l(path, options);\n },\n\n a: function(path, options) {\n var parameters = options.parameters;\n var position = options.position;\n\n for (var i = 0; i < parameters.length; i += 7) {\n var radiusX = parameters[i];\n var radiusY = parameters[i + 1];\n var rotation = parameters[i + 2];\n var largeArc = parameters[i + 3];\n var swipe = parameters[i + 4];\n var endPoint = new Point(parameters[i + 5], parameters[i + 6]);\n\n if (options.isRelative) {\n endPoint.translateWith(position);\n }\n if (position.x !== endPoint.x || position.y !== endPoint.y) {\n path.arcTo(endPoint, radiusX, radiusY, largeArc, swipe, rotation);\n\n position.x = endPoint.x;\n position.y = endPoint.y;\n }\n }\n },\n\n s: function(path, options) {\n var parameters = options.parameters;\n var position = options.position;\n var previousCommand = options.previousCommand;\n var lastControlIn;\n\n if (previousCommand === \"s\" || previousCommand === \"c\") {\n lastControlIn = last(last(path.paths).segments).controlIn();\n }\n\n for (var i = 0; i < parameters.length; i += 4) {\n var controlIn = new Point(parameters[i], parameters[i + 1]);\n var endPoint = new Point(parameters[i + 2], parameters[i + 3]);\n var controlOut = (void 0);\n\n if (options.isRelative) {\n controlIn.translateWith(position);\n endPoint.translateWith(position);\n }\n\n if (lastControlIn) {\n controlOut = reflectionPoint(lastControlIn, position);\n } else {\n controlOut = position.clone();\n }\n\n lastControlIn = controlIn;\n\n path.curveTo(controlOut, controlIn, endPoint);\n\n position.x = endPoint.x;\n position.y = endPoint.y;\n }\n },\n\n q: function(path, options) {\n var parameters = options.parameters;\n var position = options.position;\n\n for (var i = 0; i < parameters.length; i += 4) {\n var controlPoint = new Point(parameters[i], parameters[i + 1]);\n var endPoint = new Point(parameters[i + 2], parameters[i + 3]);\n\n if (options.isRelative) {\n controlPoint.translateWith(position);\n endPoint.translateWith(position);\n }\n\n var cubicControlPoints = quadraticToCubicControlPoints(position, controlPoint, endPoint);\n\n path.curveTo(cubicControlPoints.controlOut, cubicControlPoints.controlIn, endPoint);\n\n position.x = endPoint.x;\n position.y = endPoint.y;\n }\n },\n\n t: function(path, options) {\n var parameters = options.parameters;\n var position = options.position;\n var previousCommand = options.previousCommand;\n var controlPoint;\n\n if (previousCommand === \"q\" || previousCommand === \"t\") {\n var lastSegment = last(last(path.paths).segments);\n controlPoint = lastSegment.controlIn().clone()\n .translateWith(position.scaleCopy(-1 / 3))\n .scale(3 / 2);\n }\n\n for (var i = 0; i < parameters.length; i += 2) {\n var endPoint = new Point(parameters[i], parameters[i + 1]);\n if (options.isRelative) {\n endPoint.translateWith(position);\n }\n\n if (controlPoint) {\n controlPoint = reflectionPoint(controlPoint, position);\n } else {\n controlPoint = position.clone();\n }\n\n var cubicControlPoints = quadraticToCubicControlPoints(position, controlPoint, endPoint);\n\n path.curveTo(cubicControlPoints.controlOut, cubicControlPoints.controlIn, endPoint);\n\n position.x = endPoint.x;\n position.y = endPoint.y;\n }\n }\n};\n\nfunction toLineParamaters(parameters, isVertical, value) {\n var insertPosition = isVertical ? 0 : 1;\n\n for (var i = 0; i < parameters.length; i += 2) {\n parameters.splice(i + insertPosition, 0, value);\n }\n}\n\nfunction reflectionPoint(point, center) {\n if (point && center) {\n return center.scaleCopy(2).translate(-point.x, -point.y);\n }\n}\n\nvar third = 1 / 3;\n\nfunction quadraticToCubicControlPoints(position, controlPoint, endPoint) {\n var scaledPoint = controlPoint.clone().scale(2 / 3);\n return {\n controlOut: scaledPoint.clone().translateWith(position.scaleCopy(third)),\n controlIn: scaledPoint.translateWith(endPoint.scaleCopy(third))\n };\n}\n\nexport default ShapeMap;","import Point from '../geometry/point';\nimport ShapeMap from './shape-map';\n\nvar SEGMENT_REGEX = /([a-df-z]{1})([^a-df-z]*)(z)?/gi;\nvar SPLIT_REGEX = /[,\\s]?([+\\-]?(?:\\d*\\.\\d+|\\d+)(?:[eE][+\\-]?\\d+)?)/g;\nvar MOVE = \"m\";\nvar CLOSE = \"z\";\n\nfunction parseParameters(str) {\n var parameters = [];\n str.replace(SPLIT_REGEX, function(match, number) {\n parameters.push(parseFloat(number));\n });\n return parameters;\n}\n\nfunction parsePath(pathInstance, str) {\n var position = new Point();\n var previousCommand;\n\n str.replace(SEGMENT_REGEX, function (match, element, params, closePath) {\n var command = element.toLowerCase();\n var isRelative = command === element;\n var parameters = parseParameters(params.trim());\n\n if (command === MOVE) {\n if (isRelative) {\n position.x += parameters[0];\n position.y += parameters[1];\n } else {\n position.x = parameters[0];\n position.y = parameters[1];\n }\n\n pathInstance.moveTo(position.x, position.y);\n\n if (parameters.length > 2) {\n command = \"l\";\n parameters.splice(0, 2);\n }\n }\n\n if (ShapeMap[command]) {\n ShapeMap[command](\n pathInstance, {\n parameters: parameters,\n position: position,\n isRelative: isRelative,\n previousCommand: previousCommand\n }\n );\n\n if (closePath && closePath.toLowerCase() === CLOSE) {\n pathInstance.close();\n }\n } else if (command !== MOVE) {\n throw new Error(\"Error while parsing SVG path. Unsupported command: \" + command);\n }\n\n previousCommand = command;\n });\n\n return pathInstance;\n}\n\nexport default parsePath;\n\n","import Rect from '../../geometry/rect';\n\nexport default function elementsBoundingBox(elements, applyTransform, transformation) {\n var boundingBox;\n\n for (var i = 0; i < elements.length; i++) {\n var element = elements[i];\n if (element.visible()) {\n var elementBoundingBox = applyTransform ? element.bbox(transformation) : element.rawBBox();\n if (elementBoundingBox) {\n if (boundingBox) {\n boundingBox = Rect.union(boundingBox, elementBoundingBox);\n } else {\n boundingBox = elementBoundingBox;\n }\n }\n }\n }\n\n return boundingBox;\n}\n\n","import Rect from '../../geometry/rect';\n\nexport default function elementsClippedBoundingBox(elements, transformation) {\n var boundingBox;\n\n for (var i = 0; i < elements.length; i++) {\n var element = elements[i];\n if (element.visible()) {\n var elementBoundingBox = element.clippedBBox(transformation);\n if (elementBoundingBox) {\n if (boundingBox) {\n boundingBox = Rect.union(boundingBox, elementBoundingBox);\n } else {\n boundingBox = elementBoundingBox;\n }\n }\n }\n }\n\n return boundingBox;\n}","import GeometryElementsArray from './geometry-elements-array';\nimport Element from './element';\nimport { pointsToCurve } from './utils/points-to-curve';\nimport paintable from '../mixins/paintable';\nimport measurable from '../mixins/measurable';\nimport Arc from '../geometry/arc';\nimport Rect from '../geometry/rect';\nimport Segment from '../geometry/segment';\nimport Point from '../geometry/point';\nimport Size from '../geometry/size';\nimport lineIntersectionsCount from '../geometry/math/line-intersections-count';\nimport { defined, last, rad } from '../util';\nimport parsePath from '../parsing/parse-path';\nimport elementsBoundingBox from './utils/elements-bounding-box';\nimport elementsClippedBoundingBox from './utils/elements-clippend-bounding-box';\nimport limitValue from '../util/limit-value';\n\nvar SPACE = ' ';\nvar printPoints = function (precision) { return function () {\n var points = [], len = arguments.length;\n while ( len-- ) points[ len ] = arguments[ len ];\n\n return points.map(function (p) { return p.toString(precision); }).join(SPACE);\n; } };\nvar segmentType = function (segmentStart, segmentEnd) { return segmentStart.controlOut() && segmentEnd.controlIn() ? 'C' : 'L'; };\n\nexport var Path = (function (superclass) {\n function Path(options) {\n superclass.call(this, options);\n this.segments = new GeometryElementsArray();\n this.segments.addObserver(this);\n\n if (!defined(this.options.stroke)) {\n this.stroke('#000');\n\n if (!defined(this.options.stroke.lineJoin)) {\n this.options.set('stroke.lineJoin', 'miter');\n }\n }\n }\n\n if ( superclass ) Path.__proto__ = superclass;\n Path.prototype = Object.create( superclass && superclass.prototype );\n Path.prototype.constructor = Path;\n\n var prototypeAccessors = { nodeType: { configurable: true } };\n\n prototypeAccessors.nodeType.get = function () {\n return 'Path';\n };\n\n Path.prototype.moveTo = function moveTo (x, y) {\n this.suspend();\n this.segments.elements([]);\n this.resume();\n\n this.lineTo(x, y);\n\n return this;\n };\n\n Path.prototype.lineTo = function lineTo (x, y) {\n var point = defined(y) ? new Point(x, y) : x;\n var segment = new Segment(point);\n\n this.segments.push(segment);\n\n return this;\n };\n\n Path.prototype.curveTo = function curveTo (controlOut, controlIn, point) {\n if (this.segments.length > 0) {\n var lastSegment = last(this.segments);\n var segment = new Segment(point, controlIn);\n this.suspend();\n lastSegment.controlOut(controlOut);\n this.resume();\n\n this.segments.push(segment);\n }\n\n return this;\n };\n\n Path.prototype.arc = function arc (startAngle, endAngle, radiusX, radiusY, anticlockwise) {\n if (this.segments.length > 0) {\n var lastSegment = last(this.segments);\n var anchor = lastSegment.anchor();\n var start = rad(startAngle);\n var center = new Point(anchor.x - radiusX * Math.cos(start),\n anchor.y - radiusY * Math.sin(start));\n var arc = new Arc(center, {\n startAngle: startAngle,\n endAngle: endAngle,\n radiusX: radiusX,\n radiusY: radiusY,\n anticlockwise: anticlockwise\n });\n\n this._addArcSegments(arc);\n }\n\n return this;\n };\n\n Path.prototype.arcTo = function arcTo (end, rx, ry, largeArc, swipe, rotation) {\n if (this.segments.length > 0) {\n var lastSegment = last(this.segments);\n var anchor = lastSegment.anchor();\n var arc = Arc.fromPoints(anchor, Point.create(end), rx, ry, largeArc, swipe, rotation);\n\n this._addArcSegments(arc);\n }\n return this;\n };\n\n Path.prototype._addArcSegments = function _addArcSegments (arc) {\n var this$1 = this;\n\n this.suspend();\n\n var curvePoints = arc.curvePoints();\n\n for (var i = 1; i < curvePoints.length; i += 3) {\n this$1.curveTo(curvePoints[i], curvePoints[i + 1], curvePoints[i + 2]);\n }\n\n this.resume();\n this.geometryChange();\n };\n\n Path.prototype.close = function close () {\n this.options.closed = true;\n this.geometryChange();\n\n return this;\n };\n\n Path.prototype.rawBBox = function rawBBox () {\n return this._bbox();\n };\n\n Path.prototype.toString = function toString (digits) {\n var output = '';\n\n var segments = this.segments;\n var length = segments.length;\n if (length > 0) {\n var parts = [];\n var print = printPoints(digits);\n var currentType;\n\n for (var i = 1; i < length; i++) {\n var type = segmentType(segments[i - 1], segments[i]);\n if (type !== currentType) {\n currentType = type;\n parts.push(type);\n }\n\n if (type === 'L') {\n parts.push(print(segments[i].anchor()));\n } else {\n parts.push(print(\n segments[i - 1].controlOut(), segments[i].controlIn(), segments[i].anchor()\n ));\n }\n }\n\n output = 'M' + print(segments[0].anchor()) + SPACE + parts.join(SPACE);\n if (this.options.closed) {\n output += 'Z';\n }\n }\n\n return output;\n };\n\n Path.prototype._containsPoint = function _containsPoint (point) {\n var segments = this.segments;\n var length = segments.length;\n var intersectionsCount = 0;\n var previous, current;\n\n for (var idx = 1; idx < length; idx++) {\n previous = segments[idx - 1];\n current = segments[idx];\n intersectionsCount += previous._intersectionsTo(current, point);\n }\n\n if (this.options.closed || !segments[0].anchor().equals(segments[length - 1].anchor())) {\n intersectionsCount += lineIntersectionsCount(segments[0].anchor(), segments[length - 1].anchor(), point);\n }\n\n return intersectionsCount % 2 !== 0;\n };\n\n Path.prototype._isOnPath = function _isOnPath (point, width) {\n var segments = this.segments;\n var length = segments.length;\n var pathWidth = width || this.options.stroke.width;\n\n if (length > 1) {\n if (segments[0]._isOnPathTo(segments[1], point, pathWidth, 'start')) {\n return true;\n }\n\n for (var idx = 2; idx <= length - 2; idx++) {\n if (segments[idx - 1]._isOnPathTo(segments[idx], point, pathWidth)) {\n return true;\n }\n }\n\n if (segments[length - 2]._isOnPathTo(segments[length - 1], point, pathWidth, 'end')) {\n return true;\n }\n }\n return false;\n };\n\n Path.prototype._bbox = function _bbox (matrix) {\n var segments = this.segments;\n var length = segments.length;\n var boundingBox;\n\n if (length === 1) {\n var anchor = segments[0].anchor().transformCopy(matrix);\n boundingBox = new Rect(anchor, Size.ZERO);\n } else if (length > 0) {\n for (var i = 1; i < length; i++) {\n var segmentBox = segments[i - 1].bboxTo(segments[i], matrix);\n if (boundingBox) {\n boundingBox = Rect.union(boundingBox, segmentBox);\n } else {\n boundingBox = segmentBox;\n }\n }\n }\n\n return boundingBox;\n };\n\n Path.parse = function parse (str, options) {\n return MultiPath.parse(str, options);\n };\n\n Path.fromRect = function fromRect (rect, options) {\n var path = new Path(options);\n var ref = rect.cornerRadius;\n var rx = ref[0];\n var ry = ref[1];\n\n if (rx === 0 && ry === 0) {\n path.moveTo(rect.topLeft())\n .lineTo(rect.topRight())\n .lineTo(rect.bottomRight())\n .lineTo(rect.bottomLeft())\n .close();\n } else {\n var origin = rect.origin;\n var x = origin.x;\n var y = origin.y;\n var width = rect.width();\n var height = rect.height();\n rx = limitValue(rx, 0, width / 2);\n ry = limitValue(ry, 0, height / 2);\n\n path.moveTo(x + rx, y)\n .lineTo(x + width - rx, y)\n .arcTo([ x + width, y + ry ], rx, ry, false)\n .lineTo(x + width, y + height - ry)\n .arcTo([ x + width - rx, y + height ], rx, ry, false)\n .lineTo(x + rx, y + height)\n .arcTo([ x, y + height - ry ], rx, ry, false)\n .lineTo(x, y + ry)\n .arcTo([ x + rx, y ], rx, ry, false);\n }\n\n return path;\n };\n\n Path.fromPoints = function fromPoints (points, options) {\n if (points) {\n var path = new Path(options);\n\n for (var i = 0; i < points.length; i++) {\n var point = Point.create(points[i]);\n if (point) {\n if (i === 0) {\n path.moveTo(point);\n } else {\n path.lineTo(point);\n }\n }\n }\n\n return path;\n }\n };\n\n Path.curveFromPoints = function curveFromPoints (points, options) {\n if (points) {\n var segments = pointsToCurve(points);\n var path = new Path(options);\n path.segments.push.apply(path.segments, segments);\n\n return path;\n }\n };\n\n Path.fromArc = function fromArc (arc, options) {\n var path = new Path(options);\n var startAngle = arc.startAngle;\n var start = arc.pointAt(startAngle);\n path.moveTo(start.x, start.y);\n path.arc(startAngle, arc.endAngle, arc.radiusX, arc.radiusY, arc.anticlockwise);\n return path;\n };\n\n Object.defineProperties( Path.prototype, prototypeAccessors );\n\n return Path;\n}(paintable(measurable(Element))));\n\nexport var MultiPath = (function (superclass) {\n function MultiPath(options) {\n superclass.call(this, options);\n this.paths = new GeometryElementsArray();\n this.paths.addObserver(this);\n\n if (!defined(this.options.stroke)) {\n this.stroke('#000');\n }\n }\n\n if ( superclass ) MultiPath.__proto__ = superclass;\n MultiPath.prototype = Object.create( superclass && superclass.prototype );\n MultiPath.prototype.constructor = MultiPath;\n\n var prototypeAccessors$1 = { nodeType: { configurable: true } };\n\n MultiPath.parse = function parse (str, options) {\n var instance = new MultiPath(options);\n return parsePath(instance, str);\n };\n\n MultiPath.prototype.toString = function toString (digits) {\n var paths = this.paths;\n var output = '';\n\n if (paths.length > 0) {\n var result = [];\n\n for (var i = 0; i < paths.length; i++) {\n result.push(paths[i].toString(digits));\n }\n\n output = result.join(SPACE);\n }\n\n return output;\n };\n\n prototypeAccessors$1.nodeType.get = function () {\n return 'MultiPath';\n };\n\n MultiPath.prototype.moveTo = function moveTo (x, y) {\n var path = new Path();\n path.moveTo(x, y);\n\n this.paths.push(path);\n\n return this;\n };\n\n MultiPath.prototype.lineTo = function lineTo (x, y) {\n if (this.paths.length > 0) {\n last(this.paths).lineTo(x, y);\n }\n\n return this;\n };\n\n MultiPath.prototype.curveTo = function curveTo (controlOut, controlIn, point) {\n if (this.paths.length > 0) {\n last(this.paths).curveTo(controlOut, controlIn, point);\n }\n\n return this;\n };\n\n MultiPath.prototype.arc = function arc (startAngle, endAngle, radiusX, radiusY, anticlockwise) {\n if (this.paths.length > 0) {\n last(this.paths).arc(startAngle, endAngle, radiusX, radiusY, anticlockwise);\n }\n\n return this;\n };\n\n MultiPath.prototype.arcTo = function arcTo (end, rx, ry, largeArc, swipe, rotation) {\n if (this.paths.length > 0) {\n last(this.paths).arcTo(end, rx, ry, largeArc, swipe, rotation);\n }\n\n return this;\n };\n\n MultiPath.prototype.close = function close () {\n if (this.paths.length > 0) {\n last(this.paths).close();\n }\n\n return this;\n };\n\n MultiPath.prototype._bbox = function _bbox (matrix) {\n return elementsBoundingBox(this.paths, true, matrix);\n };\n\n MultiPath.prototype.rawBBox = function rawBBox () {\n return elementsBoundingBox(this.paths, false);\n };\n\n MultiPath.prototype._containsPoint = function _containsPoint (point) {\n var paths = this.paths;\n\n for (var idx = 0; idx < paths.length; idx++) {\n if (paths[idx]._containsPoint(point)) {\n return true;\n }\n }\n return false;\n };\n\n MultiPath.prototype._isOnPath = function _isOnPath (point) {\n var paths = this.paths;\n var width = this.options.stroke.width;\n\n for (var idx = 0; idx < paths.length; idx++) {\n if (paths[idx]._isOnPath(point, width)) {\n return true;\n }\n }\n return false;\n };\n\n MultiPath.prototype._clippedBBox = function _clippedBBox (transformation) {\n return elementsClippedBoundingBox(this.paths, this.currentTransform(transformation));\n };\n\n Object.defineProperties( MultiPath.prototype, prototypeAccessors$1 );\n\n return MultiPath;\n}(paintable(measurable(Element))));\n\n","import { geometry as geom, drawing as draw } from '@progress/kendo-drawing';\nimport { Class } from '../common';\n\nvar DIRECTION_ANGLE = 0.001; //any value that will make the endAngle bigger than the start angle will work here.\n\nvar ShapeBuilder = (function (Class) {\n function ShapeBuilder () {\n Class.apply(this, arguments);\n }\n\n if ( Class ) ShapeBuilder.__proto__ = Class;\n ShapeBuilder.prototype = Object.create( Class && Class.prototype );\n ShapeBuilder.prototype.constructor = ShapeBuilder;\n\n ShapeBuilder.prototype.createRing = function createRing (sector, options) {\n var startAngle = sector.startAngle + 180;\n var endAngle = sector.angle + startAngle;\n\n //required in order to avoid reversing the arc direction in cases like 0.000000000000001 + 100 === 100\n if (sector.angle === 0 || sector.angle > 0 && startAngle === endAngle) {\n endAngle += DIRECTION_ANGLE;\n }\n\n var center = new geom.Point(sector.center.x, sector.center.y);\n var radius = Math.max(sector.radius, 0);\n var innerRadius = Math.max(sector.innerRadius, 0);\n var arc = new geom.Arc(center, {\n startAngle: startAngle,\n endAngle: endAngle,\n radiusX: radius,\n radiusY: radius\n });\n var path = draw.Path.fromArc(arc, options).close();\n\n if (innerRadius) {\n arc.radiusX = arc.radiusY = innerRadius;\n var innerEnd = arc.pointAt(endAngle);\n path.lineTo(innerEnd.x, innerEnd.y);\n path.arc(endAngle, startAngle, innerRadius, innerRadius, true);\n } else {\n path.lineTo(center.x, center.y);\n }\n\n return path;\n };\n\n return ShapeBuilder;\n}(Class));\n\nShapeBuilder.current = new ShapeBuilder();\n\nexport default ShapeBuilder;","import withAccessors from '../mixins/with-accessors';\nimport Point from './point';\nimport Rect from './rect';\nimport ellipseExtremeAngles from './math/ellipse-extreme-angles';\nimport HasObservers from '../core/has-observers';\nimport { rad } from '../util';\n\n\nvar PI_DIV_2 = Math.PI / 2;\n\nvar Circle = (function (superclass) {\n function Circle(center, radius) {\n if ( center === void 0 ) center = new Point();\n if ( radius === void 0 ) radius = 0;\n\n superclass.call(this);\n\n this.setCenter(center);\n this.setRadius(radius);\n }\n\n if ( superclass ) Circle.__proto__ = superclass;\n Circle.prototype = Object.create( superclass && superclass.prototype );\n Circle.prototype.constructor = Circle;\n\n Circle.prototype.setCenter = function setCenter (value) {\n this._observerField(\"center\", Point.create(value));\n this.geometryChange();\n return this;\n };\n\n Circle.prototype.getCenter = function getCenter () {\n return this.center;\n };\n\n Circle.prototype.equals = function equals (other) {\n return other &&\n other.center.equals(this.center) &&\n other.radius === this.radius;\n };\n\n Circle.prototype.clone = function clone () {\n return new Circle(this.center.clone(), this.radius);\n };\n\n Circle.prototype.pointAt = function pointAt (angle) {\n return this._pointAt(rad(angle));\n };\n\n Circle.prototype.bbox = function bbox (matrix) {\n var this$1 = this;\n\n var extremeAngles = ellipseExtremeAngles(this.center, this.radius, this.radius, matrix);\n var minPoint = Point.maxPoint();\n var maxPoint = Point.minPoint();\n\n for (var i = 0; i < 4; i++) {\n var currentPointX = this$1._pointAt(extremeAngles.x + i * PI_DIV_2).transformCopy(matrix);\n var currentPointY = this$1._pointAt(extremeAngles.y + i * PI_DIV_2).transformCopy(matrix);\n var currentPoint = new Point(currentPointX.x, currentPointY.y);\n\n minPoint = Point.min(minPoint, currentPoint);\n maxPoint = Point.max(maxPoint, currentPoint);\n }\n\n return Rect.fromPoints(minPoint, maxPoint);\n };\n\n Circle.prototype._pointAt = function _pointAt (angle) {\n var ref = this;\n var center = ref.center;\n var radius = ref.radius;\n\n return new Point(\n center.x + radius * Math.cos(angle),\n center.y + radius * Math.sin(angle)\n );\n };\n\n Circle.prototype.containsPoint = function containsPoint (point) {\n var ref = this;\n var center = ref.center;\n var radius = ref.radius;\n var inCircle = Math.pow(point.x - center.x, 2) +\n Math.pow(point.y - center.y, 2) <= Math.pow(radius, 2);\n return inCircle;\n };\n\n Circle.prototype._isOnPath = function _isOnPath (point, width) {\n var ref = this;\n var center = ref.center;\n var radius = ref.radius;\n var pointDistance = center.distanceTo(point);\n\n return radius - width <= pointDistance && pointDistance <= radius + width;\n };\n\n return Circle;\n}(withAccessors(HasObservers, [ \"radius\" ])));\n\nexport default Circle;\n","import { defined } from '../util';\n\nfunction geometryAccessor(name) {\n var fieldName = \"_\" + name;\n return function(value) {\n if (defined(value)) {\n this._observerField(fieldName, value);\n this.geometryChange();\n return this;\n }\n\n return this[fieldName];\n };\n}\n\nfunction defineGeometryAccessors(fn, names) {\n for (var i = 0; i < names.length; i++) {\n fn[names[i]] = geometryAccessor(names[i]);\n }\n}\n\nvar withGeometry = function (TBase, names) {\n if ( names === void 0 ) names = [ \"geometry\" ];\n\n var result = (function (TBase) {\n function result () {\n TBase.apply(this, arguments);\n }if ( TBase ) result.__proto__ = TBase;\n result.prototype = Object.create( TBase && TBase.prototype );\n result.prototype.constructor = result;\n\n \n\n return result;\n }(TBase));\n defineGeometryAccessors(result.prototype, names);\n\n return result;\n};\n\nexport default withGeometry;\n","import GeometryCircle from '../geometry/circle';\nimport paintable from '../mixins/paintable';\nimport measurable from '../mixins/measurable';\nimport withGeometry from '../mixins/with-geometry';\nimport Element from './element';\nimport { defined } from '../util';\n\nvar DEFAULT_STROKE = \"#000\";\n\nvar Circle = (function (superclass) {\n function Circle(geometry, options) {\n if ( geometry === void 0 ) geometry = new GeometryCircle();\n if ( options === void 0 ) options = {};\n\n superclass.call(this, options);\n\n this.geometry(geometry);\n\n if (!defined(this.options.stroke)) {\n this.stroke(DEFAULT_STROKE);\n }\n }\n\n if ( superclass ) Circle.__proto__ = superclass;\n Circle.prototype = Object.create( superclass && superclass.prototype );\n Circle.prototype.constructor = Circle;\n\n var prototypeAccessors = { nodeType: { configurable: true } };\n\n prototypeAccessors.nodeType.get = function () {\n return \"Circle\";\n };\n\n Circle.prototype.rawBBox = function rawBBox () {\n return this._geometry.bbox();\n };\n\n Circle.prototype._bbox = function _bbox (matrix) {\n return this._geometry.bbox(matrix);\n };\n\n Circle.prototype._containsPoint = function _containsPoint (point) {\n return this.geometry().containsPoint(point);\n };\n\n Circle.prototype._isOnPath = function _isOnPath (point) {\n return this.geometry()._isOnPath(point, this.options.stroke.width / 2);\n };\n\n Object.defineProperties( Circle.prototype, prototypeAccessors );\n\n return Circle;\n}(paintable(measurable(withGeometry(Element)))));\n\nexport default Circle;\n","var traversable = function (TBase, childrenField) { return (\n (function (TBase) {\n function anonymous () {\n TBase.apply(this, arguments);\n }\n\n if ( TBase ) anonymous.__proto__ = TBase;\n anonymous.prototype = Object.create( TBase && TBase.prototype );\n anonymous.prototype.constructor = anonymous;\n\n anonymous.prototype.traverse = function traverse (callback) {\n var children = this[childrenField];\n\n for (var i = 0; i < children.length; i++) {\n var child = children[i];\n\n if (child.traverse) {\n child.traverse(callback);\n } else {\n callback(child);\n }\n }\n\n return this;\n };\n\n return anonymous;\n }(TBase))\n); };\n\nexport default traversable;\n","import Element from './element';\nimport traversable from '../mixins/traversable';\nimport { append } from '../util';\nimport elementsBoundingBox from './utils/elements-bounding-box';\nimport elementsClippedBoundingBox from './utils/elements-clippend-bounding-box';\n\n\nvar Group = (function (superclass) {\n function Group(options) {\n superclass.call(this, options);\n this.children = [];\n }\n\n if ( superclass ) Group.__proto__ = superclass;\n Group.prototype = Object.create( superclass && superclass.prototype );\n Group.prototype.constructor = Group;\n\n var prototypeAccessors = { nodeType: { configurable: true } };\n\n prototypeAccessors.nodeType.get = function () {\n return \"Group\";\n };\n\n Group.prototype.childrenChange = function childrenChange (action, items, index) {\n this.trigger(\"childrenChange\",{\n action: action,\n items: items,\n index: index\n });\n };\n\n Group.prototype.append = function append$1 () {\n append(this.children, arguments);\n this._reparent(arguments, this);\n\n this.childrenChange(\"add\", arguments);\n\n return this;\n };\n\n Group.prototype.insert = function insert (index, element) {\n this.children.splice(index, 0, element);\n element.parent = this;\n\n this.childrenChange(\"add\", [ element ], index);\n\n return this;\n };\n\n Group.prototype.insertAt = function insertAt (element, index) {\n return this.insert(index, element);\n };\n\n Group.prototype.remove = function remove (element) {\n var index = this.children.indexOf(element);\n if (index >= 0) {\n this.children.splice(index, 1);\n element.parent = null;\n this.childrenChange(\"remove\", [ element ], index);\n }\n\n return this;\n };\n\n Group.prototype.removeAt = function removeAt (index) {\n if (0 <= index && index < this.children.length) {\n var element = this.children[index];\n this.children.splice(index, 1);\n element.parent = null;\n this.childrenChange(\"remove\", [ element ], index);\n }\n\n return this;\n };\n\n Group.prototype.clear = function clear () {\n var items = this.children;\n this.children = [];\n this._reparent(items, null);\n\n this.childrenChange(\"remove\", items, 0);\n\n return this;\n };\n\n Group.prototype.bbox = function bbox (transformation) {\n return elementsBoundingBox(this.children, true, this.currentTransform(transformation));\n };\n\n Group.prototype.rawBBox = function rawBBox () {\n return elementsBoundingBox(this.children, false);\n };\n\n Group.prototype._clippedBBox = function _clippedBBox (transformation) {\n return elementsClippedBoundingBox(this.children, this.currentTransform(transformation));\n };\n\n Group.prototype.currentTransform = function currentTransform (transformation) {\n return Element.prototype.currentTransform.call(this, transformation) || null;\n };\n\n Group.prototype.containsPoint = function containsPoint (point, parentTransform) {\n if (this.visible()) {\n var children = this.children;\n var transform = this.currentTransform(parentTransform);\n for (var idx = 0; idx < children.length; idx++) {\n if (children[idx].containsPoint(point, transform)) {\n return true;\n }\n }\n }\n return false;\n };\n\n Group.prototype._reparent = function _reparent (elements, newParent) {\n var this$1 = this;\n\n for (var i = 0; i < elements.length; i++) {\n var child = elements[i];\n var parent = child.parent;\n if (parent && parent !== this$1 && parent.remove) {\n parent.remove(child);\n }\n\n child.parent = newParent;\n }\n };\n\n Object.defineProperties( Group.prototype, prototypeAccessors );\n\n return Group;\n}(traversable(Element, \"children\")));\n\nexport default Group;","export function swing(position) {\n return 0.5 - Math.cos(position * Math.PI) / 2;\n}\n\nexport function linear(position) {\n return position;\n}\n\nexport function easeOutElastic(position, time, start, diff) {\n var s = 1.70158,\n p = 0,\n a = diff;\n\n if (position === 0) {\n return start;\n }\n\n if (position === 1) {\n return start + diff;\n }\n\n if (!p) {\n p = 0.5;\n }\n\n if (a < Math.abs(diff)) {\n a = diff;\n s = p / 4;\n } else {\n s = p / (2 * Math.PI) * Math.asin(diff / a);\n }\n\n return a * Math.pow(2, -10 * position) *\n Math.sin((Number(position) - s) * (1.1 * Math.PI) / p) + diff + start;\n}\n","var animationFrameProxy = function (callback) {\n var wnd = typeof window !== \"undefined\" ? window : {};\n var animationFrame = wnd.requestAnimationFrame ||\n wnd.webkitRequestAnimationFrame ||\n wnd.mozRequestAnimationFrame ||\n wnd.oRequestAnimationFrame ||\n wnd.msRequestAnimationFrame ||\n function(callback) { setTimeout(callback, 1000 / 60); };\n\n animationFrameProxy = function (callback) { return animationFrame.call(wnd, callback); };\n animationFrameProxy(callback);\n};\n\nexport default animationFrameProxy;\n","import { Class } from '../common';\n\nvar instance;\n\nvar AnimationFactory = (function (Class) {\n function AnimationFactory() {\n Class.call(this);\n\n this._items = [];\n }\n\n if ( Class ) AnimationFactory.__proto__ = Class;\n AnimationFactory.prototype = Object.create( Class && Class.prototype );\n AnimationFactory.prototype.constructor = AnimationFactory;\n\n var staticAccessors = { current: { configurable: true } };\n\n staticAccessors.current.get = function () {\n if (!instance) {\n instance = new AnimationFactory();\n }\n\n return instance;\n };\n\n AnimationFactory.prototype.register = function register (name, type) {\n this._items.push({\n name: name,\n type: type\n });\n };\n\n AnimationFactory.prototype.create = function create (element, options) {\n var items = this._items;\n var match;\n\n if (options && options.type) {\n var type = options.type.toLowerCase();\n for (var i = 0; i < items.length; i++) {\n if (items[i].name.toLowerCase() === type) {\n match = items[i];\n break;\n }\n }\n }\n\n if (match) {\n return new match.type(element, options);\n }\n };\n\n Object.defineProperties( AnimationFactory, staticAccessors );\n\n return AnimationFactory;\n}(Class));\n\nexport default AnimationFactory;\n","import * as easingFunctions from './easing-functions';\nimport { limitValue, now } from '../util';\nimport { animationFrame, Class } from '../common';\nimport AnimationFactory from './animation-factory';\n\nvar Animation = (function (Class) {\n function Animation(element, options) {\n Class.call(this);\n\n this.options = Object.assign({}, this.options, options);\n this.element = element;\n }\n\n if ( Class ) Animation.__proto__ = Class;\n Animation.prototype = Object.create( Class && Class.prototype );\n Animation.prototype.constructor = Animation;\n\n var prototypeAccessors = { options: { configurable: true } };\n\n Animation.create = function create (type, element, options) {\n return AnimationFactory.current.create(type, element, options);\n };\n\n prototypeAccessors.options.get = function () {\n return this._options || {\n duration: 500,\n easing: \"swing\"\n };\n };\n\n prototypeAccessors.options.set = function (value) {\n this._options = value;\n };\n\n Animation.prototype.setup = function setup () {};\n Animation.prototype.step = function step () {};\n\n Animation.prototype.play = function play () {\n var this$1 = this;\n\n var options = this.options;\n var duration = options.duration;\n var delay = options.delay; if ( delay === void 0 ) delay = 0;\n var easing = easingFunctions[options.easing];\n var start = now() + delay;\n var finish = start + duration;\n\n if (duration === 0) {\n this.step(1);\n this.abort();\n } else {\n setTimeout(function () {\n var loop = function () {\n if (this$1._stopped) {\n return;\n }\n\n var wallTime = now();\n\n var time = limitValue(wallTime - start, 0, duration);\n var position = time / duration;\n var easingPosition = easing(position, time, 0, 1, duration);\n\n this$1.step(easingPosition);\n\n if (wallTime < finish) {\n animationFrame(loop);\n } else {\n this$1.abort();\n }\n };\n\n loop();\n }, delay);\n }\n };\n\n Animation.prototype.abort = function abort () {\n this._stopped = true;\n };\n\n Animation.prototype.destroy = function destroy () {\n this.abort();\n };\n\n Object.defineProperties( Animation.prototype, prototypeAccessors );\n\n return Animation;\n}(Class));\n\nexport default Animation;\n","import { drawing as draw } from '@progress/kendo-drawing';\n\nimport { WHITE } from '../common/constants';\nimport { Class, deepExtend, defined, valueOrDefault, autoTextColor } from '../common';\n\nvar ChartElement = (function (Class) {\n function ChartElement(options) {\n Class.call(this);\n\n this.children = [];\n\n this.options = deepExtend({}, this.options, this.initUserOptions(options));\n }\n\n if ( Class ) ChartElement.__proto__ = Class;\n ChartElement.prototype = Object.create( Class && Class.prototype );\n ChartElement.prototype.constructor = ChartElement;\n\n ChartElement.prototype.initUserOptions = function initUserOptions (options) {\n return options;\n };\n\n ChartElement.prototype.reflow = function reflow (targetBox) {\n var children = this.children;\n var box;\n\n for (var i = 0; i < children.length; i++) {\n var currentChild = children[i];\n currentChild.reflow(targetBox);\n\n box = box ? box.wrap(currentChild.box) : currentChild.box.clone();\n }\n\n this.box = box || targetBox;\n };\n\n ChartElement.prototype.destroy = function destroy () {\n var children = this.children;\n\n if (this.animation) {\n this.animation.destroy();\n }\n\n for (var i = 0; i < children.length; i++) {\n children[i].destroy();\n }\n };\n\n ChartElement.prototype.getRoot = function getRoot () {\n var parent = this.parent;\n\n return parent ? parent.getRoot() : null;\n };\n\n ChartElement.prototype.getSender = function getSender () {\n var service = this.getService();\n if (service) {\n return service.sender;\n }\n };\n\n ChartElement.prototype.getService = function getService () {\n var element = this;\n while (element) {\n if (element.chartService) {\n return element.chartService;\n }\n element = element.parent;\n }\n };\n\n ChartElement.prototype.translateChildren = function translateChildren (dx, dy) {\n var children = this.children;\n var childrenCount = children.length;\n\n for (var i = 0; i < childrenCount; i++) {\n children[i].box.translate(dx, dy);\n }\n };\n\n ChartElement.prototype.append = function append () {\n var arguments$1 = arguments;\n var this$1 = this;\n\n for (var i = 0; i < arguments.length; i++) {\n var item = arguments$1[i];\n this$1.children.push(item);\n item.parent = this$1;\n }\n };\n\n ChartElement.prototype.renderVisual = function renderVisual () {\n if (this.options.visible === false) {\n return;\n }\n\n this.createVisual();\n\n this.addVisual();\n\n this.renderChildren();\n\n this.createAnimation();\n this.renderComplete();\n };\n\n ChartElement.prototype.addVisual = function addVisual () {\n if (this.visual) {\n this.visual.chartElement = this;\n\n if (this.parent) {\n this.parent.appendVisual(this.visual);\n }\n }\n };\n\n ChartElement.prototype.renderChildren = function renderChildren () {\n var children = this.children;\n var length = children.length;\n for (var i = 0; i < length; i++) {\n children[i].renderVisual();\n }\n };\n\n ChartElement.prototype.createVisual = function createVisual () {\n this.visual = new draw.Group({\n zIndex: this.options.zIndex,\n visible: valueOrDefault(this.options.visible, true)\n });\n };\n\n ChartElement.prototype.createAnimation = function createAnimation () {\n if (this.visual && this.options.animation) {\n this.animation = draw.Animation.create(\n this.visual, this.options.animation\n );\n }\n };\n\n ChartElement.prototype.appendVisual = function appendVisual (childVisual) {\n if (!childVisual.chartElement) {\n childVisual.chartElement = this;\n }\n\n if (childVisual.options.noclip) {\n this.clipRoot().visual.append(childVisual);\n } else if (defined(childVisual.options.zIndex)) {\n this.stackRoot().stackVisual(childVisual);\n } else if (this.isStackRoot) {\n this.stackVisual(childVisual);\n } else if (this.visual) {\n this.visual.append(childVisual);\n } else {\n // Allow chart elements without visuals to\n // pass through child visuals\n this.parent.appendVisual(childVisual);\n }\n };\n\n ChartElement.prototype.clipRoot = function clipRoot () {\n if (this.parent) {\n return this.parent.clipRoot();\n }\n\n return this;\n };\n\n ChartElement.prototype.stackRoot = function stackRoot () {\n if (this.parent) {\n return this.parent.stackRoot();\n }\n\n return this;\n };\n\n ChartElement.prototype.stackVisual = function stackVisual (childVisual) {\n var zIndex = childVisual.options.zIndex || 0;\n var visuals = this.visual.children;\n var length = visuals.length;\n var pos;\n\n for (pos = 0; pos < length; pos++) {\n var sibling = visuals[pos];\n var here = valueOrDefault(sibling.options.zIndex, 0);\n if (here > zIndex) {\n break;\n }\n }\n\n this.visual.insert(pos, childVisual);\n };\n\n ChartElement.prototype.traverse = function traverse (callback) {\n var children = this.children;\n var length = children.length;\n\n for (var i = 0; i < length; i++) {\n var child = children[i];\n\n callback(child);\n if (child.traverse) {\n child.traverse(callback);\n }\n }\n };\n\n ChartElement.prototype.closest = function closest (match) {\n var element = this;\n var matched = false;\n\n while (element && !matched) {\n matched = match(element);\n\n if (!matched) {\n element = element.parent;\n }\n }\n\n if (matched) {\n return element;\n }\n };\n\n ChartElement.prototype.renderComplete = function renderComplete () {};\n\n ChartElement.prototype.hasHighlight = function hasHighlight () {\n var options = (this.options || {}).highlight;\n return !(!this.createHighlight || (options && options.visible === false) || this.visible === false);\n };\n\n ChartElement.prototype.toggleHighlight = function toggleHighlight (show, opacity) {\n var this$1 = this;\n\n var options = (this.options || {}).highlight || {};\n var customVisual = options.visual;\n var highlight = this._highlight;\n\n if (!highlight) {\n var highlightOptions = {\n fill: {\n color: WHITE,\n opacity: opacity || 0.2\n },\n stroke: {\n color: WHITE,\n width: 1,\n opacity: opacity || 0.2\n }\n };\n\n if (customVisual) {\n highlight = this._highlight = customVisual(\n Object.assign(this.highlightVisualArgs(), {\n createVisual: function () { return this$1.createHighlight(highlightOptions); },\n sender: this.getSender(),\n series: this.series,\n dataItem: this.dataItem,\n category: this.category,\n value: this.value,\n percentage: this.percentage,\n runningTotal: this.runningTotal,\n total: this.total\n })\n );\n\n if (!highlight) {\n return;\n }\n } else {\n highlight = this._highlight = this.createHighlight(highlightOptions);\n }\n\n if (!defined(highlight.options.zIndex)) {\n highlight.options.zIndex = valueOrDefault(options.zIndex, this.options.zIndex);\n }\n\n this.appendVisual(highlight);\n }\n\n highlight.visible(show);\n };\n\n ChartElement.prototype.toggleFocusHighlight = function toggleFocusHighlight (show) {\n var options = ((this.options || {}).accessibility || {}).highlight || {};\n var focusHighlight = this._focusHighlight;\n\n if (!show && !focusHighlight) {\n return;\n }\n\n if (!focusHighlight) {\n var rootBackground = this.getRoot().options.background;\n var highlightColor = autoTextColor(rootBackground);\n var focusHighlightOptions = {\n fill: {\n opacity: options.opacity,\n color: options.color\n },\n stroke: Object.assign({}, {color: highlightColor}, options.border),\n zIndex: options.zIndex\n };\n\n focusHighlight = this._focusHighlight = this.createFocusHighlight(focusHighlightOptions);\n\n this.appendVisual(focusHighlight);\n }\n\n focusHighlight.visible(show);\n };\n\n ChartElement.prototype.createGradientOverlay = function createGradientOverlay (element, options, gradientOptions) {\n var overlay = new draw.Path(Object.assign({\n stroke: {\n color: \"none\"\n },\n fill: this.createGradient(gradientOptions),\n closed: element.options.closed\n }, options));\n\n overlay.segments.elements(element.segments.elements());\n\n return overlay;\n };\n\n ChartElement.prototype.createGradient = function createGradient (options) {\n if (this.parent) {\n return this.parent.createGradient(options);\n }\n };\n\n ChartElement.prototype.supportsPointInactiveOpacity = function supportsPointInactiveOpacity () {\n return true;\n };\n\n return ChartElement;\n}(Class));\n\nChartElement.prototype.options = { };\n\nexport default ChartElement;\n","import { drawing as draw } from '@progress/kendo-drawing';\n\nimport ChartElement from './chart-element';\nimport Box from './box';\n\nimport { BLACK, LEFT, TOP, X, Y } from '../common/constants';\nimport { getSpacing, setDefaultOptions, valueOrDefault } from '../common';\n\nvar BoxElement = (function (ChartElement) {\n function BoxElement(options) {\n ChartElement.call(this, options);\n\n this.options.margin = getSpacing(this.options.margin);\n this.options.padding = getSpacing(this.options.padding);\n }\n\n if ( ChartElement ) BoxElement.__proto__ = ChartElement;\n BoxElement.prototype = Object.create( ChartElement && ChartElement.prototype );\n BoxElement.prototype.constructor = BoxElement;\n\n BoxElement.prototype.reflow = function reflow (targetBox) {\n var this$1 = this;\n\n var options = this.options;\n var width = options.width;\n var height = options.height;\n var shrinkToFit = options.shrinkToFit;\n var hasSetSize = width && height;\n var margin = options.margin;\n var padding = options.padding;\n var borderWidth = options.border.width;\n var box;\n\n var reflowPaddingBox = function () {\n this$1.align(targetBox, X, options.align);\n this$1.align(targetBox, Y, options.vAlign);\n this$1.paddingBox = box.clone().unpad(margin).unpad(borderWidth);\n };\n\n var contentBox = targetBox.clone();\n if (hasSetSize) {\n contentBox.x2 = contentBox.x1 + width;\n contentBox.y2 = contentBox.y1 + height;\n }\n\n if (shrinkToFit) {\n contentBox.unpad(margin).unpad(borderWidth).unpad(padding);\n }\n\n ChartElement.prototype.reflow.call(this, contentBox);\n\n if (hasSetSize) {\n box = this.box = new Box(0, 0, width, height);\n } else {\n box = this.box;\n }\n\n if (shrinkToFit && hasSetSize) {\n reflowPaddingBox();\n contentBox = this.contentBox = this.paddingBox.clone().unpad(padding);\n } else {\n contentBox = this.contentBox = box.clone();\n box.pad(padding).pad(borderWidth).pad(margin);\n reflowPaddingBox();\n }\n\n this.translateChildren(\n box.x1 - contentBox.x1 + margin.left + borderWidth + padding.left,\n box.y1 - contentBox.y1 + margin.top + borderWidth + padding.top\n );\n\n var children = this.children;\n for (var i = 0; i < children.length; i++) {\n var item = children[i];\n item.reflow(item.box);\n }\n };\n\n BoxElement.prototype.align = function align (targetBox, axis, alignment) {\n this.box.align(targetBox, axis, alignment);\n };\n\n BoxElement.prototype.hasBox = function hasBox () {\n var options = this.options;\n return options.border.width || options.background;\n };\n\n BoxElement.prototype.createVisual = function createVisual () {\n ChartElement.prototype.createVisual.call(this);\n\n var options = this.options;\n if (options.visible && this.hasBox()) {\n this.visual.append(draw.Path.fromRect(\n this.paddingBox.toRect(),\n this.visualStyle()\n ));\n }\n };\n\n BoxElement.prototype.visualStyle = function visualStyle () {\n var options = this.options;\n var border = options.border || {};\n\n return {\n stroke: {\n width: border.width,\n color: border.color,\n opacity: valueOrDefault(border.opacity, options.opacity),\n dashType: border.dashType\n },\n fill: {\n color: options.background,\n opacity: options.opacity\n },\n cursor: options.cursor\n };\n };\n\n return BoxElement;\n}(ChartElement));\n\nsetDefaultOptions(BoxElement, {\n align: LEFT,\n vAlign: TOP,\n margin: {},\n padding: {},\n border: {\n color: BLACK,\n width: 0\n },\n background: \"\",\n shrinkToFit: false,\n width: 0,\n height: 0,\n visible: true\n});\n\nexport default BoxElement;","export default function addAccessibilityAttributesToVisual(visual, accessibilityOptions) {\n if (accessibilityOptions) {\n visual.options.className = accessibilityOptions.className;\n visual.options.role = accessibilityOptions.role;\n visual.options.ariaLabel = accessibilityOptions.ariaLabel;\n visual.options.ariaRoleDescription = accessibilityOptions.ariaRoleDescription;\n visual.options.ariaChecked = accessibilityOptions.ariaChecked;\n }\n}\n","import { drawing as draw, geometry as geom } from '@progress/kendo-drawing';\nimport { round, setDefaultOptions } from '../common';\nimport { CENTER, CIRCLE, COORD_PRECISION, CROSS, ROUNDED_RECT, TRIANGLE } from '../common/constants';\nimport { valueOrDefault } from '../drawing-utils';\nimport BoxElement from './box-element';\nimport addAccessibilityAttributesToVisual from './utils/add-accessibility-attributes-to-visual';\n\nvar ShapeElement = (function (BoxElement) {\n function ShapeElement(options, pointData) {\n BoxElement.call(this, options);\n\n this.pointData = pointData;\n }\n\n if ( BoxElement ) ShapeElement.__proto__ = BoxElement;\n ShapeElement.prototype = Object.create( BoxElement && BoxElement.prototype );\n ShapeElement.prototype.constructor = ShapeElement;\n\n ShapeElement.prototype.getElement = function getElement () {\n var ref = this;\n var options = ref.options;\n var box = ref.paddingBox;\n var type = options.type;\n var rotation = options.rotation;\n var center = box.center();\n var halfWidth = box.width() / 2;\n var halfHeight = box.height() / 2;\n\n if (!options.visible || !this.hasBox()) {\n return null;\n }\n\n var style = this.visualStyle();\n var element;\n\n if (type === CIRCLE) {\n element = new draw.Circle(\n new geom.Circle([\n round(box.x1 + halfWidth, COORD_PRECISION),\n round(box.y1 + halfHeight, COORD_PRECISION)\n ], Math.min(halfWidth, halfHeight)),\n style\n );\n } else if (type === TRIANGLE) {\n element = draw.Path.fromPoints([\n [ box.x1 + halfWidth, box.y1 ],\n [ box.x1, box.y2 ],\n [ box.x2, box.y2 ]\n ], style).close();\n } else if (type === CROSS) {\n element = new draw.MultiPath(style);\n\n element.moveTo(box.x1, box.y1).lineTo(box.x2, box.y2);\n element.moveTo(box.x1, box.y2).lineTo(box.x2, box.y1);\n } else {\n var rect = box.toRect();\n if (type === ROUNDED_RECT) {\n var borderRadius = valueOrDefault(options.borderRadius, rect.width() / 5);\n rect.setCornerRadius(borderRadius);\n }\n\n element = draw.Path.fromRect(rect, style);\n }\n\n if (rotation) {\n element.transform(geom.transform()\n .rotate(-rotation, [ center.x, center.y ])\n );\n }\n\n element.options.zIndex = options.zIndex;\n\n return element;\n };\n\n ShapeElement.prototype.createElement = function createElement () {\n var this$1 = this;\n\n var customVisual = this.options.visual;\n var pointData = this.pointData || {};\n var visual;\n\n if (customVisual) {\n visual = customVisual({\n value: pointData.value,\n dataItem: pointData.dataItem,\n sender: this.getSender(),\n series: pointData.series,\n category: pointData.category,\n rect: this.paddingBox.toRect(),\n options: this.visualOptions(),\n createVisual: function () { return this$1.getElement(); }\n });\n } else {\n visual = this.getElement();\n }\n\n return visual;\n };\n\n ShapeElement.prototype.visualOptions = function visualOptions () {\n var options = this.options;\n return {\n background: options.background,\n border: options.border,\n margin: options.margin,\n padding: options.padding,\n type: options.type,\n size: options.width,\n visible: options.visible\n };\n };\n\n ShapeElement.prototype.createVisual = function createVisual () {\n this.visual = this.createElement();\n\n addAccessibilityAttributesToVisual(this.visual, this.options.accessibilityOptions);\n };\n\n return ShapeElement;\n}(BoxElement));\n\nsetDefaultOptions(ShapeElement, {\n type: CIRCLE,\n align: CENTER,\n vAlign: CENTER\n});\n\nexport default ShapeElement;\n","import ElementsArray from '../shapes/elements-array';\n\nvar StopsArray = (function (ElementsArray) {\n function StopsArray () {\n ElementsArray.apply(this, arguments);\n }\n\n if ( ElementsArray ) StopsArray.__proto__ = ElementsArray;\n StopsArray.prototype = Object.create( ElementsArray && ElementsArray.prototype );\n StopsArray.prototype.constructor = StopsArray;\n\n StopsArray.prototype._change = function _change () {\n this.optionsChange({\n field: \"stops\"\n });\n };\n\n return StopsArray;\n}(ElementsArray));\n\nexport default StopsArray;","import { defined } from '../util';\n\nfunction optionsAccessor(name) {\n return function(value) {\n if (defined(value)) {\n this.options.set(name, value);\n return this;\n }\n\n return this.options.get(name);\n };\n}\n\nfunction defineOptionsAccessors(fn, names) {\n for (var i = 0; i < names.length; i++) {\n fn[names[i]] = optionsAccessor(names[i]);\n }\n}\n\nvar withOptions = function (TBase, names) {\n var result = (function (TBase) {\n function result () {\n TBase.apply(this, arguments);\n }if ( TBase ) result.__proto__ = TBase;\n result.prototype = Object.create( TBase && TBase.prototype );\n result.prototype.constructor = result;\n\n \n\n return result;\n }(TBase));\n defineOptionsAccessors(result.prototype, names);\n\n return result;\n};\n\nexport default withOptions;\n","import OptionsStore from '../core/options-store';\nimport withOptions from '../mixins/with-options';\nimport HasObservers from '../core/has-observers';\nimport { defined } from '../util';\n\n\nvar options = [ \"offset\", \"color\", \"opacity\" ];\n\nvar GradientStop = (function (superclass) {\n function GradientStop(offset, color, opacity) {\n superclass.call(this);\n\n this.options = new OptionsStore({\n offset: offset,\n color: color,\n opacity: defined(opacity) ? opacity : 1\n });\n\n this.options.addObserver(this);\n }\n\n if ( superclass ) GradientStop.__proto__ = superclass;\n GradientStop.prototype = Object.create( superclass && superclass.prototype );\n GradientStop.prototype.constructor = GradientStop;\n\n GradientStop.create = function create (arg) {\n if (defined(arg)) {\n var stop;\n if (arg instanceof GradientStop) {\n stop = arg;\n } else if (arg.length > 1) {\n stop = new GradientStop(arg[0], arg[1], arg[2]);\n } else {\n stop = new GradientStop(arg.offset, arg.color, arg.opacity);\n }\n\n return stop;\n }\n };\n\n return GradientStop;\n}(withOptions(HasObservers, options)));\n\nexport default GradientStop;\n","import StopsArray from './stops-array';\nimport GradientStop from './gradient-stop';\nimport HasObservers from '../core/has-observers';\nimport { defined, definitionId } from '../util';\n\nvar Gradient = (function (HasObservers) {\n function Gradient(options) {\n if ( options === void 0 ) options = {};\n\n HasObservers.call(this);\n\n this.stops = new StopsArray(this._createStops(options.stops));\n this.stops.addObserver(this);\n this._userSpace = options.userSpace;\n this.id = definitionId();\n }\n\n if ( HasObservers ) Gradient.__proto__ = HasObservers;\n Gradient.prototype = Object.create( HasObservers && HasObservers.prototype );\n Gradient.prototype.constructor = Gradient;\n\n var prototypeAccessors = { nodeType: { configurable: true } };\n\n prototypeAccessors.nodeType.get = function () {\n return \"Gradient\";\n };\n\n Gradient.prototype.userSpace = function userSpace (value) {\n if (defined(value)) {\n this._userSpace = value;\n this.optionsChange();\n return this;\n }\n\n return this._userSpace;\n };\n\n Gradient.prototype._createStops = function _createStops (stops) {\n if ( stops === void 0 ) stops = [];\n\n var result = [];\n for (var idx = 0; idx < stops.length; idx++) {\n result.push(GradientStop.create(stops[idx]));\n }\n\n return result;\n };\n\n Gradient.prototype.addStop = function addStop (offset, color, opacity) {\n this.stops.push(new GradientStop(offset, color, opacity));\n };\n\n Gradient.prototype.removeStop = function removeStop (stop) {\n var index = this.stops.indexOf(stop);\n if (index >= 0) {\n this.stops.splice(index, 1);\n }\n };\n\n Gradient.prototype.optionsChange = function optionsChange (e) {\n this.trigger(\"optionsChange\", {\n field: \"gradient\" + (e ? \".\" + e.field : \"\"),\n value: this\n });\n };\n\n Gradient.prototype.geometryChange = function geometryChange () {\n this.optionsChange();\n };\n\n Object.defineProperties( Gradient.prototype, prototypeAccessors );\n\n return Gradient;\n}(HasObservers));\n\nexport default Gradient;\n","import withPoints from '../mixins/with-points';\nimport Point from '../geometry/point';\nimport Gradient from './gradient';\n\n\nvar points = [ \"start\", \"end\" ];\n\nvar LinearGradient = (function (superclass) {\n function LinearGradient(options) {\n if ( options === void 0 ) options = {};\n\n superclass.call(this, options);\n\n this.start(options.start || new Point());\n this.end(options.end || new Point(1, 0));\n }\n\n if ( superclass ) LinearGradient.__proto__ = superclass;\n LinearGradient.prototype = Object.create( superclass && superclass.prototype );\n LinearGradient.prototype.constructor = LinearGradient;\n\n return LinearGradient;\n}(withPoints(Gradient, points)));\n\nexport default LinearGradient;\n","import withPoints from '../mixins/with-points';\nimport Point from '../geometry/point';\nimport Gradient from './gradient';\nimport { defined } from '../util';\n\n\nvar RadialGradient = (function (superclass) {\n function RadialGradient(options) {\n if ( options === void 0 ) options = {};\n\n superclass.call(this, options);\n\n this.center(options.center || new Point());\n this._radius = defined(options.radius) ? options.radius : 1;\n this._fallbackFill = options.fallbackFill;\n }\n\n if ( superclass ) RadialGradient.__proto__ = superclass;\n RadialGradient.prototype = Object.create( superclass && superclass.prototype );\n RadialGradient.prototype.constructor = RadialGradient;\n\n RadialGradient.prototype.radius = function radius (value) {\n if (defined(value)) {\n this._radius = value;\n this.geometryChange();\n return this;\n }\n\n return this._radius;\n };\n\n RadialGradient.prototype.fallbackFill = function fallbackFill (value) {\n if (defined(value)) {\n this._fallbackFill = value;\n this.optionsChange();\n return this;\n }\n\n return this._fallbackFill;\n };\n\n return RadialGradient;\n}(withPoints(Gradient, [ \"center\" ])));\n\nexport default RadialGradient;\n","import { WHITE } from '../common/constants';\n\nvar LINEAR = \"linear\";\nvar RADIAL = \"radial\";\n\nvar GRADIENTS = {\n glass: {\n type: LINEAR,\n rotation: 0,\n stops: [ {\n offset: 0,\n color: WHITE,\n opacity: 0\n }, {\n offset: 0.25,\n color: WHITE,\n opacity: 0.3\n }, {\n offset: 1,\n color: WHITE,\n opacity: 0\n } ]\n },\n sharpBevel: {\n type: RADIAL,\n stops: [ {\n offset: 0,\n color: WHITE,\n opacity: 0.55\n }, {\n offset: 0.65,\n color: WHITE,\n opacity: 0\n }, {\n offset: 0.95,\n color: WHITE,\n opacity: 0.25\n } ]\n },\n roundedBevel: {\n type: RADIAL,\n stops: [ {\n offset: 0.33,\n color: WHITE,\n opacity: 0.06\n }, {\n offset: 0.83,\n color: WHITE,\n opacity: 0.2\n }, {\n offset: 0.95,\n color: WHITE,\n opacity: 0\n } ]\n },\n roundedGlass: {\n type: RADIAL,\n supportVML: false,\n stops: [ {\n offset: 0,\n color: WHITE,\n opacity: 0\n }, {\n offset: 0.5,\n color: WHITE,\n opacity: 0.3\n }, {\n offset: 0.99,\n color: WHITE,\n opacity: 0\n } ]\n },\n sharpGlass: {\n type: RADIAL,\n supportVML: false,\n stops: [ {\n offset: 0,\n color: WHITE,\n opacity: 0.2\n }, {\n offset: 0.15,\n color: WHITE,\n opacity: 0.15\n }, {\n offset: 0.17,\n color: WHITE,\n opacity: 0.35\n }, {\n offset: 0.85,\n color: WHITE,\n opacity: 0.05\n }, {\n offset: 0.87,\n color: WHITE,\n opacity: 0.15\n }, {\n offset: 0.99,\n color: WHITE,\n opacity: 0\n } ]\n },\n bubbleShadow: {\n type: RADIAL,\n center: [ 0.5, 0.5 ],\n radius: 0.5\n }\n};\n\nexport default GRADIENTS;","import Box from '../box';\nimport { grep } from '../../common';\n\nexport default function boxDiff(r, s) {\n if (r.x1 === s.x1 && r.y1 === s.y1 && r.x2 === s.x2 && r.y2 === s.y2) {\n return s;\n }\n\n var a = Math.min(r.x1, s.x1);\n var b = Math.max(r.x1, s.x1);\n var c = Math.min(r.x2, s.x2);\n var d = Math.max(r.x2, s.x2);\n var e = Math.min(r.y1, s.y1);\n var f = Math.max(r.y1, s.y1);\n var g = Math.min(r.y2, s.y2);\n var h = Math.max(r.y2, s.y2);\n var boxes = [];\n\n // X = intersection, 0-7 = possible difference areas\n // h +-+-+-+\n // . |5|6|7|\n // g +-+-+-+\n // . |3|X|4|\n // f +-+-+-+\n // . |0|1|2|\n // e +-+-+-+\n // . a b c d\n\n // we'll always have rectangles 1, 3, 4 and 6\n boxes[0] = new Box(b, e, c, f);\n boxes[1] = new Box(a, f, b, g);\n boxes[2] = new Box(c, f, d, g);\n boxes[3] = new Box(b, g, c, h);\n\n // decide which corners\n if (r.x1 === a && r.y1 === e || s.x1 === a && s.y1 === e) { // corners 0 and 7\n boxes[4] = new Box(a, e, b, f);\n boxes[5] = new Box(c, g, d, h);\n } else { // corners 2 and 5\n boxes[4] = new Box(c, e, d, f);\n boxes[5] = new Box(a, g, b, h);\n }\n\n return grep(boxes, function(box) {\n return box.height() > 0 && box.width() > 0;\n })[0];\n}","import { drawing as draw } from '@progress/kendo-drawing';\n\nimport ChartElement from './chart-element';\nimport GRADIENTS from './gradients';\nimport Box from './box';\n\nimport boxDiff from './utils/box-diff';\n\nimport { DEFAULT_WIDTH, DEFAULT_HEIGHT, WHITE, BLACK } from '../common/constants';\nimport { getSpacing, objectKey, setDefaultOptions } from '../common';\n\nvar RootElement = (function (ChartElement) {\n function RootElement(options) {\n ChartElement.call(this, options);\n\n var rootOptions = this.options;\n rootOptions.width = parseInt(rootOptions.width, 10);\n rootOptions.height = parseInt(rootOptions.height, 10);\n\n this.gradients = {};\n }\n\n if ( ChartElement ) RootElement.__proto__ = ChartElement;\n RootElement.prototype = Object.create( ChartElement && ChartElement.prototype );\n RootElement.prototype.constructor = RootElement;\n\n RootElement.prototype.reflow = function reflow () {\n var ref = this;\n var options = ref.options;\n var children = ref.children;\n var currentBox = new Box(0, 0, options.width, options.height);\n\n this.box = currentBox.unpad(options.margin);\n\n for (var i = 0; i < children.length; i++) {\n children[i].reflow(currentBox);\n currentBox = boxDiff(currentBox, children[i].box) || new Box();\n }\n };\n\n RootElement.prototype.createVisual = function createVisual () {\n this.visual = new draw.Group();\n this.createBackground();\n };\n\n RootElement.prototype.createBackground = function createBackground () {\n var options = this.options;\n var border = options.border || {};\n var box = this.box.clone().pad(options.margin).unpad(border.width);\n\n var background = draw.Path.fromRect(box.toRect(), {\n stroke: {\n color: border.width ? border.color : \"\",\n width: border.width,\n dashType: border.dashType\n },\n fill: {\n color: options.background,\n opacity: options.opacity\n },\n zIndex: -10\n });\n\n this.visual.append(background);\n };\n\n RootElement.prototype.getRoot = function getRoot () {\n return this;\n };\n\n RootElement.prototype.createGradient = function createGradient (options) {\n var gradients = this.gradients;\n var hashCode = objectKey(options);\n var gradient = GRADIENTS[options.gradient];\n var drawingGradient;\n\n if (gradients[hashCode]) {\n drawingGradient = gradients[hashCode];\n } else {\n var gradientOptions = Object.assign({}, gradient, options);\n if (gradient.type === \"linear\") {\n drawingGradient = new draw.LinearGradient(gradientOptions);\n } else {\n if (options.innerRadius) {\n gradientOptions.stops = innerRadialStops(gradientOptions);\n }\n drawingGradient = new draw.RadialGradient(gradientOptions);\n drawingGradient.supportVML = gradient.supportVML !== false;\n }\n gradients[hashCode] = drawingGradient;\n }\n\n return drawingGradient;\n };\n\n RootElement.prototype.cleanGradients = function cleanGradients () {\n var gradients = this.gradients;\n for (var hashCode in gradients) {\n gradients[hashCode]._observers = [];//add clear observers method in drawing ObserversMixin\n }\n };\n\n RootElement.prototype.size = function size () {\n var options = this.options;\n return new Box(0, 0, options.width, options.height);\n };\n\n return RootElement;\n}(ChartElement));\n\nsetDefaultOptions(RootElement, {\n width: DEFAULT_WIDTH,\n height: DEFAULT_HEIGHT,\n background: WHITE,\n border: {\n color: BLACK,\n width: 0\n },\n margin: getSpacing(5),\n zIndex: -2\n});\n\nfunction innerRadialStops(options) {\n var stops = options.stops;\n var usedSpace = ((options.innerRadius / options.radius) * 100);\n var length = stops.length;\n var currentStops = [];\n\n for (var i = 0; i < length; i++) {\n var currentStop = Object.assign({}, stops[i]);\n currentStop.offset = (currentStop.offset * (100 - usedSpace) + usedSpace) / 100;\n currentStops.push(currentStop);\n }\n\n return currentStops;\n}\n\nexport default RootElement;","import ChartElement from './chart-element';\nimport Box from './box';\n\nimport { X, Y, WIDTH, HEIGHT, RIGHT, BOTTOM, CENTER } from '../common/constants';\nimport { round, setDefaultOptions } from '../common';\n\nvar FloatElement = (function (ChartElement) {\n function FloatElement(options) {\n ChartElement.call(this, options);\n this._initDirection();\n }\n\n if ( ChartElement ) FloatElement.__proto__ = ChartElement;\n FloatElement.prototype = Object.create( ChartElement && ChartElement.prototype );\n FloatElement.prototype.constructor = FloatElement;\n\n FloatElement.prototype._initDirection = function _initDirection () {\n var options = this.options;\n if (options.vertical) {\n this.groupAxis = X;\n this.elementAxis = Y;\n this.groupSizeField = WIDTH;\n this.elementSizeField = HEIGHT;\n this.groupSpacing = options.spacing;\n this.elementSpacing = options.vSpacing;\n } else {\n this.groupAxis = Y;\n this.elementAxis = X;\n this.groupSizeField = HEIGHT;\n this.elementSizeField = WIDTH;\n this.groupSpacing = options.vSpacing;\n this.elementSpacing = options.spacing;\n }\n };\n\n FloatElement.prototype.reflow = function reflow (targetBox) {\n this.box = targetBox.clone();\n this.reflowChildren();\n };\n\n FloatElement.prototype.reflowChildren = function reflowChildren () {\n var this$1 = this;\n\n var ref = this;\n var box = ref.box;\n var elementAxis = ref.elementAxis;\n var groupAxis = ref.groupAxis;\n var elementSizeField = ref.elementSizeField;\n var groupSizeField = ref.groupSizeField;\n var ref$1 = this.groupOptions();\n var groups = ref$1.groups;\n var groupsSize = ref$1.groupsSize;\n var maxGroupElementsSize = ref$1.maxGroupElementsSize;\n var groupsCount = groups.length;\n var groupsStart = box[groupAxis + 1] + this.alignStart(groupsSize, box[groupSizeField]());\n\n if (groupsCount) {\n var groupStart = groupsStart;\n\n for (var groupIdx = 0; groupIdx < groupsCount; groupIdx++) {\n var group = groups[groupIdx];\n var groupElements = group.groupElements;\n var elementStart = box[elementAxis + 1];\n var groupElementsCount = groupElements.length;\n\n for (var idx = 0; idx < groupElementsCount; idx++) {\n var element = groupElements[idx];\n var elementSize = this$1.elementSize(element);\n var groupElementStart = groupStart + this$1.alignStart(elementSize[groupSizeField], group.groupSize);\n\n var elementBox = new Box();\n elementBox[groupAxis + 1] = groupElementStart;\n elementBox[groupAxis + 2] = groupElementStart + elementSize[groupSizeField];\n elementBox[elementAxis + 1] = elementStart;\n elementBox[elementAxis + 2] = elementStart + elementSize[elementSizeField];\n\n element.reflow(elementBox);\n\n elementStart += elementSize[elementSizeField] + this$1.elementSpacing;\n }\n groupStart += group.groupSize + this$1.groupSpacing;\n }\n box[groupAxis + 1] = groupsStart;\n box[groupAxis + 2] = groupsStart + groupsSize;\n box[elementAxis + 2] = box[elementAxis + 1] + maxGroupElementsSize;\n }\n };\n\n FloatElement.prototype.alignStart = function alignStart (size, maxSize) {\n var start = 0;\n var align = this.options.align;\n if (align === RIGHT || align === BOTTOM) {\n start = maxSize - size;\n } else if (align === CENTER) {\n start = (maxSize - size) / 2;\n }\n return start;\n };\n\n FloatElement.prototype.groupOptions = function groupOptions () {\n var this$1 = this;\n\n var ref = this;\n var box = ref.box;\n var children = ref.children;\n var elementSizeField = ref.elementSizeField;\n var groupSizeField = ref.groupSizeField;\n var elementSpacing = ref.elementSpacing;\n var groupSpacing = ref.groupSpacing;\n var maxSize = round(box[elementSizeField]());\n var childrenCount = children.length;\n var groups = [];\n\n var groupSize = 0;\n var groupElementsSize = 0;\n var groupsSize = 0;\n var maxGroupElementsSize = 0;\n var groupElements = [];\n\n for (var idx = 0; idx < childrenCount; idx++) {\n var element = children[idx];\n if (!element.box) {\n element.reflow(box);\n }\n\n var elementSize = this$1.elementSize(element);\n if (this$1.options.wrap && round(groupElementsSize + elementSpacing + elementSize[elementSizeField]) > maxSize) {\n groups.push({\n groupElements: groupElements,\n groupSize: groupSize,\n groupElementsSize: groupElementsSize\n });\n maxGroupElementsSize = Math.max(maxGroupElementsSize, groupElementsSize);\n groupsSize += groupSpacing + groupSize;\n groupSize = 0;\n groupElementsSize = 0;\n groupElements = [];\n }\n groupSize = Math.max(groupSize, elementSize[groupSizeField]);\n if (groupElementsSize > 0) {\n groupElementsSize += elementSpacing;\n }\n groupElementsSize += elementSize[elementSizeField];\n groupElements.push(element);\n }\n\n groups.push({\n groupElements: groupElements,\n groupSize: groupSize,\n groupElementsSize: groupElementsSize\n });\n maxGroupElementsSize = Math.max(maxGroupElementsSize, groupElementsSize);\n groupsSize += groupSize;\n\n return {\n groups: groups,\n groupsSize: groupsSize,\n maxGroupElementsSize: maxGroupElementsSize\n };\n };\n\n FloatElement.prototype.elementSize = function elementSize (element) {\n return {\n width: element.box.width(),\n height: element.box.height()\n };\n };\n\n FloatElement.prototype.createVisual = function createVisual () {};\n\n return FloatElement;\n}(ChartElement));\n\nsetDefaultOptions(FloatElement, {\n vertical: true,\n wrap: true,\n vSpacing: 0,\n spacing: 0\n});\n\nexport default FloatElement;","import Element from './element';\nimport Point from '../geometry/point';\nimport Rect from '../geometry/rect';\nimport toMatrix from '../geometry/to-matrix';\nimport paintable from '../mixins/paintable';\nimport withPoints from '../mixins/with-points';\nimport { defined, measureText } from '../util';\n\n\nvar DEFAULT_FONT = \"12px sans-serif\";\nvar DEFAULT_FILL = \"#000\";\n\nvar Text = (function (superclass) {\n function Text(content, position, options) {\n if ( position === void 0 ) position = new Point();\n if ( options === void 0 ) options = {};\n\n superclass.call(this, options);\n\n this.content(content);\n this.position(position);\n\n if (!this.options.font) {\n this.options.font = DEFAULT_FONT;\n }\n\n if (!defined(this.options.fill)) {\n this.fill(DEFAULT_FILL);\n }\n }\n\n if ( superclass ) Text.__proto__ = superclass;\n Text.prototype = Object.create( superclass && superclass.prototype );\n Text.prototype.constructor = Text;\n\n var prototypeAccessors = { nodeType: { configurable: true } };\n\n prototypeAccessors.nodeType.get = function () {\n return \"Text\";\n };\n\n Text.prototype.content = function content (value) {\n if (defined(value)) {\n this.options.set(\"content\", value);\n return this;\n }\n\n return this.options.get(\"content\");\n };\n\n Text.prototype.measure = function measure () {\n var metrics = measureText(this.content(), {\n font: this.options.get(\"font\")\n });\n\n return metrics;\n };\n\n Text.prototype.rect = function rect () {\n var size = this.measure();\n var pos = this.position().clone();\n return new Rect(pos, [ size.width, size.height ]);\n };\n\n Text.prototype.bbox = function bbox (transformation) {\n var combinedMatrix = toMatrix(this.currentTransform(transformation));\n return this.rect().bbox(combinedMatrix);\n };\n\n Text.prototype.rawBBox = function rawBBox () {\n return this.rect().bbox();\n };\n\n Text.prototype._containsPoint = function _containsPoint (point) {\n return this.rect().containsPoint(point);\n };\n\n Object.defineProperties( Text.prototype, prototypeAccessors );\n\n return Text;\n}(paintable(withPoints(Element, [ \"position\" ]))));\n\nexport default Text;\n","import { drawing as draw } from '@progress/kendo-drawing';\n\nimport ChartElement from './chart-element';\nimport Box from './box';\n\nimport { DEFAULT_FONT, BLACK } from '../common/constants';\nimport { setDefaultOptions } from '../common';\n\nvar DrawingText = draw.Text;\n\nvar Text = (function (ChartElement) {\n function Text(content, options) {\n ChartElement.call(this, options);\n\n this.content = content;\n\n // Calculate size\n this.reflow(new Box());\n }\n\n if ( ChartElement ) Text.__proto__ = ChartElement;\n Text.prototype = Object.create( ChartElement && ChartElement.prototype );\n Text.prototype.constructor = Text;\n\n Text.prototype.reflow = function reflow (targetBox) {\n var options = this.options;\n var size = options.size = draw.util.measureText(this.content, { font: options.font });\n\n this.baseline = size.baseline;\n\n this.box = new Box(targetBox.x1, targetBox.y1,\n targetBox.x1 + size.width, targetBox.y1 + size.height);\n };\n\n Text.prototype.createVisual = function createVisual () {\n var ref = this.options;\n var font = ref.font;\n var color = ref.color;\n var opacity = ref.opacity;\n var cursor = ref.cursor;\n var stroke = ref.stroke;\n var paintOrder = ref.paintOrder;\n\n this.visual = new DrawingText(this.content, this.box.toRect().topLeft(), {\n font: font,\n fill: { color: color, opacity: opacity },\n cursor: cursor,\n stroke: stroke,\n paintOrder: paintOrder\n });\n };\n\n return Text;\n}(ChartElement));\n\nsetDefaultOptions(Text, {\n font: DEFAULT_FONT,\n color: BLACK\n});\n\nexport default Text;\n","import Box from '../box';\n\nexport default function rectToBox(rect) {\n var origin = rect.origin;\n var bottomRight = rect.bottomRight();\n\n return new Box(origin.x, origin.y, bottomRight.x, bottomRight.y);\n}","import { drawing as draw, geometry as geom } from '@progress/kendo-drawing';\n\nimport BoxElement from './box-element';\nimport FloatElement from './float-element';\nimport Text from './text';\nimport Box from './box';\n\nimport rectToBox from './utils/rect-to-box';\n\nimport { getSpacing, deepExtend, defined } from '../common';\nimport { X, Y } from '../common/constants';\n\nvar ROWS_SPLIT_REGEX = /\\n/m;\n\nvar TextBox = (function (BoxElement) {\n function TextBox(content, options, data) {\n BoxElement.call(this, options);\n this.content = content;\n this.data = data;\n\n this._initContainer();\n if (this.options._autoReflow !== false) {\n this.reflow(new Box());\n }\n }\n\n if ( BoxElement ) TextBox.__proto__ = BoxElement;\n TextBox.prototype = Object.create( BoxElement && BoxElement.prototype );\n TextBox.prototype.constructor = TextBox;\n\n TextBox.prototype._initContainer = function _initContainer () {\n var options = this.options;\n var rows = String(this.content).split(ROWS_SPLIT_REGEX);\n var floatElement = new FloatElement({ vertical: true, align: options.align, wrap: false });\n var textOptions = deepExtend({ }, options, { opacity: 1, animation: null });\n\n this.container = floatElement;\n this.append(floatElement);\n\n for (var rowIdx = 0; rowIdx < rows.length; rowIdx++) {\n var text = new Text(rows[rowIdx].trim(), textOptions);\n floatElement.append(text);\n }\n };\n\n TextBox.prototype.reflow = function reflow (targetBox) {\n var options = this.options;\n var visualFn = options.visual;\n this.container.options.align = options.align;\n\n if (visualFn && !this._boxReflow) {\n var visualBox = targetBox;\n if (!visualBox.hasSize()) {\n this._boxReflow = true;\n this.reflow(visualBox);\n this._boxReflow = false;\n visualBox = this.box;\n }\n var visual = this.visual = visualFn(this.visualContext(visualBox));\n\n if (visual) {\n visualBox = rectToBox(visual.clippedBBox() || new geom.Rect());\n\n visual.options.zIndex = options.zIndex;\n }\n\n this.box = this.contentBox = this.paddingBox = visualBox;\n } else {\n BoxElement.prototype.reflow.call(this, targetBox);\n\n if (options.rotation) {\n var margin = getSpacing(options.margin);\n var box = this.box.unpad(margin);\n\n this.targetBox = targetBox;\n this.normalBox = box.clone();\n\n box = this.rotate();\n box.translate(margin.left - margin.right, margin.top - margin.bottom);\n\n this.rotatedBox = box.clone();\n\n box.pad(margin);\n }\n }\n };\n\n TextBox.prototype.createVisual = function createVisual () {\n var options = this.options;\n\n this.visual = new draw.Group({\n transform: this.rotationTransform(),\n zIndex: options.zIndex,\n noclip: options.noclip\n });\n\n if (this.hasBox()) {\n var box = draw.Path.fromRect(this.paddingBox.toRect(), this.visualStyle());\n this.visual.append(box);\n }\n };\n\n TextBox.prototype.renderVisual = function renderVisual () {\n if (!this.options.visible) {\n return;\n }\n\n if (this.options.visual) {\n var visual = this.visual;\n if (visual && !defined(visual.options.noclip)) {\n visual.options.noclip = this.options.noclip;\n }\n this.addVisual();\n this.createAnimation();\n } else {\n BoxElement.prototype.renderVisual.call(this);\n }\n };\n\n TextBox.prototype.visualContext = function visualContext (targetBox) {\n var this$1 = this;\n\n var context = {\n text: this.content,\n rect: targetBox.toRect(),\n sender: this.getSender(),\n options: this.options,\n createVisual: function () {\n this$1._boxReflow = true;\n this$1.reflow(targetBox);\n this$1._boxReflow = false;\n return this$1.getDefaultVisual();\n }\n };\n if (this.data) {\n Object.assign(context, this.data);\n }\n\n return context;\n };\n\n TextBox.prototype.getDefaultVisual = function getDefaultVisual () {\n this.createVisual();\n this.renderChildren();\n var visual = this.visual;\n delete this.visual;\n return visual;\n };\n\n TextBox.prototype.rotate = function rotate () {\n var options = this.options;\n this.box.rotate(options.rotation);\n this.align(this.targetBox, X, options.align);\n this.align(this.targetBox, Y, options.vAlign);\n return this.box;\n };\n\n TextBox.prototype.rotationTransform = function rotationTransform () {\n var rotation = this.options.rotation;\n if (!rotation) {\n return null;\n }\n\n var ref = this.normalBox.center();\n var cx = ref.x;\n var cy = ref.y;\n var boxCenter = this.rotatedBox.center();\n\n return geom.transform()\n .translate(boxCenter.x - cx, boxCenter.y - cy)\n .rotate(rotation, [ cx, cy ]);\n };\n\n return TextBox;\n}(BoxElement));\n\nexport default TextBox;","import ChartElement from './chart-element';\nimport TextBox from './text-box';\n\nimport { X, BLACK, TOP, CENTER, BOTTOM } from '../common/constants';\nimport { getSpacing, setDefaultOptions } from '../common';\n\nvar Title = (function (ChartElement) {\n function Title(options) {\n ChartElement.call(this, options);\n\n this._textBox = new TextBox(this.options.text, Object.assign({}, this.options, {\n vAlign: this.options.position\n }));\n\n this.append(this._textBox);\n }\n\n if ( ChartElement ) Title.__proto__ = ChartElement;\n Title.prototype = Object.create( ChartElement && ChartElement.prototype );\n Title.prototype.constructor = Title;\n\n Title.prototype.reflow = function reflow (targetBox) {\n ChartElement.prototype.reflow.call(this, targetBox);\n this.box.snapTo(targetBox, X);\n };\n\n Title.buildTitle = function buildTitle (options, defaultOptions) {\n var titleOptions = options;\n\n if (typeof options === \"string\") {\n titleOptions = { text: options };\n }\n\n titleOptions = Object.assign({ visible: true }, defaultOptions, titleOptions);\n\n var title;\n if (titleOptions && titleOptions.visible && titleOptions.text) {\n title = new Title(titleOptions);\n }\n\n return title;\n };\n\n Title.orderTitles = function orderTitles (titles) {\n var items = [].concat(titles);\n var top = items.filter(function (item) { return item && item.options.position !== BOTTOM; });\n var bottom = items.filter(function (item) { return item && item.options.position === BOTTOM; });\n\n collapseVerticalMargins(top);\n collapseVerticalMargins(bottom);\n\n bottom.reverse();\n return top.concat(bottom);\n };\n\n return Title;\n}(ChartElement));\n\nfunction collapseVerticalMargins(items) {\n for (var i = 1; i < items.length; i++) {\n var box = items[i]._textBox;\n var prevBox = items[i - 1]._textBox;\n prevBox.options.margin = Object.assign(getSpacing(prevBox.options.margin), { bottom: 0 });\n box.options.margin = Object.assign(getSpacing(box.options.margin), { top: 0 });\n }\n}\n\nsetDefaultOptions(Title, {\n color: BLACK,\n position: TOP,\n align: CENTER,\n margin: getSpacing(5),\n padding: getSpacing(5)\n});\n\nexport default Title;\n","import { geometry as geom } from '@progress/kendo-drawing';\n\nimport TextBox from './text-box';\nimport Box from './box';\n\nimport rectToBox from './utils/rect-to-box';\n\nimport { AXIS_LABEL_CLICK, CENTER, TOP, BOTTOM, LEFT, DEFAULT_PRECISION, X, Y } from '../common/constants';\n\nimport { eventElement, round, setDefaultOptions } from '../common';\n\nvar AxisLabel = (function (TextBox) {\n function AxisLabel(value, text, index, dataItem, options) {\n TextBox.call(this, text, options);\n\n this.text = text;\n this.value = value;\n this.index = index;\n this.dataItem = dataItem;\n this.reflow(new Box());\n }\n\n if ( TextBox ) AxisLabel.__proto__ = TextBox;\n AxisLabel.prototype = Object.create( TextBox && TextBox.prototype );\n AxisLabel.prototype.constructor = AxisLabel;\n\n AxisLabel.prototype.visualContext = function visualContext (targetBox) {\n var context = TextBox.prototype.visualContext.call(this, targetBox);\n\n context.value = this.value;\n context.dataItem = this.dataItem;\n context.format = this.options.format;\n context.culture = this.options.culture;\n\n return context;\n };\n\n AxisLabel.prototype.click = function click (widget, e) {\n\n widget.trigger(AXIS_LABEL_CLICK, {\n element: eventElement(e),\n value: this.value,\n text: this.text,\n index: this.index,\n dataItem: this.dataItem,\n axis: this.parent.options\n });\n };\n\n AxisLabel.prototype.rotate = function rotate () {\n if (this.options.alignRotation !== CENTER) {\n var box = this.normalBox.toRect();\n var transform = this.rotationTransform();\n\n this.box = rectToBox(box.bbox(transform.matrix()));\n } else {\n TextBox.prototype.rotate.call(this);\n }\n\n return this.box;\n };\n\n AxisLabel.prototype.rotationTransform = function rotationTransform () {\n var options = this.options;\n var rotation = options.rotation;\n if (!rotation) {\n return null;\n }\n\n if (options.alignRotation === CENTER) {\n return TextBox.prototype.rotationTransform.call(this);\n }\n\n var rotationMatrix = geom.transform().rotate(rotation).matrix();\n var box = this.normalBox.toRect();\n var rect = this.targetBox.toRect();\n\n var rotationOrigin = options.rotationOrigin || TOP;\n var alignAxis = rotationOrigin === TOP || rotationOrigin === BOTTOM ? X : Y;\n var distanceAxis = rotationOrigin === TOP || rotationOrigin === BOTTOM ? Y : X;\n var axisAnchor = rotationOrigin === TOP || rotationOrigin === LEFT ? rect.origin : rect.bottomRight();\n\n var topLeft = box.topLeft().transformCopy(rotationMatrix);\n var topRight = box.topRight().transformCopy(rotationMatrix);\n var bottomRight = box.bottomRight().transformCopy(rotationMatrix);\n var bottomLeft = box.bottomLeft().transformCopy(rotationMatrix);\n var rotatedBox = geom.Rect.fromPoints(topLeft, topRight, bottomRight, bottomLeft);\n\n var translate = {};\n translate[distanceAxis] = rect.origin[distanceAxis] - rotatedBox.origin[distanceAxis];\n\n var distanceLeft = Math.abs(topLeft[distanceAxis] + translate[distanceAxis] - axisAnchor[distanceAxis]);\n var distanceRight = Math.abs(topRight[distanceAxis] + translate[distanceAxis] - axisAnchor[distanceAxis]);\n\n var alignStart, alignEnd;\n\n if (round(distanceLeft, DEFAULT_PRECISION) === round(distanceRight, DEFAULT_PRECISION)) {\n alignStart = topLeft;\n alignEnd = topRight;\n } else if (distanceRight < distanceLeft) {\n alignStart = topRight;\n alignEnd = bottomRight;\n } else {\n alignStart = topLeft;\n alignEnd = bottomLeft;\n }\n\n var alignCenter = alignStart[alignAxis] + (alignEnd[alignAxis] - alignStart[alignAxis]) / 2;\n translate[alignAxis] = rect.center()[alignAxis] - alignCenter;\n\n return geom.transform()\n .translate(translate.x, translate.y)\n .rotate(rotation);\n };\n\n return AxisLabel;\n}(TextBox));\n\nsetDefaultOptions(AxisLabel, {\n _autoReflow: false\n});\n\nexport default AxisLabel;\n","import { drawing as draw } from '@progress/kendo-drawing';\n\nimport BoxElement from './box-element';\nimport TextBox from './text-box';\nimport ShapeElement from './shape-element';\nimport Box from './box';\n\nimport { CIRCLE, TOP, BOTTOM, LEFT, RIGHT, CENTER, INSIDE, OUTSIDE, NOTE_CLICK, NOTE_HOVER, NOTE_LEAVE } from '../common/constants';\nimport { alignPathToPixel, defined, deepExtend, eventElement, getTemplate, inArray, setDefaultOptions } from '../common';\n\nvar DEFAULT_ICON_SIZE = 7;\nvar DEFAULT_LABEL_COLOR = \"#fff\";\n\nvar Note = (function (BoxElement) {\n function Note(fields, options, chartService) {\n BoxElement.call(this, options);\n\n this.fields = fields;\n this.chartService = chartService;\n\n this.render();\n }\n\n if ( BoxElement ) Note.__proto__ = BoxElement;\n Note.prototype = Object.create( BoxElement && BoxElement.prototype );\n Note.prototype.constructor = Note;\n\n Note.prototype.hide = function hide () {\n this.options.visible = false;\n };\n\n Note.prototype.show = function show () {\n this.options.visible = true;\n };\n\n Note.prototype.render = function render () {\n var this$1 = this;\n\n var options = this.options;\n\n if (options.visible) {\n var label = options.label;\n var icon = options.icon;\n var box = new Box();\n var childAlias = function () { return this$1; };\n var size = icon.size;\n var text = this.fields.text;\n var width, height;\n\n if (defined(label) && label.visible) {\n var noteTemplate = getTemplate(label);\n if (noteTemplate) {\n text = noteTemplate(this.fields);\n } else if (label.format) {\n text = this.chartService.format.auto(label.format, text);\n }\n\n if (!label.color) {\n label.color = label.position === INSIDE ? DEFAULT_LABEL_COLOR : icon.background;\n }\n\n this.label = new TextBox(text, deepExtend({}, label));\n this.label.aliasFor = childAlias;\n\n if (label.position === INSIDE && !defined(size)) {\n if (icon.type === CIRCLE) {\n size = Math.max(this.label.box.width(), this.label.box.height());\n } else {\n width = this.label.box.width();\n height = this.label.box.height();\n }\n box.wrap(this.label.box);\n }\n }\n\n icon.width = width || size || DEFAULT_ICON_SIZE;\n icon.height = height || size || DEFAULT_ICON_SIZE;\n\n var marker = new ShapeElement(deepExtend({}, icon));\n marker.aliasFor = childAlias;\n\n this.marker = marker;\n this.append(marker);\n\n if (this.label) {\n this.append(this.label);\n }\n\n marker.reflow(new Box());\n this.wrapperBox = box.wrap(marker.box);\n }\n };\n\n Note.prototype.reflow = function reflow (targetBox) {\n var ref = this;\n var options = ref.options;\n var label = ref.label;\n var marker = ref.marker;\n var wrapperBox = ref.wrapperBox;\n var center = targetBox.center();\n var length = options.line.length;\n var position = options.position;\n\n // TODO: Review\n if (options.visible) {\n var lineStart, box, contentBox;\n\n if (inArray(position, [ LEFT, RIGHT ])) {\n if (position === LEFT) {\n contentBox = wrapperBox.alignTo(targetBox, position).translate(-length, targetBox.center().y - wrapperBox.center().y);\n\n if (options.line.visible) {\n lineStart = [ targetBox.x1, center.y ];\n this.linePoints = [\n lineStart,\n [ contentBox.x2, center.y ]\n ];\n box = contentBox.clone().wrapPoint(lineStart);\n }\n } else {\n contentBox = wrapperBox.alignTo(targetBox, position).translate(length, targetBox.center().y - wrapperBox.center().y);\n\n if (options.line.visible) {\n lineStart = [ targetBox.x2, center.y ];\n this.linePoints = [\n lineStart,\n [ contentBox.x1, center.y ]\n ];\n box = contentBox.clone().wrapPoint(lineStart);\n }\n }\n } else {\n if (position === BOTTOM) {\n contentBox = wrapperBox.alignTo(targetBox, position).translate(targetBox.center().x - wrapperBox.center().x, length);\n\n if (options.line.visible) {\n lineStart = [ center.x, targetBox.y2 ];\n this.linePoints = [\n lineStart,\n [ center.x, contentBox.y1 ]\n ];\n box = contentBox.clone().wrapPoint(lineStart);\n }\n } else {\n contentBox = wrapperBox.alignTo(targetBox, position).translate(targetBox.center().x - wrapperBox.center().x, -length);\n\n if (options.line.visible) {\n lineStart = [ center.x, targetBox.y1 ];\n this.linePoints = [\n lineStart,\n [ center.x, contentBox.y2 ]\n ];\n box = contentBox.clone().wrapPoint(lineStart);\n }\n }\n }\n\n if (marker) {\n marker.reflow(contentBox);\n }\n\n if (label) {\n label.reflow(contentBox);\n if (marker) {\n if (options.label.position === OUTSIDE) {\n label.box.alignTo(marker.box, position);\n }\n label.reflow(label.box);\n }\n }\n\n this.contentBox = contentBox;\n this.targetBox = targetBox;\n this.box = box || contentBox;\n }\n };\n\n Note.prototype.createVisual = function createVisual () {\n BoxElement.prototype.createVisual.call(this);\n this.visual.options.noclip = this.options.noclip;\n\n if (this.options.visible) {\n this.createLine();\n }\n };\n\n Note.prototype.renderVisual = function renderVisual () {\n var this$1 = this;\n\n var options = this.options;\n var customVisual = options.visual;\n if (options.visible && customVisual) {\n this.visual = customVisual(Object.assign(this.fields, {\n sender: this.getSender(),\n rect: this.targetBox.toRect(),\n options: {\n background: options.background,\n border: options.background,\n icon: options.icon,\n label: options.label,\n line: options.line,\n position: options.position,\n visible: options.visible\n },\n createVisual: function () {\n this$1.createVisual();\n this$1.renderChildren();\n var defaultVisual = this$1.visual;\n delete this$1.visual;\n return defaultVisual;\n }\n }));\n this.addVisual();\n } else {\n BoxElement.prototype.renderVisual.call(this);\n }\n };\n\n Note.prototype.createLine = function createLine () {\n var options = this.options.line;\n\n if (this.linePoints) {\n var path = draw.Path.fromPoints(this.linePoints, {\n stroke: {\n color: options.color,\n width: options.width,\n dashType: options.dashType\n }\n });\n\n alignPathToPixel(path);\n this.visual.append(path);\n }\n };\n\n Note.prototype.click = function click (widget, e) {\n var args = this.eventArgs(e);\n\n if (!widget.trigger(NOTE_CLICK, args)) {\n e.preventDefault();\n }\n };\n\n Note.prototype.over = function over (widget, e) {\n var args = this.eventArgs(e);\n\n if (!widget.trigger(NOTE_HOVER, args)) {\n e.preventDefault();\n }\n };\n\n Note.prototype.out = function out (widget, e) {\n var args = this.eventArgs(e);\n\n widget.trigger(NOTE_LEAVE, args);\n };\n\n Note.prototype.eventArgs = function eventArgs (e) {\n var options = this.options;\n\n return Object.assign(this.fields, {\n element: eventElement(e),\n text: defined(options.label) ? options.label.text : \"\",\n visual: this.visual\n });\n };\n\n return Note;\n}(BoxElement));\n\nsetDefaultOptions(Note, {\n icon: {\n visible: true,\n type: CIRCLE\n },\n label: {\n position: INSIDE,\n visible: true,\n align: CENTER,\n vAlign: CENTER\n },\n line: {\n visible: true\n },\n visible: true,\n position: TOP,\n zIndex: 2\n});\n\nexport default Note;","var defaultImplementation = {\n format: function (format, value) { return value; },\n\n toString: function (value) { return value; },\n\n parseDate: function (value) { return new Date(value); },\n\n firstDay: function () { return 0; }\n};\n\nvar current = defaultImplementation;\n\nvar IntlService = function IntlService () {};\n\nvar staticAccessors = { implementation: { configurable: true } };\n\nIntlService.register = function register (userImplementation) {\n current = userImplementation;\n};\n\nstaticAccessors.implementation.get = function () {\n return current;\n};\n\nObject.defineProperties( IntlService, staticAccessors );\n\nexport default IntlService;\n","import IntlService from './intl-service';\nimport { FORMAT_REGEX } from '../common/constants';\nimport { isString } from '../common';\n\n// eslint-disable-next-line no-useless-escape\nvar FORMAT_REPLACE_REGEX = /\\{(\\d+)(:[^\\}]+)?\\}/g;\n\nvar FormatService = function FormatService(intlService) {\n this._intlService = intlService;\n};\n\nvar prototypeAccessors = { intl: { configurable: true } };\n\nprototypeAccessors.intl.get = function () {\n return this._intlService || IntlService.implementation;\n};\n\nprototypeAccessors.intl.set = function (value) {\n this._intlService = value;\n};\n\nFormatService.prototype.auto = function auto (formatString) {\n var values = [], len = arguments.length - 1;\n while ( len-- > 0 ) values[ len ] = arguments[ len + 1 ];\n\n var intl = this.intl;\n\n if (isString(formatString) && formatString.match(FORMAT_REGEX)) {\n return intl.format.apply(intl, [ formatString ].concat( values ));\n }\n\n return intl.toString(values[0], formatString);\n};\n\nFormatService.prototype.localeAuto = function localeAuto (formatString, values, locale) {\n var intl = this.intl;\n var result;\n\n if (isString(formatString) && formatString.match(FORMAT_REGEX)) {\n result = formatString.replace(FORMAT_REPLACE_REGEX, function(match, index, placeholderFormat) {\n var value = values[parseInt(index, 10)];\n\n return intl.toString(value, placeholderFormat ? placeholderFormat.substring(1) : \"\", locale);\n });\n } else {\n result = intl.toString(values[0], formatString, locale);\n }\n\n return result;\n};\n\nObject.defineProperties( FormatService.prototype, prototypeAccessors );\n\nexport default FormatService;","import IntlService from './intl-service';\nimport FormatService from './format-service';\n\nvar ChartService = function ChartService(chart, context) {\n if ( context === void 0 ) context = {};\n\n this._intlService = context.intlService;\n this.sender = context.sender || chart;\n this.format = new FormatService(context.intlService);\n this.chart = chart;\n this.rtl = Boolean(context.rtl);\n};\n\nvar prototypeAccessors = { intl: { configurable: true } };\n\nprototypeAccessors.intl.get = function () {\n return this._intlService || IntlService.implementation;\n};\n\nprototypeAccessors.intl.set = function (value) {\n this._intlService = value;\n this.format.intl = value;\n};\n\nChartService.prototype.notify = function notify (name, args) {\n if (this.chart) {\n this.chart.trigger(name, args);\n }\n};\n\nChartService.prototype.isPannable = function isPannable (axis) {\n var pannable = ((this.chart || {}).options || {}).pannable;\n return pannable && pannable.lock !== axis;\n};\n\nObject.defineProperties( ChartService.prototype, prototypeAccessors );\n\nexport default ChartService;\n","import { UserEvents } from '../common';\n\nvar current;\n\nvar DomEventsBuilder = function DomEventsBuilder () {};\n\nDomEventsBuilder.register = function register (userImplementation) {\n current = userImplementation;\n};\n\nDomEventsBuilder.create = function create (element, events) {\n var builder;\n\n if (current) {\n builder = current.create(element, events);\n } else {\n builder = new UserEvents(element, Object.assign({}, {multiTouch: true},\n\n events));\n }\n\n return builder;\n};\n\nexport default DomEventsBuilder;\n","import { drawing as draw } from '@progress/kendo-drawing';\n\nimport { alignPathToPixel } from '../../common';\n\nexport default function createAxisTick(options, tickOptions) {\n var tickX = options.tickX;\n var tickY = options.tickY;\n var position = options.position;\n\n var tick = new draw.Path({\n stroke: {\n width: tickOptions.width,\n color: tickOptions.color\n }\n });\n\n if (options.vertical) {\n tick.moveTo(tickX, position)\n .lineTo(tickX + tickOptions.size, position);\n } else {\n tick.moveTo(position, tickY)\n .lineTo(position, tickY + tickOptions.size);\n }\n\n alignPathToPixel(tick);\n\n return tick;\n}\n","import { drawing as draw } from '@progress/kendo-drawing';\n\nimport { alignPathToPixel } from '../../common';\n\nexport default function createAxisGridLine(options, gridLine) {\n var lineStart = options.lineStart;\n var lineEnd = options.lineEnd;\n var position = options.position;\n\n var line = new draw.Path({\n stroke: {\n width: gridLine.width,\n color: gridLine.color,\n dashType: gridLine.dashType\n }\n });\n\n if (options.vertical) {\n line.moveTo(lineStart, position)\n .lineTo(lineEnd, position);\n } else {\n line.moveTo(position, lineStart)\n .lineTo(position, lineEnd);\n }\n\n alignPathToPixel(line);\n\n return line;\n}","import { drawing as draw, geometry as geom } from '@progress/kendo-drawing';\n\nimport ChartElement from './chart-element';\nimport TextBox from './text-box';\nimport AxisLabel from './axis-label';\nimport Note from './note';\nimport Box from './box';\nimport { ChartService } from '../services';\n\nimport createAxisTick from './utils/create-axis-tick';\nimport createAxisGridLine from './utils/create-axis-grid-line';\n\nimport { NONE, BLACK, CENTER, TOP, BOTTOM, LEFT, RIGHT, OUTSIDE, X, Y, WIDTH, HEIGHT } from '../common/constants';\nimport { alignPathToPixel, deepExtend, getTemplate, grep, defined, isObject, inArray, limitValue, round, setDefaultOptions } from '../common';\n\nvar Axis = (function (ChartElement) {\n function Axis(options, chartService) {\n if ( chartService === void 0 ) chartService = new ChartService();\n\n ChartElement.call(this, options);\n\n this.chartService = chartService;\n\n if (!this.options.visible) {\n this.options = deepExtend({}, this.options, {\n labels: {\n visible: false\n },\n line: {\n visible: false\n },\n margin: 0,\n majorTickSize: 0,\n minorTickSize: 0\n });\n }\n\n this.options.minorTicks = deepExtend({}, {\n color: this.options.line.color,\n width: this.options.line.width,\n visible: this.options.minorTickType !== NONE\n }, this.options.minorTicks, {\n size: this.options.minorTickSize,\n align: this.options.minorTickType\n });\n\n this.options.majorTicks = deepExtend({}, {\n color: this.options.line.color,\n width: this.options.line.width,\n visible: this.options.majorTickType !== NONE\n }, this.options.majorTicks, {\n size: this.options.majorTickSize,\n align: this.options.majorTickType\n });\n\n this.initFields();\n\n if (!this.options._deferLabels) {\n this.createLabels();\n }\n\n this.createTitle();\n this.createNotes();\n }\n\n if ( ChartElement ) Axis.__proto__ = ChartElement;\n Axis.prototype = Object.create( ChartElement && ChartElement.prototype );\n Axis.prototype.constructor = Axis;\n\n Axis.prototype.initFields = function initFields () {\n };\n\n // abstract labelsCount(): Number\n // abstract createAxisLabel(index, options): AxisLabel\n\n Axis.prototype.labelsRange = function labelsRange () {\n return {\n min: this.options.labels.skip,\n max: this.labelsCount()\n };\n };\n\n Axis.prototype.normalizeLabelRotation = function normalizeLabelRotation (labelOptions) {\n var rotation = labelOptions.rotation;\n\n if (isObject(rotation)) {\n labelOptions.alignRotation = rotation.align;\n labelOptions.rotation = rotation.angle;\n }\n };\n\n Axis.prototype.createLabels = function createLabels () {\n var this$1 = this;\n\n var options = this.options;\n var align = options.vertical ? RIGHT : CENTER;\n var labelOptions = deepExtend({ }, options.labels, {\n align: align,\n zIndex: options.zIndex\n });\n var step = Math.max(1, labelOptions.step);\n\n this.clearLabels();\n\n if (labelOptions.visible) {\n this.normalizeLabelRotation(labelOptions);\n if (labelOptions.rotation === \"auto\") {\n labelOptions.rotation = 0;\n options.autoRotateLabels = true;\n }\n\n var range = this.labelsRange();\n for (var idx = range.min; idx < range.max; idx += step) {\n var labelContext = { index: idx, count: range.max };\n var label = this$1.createAxisLabel(idx, labelOptions, labelContext);\n if (label) {\n this$1.append(label);\n this$1.labels.push(label);\n }\n }\n }\n };\n\n Axis.prototype.clearLabels = function clearLabels () {\n this.children = grep(this.children, function (child) { return !(child instanceof AxisLabel); });\n this.labels = [];\n };\n\n Axis.prototype.clearTitle = function clearTitle () {\n var this$1 = this;\n\n if (this.title) {\n this.children = grep(this.children, function (child) { return child !== this$1.title; });\n this.title = undefined;\n }\n };\n\n Axis.prototype.clear = function clear () {\n this.clearLabels();\n this.clearTitle();\n };\n\n Axis.prototype.lineBox = function lineBox () {\n var ref = this;\n var options = ref.options;\n var box = ref.box;\n var vertical = options.vertical;\n var mirror = options.labels.mirror;\n var axisX = mirror ? box.x1 : box.x2;\n var axisY = mirror ? box.y2 : box.y1;\n var lineWidth = options.line.width || 0;\n\n return vertical ?\n new Box(axisX, box.y1, axisX, box.y2 - lineWidth) :\n new Box(box.x1, axisY, box.x2 - lineWidth, axisY);\n };\n\n Axis.prototype.createTitle = function createTitle () {\n var options = this.options;\n var titleOptions = deepExtend({\n rotation: options.vertical ? -90 : 0,\n text: \"\",\n zIndex: 1,\n visualSize: true\n }, options.title);\n\n if (titleOptions.visible && titleOptions.text) {\n var title = new TextBox(titleOptions.text, titleOptions);\n this.append(title);\n this.title = title;\n }\n };\n\n Axis.prototype.createNotes = function createNotes () {\n var this$1 = this;\n\n var options = this.options;\n var notes = options.notes;\n var items = notes.data || [];\n\n this.notes = [];\n\n for (var i = 0; i < items.length; i++) {\n var item = deepExtend({}, notes, items[i]);\n item.value = this$1.parseNoteValue(item.value);\n\n var note = new Note({\n value: item.value,\n text: item.label.text,\n dataItem: item\n }, item, this$1.chartService);\n\n if (note.options.visible) {\n if (defined(note.options.position)) {\n if (options.vertical && !inArray(note.options.position, [ LEFT, RIGHT ])) {\n note.options.position = options.reverse ? LEFT : RIGHT;\n } else if (!options.vertical && !inArray(note.options.position, [ TOP, BOTTOM ])) {\n note.options.position = options.reverse ? BOTTOM : TOP;\n }\n } else {\n if (options.vertical) {\n note.options.position = options.reverse ? LEFT : RIGHT;\n } else {\n note.options.position = options.reverse ? BOTTOM : TOP;\n }\n }\n this$1.append(note);\n this$1.notes.push(note);\n }\n }\n };\n\n Axis.prototype.parseNoteValue = function parseNoteValue (value) {\n return value;\n };\n\n Axis.prototype.renderVisual = function renderVisual () {\n ChartElement.prototype.renderVisual.call(this);\n\n this.createPlotBands();\n };\n\n Axis.prototype.createVisual = function createVisual () {\n ChartElement.prototype.createVisual.call(this);\n\n this.createBackground();\n this.createLine();\n };\n\n Axis.prototype.gridLinesVisual = function gridLinesVisual () {\n var gridLines = this._gridLines;\n if (!gridLines) {\n gridLines = this._gridLines = new draw.Group({\n zIndex: -2\n });\n this.appendVisual(this._gridLines);\n }\n\n return gridLines;\n };\n\n Axis.prototype.createTicks = function createTicks (lineGroup) {\n var options = this.options;\n var lineBox = this.lineBox();\n var mirror = options.labels.mirror;\n var majorUnit = options.majorTicks.visible ? options.majorUnit : 0;\n var tickLineOptions = {\n // TODO\n // _alignLines: options._alignLines,\n vertical: options.vertical\n };\n\n function render(tickPositions, tickOptions, skipUnit) {\n var count = tickPositions.length;\n var step = Math.max(1, tickOptions.step);\n\n if (tickOptions.visible) {\n for (var i = tickOptions.skip; i < count; i += step) {\n if (defined(skipUnit) && (i % skipUnit === 0)) {\n continue;\n }\n\n tickLineOptions.tickX = mirror ? lineBox.x2 : lineBox.x2 - tickOptions.size;\n tickLineOptions.tickY = mirror ? lineBox.y1 - tickOptions.size : lineBox.y1;\n tickLineOptions.position = tickPositions[i];\n\n lineGroup.append(createAxisTick(tickLineOptions, tickOptions));\n }\n }\n }\n\n render(this.getMajorTickPositions(), options.majorTicks);\n render(this.getMinorTickPositions(), options.minorTicks, majorUnit / options.minorUnit);\n };\n\n Axis.prototype.createLine = function createLine () {\n var options = this.options;\n var line = options.line;\n var lineBox = this.lineBox();\n\n if (line.width > 0 && line.visible) {\n var path = new draw.Path({\n stroke: {\n width: line.width,\n color: line.color,\n dashType: line.dashType\n }\n\n /* TODO\n zIndex: line.zIndex,\n */\n });\n\n path.moveTo(lineBox.x1, lineBox.y1)\n .lineTo(lineBox.x2, lineBox.y2);\n\n if (options._alignLines) {\n alignPathToPixel(path);\n }\n\n var group = this._lineGroup = new draw.Group();\n group.append(path);\n\n this.visual.append(group);\n this.createTicks(group);\n }\n };\n\n Axis.prototype.getActualTickSize = function getActualTickSize () {\n var options = this.options;\n var tickSize = 0;\n\n if (options.majorTicks.visible && options.minorTicks.visible) {\n tickSize = Math.max(options.majorTicks.size, options.minorTicks.size);\n } else if (options.majorTicks.visible) {\n tickSize = options.majorTicks.size;\n } else if (options.minorTicks.visible) {\n tickSize = options.minorTicks.size;\n }\n\n return tickSize;\n };\n\n Axis.prototype.createBackground = function createBackground () {\n var ref = this;\n var options = ref.options;\n var box = ref.box;\n var background = options.background;\n\n if (background) {\n this._backgroundPath = draw.Path.fromRect(box.toRect(), {\n fill: {\n color: background\n },\n stroke: null\n });\n\n this.visual.append(this._backgroundPath);\n }\n };\n\n Axis.prototype.createPlotBands = function createPlotBands () {\n var this$1 = this;\n\n var options = this.options;\n var plotBands = options.plotBands || [];\n var vertical = options.vertical;\n var plotArea = this.plotArea;\n\n if (plotBands.length === 0) {\n return;\n }\n\n var group = this._plotbandGroup = new draw.Group({\n zIndex: -1\n });\n\n var altAxis = grep(this.pane.axes, function (axis) { return axis.options.vertical !== this$1.options.vertical; })[0];\n\n for (var idx = 0; idx < plotBands.length; idx++) {\n var item = plotBands[idx];\n var slotX = (void 0), slotY = (void 0);\n var labelOptions = item.label;\n var label = (void 0);\n\n if (vertical) {\n slotX = (altAxis || plotArea.axisX).lineBox();\n slotY = this$1.getSlot(item.from, item.to, true);\n } else {\n slotX = this$1.getSlot(item.from, item.to, true);\n slotY = (altAxis || plotArea.axisY).lineBox();\n }\n\n if (labelOptions) {\n labelOptions.vAlign = labelOptions.position || LEFT;\n label = this$1.createPlotBandLabel(\n labelOptions,\n item,\n new Box(\n slotX.x1,\n slotY.y1,\n slotX.x2,\n slotY.y2\n )\n\n );\n }\n\n if (slotX.width() !== 0 && slotY.height() !== 0) {\n var bandRect = new geom.Rect(\n [ slotX.x1, slotY.y1 ],\n [ slotX.width(), slotY.height() ]\n );\n\n var path = draw.Path.fromRect(bandRect, {\n fill: {\n color: item.color,\n opacity: item.opacity\n },\n stroke: null\n });\n\n group.append(path);\n if (label) {\n group.append(label);\n }\n }\n }\n\n this.appendVisual(group);\n };\n\n Axis.prototype.createPlotBandLabel = function createPlotBandLabel (label, item, box) {\n\n if (label.visible === false) {\n return null;\n }\n\n var text = label.text;\n var textbox;\n\n if (defined(label) && label.visible) {\n var labelTemplate = getTemplate(label);\n if (labelTemplate) {\n text = labelTemplate({ text: text, item: item });\n } else if (label.format) {\n text = this.chartService.format.auto(label.format, text);\n }\n\n if (!label.color) {\n label.color = this.options.labels.color;\n }\n }\n\n textbox = new TextBox(text, label);\n textbox.reflow(box);\n textbox.renderVisual();\n\n return textbox.visual;\n };\n\n Axis.prototype.createGridLines = function createGridLines (altAxis) {\n var options = this.options;\n var minorGridLines = options.minorGridLines;\n var majorGridLines = options.majorGridLines;\n var minorUnit = options.minorUnit;\n var vertical = options.vertical;\n var axisLineVisible = altAxis.options.line.visible;\n var majorUnit = majorGridLines.visible ? options.majorUnit : 0;\n var lineBox = altAxis.lineBox();\n var linePos = lineBox[vertical ? \"y1\" : \"x1\"];\n var lineOptions = {\n lineStart: lineBox[vertical ? \"x1\" : \"y1\"],\n lineEnd: lineBox[vertical ? \"x2\" : \"y2\"],\n vertical: vertical\n };\n var majorTicks = [];\n\n var container = this.gridLinesVisual();\n\n function render(tickPositions, gridLine, skipUnit) {\n var count = tickPositions.length;\n var step = Math.max(1, gridLine.step);\n\n if (gridLine.visible) {\n for (var i = gridLine.skip; i < count; i += step) {\n var pos = round(tickPositions[i]);\n if (!inArray(pos, majorTicks)) {\n if (i % skipUnit !== 0 && (!axisLineVisible || linePos !== pos)) {\n lineOptions.position = pos;\n container.append(createAxisGridLine(lineOptions, gridLine));\n\n majorTicks.push(pos);\n }\n }\n }\n }\n }\n\n render(this.getMajorTickPositions(), majorGridLines);\n render(this.getMinorTickPositions(), minorGridLines, majorUnit / minorUnit);\n\n return container.children;\n };\n\n Axis.prototype.reflow = function reflow (box) {\n var ref = this;\n var options = ref.options;\n var labels = ref.labels;\n var title = ref.title;\n var vertical = options.vertical;\n var count = labels.length;\n var sizeFn = vertical ? WIDTH : HEIGHT;\n var titleSize = title ? title.box[sizeFn]() : 0;\n var space = this.getActualTickSize() + options.margin + titleSize;\n var rootBox = (this.getRoot() || {}).box || box;\n var boxSize = rootBox[sizeFn]();\n var maxLabelSize = 0;\n\n for (var i = 0; i < count; i++) {\n var labelSize = labels[i].box[sizeFn]();\n if (labelSize + space <= boxSize) {\n maxLabelSize = Math.max(maxLabelSize, labelSize);\n }\n }\n\n if (vertical) {\n this.box = new Box(\n box.x1, box.y1,\n box.x1 + maxLabelSize + space, box.y2\n );\n } else {\n this.box = new Box(\n box.x1, box.y1,\n box.x2, box.y1 + maxLabelSize + space\n );\n }\n\n this.arrangeTitle();\n this.arrangeLabels();\n this.arrangeNotes();\n };\n\n Axis.prototype.getLabelsTickPositions = function getLabelsTickPositions () {\n return this.getMajorTickPositions();\n };\n\n Axis.prototype.labelTickIndex = function labelTickIndex (label) {\n return label.index;\n };\n\n Axis.prototype.arrangeLabels = function arrangeLabels () {\n var this$1 = this;\n\n var ref = this;\n var options = ref.options;\n var labels = ref.labels;\n var labelsBetweenTicks = this.labelsBetweenTicks();\n var vertical = options.vertical;\n var mirror = options.labels.mirror;\n var tickPositions = this.getLabelsTickPositions();\n\n for (var idx = 0; idx < labels.length; idx++) {\n var label = labels[idx];\n var tickIx = this$1.labelTickIndex(label);\n var labelSize = vertical ? label.box.height() : label.box.width();\n var firstTickPosition = tickPositions[tickIx];\n var nextTickPosition = tickPositions[tickIx + 1];\n var positionStart = (void 0), positionEnd = (void 0);\n\n if (vertical) {\n if (labelsBetweenTicks) {\n var middle = firstTickPosition + (nextTickPosition - firstTickPosition) / 2;\n positionStart = middle - (labelSize / 2);\n } else {\n positionStart = firstTickPosition - (labelSize / 2);\n }\n\n positionEnd = positionStart;\n } else {\n if (labelsBetweenTicks) {\n positionStart = firstTickPosition;\n positionEnd = nextTickPosition;\n } else {\n positionStart = firstTickPosition - (labelSize / 2);\n positionEnd = positionStart + labelSize;\n }\n }\n\n this$1.positionLabel(label, mirror, positionStart, positionEnd);\n }\n };\n\n Axis.prototype.positionLabel = function positionLabel (label, mirror, positionStart, positionEnd) {\n if ( positionEnd === void 0 ) positionEnd = positionStart;\n\n var options = this.options;\n var vertical = options.vertical;\n var lineBox = this.lineBox();\n var labelOffset = this.getActualTickSize() + options.margin;\n var labelBox;\n\n if (vertical) {\n var labelX = lineBox.x2;\n\n if (mirror) {\n labelX += labelOffset;\n label.options.rotationOrigin = LEFT;\n } else {\n labelX -= labelOffset + label.box.width();\n label.options.rotationOrigin = RIGHT;\n }\n\n labelBox = label.box.move(labelX, positionStart);\n } else {\n var labelY = lineBox.y1;\n\n if (mirror) {\n labelY -= labelOffset + label.box.height();\n label.options.rotationOrigin = BOTTOM;\n } else {\n labelY += labelOffset;\n label.options.rotationOrigin = TOP;\n }\n\n labelBox = new Box(\n positionStart, labelY,\n positionEnd, labelY + label.box.height()\n );\n }\n\n label.reflow(labelBox);\n };\n\n Axis.prototype.autoRotateLabelAngle = function autoRotateLabelAngle (labelBox, slotWidth) {\n if (labelBox.width() < slotWidth) {\n return 0;\n }\n\n if (labelBox.height() > slotWidth) {\n return -90;\n }\n\n return -45;\n };\n\n Axis.prototype.autoRotateLabels = function autoRotateLabels () {\n var this$1 = this;\n\n if (!this.options.autoRotateLabels || this.options.vertical) {\n return false;\n }\n\n var tickPositions = this.getMajorTickPositions();\n var labels = this.labels;\n var limit = Math.min(labels.length, tickPositions.length - 1);\n var angle = 0;\n\n for (var idx = 0; idx < limit; idx++) {\n var width = Math.abs(tickPositions[idx + 1] - tickPositions[idx]);\n var labelBox = labels[idx].box;\n var labelAngle = this$1.autoRotateLabelAngle(labelBox, width);\n\n if (labelAngle !== 0) {\n angle = labelAngle;\n }\n\n if (angle === -90) {\n break;\n }\n }\n\n if (angle !== 0) {\n for (var idx$1 = 0; idx$1 < labels.length; idx$1++) {\n labels[idx$1].options.rotation = angle;\n labels[idx$1].reflow(new Box());\n }\n\n return true;\n }\n };\n\n Axis.prototype.arrangeTitle = function arrangeTitle () {\n var ref = this;\n var options = ref.options;\n var title = ref.title;\n var mirror = options.labels.mirror;\n var vertical = options.vertical;\n\n if (title) {\n if (vertical) {\n title.options.align = mirror ? RIGHT : LEFT;\n title.options.vAlign = title.options.position;\n } else {\n title.options.align = title.options.position;\n title.options.vAlign = mirror ? TOP : BOTTOM;\n }\n\n title.reflow(this.box);\n }\n };\n\n Axis.prototype.arrangeNotes = function arrangeNotes () {\n var this$1 = this;\n\n for (var idx = 0; idx < this.notes.length; idx++) {\n var item = this$1.notes[idx];\n var value = item.options.value;\n var slot = (void 0);\n\n if (defined(value)) {\n if (this$1.shouldRenderNote(value)) {\n item.show();\n } else {\n item.hide();\n }\n\n slot = this$1.noteSlot(value);\n } else {\n item.hide();\n }\n\n item.reflow(slot || this$1.lineBox());\n }\n };\n\n Axis.prototype.noteSlot = function noteSlot (value) {\n return this.getSlot(value);\n };\n\n Axis.prototype.alignTo = function alignTo (secondAxis) {\n var lineBox = secondAxis.lineBox();\n var vertical = this.options.vertical;\n var pos = vertical ? Y : X;\n\n this.box.snapTo(lineBox, pos);\n if (vertical) {\n this.box.shrink(0, this.lineBox().height() - lineBox.height());\n } else {\n this.box.shrink(this.lineBox().width() - lineBox.width(), 0);\n }\n this.box[pos + 1] -= this.lineBox()[pos + 1] - lineBox[pos + 1];\n this.box[pos + 2] -= this.lineBox()[pos + 2] - lineBox[pos + 2];\n };\n\n Axis.prototype.axisLabelText = function axisLabelText (value, options, context) {\n var this$1 = this;\n\n var text;\n var tmpl = getTemplate(options);\n var defaultText = function () {\n if (!options.format) {\n return value;\n }\n\n return this$1.chartService.format.localeAuto(\n options.format, [ value ], options.culture\n );\n };\n\n if (tmpl) {\n var templateContext = Object.assign({}, context, {\n get text() { return defaultText(); },\n value: value,\n format: options.format,\n culture: options.culture\n });\n\n text = tmpl(templateContext);\n } else {\n text = defaultText();\n }\n\n return text;\n };\n\n Axis.prototype.slot = function slot (from , to, limit) {\n var slot = this.getSlot(from, to, limit);\n if (slot) {\n return slot.toRect();\n }\n };\n\n Axis.prototype.contentBox = function contentBox () {\n var box = this.box.clone();\n var labels = this.labels;\n if (labels.length) {\n var axis = this.options.vertical ? Y : X;\n if (this.chartService.isPannable(axis)) {\n var offset = this.maxLabelOffset();\n box[axis + 1] -= offset.start;\n box[axis + 2] += offset.end;\n } else {\n if (labels[0].options.visible) {\n box.wrap(labels[0].box);\n }\n var lastLabel = labels[labels.length - 1];\n if (lastLabel.options.visible) {\n box.wrap(lastLabel.box);\n }\n }\n }\n\n return box;\n };\n\n Axis.prototype.maxLabelOffset = function maxLabelOffset () {\n var this$1 = this;\n\n var ref = this.options;\n var vertical = ref.vertical;\n var reverse = ref.reverse;\n var labelsBetweenTicks = this.labelsBetweenTicks();\n var tickPositions = this.getLabelsTickPositions();\n var offsetField = vertical ? Y : X;\n var labels = this.labels;\n var startPosition = reverse ? 1 : 0;\n var endPosition = reverse ? 0 : 1;\n var maxStartOffset = 0;\n var maxEndOffset = 0;\n\n for (var idx = 0; idx < labels.length; idx++) {\n var label = labels[idx];\n var tickIx = this$1.labelTickIndex(label);\n var startTick = (void 0), endTick = (void 0);\n\n if (labelsBetweenTicks) {\n startTick = tickPositions[tickIx + startPosition];\n endTick = tickPositions[tickIx + endPosition];\n } else {\n startTick = endTick = tickPositions[tickIx];\n }\n\n maxStartOffset = Math.max(maxStartOffset, startTick - label.box[offsetField + 1]);\n maxEndOffset = Math.max(maxEndOffset, label.box[offsetField + 2] - endTick);\n }\n\n return {\n start: maxStartOffset,\n end: maxEndOffset\n };\n };\n\n Axis.prototype.limitRange = function limitRange (from, to, min, max, offset) {\n var options = this.options;\n\n if ((from < min && offset < 0 && (!defined(options.min) || options.min <= min)) || (max < to && offset > 0 && (!defined(options.max) || max <= options.max))) {\n return null;\n }\n\n if ((to < min && offset > 0) || (max < from && offset < 0)) {\n return {\n min: from,\n max: to\n };\n }\n\n var rangeSize = to - from;\n var minValue = from;\n var maxValue = to;\n\n if (from < min && offset < 0) {\n minValue = limitValue(from, min, max);\n maxValue = limitValue(from + rangeSize, min + rangeSize, max);\n } else if (to > max && offset > 0) {\n maxValue = limitValue(to, min, max);\n minValue = limitValue(to - rangeSize, min, max - rangeSize);\n }\n\n return {\n min: minValue,\n max: maxValue\n };\n };\n\n Axis.prototype.valueRange = function valueRange () {\n return {\n min: this.seriesMin,\n max: this.seriesMax\n };\n };\n\n Axis.prototype.lineDir = function lineDir () {\n /*\n * Axis line direction:\n * * Vertical: up.\n * * Horizontal: right.\n */\n\n var ref = this.options;\n var vertical = ref.vertical;\n var reverse = ref.reverse;\n return (vertical ? -1 : 1) * (reverse ? -1 : 1);\n };\n\n Axis.prototype.lineInfo = function lineInfo () {\n var ref = this.options;\n var vertical = ref.vertical;\n var lineBox = this.lineBox();\n var lineSize = vertical ? lineBox.height() : lineBox.width();\n var axis = vertical ? Y : X;\n var axisDir = this.lineDir();\n var startEdge = axisDir === 1 ? 1 : 2;\n var axisOrigin = axis + startEdge.toString();\n var lineStart = lineBox[axisOrigin];\n\n return {\n axis: axis,\n axisOrigin: axisOrigin,\n axisDir: axisDir,\n lineBox: lineBox,\n lineSize: lineSize,\n lineStart: lineStart\n };\n };\n\n Axis.prototype.pointOffset = function pointOffset (point) {\n var ref = this.lineInfo();\n var axis = ref.axis;\n var axisDir = ref.axisDir;\n var axisOrigin = ref.axisOrigin;\n var lineBox = ref.lineBox;\n var lineSize = ref.lineSize;\n var relative = axisDir > 0 ? point[axis] - lineBox[axisOrigin] : lineBox[axisOrigin] - point[axis];\n var offset = relative / lineSize;\n\n return offset;\n };\n\n // Computes the axis range change (delta) for a given scale factor.\n // The delta is subtracted from the axis range:\n // * delta > 0 reduces the axis range (zoom-in)\n // * delta < 0 expands the axis range (zoom-out)\n Axis.prototype.scaleToDelta = function scaleToDelta (rawScale, range) {\n // Scale >= 1 would result in axis range of 0.\n // Scale <= -1 would reverse the scale direction.\n var MAX_SCALE = 0.999;\n var scale = limitValue(rawScale, -MAX_SCALE, MAX_SCALE);\n\n var delta;\n if (scale > 0) {\n delta = range * Math.min(1, scale);\n } else {\n delta = range - (range / (1 + scale));\n }\n\n return delta;\n };\n\n Axis.prototype.labelsBetweenTicks = function labelsBetweenTicks () {\n return !this.options.justified;\n };\n\n //add legacy fields to the options that are no longer generated by default\n Axis.prototype.prepareUserOptions = function prepareUserOptions () {\n };\n\n return Axis;\n}(ChartElement));\n\nsetDefaultOptions(Axis, {\n labels: {\n visible: true,\n rotation: 0,\n mirror: false,\n step: 1,\n skip: 0\n },\n line: {\n width: 1,\n color: BLACK,\n visible: true\n },\n title: {\n visible: true,\n position: CENTER\n },\n majorTicks: {\n align: OUTSIDE,\n size: 4,\n skip: 0,\n step: 1\n },\n minorTicks: {\n align: OUTSIDE,\n size: 3,\n skip: 0,\n step: 1\n },\n axisCrossingValue: 0,\n majorTickType: OUTSIDE,\n minorTickType: NONE,\n majorGridLines: {\n skip: 0,\n step: 1\n },\n minorGridLines: {\n visible: false,\n width: 1,\n color: BLACK,\n skip: 0,\n step: 1\n },\n // TODO: Move to line or labels options\n margin: 5,\n visible: true,\n reverse: false,\n justified: true,\n notes: {\n label: {\n text: \"\"\n }\n },\n\n _alignLines: true,\n _deferLabels: false\n});\n\nexport default Axis;\n","export var MILLISECONDS = \"milliseconds\";\nexport var SECONDS = \"seconds\";\nexport var MINUTES = \"minutes\";\nexport var HOURS = \"hours\";\nexport var DAYS = \"days\";\nexport var WEEKS = \"weeks\";\nexport var MONTHS = \"months\";\nexport var YEARS = \"years\";\n\nexport var TIME_PER_MILLISECOND = 1;\nexport var TIME_PER_SECOND = 1000;\nexport var TIME_PER_MINUTE = 60 * TIME_PER_SECOND;\nexport var TIME_PER_HOUR = 60 * TIME_PER_MINUTE;\nexport var TIME_PER_DAY = 24 * TIME_PER_HOUR;\nexport var TIME_PER_WEEK = 7 * TIME_PER_DAY;\nexport var TIME_PER_MONTH = 31 * TIME_PER_DAY;\nexport var TIME_PER_YEAR = 365 * TIME_PER_DAY;\nexport var TIME_PER_UNIT = {\n \"years\": TIME_PER_YEAR,\n \"months\": TIME_PER_MONTH,\n \"weeks\": TIME_PER_WEEK,\n \"days\": TIME_PER_DAY,\n \"hours\": TIME_PER_HOUR,\n \"minutes\": TIME_PER_MINUTE,\n \"seconds\": TIME_PER_SECOND,\n \"milliseconds\": TIME_PER_MILLISECOND\n};\n\n","import { TIME_PER_MINUTE } from './constants';\n\nexport default function absoluteDateDiff(a, b) {\n var diff = a.getTime() - b;\n var offsetDiff = a.getTimezoneOffset() - b.getTimezoneOffset();\n\n return diff - (offsetDiff * TIME_PER_MINUTE);\n}","export default function addTicks(date, ticks) {\n return new Date(date.getTime() + ticks);\n}","export default function toDate(value) {\n var result;\n\n if (value instanceof Date) {\n result = value;\n } else if (value) {\n result = new Date(value);\n }\n\n return result;\n}","import { MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS, WEEKS, MONTHS, YEARS,\n TIME_PER_SECOND, TIME_PER_MINUTE, TIME_PER_HOUR } from './constants';\nimport addTicks from './add-ticks';\nimport toDate from './to-date';\nimport startOfWeek from './start-of-week';\n\nfunction adjustDST(date, hours) {\n if (hours === 0 && date.getHours() === 23) {\n date.setHours(date.getHours() + 2);\n return true;\n }\n\n return false;\n}\n\nfunction addHours(date, hours) {\n var roundedDate = new Date(date);\n\n roundedDate.setMinutes(0, 0, 0);\n\n var tzDiff = (date.getTimezoneOffset() - roundedDate.getTimezoneOffset()) * TIME_PER_MINUTE;\n\n return addTicks(roundedDate, tzDiff + hours * TIME_PER_HOUR);\n}\n\nexport default function addDuration(dateValue, value, unit, weekStartDay) {\n var result = dateValue;\n\n if (dateValue) {\n var date = toDate(dateValue);\n var hours = date.getHours();\n\n if (unit === YEARS) {\n result = new Date(date.getFullYear() + value, 0, 1);\n adjustDST(result, 0);\n } else if (unit === MONTHS) {\n result = new Date(date.getFullYear(), date.getMonth() + value, 1);\n adjustDST(result, hours);\n } else if (unit === WEEKS) {\n result = addDuration(startOfWeek(date, weekStartDay), value * 7, DAYS);\n adjustDST(result, hours);\n } else if (unit === DAYS) {\n result = new Date(date.getFullYear(), date.getMonth(), date.getDate() + value);\n adjustDST(result, hours);\n } else if (unit === HOURS) {\n result = addHours(date, value);\n } else if (unit === MINUTES) {\n result = addTicks(date, value * TIME_PER_MINUTE);\n\n if (result.getSeconds() > 0) {\n result.setSeconds(0);\n }\n } else if (unit === SECONDS) {\n result = addTicks(date, value * TIME_PER_SECOND);\n } else if (unit === MILLISECONDS) {\n result = addTicks(date, value);\n }\n\n if (unit !== MILLISECONDS && result.getMilliseconds() > 0) {\n result.setMilliseconds(0);\n }\n }\n\n return result;\n}","import { TIME_PER_DAY } from './constants';\nimport addTicks from './add-ticks';\n\nexport default function startOfWeek(date, weekStartDay) {\n if ( weekStartDay === void 0 ) weekStartDay = 0;\n\n var daysToSubtract = 0;\n var day = date.getDay();\n\n if (!isNaN(day)) {\n while (day !== weekStartDay) {\n if (day === 0) {\n day = 6;\n } else {\n day--;\n }\n\n daysToSubtract++;\n }\n }\n\n return addTicks(date, -daysToSubtract * TIME_PER_DAY);\n}","import addDuration from './add-duration';\nimport toDate from './to-date';\n\nexport default function floorDate(date, unit, weekStartDay) {\n return addDuration(toDate(date), 0, unit, weekStartDay);\n}","import floorDate from './floor-date';\nimport addDuration from './add-duration';\nimport toDate from './to-date';\n\nexport default function ceilDate(dateValue, unit, weekStartDay) {\n var date = toDate(dateValue);\n\n if (date && floorDate(date, unit, weekStartDay).getTime() === date.getTime()) {\n return date;\n }\n\n return addDuration(date, 1, unit, weekStartDay);\n}","export default function dateComparer(a, b) {\n if (a && b) {\n return a.getTime() - b.getTime();\n }\n\n return -1;\n}","export default function dateDiff(a, b) {\n return a.getTime() - b;\n}","import { isArray } from '../common';\nimport toDate from './to-date';\n\nexport default function toTime(value) {\n if (isArray(value)) {\n var result = [];\n for (var idx = 0; idx < value.length; idx++) {\n result.push(toTime(value[idx]));\n }\n\n return result;\n } else if (value) {\n return toDate(value).getTime();\n }\n}","import toTime from './to-time';\n\nexport default function dateEquals(a, b) {\n if (a && b) {\n return toTime(a) === toTime(b);\n }\n\n return a === b;\n}","import { DAYS, WEEKS, MONTHS, YEARS, TIME_PER_UNIT } from './constants';\nimport dateDiff from './date-diff';\nimport absoluteDateDiff from './absolute-date-diff';\nimport toDate from './to-date';\n\nfunction timeIndex(date, start, baseUnit) {\n return absoluteDateDiff(date, start) / TIME_PER_UNIT[baseUnit];\n}\n\nexport default function dateIndex(value, start, baseUnit, baseUnitStep) {\n var date = toDate(value);\n var startDate = toDate(start);\n var index;\n\n if (baseUnit === MONTHS) {\n index = (date.getMonth() - startDate.getMonth() + (date.getFullYear() - startDate.getFullYear()) * 12) +\n timeIndex(date, new Date(date.getFullYear(), date.getMonth()), DAYS) / new Date(date.getFullYear(), date.getMonth() + 1, 0).getDate();\n } else if (baseUnit === YEARS) {\n index = date.getFullYear() - startDate.getFullYear() + dateIndex(date, new Date(date.getFullYear(), 0), MONTHS, 1) / 12;\n } else if (baseUnit === DAYS || baseUnit === WEEKS) {\n index = timeIndex(date, startDate, baseUnit);\n } else {\n index = dateDiff(date, start) / TIME_PER_UNIT[baseUnit];\n }\n\n return index / baseUnitStep;\n}\n\n","import { DAYS, MONTHS, YEARS, TIME_PER_DAY, TIME_PER_UNIT } from './constants';\nimport dateDiff from './date-diff';\n\nexport default function duration(a, b, unit) {\n var diff;\n\n if (unit === YEARS) {\n diff = b.getFullYear() - a.getFullYear();\n } else if (unit === MONTHS) {\n diff = duration(a, b, YEARS) * 12 + b.getMonth() - a.getMonth();\n } else if (unit === DAYS) {\n diff = Math.floor(dateDiff(b, a) / TIME_PER_DAY);\n } else {\n diff = Math.floor(dateDiff(b, a) / TIME_PER_UNIT[unit]);\n }\n\n return diff;\n}","import { isString } from '../common';\nimport toDate from './to-date';\n\nexport default function parseDate(intlService, date) {\n var result;\n if (isString(date)) {\n result = intlService.parseDate(date) || toDate(date);\n } else {\n result = toDate(date);\n }\n return result;\n}\n","import parseDate from './parse-date';\n\nimport { isArray } from '../common';\n\nexport default function parseDates(intlService, dates) {\n if (isArray(dates)) {\n var result = [];\n for (var idx = 0; idx < dates.length; idx++) {\n result.push(parseDate(intlService, dates[idx]));\n }\n\n return result;\n }\n\n return parseDate(intlService, dates);\n}","import { isNumber } from '../common';\n\nexport default function firstDay(options, intlService) {\n if (isNumber(options.weekStartDay)) {\n return options.weekStartDay;\n }\n\n if (intlService && intlService.firstDay) {\n return intlService.firstDay();\n }\n\n return 0;\n}\n","import Axis from './axis';\nimport AxisLabel from './axis-label';\n\nimport { BLACK, COORD_PRECISION, DEFAULT_PRECISION, X, Y } from '../common/constants';\nimport { defined, isNumber, last, limitValue, round, setDefaultOptions, valueOrDefault, HashMap } from '../common';\nimport { dateEquals } from '../date-utils';\n\nvar MIN_CATEGORY_POINTS_RANGE = 0.01;\nvar MIN_CATEGORY_RANGE = 0.1;\n\nfunction indexOf(value, arr) {\n if (value instanceof Date) {\n var length = arr.length;\n for (var idx = 0; idx < length; idx++) {\n if (dateEquals(arr[idx], value)) {\n return idx;\n }\n }\n\n return -1;\n }\n\n return arr.indexOf(value);\n}\n\nvar CategoryAxis = (function (Axis) {\n function CategoryAxis () {\n Axis.apply(this, arguments);\n }\n\n if ( Axis ) CategoryAxis.__proto__ = Axis;\n CategoryAxis.prototype = Object.create( Axis && Axis.prototype );\n CategoryAxis.prototype.constructor = CategoryAxis;\n\n CategoryAxis.prototype.initFields = function initFields () {\n this._ticks = {};\n };\n\n CategoryAxis.prototype.categoriesHash = function categoriesHash () {\n return \"\";\n };\n\n CategoryAxis.prototype.clone = function clone () {\n var copy = new CategoryAxis(Object.assign({}, this.options, {\n categories: this.options.srcCategories\n }), this.chartService);\n copy.createLabels();\n\n return copy;\n };\n\n CategoryAxis.prototype.initUserOptions = function initUserOptions (options) {\n var categories = options.categories || [];\n var definedMin = defined(options.min);\n var definedMax = defined(options.max);\n options.srcCategories = options.categories = categories;\n\n if ((definedMin || definedMax) && categories.length) {\n var min = definedMin ? Math.floor(options.min) : 0;\n var max;\n\n if (definedMax) {\n max = options.justified ? Math.floor(options.max) + 1 : Math.ceil(options.max);\n } else {\n max = categories.length;\n }\n\n options.categories = options.categories.slice(min, max);\n }\n\n return options;\n };\n\n CategoryAxis.prototype.rangeIndices = function rangeIndices () {\n var options = this.options;\n var length = options.categories.length || 1;\n var min = isNumber(options.min) ? options.min % 1 : 0;\n var max;\n\n if (isNumber(options.max) && options.max % 1 !== 0 && options.max < this.totalRange().max) {\n max = length - (1 - options.max % 1);\n } else {\n max = length - (options.justified ? 1 : 0);\n }\n\n return {\n min: min,\n max: max\n };\n };\n\n CategoryAxis.prototype.range = function range () {\n var options = this.options;\n var min = isNumber(options.min) ? options.min : 0;\n var max = isNumber(options.max) ? options.max : this.totalRange().max;\n\n return {\n min: min,\n max: max\n };\n };\n\n CategoryAxis.prototype.roundedRange = function roundedRange () {\n return this.range();\n };\n\n CategoryAxis.prototype.totalRange = function totalRange () {\n var options = this.options;\n return { min: 0, max: Math.max(this._seriesMax || 0, options.srcCategories.length) - (options.justified ? 1 : 0) };\n };\n\n CategoryAxis.prototype.scaleOptions = function scaleOptions () {\n var ref = this.rangeIndices();\n var min = ref.min;\n var max = ref.max;\n var lineBox = this.lineBox();\n var size = this.options.vertical ? lineBox.height() : lineBox.width();\n var scale = size / ((max - min) || 1);\n\n return {\n scale: scale * (this.options.reverse ? -1 : 1),\n box: lineBox,\n min: min,\n max: max\n };\n };\n\n CategoryAxis.prototype.arrangeLabels = function arrangeLabels () {\n Axis.prototype.arrangeLabels.call(this);\n this.hideOutOfRangeLabels();\n };\n\n CategoryAxis.prototype.hideOutOfRangeLabels = function hideOutOfRangeLabels () {\n var ref = this;\n var box = ref.box;\n var labels = ref.labels;\n\n if (labels.length > 0) {\n var valueAxis = this.options.vertical ? Y : X;\n var start = box[valueAxis + 1];\n var end = box[valueAxis + 2];\n var firstLabel = labels[0];\n var lastLabel = last(labels);\n\n if (firstLabel.box[valueAxis + 1] > end || firstLabel.box[valueAxis + 2] < start) {\n firstLabel.options.visible = false;\n }\n if (lastLabel.box[valueAxis + 1] > end || lastLabel.box[valueAxis + 2] < start) {\n lastLabel.options.visible = false;\n }\n }\n };\n\n CategoryAxis.prototype.getMajorTickPositions = function getMajorTickPositions () {\n return this.getTicks().majorTicks;\n };\n\n CategoryAxis.prototype.getMinorTickPositions = function getMinorTickPositions () {\n return this.getTicks().minorTicks;\n };\n\n CategoryAxis.prototype.getLabelsTickPositions = function getLabelsTickPositions () {\n return this.getTicks().labelTicks;\n };\n\n CategoryAxis.prototype.tickIndices = function tickIndices (stepSize) {\n var ref = this.rangeIndices();\n var min = ref.min;\n var max = ref.max;\n var limit = Math.ceil(max);\n var current = Math.floor(min);\n var indices = [];\n\n while (current <= limit) {\n indices.push(current);\n current += stepSize;\n }\n\n return indices;\n };\n\n CategoryAxis.prototype.getTickPositions = function getTickPositions (stepSize) {\n var ref = this.options;\n var vertical = ref.vertical;\n var reverse = ref.reverse;\n var ref$1 = this.scaleOptions();\n var scale = ref$1.scale;\n var box = ref$1.box;\n var min = ref$1.min;\n var pos = box[(vertical ? Y : X) + (reverse ? 2 : 1)];\n var indices = this.tickIndices(stepSize);\n var positions = [];\n\n for (var idx = 0; idx < indices.length; idx++) {\n positions.push(pos + round(scale * (indices[idx] - min), COORD_PRECISION));\n }\n\n return positions;\n };\n\n CategoryAxis.prototype.getTicks = function getTicks () {\n var options = this.options;\n var cache = this._ticks;\n var range = this.rangeIndices();\n var lineBox = this.lineBox();\n var hash = lineBox.getHash() + range.min + \",\" + range.max + options.reverse + options.justified;\n\n if (cache._hash !== hash) {\n var hasMinor = options.minorTicks.visible || options.minorGridLines.visible;\n cache._hash = hash;\n cache.labelTicks = this.getTickPositions(1);\n cache.majorTicks = this.filterOutOfRangePositions(cache.labelTicks, lineBox);\n cache.minorTicks = hasMinor ? this.filterOutOfRangePositions(this.getTickPositions(0.5), lineBox) : [];\n }\n\n return cache;\n };\n\n CategoryAxis.prototype.filterOutOfRangePositions = function filterOutOfRangePositions (positions, lineBox) {\n if (!positions.length) {\n return positions;\n }\n\n var axis = this.options.vertical ? Y : X;\n var inRange = function (position) { return lineBox[axis + 1] <= position && position <= lineBox[axis + 2]; };\n\n var end = positions.length - 1;\n var startIndex = 0;\n while (!inRange(positions[startIndex]) && startIndex <= end) {\n startIndex++;\n }\n\n var endIndex = end;\n\n while (!inRange(positions[endIndex]) && endIndex >= 0) {\n endIndex--;\n }\n\n return positions.slice(startIndex, endIndex + 1);\n };\n\n CategoryAxis.prototype.lineInfo = function lineInfo () {\n var ref = this.options;\n var vertical = ref.vertical;\n var reverse = ref.reverse;\n var lineBox = this.lineBox();\n var lineSize = vertical ? lineBox.height() : lineBox.width();\n var axis = vertical ? Y : X;\n var axisDir = reverse ? -1 : 1;\n var startEdge = axisDir === 1 ? 1 : 2;\n var axisOrigin = axis + startEdge.toString();\n var lineStart = lineBox[axisOrigin];\n\n return {\n axis: axis,\n axisOrigin: axisOrigin,\n axisDir: axisDir,\n lineBox: lineBox,\n lineSize: lineSize,\n lineStart: lineStart\n };\n };\n\n CategoryAxis.prototype.lineDir = function lineDir () {\n /*\n * Category axis line direction:\n * * Vertical: down.\n * * Horizontal: right.\n */\n\n var ref = this.options;\n var reverse = ref.reverse;\n return reverse ? -1 : 1;\n };\n\n // TODO: Rename to slotBox, valueSlot, slotByIndex?\n CategoryAxis.prototype.getSlot = function getSlot (from, to, limit) {\n var options = this.options;\n var reverse = options.reverse;\n var justified = options.justified;\n var ref = this.scaleOptions();\n var scale = ref.scale;\n var box = ref.box;\n var min = ref.min;\n var ref$1 = this.lineInfo();\n var valueAxis = ref$1.axis;\n var lineStart = ref$1.lineStart;\n\n var slotBox = box.clone();\n var singleSlot = !defined(to);\n\n var start = valueOrDefault(from, 0);\n var end = valueOrDefault(to, start);\n end = Math.max(end - 1, start);\n\n // Fixes transient bug caused by iOS 6.0 JIT\n // (one can never be too sure)\n end = Math.max(start, end);\n\n var p1 = lineStart + (start - min) * scale;\n var p2 = lineStart + (end + 1 - min) * scale;\n\n if (singleSlot && justified) {\n p2 = p1;\n }\n\n if (limit) {\n p1 = limitValue(p1, box[valueAxis + 1], box[valueAxis + 2]);\n p2 = limitValue(p2, box[valueAxis + 1], box[valueAxis + 2]);\n }\n\n slotBox[valueAxis + 1] = reverse ? p2 : p1;\n slotBox[valueAxis + 2] = reverse ? p1 : p2;\n\n return slotBox;\n };\n\n CategoryAxis.prototype.limitSlot = function limitSlot (slot) {\n var vertical = this.options.vertical;\n var valueAxis = vertical ? Y : X;\n var lineBox = this.lineBox();\n var limittedSlot = slot.clone();\n\n limittedSlot[valueAxis + 1] = limitValue(slot[valueAxis + 1], lineBox[valueAxis + 1], lineBox[valueAxis + 2]);\n limittedSlot[valueAxis + 2] = limitValue(slot[valueAxis + 2], lineBox[valueAxis + 1], lineBox[valueAxis + 2]);\n\n return limittedSlot;\n };\n\n CategoryAxis.prototype.slot = function slot (from, to, limit) {\n var min = Math.floor(this.options.min || 0);\n var start = from;\n var end = to;\n\n if (typeof start === \"string\") {\n start = this.categoryIndex(start);\n } else if (isNumber(start)) {\n start -= min;\n }\n\n if (typeof end === \"string\") {\n end = this.categoryIndex(end);\n } else if (isNumber(end)) {\n end -= min;\n }\n\n return Axis.prototype.slot.call(this, start, end, limit);\n };\n\n CategoryAxis.prototype.pointCategoryIndex = function pointCategoryIndex (point) {\n var ref = this.options;\n var reverse = ref.reverse;\n var justified = ref.justified;\n var vertical = ref.vertical;\n var valueAxis = vertical ? Y : X;\n var ref$1 = this.scaleOptions();\n var scale = ref$1.scale;\n var box = ref$1.box;\n var min = ref$1.min;\n var max = ref$1.max;\n var startValue = reverse ? max : min;\n var lineStart = box[valueAxis + 1];\n var lineEnd = box[valueAxis + 2];\n var pos = point[valueAxis];\n\n if (pos < lineStart || pos > lineEnd) {\n return null;\n }\n\n var value = startValue + (pos - lineStart) / scale;\n var diff = value % 1;\n\n if (justified) {\n value = Math.round(value);\n } else if (diff === 0 && value > 0) {\n value--;\n }\n\n return Math.floor(value);\n };\n\n CategoryAxis.prototype.getCategory = function getCategory (point) {\n var index = this.pointCategoryIndex(point);\n\n if (index === null) {\n return null;\n }\n\n return this.options.categories[index];\n };\n\n CategoryAxis.prototype.categoryIndex = function categoryIndex (value) {\n return this.totalIndex(value) - Math.floor(this.options.min || 0);\n };\n\n CategoryAxis.prototype.categoryAt = function categoryAt (index, total) {\n var options = this.options;\n\n return (total ? options.srcCategories : options.categories)[index];\n };\n\n CategoryAxis.prototype.categoriesCount = function categoriesCount () {\n return (this.options.categories || []).length;\n };\n\n CategoryAxis.prototype.translateRange = function translateRange (delta) {\n var options = this.options;\n var lineBox = this.lineBox();\n var size = options.vertical ? lineBox.height() : lineBox.width();\n var range = options.categories.length;\n var scale = size / range;\n var offset = round(delta / scale, DEFAULT_PRECISION);\n\n return {\n min: offset,\n max: range + offset\n };\n };\n\n CategoryAxis.prototype.scaleRange = function scaleRange (scale, cursor) {\n var position = Math.abs(this.pointOffset(cursor));\n var rangeIndices = this.limitedRangeIndices();\n var range = rangeIndices.max - rangeIndices.min;\n var delta = this.scaleToDelta(scale, range);\n var minDelta = position * delta;\n var maxDelta = (1 - position) * delta;\n var min = rangeIndices.min + minDelta;\n var max = rangeIndices.max - maxDelta;\n\n if (max - min < MIN_CATEGORY_RANGE) {\n max = min + MIN_CATEGORY_RANGE;\n }\n\n return {\n min: min,\n max: max\n };\n };\n\n CategoryAxis.prototype.zoomRange = function zoomRange (scale, cursor) {\n var ref = this.totalRange();\n var totalMin = ref.min;\n var totalMax = ref.max;\n var range = this.scaleRange(scale, cursor);\n\n return {\n min: limitValue(range.min, totalMin, totalMax),\n max: limitValue(range.max, totalMin, totalMax)\n };\n };\n\n CategoryAxis.prototype.labelsCount = function labelsCount () {\n var labelsRange = this.labelsRange();\n\n return labelsRange.max - labelsRange.min;\n };\n\n CategoryAxis.prototype.labelsRange = function labelsRange () {\n var options = this.options;\n var justified = options.justified;\n var labelOptions = options.labels;\n var ref = this.limitedRangeIndices(true);\n var min = ref.min;\n var max = ref.max;\n var start = Math.floor(min);\n\n if (!justified) {\n min = Math.floor(min);\n max = Math.ceil(max);\n } else {\n min = Math.ceil(min);\n max = Math.floor(max);\n }\n\n var skip;\n\n if (min > labelOptions.skip) {\n skip = labelOptions.skip + labelOptions.step * Math.ceil((min - labelOptions.skip) / labelOptions.step);\n } else {\n skip = labelOptions.skip;\n }\n\n return {\n min: skip - start,\n max: (options.categories.length ? max + (justified ? 1 : 0) : 0) - start\n };\n };\n\n CategoryAxis.prototype.createAxisLabel = function createAxisLabel (index, labelOptions, labelContext) {\n var options = this.options;\n var dataItem = options.dataItems ? options.dataItems[index] : null;\n var category = valueOrDefault(options.categories[index], \"\");\n\n labelContext.dataItem = dataItem;\n var text = this.axisLabelText(category, labelOptions, labelContext);\n\n return new AxisLabel(category, text, index, dataItem, labelOptions);\n };\n\n CategoryAxis.prototype.shouldRenderNote = function shouldRenderNote (value) {\n var range = this.limitedRangeIndices();\n\n return Math.floor(range.min) <= value && value <= Math.ceil(range.max);\n };\n\n CategoryAxis.prototype.noteSlot = function noteSlot (value) {\n var options = this.options;\n var index = value - Math.floor(options.min || 0);\n return this.getSlot(index);\n };\n\n CategoryAxis.prototype.arrangeNotes = function arrangeNotes () {\n Axis.prototype.arrangeNotes.call(this);\n this.hideOutOfRangeNotes();\n };\n\n CategoryAxis.prototype.hideOutOfRangeNotes = function hideOutOfRangeNotes () {\n var ref = this;\n var notes = ref.notes;\n var box = ref.box;\n if (notes && notes.length) {\n var valueAxis = this.options.vertical ? Y : X;\n var start = box[valueAxis + 1];\n var end = box[valueAxis + 2];\n\n for (var idx = 0; idx < notes.length; idx++) {\n var note = notes[idx];\n if (note.box && (end < note.box[valueAxis + 1] || note.box[valueAxis + 2] < start)) {\n note.hide();\n }\n }\n }\n };\n\n CategoryAxis.prototype.pan = function pan (delta) {\n var range = this.limitedRangeIndices(true);\n var ref = this.scaleOptions();\n var scale = ref.scale;\n var offset = round(delta / scale, DEFAULT_PRECISION);\n var totalRange = this.totalRange();\n var min = range.min + offset;\n var max = range.max + offset;\n\n return this.limitRange(min, max, 0, totalRange.max, offset);\n };\n\n CategoryAxis.prototype.pointsRange = function pointsRange (start, end) {\n var ref = this.options;\n var reverse = ref.reverse;\n var vertical = ref.vertical;\n var valueAxis = vertical ? Y : X;\n var range = this.limitedRangeIndices(true);\n var ref$1 = this.scaleOptions();\n var scale = ref$1.scale;\n var box = ref$1.box;\n var lineStart = box[valueAxis + (reverse ? 2 : 1)];\n\n var diffStart = start[valueAxis] - lineStart;\n var diffEnd = end[valueAxis] - lineStart;\n\n var min = range.min + diffStart / scale;\n var max = range.min + diffEnd / scale;\n var rangeMin = Math.min(min, max);\n var rangeMax = Math.max(min, max);\n\n if (rangeMax - rangeMin >= MIN_CATEGORY_POINTS_RANGE) {\n return {\n min: rangeMin,\n max: rangeMax\n };\n }\n };\n\n CategoryAxis.prototype.valueRange = function valueRange () {\n return this.range();\n };\n\n CategoryAxis.prototype.totalIndex = function totalIndex (value) {\n var options = this.options;\n var index = this._categoriesMap ?\n this._categoriesMap.get(value) : indexOf(value, options.srcCategories);\n\n return index;\n };\n\n CategoryAxis.prototype.currentRangeIndices = function currentRangeIndices () {\n var options = this.options;\n var min = 0;\n\n if (isNumber(options.min)) {\n min = Math.floor(options.min);\n }\n\n var max;\n if (isNumber(options.max)) {\n max = options.justified ? Math.floor(options.max) : Math.ceil(options.max) - 1;\n } else {\n max = this.totalCount() - 1;\n }\n\n return {\n min: min,\n max: max\n };\n };\n\n CategoryAxis.prototype.limitedRangeIndices = function limitedRangeIndices (totalLimit) {\n var options = this.options;\n var min = isNumber(options.min) ? options.min : 0;\n var max;\n\n if (isNumber(options.max)) {\n max = options.max;\n } else if (isNumber(options.min)) {\n max = min + options.categories.length;\n } else {\n max = this.totalRange().max || 1;\n }\n\n if (totalLimit) {\n var totalRange = this.totalRange();\n min = limitValue(min, 0, totalRange.max);\n max = limitValue(max, 0, totalRange.max);\n }\n\n return {\n min: min,\n max: max\n };\n };\n\n CategoryAxis.prototype.totalRangeIndices = function totalRangeIndices () {\n return {\n min: 0,\n max: this.totalRange().max || 1\n };\n };\n\n CategoryAxis.prototype.indexCategories = function indexCategories () {\n if (!this._categoriesMap) {\n var map = this._categoriesMap = new HashMap();\n var srcCategories = this.options.srcCategories;\n for (var idx = 0; idx < srcCategories.length; idx++) {\n map.set(srcCategories[idx], idx);\n }\n }\n };\n\n CategoryAxis.prototype.totalCount = function totalCount () {\n return Math.max(this.options.srcCategories.length, this._seriesMax || 0);\n };\n\n return CategoryAxis;\n}(Axis));\n\nsetDefaultOptions(CategoryAxis, {\n type: \"category\",\n vertical: false,\n majorGridLines: {\n visible: false,\n width: 1,\n color: BLACK\n },\n labels: {\n zIndex: 1\n },\n justified: false,\n _deferLabels: true\n});\n\nexport default CategoryAxis;\n","var COORDINATE_LIMIT = 300000;\n\nvar DateLabelFormats = {\n milliseconds: \"HH:mm:ss.fff\",\n seconds: \"HH:mm:ss\",\n minutes: \"HH:mm\",\n hours: \"HH:mm\",\n days: \"M/d\",\n weeks: \"M/d\",\n months: \"MMM 'yy\",\n years: \"yyyy\"\n};\n\nvar ZERO_THRESHOLD = 0.2;\n\nexport {\n COORDINATE_LIMIT, DateLabelFormats, ZERO_THRESHOLD\n};","import CategoryAxis from './category-axis';\nimport AxisLabel from './axis-label';\nimport Box from './box';\n\nimport { CENTER, DATE, DEFAULT_PRECISION, MAX_VALUE, OBJECT, X, Y } from '../common/constants';\nimport { deepExtend, defined, inArray, last, limitValue, round, setDefaultOptions, sparseArrayLimits } from '../common';\n\nimport { MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS, WEEKS, MONTHS, YEARS,\n TIME_PER_MINUTE, TIME_PER_HOUR, TIME_PER_DAY, TIME_PER_WEEK,\n TIME_PER_MONTH, TIME_PER_YEAR, TIME_PER_UNIT } from '../date-utils/constants';\nimport { dateComparer, toDate, addTicks, addDuration, dateDiff, absoluteDateDiff,\n dateIndex, dateEquals, toTime, parseDate, parseDates, firstDay } from '../date-utils';\n\nimport { DateLabelFormats } from './constants';\n\nvar AUTO = \"auto\";\nvar BASE_UNITS = [\n MILLISECONDS, SECONDS, MINUTES, HOURS, DAYS, WEEKS, MONTHS, YEARS\n];\nvar FIT = \"fit\";\n\n\nfunction categoryRange(categories, clearCache) {\n if (clearCache) {\n categories._range = undefined;\n }\n\n var range = categories._range;\n if (!range) {\n range = categories._range = sparseArrayLimits(categories);\n range.min = toDate(range.min);\n range.max = toDate(range.max);\n }\n\n return range;\n}\n\nvar EmptyDateRange = function EmptyDateRange(options) {\n this.options = options;\n};\n\nEmptyDateRange.prototype.displayIndices = function displayIndices () {\n return {\n min: 0,\n max: 1\n };\n};\n\nEmptyDateRange.prototype.displayRange = function displayRange () {\n return {};\n};\n\nEmptyDateRange.prototype.total = function total () {\n return {};\n};\n\nEmptyDateRange.prototype.valueRange = function valueRange () {\n return {};\n};\n\nEmptyDateRange.prototype.valueIndex = function valueIndex () {\n return -1;\n};\n\nEmptyDateRange.prototype.values = function values () {\n return [];\n};\n\nEmptyDateRange.prototype.totalIndex = function totalIndex () {\n return -1;\n};\n\nEmptyDateRange.prototype.valuesCount = function valuesCount () {\n return 0;\n};\n\nEmptyDateRange.prototype.totalCount = function totalCount () {\n return 0;\n};\n\nEmptyDateRange.prototype.dateAt = function dateAt () {\n return null;\n};\n\nvar DateRange = function DateRange(start, end, options) {\n this.options = options;\n options.baseUnitStep = options.baseUnitStep || 1;\n\n var roundToBaseUnit = options.roundToBaseUnit;\n var justified = options.justified;\n\n this.start = addDuration(start, 0, options.baseUnit, options.weekStartDay);\n var lowerEnd = this.roundToTotalStep(end);\n var expandEnd = !justified && dateEquals(end, lowerEnd) && !options.justifyEnd;\n\n this.end = this.roundToTotalStep(end, !justified, expandEnd ? 1 : 0);\n\n var min = options.min || start;\n this.valueStart = this.roundToTotalStep(min);\n this.displayStart = roundToBaseUnit ? this.valueStart : min;\n\n var max = options.max;\n if (!max) {\n this.valueEnd = lowerEnd;\n this.displayEnd = roundToBaseUnit || expandEnd ? this.end : end;\n } else {\n var next = !justified && dateEquals(max, this.roundToTotalStep(max)) ? -1 : 0;\n this.valueEnd = this.roundToTotalStep(max, false, next);\n this.displayEnd = roundToBaseUnit ? this.roundToTotalStep(max, !justified) : options.max;\n }\n\n if (this.valueEnd < this.valueStart) {\n this.valueEnd = this.valueStart;\n }\n if (this.displayEnd <= this.displayStart) {\n this.displayEnd = this.roundToTotalStep(this.displayStart, false, 1);\n }\n};\n\nDateRange.prototype.displayRange = function displayRange () {\n return {\n min: this.displayStart,\n max: this.displayEnd\n };\n};\n\nDateRange.prototype.displayIndices = function displayIndices () {\n if (!this._indices) {\n var options = this.options;\n\n var baseUnit = options.baseUnit;\n var baseUnitStep = options.baseUnitStep;\n\n var minIdx = dateIndex(this.displayStart, this.valueStart, baseUnit, baseUnitStep);\n var maxIdx = dateIndex(this.displayEnd, this.valueStart, baseUnit, baseUnitStep);\n\n this._indices = { min: minIdx, max: maxIdx };\n }\n\n return this._indices;\n};\n\nDateRange.prototype.total = function total () {\n return {\n min: this.start,\n max: this.end\n };\n};\n\nDateRange.prototype.totalCount = function totalCount () {\n var last = this.totalIndex(this.end);\n\n return last + (this.options.justified ? 1 : 0);\n};\n\nDateRange.prototype.valueRange = function valueRange () {\n return {\n min: this.valueStart,\n max: this.valueEnd\n };\n};\n\nDateRange.prototype.valueIndex = function valueIndex (value) {\n var options = this.options;\n return Math.floor(dateIndex(value, this.valueStart, options.baseUnit, options.baseUnitStep));\n};\n\nDateRange.prototype.totalIndex = function totalIndex (value) {\n var options = this.options;\n return Math.floor(dateIndex(value, this.start, options.baseUnit, options.baseUnitStep));\n};\n\nDateRange.prototype.dateIndex = function dateIndex$1 (value) {\n var options = this.options;\n return dateIndex(value, this.valueStart, options.baseUnit, options.baseUnitStep);\n};\n\nDateRange.prototype.valuesCount = function valuesCount () {\n var maxIdx = this.valueIndex(this.valueEnd);\n\n return maxIdx + 1;\n};\n\nDateRange.prototype.values = function values () {\n var values = this._values;\n if (!values) {\n var options = this.options;\n var range = this.valueRange();\n this._values = values = [];\n\n for (var date = range.min; date <= range.max;) {\n values.push(date);\n date = addDuration(date, options.baseUnitStep, options.baseUnit, options.weekStartDay);\n }\n }\n\n return values;\n};\n\nDateRange.prototype.dateAt = function dateAt (index, total) {\n var options = this.options;\n\n return addDuration(total ? this.start : this.valueStart, options.baseUnitStep * index, options.baseUnit, options.weekStartDay);\n};\n\nDateRange.prototype.roundToTotalStep = function roundToTotalStep (value, upper, next) {\n var ref = this.options;\n var baseUnit = ref.baseUnit;\n var baseUnitStep = ref.baseUnitStep;\n var weekStartDay = ref.weekStartDay;\n var start = this.start;\n\n var step = dateIndex(value, start, baseUnit, baseUnitStep);\n var roundedStep = upper ? Math.ceil(step) : Math.floor(step);\n\n if (next) {\n roundedStep += next;\n }\n\n return addDuration(start, roundedStep * baseUnitStep, baseUnit, weekStartDay);\n};\n\nfunction autoBaseUnit(options, startUnit, startStep) {\n var categoryLimits = categoryRange(options.categories);\n var span = (options.max || categoryLimits.max) - (options.min || categoryLimits.min);\n var autoBaseUnitSteps = options.autoBaseUnitSteps;\n var maxDateGroups = options.maxDateGroups;\n var autoUnit = options.baseUnit === FIT;\n var autoUnitIx = startUnit ? BASE_UNITS.indexOf(startUnit) : 0;\n var baseUnit = autoUnit ? BASE_UNITS[autoUnitIx++] : options.baseUnit;\n var units = span / TIME_PER_UNIT[baseUnit];\n var totalUnits = units;\n var unitSteps, step, nextStep;\n\n while (!step || units >= maxDateGroups) {\n unitSteps = unitSteps || autoBaseUnitSteps[baseUnit].slice(0);\n\n do {\n nextStep = unitSteps.shift();\n } while (nextStep && startUnit === baseUnit && nextStep < startStep);\n\n if (nextStep) {\n step = nextStep;\n units = totalUnits / step;\n } else if (baseUnit === last(BASE_UNITS)) {\n step = Math.ceil(totalUnits / maxDateGroups);\n break;\n } else if (autoUnit) {\n baseUnit = BASE_UNITS[autoUnitIx++] || last(BASE_UNITS);\n totalUnits = span / TIME_PER_UNIT[baseUnit];\n unitSteps = null;\n } else {\n if (units > maxDateGroups) {\n step = Math.ceil(totalUnits / maxDateGroups);\n }\n break;\n }\n }\n\n options.baseUnitStep = step;\n options.baseUnit = baseUnit;\n}\n\nfunction defaultBaseUnit(options) {\n var categories = options.categories;\n var count = defined(categories) ? categories.length : 0;\n var minDiff = MAX_VALUE;\n var lastCategory, unit;\n\n for (var categoryIx = 0; categoryIx < count; categoryIx++) {\n var category = categories[categoryIx];\n\n if (category && lastCategory) {\n var diff = Math.abs(absoluteDateDiff(category, lastCategory));\n\n if (diff !== 0) {\n minDiff = Math.min(minDiff, diff);\n\n if (minDiff >= TIME_PER_YEAR) {\n unit = YEARS;\n } else if (minDiff >= TIME_PER_MONTH - TIME_PER_DAY * 3) {\n unit = MONTHS;\n } else if (minDiff >= TIME_PER_WEEK) {\n unit = WEEKS;\n } else if (minDiff >= TIME_PER_DAY) {\n unit = DAYS;\n } else if (minDiff >= TIME_PER_HOUR) {\n unit = HOURS;\n } else if (minDiff >= TIME_PER_MINUTE) {\n unit = MINUTES;\n } else {\n unit = SECONDS;\n }\n }\n }\n\n lastCategory = category;\n }\n\n options.baseUnit = unit || DAYS;\n}\n\nfunction initUnit(options) {\n var baseUnit = (options.baseUnit || \"\").toLowerCase();\n var useDefault = baseUnit !== FIT && !inArray(baseUnit, BASE_UNITS);\n\n if (useDefault) {\n defaultBaseUnit(options);\n }\n\n if (baseUnit === FIT || options.baseUnitStep === AUTO) {\n autoBaseUnit(options);\n }\n\n return options;\n}\n\nvar DateCategoryAxis = (function (CategoryAxis) {\n function DateCategoryAxis () {\n CategoryAxis.apply(this, arguments);\n }\n\n if ( CategoryAxis ) DateCategoryAxis.__proto__ = CategoryAxis;\n DateCategoryAxis.prototype = Object.create( CategoryAxis && CategoryAxis.prototype );\n DateCategoryAxis.prototype.constructor = DateCategoryAxis;\n\n DateCategoryAxis.prototype.clone = function clone () {\n var copy = new DateCategoryAxis(Object.assign({}, this.options), this.chartService);\n copy.createLabels();\n\n return copy;\n };\n\n DateCategoryAxis.prototype.categoriesHash = function categoriesHash () {\n var start = this.dataRange.total().min;\n return this.options.baseUnit + this.options.baseUnitStep + start;\n };\n\n DateCategoryAxis.prototype.initUserOptions = function initUserOptions (options) {\n return options;\n };\n\n DateCategoryAxis.prototype.initFields = function initFields () {\n CategoryAxis.prototype.initFields.call(this);\n\n var chartService = this.chartService;\n var intlService = chartService.intl;\n var options = this.options;\n\n var categories = options.categories || [];\n if (!categories._parsed) {\n categories = parseDates(intlService, categories);\n categories._parsed = true;\n }\n\n options = deepExtend({\n roundToBaseUnit: true\n }, options, {\n categories: categories,\n min: parseDate(intlService, options.min),\n max: parseDate(intlService, options.max),\n weekStartDay: firstDay(options, intlService)\n });\n\n if (chartService.panning && chartService.isPannable(options.vertical ? Y : X)) {\n options.roundToBaseUnit = false;\n }\n\n options.userSetBaseUnit = options.userSetBaseUnit || options.baseUnit;\n options.userSetBaseUnitStep = options.userSetBaseUnitStep || options.baseUnitStep;\n\n this.options = options;\n options.srcCategories = categories;\n\n if (categories.length > 0) {\n var range = categoryRange(categories, true);\n var maxDivisions = options.maxDivisions;\n var safeOptions = initUnit(options);\n\n var forecast = options._forecast;\n if (forecast) {\n if (forecast.before > 0) {\n range.min = addDuration(range.min, -forecast.before, safeOptions.baseUnit, safeOptions.weekStartDay);\n }\n\n if (forecast.after > 0) {\n range.max = addDuration(range.max, forecast.after, safeOptions.baseUnit, safeOptions.weekStartDay);\n }\n }\n\n this.dataRange = new DateRange(range.min, range.max, safeOptions);\n\n if (maxDivisions) {\n var dataRange = this.dataRange.displayRange();\n\n var divisionOptions = Object.assign({}, options, {\n justified: true,\n roundToBaseUnit: false,\n baseUnit: 'fit',\n min: dataRange.min,\n max: dataRange.max,\n maxDateGroups: maxDivisions\n });\n\n var dataRangeOptions = this.dataRange.options;\n\n autoBaseUnit(divisionOptions, dataRangeOptions.baseUnit, dataRangeOptions.baseUnitStep);\n\n this.divisionRange = new DateRange(range.min, range.max, divisionOptions);\n } else {\n this.divisionRange = this.dataRange;\n }\n\n } else {\n options.baseUnit = options.baseUnit || DAYS;\n this.dataRange = this.divisionRange = new EmptyDateRange(options);\n }\n\n this.rangeLabels = [];\n };\n\n DateCategoryAxis.prototype.tickIndices = function tickIndices (stepSize) {\n var ref = this;\n var dataRange = ref.dataRange;\n var divisionRange = ref.divisionRange;\n var valuesCount = divisionRange.valuesCount();\n\n if (!this.options.maxDivisions || !valuesCount) {\n return CategoryAxis.prototype.tickIndices.call(this, stepSize);\n }\n\n var indices = [];\n var values = divisionRange.values();\n var offset = 0;\n\n if (!this.options.justified) {\n values = values.concat(divisionRange.dateAt(valuesCount));\n offset = 0.5;//align ticks to the center of not justified categories\n }\n\n for (var idx = 0; idx < values.length; idx++) {\n indices.push(dataRange.dateIndex(values[idx]) + offset);\n if (stepSize !== 1 && idx >= 1) {\n var last = indices.length - 1;\n indices.splice(idx, 0, indices[last - 1] + (indices[last] - indices[last - 1]) * stepSize);\n }\n }\n\n return indices;\n };\n\n DateCategoryAxis.prototype.shouldRenderNote = function shouldRenderNote (value) {\n var range = this.range();\n var categories = this.options.categories || [];\n\n return dateComparer(value, range.min) >= 0 && dateComparer(value, range.max) <= 0 && categories.length;\n };\n\n DateCategoryAxis.prototype.parseNoteValue = function parseNoteValue (value) {\n return parseDate(this.chartService.intl, value);\n };\n\n DateCategoryAxis.prototype.noteSlot = function noteSlot (value) {\n return this.getSlot(value);\n };\n\n DateCategoryAxis.prototype.translateRange = function translateRange (delta) {\n var options = this.options;\n var baseUnit = options.baseUnit;\n var weekStartDay = options.weekStartDay;\n var vertical = options.vertical;\n var lineBox = this.lineBox();\n var size = vertical ? lineBox.height() : lineBox.width();\n var range = this.range();\n var scale = size / (range.max - range.min);\n var offset = round(delta / scale, DEFAULT_PRECISION);\n\n if (range.min && range.max) {\n var from = addTicks(options.min || range.min, offset);\n var to = addTicks(options.max || range.max, offset);\n\n range = {\n min: addDuration(from, 0, baseUnit, weekStartDay),\n max: addDuration(to, 0, baseUnit, weekStartDay)\n };\n }\n\n return range;\n };\n\n DateCategoryAxis.prototype.labelsRange = function labelsRange () {\n return {\n min: this.options.labels.skip,\n max: this.divisionRange.valuesCount()\n };\n };\n\n DateCategoryAxis.prototype.pan = function pan (delta) {\n if (this.isEmpty()) {\n return null;\n }\n\n var options = this.options;\n var lineBox = this.lineBox();\n var size = options.vertical ? lineBox.height() : lineBox.width();\n var ref = this.dataRange.displayRange();\n var min = ref.min;\n var max = ref.max;\n var totalLimits = this.dataRange.total();\n var scale = size / (max - min);\n var offset = round(delta / scale, DEFAULT_PRECISION) * (options.reverse ? -1 : 1);\n var from = addTicks(min, offset);\n var to = addTicks(max, offset);\n\n var panRange = this.limitRange(toTime(from), toTime(to), toTime(totalLimits.min), toTime(totalLimits.max), offset);\n\n if (panRange) {\n panRange.min = toDate(panRange.min);\n panRange.max = toDate(panRange.max);\n panRange.baseUnit = options.baseUnit;\n panRange.baseUnitStep = options.baseUnitStep || 1;\n panRange.userSetBaseUnit = options.userSetBaseUnit;\n panRange.userSetBaseUnitStep = options.userSetBaseUnitStep;\n\n return panRange;\n }\n };\n\n DateCategoryAxis.prototype.pointsRange = function pointsRange (start, end) {\n if (this.isEmpty()) {\n return null;\n }\n\n var pointsRange = CategoryAxis.prototype.pointsRange.call(this, start, end);\n var datesRange = this.dataRange.displayRange();\n var indicesRange = this.dataRange.displayIndices();\n var scale = dateDiff(datesRange.max, datesRange.min) / (indicesRange.max - indicesRange.min);\n var options = this.options;\n\n var min = addTicks(datesRange.min, pointsRange.min * scale);\n var max = addTicks(datesRange.min, pointsRange.max * scale);\n\n return {\n min: min,\n max: max,\n baseUnit: options.userSetBaseUnit || options.baseUnit,\n baseUnitStep: options.userSetBaseUnitStep || options.baseUnitStep\n };\n };\n\n DateCategoryAxis.prototype.scaleRange = function scaleRange (scale, cursor) {\n if (this.isEmpty()) {\n return {};\n }\n\n var options = this.options;\n var fit = options.userSetBaseUnit === FIT;\n var totalLimits = this.dataRange.total();\n var ref = this.dataRange.displayRange();\n var rangeMin = ref.min;\n var rangeMax = ref.max;\n\n var position = Math.abs(this.pointOffset(cursor));\n var range = rangeMax - rangeMin;\n var delta = this.scaleToDelta(scale, range);\n var minDelta = Math.round(position * delta);\n var maxDelta = Math.round((1 - position) * delta);\n\n var ref$1 = this.dataRange.options;\n var baseUnit = ref$1.baseUnit;\n var min = new Date(rangeMin.getTime() + minDelta);\n var max = new Date(rangeMax.getTime() - maxDelta);\n\n if (fit) {\n var autoBaseUnitSteps = options.autoBaseUnitSteps;\n var maxDateGroups = options.maxDateGroups;\n\n var maxDiff = last(autoBaseUnitSteps[baseUnit]) * maxDateGroups * TIME_PER_UNIT[baseUnit];\n var rangeDiff = dateDiff(rangeMax, rangeMin);\n var diff = dateDiff(max, min);\n var baseUnitIndex = BASE_UNITS.indexOf(baseUnit);\n var autoBaseUnitStep, ticks;\n\n if (diff < TIME_PER_UNIT[baseUnit] && baseUnit !== MILLISECONDS) {\n baseUnit = BASE_UNITS[baseUnitIndex - 1];\n autoBaseUnitStep = last(autoBaseUnitSteps[baseUnit]);\n ticks = (rangeDiff - (maxDateGroups - 1) * autoBaseUnitStep * TIME_PER_UNIT[baseUnit]) / 2;\n min = addTicks(rangeMin, ticks);\n max = addTicks(rangeMax, -ticks);\n\n } else if (diff > maxDiff && baseUnit !== YEARS) {\n var stepIndex = 0;\n\n do {\n baseUnitIndex++;\n baseUnit = BASE_UNITS[baseUnitIndex];\n stepIndex = 0;\n ticks = 2 * TIME_PER_UNIT[baseUnit];\n do {\n autoBaseUnitStep = autoBaseUnitSteps[baseUnit][stepIndex];\n stepIndex++;\n } while (stepIndex < autoBaseUnitSteps[baseUnit].length && ticks * autoBaseUnitStep < rangeDiff);\n } while (baseUnit !== YEARS && ticks * autoBaseUnitStep < rangeDiff);\n\n ticks = (ticks * autoBaseUnitStep - rangeDiff) / 2;\n if (ticks > 0) {\n min = addTicks(rangeMin, -ticks);\n max = addTicks(rangeMax, ticks);\n min = addTicks(min, limitValue(max, totalLimits.min, totalLimits.max) - max);\n max = addTicks(max, limitValue(min, totalLimits.min, totalLimits.max) - min);\n }\n }\n }\n\n if (min && max && dateDiff(max, min) > 0) {\n return {\n min: min,\n max: max,\n baseUnit: options.userSetBaseUnit || options.baseUnit,\n baseUnitStep: options.userSetBaseUnitStep || options.baseUnitStep\n };\n }\n };\n\n DateCategoryAxis.prototype.zoomRange = function zoomRange (scale, cursor) {\n var totalLimits = this.dataRange.total();\n var range = this.scaleRange(scale, cursor);\n\n if (range) {\n if (range.min < totalLimits.min) {\n range.min = totalLimits.min;\n }\n if (range.max > totalLimits.max) {\n range.max = totalLimits.max;\n }\n }\n\n return range;\n };\n\n DateCategoryAxis.prototype.range = function range () {\n return this.dataRange.displayRange();\n };\n\n DateCategoryAxis.prototype.createLabels = function createLabels () {\n CategoryAxis.prototype.createLabels.call(this);\n this.createRangeLabels();\n };\n\n DateCategoryAxis.prototype.clearLabels = function clearLabels () {\n CategoryAxis.prototype.clearLabels.call(this);\n this.rangeLabels = [];\n };\n\n DateCategoryAxis.prototype.arrangeLabels = function arrangeLabels () {\n this.arrangeRangeLabels();\n CategoryAxis.prototype.arrangeLabels.call(this);\n };\n\n DateCategoryAxis.prototype.arrangeRangeLabels = function arrangeRangeLabels () {\n var ref = this;\n var options = ref.options;\n var rangeLabels = ref.rangeLabels;\n if (rangeLabels.length === 0) {\n return;\n }\n\n var lineBox = this.lineBox();\n var vertical = options.vertical;\n var mirror = options.rangeLabels.mirror || options.labels.mirror;\n\n var firstLabel = rangeLabels[0];\n if (firstLabel) {\n var position = vertical ? lineBox.y1 - (firstLabel.box.height() / 2) : lineBox.x1;\n this.positionLabel(firstLabel, mirror, position);\n }\n\n var lastLabel = rangeLabels[1];\n if (lastLabel) {\n var position$1 = vertical ? lineBox.y2 - (lastLabel.box.height() / 2) : lineBox.x2;\n this.positionLabel(lastLabel, mirror, position$1);\n }\n };\n\n DateCategoryAxis.prototype.autoRotateLabels = function autoRotateLabels () {\n CategoryAxis.prototype.autoRotateLabels.call(this);\n this.autoRotateRangeLabels();\n };\n\n DateCategoryAxis.prototype.hideOutOfRangeLabels = function hideOutOfRangeLabels () {\n CategoryAxis.prototype.hideOutOfRangeLabels.call(this);\n this.hideOverlappingLabels();\n };\n\n DateCategoryAxis.prototype.hideOverlappingLabels = function hideOverlappingLabels () {\n var ref = this;\n var rangeLabels = ref.rangeLabels;\n var labels = ref.labels;\n if (rangeLabels.length === 0) {\n return;\n }\n\n function clip(rangeLabel, label) {\n if (!label.options.visible || label.box.overlaps(rangeLabel.box)) {\n label.options.visible = false;\n return true;\n }\n\n return false;\n }\n\n var firstRangeLabel = rangeLabels[0];\n if (firstRangeLabel && firstRangeLabel.options.visible) {\n for (var i = 0; i < labels.length; i++) {\n var overlaps = clip(firstRangeLabel, labels[i]);\n if (!overlaps) {\n break;\n }\n }\n }\n\n var lastRangeLabel = rangeLabels[1];\n if (lastRangeLabel && lastRangeLabel.options.visible) {\n for (var i$1 = labels.length - 1; i$1 > 0; --i$1) {\n var overlaps$1 = clip(lastRangeLabel, labels[i$1]);\n if (!overlaps$1) {\n break;\n }\n }\n }\n };\n\n DateCategoryAxis.prototype.contentBox = function contentBox () {\n var box = CategoryAxis.prototype.contentBox.call(this);\n var rangeLabels = this.rangeLabels;\n\n for (var i = 0; i < rangeLabels.length; i++) {\n var label = rangeLabels[i];\n if (label.options.visible) {\n box.wrap(label.box);\n }\n }\n\n return box;\n };\n\n DateCategoryAxis.prototype.createAxisLabel = function createAxisLabel (index, labelOptions, labelContext) {\n if ( labelContext === void 0 ) labelContext = {};\n\n var options = this.options;\n var dataItem = options.dataItems && !options.maxDivisions ? options.dataItems[index] : null;\n var date = this.divisionRange.dateAt(index);\n var unitFormat = labelOptions.dateFormats[this.divisionRange.options.baseUnit];\n\n labelOptions.format = labelOptions.format || unitFormat;\n labelContext.dataItem = dataItem;\n\n var text = this.axisLabelText(date, labelOptions, labelContext);\n if (text) {\n return new AxisLabel(date, text, index, dataItem, labelOptions);\n }\n };\n\n DateCategoryAxis.prototype.createRangeLabels = function createRangeLabels () {\n var this$1 = this;\n\n var ref = this.divisionRange;\n var displayStart = ref.displayStart;\n var displayEnd = ref.displayEnd;\n var options = this.options;\n var labelOptions = Object.assign({}, options.labels, options.rangeLabels, {\n align: CENTER,\n zIndex: options.zIndex\n });\n\n if (labelOptions.visible !== true) {\n return;\n }\n\n this.normalizeLabelRotation(labelOptions);\n labelOptions.alignRotation = CENTER;\n\n if (labelOptions.rotation === \"auto\") {\n labelOptions.rotation = 0;\n options.autoRotateRangeLabels = true;\n }\n\n var unitFormat = labelOptions.dateFormats[this.divisionRange.options.baseUnit];\n labelOptions.format = labelOptions.format || unitFormat;\n\n var createLabel = function (index, date, text) {\n if (text) {\n var label = new AxisLabel(date, text, index, null, labelOptions);\n this$1.append(label);\n this$1.rangeLabels.push(label);\n }\n };\n\n var startText = this.axisLabelText(displayStart, labelOptions, { index: 0, count: 2 });\n createLabel(0, displayStart, startText);\n\n var endText = this.axisLabelText(displayEnd, labelOptions, { index: 1, count: 2 });\n createLabel(1, displayEnd, endText);\n };\n\n DateCategoryAxis.prototype.autoRotateRangeLabels = function autoRotateRangeLabels () {\n var this$1 = this;\n\n var labels = this.rangeLabels;\n if (!this.options.autoRotateRangeLabels || this.options.vertical || labels.length !== 2) {\n return;\n }\n\n var rotateLabel = function (label, tickPositions, index) {\n var width = Math.abs(tickPositions[index + 1] - tickPositions[index]) * 2;\n var angle = this$1.autoRotateLabelAngle(label.box, width);\n if (angle !== 0) {\n label.options.rotation = angle;\n label.reflow(new Box());\n }\n };\n\n var tickPositions = this.getMajorTickPositions();\n rotateLabel(labels[0], tickPositions, 0);\n rotateLabel(labels[1], tickPositions, tickPositions.length - 2);\n };\n\n DateCategoryAxis.prototype.categoryIndex = function categoryIndex (value) {\n return this.dataRange.valueIndex(value);\n };\n\n DateCategoryAxis.prototype.slot = function slot (from, to, limit) {\n var dateRange = this.dataRange;\n var start = from;\n var end = to;\n\n if (start instanceof Date) {\n start = dateRange.dateIndex(start);\n }\n\n if (end instanceof Date) {\n end = dateRange.dateIndex(end);\n }\n\n var slot = this.getSlot(start, end, limit);\n if (slot) {\n return slot.toRect();\n }\n };\n\n DateCategoryAxis.prototype.getSlot = function getSlot (a, b, limit) {\n var start = a;\n var end = b;\n\n if (typeof start === OBJECT) {\n start = this.categoryIndex(start);\n }\n\n if (typeof end === OBJECT) {\n end = this.categoryIndex(end);\n }\n\n return CategoryAxis.prototype.getSlot.call(this, start, end, limit);\n };\n\n DateCategoryAxis.prototype.valueRange = function valueRange () {\n var options = this.options;\n var range = categoryRange(options.srcCategories);\n\n return {\n min: toDate(range.min),\n max: toDate(range.max)\n };\n };\n\n DateCategoryAxis.prototype.categoryAt = function categoryAt (index, total) {\n return this.dataRange.dateAt(index, total);\n };\n\n DateCategoryAxis.prototype.categoriesCount = function categoriesCount () {\n return this.dataRange.valuesCount();\n };\n\n DateCategoryAxis.prototype.rangeIndices = function rangeIndices () {\n return this.dataRange.displayIndices();\n };\n\n DateCategoryAxis.prototype.labelsBetweenTicks = function labelsBetweenTicks () {\n return !this.divisionRange.options.justified;\n };\n\n DateCategoryAxis.prototype.prepareUserOptions = function prepareUserOptions () {\n if (this.isEmpty()) {\n return;\n }\n\n this.options.categories = this.dataRange.values();\n };\n\n DateCategoryAxis.prototype.getCategory = function getCategory (point) {\n var index = this.pointCategoryIndex(point);\n\n if (index === null) {\n return null;\n }\n\n return this.dataRange.dateAt(index);\n };\n\n DateCategoryAxis.prototype.totalIndex = function totalIndex (value) {\n return this.dataRange.totalIndex(value);\n };\n\n DateCategoryAxis.prototype.currentRangeIndices = function currentRangeIndices () {\n var range = this.dataRange.valueRange();\n return {\n min: this.dataRange.totalIndex(range.min),\n max: this.dataRange.totalIndex(range.max)\n };\n };\n\n DateCategoryAxis.prototype.totalRange = function totalRange () {\n return this.dataRange.total();\n };\n\n DateCategoryAxis.prototype.totalRangeIndices = function totalRangeIndices () {\n var range = this.dataRange.total();\n return {\n min: this.dataRange.totalIndex(range.min),\n max: this.dataRange.totalIndex(range.max)\n };\n };\n\n DateCategoryAxis.prototype.totalCount = function totalCount () {\n return this.dataRange.totalCount();\n };\n\n DateCategoryAxis.prototype.isEmpty = function isEmpty () {\n return !this.options.srcCategories.length;\n };\n\n DateCategoryAxis.prototype.roundedRange = function roundedRange () {\n if (this.options.roundToBaseUnit !== false || this.isEmpty()) {\n return this.range();\n }\n\n var options = this.options;\n var datesRange = categoryRange(options.srcCategories);\n\n var dateRange = new DateRange(datesRange.min, datesRange.max, Object.assign({}, options, {\n justified: false,\n roundToBaseUnit: true,\n justifyEnd: false\n }));\n\n return dateRange.displayRange();\n };\n\n return DateCategoryAxis;\n}(CategoryAxis));\n\nsetDefaultOptions(DateCategoryAxis, {\n type: DATE,\n labels: {\n dateFormats: DateLabelFormats\n },\n rangeLabels: {\n visible: false\n },\n autoBaseUnitSteps: {\n milliseconds: [ 1, 10, 100 ],\n seconds: [ 1, 2, 5, 15, 30 ],\n minutes: [ 1, 2, 5, 15, 30 ],\n hours: [ 1, 2, 3 ],\n days: [ 1, 2, 3 ],\n weeks: [ 1, 2 ],\n months: [ 1, 2, 3, 6 ],\n years: [ 1, 2, 3, 5, 10, 25, 50 ]\n },\n maxDateGroups: 10\n});\n\nexport default DateCategoryAxis;\n","import { DEFAULT_PRECISION } from '../../common/constants';\nimport { round } from '../../common';\n\nexport default function floor(value, step) {\n return round(Math.floor(value / step) * step, DEFAULT_PRECISION);\n}\n","import { DEFAULT_PRECISION } from '../../common/constants';\nimport { round } from '../../common';\n\nexport default function ceil(value, step) {\n return round(Math.ceil(value / step) * step, DEFAULT_PRECISION);\n}","import { COORDINATE_LIMIT } from '../constants';\n\nexport default function limitCoordinate(value) {\n return Math.max(Math.min(value, COORDINATE_LIMIT), -COORDINATE_LIMIT);\n}","\nimport Axis from './axis';\nimport AxisLabel from './axis-label';\nimport Box from './box';\n\nimport { BLACK, DEFAULT_PRECISION, COORD_PRECISION } from '../common/constants';\nimport { deepExtend, defined, limitValue, round, setDefaultOptions, valueOrDefault } from '../common';\n\nimport autoMajorUnit from './utils/auto-major-unit';\nimport autoAxisMin from './utils/auto-axis-min';\nimport autoAxisMax from './utils/auto-axis-max';\nimport floor from './utils/floor';\nimport ceil from './utils/ceil';\nimport limitCoordinate from './utils/limit-coordinate';\n\nvar MIN_VALUE_RANGE = Math.pow(10, -DEFAULT_PRECISION + 1);\n\nvar NumericAxis = (function (Axis) {\n function NumericAxis(seriesMin, seriesMax, options, chartService) {\n Axis.call(this, Object.assign({}, options, {\n seriesMin: seriesMin,\n seriesMax: seriesMax\n }), chartService);\n }\n\n if ( Axis ) NumericAxis.__proto__ = Axis;\n NumericAxis.prototype = Object.create( Axis && Axis.prototype );\n NumericAxis.prototype.constructor = NumericAxis;\n\n NumericAxis.prototype.initUserOptions = function initUserOptions (options) {\n var autoOptions = autoAxisOptions(options.seriesMin, options.seriesMax, options);\n this.totalOptions = totalAxisOptions(autoOptions, options);\n\n return axisOptions(autoOptions, options);\n };\n\n NumericAxis.prototype.initFields = function initFields () {\n this.totalMin = this.totalOptions.min;\n this.totalMax = this.totalOptions.max;\n this.totalMajorUnit = this.totalOptions.majorUnit;\n this.seriesMin = this.options.seriesMin;\n this.seriesMax = this.options.seriesMax;\n };\n\n NumericAxis.prototype.clone = function clone () {\n return new NumericAxis(\n this.seriesMin,\n this.seriesMax,\n Object.assign({}, this.options),\n this.chartService\n );\n };\n\n NumericAxis.prototype.startValue = function startValue () {\n return 0;\n };\n\n NumericAxis.prototype.range = function range () {\n var options = this.options;\n return { min: options.min, max: options.max };\n };\n\n NumericAxis.prototype.getDivisions = function getDivisions (stepValue) {\n if (stepValue === 0) {\n return 1;\n }\n\n var options = this.options;\n var range = options.max - options.min;\n\n return Math.floor(round(range / stepValue, COORD_PRECISION)) + 1;\n };\n\n NumericAxis.prototype.getTickPositions = function getTickPositions (unit, skipUnit) {\n var options = this.options;\n var ref = this.lineInfo();\n var axisDir = ref.axisDir;\n var axisOrigin = ref.axisOrigin;\n var lineBox = ref.lineBox;\n var lineSize = ref.lineSize;\n var range = options.max - options.min;\n var scale = lineSize / range;\n var step = unit * scale;\n var divisions = this.getDivisions(unit);\n var positions = [];\n var pos = lineBox[axisOrigin];\n var skipStep = 0;\n\n if (skipUnit) {\n skipStep = skipUnit / unit;\n }\n\n for (var idx = 0; idx < divisions; idx++) {\n if (idx % skipStep !== 0) {\n positions.push(round(pos, COORD_PRECISION));\n }\n\n pos = pos + step * axisDir;\n }\n\n return positions;\n };\n\n NumericAxis.prototype.getMajorTickPositions = function getMajorTickPositions () {\n return this.getTickPositions(this.options.majorUnit);\n };\n\n NumericAxis.prototype.getMinorTickPositions = function getMinorTickPositions () {\n return this.getTickPositions(this.options.minorUnit);\n };\n\n NumericAxis.prototype.getSlot = function getSlot (a, b, limit) {\n if ( limit === void 0 ) limit = false;\n\n var options = this.options;\n var ref = this.lineInfo();\n var axis = ref.axis;\n var axisDir = ref.axisDir;\n var lineBox = ref.lineBox;\n var lineSize = ref.lineSize;\n var lineStart = ref.lineStart;\n var step = axisDir * (lineSize / (options.max - options.min));\n\n var start = valueOrDefault(a, b || 0);\n var end = valueOrDefault(b, a || 0);\n\n if (limit) {\n start = limitValue(start, options.min, options.max);\n end = limitValue(end, options.min, options.max);\n }\n\n var p1 = Math.min(start, end) - options.min;\n var p2 = Math.max(start, end) - options.min;\n\n var slotBox = new Box(lineBox.x1, lineBox.y1, lineBox.x1, lineBox.y1);\n slotBox[axis + 1] = limitCoordinate(lineStart + step * (axisDir > 0 ? p1 : p2));\n slotBox[axis + 2] = limitCoordinate(lineStart + step * (axisDir > 0 ? p2 : p1));\n\n return slotBox;\n };\n\n NumericAxis.prototype.getValue = function getValue (point) {\n var options = this.options;\n var max = Number(options.max);\n var min = Number(options.min);\n var offset = this.pointOffset(point);\n var valueOffset = offset * (max - min);\n\n if (offset < 0 || offset > 1) {\n return null;\n }\n\n var value = min + valueOffset;\n return round(value, DEFAULT_PRECISION);\n };\n\n NumericAxis.prototype.translateRange = function translateRange (delta) {\n var options = this.options;\n var vertical = options.vertical;\n var reverse = options.reverse;\n var max = options.max;\n var min = options.min;\n var ref = this.lineInfo();\n var lineSize = ref.lineSize;\n var range = max - min;\n var scale = lineSize / range;\n var offset = round(delta / scale, DEFAULT_PRECISION);\n\n if ((vertical || reverse) && !(vertical && reverse )) {\n offset = -offset;\n }\n\n return {\n min: min + offset,\n max: max + offset,\n offset: offset\n };\n };\n\n NumericAxis.prototype.labelsCount = function labelsCount () {\n return this.getDivisions(this.options.majorUnit);\n };\n\n NumericAxis.prototype.createAxisLabel = function createAxisLabel (index, labelOptions, labelContext) {\n var options = this.options;\n var value = round(options.min + (index * options.majorUnit), DEFAULT_PRECISION);\n var text = this.axisLabelText(value, labelOptions, labelContext);\n\n return new AxisLabel(value, text, index, null, labelOptions);\n };\n\n NumericAxis.prototype.shouldRenderNote = function shouldRenderNote (value) {\n var range = this.range();\n return range.min <= value && value <= range.max;\n };\n\n NumericAxis.prototype.pan = function pan (delta) {\n var range = this.translateRange(delta);\n return this.limitRange(range.min, range.max, this.totalMin, this.totalMax, range.offset);\n };\n\n NumericAxis.prototype.pointsRange = function pointsRange (start, end) {\n var startValue = this.getValue(start);\n var endValue = this.getValue(end);\n var min = Math.min(startValue, endValue);\n var max = Math.max(startValue, endValue);\n\n if (this.isValidRange(min, max)) {\n return {\n min: min,\n max: max\n };\n }\n };\n\n NumericAxis.prototype.scaleRange = function scaleRange (scale, cursor) {\n var position = Math.abs(this.pointOffset(cursor));\n var range = this.options.max - this.options.min;\n var delta = this.scaleToDelta(scale, range);\n var minDelta = position * delta;\n var maxDelta = (1 - position) * delta;\n var min = round(this.options.min + minDelta, DEFAULT_PRECISION);\n var max = round(this.options.max - maxDelta, DEFAULT_PRECISION);\n\n if (max - min < MIN_VALUE_RANGE) {\n max = min + MIN_VALUE_RANGE;\n }\n\n return {\n min: min,\n max: max\n };\n };\n\n NumericAxis.prototype.zoomRange = function zoomRange (scale, cursor) {\n var ref = this;\n var totalMin = ref.totalMin;\n var totalMax = ref.totalMax;\n var range = this.scaleRange(scale, cursor);\n\n return {\n min: limitValue(range.min, totalMin, totalMax),\n max: limitValue(range.max, totalMin, totalMax),\n narrowRange: false\n };\n };\n\n NumericAxis.prototype.isValidRange = function isValidRange (min, max) {\n return max - min > MIN_VALUE_RANGE;\n };\n\n return NumericAxis;\n}(Axis));\n\nfunction autoAxisOptions(seriesMin, seriesMax, options) {\n var narrowRange = options.narrowRange;\n\n var autoMin = autoAxisMin(seriesMin, seriesMax, narrowRange);\n var autoMax = autoAxisMax(seriesMin, seriesMax, narrowRange);\n\n var majorUnit = autoMajorUnit(autoMin, autoMax);\n var autoOptions = {\n majorUnit: majorUnit\n };\n\n if (options.roundToMajorUnit !== false) {\n if (autoMin < 0 && remainderClose(autoMin, majorUnit, 1 / 3)) {\n autoMin -= majorUnit;\n }\n\n if (autoMax > 0 && remainderClose(autoMax, majorUnit, 1 / 3)) {\n autoMax += majorUnit;\n }\n }\n\n autoOptions.min = floor(autoMin, majorUnit);\n autoOptions.max = ceil(autoMax, majorUnit);\n\n return autoOptions;\n}\n\nfunction totalAxisOptions(autoOptions, options) {\n return {\n min: defined(options.min) ? Math.min(autoOptions.min, options.min) : autoOptions.min,\n max: defined(options.max) ? Math.max(autoOptions.max, options.max) : autoOptions.max,\n majorUnit: autoOptions.majorUnit\n };\n}\n\nfunction clearNullValues(options, fields) {\n for (var idx = 0; idx < fields.length; idx++) {\n var field = fields[idx];\n if (options[field] === null) {\n options[field] = undefined;\n }\n }\n}\n\nfunction axisOptions(autoOptions, userOptions) {\n var options = userOptions;\n var userSetMin, userSetMax;\n\n if (userOptions) {\n clearNullValues(userOptions, [ 'min', 'max' ]);\n\n userSetMin = defined(userOptions.min);\n userSetMax = defined(userOptions.max);\n\n var userSetLimits = userSetMin || userSetMax;\n\n if (userSetLimits) {\n if (userOptions.min === userOptions.max) {\n if (userOptions.min > 0) {\n userOptions.min = 0;\n } else {\n userOptions.max = 1;\n }\n }\n }\n\n if (userOptions.majorUnit) {\n autoOptions.min = floor(autoOptions.min, userOptions.majorUnit);\n autoOptions.max = ceil(autoOptions.max, userOptions.majorUnit);\n } else if (userSetLimits) {\n options = deepExtend(autoOptions, userOptions);\n\n // Determine an auto major unit after min/max have been set\n autoOptions.majorUnit = autoMajorUnit(options.min, options.max);\n }\n }\n\n autoOptions.minorUnit = (options.majorUnit || autoOptions.majorUnit) / 5;\n\n var result = deepExtend(autoOptions, options);\n if (result.min >= result.max) {\n if (userSetMin && !userSetMax) {\n result.max = result.min + result.majorUnit;\n } else if (!userSetMin && userSetMax) {\n result.min = result.max - result.majorUnit;\n }\n }\n\n return result;\n}\n\nfunction remainderClose(value, divisor, ratio) {\n var remainder = round(Math.abs(value % divisor), DEFAULT_PRECISION);\n var threshold = divisor * (1 - ratio);\n\n return remainder === 0 || remainder > threshold;\n}\n\nsetDefaultOptions(NumericAxis, {\n type: \"numeric\",\n min: 0,\n max: 1,\n vertical: true,\n majorGridLines: {\n visible: true,\n width: 1,\n color: BLACK\n },\n labels: {\n format: \"#.####################\"\n },\n zIndex: 1\n});\n\nexport default NumericAxis;\n","import { ZERO_THRESHOLD } from '../constants';\n\nexport default function autoAxisMin(min, max, narrow) {\n if (!min && !max) {\n return 0;\n }\n\n var axisMin;\n\n if (min >= 0 && max >= 0) {\n var minValue = min === max ? 0 : min;\n\n var diff = (max - minValue) / max;\n if (narrow === false || (!narrow && diff > ZERO_THRESHOLD)) {\n return 0;\n }\n\n axisMin = Math.max(0, minValue - ((max - minValue) / 2));\n } else {\n axisMin = min;\n }\n\n return axisMin;\n}\n","import { ZERO_THRESHOLD } from '../constants';\n\nexport default function autoAxisMax(min, max, narrow) {\n if (!min && !max) {\n return 1;\n }\n\n var axisMax;\n\n if (min <= 0 && max <= 0) {\n var maxValue = min === max ? 0 : max;\n\n var diff = Math.abs((maxValue - min) / maxValue);\n if (narrow === false || (!narrow && diff > ZERO_THRESHOLD)) {\n return 0;\n }\n\n axisMax = Math.min(0, maxValue - ((min - maxValue) / 2));\n } else {\n axisMax = max;\n }\n\n return axisMax;\n}","import Axis from './axis';\nimport NumericAxis from './numeric-axis';\nimport AxisLabel from './axis-label';\nimport { DateLabelFormats } from './constants';\n\nimport { BLACK, DATE, COORD_PRECISION, DEFAULT_PRECISION } from '../common/constants';\nimport { setDefaultOptions, deepExtend, limitValue, round } from '../common';\n\nimport autoMajorUnit from './utils/auto-major-unit';\nimport ceil from './utils/ceil';\n\nimport { toDate, toTime, floorDate, ceilDate, duration, addDuration, addTicks, dateDiff, absoluteDateDiff, dateComparer, parseDate, parseDates, firstDay } from '../date-utils';\nimport { HOURS, DAYS, WEEKS, MONTHS, YEARS, TIME_PER_DAY, TIME_PER_WEEK, TIME_PER_MONTH, TIME_PER_YEAR, TIME_PER_UNIT } from '../date-utils/constants';\n\nvar MIN_VALUE_RANGE = 1000;\n\nvar DateValueAxis = (function (Axis) {\n function DateValueAxis(seriesMin, seriesMax, axisOptions, chartService) {\n var min = toDate(seriesMin);\n var max = toDate(seriesMax);\n\n var intlService = chartService.intl;\n var options = axisOptions || {};\n options = deepExtend(options || {}, {\n min: parseDate(intlService, options.min),\n max: parseDate(intlService, options.max),\n axisCrossingValue: parseDates(intlService, options.axisCrossingValues || options.axisCrossingValue),\n weekStartDay: firstDay(options, intlService)\n });\n options = applyDefaults(min, max, options);\n\n Axis.call(this, options, chartService);\n\n this.intlService = intlService;\n this.seriesMin = min;\n this.seriesMax = max;\n\n var weekStartDay = options.weekStartDay || 0;\n this.totalMin = toTime(floorDate(toTime(min) - 1, options.baseUnit, weekStartDay));\n this.totalMax = toTime(ceilDate(toTime(max) + 1, options.baseUnit, weekStartDay));\n }\n\n if ( Axis ) DateValueAxis.__proto__ = Axis;\n DateValueAxis.prototype = Object.create( Axis && Axis.prototype );\n DateValueAxis.prototype.constructor = DateValueAxis;\n\n DateValueAxis.prototype.clone = function clone () {\n return new DateValueAxis(this.seriesMin, this.seriesMax, Object.assign({}, this.options), this.chartService);\n };\n\n DateValueAxis.prototype.range = function range () {\n var options = this.options;\n return { min: options.min, max: options.max };\n };\n\n DateValueAxis.prototype.getDivisions = function getDivisions (stepValue) {\n var options = this.options;\n\n return Math.floor(\n duration(options.min, options.max, options.baseUnit) / stepValue + 1\n );\n };\n\n DateValueAxis.prototype.getTickPositions = function getTickPositions (step) {\n var options = this.options;\n var ref = this.lineInfo();\n var dir = ref.axisDir;\n var lineSize = ref.lineSize;\n var start = ref.lineStart;\n var divisions = this.getDivisions(step);\n var timeRange = dateDiff(options.max, options.min);\n var scale = lineSize / timeRange;\n var weekStartDay = options.weekStartDay || 0;\n\n var positions = [ start ];\n for (var i = 1; i < divisions; i++) {\n var date = addDuration(options.min, i * step, options.baseUnit, weekStartDay);\n var pos = start + dateDiff(date, options.min) * scale * dir;\n\n positions.push(round(pos, COORD_PRECISION));\n }\n\n return positions;\n };\n\n DateValueAxis.prototype.getMajorTickPositions = function getMajorTickPositions () {\n return this.getTickPositions(this.options.majorUnit);\n };\n\n DateValueAxis.prototype.getMinorTickPositions = function getMinorTickPositions () {\n return this.getTickPositions(this.options.minorUnit);\n };\n\n DateValueAxis.prototype.getSlot = function getSlot (a, b, limit) {\n return NumericAxis.prototype.getSlot.call(\n this, parseDate(this.intlService, a), parseDate(this.intlService, b), limit\n );\n };\n\n DateValueAxis.prototype.getValue = function getValue (point) {\n var value = NumericAxis.prototype.getValue.call(this, point);\n\n return value !== null ? toDate(value) : null;\n };\n\n DateValueAxis.prototype.labelsCount = function labelsCount () {\n return this.getDivisions(this.options.majorUnit);\n };\n\n DateValueAxis.prototype.createAxisLabel = function createAxisLabel (index, labelOptions, labelContext) {\n var options = this.options;\n var offset = index * options.majorUnit;\n var weekStartDay = options.weekStartDay || 0;\n var date = options.min;\n\n if (offset > 0) {\n date = addDuration(date, offset, options.baseUnit, weekStartDay);\n }\n\n var unitFormat = labelOptions.dateFormats[options.baseUnit];\n labelOptions.format = labelOptions.format || unitFormat;\n\n var text = this.axisLabelText(date, labelOptions, labelContext);\n return new AxisLabel(date, text, index, null, labelOptions);\n };\n\n DateValueAxis.prototype.translateRange = function translateRange (delta) {\n var options = this.options;\n var lineBox = this.lineBox();\n var vertical = options.vertical;\n var reverse = options.reverse;\n var size = vertical ? lineBox.height() : lineBox.width();\n var range = this.range();\n var scale = size / dateDiff(range.max, range.min);\n\n var offset = round(delta / scale, DEFAULT_PRECISION);\n if ((vertical || reverse) && !(vertical && reverse )) {\n offset = -offset;\n }\n\n var from = addTicks(options.min, offset);\n var to = addTicks(options.max, offset);\n\n return {\n min: from,\n max: to,\n offset: offset\n };\n };\n\n DateValueAxis.prototype.shouldRenderNote = function shouldRenderNote (value) {\n var range = this.range();\n\n return dateComparer(value, range.min) >= 0 && dateComparer(value, range.max) <= 0;\n };\n\n DateValueAxis.prototype.pan = function pan (delta) {\n var range = this.translateRange(delta, true);\n var limittedRange = this.limitRange(toTime(range.min), toTime(range.max), this.totalMin, this.totalMax, range.offset);\n\n if (limittedRange) {\n return {\n min: toDate(limittedRange.min),\n max: toDate(limittedRange.max)\n };\n }\n };\n\n DateValueAxis.prototype.pointsRange = function pointsRange (start, end) {\n var startValue = this.getValue(start);\n var endValue = this.getValue(end);\n var min = Math.min(startValue, endValue);\n var max = Math.max(startValue, endValue);\n\n return {\n min: toDate(min),\n max: toDate(max)\n };\n };\n\n DateValueAxis.prototype.scaleRange = function scaleRange (scale, cursor) {\n var position = Math.abs(this.pointOffset(cursor));\n var range = this.options.max - this.options.min;\n var delta = this.scaleToDelta(scale, range);\n var minDelta = position * delta;\n var maxDelta = (1 - position) * delta;\n var min = toDate(toTime(this.options.min) + minDelta);\n var max = toDate(toTime(this.options.max) - maxDelta);\n\n if (max - min < MIN_VALUE_RANGE) {\n max = toDate(toTime(min) + MIN_VALUE_RANGE);\n }\n\n return {\n min: min,\n max: max\n };\n };\n\n DateValueAxis.prototype.zoomRange = function zoomRange (scale, cursor) {\n var range = this.scaleRange(scale, cursor);\n var min = toDate(limitValue(toTime(range.min), this.totalMin, this.totalMax));\n var max = toDate(limitValue(toTime(range.max), this.totalMin, this.totalMax));\n\n return {\n min: min,\n max: max\n };\n };\n\n return DateValueAxis;\n}(Axis));\n\nfunction timeUnits(delta) {\n var unit = HOURS;\n\n if (delta >= TIME_PER_YEAR) {\n unit = YEARS;\n } else if (delta >= TIME_PER_MONTH) {\n unit = MONTHS;\n } else if (delta >= TIME_PER_WEEK) {\n unit = WEEKS;\n } else if (delta >= TIME_PER_DAY) {\n unit = DAYS;\n }\n\n return unit;\n}\n\nfunction applyDefaults(seriesMin, seriesMax, options) {\n var min = options.min || seriesMin;\n var max = options.max || seriesMax;\n var baseUnit = options.baseUnit || (max && min ? timeUnits(absoluteDateDiff(max, min)) : HOURS);\n var baseUnitTime = TIME_PER_UNIT[baseUnit];\n var weekStartDay = options.weekStartDay || 0;\n var autoMin = floorDate(toTime(min) - 1, baseUnit, weekStartDay) || toDate(max);\n var autoMax = ceilDate(toTime(max) + 1, baseUnit, weekStartDay);\n var userMajorUnit = options.majorUnit ? options.majorUnit : undefined;\n var majorUnit = userMajorUnit || ceil(\n autoMajorUnit(autoMin.getTime(), autoMax.getTime()),\n baseUnitTime\n ) / baseUnitTime;\n var actualUnits = duration(autoMin, autoMax, baseUnit);\n var totalUnits = ceil(actualUnits, majorUnit);\n var unitsToAdd = totalUnits - actualUnits;\n var head = Math.floor(unitsToAdd / 2);\n var tail = unitsToAdd - head;\n\n if (!options.baseUnit) {\n delete options.baseUnit;\n }\n\n options.baseUnit = options.baseUnit || baseUnit;\n options.min = options.min || addDuration(autoMin, -head, baseUnit, weekStartDay);\n options.max = options.max || addDuration(autoMax, tail, baseUnit, weekStartDay);\n options.minorUnit = options.minorUnit || majorUnit / 5;\n options.majorUnit = majorUnit;\n\n return options;\n}\n\nsetDefaultOptions(DateValueAxis, {\n type: DATE,\n majorGridLines: {\n visible: true,\n width: 1,\n color: BLACK\n },\n labels: {\n dateFormats: DateLabelFormats\n }\n});\n\nexport default DateValueAxis;\n","\nimport Axis from './axis';\nimport AxisLabel from './axis-label';\nimport Box from './box';\n\nimport createAxisTick from './utils/create-axis-tick';\nimport createAxisGridLine from './utils/create-axis-grid-line';\nimport limitCoordinate from './utils/limit-coordinate';\n\nimport { DEFAULT_PRECISION, BLACK } from '../common/constants';\nimport { deepExtend, defined, inArray, limitValue, round, setDefaultOptions, valueOrDefault } from '../common';\n\nvar DEFAULT_MAJOR_UNIT = 10;\nvar MIN_VALUE_RANGE = 1e-6;\n\nvar LogarithmicAxis = (function (Axis) {\n function LogarithmicAxis(seriesMin, seriesMax, options, chartService) {\n\n var axisOptions = deepExtend({ majorUnit: DEFAULT_MAJOR_UNIT, min: seriesMin, max: seriesMax }, options);\n var base = axisOptions.majorUnit;\n var autoMax = autoAxisMax(seriesMax, base);\n var autoMin = autoAxisMin(seriesMin, seriesMax, axisOptions);\n var range = initRange(autoMin, autoMax, axisOptions, options);\n\n axisOptions.max = range.max;\n axisOptions.min = range.min;\n axisOptions.minorUnit = options.minorUnit || round(base - 1, DEFAULT_PRECISION);\n\n Axis.call(this, axisOptions, chartService);\n\n this.totalMin = defined(options.min) ? Math.min(autoMin, options.min) : autoMin;\n this.totalMax = defined(options.max) ? Math.max(autoMax, options.max) : autoMax;\n this.logMin = round(log(range.min, base), DEFAULT_PRECISION);\n this.logMax = round(log(range.max, base), DEFAULT_PRECISION);\n this.seriesMin = seriesMin;\n this.seriesMax = seriesMax;\n\n this.createLabels();\n }\n\n if ( Axis ) LogarithmicAxis.__proto__ = Axis;\n LogarithmicAxis.prototype = Object.create( Axis && Axis.prototype );\n LogarithmicAxis.prototype.constructor = LogarithmicAxis;\n\n LogarithmicAxis.prototype.clone = function clone () {\n return new LogarithmicAxis(\n this.seriesMin,\n this.seriesMax,\n Object.assign({}, this.options),\n this.chartService\n );\n };\n\n LogarithmicAxis.prototype.startValue = function startValue () {\n return this.options.min;\n };\n\n LogarithmicAxis.prototype.getSlot = function getSlot (a, b, limit) {\n var ref = this;\n var options = ref.options;\n var logMin = ref.logMin;\n var logMax = ref.logMax;\n var base = options.majorUnit;\n var min = options.min;\n var max = options.max;\n var ref$1 = this.lineInfo();\n var axis = ref$1.axis;\n var axisDir = ref$1.axisDir;\n var lineBox = ref$1.lineBox;\n var lineSize = ref$1.lineSize;\n var lineStart = ref$1.lineStart;\n var step = axisDir * (lineSize / (logMax - logMin));\n var start = valueOrDefault(a, b || 1);\n var end = valueOrDefault(b, a || 1);\n\n if (start <= 0 || end <= 0) {\n return null;\n }\n\n if (limit) {\n start = limitValue(start, min, max);\n end = limitValue(end, min, max);\n }\n\n start = log(start, base);\n end = log(end, base);\n\n var p1 = Math.min(start, end) - logMin;\n var p2 = Math.max(start, end) - logMin;\n\n var slotBox = new Box(lineBox.x1, lineBox.y1, lineBox.x1, lineBox.y1);\n slotBox[axis + 1] = limitCoordinate(lineStart + step * (axisDir > 0 ? p1 : p2));\n slotBox[axis + 2] = limitCoordinate(lineStart + step * (axisDir > 0 ? p2 : p1));\n\n return slotBox;\n };\n\n LogarithmicAxis.prototype.getValue = function getValue (point) {\n var ref = this;\n var options = ref.options;\n var logMin = ref.logMin;\n var logMax = ref.logMax;\n var base = options.majorUnit;\n var ref$1 = this.lineInfo();\n var axis = ref$1.axis;\n var axisDir = ref$1.axisDir;\n var lineStart = ref$1.lineStart;\n var lineSize = ref$1.lineSize;\n var step = ((logMax - logMin) / lineSize);\n var offset = axisDir * (point[axis] - lineStart);\n var valueOffset = offset * step;\n\n if (offset < 0 || offset > lineSize) {\n return null;\n }\n\n var value = logMin + valueOffset;\n\n return round(Math.pow(base, value), DEFAULT_PRECISION);\n };\n\n LogarithmicAxis.prototype.range = function range () {\n var options = this.options;\n return { min: options.min, max: options.max };\n };\n\n LogarithmicAxis.prototype.translateRange = function translateRange (delta) {\n var ref = this;\n var options = ref.options;\n var logMin = ref.logMin;\n var logMax = ref.logMax;\n var reverse = options.reverse;\n var vertical = options.vertical;\n var base = options.majorUnit;\n var lineBox = this.lineBox();\n var size = vertical ? lineBox.height() : lineBox.width();\n var scale = size / (logMax - logMin);\n var offset = round(delta / scale, DEFAULT_PRECISION);\n\n if ((vertical || reverse) && !(vertical && reverse )) {\n offset = -offset;\n }\n\n return {\n min: Math.pow(base, logMin + offset),\n max: Math.pow(base, logMax + offset),\n offset: offset\n };\n };\n\n LogarithmicAxis.prototype.labelsCount = function labelsCount () {\n var floorMax = Math.floor(this.logMax);\n var count = Math.floor(floorMax - this.logMin) + 1;\n\n return count;\n };\n\n LogarithmicAxis.prototype.getMajorTickPositions = function getMajorTickPositions () {\n var ticks = [];\n\n this.traverseMajorTicksPositions(function (position) {\n ticks.push(position);\n }, { step: 1, skip: 0 });\n\n return ticks;\n };\n\n LogarithmicAxis.prototype.createTicks = function createTicks (lineGroup) {\n var options = this.options;\n var majorTicks = options.majorTicks;\n var minorTicks = options.minorTicks;\n var vertical = options.vertical;\n var mirror = options.labels.mirror;\n var lineBox = this.lineBox();\n var ticks = [];\n var tickLineOptions = {\n // TODO\n // _alignLines: options._alignLines,\n vertical: vertical\n };\n\n function render(tickPosition, tickOptions) {\n tickLineOptions.tickX = mirror ? lineBox.x2 : lineBox.x2 - tickOptions.size;\n tickLineOptions.tickY = mirror ? lineBox.y1 - tickOptions.size : lineBox.y1;\n tickLineOptions.position = tickPosition;\n\n lineGroup.append(createAxisTick(tickLineOptions, tickOptions));\n }\n\n if (majorTicks.visible) {\n this.traverseMajorTicksPositions(render, majorTicks);\n }\n\n if (minorTicks.visible) {\n this.traverseMinorTicksPositions(render, minorTicks);\n }\n\n return ticks;\n };\n\n LogarithmicAxis.prototype.createGridLines = function createGridLines (altAxis) {\n var options = this.options;\n var minorGridLines = options.minorGridLines;\n var majorGridLines = options.majorGridLines;\n var vertical = options.vertical;\n var lineBox = altAxis.lineBox();\n var lineOptions = {\n lineStart: lineBox[vertical ? \"x1\" : \"y1\"],\n lineEnd: lineBox[vertical ? \"x2\" : \"y2\"],\n vertical: vertical\n };\n var majorTicks = [];\n\n var container = this.gridLinesVisual();\n function render(tickPosition, gridLine) {\n if (!inArray(tickPosition, majorTicks)) {\n lineOptions.position = tickPosition;\n container.append(createAxisGridLine(lineOptions, gridLine));\n\n majorTicks.push(tickPosition);\n }\n }\n\n if (majorGridLines.visible) {\n this.traverseMajorTicksPositions(render, majorGridLines);\n }\n\n if (minorGridLines.visible) {\n this.traverseMinorTicksPositions(render, minorGridLines);\n }\n\n return container.children;\n };\n\n LogarithmicAxis.prototype.traverseMajorTicksPositions = function traverseMajorTicksPositions (callback, tickOptions) {\n var ref = this.lineInfo();\n var lineStart = ref.lineStart;\n var step = ref.step;\n var ref$1 = this;\n var logMin = ref$1.logMin;\n var logMax = ref$1.logMax;\n\n for (var power = Math.ceil(logMin) + tickOptions.skip; power <= logMax; power += tickOptions.step) {\n var position = round(lineStart + step * (power - logMin), DEFAULT_PRECISION);\n callback(position, tickOptions);\n }\n };\n\n LogarithmicAxis.prototype.traverseMinorTicksPositions = function traverseMinorTicksPositions (callback, tickOptions) {\n var this$1 = this;\n\n var ref = this.options;\n var min = ref.min;\n var max = ref.max;\n var minorUnit = ref.minorUnit;\n var base = ref.majorUnit;\n var ref$1 = this.lineInfo();\n var lineStart = ref$1.lineStart;\n var step = ref$1.step;\n var ref$2 = this;\n var logMin = ref$2.logMin;\n var logMax = ref$2.logMax;\n var start = Math.floor(logMin);\n\n for (var power = start; power < logMax; power++) {\n var minorOptions = this$1._minorIntervalOptions(power);\n for (var idx = tickOptions.skip; idx < minorUnit; idx += tickOptions.step) {\n var value = minorOptions.value + idx * minorOptions.minorStep;\n if (value > max) {\n break;\n }\n if (value >= min) {\n var position = round(lineStart + step * (log(value, base) - logMin), DEFAULT_PRECISION);\n callback(position, tickOptions);\n }\n }\n }\n };\n\n LogarithmicAxis.prototype.createAxisLabel = function createAxisLabel (index, labelOptions, labelContext) {\n var power = Math.ceil(this.logMin + index);\n var value = Math.pow(this.options.majorUnit, power);\n var text = this.axisLabelText(value, labelOptions, labelContext);\n\n return new AxisLabel(value, text, index, null, labelOptions);\n };\n\n LogarithmicAxis.prototype.shouldRenderNote = function shouldRenderNote (value) {\n var range = this.range();\n return range.min <= value && value <= range.max;\n };\n\n LogarithmicAxis.prototype.pan = function pan (delta) {\n var range = this.translateRange(delta);\n return this.limitRange(range.min, range.max, this.totalMin, this.totalMax, range.offset);\n };\n\n LogarithmicAxis.prototype.pointsRange = function pointsRange (start, end) {\n var startValue = this.getValue(start);\n var endValue = this.getValue(end);\n var min = Math.min(startValue, endValue);\n var max = Math.max(startValue, endValue);\n\n return {\n min: min,\n max: max\n };\n };\n\n LogarithmicAxis.prototype.scaleRange = function scaleRange (scale, cursor) {\n var ref = this.options;\n var base = ref.majorUnit;\n var logMin = log(this.options.min, base);\n var logMax = log(this.options.max, base);\n var position = Math.abs(this.pointOffset(cursor));\n var range = logMax - logMin;\n var delta = this.scaleToDelta(scale, range);\n var min = Math.pow(base, logMin + position * delta);\n var max = Math.pow(base, logMax - (1 - position) * delta);\n\n if (max - min < MIN_VALUE_RANGE) {\n max = min + MIN_VALUE_RANGE;\n }\n\n return {\n min: min,\n max: max\n };\n };\n\n LogarithmicAxis.prototype.zoomRange = function zoomRange (scale, cursor) {\n var range = this.scaleRange(scale, cursor);\n var ref = this;\n var totalMin = ref.totalMin;\n var totalMax = ref.totalMax;\n\n return {\n min: limitValue(range.min, totalMin, totalMax),\n max: limitValue(range.max, totalMin, totalMax)\n };\n };\n\n LogarithmicAxis.prototype._minorIntervalOptions = function _minorIntervalOptions (power) {\n var ref = this.options;\n var minorUnit = ref.minorUnit;\n var base = ref.majorUnit;\n var value = Math.pow(base, power);\n var nextValue = Math.pow(base, power + 1);\n var difference = nextValue - value;\n var minorStep = difference / minorUnit;\n\n return {\n value: value,\n minorStep: minorStep\n };\n };\n\n LogarithmicAxis.prototype.lineInfo = function lineInfo () {\n var info = Axis.prototype.lineInfo.call(this);\n info.step = info.axisDir * (info.lineSize / (this.logMax - this.logMin));\n\n return info;\n };\n\n return LogarithmicAxis;\n}(Axis));\n\nfunction initRange(autoMin, autoMax, axisOptions, options) {\n var min = axisOptions.min;\n var max = axisOptions.max;\n\n if (defined(axisOptions.axisCrossingValue) && axisOptions.axisCrossingValue <= 0) {\n throwNegativeValuesError();\n }\n\n if (!defined(options.max)) {\n max = autoMax;\n } else if (options.max <= 0) {\n throwNegativeValuesError();\n }\n\n if (!defined(options.min)) {\n min = autoMin;\n } else if (options.min <= 0) {\n throwNegativeValuesError();\n }\n\n return {\n min: min,\n max: max\n };\n}\n\nfunction autoAxisMin(min, max, options) {\n var base = options.majorUnit;\n var autoMin = min;\n if (min <= 0) {\n autoMin = max <= 1 ? Math.pow(base, -2) : 1;\n } else if (!options.narrowRange) {\n autoMin = Math.pow(base, Math.floor(log(min, base)));\n }\n return autoMin;\n}\n\nfunction autoAxisMax(max, base) {\n var logMaxRemainder = round(log(max, base), DEFAULT_PRECISION) % 1;\n var autoMax;\n if (max <= 0) {\n autoMax = base;\n } else if (logMaxRemainder !== 0 && (logMaxRemainder < 0.3 || logMaxRemainder > 0.9)) {\n autoMax = Math.pow(base, log(max, base) + 0.2);\n } else {\n autoMax = Math.pow(base, Math.ceil(log(max, base)));\n }\n\n return autoMax;\n}\n\nfunction throwNegativeValuesError() {\n throw new Error(\"Non positive values cannot be used for a logarithmic axis\");\n}\n\nfunction log(x, base) {\n return Math.log(x) / Math.log(base);\n}\n\nsetDefaultOptions(LogarithmicAxis, {\n type: \"log\",\n majorUnit: DEFAULT_MAJOR_UNIT,\n minorUnit: 1,\n axisCrossingValue: 1,\n vertical: true,\n majorGridLines: {\n visible: true,\n width: 1,\n color: BLACK\n },\n zIndex: 1,\n _deferLabels: true\n});\n\nexport default LogarithmicAxis;\n","import { geometry as geom, drawing as draw } from '@progress/kendo-drawing';\n\nimport { append, map } from '../../common';\n\nvar GridLinesMixin = {\n createGridLines: function(altAxis) {\n var options = this.options;\n var radius = Math.abs(this.box.center().y - altAxis.lineBox().y1);\n var gridLines = [];\n var skipMajor = false;\n var majorAngles, minorAngles;\n\n if (options.majorGridLines.visible) {\n majorAngles = this.majorGridLineAngles(altAxis);\n skipMajor = true;\n\n gridLines = this.renderMajorGridLines(\n majorAngles, radius, options.majorGridLines\n );\n }\n\n if (options.minorGridLines.visible) {\n minorAngles = this.minorGridLineAngles(altAxis, skipMajor);\n\n append(gridLines, this.renderMinorGridLines(\n minorAngles, radius, options.minorGridLines, altAxis, skipMajor\n ));\n }\n\n return gridLines;\n },\n\n renderMajorGridLines: function(angles, radius, options) {\n return this.renderGridLines(angles, radius, options);\n },\n\n renderMinorGridLines: function(angles, radius, options, altAxis, skipMajor) {\n var radiusCallback = this.radiusCallback && this.radiusCallback(radius, altAxis, skipMajor);\n return this.renderGridLines(angles, radius, options, radiusCallback);\n },\n\n renderGridLines: function(angles, radius, options, radiusCallback) {\n var style = {\n stroke: {\n width: options.width,\n color: options.color,\n dashType: options.dashType\n }\n };\n\n var center = this.box.center();\n var circle = new geom.Circle([ center.x, center.y ], radius);\n var container = this.gridLinesVisual();\n\n for (var i = 0; i < angles.length; i++) {\n var line = new draw.Path(style);\n if (radiusCallback) {\n circle.radius = radiusCallback(angles[i]);\n }\n\n line.moveTo(circle.center)\n .lineTo(circle.pointAt(angles[i] + 180));\n\n container.append(line);\n }\n\n return container.children;\n },\n\n gridLineAngles: function(altAxis, size, skip, step, skipAngles) {\n var this$1 = this;\n\n var divs = this.intervals(size, skip, step, skipAngles);\n var options = altAxis.options;\n var altAxisVisible = options.visible && (options.line || {}).visible !== false;\n\n return map(divs, function (d) {\n var alpha = this$1.intervalAngle(d);\n\n if (!altAxisVisible || alpha !== 90) {\n return alpha;\n }\n });\n }\n};\n\nexport default GridLinesMixin;","import { geometry as geom, drawing as draw } from '@progress/kendo-drawing';\n\nimport GridLinesMixin from './mixins/grid-lines-mixin';\nimport CategoryAxis from './category-axis';\nimport ShapeBuilder from './shape-builder';\nimport Ring from './ring';\nimport Box from './box';\n\nimport { COORD_PRECISION, ARC } from '../common/constants';\nimport { deepExtend, getSpacing, inArray, limitValue, map, rad, round, setDefaultOptions } from '../common';\n\nvar RadarCategoryAxis = (function (CategoryAxis) {\n function RadarCategoryAxis () {\n CategoryAxis.apply(this, arguments);\n }\n\n if ( CategoryAxis ) RadarCategoryAxis.__proto__ = CategoryAxis;\n RadarCategoryAxis.prototype = Object.create( CategoryAxis && CategoryAxis.prototype );\n RadarCategoryAxis.prototype.constructor = RadarCategoryAxis;\n\n RadarCategoryAxis.prototype.range = function range () {\n return { min: 0, max: this.options.categories.length };\n };\n\n RadarCategoryAxis.prototype.reflow = function reflow (box) {\n this.box = box;\n this.reflowLabels();\n };\n\n RadarCategoryAxis.prototype.lineBox = function lineBox () {\n return this.box;\n };\n\n RadarCategoryAxis.prototype.reflowLabels = function reflowLabels () {\n var this$1 = this;\n\n var ref = this;\n var labels = ref.labels;\n var labelOptions = ref.options.labels;\n var skip = labelOptions.skip || 0;\n var step = labelOptions.step || 1;\n var measureBox = new Box();\n\n for (var i = 0; i < labels.length; i++) {\n labels[i].reflow(measureBox);\n var labelBox = labels[i].box;\n\n labels[i].reflow(this$1.getSlot(skip + i * step).adjacentBox(\n 0, labelBox.width(), labelBox.height()\n ));\n }\n };\n\n RadarCategoryAxis.prototype.intervals = function intervals (size, skipOption, stepOption, skipAngles) {\n if ( skipAngles === void 0 ) skipAngles = false;\n\n var options = this.options;\n var categories = options.categories.length;\n var divCount = categories / size || 1;\n var divAngle = 360 / divCount;\n var skip = skipOption || 0;\n var step = stepOption || 1;\n var divs = [];\n var angle = 0;\n\n for (var i = skip; i < divCount; i += step) {\n if (options.reverse) {\n angle = 360 - i * divAngle;\n } else {\n angle = i * divAngle;\n }\n\n angle = round(angle, COORD_PRECISION) % 360;\n\n if (!(skipAngles && inArray(angle, skipAngles))) {\n divs.push(angle);\n }\n }\n\n return divs;\n };\n\n RadarCategoryAxis.prototype.majorIntervals = function majorIntervals () {\n return this.intervals(1);\n };\n\n RadarCategoryAxis.prototype.minorIntervals = function minorIntervals () {\n return this.intervals(0.5);\n };\n\n RadarCategoryAxis.prototype.intervalAngle = function intervalAngle (interval) {\n return (360 + interval + this.options.startAngle) % 360;\n };\n\n RadarCategoryAxis.prototype.majorAngles = function majorAngles () {\n var this$1 = this;\n\n return map(this.majorIntervals(), function (interval) { return this$1.intervalAngle(interval); });\n };\n\n RadarCategoryAxis.prototype.createLine = function createLine () {\n return [];\n };\n\n RadarCategoryAxis.prototype.majorGridLineAngles = function majorGridLineAngles (altAxis) {\n var majorGridLines = this.options.majorGridLines;\n return this.gridLineAngles(altAxis, 1, majorGridLines.skip, majorGridLines.step);\n };\n\n RadarCategoryAxis.prototype.minorGridLineAngles = function minorGridLineAngles (altAxis, skipMajor) {\n var ref = this.options;\n var minorGridLines = ref.minorGridLines;\n var majorGridLines = ref.majorGridLines;\n var majorGridLineAngles = skipMajor ? this.intervals(1, majorGridLines.skip, majorGridLines.step) : null;\n\n return this.gridLineAngles(altAxis, 0.5, minorGridLines.skip, minorGridLines.step, majorGridLineAngles);\n };\n\n RadarCategoryAxis.prototype.radiusCallback = function radiusCallback (radius, altAxis, skipMajor) {\n if (altAxis.options.type !== ARC) {\n var minorAngle = rad(360 / (this.options.categories.length * 2));\n var minorRadius = Math.cos(minorAngle) * radius;\n var majorAngles = this.majorAngles();\n\n var radiusCallback = function(angle) {\n if (!skipMajor && inArray(angle, majorAngles)) {\n return radius;\n }\n\n return minorRadius;\n };\n return radiusCallback;\n }\n };\n\n RadarCategoryAxis.prototype.createPlotBands = function createPlotBands () {\n var this$1 = this;\n\n var plotBands = this.options.plotBands || [];\n\n var group = this._plotbandGroup = new draw.Group({\n zIndex: -1\n });\n\n for (var i = 0; i < plotBands.length; i++) {\n var band = plotBands[i];\n var slot = this$1.plotBandSlot(band);\n var singleSlot = this$1.getSlot(band.from);\n\n var head = band.from - Math.floor(band.from);\n slot.startAngle += head * singleSlot.angle;\n\n var tail = Math.ceil(band.to) - band.to;\n slot.angle -= (tail + head) * singleSlot.angle;\n\n var ring = ShapeBuilder.current.createRing(slot, {\n fill: {\n color: band.color,\n opacity: band.opacity\n },\n stroke: {\n opacity: band.opacity\n }\n });\n group.append(ring);\n }\n\n this.appendVisual(group);\n };\n\n RadarCategoryAxis.prototype.plotBandSlot = function plotBandSlot (band) {\n return this.getSlot(band.from, band.to - 1);\n };\n\n RadarCategoryAxis.prototype.getSlot = function getSlot (from, to) {\n var options = this.options;\n var justified = options.justified;\n var box = this.box;\n var divs = this.majorAngles();\n var totalDivs = divs.length;\n var slotAngle = 360 / totalDivs;\n var fromValue = from;\n\n if (options.reverse && !justified) {\n fromValue = (fromValue + 1) % totalDivs;\n }\n\n fromValue = limitValue(Math.floor(fromValue), 0, totalDivs - 1);\n var slotStart = divs[fromValue];\n\n if (justified) {\n slotStart = slotStart - slotAngle / 2;\n\n if (slotStart < 0) {\n slotStart += 360;\n }\n }\n\n var toValue = limitValue(Math.ceil(to || fromValue), fromValue, totalDivs - 1);\n var slots = toValue - fromValue + 1;\n var angle = slotAngle * slots;\n\n return new Ring(box.center(), 0, box.height() / 2, slotStart, angle);\n };\n\n RadarCategoryAxis.prototype.slot = function slot (from, to) {\n var slot = this.getSlot(from, to);\n var startAngle = slot.startAngle + 180;\n var endAngle = startAngle + slot.angle;\n\n return new geom.Arc([ slot.center.x, slot.center.y ], {\n startAngle: startAngle,\n endAngle: endAngle,\n radiusX: slot.radius,\n radiusY: slot.radius\n });\n };\n\n RadarCategoryAxis.prototype.pointCategoryIndex = function pointCategoryIndex (point) {\n var this$1 = this;\n\n var length = this.options.categories.length;\n var index = null;\n\n for (var i = 0; i < length; i++) {\n var slot = this$1.getSlot(i);\n if (slot.containsPoint(point)) {\n index = i;\n break;\n }\n }\n\n return index;\n };\n\n return RadarCategoryAxis;\n}(CategoryAxis));\n\nsetDefaultOptions(RadarCategoryAxis, {\n startAngle: 90,\n labels: {\n margin: getSpacing(10)\n },\n majorGridLines: {\n visible: true\n },\n justified: true\n});\ndeepExtend(RadarCategoryAxis.prototype, GridLinesMixin);\n\nexport default RadarCategoryAxis;","import { geometry as geom } from '@progress/kendo-drawing';\n\nimport GridLinesMixin from './mixins/grid-lines-mixin';\nimport RadarCategoryAxis from './radar-category-axis';\nimport NumericAxis from './numeric-axis';\nimport Axis from './axis';\nimport Ring from './ring';\nimport Box from './box';\n\nimport { BLACK } from '../common/constants';\nimport { deepExtend, deg, getSpacing, inArray, limitValue, setDefaultOptions } from '../common';\n\nvar PolarAxis = (function (Axis) {\n function PolarAxis(options, chartService) {\n Axis.call(this, options, chartService);\n\n var instanceOptions = this.options;\n\n instanceOptions.minorUnit = instanceOptions.minorUnit || instanceOptions.majorUnit / 2;\n }\n\n if ( Axis ) PolarAxis.__proto__ = Axis;\n PolarAxis.prototype = Object.create( Axis && Axis.prototype );\n PolarAxis.prototype.constructor = PolarAxis;\n\n PolarAxis.prototype.getDivisions = function getDivisions (stepValue) {\n return NumericAxis.prototype.getDivisions.call(this, stepValue) - 1;\n };\n\n PolarAxis.prototype.reflow = function reflow (box) {\n this.box = box;\n this.reflowLabels();\n };\n\n PolarAxis.prototype.reflowLabels = function reflowLabels () {\n var this$1 = this;\n\n var ref = this;\n var options = ref.options;\n var labels = ref.labels;\n var labelOptions = ref.options.labels;\n var skip = labelOptions.skip || 0;\n var step = labelOptions.step || 1;\n\n var measureBox = new Box();\n var divs = this.intervals(options.majorUnit, skip, step);\n\n for (var i = 0; i < labels.length; i++) {\n labels[i].reflow(measureBox);\n var labelBox = labels[i].box;\n\n labels[i].reflow(this$1.getSlot(divs[i]).adjacentBox(0, labelBox.width(), labelBox.height()));\n }\n };\n\n PolarAxis.prototype.lineBox = function lineBox () {\n return this.box;\n };\n\n PolarAxis.prototype.intervals = function intervals (size, skipOption, stepOption, skipAngles) {\n if ( skipAngles === void 0 ) skipAngles = false;\n\n var min = this.options.min;\n var divisions = this.getDivisions(size);\n var divs = [];\n var skip = skipOption || 0;\n var step = stepOption || 1;\n\n for (var i = skip; i < divisions; i += step) {\n var current = (360 + min + i * size) % 360;\n if (!(skipAngles && inArray(current, skipAngles))) {\n divs.push(current);\n }\n }\n\n return divs;\n };\n\n PolarAxis.prototype.majorIntervals = function majorIntervals () {\n return this.intervals(this.options.majorUnit);\n };\n\n PolarAxis.prototype.minorIntervals = function minorIntervals () {\n return this.intervals(this.options.minorUnit);\n };\n\n PolarAxis.prototype.intervalAngle = function intervalAngle (i) {\n return (540 - i - this.options.startAngle) % 360;\n };\n\n PolarAxis.prototype.createLine = function createLine () {\n return [];\n };\n\n PolarAxis.prototype.majorGridLineAngles = function majorGridLineAngles (altAxis) {\n var majorGridLines = this.options.majorGridLines;\n return this.gridLineAngles(altAxis, this.options.majorUnit, majorGridLines.skip, majorGridLines.step);\n };\n\n PolarAxis.prototype.minorGridLineAngles = function minorGridLineAngles (altAxis, skipMajor) {\n var options = this.options;\n var minorGridLines = options.minorGridLines;\n var majorGridLines = options.majorGridLines;\n var majorGridLineAngles = skipMajor ? this.intervals(options.majorUnit, majorGridLines.skip, majorGridLines.step) : null;\n\n return this.gridLineAngles(altAxis, options.minorUnit, minorGridLines.skip, minorGridLines.step, majorGridLineAngles);\n };\n\n PolarAxis.prototype.plotBandSlot = function plotBandSlot (band) {\n return this.getSlot(band.from, band.to);\n };\n\n PolarAxis.prototype.getSlot = function getSlot (a, b) {\n var ref = this;\n var options = ref.options;\n var box = ref.box;\n var startAngle = options.startAngle;\n var start = limitValue(a, options.min, options.max);\n var end = limitValue(b || start, start, options.max);\n\n if (options.reverse) {\n start *= -1;\n end *= -1;\n }\n\n start = (540 - start - startAngle) % 360;\n end = (540 - end - startAngle) % 360;\n\n if (end < start) {\n var tmp = start;\n start = end;\n end = tmp;\n }\n\n return new Ring(box.center(), 0, box.height() / 2, start, end - start);\n };\n\n PolarAxis.prototype.slot = function slot (from, to) {\n if ( to === void 0 ) to = from;\n\n var options = this.options;\n var start = 360 - options.startAngle;\n var slot = this.getSlot(from, to);\n var min = Math.min(from, to);\n var max = Math.max(from, to);\n var startAngle, endAngle;\n\n if (options.reverse) {\n startAngle = min;\n endAngle = max;\n } else {\n startAngle = 360 - max;\n endAngle = 360 - min;\n }\n\n startAngle = (startAngle + start) % 360;\n endAngle = (endAngle + start) % 360;\n\n return new geom.Arc([ slot.center.x, slot.center.y ], {\n startAngle: startAngle,\n endAngle: endAngle,\n radiusX: slot.radius,\n radiusY: slot.radius\n });\n };\n\n PolarAxis.prototype.getValue = function getValue (point) {\n var options = this.options;\n var center = this.box.center();\n var dx = point.x - center.x;\n var dy = point.y - center.y;\n var theta = Math.round(deg(Math.atan2(dy, dx)));\n var start = options.startAngle;\n\n if (!options.reverse) {\n theta *= -1;\n start *= -1;\n }\n\n return (theta + start + 360) % 360;\n };\n\n PolarAxis.prototype.valueRange = function valueRange () {\n return {\n min: 0,\n max: Math.PI * 2\n };\n };\n\n return PolarAxis;\n}(Axis));\n\nsetDefaultOptions(PolarAxis, {\n type: \"polar\",\n startAngle: 0,\n reverse: false,\n majorUnit: 60,\n min: 0,\n max: 360,\n labels: {\n margin: getSpacing(10)\n },\n majorGridLines: {\n color: BLACK,\n visible: true,\n width: 1\n },\n minorGridLines: {\n color: \"#aaa\"\n }\n});\n\ndeepExtend(PolarAxis.prototype, GridLinesMixin, {\n createPlotBands: RadarCategoryAxis.prototype.createPlotBands,\n majorAngles: RadarCategoryAxis.prototype.majorAngles,\n range: NumericAxis.prototype.range,\n labelsCount: NumericAxis.prototype.labelsCount,\n createAxisLabel: NumericAxis.prototype.createAxisLabel\n});\n\nexport default PolarAxis;","import { geometry as geom, drawing as draw } from '@progress/kendo-drawing';\n\nimport ShapeBuilder from '../shape-builder';\nimport Ring from '../ring';\nimport Point from '../point';\n\nimport { ARC } from '../../common/constants';\nimport { append, deg, rad } from '../../common';\n\nvar RadarNumericAxisMixin = {\n options: {\n majorGridLines: {\n visible: true\n }\n },\n\n createPlotBands: function() {\n var this$1 = this;\n\n var ref = this.options;\n var type = ref.majorGridLines.type;\n var plotBands = ref.plotBands; if ( plotBands === void 0 ) plotBands = [];\n var altAxis = this.plotArea.polarAxis;\n var majorAngles = altAxis.majorAngles();\n var center = altAxis.box.center();\n var group = this._plotbandGroup = new draw.Group({\n zIndex: -1\n });\n\n for (var i = 0; i < plotBands.length; i++) {\n var band = plotBands[i];\n var bandStyle = {\n fill: {\n color: band.color,\n opacity: band.opacity\n },\n stroke: {\n opacity: band.opacity\n }\n };\n\n var slot = this$1.getSlot(band.from, band.to, true);\n var ring = new Ring(center, center.y - slot.y2, center.y - slot.y1, 0, 360);\n\n var shape = (void 0);\n if (type === ARC) {\n shape = ShapeBuilder.current.createRing(ring, bandStyle);\n } else {\n shape = draw.Path.fromPoints(this$1.plotBandPoints(ring, majorAngles), bandStyle).close();\n }\n\n group.append(shape);\n }\n\n this.appendVisual(group);\n },\n\n plotBandPoints: function(ring, angles) {\n var innerPoints = [];\n var outerPoints = [];\n var center = [ ring.center.x, ring.center.y ];\n var innerCircle = new geom.Circle(center, ring.innerRadius);\n var outerCircle = new geom.Circle(center, ring.radius);\n\n for (var i = 0; i < angles.length; i++) {\n innerPoints.push(innerCircle.pointAt(angles[i] + 180));\n outerPoints.push(outerCircle.pointAt(angles[i] + 180));\n }\n\n innerPoints.reverse();\n innerPoints.push(innerPoints[0]);\n outerPoints.push(outerPoints[0]);\n\n return outerPoints.concat(innerPoints);\n },\n\n createGridLines: function(altAxis) {\n var options = this.options;\n var majorTicks = this.radarMajorGridLinePositions();\n var majorAngles = altAxis.majorAngles();\n var center = altAxis.box.center();\n var gridLines = [];\n\n if (options.majorGridLines.visible) {\n gridLines = this.renderGridLines(\n center, majorTicks, majorAngles, options.majorGridLines\n );\n }\n\n if (options.minorGridLines.visible) {\n var minorTicks = this.radarMinorGridLinePositions();\n append(gridLines, this.renderGridLines(\n center, minorTicks, majorAngles, options.minorGridLines\n ));\n }\n\n return gridLines;\n },\n\n renderGridLines: function(center, ticks, angles, options) {\n var style = {\n stroke: {\n width: options.width,\n color: options.color,\n dashType: options.dashType\n }\n };\n var skip = options.skip; if ( skip === void 0 ) skip = 0;\n var step = options.step; if ( step === void 0 ) step = 0;\n var container = this.gridLinesVisual();\n\n for (var tickIx = skip; tickIx < ticks.length; tickIx += step) {\n var tickRadius = center.y - ticks[tickIx];\n if (tickRadius > 0) {\n var circle = new geom.Circle([ center.x, center.y ], tickRadius);\n if (options.type === ARC) {\n container.append(new draw.Circle(circle, style));\n } else {\n var line = new draw.Path(style);\n for (var angleIx = 0; angleIx < angles.length; angleIx++) {\n line.lineTo(circle.pointAt(angles[angleIx] + 180));\n }\n\n line.close();\n container.append(line);\n }\n }\n }\n\n return container.children;\n },\n\n getValue: function(point) {\n var lineBox = this.lineBox();\n var altAxis = this.plotArea.polarAxis;\n var majorAngles = altAxis.majorAngles();\n var center = altAxis.box.center();\n var radius = point.distanceTo(center);\n var distance = radius;\n\n if (this.options.majorGridLines.type !== ARC && majorAngles.length > 1) {\n var dx = point.x - center.x;\n var dy = point.y - center.y;\n var theta = (deg(Math.atan2(dy, dx)) + 540) % 360;\n\n majorAngles.sort(function(a, b) {\n return angularDistance(a, theta) - angularDistance(b, theta);\n });\n\n // Solve triangle (center, point, axis X) using one side (radius) and two angles.\n // Angles are derived from triangle (center, point, gridline X)\n var midAngle = angularDistance(majorAngles[0], majorAngles[1]) / 2;\n var alpha = angularDistance(theta, majorAngles[0]);\n var gamma = 90 - midAngle;\n var beta = 180 - alpha - gamma;\n\n distance = radius * (Math.sin(rad(beta)) / Math.sin(rad(gamma)));\n }\n\n return this.axisType().prototype.getValue.call(\n this, new Point(lineBox.x1, lineBox.y2 - distance)\n );\n }\n};\n\nfunction angularDistance(a, b) {\n return 180 - Math.abs(Math.abs(a - b) - 180);\n}\n\nexport default RadarNumericAxisMixin;","import NumericAxis from './numeric-axis';\nimport RadarNumericAxisMixin from './mixins/radar-numeric-axis-mixin';\n\nimport { deepExtend } from '../common';\n\nvar RadarNumericAxis = (function (NumericAxis) {\n function RadarNumericAxis () {\n NumericAxis.apply(this, arguments);\n }\n\n if ( NumericAxis ) RadarNumericAxis.__proto__ = NumericAxis;\n RadarNumericAxis.prototype = Object.create( NumericAxis && NumericAxis.prototype );\n RadarNumericAxis.prototype.constructor = RadarNumericAxis;\n\n RadarNumericAxis.prototype.radarMajorGridLinePositions = function radarMajorGridLinePositions () {\n return this.getTickPositions(this.options.majorUnit);\n };\n\n RadarNumericAxis.prototype.radarMinorGridLinePositions = function radarMinorGridLinePositions () {\n var options = this.options;\n var minorSkipStep = 0;\n\n if (options.majorGridLines.visible) {\n minorSkipStep = options.majorUnit;\n }\n return this.getTickPositions(options.minorUnit, minorSkipStep);\n };\n\n RadarNumericAxis.prototype.axisType = function axisType () {\n return NumericAxis;\n };\n\n return RadarNumericAxis;\n}(NumericAxis));\n\ndeepExtend(RadarNumericAxis.prototype, RadarNumericAxisMixin);\n\nexport default RadarNumericAxis;","import LogarithmicAxis from './logarithmic-axis';\nimport RadarNumericAxisMixin from './mixins/radar-numeric-axis-mixin';\n\nimport { deepExtend } from '../common';\n\nvar RadarLogarithmicAxis = (function (LogarithmicAxis) {\n function RadarLogarithmicAxis () {\n LogarithmicAxis.apply(this, arguments);\n }\n\n if ( LogarithmicAxis ) RadarLogarithmicAxis.__proto__ = LogarithmicAxis;\n RadarLogarithmicAxis.prototype = Object.create( LogarithmicAxis && LogarithmicAxis.prototype );\n RadarLogarithmicAxis.prototype.constructor = RadarLogarithmicAxis;\n\n RadarLogarithmicAxis.prototype.radarMajorGridLinePositions = function radarMajorGridLinePositions () {\n var positions = [];\n\n this.traverseMajorTicksPositions(function(position) {\n positions.push(position);\n }, this.options.majorGridLines);\n\n return positions;\n };\n\n RadarLogarithmicAxis.prototype.radarMinorGridLinePositions = function radarMinorGridLinePositions () {\n var positions = [];\n\n this.traverseMinorTicksPositions(function(position) {\n positions.push(position);\n }, this.options.minorGridLines);\n\n return positions;\n };\n\n RadarLogarithmicAxis.prototype.axisType = function axisType () {\n return LogarithmicAxis;\n };\n\n return RadarLogarithmicAxis;\n}(LogarithmicAxis));\n\ndeepExtend(RadarLogarithmicAxis.prototype, RadarNumericAxisMixin);\n\nexport default RadarLogarithmicAxis;","import { geometry as geom } from '@progress/kendo-drawing';\n\nimport { X, Y } from '../common/constants';\nimport { Class, last, round } from '../common';\n\nvar WEIGHT = 0.333;\nvar EXTREMUM_ALLOWED_DEVIATION = 0.01;\n\nvar CurveProcessor = (function (Class) {\n function CurveProcessor(closed) {\n Class.call(this);\n\n this.closed = closed;\n }\n\n if ( Class ) CurveProcessor.__proto__ = Class;\n CurveProcessor.prototype = Object.create( Class && Class.prototype );\n CurveProcessor.prototype.constructor = CurveProcessor;\n\n CurveProcessor.prototype.process = function process (dataPoints) {\n var this$1 = this;\n\n var points = dataPoints.slice(0);\n var segments = [];\n var closed = this.closed;\n var length = points.length;\n\n if (length > 2) {\n this.removeDuplicates(0, points);\n length = points.length;\n }\n\n if (length < 2 || (length === 2 && points[0].equals(points[1]))) {\n return segments;\n }\n\n var p0 = points[0];\n var p1 = points[1];\n var p2 = points[2];\n\n segments.push(new geom.Segment(p0));\n\n while (p0.equals(points[length - 1])) {\n closed = true;\n points.pop();\n length--;\n }\n\n if (length === 2) {\n var tangent = this.tangent(p0,p1, X, Y);\n\n last(segments).controlOut(\n this.firstControlPoint(tangent, p0, p1, X, Y)\n );\n\n segments.push(new geom.Segment(\n p1,\n this.secondControlPoint(tangent, p0, p1, X, Y)\n ));\n\n return segments;\n }\n\n var initialControlPoint, lastControlPoint;\n\n if (closed) {\n p0 = points[length - 1]; p1 = points[0]; p2 = points[1];\n var controlPoints = this.controlPoints(p0, p1, p2);\n initialControlPoint = controlPoints[1];\n lastControlPoint = controlPoints[0];\n } else {\n var tangent$1 = this.tangent(p0, p1, X,Y);\n initialControlPoint = this.firstControlPoint(tangent$1, p0, p1, X, Y);\n }\n\n var cp0 = initialControlPoint;\n for (var idx = 0; idx <= length - 3; idx++) {\n this$1.removeDuplicates(idx, points);\n length = points.length;\n if (idx + 3 <= length) {\n p0 = points[idx]; p1 = points[idx + 1]; p2 = points[idx + 2];\n var controlPoints$1 = this$1.controlPoints(p0,p1,p2);\n\n last(segments).controlOut(cp0);\n cp0 = controlPoints$1[1];\n\n var cp1 = controlPoints$1[0];\n segments.push(new geom.Segment(p1, cp1));\n }\n }\n\n if (closed) {\n p0 = points[length - 2]; p1 = points[length - 1]; p2 = points[0];\n var controlPoints$2 = this.controlPoints(p0, p1, p2);\n\n last(segments).controlOut(cp0);\n segments.push(new geom.Segment(\n p1,\n controlPoints$2[0]\n ));\n\n last(segments).controlOut(controlPoints$2[1]);\n segments.push(new geom.Segment(\n p2,\n lastControlPoint\n ));\n } else {\n var tangent$2 = this.tangent(p1, p2, X, Y);\n\n last(segments).controlOut(cp0);\n segments.push(new geom.Segment(\n p2,\n this.secondControlPoint(tangent$2, p1, p2, X, Y)\n ));\n }\n\n return segments;\n };\n\n CurveProcessor.prototype.removeDuplicates = function removeDuplicates (idx, points) {\n while (points[idx + 1] && (points[idx].equals(points[idx + 1]) || points[idx + 1].equals(points[idx + 2]))) {\n points.splice(idx + 1, 1);\n }\n };\n\n CurveProcessor.prototype.invertAxis = function invertAxis (p0, p1, p2) {\n var invertAxis = false;\n\n if (p0.x === p1.x) {\n invertAxis = true;\n } else if (p1.x === p2.x) {\n if ((p1.y < p2.y && p0.y <= p1.y) || (p2.y < p1.y && p1.y <= p0.y)) {\n invertAxis = true;\n }\n } else {\n var fn = this.lineFunction(p0,p1);\n var y2 = this.calculateFunction(fn, p2.x);\n if (!(p0.y <= p1.y && p2.y <= y2) &&\n !(p1.y <= p0.y && p2.y >= y2)) {\n invertAxis = true;\n }\n }\n\n return invertAxis;\n };\n\n CurveProcessor.prototype.isLine = function isLine (p0, p1, p2) {\n var fn = this.lineFunction(p0, p1);\n var y2 = this.calculateFunction(fn, p2.x);\n\n return (p0.x === p1.x && p1.x === p2.x) || round(y2, 1) === round(p2.y, 1);\n };\n\n CurveProcessor.prototype.lineFunction = function lineFunction (p1, p2) {\n var a = (p2.y - p1.y) / (p2.x - p1.x);\n var b = p1.y - a * p1.x;\n\n return [ b, a ];\n };\n\n CurveProcessor.prototype.controlPoints = function controlPoints (p0, p1, p2) {\n var xField = X;\n var yField = Y;\n var restrict = false;\n var switchOrientation = false;\n var tangent;\n\n if (this.isLine(p0, p1, p2)) {\n tangent = this.tangent(p0, p1, X, Y);\n } else {\n var monotonic = {\n x: this.isMonotonicByField(p0, p1, p2, X),\n y: this.isMonotonicByField(p0, p1, p2, Y)\n };\n\n if (monotonic.x && monotonic.y) {\n tangent = this.tangent(p0, p2, X, Y);\n restrict = true;\n } else {\n if (this.invertAxis(p0, p1, p2)) {\n xField = Y;\n yField = X;\n }\n\n if (monotonic[xField]) {\n tangent = 0;\n } else {\n var sign;\n if ((p2[yField] < p0[yField] && p0[yField] <= p1[yField]) ||\n (p0[yField] < p2[yField] && p1[yField] <= p0[yField])) {\n sign = numberSign((p2[yField] - p0[yField]) * (p1[xField] - p0[xField]));\n } else {\n sign = -numberSign((p2[xField] - p0[xField]) * (p1[yField] - p0[yField]));\n }\n\n tangent = EXTREMUM_ALLOWED_DEVIATION * sign;\n switchOrientation = true;\n }\n }\n }\n\n var secondControlPoint = this.secondControlPoint(tangent, p0, p1, xField, yField);\n\n if (switchOrientation) {\n var oldXField = xField;\n xField = yField;\n yField = oldXField;\n }\n\n var firstControlPoint = this.firstControlPoint(tangent, p1, p2, xField, yField);\n\n if (restrict) {\n this.restrictControlPoint(p0, p1, secondControlPoint, tangent);\n this.restrictControlPoint(p1, p2, firstControlPoint, tangent);\n }\n\n return [ secondControlPoint, firstControlPoint ];\n };\n\n CurveProcessor.prototype.restrictControlPoint = function restrictControlPoint (p1, p2, cp, tangent) {\n if (p1.y < p2.y) {\n if (p2.y < cp.y) {\n cp.x = p1.x + (p2.y - p1.y) / tangent;\n cp.y = p2.y;\n } else if (cp.y < p1.y) {\n cp.x = p2.x - (p2.y - p1.y) / tangent;\n cp.y = p1.y;\n }\n } else {\n if (cp.y < p2.y) {\n cp.x = p1.x - (p1.y - p2.y) / tangent;\n cp.y = p2.y;\n } else if (p1.y < cp.y) {\n cp.x = p2.x + (p1.y - p2.y) / tangent;\n cp.y = p1.y;\n }\n }\n };\n\n CurveProcessor.prototype.tangent = function tangent (p0, p1, xField, yField) {\n var x = p1[xField] - p0[xField];\n var y = p1[yField] - p0[yField];\n var tangent;\n\n if (x === 0) {\n tangent = 0;\n } else {\n tangent = y / x;\n }\n\n return tangent;\n };\n\n CurveProcessor.prototype.isMonotonicByField = function isMonotonicByField (p0, p1, p2, field) {\n return (p2[field] > p1[field] && p1[field] > p0[field]) ||\n (p2[field] < p1[field] && p1[field] < p0[field]);\n };\n\n CurveProcessor.prototype.firstControlPoint = function firstControlPoint (tangent, p0, p3, xField, yField) {\n var t1 = p0[xField];\n var t2 = p3[xField];\n var distance = (t2 - t1) * WEIGHT;\n\n return this.point(t1 + distance, p0[yField] + distance * tangent, xField, yField);\n };\n\n CurveProcessor.prototype.secondControlPoint = function secondControlPoint (tangent, p0, p3, xField, yField) {\n var t1 = p0[xField];\n var t2 = p3[xField];\n var distance = (t2 - t1) * WEIGHT;\n\n return this.point(t2 - distance, p3[yField] - distance * tangent, xField, yField);\n };\n\n CurveProcessor.prototype.point = function point (xValue, yValue, xField, yField) {\n var controlPoint = new geom.Point();\n controlPoint[xField] = xValue;\n controlPoint[yField] = yValue;\n\n return controlPoint;\n };\n\n CurveProcessor.prototype.calculateFunction = function calculateFunction (fn, x) {\n var length = fn.length;\n var result = 0;\n\n for (var i = 0; i < length; i++) {\n result += Math.pow(x,i) * fn[i];\n }\n return result;\n };\n\n return CurveProcessor;\n}(Class));\n\nfunction numberSign(value) {\n return value <= 0 ? -1 : 1;\n}\n\nexport default CurveProcessor;","import { Class } from '../../common';\n\nvar ChartAxis = (function (Class) {\n function ChartAxis(axis) {\n Class.call(this);\n\n this._axis = axis;\n this.options = axis.options;\n }\n\n if ( Class ) ChartAxis.__proto__ = Class;\n ChartAxis.prototype = Object.create( Class && Class.prototype );\n ChartAxis.prototype.constructor = ChartAxis;\n\n ChartAxis.prototype.value = function value (point) {\n var axis = this._axis;\n var value = axis.getCategory ? axis.getCategory(point) : axis.getValue(point);\n\n return value;\n };\n\n ChartAxis.prototype.slot = function slot (from, to, limit) {\n if ( limit === void 0 ) limit = true;\n\n return this._axis.slot(from, to, limit);\n };\n\n ChartAxis.prototype.range = function range () {\n return this._axis.range();\n };\n\n ChartAxis.prototype.valueRange = function valueRange () {\n return this._axis.valueRange();\n };\n\n return ChartAxis;\n}(Class));\n\nexport default ChartAxis;","import ChartAxis from './chart-axis';\n\nexport default function findAxisByName(name, axes) {\n for (var idx = 0; idx < axes.length; idx++) {\n if (axes[idx].options.name === name) {\n axes[idx].prepareUserOptions();\n return new ChartAxis(axes[idx]);\n }\n }\n}","import findAxisByName from './find-axis-by-name';\n\nvar ChartPane = function ChartPane(pane) {\n this.visual = pane.visual;\n this.chartsVisual = pane.chartContainer.visual;\n this._pane = pane;\n};\n\nChartPane.prototype.findAxisByName = function findAxisByName$1 (name) {\n return findAxisByName(name, this._pane.axes);\n};\n\nexport default ChartPane;","import { Class } from '../../common';\n\nvar ChartPlotArea = (function (Class) {\n function ChartPlotArea(plotArea) {\n Class.call(this);\n\n this._plotArea = plotArea;\n this.visual = plotArea.visual;\n this.backgroundVisual = plotArea._bgVisual;\n }\n\n if ( Class ) ChartPlotArea.__proto__ = Class;\n ChartPlotArea.prototype = Object.create( Class && Class.prototype );\n ChartPlotArea.prototype.constructor = ChartPlotArea;\n\n return ChartPlotArea;\n}(Class));\n\nexport default ChartPlotArea;","import { isNumber } from '../../common';\n\nexport default function countNumbers(values) {\n var length = values.length;\n var count = 0;\n\n for (var i = 0; i < length; i++) {\n var num = values[i];\n if (isNumber(num)) {\n count++;\n }\n }\n\n return count;\n}","import { MIN_VALUE, MAX_VALUE } from '../../common/constants';\nimport { defined, isNumber } from '../../common';\n\nimport countNumbers from '../utils/count-numbers';\n\nvar Aggregates = {\n min: function(values) {\n var length = values.length;\n var min = MAX_VALUE;\n\n for (var i = 0; i < length; i++) {\n var value = values[i];\n if (isNumber(value)) {\n min = Math.min(min, value);\n }\n }\n\n return min === MAX_VALUE ? values[0] : min;\n },\n\n max: function(values) {\n var length = values.length;\n var max = MIN_VALUE;\n\n for (var i = 0; i < length; i++) {\n var value = values[i];\n if (isNumber(value)) {\n max = Math.max(max, value);\n }\n }\n\n return max === MIN_VALUE ? values[0] : max;\n },\n\n sum: function(values) {\n var length = values.length;\n var sum = 0;\n\n for (var i = 0; i < length; i++) {\n var value = values[i];\n if (isNumber(value)) {\n sum += value;\n }\n }\n\n return sum;\n },\n\n sumOrNull: function(values) {\n var result = null;\n\n if (countNumbers(values)) {\n result = Aggregates.sum(values);\n }\n\n return result;\n },\n\n count: function(values) {\n var length = values.length;\n var count = 0;\n\n for (var i = 0; i < length; i++) {\n var value = values[i];\n if (value !== null && defined(value)) {\n count++;\n }\n }\n\n return count;\n },\n\n avg: function(values) {\n var count = countNumbers(values);\n var result = values[0];\n\n if (count > 0) {\n result = Aggregates.sum(values) / count;\n }\n\n return result;\n },\n\n first: function(values) {\n var length = values.length;\n\n for (var i = 0; i < length; i++) {\n var value = values[i];\n if (value !== null && defined(value)) {\n return value;\n }\n }\n\n return values[0];\n }\n};\n\nexport default Aggregates;","import getField from './utils/get-field';\nimport { VALUE } from '../common/constants';\nimport { Class, defined } from '../common';\n\nvar SeriesBinder = (function (Class) {\n function SeriesBinder() {\n Class.call(this);\n\n this._valueFields = {};\n this._otherFields = {};\n this._nullValue = {};\n this._undefinedValue = {};\n }\n\n if ( Class ) SeriesBinder.__proto__ = Class;\n SeriesBinder.prototype = Object.create( Class && Class.prototype );\n SeriesBinder.prototype.constructor = SeriesBinder;\n\n SeriesBinder.prototype.register = function register (seriesTypes, valueFields, otherFields) {\n var this$1 = this;\n if ( valueFields === void 0 ) valueFields = [ VALUE ];\n if ( otherFields === void 0 ) otherFields = {};\n\n\n for (var i = 0; i < seriesTypes.length; i++) {\n var type = seriesTypes[i];\n\n this$1._valueFields[type] = valueFields;\n this$1._otherFields[type] = otherFields;\n this$1._nullValue[type] = this$1._makeValue(valueFields, null);\n this$1._undefinedValue[type] = this$1._makeValue(valueFields, undefined);\n }\n };\n\n SeriesBinder.prototype.canonicalFields = function canonicalFields (series) {\n return this.valueFields(series).concat(this.otherFields(series));\n };\n\n SeriesBinder.prototype.valueFields = function valueFields (series) {\n return this._valueFields[series.type] || [ VALUE ];\n };\n\n SeriesBinder.prototype.otherFields = function otherFields (series) {\n return this._otherFields[series.type] || [ VALUE ];\n };\n\n SeriesBinder.prototype.bindPoint = function bindPoint (series, pointIx, item) {\n var data = series.data;\n var pointData = defined(item) ? item : data[pointIx];\n var result = { valueFields: { value: pointData } };\n var valueFields = this.valueFields(series);\n var otherFields = this._otherFields[series.type];\n var fields, value;\n\n if (pointData === null) {\n value = this._nullValue[series.type];\n } else if (!defined(pointData)) {\n value = this._undefinedValue[series.type];\n } else if (Array.isArray(pointData)) {\n var fieldData = pointData.slice(valueFields.length);\n value = this._bindFromArray(pointData, valueFields);\n fields = this._bindFromArray(fieldData, otherFields);\n } else if (typeof pointData === \"object\") {\n var srcValueFields = this.sourceFields(series, valueFields);\n var srcPointFields = this.sourceFields(series, otherFields);\n\n value = this._bindFromObject(pointData, valueFields, srcValueFields);\n fields = this._bindFromObject(pointData, otherFields, srcPointFields);\n }\n\n if (defined(value)) {\n if (valueFields.length === 1) {\n result.valueFields.value = value[valueFields[0]];\n } else {\n result.valueFields = value;\n }\n }\n\n result.fields = fields || {};\n\n return result;\n };\n\n SeriesBinder.prototype._makeValue = function _makeValue (fields, initialValue) {\n var value = {};\n var length = fields.length;\n\n for (var i = 0; i < length; i++) {\n var fieldName = fields[i];\n value[fieldName] = initialValue;\n }\n\n return value;\n };\n\n SeriesBinder.prototype._bindFromArray = function _bindFromArray (array, fields) {\n var value = {};\n\n if (fields) {\n var length = Math.min(fields.length, array.length);\n\n for (var i = 0; i < length; i++) {\n value[fields[i]] = array[i];\n }\n }\n\n return value;\n };\n\n SeriesBinder.prototype._bindFromObject = function _bindFromObject (object, fields, srcFields) {\n if ( srcFields === void 0 ) srcFields = fields;\n\n var value = {};\n\n if (fields) {\n var length = fields.length;\n\n for (var i = 0; i < length; i++) {\n var fieldName = fields[i];\n var srcFieldName = srcFields[i];\n if (srcFieldName !== null) {\n value[fieldName] = getField(srcFieldName, object);\n }\n }\n }\n\n return value;\n };\n\n SeriesBinder.prototype.sourceFields = function sourceFields (series, canonicalFields) {\n var sourceFields = [];\n\n if (canonicalFields) {\n var length = canonicalFields.length;\n\n for (var i = 0; i < length; i++) {\n var fieldName = canonicalFields[i];\n var sourceFieldName = fieldName === VALUE ? \"field\" : fieldName + \"Field\";\n\n sourceFields.push(series[sourceFieldName] !== null ? (series[sourceFieldName] || fieldName) : null);\n }\n }\n\n return sourceFields;\n };\n\n return SeriesBinder;\n}(Class));\n\nSeriesBinder.current = new SeriesBinder();\n\nexport default SeriesBinder;","import { getter } from '../../common';\n\nexport default function getField(field, row) {\n if (row === null) {\n return row;\n }\n\n var get = getter(field, true);\n return get(row);\n}","import SeriesBinder from '../series-binder';\n\nimport { OBJECT } from '../../common/constants';\nimport { Class, defined, getter, isArray, isNumber } from '../../common';\n\nvar STD_ERR = \"stderr\";\nvar STD_DEV = \"stddev\";\nvar percentRegex = /percent(?:\\w*)\\((\\d+)\\)/;\nvar standardDeviationRegex = new RegExp(\"^\" + STD_DEV + \"(?:\\\\((\\\\d+(?:\\\\.\\\\d+)?)\\\\))?$\");\n\nvar ErrorRangeCalculator = (function (Class) {\n function ErrorRangeCalculator(errorValue, series, field) {\n Class.call(this);\n\n this.initGlobalRanges(errorValue, series, field);\n }\n\n if ( Class ) ErrorRangeCalculator.__proto__ = Class;\n ErrorRangeCalculator.prototype = Object.create( Class && Class.prototype );\n ErrorRangeCalculator.prototype.constructor = ErrorRangeCalculator;\n\n ErrorRangeCalculator.prototype.initGlobalRanges = function initGlobalRanges (errorValue, series, field) {\n var data = series.data;\n var deviationMatch = standardDeviationRegex.exec(errorValue);\n\n if (deviationMatch) {\n this.valueGetter = this.createValueGetter(series, field);\n\n var average = this.getAverage(data);\n var deviation = this.getStandardDeviation(data, average, false);\n var multiple = deviationMatch[1] ? parseFloat(deviationMatch[1]) : 1;\n var errorRange = { low: average.value - deviation * multiple, high: average.value + deviation * multiple };\n\n this.globalRange = function() {\n return errorRange;\n };\n } else if (errorValue.indexOf && errorValue.indexOf(STD_ERR) >= 0) {\n this.valueGetter = this.createValueGetter(series, field);\n var standardError = this.getStandardError(data, this.getAverage(data));\n\n this.globalRange = function(value) {\n return { low: value - standardError, high: value + standardError };\n };\n }\n };\n\n ErrorRangeCalculator.prototype.createValueGetter = function createValueGetter (series, field) {\n var data = series.data;\n var binder = SeriesBinder.current;\n var valueFields = binder.valueFields(series);\n var item = defined(data[0]) ? data[0] : {};\n var valueGetter;\n\n if (isArray(item)) {\n var index = field ? valueFields.indexOf(field) : 0;\n valueGetter = getter(\"[\" + index + \"]\");\n } else if (isNumber(item)) {\n valueGetter = getter();\n } else if (typeof item === OBJECT) {\n var srcValueFields = binder.sourceFields(series, valueFields);\n valueGetter = getter(srcValueFields[valueFields.indexOf(field)]);\n }\n\n return valueGetter;\n };\n\n ErrorRangeCalculator.prototype.getErrorRange = function getErrorRange (pointValue, errorValue) {\n var low, high, value;\n\n if (!defined(errorValue)) {\n return null;\n }\n\n if (this.globalRange) {\n return this.globalRange(pointValue);\n }\n\n if (isArray(errorValue)) {\n low = pointValue - errorValue[0];\n high = pointValue + errorValue[1];\n } else if (isNumber(value = parseFloat(errorValue))) {\n low = pointValue - value;\n high = pointValue + value;\n } else if ((value = percentRegex.exec(errorValue))) {\n var percentValue = pointValue * (parseFloat(value[1]) / 100);\n low = pointValue - Math.abs(percentValue);\n high = pointValue + Math.abs(percentValue);\n } else {\n throw new Error(\"Invalid ErrorBar value: \" + errorValue);\n }\n\n return { low: low, high: high };\n };\n\n ErrorRangeCalculator.prototype.getStandardError = function getStandardError (data, average) {\n return this.getStandardDeviation(data, average, true) / Math.sqrt(average.count);\n };\n\n ErrorRangeCalculator.prototype.getStandardDeviation = function getStandardDeviation (data, average, isSample) {\n var this$1 = this;\n\n var length = data.length;\n var total = isSample ? average.count - 1 : average.count;\n var squareDifferenceSum = 0;\n\n for (var idx = 0; idx < length; idx++) {\n var value = this$1.valueGetter(data[idx]);\n if (isNumber(value)) {\n squareDifferenceSum += Math.pow(value - average.value, 2);\n }\n }\n\n return Math.sqrt(squareDifferenceSum / total);\n };\n\n ErrorRangeCalculator.prototype.getAverage = function getAverage (data) {\n var this$1 = this;\n\n var length = data.length;\n var sum = 0;\n var count = 0;\n\n for (var idx = 0; idx < length; idx++) {\n var value = this$1.valueGetter(data[idx]);\n if (isNumber(value)) {\n sum += value;\n count++;\n }\n }\n\n return {\n value: sum / count,\n count: count\n };\n };\n\n return ErrorRangeCalculator;\n}(Class));\n\nexport default ErrorRangeCalculator;","import { support } from '@progress/kendo-drawing';\n\nvar browser = support.browser || {};\n\nvar INITIAL_ANIMATION_DURATION = 600;\nvar FADEIN = \"fadeIn\";\n\nvar GLASS = \"glass\";\nvar BORDER_BRIGHTNESS = 0.8;\nvar TOOLTIP_OFFSET = 5;\nvar START_SCALE = browser.msie ? 0.001 : 0;\nvar ERROR_LOW_FIELD = \"errorLow\";\nvar ERROR_HIGH_FIELD = \"errorHigh\";\nvar X_ERROR_LOW_FIELD = \"xErrorLow\";\nvar X_ERROR_HIGH_FIELD = \"xErrorHigh\";\nvar Y_ERROR_LOW_FIELD = \"yErrorLow\";\nvar Y_ERROR_HIGH_FIELD = \"yErrorHigh\";\nvar LINE_MARKER_SIZE = 8;\nvar ZERO = \"zero\";\nvar INTERPOLATE = \"interpolate\";\nvar GAP = \"gap\";\nvar ABOVE = \"above\";\nvar BELOW = \"below\";\n\nvar SMOOTH = \"smooth\";\nvar STEP = \"step\";\n\nvar AREA = \"area\";\nvar BAR = \"bar\";\nvar BOX_PLOT = \"boxPlot\";\nvar BUBBLE = \"bubble\";\nvar BULLET = \"bullet\";\nvar CANDLESTICK = \"candlestick\";\nvar COLUMN = \"column\";\nvar DONUT = \"donut\";\nvar FUNNEL = \"funnel\";\nvar PYRAMID = \"pyramid\";\nvar HEATMAP = \"heatmap\";\nvar HORIZONTAL_WATERFALL = \"horizontalWaterfall\";\nvar LINE = \"line\";\nvar OHLC = \"ohlc\";\nvar PIE = \"pie\";\nvar POLAR_AREA = \"polarArea\";\nvar POLAR_LINE = \"polarLine\";\nvar POLAR_SCATTER = \"polarScatter\";\nvar RADAR_AREA = \"radarArea\";\nvar RADAR_COLUMN = \"radarColumn\";\nvar RADAR_LINE = \"radarLine\";\nvar RANGE_AREA = \"rangeArea\";\nvar RANGE_BAR = \"rangeBar\";\nvar RANGE_COLUMN = \"rangeColumn\";\nvar SCATTER = \"scatter\";\nvar SCATTER_LINE = \"scatterLine\";\nvar VERTICAL_AREA = \"verticalArea\";\nvar VERTICAL_BOX_PLOT = \"verticalBoxPlot\";\nvar VERTICAL_BULLET = \"verticalBullet\";\nvar VERTICAL_LINE = \"verticalLine\";\nvar VERTICAL_RANGE_AREA = \"verticalRangeArea\";\nvar WATERFALL = \"waterfall\";\nvar EQUALLY_SPACED_SERIES = [\n BAR, COLUMN, OHLC, CANDLESTICK, BOX_PLOT, VERTICAL_BOX_PLOT,\n BULLET, RANGE_COLUMN, RANGE_BAR, WATERFALL, HORIZONTAL_WATERFALL\n];\n\nvar TRENDLINE_EXPONENTIAL = 'exponentialTrendline';\nvar TRENDLINE_LINEAR = 'linearTrendline';\nvar TRENDLINE_LOGARITHMIC = 'logarithmicTrendline';\nvar TRENDLINE_MOVING_AVERAGE = 'movingAverageTrendline';\nvar TRENDLINE_POLYNOMIAL = 'polynomialTrendline';\nvar TRENDLINE_POWER = 'powerTrendline';\nvar TRENDLINE_SERIES = [\n TRENDLINE_EXPONENTIAL,\n TRENDLINE_LINEAR,\n TRENDLINE_LOGARITHMIC,\n TRENDLINE_MOVING_AVERAGE,\n TRENDLINE_POLYNOMIAL,\n TRENDLINE_POWER\n];\n\nvar LEGEND_ITEM_CLICK = \"legendItemClick\";\nvar LEGEND_ITEM_HOVER = \"legendItemHover\";\nvar LEGEND_ITEM_LEAVE = \"legendItemLeave\";\nvar SERIES_CLICK = \"seriesClick\";\nvar SERIES_HOVER = \"seriesHover\";\nvar SERIES_OVER = \"seriesOver\";\nvar SERIES_LEAVE = \"seriesLeave\";\nvar PLOT_AREA_CLICK = \"plotAreaClick\";\nvar PLOT_AREA_HOVER = \"plotAreaHover\";\nvar PLOT_AREA_LEAVE = \"plotAreaLeave\";\nvar DRAG = \"drag\";\nvar DRAG_END = \"dragEnd\";\nvar DRAG_START = \"dragStart\";\nvar ZOOM_START = \"zoomStart\";\nvar ZOOM = \"zoom\";\nvar ZOOM_END = \"zoomEnd\";\nvar SELECT_START = \"selectStart\";\nvar SELECT = \"select\";\nvar SELECT_END = \"selectEnd\";\nvar RENDER = \"render\";\nvar SHOW_TOOLTIP = \"showTooltip\";\nvar HIDE_TOOLTIP = \"hideTooltip\";\nvar PANE_RENDER = \"paneRender\";\n\n\nvar CHART_POINT_ROLE = \"graphics-symbol\";\nvar CHART_POINT_CLASSNAME = \"k-chart-point\";\nvar CHART_POINT_ROLE_DESCRIPTION = \"Point\";\nvar LEGEND_ITEM_ROLE = \"checkbox\";\nvar LEGEND_ITEM_CLASSNAME = \"k-chart-legend-item\";\nvar LEGEND_ITEM_ARIA_ROLE_DESCRIPTION = \"Legend item\";\n\nvar LOGARITHMIC = \"log\";\nvar CATEGORY = \"category\";\n\nvar INSIDE_END = \"insideEnd\";\nvar INSIDE_BASE = \"insideBase\";\nvar OUTSIDE_END = \"outsideEnd\";\n\nvar MOUSEWHEEL = \"wheel\";\nvar MOUSEWHEEL_DELAY = 150;\nvar MOUSEWHEEL_ZOOM_RATE = 0.3;\n\nvar DRILLDOWN = \"drilldown\";\nvar DRILLDOWN_FIELD = \"drilldown\";\n\nvar MIN_MOVING_AVERAGE_PERIOD = 2;\n\nexport {\n INITIAL_ANIMATION_DURATION, FADEIN,\n LEGEND_ITEM_CLICK, LEGEND_ITEM_HOVER, LEGEND_ITEM_LEAVE,\n SERIES_CLICK, SERIES_HOVER, SERIES_OVER, SERIES_LEAVE,\n GLASS, BORDER_BRIGHTNESS, TOOLTIP_OFFSET,\n START_SCALE, ERROR_LOW_FIELD, ERROR_HIGH_FIELD,\n X_ERROR_LOW_FIELD, X_ERROR_HIGH_FIELD,\n Y_ERROR_LOW_FIELD, Y_ERROR_HIGH_FIELD,\n LINE_MARKER_SIZE, INTERPOLATE, ZERO,\n SMOOTH, STEP, CATEGORY, FUNNEL, PYRAMID,\n BAR, CANDLESTICK, PIE, COLUMN, AREA,\n VERTICAL_BULLET, BOX_PLOT, OHLC, WATERFALL, LINE,\n BULLET, VERTICAL_LINE, VERTICAL_AREA, RANGE_AREA, VERTICAL_RANGE_AREA,\n RANGE_COLUMN, VERTICAL_BOX_PLOT, RANGE_BAR, HORIZONTAL_WATERFALL,\n SCATTER, SCATTER_LINE, BUBBLE, RADAR_AREA, RADAR_LINE,\n RADAR_COLUMN, POLAR_LINE, POLAR_AREA, POLAR_SCATTER,\n RENDER, PLOT_AREA_CLICK, PLOT_AREA_HOVER, PLOT_AREA_LEAVE,\n LOGARITHMIC, DRAG, DRAG_START, DRAG_END, ZOOM_START, ZOOM, ZOOM_END,\n SELECT_START, SELECT, SELECT_END, PANE_RENDER, GAP,\n DONUT, INSIDE_END, INSIDE_BASE, OUTSIDE_END,\n MOUSEWHEEL, MOUSEWHEEL_DELAY, MOUSEWHEEL_ZOOM_RATE,\n SHOW_TOOLTIP, HIDE_TOOLTIP,\n EQUALLY_SPACED_SERIES, ABOVE, BELOW,\n HEATMAP,\n DRILLDOWN, DRILLDOWN_FIELD,\n MIN_MOVING_AVERAGE_PERIOD,\n TRENDLINE_SERIES,\n TRENDLINE_EXPONENTIAL,\n TRENDLINE_LINEAR,\n TRENDLINE_LOGARITHMIC,\n TRENDLINE_MOVING_AVERAGE,\n TRENDLINE_POLYNOMIAL,\n TRENDLINE_POWER,\n CHART_POINT_ROLE, CHART_POINT_CLASSNAME, CHART_POINT_ROLE_DESCRIPTION,\n LEGEND_ITEM_ROLE, LEGEND_ITEM_CLASSNAME,\n LEGEND_ITEM_ARIA_ROLE_DESCRIPTION\n};\n","import { drawing as draw } from '@progress/kendo-drawing';\n\nimport { ChartElement, Point, Box } from '../../core';\n\nimport { FADEIN, INITIAL_ANIMATION_DURATION } from '../constants';\n\nimport { setDefaultOptions, alignPathToPixel } from '../../common';\n\nvar DEFAULT_ERROR_BAR_WIDTH = 4;\n\nvar ErrorBarBase = (function (ChartElement) {\n function ErrorBarBase(low, high, isVertical, chart, series, options) {\n ChartElement.call(this, options);\n\n this.low = low;\n this.high = high;\n this.isVertical = isVertical;\n this.chart = chart;\n this.series = series;\n }\n\n if ( ChartElement ) ErrorBarBase.__proto__ = ChartElement;\n ErrorBarBase.prototype = Object.create( ChartElement && ChartElement.prototype );\n ErrorBarBase.prototype.constructor = ErrorBarBase;\n\n ErrorBarBase.prototype.reflow = function reflow (targetBox) {\n var endCaps = this.options.endCaps;\n var isVertical = this.isVertical;\n var axis = this.getAxis();\n var valueBox = axis.getSlot(this.low, this.high);\n var centerBox = targetBox.center();\n var capsWidth = this.getCapsWidth(targetBox, isVertical);\n var capValue = isVertical ? centerBox.x : centerBox.y;\n var capStart = capValue - capsWidth;\n var capEnd = capValue + capsWidth;\n var linePoints;\n\n if (isVertical) {\n linePoints = [\n new Point(centerBox.x, valueBox.y1),\n new Point(centerBox.x, valueBox.y2)\n ];\n if (endCaps) {\n linePoints.push(new Point(capStart, valueBox.y1),\n new Point(capEnd, valueBox.y1),\n new Point(capStart, valueBox.y2),\n new Point(capEnd, valueBox.y2));\n }\n this.box = new Box(capStart, valueBox.y1, capEnd, valueBox.y2);\n } else {\n linePoints = [\n new Point(valueBox.x1, centerBox.y),\n new Point(valueBox.x2, centerBox.y)\n ];\n if (endCaps) {\n linePoints.push(new Point(valueBox.x1, capStart),\n new Point(valueBox.x1, capEnd),\n new Point(valueBox.x2, capStart),\n new Point(valueBox.x2, capEnd));\n }\n this.box = new Box(valueBox.x1, capStart, valueBox.x2, capEnd);\n }\n\n this.linePoints = linePoints;\n };\n\n ErrorBarBase.prototype.getCapsWidth = function getCapsWidth (box, isVertical) {\n var boxSize = isVertical ? box.width() : box.height();\n var capsWidth = Math.min(Math.floor(boxSize / 2), DEFAULT_ERROR_BAR_WIDTH) || DEFAULT_ERROR_BAR_WIDTH;\n\n return capsWidth;\n };\n\n ErrorBarBase.prototype.createVisual = function createVisual () {\n var this$1 = this;\n\n var options = this.options;\n var visual = options.visual;\n\n if (visual) {\n this.visual = visual({\n low: this.low,\n high: this.high,\n rect: this.box.toRect(),\n sender: this.getSender(),\n options: {\n endCaps: options.endCaps,\n color: options.color,\n line: options.line\n },\n createVisual: function () {\n this$1.createDefaultVisual();\n var defaultVisual = this$1.visual;\n delete this$1.visual;\n return defaultVisual;\n }\n });\n } else {\n this.createDefaultVisual();\n }\n };\n\n ErrorBarBase.prototype.createDefaultVisual = function createDefaultVisual () {\n var this$1 = this;\n\n var ref = this;\n var options = ref.options;\n var linePoints = ref.linePoints;\n var lineOptions = {\n stroke: {\n color: options.color,\n width: options.line.width,\n dashType: options.line.dashType\n }\n };\n\n ChartElement.prototype.createVisual.call(this);\n\n for (var idx = 0; idx < linePoints.length; idx += 2) {\n var line = new draw.Path(lineOptions)\n .moveTo(linePoints[idx].x, linePoints[idx].y)\n .lineTo(linePoints[idx + 1].x, linePoints[idx + 1].y);\n\n alignPathToPixel(line);\n this$1.visual.append(line);\n }\n };\n\n return ErrorBarBase;\n}(ChartElement));\n\nsetDefaultOptions(ErrorBarBase, {\n animation: {\n type: FADEIN,\n delay: INITIAL_ANIMATION_DURATION\n },\n endCaps: true,\n line: {\n width: 2\n },\n zIndex: 1\n});\n\nexport default ErrorBarBase;","import ErrorBarBase from './error-bar-base';\n\nvar CategoricalErrorBar = (function (ErrorBarBase) {\n function CategoricalErrorBar () {\n ErrorBarBase.apply(this, arguments);\n }\n\n if ( ErrorBarBase ) CategoricalErrorBar.__proto__ = ErrorBarBase;\n CategoricalErrorBar.prototype = Object.create( ErrorBarBase && ErrorBarBase.prototype );\n CategoricalErrorBar.prototype.constructor = CategoricalErrorBar;\n\n CategoricalErrorBar.prototype.getAxis = function getAxis () {\n var axis = this.chart.seriesValueAxis(this.series);\n\n return axis;\n };\n\n return CategoricalErrorBar;\n}(ErrorBarBase));\n\nexport default CategoricalErrorBar;","import { defined } from '../../common';\n\nexport default function anyHasZIndex(elements) {\n for (var idx = 0; idx < elements.length; idx++) {\n if (defined(elements[idx].zIndex)) {\n return true;\n }\n }\n}","export default function appendIfNotNull(array, element) {\n if (element !== null) {\n array.push(element);\n }\n}","import countNumbers from './count-numbers';\n\nexport default function areNumbers(values) {\n return countNumbers(values) === values.length;\n}","import { defined } from '../../common';\n\nexport default function segmentVisible(series, fields, index) {\n var visible = fields.visible;\n if (defined(visible)) {\n return visible;\n }\n\n var pointVisibility = series.pointVisibility;\n if (pointVisibility) {\n return pointVisibility[index];\n }\n}\n\n","import { isNumber, isString } from '../../common';\nimport SeriesBinder from '../series-binder';\nimport segmentVisible from './segment-visible';\n\nexport default function bindSegments(series) {\n var data = series.data;\n var points = [];\n var sum = 0;\n var count = 0;\n\n for (var idx = 0; idx < data.length; idx++) {\n var pointData = SeriesBinder.current.bindPoint(series, idx);\n var value = pointData.valueFields.value;\n\n\n if (isString(value)) {\n value = parseFloat(value);\n }\n\n if (isNumber(value)) {\n pointData.visible = segmentVisible(series, pointData.fields, idx) !== false;\n\n pointData.value = Math.abs(value);\n points.push(pointData);\n\n if (pointData.visible) {\n sum += pointData.value;\n }\n\n if (value !== 0) {\n count++;\n }\n } else {\n points.push(null);\n }\n }\n\n return {\n total: sum,\n points: points,\n count: count\n };\n}","export default function categoriesCount(series) {\n var seriesCount = series.length;\n var categories = 0;\n\n for (var i = 0; i < seriesCount; i++) {\n categories = Math.max(categories, series[i].data.length);\n }\n\n return categories;\n}","export default function equalsIgnoreCase(a, b) {\n if (a && b) {\n return a.toLowerCase() === b.toLowerCase();\n }\n\n return a === b;\n}","import { inArray, isFunction, isObject, valueOrDefault, hasOwnProperty } from '../../common';\n\nvar MAX_EXPAND_DEPTH = 5;\n\nexport default function evalOptions(options, context, state, dryRun) {\n if ( state === void 0 ) state = {};\n if ( dryRun === void 0 ) dryRun = false;\n\n var defaults = state.defaults = state.defaults || {};\n var depth = state.depth = state.depth || 0;\n var needsEval = false;\n\n state.excluded = state.excluded || [];\n\n if (depth > MAX_EXPAND_DEPTH) {\n return null;\n }\n\n for (var property in options) {\n if (!inArray(property, state.excluded) && hasOwnProperty(options, property)) {\n var propValue = options[property];\n if (isFunction(propValue)) {\n needsEval = true;\n if (!dryRun) {\n options[property] = valueOrDefault(propValue(context), defaults[property]);\n }\n } else if (isObject(propValue)) {\n if (!dryRun) {\n state.defaults = defaults[property];\n }\n state.depth++;\n needsEval = evalOptions(propValue, context, state, dryRun) || needsEval;\n state.depth--;\n }\n }\n }\n\n return needsEval;\n}","import { inArray } from '../../common';\n\nexport default function filterSeriesByType(series, types) {\n var result = [];\n\n var seriesTypes = [].concat(types);\n for (var idx = 0; idx < series.length; idx++) {\n var currentSeries = series[idx];\n if (inArray(currentSeries.type, seriesTypes)) {\n result.push(currentSeries);\n }\n }\n\n return result;\n}","import { parseDate } from '../../date-utils';\n\nvar dateCache = new WeakMap();\n\nexport default function parseDateCategory(category, row, intlService) {\n if (row === null || typeof row !== 'object') {\n return parseDate(intlService, category);\n }\n\n var date = dateCache.get(row);\n if (!date) {\n date = parseDate(intlService, category);\n dateCache.set(row, date);\n }\n\n return date;\n}\n","export default function hasGradientOverlay(options) {\n var overlay = options.overlay;\n\n return overlay && overlay.gradient && overlay.gradient !== \"none\";\n}","import { defined } from '../../common';\n\nexport default function hasValue(value) {\n return defined(value) && value !== null;\n}","import equalsIgnoreCase from './equals-ignore-case';\n\nimport { DATE } from '../../common/constants';\n\nexport default function isDateAxis(axisOptions, sampleCategory) {\n var type = axisOptions.type;\n var dateCategory = sampleCategory instanceof Date;\n\n return (!type && dateCategory) || equalsIgnoreCase(type, DATE);\n}","export default function singleItemOrArray(array) {\n return array.length === 1 ? array[0] : array;\n}","import { INTERPOLATE, ZERO } from '../constants';\nimport { convertableToNumber } from '../../common';\nimport SeriesBinder from '../series-binder';\n\nvar AREA_REGEX = /area/i;\n\nfunction seriesMissingValues(series) {\n if (series.missingValues) {\n return series.missingValues;\n }\n\n return AREA_REGEX.test(series.type) || series.stack ? ZERO : INTERPOLATE;\n}\n\nfunction hasValue(series, item) {\n var fields = SeriesBinder.current.bindPoint(series, null, item);\n var valueFields = fields.valueFields;\n\n for (var field in valueFields) {\n if (convertableToNumber(valueFields[field])) {\n return true;\n }\n }\n}\n\nfunction findNext(ref) {\n var start = ref.start;\n var dir = ref.dir;\n var min = ref.min;\n var max = ref.max;\n var getter = ref.getter;\n var hasItem = ref.hasItem;\n var series = ref.series;\n\n var pointHasValue, outPoint;\n var idx = start;\n do {\n idx += dir;\n //aggregating and binding the item takes too much time for large number of categories\n //will assume that if the aggregation does not create value for a missing item for one it will not create for others\n if (hasItem(idx)) {\n outPoint = getter(idx);\n pointHasValue = hasValue(series, outPoint.item);\n }\n } while (min <= idx && idx <= max && !pointHasValue);\n\n if (pointHasValue) {\n return outPoint;\n }\n}\n\nexport default function createOutOfRangePoints(series, range, count, getter, hasItem) {\n var min = range.min;\n var max = range.max;\n var hasMinPoint = min > 0 && min < count;\n var hasMaxPoint = max + 1 < count;\n\n if (hasMinPoint || hasMaxPoint) {\n var missingValues = seriesMissingValues(series);\n var minPoint, maxPoint;\n if (missingValues !== INTERPOLATE) {\n if (hasMinPoint) {\n minPoint = getter(min - 1);\n }\n\n if (hasMaxPoint) {\n maxPoint = getter(max + 1);\n }\n } else {\n var outPoint, pointHasValue;\n if (hasMinPoint) {\n outPoint = getter(min - 1);\n pointHasValue = hasValue(series, outPoint.item);\n if (!pointHasValue) {\n minPoint = findNext({\n start: min,\n dir: -1,\n min: 0,\n max: count - 1,\n getter: getter,\n hasItem: hasItem,\n series: series\n });\n } else {\n minPoint = outPoint;\n }\n }\n\n if (hasMaxPoint) {\n outPoint = getter(max + 1);\n pointHasValue = hasValue(series, outPoint.item);\n if (!pointHasValue) {\n maxPoint = findNext({\n start: max,\n dir: 1,\n min: 0,\n max: count - 1,\n getter: getter,\n hasItem: hasItem,\n series: series\n });\n } else {\n maxPoint = outPoint;\n }\n }\n }\n\n if (minPoint) {\n series._outOfRangeMinPoint = minPoint;\n }\n\n if (maxPoint) {\n series._outOfRangeMaxPoint = maxPoint;\n }\n }\n}","import ErrorRangeCalculator from './error-bars/error-range-calculator';\nimport CategoricalErrorBar from './error-bars/categorical-error-bar';\n\nimport { ERROR_LOW_FIELD, ERROR_HIGH_FIELD } from './constants';\n\nimport { evalOptions, categoriesCount } from './utils';\n\nimport { ChartElement, Box } from '../core';\n\nimport { VALUE, STRING, MIN_VALUE, MAX_VALUE, OBJECT } from '../common/constants';\nimport { convertableToNumber, deepExtend, defined, isNumber, last, setDefaultOptions, sparseArrayLimits } from '../common';\n\nvar CategoricalChart = (function (ChartElement) {\n function CategoricalChart(plotArea, options) {\n ChartElement.call(this, options);\n\n this.plotArea = plotArea;\n this.chartService = plotArea.chartService;\n this.categoryAxis = plotArea.seriesCategoryAxis(options.series[0]);\n\n // Value axis ranges grouped by axis name, e.g.:\n // primary: { min: 0, max: 1 }\n this.valueAxisRanges = {};\n\n this.points = [];\n this.categoryPoints = [];\n this.seriesPoints = [];\n this.seriesOptions = [];\n this._evalSeries = [];\n\n this.render();\n }\n\n if ( ChartElement ) CategoricalChart.__proto__ = ChartElement;\n CategoricalChart.prototype = Object.create( ChartElement && ChartElement.prototype );\n CategoricalChart.prototype.constructor = CategoricalChart;\n\n CategoricalChart.prototype.render = function render () {\n this.traverseDataPoints(this.addValue.bind(this));\n };\n\n CategoricalChart.prototype.pointOptions = function pointOptions (series, seriesIx) {\n var options = this.seriesOptions[seriesIx];\n if (!options) {\n var defaults = this.pointType().prototype.defaults;\n this.seriesOptions[seriesIx] = options = deepExtend({ }, defaults, {\n vertical: !this.options.invertAxes\n }, series);\n }\n\n return options;\n };\n\n CategoricalChart.prototype.plotValue = function plotValue (point) {\n if (!point) {\n return 0;\n }\n\n if (this.options.isStacked100 && isNumber(point.value)) {\n var categoryIx = point.categoryIx;\n var categoryPoints = this.categoryPoints[categoryIx];\n var otherValues = [];\n var categorySum = 0;\n\n for (var i = 0; i < categoryPoints.length; i++) {\n var other = categoryPoints[i];\n if (other) {\n var stack = point.series.stack;\n var otherStack = other.series.stack;\n\n if ((stack && otherStack) && stack.group !== otherStack.group) {\n continue;\n }\n\n if (isNumber(other.value)) {\n categorySum += Math.abs(other.value);\n otherValues.push(Math.abs(other.value));\n }\n }\n }\n\n if (categorySum > 0) {\n return point.value / categorySum;\n }\n }\n\n return point.value;\n };\n\n CategoricalChart.prototype.plotRange = function plotRange (point, startValue) {\n var this$1 = this;\n if ( startValue === void 0 ) startValue = 0;\n\n var categoryPoints = this.categoryPoints[point.categoryIx];\n\n if (this.options.isStacked) {\n var plotValue = this.plotValue(point);\n var positive = plotValue >= 0;\n var prevValue = startValue;\n var isStackedBar = false;\n var stack = defined(point.series.stack) ? point.series.stack : this.options.defaultStack;\n var isNonGroupStack = function (stack) { return stack === true || typeof stack === OBJECT && !stack.group; };\n\n if (stack) {\n for (var i = 0; i < categoryPoints.length; i++) {\n var other = categoryPoints[i];\n\n if (point === other) {\n break;\n }\n\n var otherStack = defined(other.series.stack) ? other.series.stack : this$1.options.defaultStack;\n\n if (!otherStack) {\n continue;\n }\n\n if (typeof stack === STRING && stack !== otherStack) {\n continue;\n }\n\n if (isNonGroupStack(stack) && !isNonGroupStack(otherStack)) {\n continue;\n }\n\n if (stack.group && stack.group !== otherStack.group) {\n continue;\n }\n\n var otherValue = this$1.plotValue(other);\n if ((otherValue >= 0 && positive) ||\n (otherValue < 0 && !positive)) {\n // zero values should be skipped for log axis (startValue !== 0)\n if (startValue === 0 || otherValue !== 0) {\n prevValue += otherValue;\n plotValue += otherValue;\n isStackedBar = true;\n\n if (this$1.options.isStacked100) {\n plotValue = Math.min(plotValue, 1);\n }\n }\n }\n }\n }\n\n if (isStackedBar) {\n prevValue -= startValue;\n }\n\n return [ prevValue, plotValue ];\n }\n\n var series = point.series;\n var valueAxis = this.seriesValueAxis(series);\n var axisCrossingValue = this.categoryAxisCrossingValue(valueAxis);\n\n return [ axisCrossingValue, convertableToNumber(point.value) ? point.value : axisCrossingValue ];\n };\n\n CategoricalChart.prototype.stackLimits = function stackLimits (axisName, stackName) {\n var this$1 = this;\n\n var min = MAX_VALUE;\n var max = MIN_VALUE;\n\n for (var i = 0; i < this.categoryPoints.length; i++) {\n var categoryPoints = this$1.categoryPoints[i];\n if (!categoryPoints) {\n continue;\n }\n\n for (var pIx = 0; pIx < categoryPoints.length; pIx++) {\n var point = categoryPoints[pIx];\n if (point) {\n if (point.series.stack === stackName || point.series.axis === axisName) {\n var to = this$1.plotRange(point, 0)[1];\n if (defined(to) && isFinite(to)) {\n max = Math.max(max, to);\n min = Math.min(min, to);\n }\n }\n }\n }\n }\n\n return { min: min, max: max };\n };\n\n CategoricalChart.prototype.updateStackRange = function updateStackRange () {\n var this$1 = this;\n\n var ref = this.options;\n var isStacked = ref.isStacked;\n var chartSeries = ref.series;\n var limitsCache = {};\n\n if (isStacked) {\n for (var i = 0; i < chartSeries.length; i++) {\n var series = chartSeries[i];\n var axisName = series.axis;\n var key = axisName + series.stack;\n\n var limits = limitsCache[key];\n if (!limits) {\n limits = this$1.stackLimits(axisName, series.stack);\n\n var errorTotals = this$1.errorTotals;\n if (errorTotals) {\n if (errorTotals.negative.length) {\n limits.min = Math.min(limits.min, sparseArrayLimits(errorTotals.negative).min);\n }\n if (errorTotals.positive.length) {\n limits.max = Math.max(limits.max, sparseArrayLimits(errorTotals.positive).max);\n }\n }\n\n if (limits.min !== MAX_VALUE || limits.max !== MIN_VALUE) {\n limitsCache[key] = limits;\n } else {\n limits = null;\n }\n }\n\n if (limits) {\n this$1.valueAxisRanges[axisName] = limits;\n }\n }\n }\n };\n\n CategoricalChart.prototype.addErrorBar = function addErrorBar (point, data, categoryIx) {\n var value = point.value;\n var series = point.series;\n var seriesIx = point.seriesIx;\n var errorBars = point.options.errorBars;\n var lowValue = data.fields[ERROR_LOW_FIELD];\n var highValue = data.fields[ERROR_HIGH_FIELD];\n var errorRange;\n\n if (isNumber(lowValue) && isNumber(highValue)) {\n errorRange = { low: lowValue, high: highValue };\n } else if (errorBars && defined(errorBars.value)) {\n this.seriesErrorRanges = this.seriesErrorRanges || [];\n this.seriesErrorRanges[seriesIx] = this.seriesErrorRanges[seriesIx] ||\n new ErrorRangeCalculator(errorBars.value, series, VALUE);\n\n errorRange = this.seriesErrorRanges[seriesIx].getErrorRange(value, errorBars.value);\n }\n\n if (errorRange) {\n point.low = errorRange.low;\n point.high = errorRange.high;\n this.addPointErrorBar(point, categoryIx);\n }\n };\n\n CategoricalChart.prototype.addPointErrorBar = function addPointErrorBar (point, categoryIx) {\n var isVertical = !this.options.invertAxes;\n var options = point.options.errorBars;\n var series = point.series;\n var low = point.low;\n var high = point.high;\n\n if (this.options.isStacked) {\n var stackedErrorRange = this.stackedErrorRange(point, categoryIx);\n low = stackedErrorRange.low;\n high = stackedErrorRange.high;\n } else {\n var fields = { categoryIx: categoryIx, series: series };\n this.updateRange({ value: low }, fields);\n this.updateRange({ value: high }, fields);\n }\n\n var errorBar = new CategoricalErrorBar(low, high, isVertical, this, series, options);\n point.errorBars = [ errorBar ];\n point.append(errorBar);\n };\n\n CategoricalChart.prototype.stackedErrorRange = function stackedErrorRange (point, categoryIx) {\n var plotValue = this.plotRange(point, 0)[1] - point.value;\n var low = point.low + plotValue;\n var high = point.high + plotValue;\n\n this.errorTotals = this.errorTotals || { positive: [], negative: [] };\n\n if (low < 0) {\n this.errorTotals.negative[categoryIx] = Math.min(this.errorTotals.negative[categoryIx] || 0, low);\n }\n\n if (high > 0) {\n this.errorTotals.positive[categoryIx] = Math.max(this.errorTotals.positive[categoryIx] || 0, high);\n }\n\n return { low: low, high: high };\n };\n\n CategoricalChart.prototype.addValue = function addValue (data, fields) {\n var categoryIx = fields.categoryIx;\n var series = fields.series;\n var seriesIx = fields.seriesIx;\n\n var categoryPoints = this.categoryPoints[categoryIx];\n if (!categoryPoints) {\n this.categoryPoints[categoryIx] = categoryPoints = [];\n }\n\n var seriesPoints = this.seriesPoints[seriesIx];\n if (!seriesPoints) {\n this.seriesPoints[seriesIx] = seriesPoints = [];\n }\n\n var point = this.createPoint(data, fields);\n if (point) {\n Object.assign(point, fields);\n\n point.owner = this;\n point.noteText = data.fields.noteText;\n if (!defined(point.dataItem)) {\n point.dataItem = series.data[categoryIx];\n }\n this.addErrorBar(point, data, categoryIx);\n }\n\n this.points.push(point);\n seriesPoints.push(point);\n categoryPoints.push(point);\n\n this.updateRange(data.valueFields, fields);\n };\n\n CategoricalChart.prototype.evalPointOptions = function evalPointOptions (options, value, fields) {\n var categoryIx = fields.categoryIx;\n var category = fields.category;\n var series = fields.series;\n var seriesIx = fields.seriesIx;\n var state = {\n defaults: series._defaults,\n excluded: [\n \"data\", \"aggregate\", \"_events\", \"tooltip\", \"content\", \"template\",\n \"visual\", \"toggle\", \"_outOfRangeMinPoint\", \"_outOfRangeMaxPoint\",\n \"drilldownSeriesFactory\", \"ariaTemplate\", \"ariaContent\"\n ]\n };\n\n var doEval = this._evalSeries[seriesIx];\n if (!defined(doEval)) {\n this._evalSeries[seriesIx] = doEval = evalOptions(options, {}, state, true);\n }\n\n var pointOptions = options;\n if (doEval) {\n pointOptions = deepExtend({}, pointOptions);\n evalOptions(pointOptions, {\n value: value,\n category: category,\n index: categoryIx,\n series: series,\n dataItem: series.data[categoryIx]\n }, state);\n }\n\n return pointOptions;\n };\n\n CategoricalChart.prototype.updateRange = function updateRange (data, fields) {\n var axisName = fields.series.axis;\n var value = data.value;\n var axisRange = this.valueAxisRanges[axisName];\n\n if (isFinite(value) && value !== null) {\n axisRange = this.valueAxisRanges[axisName] =\n axisRange || { min: MAX_VALUE, max: MIN_VALUE };\n\n axisRange.min = Math.min(axisRange.min, value);\n axisRange.max = Math.max(axisRange.max, value);\n }\n };\n\n CategoricalChart.prototype.seriesValueAxis = function seriesValueAxis (series) {\n var plotArea = this.plotArea;\n var axisName = series.axis;\n var axis = axisName ? plotArea.namedValueAxes[axisName] : plotArea.valueAxis;\n\n if (!axis) {\n throw new Error(\"Unable to locate value axis with name \" + axisName);\n }\n\n return axis;\n };\n\n CategoricalChart.prototype.reflow = function reflow (targetBox) {\n var this$1 = this;\n\n var categorySlots = this.categorySlots = [];\n var chartPoints = this.points;\n var categoryAxis = this.categoryAxis;\n var pointIx = 0;\n\n this.traverseDataPoints(function (data, fields) {\n var categoryIx = fields.categoryIx;\n var currentSeries = fields.series;\n\n var valueAxis = this$1.seriesValueAxis(currentSeries);\n var point = chartPoints[pointIx++];\n\n var categorySlot = categorySlots[categoryIx];\n if (!categorySlot) {\n categorySlots[categoryIx] = categorySlot =\n this$1.categorySlot(categoryAxis, categoryIx, valueAxis);\n }\n\n if (point) {\n var plotRange = this$1.plotRange(point, valueAxis.startValue());\n var valueSlot = this$1.valueSlot(valueAxis, plotRange);\n if (valueSlot) {\n var pointSlot = this$1.pointSlot(categorySlot, valueSlot);\n\n point.aboveAxis = this$1.aboveAxis(point, valueAxis);\n point.stackValue = plotRange[1];\n\n if (this$1.options.isStacked100) {\n point.percentage = this$1.plotValue(point);\n }\n\n this$1.reflowPoint(point, pointSlot);\n } else {\n point.visible = false;\n }\n }\n });\n\n this.reflowCategories(categorySlots);\n if (!this.options.clip && this.options.limitPoints && this.points.length) {\n this.limitPoints();\n }\n\n this.box = targetBox;\n };\n\n CategoricalChart.prototype.valueSlot = function valueSlot (valueAxis, plotRange) {\n return valueAxis.getSlot(plotRange[0], plotRange[1], !this.options.clip);\n };\n\n CategoricalChart.prototype.limitPoints = function limitPoints () {\n var this$1 = this;\n\n var categoryPoints = this.categoryPoints;\n var points = categoryPoints[0].concat(last(categoryPoints));\n for (var idx = 0; idx < points.length; idx++) {\n if (points[idx]) {\n this$1.limitPoint(points[idx]);\n }\n }\n };\n\n CategoricalChart.prototype.limitPoint = function limitPoint (point) {\n var limitedSlot = this.categoryAxis.limitSlot(point.box);\n if (!limitedSlot.equals(point.box)) {\n point.reflow(limitedSlot);\n }\n };\n\n CategoricalChart.prototype.aboveAxis = function aboveAxis (point, valueAxis) {\n var axisCrossingValue = this.categoryAxisCrossingValue(valueAxis);\n var value = point.value;\n\n return valueAxis.options.reverse ?\n value < axisCrossingValue : value >= axisCrossingValue;\n };\n\n CategoricalChart.prototype.categoryAxisCrossingValue = function categoryAxisCrossingValue (valueAxis) {\n var categoryAxis = this.categoryAxis;\n var options = valueAxis.options;\n var crossingValues = [].concat(\n options.axisCrossingValues || options.axisCrossingValue\n );\n\n return crossingValues[categoryAxis.axisIndex || 0] || 0;\n };\n\n CategoricalChart.prototype.reflowPoint = function reflowPoint (point, pointSlot) {\n point.reflow(pointSlot);\n };\n\n CategoricalChart.prototype.reflowCategories = function reflowCategories () { };\n\n CategoricalChart.prototype.pointSlot = function pointSlot (categorySlot, valueSlot) {\n var options = this.options;\n var invertAxes = options.invertAxes;\n var slotX = invertAxes ? valueSlot : categorySlot;\n var slotY = invertAxes ? categorySlot : valueSlot;\n\n return new Box(slotX.x1, slotY.y1, slotX.x2, slotY.y2);\n };\n\n CategoricalChart.prototype.categorySlot = function categorySlot (categoryAxis, categoryIx) {\n return categoryAxis.getSlot(categoryIx);\n };\n\n CategoricalChart.prototype.traverseDataPoints = function traverseDataPoints (callback) {\n var this$1 = this;\n\n var series = this.options.series;\n var count = categoriesCount(series);\n var seriesCount = series.length;\n\n for (var seriesIx = 0; seriesIx < seriesCount; seriesIx++) {\n this$1._outOfRangeCallback(series[seriesIx], \"_outOfRangeMinPoint\", seriesIx, callback);\n }\n\n for (var categoryIx = 0; categoryIx < count; categoryIx++) {\n for (var seriesIx$1 = 0; seriesIx$1 < seriesCount; seriesIx$1++) {\n var currentSeries = series[seriesIx$1];\n var currentCategory = this$1.categoryAxis.categoryAt(categoryIx);\n var pointData = this$1.plotArea.bindPoint(currentSeries, categoryIx);\n\n callback(pointData, {\n category: currentCategory,\n categoryIx: categoryIx,\n categoriesCount: count,\n series: currentSeries,\n seriesIx: seriesIx$1\n });\n }\n }\n\n for (var seriesIx$2 = 0; seriesIx$2 < seriesCount; seriesIx$2++) {\n this$1._outOfRangeCallback(series[seriesIx$2], \"_outOfRangeMaxPoint\", seriesIx$2, callback);\n }\n };\n\n CategoricalChart.prototype._outOfRangeCallback = function _outOfRangeCallback (series, field, seriesIx, callback) {\n var outOfRangePoint = series[field];\n if (outOfRangePoint) {\n var categoryIx = outOfRangePoint.categoryIx;\n var pointData = this.plotArea.bindPoint(series, categoryIx, outOfRangePoint.item);\n\n callback(pointData, {\n category: outOfRangePoint.category,\n categoryIx: categoryIx,\n series: series,\n seriesIx: seriesIx,\n dataItem: outOfRangePoint.item\n });\n }\n };\n\n CategoricalChart.prototype.formatPointValue = function formatPointValue (point, format) {\n if (point.value === null) {\n return \"\";\n }\n\n return this.chartService.format.auto(format, point.value);\n };\n\n CategoricalChart.prototype.pointValue = function pointValue (data) {\n return data.valueFields.value;\n };\n\n return CategoricalChart;\n}(ChartElement));\n\nsetDefaultOptions(CategoricalChart, {\n series: [],\n invertAxes: false,\n isStacked: false,\n clip: true,\n limitPoints: true\n});\n\nexport default CategoricalChart;\n","import { SERIES_CLICK, SERIES_HOVER, SERIES_LEAVE, SERIES_OVER } from '../constants';\nimport { eventElement } from '../../common';\n\nvar PointEventsMixin = {\n click: function(chart, e) {\n return chart.trigger(\n SERIES_CLICK,\n this.eventArgs(e)\n );\n },\n\n hover: function(chart, e) {\n return chart.trigger(\n SERIES_HOVER,\n this.eventArgs(e)\n );\n },\n\n over: function(chart, e) {\n return chart.trigger(\n SERIES_OVER,\n this.eventArgs(e)\n );\n },\n\n out: function(chart, e) {\n return chart.trigger(\n SERIES_LEAVE,\n this.eventArgs(e)\n );\n },\n\n eventArgs: function(e) {\n return {\n value: this.value,\n percentage: this.percentage,\n stackValue: this.stackValue,\n category: this.category,\n series: this.series,\n dataItem: this.dataItem,\n runningTotal: this.runningTotal,\n total: this.total,\n element: eventElement(e),\n originalEvent: e,\n point: this\n };\n }\n};\n\nexport default PointEventsMixin;","import { Note } from '../../core';\nimport { defined } from '../../common';\n\nvar NoteMixin = {\n createNote: function() {\n var options = this.options.notes;\n var text = this.noteText || options.label.text;\n\n if (options.visible !== false && defined(text) && text !== null) {\n this.note = new Note({\n value: this.value,\n text: text,\n dataItem: this.dataItem,\n category: this.category,\n series: this.series\n }, this.options.notes, this.owner.chartService);\n\n this.append(this.note);\n }\n }\n};\n\nexport default NoteMixin;","import { geometry as geom, Color } from '@progress/kendo-drawing';\n\nimport { ChartElement, TextBox, ShapeElement, Box, Point } from '../../core';\n\nimport PointEventsMixin from '../mixins/point-events-mixin';\nimport NoteMixin from '../mixins/note-mixin';\nimport { LINE_MARKER_SIZE, FADEIN, INITIAL_ANIMATION_DURATION, BORDER_BRIGHTNESS, TOOLTIP_OFFSET, ABOVE, BELOW, CHART_POINT_ROLE, CHART_POINT_CLASSNAME, CHART_POINT_ROLE_DESCRIPTION } from '../constants';\n\nimport { WHITE, CIRCLE, CENTER, TOP, BOTTOM, LEFT, HIGHLIGHT_ZINDEX } from '../../common/constants';\nimport { deepExtend, defined, getTemplate, getAriaTemplate, valueOrDefault, getSpacing } from '../../common';\nimport guid from '../../core/utils/guid';\n\nvar LinePoint = (function (ChartElement) {\n function LinePoint(value, options) {\n ChartElement.call(this);\n\n this.value = value;\n this.options = options;\n this.aboveAxis = valueOrDefault(this.options.aboveAxis, true);\n this.tooltipTracking = true;\n this._id = guid();\n }\n\n if ( ChartElement ) LinePoint.__proto__ = ChartElement;\n LinePoint.prototype = Object.create( ChartElement && ChartElement.prototype );\n LinePoint.prototype.constructor = LinePoint;\n\n LinePoint.prototype.render = function render () {\n var ref = this.options;\n var markers = ref.markers;\n\n if (this._rendered) {\n return;\n }\n\n this._rendered = true;\n\n if (markers.visible && markers.size) {\n this.marker = this.createMarker();\n this.append(this.marker);\n }\n\n this.createLabel();\n this.createNote();\n\n if (this.errorBar) {\n this.append(this.errorBar);\n }\n };\n\n LinePoint.prototype.createLabel = function createLabel () {\n var options = this.options;\n var labels = options.labels;\n\n if (labels.visible) {\n this.label = this.createLabelElement(labels);\n this.append(this.label);\n }\n };\n\n LinePoint.prototype.createLabelElement = function createLabelElement (options) {\n return new TextBox(this.getLabelText(options),\n deepExtend({\n align: CENTER,\n vAlign: CENTER,\n margin: {\n left: 5,\n right: 5\n },\n zIndex: valueOrDefault(options.zIndex, this.series.zIndex)\n }, options),\n this.pointData()\n );\n };\n\n LinePoint.prototype.getLabelText = function getLabelText (options) {\n var labelTemplate = getTemplate(options);\n\n if (labelTemplate) {\n return labelTemplate(this.pointData());\n } else if (options.format) {\n return this.formatValue(options.format);\n }\n\n return this.value;\n };\n\n LinePoint.prototype.getAriaLabelText = function getAriaLabelText () {\n var labels = this.options.labels;\n var ariaTemplate = getAriaTemplate(labels);\n\n if (ariaTemplate) {\n return ariaTemplate(this.pointData());\n }\n\n return this.getLabelText(labels);\n };\n\n LinePoint.prototype.markerBorder = function markerBorder () {\n var options = this.options.markers;\n var background = options.background;\n var border = deepExtend({ color: this.color }, options.border);\n\n if (!defined(border.color)) {\n border.color = new Color(background).brightness(BORDER_BRIGHTNESS).toHex();\n }\n\n return border;\n };\n\n LinePoint.prototype.createVisual = function createVisual () {};\n\n LinePoint.prototype.createMarker = function createMarker () {\n var options = this.options.markers;\n var marker = new ShapeElement({\n type: options.type,\n width: options.size,\n height: options.size,\n rotation: options.rotation,\n background: options.background,\n border: this.markerBorder(),\n opacity: options.opacity,\n zIndex: valueOrDefault(options.zIndex, this.series.zIndex),\n animation: options.animation,\n visual: options.visual,\n accessibilityOptions: deepExtend({\n ariaLabel: this.getAriaLabelText(this.options.labels)\n }, this.options.accessibility)\n }, {\n dataItem: this.dataItem,\n value: this.value,\n series: this.series,\n category: this.category\n });\n\n return marker;\n };\n\n LinePoint.prototype.markerBox = function markerBox () {\n if (!this.marker) {\n this.marker = this.createMarker();\n this.marker.reflow(this._childBox);\n }\n\n return this.marker.box;\n };\n\n LinePoint.prototype.reflow = function reflow (targetBox) {\n var this$1 = this;\n\n var ref = this;\n var options = ref.options;\n var aboveAxis = ref.aboveAxis;\n var vertical = options.vertical;\n\n this.render();\n\n this.box = targetBox;\n var childBox = targetBox.clone();\n\n if (vertical) {\n if (aboveAxis) {\n childBox.y1 -= childBox.height();\n } else {\n childBox.y2 += childBox.height();\n }\n } else {\n if (aboveAxis) {\n childBox.x1 += childBox.width();\n } else {\n childBox.x2 -= childBox.width();\n }\n }\n\n this._childBox = childBox;\n if (this.marker) {\n this.marker.reflow(childBox);\n }\n\n this.reflowLabel(childBox);\n\n if (this.errorBars) {\n for (var i = 0; i < this.errorBars.length; i++) {\n this$1.errorBars[i].reflow(childBox);\n }\n }\n\n if (this.note) {\n var noteTargetBox = this.markerBox();\n\n if (!(options.markers.visible && options.markers.size)) {\n var center = noteTargetBox.center();\n noteTargetBox = new Box(center.x, center.y, center.x, center.y);\n }\n\n this.note.reflow(noteTargetBox);\n }\n };\n\n LinePoint.prototype.reflowLabel = function reflowLabel (box) {\n var ref = this;\n var options = ref.options;\n var label = ref.label;\n var anchor = options.labels.position;\n\n if (label) {\n anchor = anchor === ABOVE ? TOP : anchor;\n anchor = anchor === BELOW ? BOTTOM : anchor;\n\n label.reflow(box);\n label.box.alignTo(this.markerBox(), anchor);\n label.reflow(label.box);\n }\n };\n\n LinePoint.prototype.createHighlight = function createHighlight () {\n var markers = this.options.highlight.markers;\n var defaultColor = this.markerBorder().color;\n var options = this.options.markers;\n var size = options.size + (options.border.width || 0) + (markers.border.width || 0);\n\n var shadow = new ShapeElement({\n type: options.type,\n width: size,\n height: size,\n rotation: options.rotation,\n background: markers.color || defaultColor,\n border: {\n color: markers.border.color,\n width: markers.border.width,\n opacity: valueOrDefault(markers.border.opacity, 1)\n },\n opacity: valueOrDefault(markers.opacity, 1)\n });\n shadow.reflow(this._childBox);\n\n return shadow.getElement();\n };\n\n LinePoint.prototype.highlightVisual = function highlightVisual () {\n return (this.marker || {}).visual;\n };\n\n LinePoint.prototype.highlightVisualArgs = function highlightVisualArgs () {\n var marker = this.marker;\n var visual, rect;\n\n if (marker) {\n rect = marker.paddingBox.toRect();\n visual = marker.visual;\n } else {\n var size = this.options.markers.size;\n var halfSize = size / 2;\n var center = this.box.center();\n rect = new geom.Rect([ center.x - halfSize, center.y - halfSize ], [ size, size ]);\n }\n\n return {\n options: this.options,\n rect: rect,\n visual: visual\n };\n };\n\n LinePoint.prototype.createFocusHighlight = function createFocusHighlight () {\n var markerOptions = this.options.markers;\n var highlightOptions = this.options.accessibility.highlight;\n var size = markerOptions.size + (markerOptions.border.width || 0);\n\n var highlight = new ShapeElement({\n type: markerOptions.type,\n width: size,\n height: size,\n rotation: markerOptions.rotation,\n background: highlightOptions.color,\n border: highlightOptions.border,\n opacity: highlightOptions.opacity,\n padding: highlightOptions.border.width / 2,\n zIndex: highlightOptions.zIndex\n });\n\n highlight.reflow(this._childBox);\n\n return highlight.getElement();\n };\n\n LinePoint.prototype.tooltipAnchor = function tooltipAnchor () {\n var markerBox = this.markerBox();\n var clipBox = this.owner.pane.clipBox();\n var showTooltip = !clipBox || clipBox.overlaps(markerBox);\n\n if (showTooltip) {\n var x = markerBox.x2 + TOOLTIP_OFFSET;\n var horizontalAlign = LEFT;\n var y, verticalAlign;\n\n if (this.aboveAxis) {\n y = markerBox.y1;\n verticalAlign = BOTTOM;\n } else {\n y = markerBox.y2;\n verticalAlign = TOP;\n }\n\n return {\n point: new Point(x, y),\n align: {\n horizontal: horizontalAlign,\n vertical: verticalAlign\n }\n };\n }\n };\n\n LinePoint.prototype.formatValue = function formatValue (format) {\n return this.owner.formatPointValue(this, format);\n };\n\n LinePoint.prototype.overlapsBox = function overlapsBox (box) {\n var markerBox = this.markerBox();\n return markerBox.overlaps(box);\n };\n\n LinePoint.prototype.unclipElements = function unclipElements () {\n if (this.label) {\n this.label.options.noclip = true;\n }\n\n if (this.note) {\n this.note.options.noclip = true;\n }\n };\n\n LinePoint.prototype.pointData = function pointData () {\n return {\n dataItem: this.dataItem,\n category: this.category,\n value: this.value,\n percentage: this.percentage,\n stackValue: this.stackValue,\n series: this.series\n };\n };\n\n LinePoint.prototype.focusVisual = function focusVisual () {\n if (this.marker) {\n if (this.marker.visual) {\n this.marker.visual.options.set(\"id\", this._id);\n }\n\n this.toggleFocusHighlight(true);\n }\n };\n\n LinePoint.prototype.clearFocusFromVisual = function clearFocusFromVisual () {\n if (this.marker) {\n if (this.marker.visual) {\n this.marker.visual.options.set(\"id\", \"\");\n }\n\n this.toggleFocusHighlight(false);\n }\n };\n\n LinePoint.prototype.getIndex = function getIndex () {\n return defined(this.categoryIx) ? this.categoryIx : this.pointIx;\n };\n\n return LinePoint;\n}(ChartElement));\n\nLinePoint.prototype.defaults = {\n vertical: true,\n markers: {\n visible: true,\n background: WHITE,\n size: LINE_MARKER_SIZE,\n type: CIRCLE,\n border: {\n width: 2\n },\n opacity: 1\n },\n labels: {\n visible: false,\n position: ABOVE,\n margin: getSpacing(3),\n padding: getSpacing(4),\n animation: {\n type: FADEIN,\n delay: INITIAL_ANIMATION_DURATION\n }\n },\n notes: {\n label: {}\n },\n highlight: {\n markers: {\n border: {\n color: \"#fff\",\n width: 2\n }\n },\n zIndex: HIGHLIGHT_ZINDEX\n },\n errorBars: {\n line: {\n width: 1\n }\n },\n accessibility: {\n tabIndex: 0,\n role: CHART_POINT_ROLE,\n className: CHART_POINT_CLASSNAME,\n ariaRoleDescription: CHART_POINT_ROLE_DESCRIPTION\n }\n};\n\ndeepExtend(LinePoint.prototype, PointEventsMixin);\ndeepExtend(LinePoint.prototype, NoteMixin);\n\nexport default LinePoint;\n","import { drawing as draw } from '@progress/kendo-drawing';\n\nimport { ChartElement } from '../../core';\n\nimport { defined, isFunction, setDefaultOptions } from '../../common';\n\nvar LineSegment = (function (ChartElement) {\n function LineSegment(linePoints, series, seriesIx) {\n ChartElement.call(this);\n\n this.linePoints = linePoints;\n this.series = series;\n this.seriesIx = seriesIx;\n }\n\n if ( ChartElement ) LineSegment.__proto__ = ChartElement;\n LineSegment.prototype = Object.create( ChartElement && ChartElement.prototype );\n LineSegment.prototype.constructor = LineSegment;\n\n LineSegment.prototype.points = function points () {\n return this.toGeometryPoints(this.linePoints);\n };\n\n LineSegment.prototype.toGeometryPoints = function toGeometryPoints (points) {\n var result = [];\n for (var i = 0, length = points.length; i < length; i++) {\n if (points[i] && points[i].visible !== false) {\n result.push(points[i]._childBox.toRect().center());\n }\n }\n\n return result;\n };\n\n LineSegment.prototype.createVisual = function createVisual () {\n var this$1 = this;\n\n var customVisual = this.series.visual;\n if (customVisual) {\n this.visual = customVisual({\n points: this.toGeometryPoints(this.linePoints),\n series: this.series,\n sender: this.getSender(),\n createVisual: function () {\n this$1.segmentVisual();\n\n return this$1.visual;\n }\n });\n if (this.visual && !defined(this.visual.options.zIndex)) {\n this.visual.options.zIndex = this.series.zIndex;\n }\n } else {\n this.segmentVisual();\n }\n };\n\n LineSegment.prototype.segmentVisual = function segmentVisual () {\n var ref = this;\n var options = ref.options;\n var series = ref.series;\n var color = series.color;\n var defaults = series._defaults;\n\n if (isFunction(color) && defaults) {\n color = defaults.color;\n }\n\n var line = draw.Path.fromPoints(this.points(), {\n stroke: {\n color: color,\n width: series.width,\n opacity: series.opacity,\n dashType: series.dashType\n },\n zIndex: series.zIndex\n });\n\n if (options.closed) {\n line.close();\n }\n\n this.visual = line;\n };\n\n LineSegment.prototype.aliasFor = function aliasFor (e, coords) {\n return this.parent.getNearestPoint(coords.x, coords.y, this.seriesIx);\n };\n\n return LineSegment;\n}(ChartElement));\n\nsetDefaultOptions(LineSegment, {\n closed: false\n});\n\nexport default LineSegment;","import { geometry as geom } from '@progress/kendo-drawing';\n\nimport { last } from '../../common';\nimport { X, Y } from '../../common/constants';\n\nvar StepLineMixin = {\n calculateStepPoints: function(points) {\n var categoryAxis = this.parent.plotArea.seriesCategoryAxis(this.series);\n var ref = categoryAxis.options;\n var justified = ref.justified;\n var vertical = ref.vertical;\n var reverse = ref.reverse;\n\n var stepAxis = vertical ? X : Y;\n var axis = vertical ? Y : X;\n var stepDir = reverse ? 2 : 1;\n var dir = stepDir;\n\n var previousPoint = toGeometryPoint(points[0], stepAxis, stepDir, axis, dir);\n var result = [ previousPoint ];\n\n for (var idx = 1; idx < points.length; idx++) {\n var point = toGeometryPoint(points[idx], stepAxis, stepDir, axis, dir);\n\n if (previousPoint[stepAxis] !== point[stepAxis]) {\n var stepPoint = new geom.Point();\n stepPoint[stepAxis] = previousPoint[stepAxis];\n stepPoint[axis] = point[axis];\n\n result.push(stepPoint, point);\n }\n\n previousPoint = point;\n }\n\n if (!justified) {\n result.push(toGeometryPoint(last(points), stepAxis, stepDir, axis, reverse ? 1 : 2));\n } else if (previousPoint !== last(result)) {\n result.push(previousPoint);\n }\n\n return result;\n\n }\n};\n\nfunction toGeometryPoint(lintPoint, stepAxis, stepDir, axis, dir) {\n var box = lintPoint.box;\n var result = new geom.Point();\n\n result[stepAxis] = box[stepAxis + stepDir];\n result[axis] = box[axis + dir];\n\n return result;\n}\n\nexport default StepLineMixin;","import LineSegment from './line-segment';\nimport StepLineMixin from './step-line-mixin';\nimport { deepExtend } from '../../common';\n\nvar StepLineSegment = (function (LineSegment) {\n function StepLineSegment () {\n LineSegment.apply(this, arguments);\n }\n\n if ( LineSegment ) StepLineSegment.__proto__ = LineSegment;\n StepLineSegment.prototype = Object.create( LineSegment && LineSegment.prototype );\n StepLineSegment.prototype.constructor = StepLineSegment;\n\n StepLineSegment.prototype.points = function points () {\n return this.calculateStepPoints(this.linePoints);\n };\n\n return StepLineSegment;\n}(LineSegment));\n\ndeepExtend(StepLineSegment.prototype, StepLineMixin);\n\nexport default StepLineSegment;","import { drawing as draw } from '@progress/kendo-drawing';\n\nimport LineSegment from './line-segment';\n\nimport { CurveProcessor } from '../../core';\n\nimport { isFunction } from '../../common';\n\nvar SplineSegment = (function (LineSegment) {\n function SplineSegment () {\n LineSegment.apply(this, arguments);\n }\n\n if ( LineSegment ) SplineSegment.__proto__ = LineSegment;\n SplineSegment.prototype = Object.create( LineSegment && LineSegment.prototype );\n SplineSegment.prototype.constructor = SplineSegment;\n\n SplineSegment.prototype.segmentVisual = function segmentVisual () {\n var series = this.series;\n var defaults = series._defaults;\n var color = series.color;\n\n if (isFunction(color) && defaults) {\n color = defaults.color;\n }\n\n var curveProcessor = new CurveProcessor(this.options.closed);\n var segments = curveProcessor.process(this.points());\n var curve = new draw.Path({\n stroke: {\n color: color,\n width: series.width,\n opacity: series.opacity,\n dashType: series.dashType\n },\n zIndex: series.zIndex\n });\n\n curve.segments.push.apply(curve.segments, segments);\n\n this.visual = curve;\n };\n\n return SplineSegment;\n}(LineSegment));\n\nexport default SplineSegment;","import { ZERO, INTERPOLATE } from '../constants';\n\nimport { Point } from '../../core';\nimport { MAX_VALUE } from '../../common/constants';\nimport { defined } from '../../common';\n\nvar LineChartMixin = {\n renderSegments: function() {\n var this$1 = this;\n\n var ref = this;\n var options = ref.options;\n var seriesPoints = ref.seriesPoints;\n var series = options.series;\n var seriesCount = seriesPoints.length;\n var lastSegment;\n\n this._segments = [];\n\n for (var seriesIx = 0; seriesIx < seriesCount; seriesIx++) {\n var currentSeries = series[seriesIx];\n var sortedPoints = this$1.sortPoints(seriesPoints[seriesIx]);\n var pointCount = sortedPoints.length;\n var linePoints = [];\n\n for (var pointIx = 0; pointIx < pointCount; pointIx++) {\n var point = sortedPoints[pointIx];\n if (point) {\n linePoints.push(point);\n } else if (this$1.seriesMissingValues(currentSeries) !== INTERPOLATE) {\n if (linePoints.length > 1) {\n lastSegment = this$1.createSegment(\n linePoints, currentSeries, seriesIx, lastSegment\n );\n this$1._addSegment(lastSegment);\n }\n linePoints = [];\n }\n }\n\n if (linePoints.length > 1) {\n lastSegment = this$1.createSegment(\n linePoints, currentSeries, seriesIx, lastSegment\n );\n this$1._addSegment(lastSegment);\n }\n }\n\n this.children.unshift.apply(this.children, this._segments);\n },\n\n _addSegment: function(segment) {\n this._segments.push(segment);\n segment.parent = this;\n },\n\n sortPoints: function(points) {\n return points;\n },\n\n seriesMissingValues: function(series) {\n var missingValues = series.missingValues;\n var assumeZero = !missingValues && this.options.isStacked;\n\n return assumeZero ? ZERO : missingValues || INTERPOLATE;\n },\n\n getNearestPoint: function(x, y, seriesIx) {\n var target = new Point(x, y);\n var allPoints = this.seriesPoints[seriesIx];\n var nearestPointDistance = MAX_VALUE;\n var nearestPoint;\n\n for (var i = 0; i < allPoints.length; i++) {\n var point = allPoints[i];\n\n if (point && defined(point.value) && point.value !== null && point.visible !== false) {\n var pointBox = point.box;\n var pointDistance = pointBox.center().distanceTo(target);\n\n if (pointDistance < nearestPointDistance) {\n nearestPoint = point;\n nearestPointDistance = pointDistance;\n }\n }\n }\n\n return nearestPoint;\n }\n};\n\nexport default LineChartMixin;","import { drawing as draw } from '@progress/kendo-drawing';\n\nimport { INITIAL_ANIMATION_DURATION } from '../constants';\n\nimport { interpolateValue, setDefaultOptions } from '../../common';\n\nvar ClipAnimation = (function (superclass) {\n function ClipAnimation () {\n superclass.apply(this, arguments);\n }\n\n if ( superclass ) ClipAnimation.__proto__ = superclass;\n ClipAnimation.prototype = Object.create( superclass && superclass.prototype );\n ClipAnimation.prototype.constructor = ClipAnimation;\n\n ClipAnimation.prototype.setup = function setup () {\n this._setEnd(this.options.box.x1);\n };\n\n ClipAnimation.prototype.step = function step (pos) {\n var box = this.options.box;\n this._setEnd(interpolateValue(box.x1, box.x2, pos));\n };\n\n ClipAnimation.prototype._setEnd = function _setEnd (x) {\n var element = this.element;\n var segments = element.segments;\n var topRight = segments[1].anchor();\n var bottomRight = segments[2].anchor();\n\n element.suspend();\n topRight.setX(x);\n element.resume();\n bottomRight.setX(x);\n };\n\n return ClipAnimation;\n}(draw.Animation));\n\nsetDefaultOptions(ClipAnimation, {\n duration: INITIAL_ANIMATION_DURATION\n});\n\ndraw.AnimationFactory.current.register(\"clip\", ClipAnimation);\n\nexport default ClipAnimation;","import { drawing as draw } from '@progress/kendo-drawing';\n\nimport ClipAnimation from '../animations/clip-animation';\nimport anyHasZIndex from '../utils/any-has-z-index';\nimport { defined } from '../../common';\n\nvar ClipAnimationMixin = {\n createAnimation: function() {\n var root = this.getRoot();\n if (root && (root.options || {}).transitions !== false) {\n var box = root.size();\n var clipPath = draw.Path.fromRect(box.toRect());\n this.visual.clip(clipPath);\n this.animation = new ClipAnimation(clipPath, {\n box: box\n });\n if (anyHasZIndex(this.options.series)) {\n this._setChildrenAnimation(clipPath);\n }\n }\n },\n\n _setChildrenAnimation: function(clipPath) {\n var points = this.animationPoints();\n\n for (var idx = 0; idx < points.length; idx++) {\n var point = points[idx];\n if (point && point.visual && defined(point.visual.options.zIndex)) {\n point.visual.clip(clipPath);\n }\n }\n }\n};\n\nexport default ClipAnimationMixin;","import CategoricalChart from '../categorical-chart';\nimport LinePoint from './line-point';\nimport LineSegment from './line-segment';\nimport StepLineSegment from './step-line-segment';\nimport SplineSegment from './spline-segment';\nimport LineChartMixin from '../mixins/line-chart-mixin';\nimport ClipAnimationMixin from '../mixins/clip-animation-mixin';\n\nimport { ZERO, SMOOTH, STEP } from '../constants';\n\nimport { deepExtend, defined, isFunction } from '../../common';\n\nvar LineChart = (function (CategoricalChart) {\n function LineChart () {\n CategoricalChart.apply(this, arguments);\n }\n\n if ( CategoricalChart ) LineChart.__proto__ = CategoricalChart;\n LineChart.prototype = Object.create( CategoricalChart && CategoricalChart.prototype );\n LineChart.prototype.constructor = LineChart;\n\n LineChart.prototype.render = function render () {\n\n CategoricalChart.prototype.render.call(this);\n\n this.updateStackRange();\n this.renderSegments();\n };\n\n LineChart.prototype.pointType = function pointType () {\n return LinePoint;\n };\n\n LineChart.prototype.createPoint = function createPoint (data, fields) {\n var series = fields.series;\n var seriesIx = fields.seriesIx;\n var missingValues = this.seriesMissingValues(series);\n var value = data.valueFields.value;\n\n if (!defined(value) || value === null) {\n if (missingValues === ZERO) {\n value = 0;\n } else {\n return null;\n }\n }\n\n var pointOptions = this.pointOptions(series, seriesIx);\n pointOptions = this.evalPointOptions(pointOptions, value, fields);\n\n var color = data.fields.color || series.color;\n if (isFunction(series.color)) {\n color = pointOptions.color;\n }\n\n var point = new LinePoint(value, pointOptions);\n point.color = color;\n\n this.append(point);\n\n return point;\n };\n\n LineChart.prototype.plotRange = function plotRange (point) {\n var this$1 = this;\n\n var plotValue = this.plotValue(point);\n\n if (this.options.isStacked) {\n var categoryIx = point.categoryIx;\n var categoryPoints = this.categoryPoints[categoryIx];\n\n for (var i = 0; i < categoryPoints.length; i++) {\n var other = categoryPoints[i];\n\n if (point === other) {\n break;\n }\n\n plotValue += this$1.plotValue(other);\n\n if (this$1.options.isStacked100) {\n plotValue = Math.min(plotValue, 1);\n }\n }\n\n }\n\n return [ plotValue, plotValue ];\n };\n\n LineChart.prototype.createSegment = function createSegment (linePoints, currentSeries, seriesIx) {\n var style = currentSeries.style;\n var pointType;\n\n if (style === STEP) {\n pointType = StepLineSegment;\n } else if (style === SMOOTH) {\n pointType = SplineSegment;\n } else {\n pointType = LineSegment;\n }\n\n return new pointType(linePoints, currentSeries, seriesIx);\n };\n\n LineChart.prototype.animationPoints = function animationPoints () {\n var points = this.points;\n var result = [];\n for (var idx = 0; idx < points.length; idx++) {\n result.push((points[idx] || {}).marker);\n }\n return result.concat(this._segments);\n };\n\n LineChart.prototype.supportsPointInactiveOpacity = function supportsPointInactiveOpacity () {\n return false;\n };\n\n return LineChart;\n}(CategoricalChart));\n\ndeepExtend(LineChart.prototype, LineChartMixin, ClipAnimationMixin);\n\nexport default LineChart;\n","import { drawing as draw, geometry as geom } from '@progress/kendo-drawing';\nimport LineSegment from '../line-chart/line-segment';\n\nimport { append, deepExtend, isFunction, last } from '../../common';\n\nvar AreaSegment = (function (LineSegment) {\n function AreaSegment(linePoints, currentSeries, seriesIx, prevSegment, stackPoints) {\n LineSegment.call(this, linePoints, currentSeries, seriesIx);\n\n this.prevSegment = prevSegment;\n this.stackPoints = stackPoints;\n }\n\n if ( LineSegment ) AreaSegment.__proto__ = LineSegment;\n AreaSegment.prototype = Object.create( LineSegment && LineSegment.prototype );\n AreaSegment.prototype.constructor = AreaSegment;\n\n AreaSegment.prototype.createVisual = function createVisual () {\n var series = this.series;\n var defaults = series._defaults;\n var lineOptions = series.line || {};\n var color = series.color;\n\n if (isFunction(color) && defaults) {\n color = defaults.color;\n }\n\n this.visual = new draw.Group({\n zIndex: series.zIndex\n });\n\n this.createFill({\n fill: {\n color: color,\n opacity: series.opacity\n },\n stroke: null\n });\n\n if (lineOptions.width > 0 && lineOptions.visible !== false) {\n this.createStroke({\n stroke: deepExtend({\n color: color,\n opacity: series.opacity,\n lineCap: \"butt\"\n }, lineOptions)\n });\n }\n };\n\n AreaSegment.prototype.strokeSegments = function strokeSegments () {\n var segments = this._strokeSegments;\n\n if (!segments) {\n segments = this._strokeSegments = this.createStrokeSegments();\n }\n\n return segments;\n };\n\n AreaSegment.prototype.createStrokeSegments = function createStrokeSegments () {\n return this.segmentsFromPoints(this.points());\n };\n\n AreaSegment.prototype.stackSegments = function stackSegments () {\n if (this.prevSegment) {\n return this.prevSegment.createStackSegments(this.stackPoints);\n }\n\n return this.createStackSegments(this.stackPoints);\n };\n\n AreaSegment.prototype.createStackSegments = function createStackSegments (stackPoints) {\n return this.segmentsFromPoints(this.toGeometryPoints(stackPoints)).reverse();\n };\n\n AreaSegment.prototype.segmentsFromPoints = function segmentsFromPoints (points) {\n return points.map(function (point) { return new geom.Segment(point); });\n };\n\n AreaSegment.prototype.createStroke = function createStroke (style) {\n var stroke = new draw.Path(style);\n stroke.segments.push.apply(stroke.segments, this.strokeSegments());\n\n this.visual.append(stroke);\n };\n\n AreaSegment.prototype.hasStackSegment = function hasStackSegment () {\n return this.prevSegment || (this.stackPoints && this.stackPoints.length);\n };\n\n AreaSegment.prototype.createFill = function createFill (style) {\n var strokeSegments = this.strokeSegments();\n var fillSegments = strokeSegments.slice(0);\n var hasStackSegments = this.hasStackSegment();\n\n if (hasStackSegments) {\n var stackSegments = this.stackSegments();\n\n append(fillSegments, stackSegments);\n }\n\n var fill = new draw.Path(style);\n fill.segments.push.apply(fill.segments, fillSegments);\n\n if (!hasStackSegments && strokeSegments.length > 1) {\n this.fillToAxes(fill);\n }\n\n this.visual.append(fill);\n };\n\n AreaSegment.prototype.fillToAxes = function fillToAxes (fillPath) {\n var chart = this.parent;\n var invertAxes = chart.options.invertAxes;\n var valueAxis = chart.seriesValueAxis(this.series);\n var crossingValue = chart.categoryAxisCrossingValue(valueAxis);\n var endSlot = valueAxis.getSlot(crossingValue, crossingValue, true);\n var segments = this.strokeSegments();\n var firstPoint = segments[0].anchor();\n var lastPoint = last(segments).anchor();\n var end = invertAxes ? endSlot.x1 : endSlot.y1;\n\n if (invertAxes) {\n fillPath.lineTo(end, lastPoint.y)\n .lineTo(end, firstPoint.y);\n } else {\n fillPath.lineTo(lastPoint.x, end)\n .lineTo(firstPoint.x, end);\n }\n };\n\n return AreaSegment;\n}(LineSegment));\n\nexport default AreaSegment;","import StepLineMixin from '../line-chart/step-line-mixin';\nimport AreaSegment from './area-segment';\n\nimport { deepExtend } from '../../common';\n\nvar StepAreaSegment = (function (AreaSegment) {\n function StepAreaSegment () {\n AreaSegment.apply(this, arguments);\n }\n\n if ( AreaSegment ) StepAreaSegment.__proto__ = AreaSegment;\n StepAreaSegment.prototype = Object.create( AreaSegment && AreaSegment.prototype );\n StepAreaSegment.prototype.constructor = StepAreaSegment;\n\n StepAreaSegment.prototype.createStrokeSegments = function createStrokeSegments () {\n return this.segmentsFromPoints(this.calculateStepPoints(this.linePoints));\n };\n\n StepAreaSegment.prototype.createStackSegments = function createStackSegments (stackPoints) {\n return this.segmentsFromPoints(this.calculateStepPoints(stackPoints)).reverse();\n };\n\n return StepAreaSegment;\n}(AreaSegment));\n\ndeepExtend(StepAreaSegment.prototype, StepLineMixin);\n\nexport default StepAreaSegment;","import { geometry as geom } from '@progress/kendo-drawing';\nimport { CurveProcessor } from '../../core';\n\nimport AreaSegment from './area-segment';\n\nvar SplineAreaSegment = (function (AreaSegment) {\n function SplineAreaSegment () {\n AreaSegment.apply(this, arguments);\n }\n\n if ( AreaSegment ) SplineAreaSegment.__proto__ = AreaSegment;\n SplineAreaSegment.prototype = Object.create( AreaSegment && AreaSegment.prototype );\n SplineAreaSegment.prototype.constructor = SplineAreaSegment;\n\n SplineAreaSegment.prototype.createStrokeSegments = function createStrokeSegments () {\n var curveProcessor = new CurveProcessor(this.options.closed);\n var linePoints = this.points();\n\n return curveProcessor.process(linePoints);\n };\n\n SplineAreaSegment.prototype.createStackSegments = function createStackSegments () {\n var strokeSegments = this.strokeSegments();\n var stackSegments = [];\n for (var idx = strokeSegments.length - 1; idx >= 0; idx--) {\n var segment = strokeSegments[idx];\n stackSegments.push(new geom.Segment(\n segment.anchor(),\n segment.controlOut(),\n segment.controlIn()\n ));\n }\n\n return stackSegments;\n };\n\n return SplineAreaSegment;\n}(AreaSegment));\n\nexport default SplineAreaSegment;","import LineChart from '../line-chart/line-chart';\nimport LinePoint from '../line-chart/line-point';\n\nimport AreaSegment from './area-segment';\nimport StepAreaSegment from './step-area-segment';\nimport SplineAreaSegment from './spline-area-segment';\n\nimport { STEP, SMOOTH, ZERO } from '../constants';\n\nvar AreaChart = (function (LineChart) {\n function AreaChart () {\n LineChart.apply(this, arguments);\n }\n\n if ( LineChart ) AreaChart.__proto__ = LineChart;\n AreaChart.prototype = Object.create( LineChart && LineChart.prototype );\n AreaChart.prototype.constructor = AreaChart;\n\n AreaChart.prototype.createSegment = function createSegment (linePoints, currentSeries, seriesIx, prevSegment) {\n var isStacked = this.options.isStacked;\n var style = (currentSeries.line || {}).style;\n var previousSegment;\n\n var stackPoints;\n if (isStacked && seriesIx > 0 && prevSegment) {\n var missingValues = this.seriesMissingValues(currentSeries);\n if (missingValues !== \"gap\") {\n stackPoints = prevSegment.linePoints;\n previousSegment = prevSegment;\n } else {\n stackPoints = this._gapStackPoints(linePoints, seriesIx, style);\n }\n }\n\n var pointType;\n if (style === STEP) {\n pointType = StepAreaSegment;\n } else if (style === SMOOTH) {\n pointType = SplineAreaSegment;\n } else {\n pointType = AreaSegment;\n }\n\n return new pointType(linePoints, currentSeries, seriesIx, previousSegment, stackPoints);\n };\n\n AreaChart.prototype.reflow = function reflow (targetBox) {\n var this$1 = this;\n\n LineChart.prototype.reflow.call(this, targetBox);\n\n var stackPoints = this._stackPoints;\n if (stackPoints) {\n for (var idx = 0; idx < stackPoints.length; idx++) {\n var stackPoint = stackPoints[idx];\n var pointSlot = this$1.categoryAxis.getSlot(stackPoint.categoryIx);\n stackPoint.reflow(pointSlot);\n }\n }\n };\n\n AreaChart.prototype._gapStackPoints = function _gapStackPoints (linePoints, seriesIx, style) {\n var this$1 = this;\n\n var seriesPoints = this.seriesPoints;\n var startIdx = linePoints[0].categoryIx;\n var length = linePoints.length;\n if (startIdx < 0) {\n startIdx = 0;\n length--;\n }\n\n var endIdx = startIdx + length;\n var pointOffset = this.seriesOptions[0]._outOfRangeMinPoint ? 1 : 0;\n var stackPoints = [];\n\n this._stackPoints = this._stackPoints || [];\n for (var categoryIx = startIdx; categoryIx < endIdx; categoryIx++) {\n var pointIx = categoryIx + pointOffset;\n var currentSeriesIx = seriesIx;\n var point = (void 0);\n\n do {\n currentSeriesIx--;\n point = seriesPoints[currentSeriesIx][pointIx];\n } while (currentSeriesIx > 0 && !point);\n\n if (point) {\n if (style !== STEP && categoryIx > startIdx && !seriesPoints[currentSeriesIx][pointIx - 1]) {\n stackPoints.push(this$1._previousSegmentPoint(categoryIx, pointIx, pointIx - 1, currentSeriesIx));\n }\n\n stackPoints.push(point);\n\n if (style !== STEP && categoryIx + 1 < endIdx && !seriesPoints[currentSeriesIx][pointIx + 1]) {\n stackPoints.push(this$1._previousSegmentPoint(categoryIx, pointIx, pointIx + 1, currentSeriesIx));\n }\n } else {\n var gapStackPoint = this$1._createGapStackPoint(categoryIx);\n this$1._stackPoints.push(gapStackPoint);\n stackPoints.push(gapStackPoint);\n }\n }\n\n return stackPoints;\n };\n\n AreaChart.prototype._previousSegmentPoint = function _previousSegmentPoint (categoryIx, pointIx, segmentIx, seriesIdx) {\n var seriesPoints = this.seriesPoints;\n var index = seriesIdx;\n var point;\n\n while (index > 0 && !point) {\n index--;\n point = seriesPoints[index][segmentIx];\n }\n\n if (!point) {\n point = this._createGapStackPoint(categoryIx);\n this._stackPoints.push(point);\n } else {\n point = seriesPoints[index][pointIx];\n }\n\n return point;\n };\n\n AreaChart.prototype._createGapStackPoint = function _createGapStackPoint (categoryIx) {\n var options = this.pointOptions({}, 0);\n var point = new LinePoint(0, options);\n point.categoryIx = categoryIx;\n point.series = {};\n\n return point;\n };\n\n AreaChart.prototype.seriesMissingValues = function seriesMissingValues (series) {\n return series.missingValues || ZERO;\n };\n\n AreaChart.prototype.supportsPointInactiveOpacity = function supportsPointInactiveOpacity () {\n return false;\n };\n\n return AreaChart;\n}(LineChart));\n\nexport default AreaChart;\n","import { MIN_VALUE, MAX_VALUE } from '../common/constants';\nimport { Class } from '../common';\n\nvar AxisGroupRangeTracker = (function (Class) {\n function AxisGroupRangeTracker() {\n Class.call(this);\n\n this.axisRanges = {};\n }\n\n if ( Class ) AxisGroupRangeTracker.__proto__ = Class;\n AxisGroupRangeTracker.prototype = Object.create( Class && Class.prototype );\n AxisGroupRangeTracker.prototype.constructor = AxisGroupRangeTracker;\n\n AxisGroupRangeTracker.prototype.update = function update (chartAxisRanges) {\n var axisRanges = this.axisRanges;\n\n for (var axisName in chartAxisRanges) {\n var chartRange = chartAxisRanges[axisName];\n var range = axisRanges[axisName];\n axisRanges[axisName] = range = range || { min: MAX_VALUE, max: MIN_VALUE };\n\n range.min = Math.min(range.min, chartRange.min);\n range.max = Math.max(range.max, chartRange.max);\n }\n };\n\n AxisGroupRangeTracker.prototype.reset = function reset (axisName) {\n this.axisRanges[axisName] = undefined;\n };\n\n AxisGroupRangeTracker.prototype.query = function query (axisName) {\n return this.axisRanges[axisName];\n };\n\n return AxisGroupRangeTracker;\n}(Class));\n\nexport default AxisGroupRangeTracker;","import { ChartElement, TextBox, Box } from '../../core';\nimport { FADEIN, INITIAL_ANIMATION_DURATION, INSIDE_END, INSIDE_BASE, OUTSIDE_END } from '../constants';\n\nimport { CENTER, TOP, BOTTOM, LEFT, RIGHT, X, Y, BLACK } from '../../common/constants';\nimport { getSpacing, setDefaultOptions } from '../../common';\n\nvar BarLabel = (function (ChartElement) {\n function BarLabel(content, options, pointData) {\n ChartElement.call(this, options);\n\n this.textBox = new TextBox(content, this.options, pointData);\n this.append(this.textBox);\n }\n\n if ( ChartElement ) BarLabel.__proto__ = ChartElement;\n BarLabel.prototype = Object.create( ChartElement && ChartElement.prototype );\n BarLabel.prototype.constructor = BarLabel;\n\n BarLabel.prototype.createVisual = function createVisual () {\n this.textBox.options.noclip = this.options.noclip;\n };\n\n BarLabel.prototype.reflow = function reflow (targetBox) {\n var options = this.options;\n var vertical = options.vertical;\n var aboveAxis = options.aboveAxis;\n var text = this.children[0];\n var textOptions = text.options;\n var box = text.box;\n var padding = text.options.padding;\n var labelBox = targetBox;\n\n textOptions.align = vertical ? CENTER : LEFT;\n textOptions.vAlign = vertical ? TOP : CENTER;\n\n if (options.position === INSIDE_END) {\n if (vertical) {\n textOptions.vAlign = TOP;\n\n if (!aboveAxis && box.height() < targetBox.height()) {\n textOptions.vAlign = BOTTOM;\n }\n } else {\n textOptions.align = aboveAxis ? RIGHT : LEFT;\n }\n } else if (options.position === CENTER) {\n textOptions.vAlign = CENTER;\n textOptions.align = CENTER;\n } else if (options.position === INSIDE_BASE) {\n if (vertical) {\n textOptions.vAlign = aboveAxis ? BOTTOM : TOP;\n } else {\n textOptions.align = aboveAxis ? LEFT : RIGHT;\n }\n } else if (options.position === OUTSIDE_END) {\n if (vertical) {\n if (aboveAxis) {\n labelBox = new Box(\n targetBox.x1, targetBox.y1 - box.height(),\n targetBox.x2, targetBox.y1\n );\n } else {\n labelBox = new Box(\n targetBox.x1, targetBox.y2,\n targetBox.x2, targetBox.y2 + box.height()\n );\n }\n } else {\n textOptions.align = CENTER;\n if (aboveAxis) {\n labelBox = new Box(\n targetBox.x2, targetBox.y1,\n targetBox.x2 + box.width(), targetBox.y2\n );\n } else {\n labelBox = new Box(\n targetBox.x1 - box.width(), targetBox.y1,\n targetBox.x1, targetBox.y2\n );\n }\n }\n }\n\n if (!options.rotation) {\n if (vertical) {\n padding.left = padding.right =\n (labelBox.width() - text.contentBox.width()) / 2;\n } else {\n padding.top = padding.bottom =\n (labelBox.height() - text.contentBox.height()) / 2;\n }\n }\n\n text.reflow(labelBox);\n };\n\n BarLabel.prototype.alignToClipBox = function alignToClipBox (clipBox) {\n var vertical = this.options.vertical;\n var field = vertical ? Y : X;\n var start = field + \"1\";\n var end = field + \"2\";\n var text = this.children[0];\n var parentBox = this.parent.box;\n\n if (parentBox[start] < clipBox[start] || clipBox[end] < parentBox[end]) {\n var targetBox = text.paddingBox.clone();\n targetBox[start] = Math.max(parentBox[start], clipBox[start]);\n targetBox[end] = Math.min(parentBox[end], clipBox[end]);\n\n this.reflow(targetBox);\n }\n };\n\n return BarLabel;\n}(ChartElement));\n\nsetDefaultOptions(BarLabel, {\n position: OUTSIDE_END,\n margin: getSpacing(3),\n padding: getSpacing(4),\n color: BLACK,\n background: \"\",\n border: {\n width: 1,\n color: \"\"\n },\n aboveAxis: true,\n vertical: false,\n animation: {\n type: FADEIN,\n delay: INITIAL_ANIMATION_DURATION\n },\n zIndex: 2\n});\n\nexport default BarLabel;","import addAccessibilityAttributesToVisual from \"../../core/utils/add-accessibility-attributes-to-visual\";\nimport { deepExtend, getAriaTemplate } from \"../../common\";\nimport guid from '../../core/utils/guid';\n\nvar AccessibilityAttributesMixin = {\n addAccessibilityAttributesToVisual: function() {\n this._id = this._id || guid();\n\n var accessibilityOptions = deepExtend({\n ariaLabel: this.getAriaLabelText()\n }, this.options.accessibility);\n\n addAccessibilityAttributesToVisual(this.visual, accessibilityOptions);\n },\n\n getAriaLabelText: function getAriaLabelText() {\n var labels = this.options.labels;\n var ariaTemplate = getAriaTemplate(labels);\n\n if (ariaTemplate) {\n return ariaTemplate(this.pointData());\n }\n\n return this.getLabelText(labels);\n },\n\n focusVisual: function focusVisual() {\n this.visual.options.set(\"id\", this._id);\n this.toggleFocusHighlight(true);\n },\n\n clearFocusFromVisual: function clearFocusFromVisual() {\n this.visual.options.set(\"id\", \"\");\n this.toggleFocusHighlight(false);\n }\n};\n\nexport default AccessibilityAttributesMixin;\n","import { drawing as draw, Color } from '@progress/kendo-drawing';\n\nimport BarLabel from './bar-label';\n\nimport { CHART_POINT_ROLE_DESCRIPTION, CHART_POINT_CLASSNAME, CHART_POINT_ROLE, BORDER_BRIGHTNESS, TOOLTIP_OFFSET } from '../constants';\n\nimport hasGradientOverlay from '../utils/has-gradient-overlay';\n\nimport { ChartElement, Point } from '../../core';\n\nimport PointEventsMixin from '../mixins/point-events-mixin';\nimport NoteMixin from '../mixins/note-mixin';\nimport AccessibilityAttributesMixin from '../mixins/accessibility-attributes-mixin';\n\nimport { WHITE, LEFT, RIGHT, BOTTOM, TOP } from '../../common/constants';\nimport { alignPathToPixel, deepExtend, defined, getTemplate, valueOrDefault } from '../../common';\n\nvar BAR_ALIGN_MIN_WIDTH = 6;\n\nvar Bar = (function (ChartElement) {\n function Bar(value, options) {\n ChartElement.call(this);\n\n this.options = options;\n this.color = options.color || WHITE;\n this.aboveAxis = valueOrDefault(this.options.aboveAxis, true);\n this.value = value;\n }\n\n if ( ChartElement ) Bar.__proto__ = ChartElement;\n Bar.prototype = Object.create( ChartElement && ChartElement.prototype );\n Bar.prototype.constructor = Bar;\n\n Bar.prototype.render = function render () {\n if (this._rendered) {\n return;\n }\n\n this._rendered = true;\n\n this.createLabel();\n this.createNote();\n\n if (this.errorBar) {\n this.append(this.errorBar);\n }\n };\n\n Bar.prototype.createLabel = function createLabel () {\n var options = this.options;\n var labels = options.labels;\n\n if (labels.visible) {\n this.label = this.createLabelElement(labels);\n this.append(this.label);\n }\n };\n\n Bar.prototype.createLabelElement = function createLabelElement (options) {\n return new BarLabel(this.getLabelText(options),\n deepExtend({\n vertical: this.options.vertical\n },\n options\n ), this.pointData());\n };\n\n Bar.prototype.getLabelText = function getLabelText (options) {\n var labelTemplate = getTemplate(options);\n\n if (labelTemplate) {\n return labelTemplate(this.pointData());\n }\n\n return this.formatValue(options.format);\n };\n\n Bar.prototype.formatValue = function formatValue (format) {\n return this.owner.formatPointValue(this, format);\n };\n\n Bar.prototype.reflow = function reflow (targetBox) {\n var this$1 = this;\n\n this.render();\n\n var label = this.label;\n\n this.box = targetBox;\n\n if (label) {\n label.options.aboveAxis = this.aboveAxis;\n label.reflow(targetBox);\n }\n\n if (this.note) {\n this.note.reflow(targetBox);\n }\n\n if (this.errorBars) {\n for (var i = 0; i < this.errorBars.length; i++) {\n this$1.errorBars[i].reflow(targetBox);\n }\n }\n };\n\n Bar.prototype.createVisual = function createVisual () {\n var this$1 = this;\n\n var ref = this;\n var box = ref.box;\n var options = ref.options;\n var customVisual = options.visual;\n\n if (this.visible !== false) {\n ChartElement.prototype.createVisual.call(this);\n\n this.addAccessibilityAttributesToVisual();\n\n if (customVisual) {\n var visual = this.rectVisual = customVisual({\n category: this.category,\n dataItem: this.dataItem,\n value: this.value,\n sender: this.getSender(),\n series: this.series,\n percentage: this.percentage,\n stackValue: this.stackValue,\n runningTotal: this.runningTotal,\n total: this.total,\n rect: box.toRect(),\n createVisual: function () {\n var group = new draw.Group();\n this$1.createRect(group);\n return group;\n },\n options: options\n });\n\n if (visual) {\n this.visual.append(visual);\n }\n } else if (box.width() > 0 && box.height() > 0) {\n this.createRect(this.visual);\n }\n }\n };\n\n Bar.prototype.createRect = function createRect (visual) {\n var options = this.options;\n var border = options.border;\n var strokeOpacity = defined(border.opacity) ? border.opacity : options.opacity;\n var rect = this.box.toRect();\n\n rect.size.width = Math.round(rect.size.width);\n\n var path = this.rectVisual = draw.Path.fromRect(rect, {\n fill: {\n color: this.color,\n opacity: options.opacity\n },\n stroke: {\n color: this.getBorderColor(),\n width: border.width,\n opacity: strokeOpacity,\n dashType: border.dashType\n }\n });\n\n var width = this.box.width();\n var height = this.box.height();\n\n var size = options.vertical ? width : height;\n\n if (size > BAR_ALIGN_MIN_WIDTH) {\n alignPathToPixel(path);\n\n // Fixes lineJoin issue in firefox when the joined lines are parallel\n if (width < 1 || height < 1) {\n path.options.stroke.lineJoin = \"round\";\n }\n }\n\n visual.append(path);\n\n if (hasGradientOverlay(options)) {\n var overlay = this.createGradientOverlay(path, { baseColor: this.color }, deepExtend({\n end: !options.vertical ? [ 0, 1 ] : undefined\n }, options.overlay));\n\n visual.append(overlay);\n }\n };\n\n Bar.prototype.createHighlight = function createHighlight (style) {\n var highlight = draw.Path.fromRect(this.box.toRect(), style);\n\n return alignPathToPixel(highlight);\n };\n\n Bar.prototype.highlightVisual = function highlightVisual () {\n return this.rectVisual;\n };\n\n Bar.prototype.highlightVisualArgs = function highlightVisualArgs () {\n return {\n options: this.options,\n rect: this.box.toRect(),\n visual: this.rectVisual\n };\n };\n\n Bar.prototype.createFocusHighlight = function createFocusHighlight (style) {\n var borderWidth = this.options.accessibility.highlight.border.width;\n var highlight = draw.Path.fromRect(this.box.pad(borderWidth / 2).toRect(), style);\n\n return alignPathToPixel(highlight);\n };\n\n Bar.prototype.getBorderColor = function getBorderColor () {\n var color = this.color;\n var border = this.options.border;\n var brightness = border._brightness || BORDER_BRIGHTNESS;\n var borderColor = border.color;\n\n if (!defined(borderColor)) {\n borderColor = new Color(color).brightness(brightness).toHex();\n }\n\n return borderColor;\n };\n\n Bar.prototype.tooltipAnchor = function tooltipAnchor () {\n var ref = this;\n var options = ref.options;\n var box = ref.box;\n var aboveAxis = ref.aboveAxis;\n var clipBox = this.owner.pane.clipBox() || box;\n var horizontalAlign = LEFT;\n var verticalAlign = TOP;\n var x, y;\n\n if (options.vertical) {\n x = Math.min(box.x2, clipBox.x2) + TOOLTIP_OFFSET;\n if (aboveAxis) {\n y = Math.max(box.y1, clipBox.y1);\n } else {\n y = Math.min(box.y2, clipBox.y2);\n verticalAlign = BOTTOM;\n }\n } else {\n var x1 = Math.max(box.x1, clipBox.x1);\n var x2 = Math.min(box.x2, clipBox.x2);\n\n if (options.isStacked) {\n verticalAlign = BOTTOM;\n if (aboveAxis) {\n horizontalAlign = RIGHT;\n x = x2;\n } else {\n x = x1;\n }\n y = Math.max(box.y1, clipBox.y1) - TOOLTIP_OFFSET;\n } else {\n if (aboveAxis) {\n x = x2 + TOOLTIP_OFFSET;\n } else {\n x = x1 - TOOLTIP_OFFSET;\n horizontalAlign = RIGHT;\n }\n y = Math.max(box.y1, clipBox.y1);\n }\n }\n\n return {\n point: new Point(x, y),\n align: {\n horizontal: horizontalAlign,\n vertical: verticalAlign\n }\n };\n };\n\n Bar.prototype.overlapsBox = function overlapsBox (box) {\n return this.box.overlaps(box);\n };\n\n Bar.prototype.pointData = function pointData () {\n return {\n dataItem: this.dataItem,\n category: this.category,\n value: this.value,\n percentage: this.percentage,\n stackValue: this.stackValue,\n runningTotal: this.runningTotal,\n total: this.total,\n series: this.series\n };\n };\n\n Bar.prototype.getIndex = function getIndex () {\n return this.categoryIx;\n };\n\n return Bar;\n}(ChartElement));\n\ndeepExtend(Bar.prototype, PointEventsMixin);\ndeepExtend(Bar.prototype, NoteMixin);\ndeepExtend(Bar.prototype, AccessibilityAttributesMixin);\n\nBar.prototype.defaults = {\n border: {\n width: 1\n },\n vertical: true,\n overlay: {\n gradient: \"glass\"\n },\n labels: {\n visible: false,\n format: \"{0}\"\n },\n opacity: 1,\n notes: {\n label: {}\n },\n accessibility: {\n role: CHART_POINT_ROLE,\n className: CHART_POINT_CLASSNAME,\n ariaRoleDescription: CHART_POINT_ROLE_DESCRIPTION\n }\n};\n\nexport default Bar;","export function forEach(elements, callback) {\n elements.forEach(callback);\n}\n\nexport function forEachReverse(elements, callback) {\n var length = elements.length;\n\n for (var idx = length - 1; idx >= 0; idx--) {\n callback(elements[idx], idx - length - 1);\n }\n}","import { ChartElement } from '../../core';\n\nimport { X, Y } from '../../common/constants';\nimport { setDefaultOptions } from '../../common';\nimport { forEach, forEachReverse } from './utils';\n\nvar ClusterLayout = (function (ChartElement) {\n function ClusterLayout(options) {\n ChartElement.call(this, options);\n\n this.forEach = options.rtl ? forEachReverse : forEach;\n }\n\n if ( ChartElement ) ClusterLayout.__proto__ = ChartElement;\n ClusterLayout.prototype = Object.create( ChartElement && ChartElement.prototype );\n ClusterLayout.prototype.constructor = ClusterLayout;\n\n ClusterLayout.prototype.reflow = function reflow (box) {\n var ref = this.options;\n var vertical = ref.vertical;\n var gap = ref.gap;\n var spacing = ref.spacing;\n var children = this.children;\n var count = children.length;\n var axis = vertical ? Y : X;\n var slots = count + gap + (spacing * (count - 1));\n var slotSize = (vertical ? box.height() : box.width()) / slots;\n var position = box[axis + 1] + slotSize * (gap / 2);\n\n this.forEach(children, function (child, idx) {\n var childBox = (child.box || box).clone();\n\n childBox[axis + 1] = position;\n childBox[axis + 2] = position + slotSize;\n\n child.reflow(childBox);\n if (idx < count - 1) {\n position += (slotSize * spacing);\n }\n\n position += slotSize;\n });\n };\n\n return ClusterLayout;\n}(ChartElement));\n\nsetDefaultOptions(ClusterLayout, {\n vertical: false,\n gap: 0,\n spacing: 0\n});\n\nexport default ClusterLayout;","import { ChartElement, Box } from '../../core';\n\nimport { X, Y } from '../../common/constants';\nimport { setDefaultOptions } from '../../common';\n\nvar StackWrap = (function (ChartElement) {\n function StackWrap () {\n ChartElement.apply(this, arguments);\n }\n\n if ( ChartElement ) StackWrap.__proto__ = ChartElement;\n StackWrap.prototype = Object.create( ChartElement && ChartElement.prototype );\n StackWrap.prototype.constructor = StackWrap;\n\n StackWrap.prototype.reflow = function reflow (targetBox) {\n var this$1 = this;\n\n var positionAxis = this.options.vertical ? X : Y;\n var children = this.children;\n var childrenCount = children.length;\n var box = this.box = new Box();\n\n for (var i = 0; i < childrenCount; i++) {\n var currentChild = children[i];\n\n if (currentChild.visible !== false) {\n var childBox = currentChild.box.clone();\n childBox.snapTo(targetBox, positionAxis);\n\n if (i === 0) {\n box = this$1.box = childBox.clone();\n }\n\n currentChild.reflow(childBox);\n box.wrap(childBox);\n }\n }\n };\n\n return StackWrap;\n}(ChartElement));\n\nsetDefaultOptions(StackWrap, {\n vertical: true\n});\n\nexport default StackWrap;","import { geometry as geom } from '@progress/kendo-drawing';\n\nimport Bar from './bar';\n\nimport CategoricalChart from '../categorical-chart';\nimport ClusterLayout from '../layout/cluster-layout';\nimport StackWrap from '../layout/stack-wrap';\nimport { BAR, OUTSIDE_END, INSIDE_END } from '../constants';\n\nimport anyHasZIndex from '../utils/any-has-z-index';\n\nimport { OBJECT, STRING, X, Y } from '../../common/constants';\nimport { defined, isFunction, setDefaultOptions } from '../../common';\n\nvar BarChart = (function (CategoricalChart) {\n function BarChart () {\n CategoricalChart.apply(this, arguments);\n }\n\n if ( CategoricalChart ) BarChart.__proto__ = CategoricalChart;\n BarChart.prototype = Object.create( CategoricalChart && CategoricalChart.prototype );\n BarChart.prototype.constructor = BarChart;\n\n BarChart.prototype.render = function render () {\n CategoricalChart.prototype.render.call(this);\n this.updateStackRange();\n };\n\n BarChart.prototype.pointType = function pointType () {\n return Bar;\n };\n\n BarChart.prototype.clusterType = function clusterType () {\n return ClusterLayout;\n };\n\n BarChart.prototype.stackType = function stackType () {\n return StackWrap;\n };\n\n BarChart.prototype.stackLimits = function stackLimits (axisName, stackName) {\n var limits = CategoricalChart.prototype.stackLimits.call(this, axisName, stackName);\n\n return limits;\n };\n\n BarChart.prototype.createPoint = function createPoint (data, fields) {\n var categoryIx = fields.categoryIx;\n var series = fields.series;\n var seriesIx = fields.seriesIx;\n var ref = this;\n var options = ref.options;\n var children = ref.children;\n var stackOrDefault = defined(series.stack) ? series.stack : options.defaultStack;\n var value = this.pointValue(data);\n var pointOptions = this.pointOptions(series, seriesIx);\n\n var labelOptions = pointOptions.labels;\n if (stackOrDefault) {\n if (labelOptions.position === OUTSIDE_END) {\n labelOptions.position = INSIDE_END;\n }\n }\n\n pointOptions.isStacked = stackOrDefault;\n\n var color = data.fields.color || series.color;\n if (value < 0 && pointOptions.negativeColor) {\n color = pointOptions.negativeColor;\n }\n\n pointOptions = this.evalPointOptions(pointOptions, value, fields);\n if (isFunction(series.color)) {\n color = pointOptions.color;\n }\n\n var pointType = this.pointType();\n var point = new pointType(value, pointOptions);\n point.color = color;\n\n var cluster = children[categoryIx];\n if (!cluster) {\n var clusterType = this.clusterType();\n cluster = new clusterType({\n vertical: options.invertAxes,\n gap: options.gap,\n spacing: options.spacing,\n rtl: !options.invertAxes && (this.chartService || {}).rtl\n });\n this.append(cluster);\n }\n\n if (options.isStacked) {\n var stackWrap = this.getStackWrap(stackOrDefault, cluster);\n stackWrap.append(point);\n } else {\n cluster.append(point);\n }\n\n return point;\n };\n\n BarChart.prototype.getStackWrap = function getStackWrap (stack, cluster) {\n var stackGroup = (typeof stack === OBJECT) ? (stack.group || true) : stack;\n var wraps = cluster.children;\n var stackWrap;\n\n if (typeof stackGroup === STRING || stackGroup === true) {\n for (var i = 0; i < wraps.length; i++) {\n if (wraps[i]._stackGroup === stackGroup) {\n stackWrap = wraps[i];\n break;\n }\n }\n }\n\n if (!stackWrap) {\n var stackType = this.stackType();\n stackWrap = new stackType({\n vertical: !this.options.invertAxes\n });\n stackWrap._stackGroup = stackGroup;\n cluster.append(stackWrap);\n }\n\n return stackWrap;\n };\n\n BarChart.prototype.categorySlot = function categorySlot (categoryAxis, categoryIx, valueAxis) {\n var options = this.options;\n var categorySlot = categoryAxis.getSlot(categoryIx);\n var startValue = valueAxis.startValue();\n\n if (options.isStacked) {\n var zeroSlot = valueAxis.getSlot(startValue, startValue, true);\n var stackAxis = options.invertAxes ? X : Y;\n categorySlot[stackAxis + 1] = categorySlot[stackAxis + 2] = zeroSlot[stackAxis + 1];\n }\n\n return categorySlot;\n };\n\n BarChart.prototype.reflowCategories = function reflowCategories (categorySlots) {\n var children = this.children;\n var childrenLength = children.length;\n\n for (var i = 0; i < childrenLength; i++) {\n children[i].reflow(categorySlots[i]);\n }\n };\n\n BarChart.prototype.createAnimation = function createAnimation () {\n this._setAnimationOptions();\n CategoricalChart.prototype.createAnimation.call(this);\n\n if (anyHasZIndex(this.options.series)) {\n this._setChildrenAnimation();\n }\n };\n\n BarChart.prototype._setChildrenAnimation = function _setChildrenAnimation () {\n var this$1 = this;\n\n var points = this.points;\n\n for (var idx = 0; idx < points.length; idx++) {\n var point = points[idx];\n var pointVisual = point.visual;\n if (pointVisual && defined(pointVisual.options.zIndex)) {\n point.options.animation = this$1.options.animation;\n point.createAnimation();\n }\n }\n };\n\n BarChart.prototype._setAnimationOptions = function _setAnimationOptions () {\n var options = this.options;\n var animation = options.animation || {};\n var origin;\n\n if (options.isStacked) {\n var valueAxis = this.seriesValueAxis(options.series[0]);\n origin = valueAxis.getSlot(valueAxis.startValue());\n } else {\n origin = this.categoryAxis.getSlot(0);\n }\n\n animation.origin = new geom.Point(origin.x1, origin.y1);\n animation.vertical = !options.invertAxes;\n };\n\n return BarChart;\n}(CategoricalChart));\n\nsetDefaultOptions(BarChart, {\n animation: {\n type: BAR\n }\n});\n\nexport default BarChart;\n","import { drawing as draw, Color } from '@progress/kendo-drawing';\n\nimport { ChartElement, Point } from '../../core';\nimport PointEventsMixin from '../mixins/point-events-mixin';\nimport NoteMixin from '../mixins/note-mixin';\nimport Bar from '../bar-chart/bar';\nimport AccessibilityAttributesMixin from '../mixins/accessibility-attributes-mixin';\n\nimport { CHART_POINT_ROLE_DESCRIPTION, CHART_POINT_CLASSNAME, CHART_POINT_ROLE, TOOLTIP_OFFSET } from '../constants';\nimport hasGradientOverlay from '../utils/has-gradient-overlay';\n\nimport { WHITE, LEFT, TOP } from '../../common/constants';\nimport { alignPathToPixel, deepExtend, defined, setDefaultOptions, valueOrDefault } from '../../common';\n\nvar Candlestick = (function (ChartElement) {\n function Candlestick(value, options) {\n ChartElement.call(this, options);\n this.value = value;\n }\n\n if ( ChartElement ) Candlestick.__proto__ = ChartElement;\n Candlestick.prototype = Object.create( ChartElement && ChartElement.prototype );\n Candlestick.prototype.constructor = Candlestick;\n\n Candlestick.prototype.getLabelText = function getLabelText (options) {\n return this.formatValue(options.format);\n };\n\n Candlestick.prototype.reflow = function reflow (box) {\n var ref = this;\n var options = ref.options;\n var value = ref.value;\n var chart = ref.owner;\n var valueAxis = chart.seriesValueAxis(options);\n var ocSlot = valueAxis.getSlot(value.open, value.close);\n var lhSlot = valueAxis.getSlot(value.low, value.high);\n\n ocSlot.x1 = lhSlot.x1 = box.x1;\n ocSlot.x2 = lhSlot.x2 = box.x2;\n\n this.realBody = ocSlot;\n\n var mid = lhSlot.center().x;\n var points = [];\n\n points.push([ [ mid, lhSlot.y1 ], [ mid, ocSlot.y1 ] ]);\n points.push([ [ mid, ocSlot.y2 ], [ mid, lhSlot.y2 ] ]);\n\n this.lines = points;\n\n this.box = lhSlot.clone().wrap(ocSlot);\n\n if (!this._rendered) {\n this._rendered = true;\n this.createNote();\n }\n\n this.reflowNote();\n };\n\n Candlestick.prototype.reflowNote = function reflowNote () {\n if (this.note) {\n this.note.reflow(this.box);\n }\n };\n\n Candlestick.prototype.createVisual = function createVisual () {\n ChartElement.prototype.createVisual.call(this);\n\n this.addAccessibilityAttributesToVisual();\n\n this._mainVisual = this.mainVisual(this.options);\n this.visual.append(\n this._mainVisual\n );\n\n this.createOverlay();\n };\n\n Candlestick.prototype.mainVisual = function mainVisual (options) {\n var group = new draw.Group();\n\n this.createBody(group, options);\n this.createLines(group, options);\n\n return group;\n };\n\n Candlestick.prototype.createBody = function createBody (container, options) {\n var body = draw.Path.fromRect(this.realBody.toRect(), {\n fill: {\n color: this.color,\n opacity: options.opacity\n },\n stroke: null\n });\n\n if (options.border.width > 0) {\n body.options.set(\"stroke\", {\n color: this.getBorderColor(),\n width: options.border.width,\n dashType: options.border.dashType,\n opacity: valueOrDefault(options.border.opacity, options.opacity)\n });\n }\n\n alignPathToPixel(body);\n container.append(body);\n\n if (hasGradientOverlay(options)) {\n container.append(this.createGradientOverlay(body, { baseColor: this.color }, deepExtend({\n end: !options.vertical ? [ 0, 1 ] : undefined\n }, options.overlay)));\n }\n };\n\n Candlestick.prototype.createLines = function createLines (container, options) {\n this.drawLines(container, options, this.lines, options.line);\n };\n\n Candlestick.prototype.drawLines = function drawLines (container, options, lines, lineOptions) {\n if (!lines) {\n return;\n }\n\n var lineStyle = {\n stroke: {\n color: lineOptions.color || this.color,\n opacity: valueOrDefault(lineOptions.opacity, options.opacity),\n width: lineOptions.width,\n dashType: lineOptions.dashType,\n lineCap: \"butt\"\n }\n };\n\n for (var i = 0; i < lines.length; i++) {\n var line = draw.Path.fromPoints(lines[i], lineStyle);\n alignPathToPixel(line);\n container.append(line);\n }\n };\n\n Candlestick.prototype.getBorderColor = function getBorderColor () {\n var border = this.options.border;\n var borderColor = border.color;\n\n if (!defined(borderColor)) {\n borderColor = new Color(this.color).brightness(border._brightness).toHex();\n }\n\n return borderColor;\n };\n\n Candlestick.prototype.createOverlay = function createOverlay () {\n var overlay = draw.Path.fromRect(this.box.toRect(), {\n fill: {\n color: WHITE,\n opacity: 0\n },\n stroke: null\n });\n\n this.visual.append(overlay);\n };\n\n Candlestick.prototype.createHighlight = function createHighlight () {\n var highlight = this.options.highlight;\n var normalColor = this.color;\n\n this.color = highlight.color || this.color;\n var overlay = this.mainVisual(\n deepExtend({}, this.options, {\n line: {\n color: this.getBorderColor()\n }\n }, highlight)\n );\n this.color = normalColor;\n\n return overlay;\n };\n\n Candlestick.prototype.highlightVisual = function highlightVisual () {\n return this._mainVisual;\n };\n\n Candlestick.prototype.highlightVisualArgs = function highlightVisualArgs () {\n return {\n options: this.options,\n rect: this.box.toRect(),\n visual: this._mainVisual\n };\n };\n\n Candlestick.prototype.tooltipAnchor = function tooltipAnchor () {\n var box = this.box;\n var clipBox = this.owner.pane.clipBox() || box;\n\n return {\n point: new Point(box.x2 + TOOLTIP_OFFSET, Math.max(box.y1, clipBox.y1) + TOOLTIP_OFFSET),\n align: {\n horizontal: LEFT,\n vertical: TOP\n }\n };\n };\n\n Candlestick.prototype.formatValue = function formatValue (format) {\n return this.owner.formatPointValue(this, format);\n };\n\n Candlestick.prototype.overlapsBox = function overlapsBox (box) {\n return this.box.overlaps(box);\n };\n\n Candlestick.prototype.pointData = function pointData () {\n return {\n dataItem: this.dataItem,\n value: this.value,\n meanPoints: this.meanPoints,\n medianPoints: this.medianPoints,\n whiskerPoints: this.whiskerPoints,\n stackValue: this.stackValue,\n series: this.series\n };\n };\n\n Candlestick.prototype.getIndex = function getIndex () {\n return this.categoryIx;\n };\n\n return Candlestick;\n}(ChartElement));\n\nCandlestick.prototype.createFocusHighlight = Bar.prototype.createFocusHighlight;\n\nsetDefaultOptions(Candlestick, {\n vertical: true,\n border: {\n _brightness: 0.8\n },\n line: {\n width: 2\n },\n overlay: {\n gradient: \"glass\"\n },\n tooltip: {\n format: \"\" +\n \"\" +\n \"\" +\n \"\" +\n \"\" +\n \"\" +\n \"
{4:d}
Open:{0:C}
High:{1:C}
Low:{2:C}
Close:{3:C}
\"\n },\n labels: {\n format: \"\"\n },\n highlight: {\n opacity: 1,\n border: {\n width: 1,\n opacity: 1\n },\n line: {\n width: 1,\n opacity: 1\n }\n },\n notes: {\n visible: true,\n label: {}\n },\n accessibility: {\n role: CHART_POINT_ROLE,\n className: CHART_POINT_CLASSNAME,\n ariaRoleDescription: CHART_POINT_ROLE_DESCRIPTION\n }\n});\n\ndeepExtend(Candlestick.prototype, PointEventsMixin);\ndeepExtend(Candlestick.prototype, NoteMixin);\ndeepExtend(Candlestick.prototype, AccessibilityAttributesMixin);\n\nexport default Candlestick;","import CategoricalChart from '../categorical-chart';\nimport ClusterLayout from '../layout/cluster-layout';\nimport Candlestick from './candlestick';\n\nimport ClipAnimationMixin from '../mixins/clip-animation-mixin';\nimport { CANDLESTICK, OHLC } from '../constants';\nimport areNumbers from '../utils/are-numbers';\n\nimport { MIN_VALUE, MAX_VALUE } from '../../common/constants';\nimport { deepExtend, isFunction } from '../../common';\n\nvar CandlestickChart = (function (CategoricalChart) {\n function CandlestickChart () {\n CategoricalChart.apply(this, arguments);\n }\n\n if ( CategoricalChart ) CandlestickChart.__proto__ = CategoricalChart;\n CandlestickChart.prototype = Object.create( CategoricalChart && CategoricalChart.prototype );\n CandlestickChart.prototype.constructor = CandlestickChart;\n\n CandlestickChart.prototype.reflowCategories = function reflowCategories (categorySlots) {\n var children = this.children;\n var childrenLength = children.length;\n\n for (var i = 0; i < childrenLength; i++) {\n children[i].reflow(categorySlots[i]);\n }\n };\n\n CandlestickChart.prototype.addValue = function addValue (data, fields) {\n var categoryIx = fields.categoryIx;\n var category = fields.category;\n var series = fields.series;\n var seriesIx = fields.seriesIx;\n var ref = this;\n var children = ref.children;\n var options = ref.options;\n var value = data.valueFields;\n var valueParts = this.splitValue(value);\n var hasValue = areNumbers(valueParts);\n var dataItem = series.data[categoryIx];\n var categoryPoints = this.categoryPoints[categoryIx];\n var point;\n\n if (!categoryPoints) {\n this.categoryPoints[categoryIx] = categoryPoints = [];\n }\n\n if (hasValue) {\n point = this.createPoint(data, fields);\n }\n\n var cluster = children[categoryIx];\n if (!cluster) {\n cluster = new ClusterLayout({\n vertical: options.invertAxes,\n gap: options.gap,\n spacing: options.spacing,\n rtl: !options.invertAxes && (this.chartService || {}).rtl\n });\n this.append(cluster);\n }\n\n if (point) {\n this.updateRange(value, fields);\n\n cluster.append(point);\n\n point.categoryIx = categoryIx;\n point.category = category;\n point.series = series;\n point.seriesIx = seriesIx;\n point.owner = this;\n point.dataItem = dataItem;\n point.noteText = data.fields.noteText;\n }\n\n this.points.push(point);\n categoryPoints.push(point);\n };\n\n CandlestickChart.prototype.pointType = function pointType () {\n return Candlestick;\n };\n\n CandlestickChart.prototype.createPoint = function createPoint (data, fields) {\n var series = fields.series;\n var pointType = this.pointType();\n var value = data.valueFields;\n var pointOptions = deepExtend({}, series);\n var color = data.fields.color || series.color;\n\n pointOptions = this.evalPointOptions(pointOptions, value, fields);\n\n if (series.type === CANDLESTICK || series.type === OHLC) {\n if (value.open > value.close) {\n color = data.fields.downColor || series.downColor || series.color;\n }\n }\n\n if (isFunction(series.color)) {\n color = pointOptions.color;\n }\n\n pointOptions.vertical = !this.options.invertAxes;\n\n var point = new pointType(value, pointOptions);\n point.color = color;\n\n return point;\n };\n\n CandlestickChart.prototype.splitValue = function splitValue (value) {\n return [ value.low, value.open, value.close, value.high ];\n };\n\n CandlestickChart.prototype.updateRange = function updateRange (value, fields) {\n var axisName = fields.series.axis;\n var parts = this.splitValue(value);\n var axisRange = this.valueAxisRanges[axisName] || { min: MAX_VALUE, max: MIN_VALUE };\n\n this.valueAxisRanges[axisName] = {\n min: Math.min.apply(Math, parts.concat([ axisRange.min ])),\n max: Math.max.apply(Math, parts.concat([ axisRange.max ]))\n };\n };\n\n CandlestickChart.prototype.formatPointValue = function formatPointValue (point, format) {\n var value = point.value;\n\n return this.chartService.format.auto(format,\n value.open, value.high,\n value.low, value.close, point.category\n );\n };\n\n CandlestickChart.prototype.animationPoints = function animationPoints () {\n return this.points;\n };\n\n return CandlestickChart;\n}(CategoricalChart));\n\ndeepExtend(CandlestickChart.prototype, ClipAnimationMixin);\n\nexport default CandlestickChart;\n","import { Color } from '@progress/kendo-drawing';\n\nimport Candlestick from '../candlestick-chart/candlestick';\nimport PointEventsMixin from '../mixins/point-events-mixin';\nimport { ShapeElement } from '../../core';\n\nimport { LINE_MARKER_SIZE, BORDER_BRIGHTNESS } from '../constants';\n\nimport { CROSS, CIRCLE, WHITE } from '../../common/constants';\nimport { deepExtend, defined, setDefaultOptions } from '../../common';\n\nvar BoxPlot = (function (Candlestick) {\n function BoxPlot(value, options) {\n Candlestick.call(this, value, options);\n\n this.createNote();\n }\n\n if ( Candlestick ) BoxPlot.__proto__ = Candlestick;\n BoxPlot.prototype = Object.create( Candlestick && Candlestick.prototype );\n BoxPlot.prototype.constructor = BoxPlot;\n\n BoxPlot.prototype.reflow = function reflow (box) {\n var ref = this;\n var options = ref.options;\n var value = ref.value;\n var chart = ref.owner;\n var valueAxis = chart.seriesValueAxis(options);\n var whiskerSlot, boxSlot;\n\n this.boxSlot = boxSlot = valueAxis.getSlot(value.q1, value.q3);\n this.realBody = boxSlot;\n this.reflowBoxSlot(box);\n\n this.whiskerSlot = whiskerSlot = valueAxis.getSlot(value.lower, value.upper);\n this.reflowWhiskerSlot(box);\n\n var medianSlot = valueAxis.getSlot(value.median);\n\n if (value.mean) {\n var meanSlot = valueAxis.getSlot(value.mean);\n this.meanPoints = this.calcMeanPoints(box, meanSlot);\n }\n\n this.whiskerPoints = this.calcWhiskerPoints(boxSlot, whiskerSlot);\n this.medianPoints = this.calcMedianPoints(box, medianSlot);\n\n this.box = whiskerSlot.clone().wrap(boxSlot);\n this.reflowNote();\n };\n\n BoxPlot.prototype.reflowBoxSlot = function reflowBoxSlot (box) {\n this.boxSlot.x1 = box.x1;\n this.boxSlot.x2 = box.x2;\n };\n\n BoxPlot.prototype.reflowWhiskerSlot = function reflowWhiskerSlot (box) {\n this.whiskerSlot.x1 = box.x1;\n this.whiskerSlot.x2 = box.x2;\n };\n\n BoxPlot.prototype.calcMeanPoints = function calcMeanPoints (box, meanSlot) {\n return [\n [ [ box.x1, meanSlot.y1 ], [ box.x2, meanSlot.y1 ] ]\n ];\n };\n\n BoxPlot.prototype.calcWhiskerPoints = function calcWhiskerPoints (boxSlot, whiskerSlot) {\n var mid = whiskerSlot.center().x;\n return [ [\n [ mid - 5, whiskerSlot.y1 ], [ mid + 5, whiskerSlot.y1 ],\n [ mid, whiskerSlot.y1 ], [ mid, boxSlot.y1 ]\n ], [\n [ mid - 5, whiskerSlot.y2 ], [ mid + 5, whiskerSlot.y2 ],\n [ mid, whiskerSlot.y2 ], [ mid, boxSlot.y2 ]\n ] ];\n };\n\n BoxPlot.prototype.calcMedianPoints = function calcMedianPoints (box, medianSlot) {\n return [\n [ [ box.x1, medianSlot.y1 ], [ box.x2, medianSlot.y1 ] ]\n ];\n };\n\n BoxPlot.prototype.renderOutliers = function renderOutliers (options) {\n var this$1 = this;\n\n var value = this.value;\n var outliers = value.outliers || [];\n var outerFence = Math.abs(value.q3 - value.q1) * 3;\n var elements = [];\n var markers = options.markers || {};\n\n for (var i = 0; i < outliers.length; i++) {\n var outlierValue = outliers[i];\n if (outlierValue < value.q3 + outerFence && outlierValue > value.q1 - outerFence) {\n markers = options.outliers;\n } else {\n markers = options.extremes;\n }\n var markersBorder = deepExtend({}, markers.border);\n\n if (!defined(markersBorder.color)) {\n if (defined(this$1.color)) {\n markersBorder.color = this$1.color;\n } else {\n markersBorder.color =\n new Color(markers.background).brightness(BORDER_BRIGHTNESS).toHex();\n }\n }\n\n var shape = new ShapeElement({\n type: markers.type,\n width: markers.size,\n height: markers.size,\n rotation: markers.rotation,\n background: markers.background,\n border: markersBorder,\n opacity: markers.opacity\n });\n\n shape.value = outlierValue;\n\n elements.push(shape);\n }\n\n this.reflowOutliers(elements);\n return elements;\n };\n\n BoxPlot.prototype.reflowOutliers = function reflowOutliers (outliers) {\n var this$1 = this;\n\n var valueAxis = this.owner.seriesValueAxis(this.options);\n var center = this.box.center();\n\n for (var i = 0; i < outliers.length; i++) {\n var outlierValue = outliers[i].value;\n var markerBox = valueAxis.getSlot(outlierValue);\n\n if (this$1.options.vertical) {\n markerBox.move(center.x);\n } else {\n markerBox.move(undefined, center.y);\n }\n\n this$1.box = this$1.box.wrap(markerBox);\n outliers[i].reflow(markerBox);\n }\n };\n\n BoxPlot.prototype.mainVisual = function mainVisual (options) {\n var group = Candlestick.prototype.mainVisual.call(this, options);\n var outliers = this.renderOutliers(options);\n\n for (var i = 0; i < outliers.length; i++) {\n var element = outliers[i].getElement();\n if (element) {\n group.append(element);\n }\n }\n\n return group;\n };\n\n BoxPlot.prototype.createLines = function createLines (container, options) {\n this.drawLines(container, options, this.whiskerPoints, options.whiskers);\n this.drawLines(container, options, this.medianPoints, options.median);\n this.drawLines(container, options, this.meanPoints, options.mean);\n };\n\n BoxPlot.prototype.getBorderColor = function getBorderColor () {\n if ((this.options.border || {}).color) {\n return this.options.border.color;\n }\n\n if (this.color) {\n return this.color;\n }\n\n return Candlestick.prototype.getBorderColor.call(this);\n };\n\n return BoxPlot;\n}(Candlestick));\n\nsetDefaultOptions(BoxPlot, {\n border: {\n _brightness: 0.8\n },\n line: {\n width: 2\n },\n median: {\n color: \"#f6f6f6\"\n },\n mean: {\n width: 2,\n dashType: \"dash\",\n color: \"#f6f6f6\"\n },\n overlay: {\n gradient: \"glass\"\n },\n tooltip: {\n format: \"\" +\n \"\" +\n \"\" +\n \"\" +\n \"\" +\n \"\" +\n \"\" +\n \"\" +\n \"
{6:d}
Lower:{0:C}
Q1:{1:C}
Median:{2:C}
Mean:{5:C}
Q3:{3:C}
Upper:{4:C}
\"\n },\n highlight: {\n opacity: 1,\n border: {\n width: 1,\n opacity: 1\n },\n line: {\n width: 1,\n opacity: 1\n }\n },\n notes: {\n visible: true,\n label: {}\n },\n outliers: {\n visible: true,\n size: LINE_MARKER_SIZE,\n type: CROSS,\n background: WHITE,\n border: {\n width: 2,\n opacity: 1\n },\n opacity: 0\n },\n extremes: {\n visible: true,\n size: LINE_MARKER_SIZE,\n type: CIRCLE,\n background: WHITE,\n border: {\n width: 2,\n opacity: 1\n },\n opacity: 0\n }\n});\n\ndeepExtend(BoxPlot.prototype, PointEventsMixin);\n\nexport default BoxPlot;","import BoxPlot from './box-plot';\n\nvar VerticalBoxPlot = (function (BoxPlot) {\n function VerticalBoxPlot () {\n BoxPlot.apply(this, arguments);\n }\n\n if ( BoxPlot ) VerticalBoxPlot.__proto__ = BoxPlot;\n VerticalBoxPlot.prototype = Object.create( BoxPlot && BoxPlot.prototype );\n VerticalBoxPlot.prototype.constructor = VerticalBoxPlot;\n\n VerticalBoxPlot.prototype.reflowBoxSlot = function reflowBoxSlot (box) {\n this.boxSlot.y1 = box.y1;\n this.boxSlot.y2 = box.y2;\n };\n\n VerticalBoxPlot.prototype.reflowWhiskerSlot = function reflowWhiskerSlot (box) {\n this.whiskerSlot.y1 = box.y1;\n this.whiskerSlot.y2 = box.y2;\n };\n\n VerticalBoxPlot.prototype.calcMeanPoints = function calcMeanPoints (box, meanSlot) {\n return [\n [ [ meanSlot.x1, box.y1 ], [ meanSlot.x1, box.y2 ] ]\n ];\n };\n\n VerticalBoxPlot.prototype.calcWhiskerPoints = function calcWhiskerPoints (boxSlot, whiskerSlot) {\n var mid = whiskerSlot.center().y;\n return [ [\n [ whiskerSlot.x1, mid - 5 ], [ whiskerSlot.x1, mid + 5 ],\n [ whiskerSlot.x1, mid ], [ boxSlot.x1, mid ]\n ], [\n [ whiskerSlot.x2, mid - 5 ], [ whiskerSlot.x2, mid + 5 ],\n [ whiskerSlot.x2, mid ], [ boxSlot.x2, mid ]\n ] ];\n };\n\n VerticalBoxPlot.prototype.calcMedianPoints = function calcMedianPoints (box, medianSlot) {\n return [\n [ [ medianSlot.x1, box.y1 ], [ medianSlot.x1, box.y2 ] ]\n ];\n };\n\n return VerticalBoxPlot;\n}(BoxPlot));\n\nexport default VerticalBoxPlot;","import CandlestickChart from '../candlestick-chart/candlestick-chart';\nimport VerticalBoxPlot from './vertical-box-plot';\nimport BoxPlot from './box-plot';\nimport ClusterLayout from '../layout/cluster-layout';\n\nimport areNumbers from '../utils/are-numbers';\n\nimport { MIN_VALUE, MAX_VALUE } from '../../common/constants';\nimport { defined } from '../../common';\n\nvar BoxPlotChart = (function (CandlestickChart) {\n function BoxPlotChart () {\n CandlestickChart.apply(this, arguments);\n }\n\n if ( CandlestickChart ) BoxPlotChart.__proto__ = CandlestickChart;\n BoxPlotChart.prototype = Object.create( CandlestickChart && CandlestickChart.prototype );\n BoxPlotChart.prototype.constructor = BoxPlotChart;\n\n BoxPlotChart.prototype.addValue = function addValue (data, fields) {\n var categoryIx = fields.categoryIx;\n var category = fields.category;\n var series = fields.series;\n var seriesIx = fields.seriesIx;\n var ref = this;\n var children = ref.children;\n var options = ref.options;\n var value = data.valueFields;\n var valueParts = this.splitValue(value);\n var hasValue = areNumbers(valueParts);\n var dataItem = series.data[categoryIx];\n var categoryPoints = this.categoryPoints[categoryIx];\n var point;\n\n if (!categoryPoints) {\n this.categoryPoints[categoryIx] = categoryPoints = [];\n }\n\n if (hasValue) {\n point = this.createPoint(data, fields);\n }\n\n var cluster = children[categoryIx];\n if (!cluster) {\n cluster = new ClusterLayout({\n vertical: options.invertAxes,\n gap: options.gap,\n spacing: options.spacing,\n rtl: !options.invertAxes && (this.chartService || {}).rtl\n });\n this.append(cluster);\n }\n\n if (point) {\n this.updateRange(value, fields);\n\n cluster.append(point);\n\n point.categoryIx = categoryIx;\n point.category = category;\n point.series = series;\n point.seriesIx = seriesIx;\n point.owner = this;\n point.dataItem = dataItem;\n }\n\n this.points.push(point);\n categoryPoints.push(point);\n };\n\n BoxPlotChart.prototype.pointType = function pointType () {\n if (this.options.invertAxes) {\n return VerticalBoxPlot;\n }\n\n return BoxPlot;\n };\n\n BoxPlotChart.prototype.splitValue = function splitValue (value) {\n return [\n value.lower, value.q1, value.median,\n value.q3, value.upper\n ];\n };\n\n BoxPlotChart.prototype.updateRange = function updateRange (value, fields) {\n var axisName = fields.series.axis;\n var parts = this.splitValue(value).concat(this.filterOutliers(value.outliers));\n\n if (defined(value.mean)) {\n parts = parts.concat(value.mean);\n }\n\n var axisRange = this.valueAxisRanges[axisName] || { min: MAX_VALUE, max: MIN_VALUE };\n\n this.valueAxisRanges[axisName] = {\n min: Math.min.apply(Math, parts.concat([ axisRange.min ])),\n max: Math.max.apply(Math, parts.concat([ axisRange.max ]))\n };\n };\n\n BoxPlotChart.prototype.formatPointValue = function formatPointValue (point, format) {\n var value = point.value;\n\n return this.chartService.format.auto(format,\n value.lower, value.q1, value.median,\n value.q3, value.upper, value.mean, point.category\n );\n };\n\n BoxPlotChart.prototype.filterOutliers = function filterOutliers (items) {\n var length = (items || []).length;\n var result = [];\n\n for (var i = 0; i < length; i++) {\n var item = items[i];\n if (defined(item) && item !== null) {\n result.push(item);\n }\n }\n\n return result;\n };\n\n BoxPlotChart.prototype.supportsPointInactiveOpacity = function supportsPointInactiveOpacity () {\n return false;\n };\n\n return BoxPlotChart;\n}(CandlestickChart));\n\nexport default BoxPlotChart;\n","import ErrorBarBase from './error-bar-base';\n\nvar ScatterErrorBar = (function (ErrorBarBase) {\n function ScatterErrorBar () {\n ErrorBarBase.apply(this, arguments);\n }\n\n if ( ErrorBarBase ) ScatterErrorBar.__proto__ = ErrorBarBase;\n ScatterErrorBar.prototype = Object.create( ErrorBarBase && ErrorBarBase.prototype );\n ScatterErrorBar.prototype.constructor = ScatterErrorBar;\n\n ScatterErrorBar.prototype.getAxis = function getAxis () {\n var axes = this.chart.seriesAxes(this.series);\n var axis = this.isVertical ? axes.y : axes.x;\n\n return axis;\n };\n\n return ScatterErrorBar;\n}(ErrorBarBase));\n\nexport default ScatterErrorBar;","import { ChartElement, Box } from '../../core';\n\nimport ClipAnimationMixin from '../mixins/clip-animation-mixin';\nimport ErrorRangeCalculator from '../error-bars/error-range-calculator';\nimport ScatterErrorBar from '../error-bars/scatter-error-bar';\nimport LinePoint from '../line-chart/line-point';\n\nimport { hasValue, evalOptions } from '../utils';\n\nimport { deepExtend, isNumber, isString, defined, isFunction, setDefaultOptions } from '../../common';\nimport { X, Y, MIN_VALUE, MAX_VALUE } from '../../common/constants';\nimport { parseDate } from '../../date-utils';\n\nvar ScatterChart = (function (ChartElement) {\n function ScatterChart(plotArea, options) {\n\n ChartElement.call(this, options);\n\n this.plotArea = plotArea;\n this.chartService = plotArea.chartService;\n this._initFields();\n\n this.render();\n }\n\n if ( ChartElement ) ScatterChart.__proto__ = ChartElement;\n ScatterChart.prototype = Object.create( ChartElement && ChartElement.prototype );\n ScatterChart.prototype.constructor = ScatterChart;\n\n ScatterChart.prototype._initFields = function _initFields () {\n // X and Y axis ranges grouped by name, e.g.:\n // primary: { min: 0, max: 1 }\n this.xAxisRanges = {};\n this.yAxisRanges = {};\n\n this.points = [];\n this.seriesPoints = [];\n this.seriesOptions = [];\n this._evalSeries = [];\n };\n\n ScatterChart.prototype.render = function render () {\n this.traverseDataPoints(this.addValue.bind(this));\n };\n\n ScatterChart.prototype.addErrorBar = function addErrorBar (point, field, fields) {\n var value = point.value[field];\n var valueErrorField = field + \"Value\";\n var lowField = field + \"ErrorLow\";\n var highField = field + \"ErrorHigh\";\n var seriesIx = fields.seriesIx;\n var series = fields.series;\n var errorBars = point.options.errorBars;\n var lowValue = fields[lowField];\n var highValue = fields[highField];\n\n if (isNumber(value)) {\n var errorRange;\n if (isNumber(lowValue) && isNumber(highValue)) {\n errorRange = { low: lowValue, high: highValue };\n }\n\n if (errorBars && defined(errorBars[valueErrorField])) {\n this.seriesErrorRanges = this.seriesErrorRanges || { x: [], y: [] };\n this.seriesErrorRanges[field][seriesIx] = this.seriesErrorRanges[field][seriesIx] ||\n new ErrorRangeCalculator(errorBars[valueErrorField], series, field);\n\n errorRange = this.seriesErrorRanges[field][seriesIx].getErrorRange(value, errorBars[valueErrorField]);\n }\n\n if (errorRange) {\n this.addPointErrorBar(errorRange, point, field);\n }\n }\n };\n\n ScatterChart.prototype.addPointErrorBar = function addPointErrorBar (errorRange, point, field) {\n var low = errorRange.low;\n var high = errorRange.high;\n var series = point.series;\n var options = point.options.errorBars;\n var isVertical = field === Y;\n var item = {};\n\n point[field + \"Low\"] = low;\n point[field + \"High\"] = high;\n\n point.errorBars = point.errorBars || [];\n var errorBar = new ScatterErrorBar(low, high, isVertical, this, series, options);\n point.errorBars.push(errorBar);\n point.append(errorBar);\n\n item[field] = low;\n this.updateRange(item, series);\n item[field] = high;\n this.updateRange(item, series);\n };\n\n ScatterChart.prototype.addValue = function addValue (value, fields) {\n var x = value.x;\n var y = value.y;\n var seriesIx = fields.seriesIx;\n var series = this.options.series[seriesIx];\n var missingValues = this.seriesMissingValues(series);\n var seriesPoints = this.seriesPoints[seriesIx];\n\n var pointValue = value;\n if (!(hasValue(x) && hasValue(y))) {\n pointValue = this.createMissingValue(pointValue, missingValues);\n }\n\n var point;\n if (pointValue) {\n point = this.createPoint(pointValue, fields);\n if (point) {\n Object.assign(point, fields);\n this.addErrorBar(point, X, fields);\n this.addErrorBar(point, Y, fields);\n }\n this.updateRange(pointValue, fields.series);\n }\n\n this.points.push(point);\n seriesPoints.push(point);\n };\n\n ScatterChart.prototype.seriesMissingValues = function seriesMissingValues (series) {\n return series.missingValues;\n };\n\n ScatterChart.prototype.createMissingValue = function createMissingValue () {};\n\n ScatterChart.prototype.updateRange = function updateRange (value, series) {\n var intlService = this.chartService.intl;\n var xAxisName = series.xAxis;\n var yAxisName = series.yAxis;\n var x = value.x;\n var y = value.y;\n var xAxisRange = this.xAxisRanges[xAxisName];\n var yAxisRange = this.yAxisRanges[yAxisName];\n\n if (hasValue(x)) {\n xAxisRange = this.xAxisRanges[xAxisName] =\n xAxisRange || { min: MAX_VALUE, max: MIN_VALUE };\n\n if (isString(x)) {\n x = parseDate(intlService, x);\n }\n\n xAxisRange.min = Math.min(xAxisRange.min, x);\n xAxisRange.max = Math.max(xAxisRange.max, x);\n }\n\n if (hasValue(y)) {\n yAxisRange = this.yAxisRanges[yAxisName] =\n yAxisRange || { min: MAX_VALUE, max: MIN_VALUE };\n\n if (isString(y)) {\n y = parseDate(intlService, y);\n }\n\n yAxisRange.min = Math.min(yAxisRange.min, y);\n yAxisRange.max = Math.max(yAxisRange.max, y);\n }\n };\n\n ScatterChart.prototype.evalPointOptions = function evalPointOptions (options, value, fields) {\n var series = fields.series;\n var seriesIx = fields.seriesIx;\n var state = {\n defaults: series._defaults,\n excluded: [\n \"data\", \"tooltip\", \"content\", \"template\", \"visual\", \"toggle\",\n \"_outOfRangeMinPoint\", \"_outOfRangeMaxPoint\",\n \"drilldownSeriesFactory\", \"ariaTemplate\", \"ariaContent\"\n ]\n };\n\n var doEval = this._evalSeries[seriesIx];\n if (!defined(doEval)) {\n this._evalSeries[seriesIx] = doEval = evalOptions(options, {}, state, true);\n }\n\n var pointOptions = options;\n if (doEval) {\n pointOptions = deepExtend({}, options);\n evalOptions(pointOptions, {\n value: value,\n series: series,\n dataItem: fields.dataItem\n }, state);\n }\n\n return pointOptions;\n };\n\n ScatterChart.prototype.pointType = function pointType () {\n return LinePoint;\n };\n\n ScatterChart.prototype.pointOptions = function pointOptions (series, seriesIx) {\n var options = this.seriesOptions[seriesIx];\n if (!options) {\n var defaults = this.pointType().prototype.defaults;\n this.seriesOptions[seriesIx] = options = deepExtend({}, defaults, {\n markers: {\n opacity: series.opacity\n },\n tooltip: {\n format: this.options.tooltip.format\n },\n labels: {\n format: this.options.labels.format\n }\n }, series);\n }\n\n return options;\n };\n\n ScatterChart.prototype.createPoint = function createPoint (value, fields) {\n var series = fields.series;\n var pointOptions = this.pointOptions(series, fields.seriesIx);\n var color = fields.color || series.color;\n\n pointOptions = this.evalPointOptions(pointOptions, value, fields);\n\n if (isFunction(series.color)) {\n color = pointOptions.color;\n }\n\n var point = new LinePoint(value, pointOptions);\n point.color = color;\n\n this.append(point);\n\n return point;\n };\n\n ScatterChart.prototype.seriesAxes = function seriesAxes (series) {\n var xAxisName = series.xAxis;\n var yAxisName = series.yAxis;\n var plotArea = this.plotArea;\n var xAxis = xAxisName ? plotArea.namedXAxes[xAxisName] : plotArea.axisX;\n var yAxis = yAxisName ? plotArea.namedYAxes[yAxisName] : plotArea.axisY;\n\n if (!xAxis) {\n throw new Error(\"Unable to locate X axis with name \" + xAxisName);\n }\n\n if (!yAxis) {\n throw new Error(\"Unable to locate Y axis with name \" + yAxisName);\n }\n\n return {\n x: xAxis,\n y: yAxis\n };\n };\n\n ScatterChart.prototype.reflow = function reflow (targetBox) {\n var this$1 = this;\n\n var chartPoints = this.points;\n var limit = !this.options.clip;\n var pointIx = 0;\n\n\n this.traverseDataPoints(function (value, fields) {\n var point = chartPoints[pointIx++];\n var seriesAxes = this$1.seriesAxes(fields.series);\n var slotX = seriesAxes.x.getSlot(value.x, value.x, limit);\n var slotY = seriesAxes.y.getSlot(value.y, value.y, limit);\n\n if (point) {\n if (slotX && slotY) {\n var pointSlot = this$1.pointSlot(slotX, slotY);\n point.reflow(pointSlot);\n } else {\n point.visible = false;\n }\n }\n });\n\n this.box = targetBox;\n };\n\n ScatterChart.prototype.pointSlot = function pointSlot (slotX, slotY) {\n return new Box(slotX.x1, slotY.y1, slotX.x2, slotY.y2);\n };\n\n ScatterChart.prototype.traverseDataPoints = function traverseDataPoints (callback) {\n var this$1 = this;\n\n var ref = this;\n var series = ref.options.series;\n var seriesPoints = ref.seriesPoints;\n\n for (var seriesIx = 0; seriesIx < series.length; seriesIx++) {\n var currentSeries = series[seriesIx];\n var currentSeriesPoints = seriesPoints[seriesIx];\n if (!currentSeriesPoints) {\n seriesPoints[seriesIx] = [];\n }\n\n for (var pointIx = 0; pointIx < currentSeries.data.length; pointIx++) {\n var ref$1 = this$1.plotArea.bindPoint(currentSeries, pointIx);\n var value = ref$1.valueFields;\n var fields = ref$1.fields;\n\n callback(value, deepExtend({\n pointIx: pointIx,\n series: currentSeries,\n seriesIx: seriesIx,\n dataItem: currentSeries.data[pointIx],\n owner: this$1\n }, fields));\n }\n }\n };\n\n ScatterChart.prototype.formatPointValue = function formatPointValue (point, format) {\n var value = point.value;\n return this.chartService.format.auto(format, value.x, value.y);\n };\n\n ScatterChart.prototype.animationPoints = function animationPoints () {\n var points = this.points;\n var result = [];\n for (var idx = 0; idx < points.length; idx++) {\n result.push((points[idx] || {}).marker);\n }\n return result;\n };\n\n return ScatterChart;\n}(ChartElement));\nsetDefaultOptions(ScatterChart, {\n series: [],\n tooltip: {\n format: \"{0}, {1}\"\n },\n labels: {\n format: \"{0}, {1}\"\n },\n clip: true\n});\ndeepExtend(ScatterChart.prototype, ClipAnimationMixin);\n\nexport default ScatterChart;\n","import { drawing as draw, geometry as geom, Color } from '@progress/kendo-drawing';\n\nimport LinePoint from '../line-chart/line-point';\nimport { BORDER_BRIGHTNESS } from '../constants';\n\nimport { CENTER } from '../../common/constants';\nimport { deepExtend } from '../../common';\n\nvar Bubble = (function (LinePoint) {\n function Bubble(value, options) {\n LinePoint.call(this, value, options);\n\n this.category = value.category;\n }\n\n if ( LinePoint ) Bubble.__proto__ = LinePoint;\n Bubble.prototype = Object.create( LinePoint && LinePoint.prototype );\n Bubble.prototype.constructor = Bubble;\n\n Bubble.prototype.createHighlight = function createHighlight () {\n var highlight = this.options.highlight;\n var border = highlight.border;\n var markers = this.options.markers;\n var center = this.box.center();\n var radius = (markers.size + markers.border.width + border.width) / 2;\n var highlightGroup = new draw.Group();\n var shadow = new draw.Circle(new geom.Circle([ center.x, center.y + radius / 5 + border.width / 2 ], radius + border.width / 2), {\n stroke: {\n color: 'none'\n },\n fill: this.createGradient({\n gradient: 'bubbleShadow',\n color: markers.background,\n stops: [ {\n offset: 0,\n color: markers.background,\n opacity: 0.3\n }, {\n offset: 1,\n color: markers.background,\n opacity: 0\n } ]\n })\n });\n var overlay = new draw.Circle(new geom.Circle([ center.x, center.y ], radius), {\n stroke: {\n color: border.color ||\n new Color(markers.background).brightness(BORDER_BRIGHTNESS).toHex(),\n width: border.width,\n opacity: border.opacity\n },\n fill: {\n color: markers.background,\n opacity: highlight.opacity\n }\n });\n\n highlightGroup.append(shadow, overlay);\n\n return highlightGroup;\n };\n\n Bubble.prototype.createFocusHighlight = function createFocusHighlight (style) {\n var highlightOptions = this.options.accessibility.highlight;\n var markers = this.options.markers;\n var center = this.box.center();\n var radius = (markers.size + markers.border.width) / 2 + highlightOptions.border.width / 2;\n var highlight = new draw.Circle(new geom.Circle([ center.x, center.y ], radius), style);\n\n return highlight;\n };\n\n return Bubble;\n}(LinePoint));\n\nBubble.prototype.defaults = deepExtend({}, Bubble.prototype.defaults, {\n labels: {\n position: CENTER\n },\n highlight: {\n opacity: 1,\n border: {\n color: \"#fff\",\n width: 2,\n opacity: 1\n }\n }\n});\n\nBubble.prototype.defaults.highlight.zIndex = undefined;\n\nexport default Bubble;","import ScatterChart from '../scatter-charts/scatter-chart';\nimport Bubble from './bubble';\n\nimport { INITIAL_ANIMATION_DURATION, BUBBLE } from '../constants';\n\nimport { MIN_VALUE, CIRCLE } from '../../common/constants';\nimport { deepExtend, isFunction, setDefaultOptions, valueOrDefault } from '../../common';\n\nvar BubbleChart = (function (ScatterChart) {\n function BubbleChart () {\n ScatterChart.apply(this, arguments);\n }\n\n if ( ScatterChart ) BubbleChart.__proto__ = ScatterChart;\n BubbleChart.prototype = Object.create( ScatterChart && ScatterChart.prototype );\n BubbleChart.prototype.constructor = BubbleChart;\n\n BubbleChart.prototype._initFields = function _initFields () {\n this._maxSize = MIN_VALUE;\n ScatterChart.prototype._initFields.call(this);\n };\n\n BubbleChart.prototype.addValue = function addValue (value, fields) {\n if (value.size !== null && (value.size > 0 || (value.size < 0 && fields.series.negativeValues.visible))) {\n this._maxSize = Math.max(this._maxSize, Math.abs(value.size));\n ScatterChart.prototype.addValue.call(this, value, fields);\n } else {\n this.points.push(null);\n this.seriesPoints[fields.seriesIx].push(null);\n }\n };\n\n BubbleChart.prototype.reflow = function reflow (box) {\n this.updateBubblesSize(box);\n ScatterChart.prototype.reflow.call(this, box);\n };\n\n BubbleChart.prototype.pointType = function pointType () {\n return Bubble;\n };\n\n BubbleChart.prototype.createPoint = function createPoint (value, fields) {\n var series = fields.series;\n var pointsCount = series.data.length;\n var delay = fields.pointIx * (INITIAL_ANIMATION_DURATION / pointsCount);\n var animationOptions = {\n delay: delay,\n duration: INITIAL_ANIMATION_DURATION - delay,\n type: BUBBLE\n };\n\n var color = fields.color || series.color;\n if (value.size < 0 && series.negativeValues.visible) {\n color = valueOrDefault(\n series.negativeValues.color, color\n );\n }\n\n var pointOptions = deepExtend({\n labels: {\n animation: {\n delay: delay,\n duration: INITIAL_ANIMATION_DURATION - delay\n }\n }\n }, this.pointOptions(series, fields.seriesIx), {\n markers: {\n type: CIRCLE,\n border: series.border,\n opacity: series.opacity,\n animation: animationOptions\n }\n });\n\n pointOptions = this.evalPointOptions(pointOptions, value, fields);\n if (isFunction(series.color)) {\n color = pointOptions.color;\n }\n\n pointOptions.markers.background = color;\n\n var point = new Bubble(value, pointOptions);\n point.color = color;\n\n this.append(point);\n\n return point;\n };\n\n BubbleChart.prototype.updateBubblesSize = function updateBubblesSize (box) {\n var this$1 = this;\n\n var ref = this;\n var series = ref.options.series;\n var boxSize = Math.min(box.width(), box.height());\n\n for (var seriesIx = 0; seriesIx < series.length; seriesIx++) {\n var currentSeries = series[seriesIx];\n var seriesPoints = this$1.seriesPoints[seriesIx];\n var minSize = currentSeries.minSize || Math.max(boxSize * 0.02, 10);\n var maxSize = currentSeries.maxSize || boxSize * 0.2;\n var minR = minSize / 2;\n var maxR = maxSize / 2;\n var minArea = Math.PI * minR * minR;\n var maxArea = Math.PI * maxR * maxR;\n var areaRange = maxArea - minArea;\n var areaRatio = areaRange / this$1._maxSize;\n\n for (var pointIx = 0; pointIx < seriesPoints.length; pointIx++) {\n var point = seriesPoints[pointIx];\n if (point) {\n var area = Math.abs(point.value.size) * areaRatio;\n var radius = Math.sqrt((minArea + area) / Math.PI);\n var baseZIndex = valueOrDefault(point.options.zIndex, 0);\n var zIndex = baseZIndex + (1 - radius / maxR);\n\n deepExtend(point.options, {\n zIndex: zIndex,\n markers: {\n size: radius * 2,\n zIndex: zIndex\n },\n labels: {\n zIndex: zIndex + 1\n }\n });\n }\n }\n }\n };\n\n BubbleChart.prototype.formatPointValue = function formatPointValue (point, format) {\n var value = point.value;\n return this.chartService.format.auto(format, value.x, value.y, value.size, point.category);\n };\n\n BubbleChart.prototype.createAnimation = function createAnimation () {};\n BubbleChart.prototype.createVisual = function createVisual () {};\n\n return BubbleChart;\n}(ScatterChart));\n\nsetDefaultOptions(BubbleChart, {\n tooltip: {\n format: \"{3}\"\n },\n labels: {\n format: \"{3}\"\n }\n});\n\nexport default BubbleChart;","import { ShapeElement } from '../../core';\nimport { deepExtend } from '../../common';\nimport PointEventsMixin from '../mixins/point-events-mixin';\n\nvar Target = (function (ShapeElement) {\n\tfunction Target () {\n\t\tShapeElement.apply(this, arguments);\n\t}if ( ShapeElement ) Target.__proto__ = ShapeElement;\n\tTarget.prototype = Object.create( ShapeElement && ShapeElement.prototype );\n\tTarget.prototype.constructor = Target;\n\n\t\n\n\treturn Target;\n}(ShapeElement));\n\ndeepExtend(Target.prototype, PointEventsMixin);\n\nexport default Target;","import { drawing as draw } from '@progress/kendo-drawing';\n\nimport Target from './target';\n\nimport { Box, ChartElement } from '../../core';\n\nimport PointEventsMixin from '../mixins/point-events-mixin';\nimport NoteMixin from '../mixins/note-mixin';\nimport Bar from '../bar-chart/bar';\n\nimport { WHITE, TOP, RIGHT } from '../../common/constants';\nimport { alignPathToPixel, deepExtend, defined, getTemplate, setDefaultOptions, valueOrDefault } from '../../common';\n\nimport BarLabel from '../bar-chart/bar-label';\nimport { CHART_POINT_ROLE_DESCRIPTION, CHART_POINT_CLASSNAME, CHART_POINT_ROLE } from '../constants';\nimport AccessibilityAttributesMixin from '../mixins/accessibility-attributes-mixin';\n\nvar Bullet = (function (ChartElement) {\n function Bullet(value, options) {\n ChartElement.call(this, options);\n\n this.aboveAxis = this.options.aboveAxis;\n this.color = options.color || WHITE;\n this.value = value;\n }\n\n if ( ChartElement ) Bullet.__proto__ = ChartElement;\n Bullet.prototype = Object.create( ChartElement && ChartElement.prototype );\n Bullet.prototype.constructor = Bullet;\n\n Bullet.prototype.render = function render () {\n var options = this.options;\n\n if (!this._rendered) {\n this._rendered = true;\n\n if (defined(this.value.target)) {\n this.target = new Target({\n type: options.target.shape,\n background: options.target.color || this.color,\n opacity: options.opacity,\n zIndex: options.zIndex,\n border: options.target.border,\n vAlign: TOP,\n align: RIGHT\n });\n\n this.target.value = this.value;\n this.target.dataItem = this.dataItem;\n this.target.series = this.series;\n\n this.append(this.target);\n }\n\n this.createLabel();\n this.createNote();\n }\n };\n\n Bullet.prototype.createLabel = function createLabel () {\n var options = this.options;\n var labels = options.labels;\n\n if (labels.visible) {\n this.label = this.createLabelElement(labels);\n this.append(this.label);\n }\n };\n\n Bullet.prototype.createLabelElement = function createLabelElement (options) {\n return new BarLabel(this.getLabelText(options),\n options,\n this.pointData());\n };\n\n Bullet.prototype.getLabelText = function getLabelText (options) {\n var labelTemplate = getTemplate(options);\n\n if (labelTemplate) {\n return labelTemplate(this.pointData());\n }\n\n return this.formatValue(options.format);\n };\n\n Bullet.prototype.reflow = function reflow (box) {\n this.render();\n\n var ref = this;\n var options = ref.options;\n var target = ref.target;\n var chart = ref.owner;\n var invertAxes = options.invertAxes;\n var valueAxis = chart.seriesValueAxis(this.options);\n var categorySlot = chart.categorySlot(chart.categoryAxis, options.categoryIx, valueAxis);\n var targetValueSlot = valueAxis.getSlot(this.value.target);\n var targetSlotX = invertAxes ? targetValueSlot : categorySlot;\n var targetSlotY = invertAxes ? categorySlot : targetValueSlot;\n\n if (target) {\n var targetSlot = new Box(\n targetSlotX.x1, targetSlotY.y1,\n targetSlotX.x2, targetSlotY.y2\n );\n target.options.height = invertAxes ? targetSlot.height() : options.target.line.width;\n target.options.width = invertAxes ? options.target.line.width : targetSlot.width();\n target.reflow(targetSlot);\n }\n\n var label = this.label;\n if (label) {\n label.options.aboveAxis = this.aboveAxis;\n label.reflow(box);\n }\n\n if (this.note) {\n this.note.reflow(box);\n }\n\n this.box = box;\n };\n\n Bullet.prototype.createVisual = function createVisual () {\n ChartElement.prototype.createVisual.call(this);\n\n this.addAccessibilityAttributesToVisual();\n\n var options = this.options;\n var body = draw.Path.fromRect(this.box.toRect(), {\n fill: {\n color: this.color,\n opacity: options.opacity\n },\n stroke: null\n });\n\n if (options.border.width > 0) {\n body.options.set(\"stroke\", {\n color: options.border.color || this.color,\n width: options.border.width,\n dashType: options.border.dashType,\n opacity: valueOrDefault(options.border.opacity, options.opacity)\n });\n }\n\n this.bodyVisual = body;\n\n alignPathToPixel(body);\n this.visual.append(body);\n };\n\n Bullet.prototype.createAnimation = function createAnimation () {\n if (this.bodyVisual) {\n this.animation = draw.Animation.create(\n this.bodyVisual, this.options.animation\n );\n }\n };\n\n Bullet.prototype.createHighlight = function createHighlight (style) {\n return draw.Path.fromRect(this.box.toRect(), style);\n };\n\n Bullet.prototype.highlightVisual = function highlightVisual () {\n return this.bodyVisual;\n };\n\n Bullet.prototype.highlightVisualArgs = function highlightVisualArgs () {\n return {\n rect: this.box.toRect(),\n visual: this.bodyVisual,\n options: this.options\n };\n };\n\n Bullet.prototype.formatValue = function formatValue (format) {\n return this.owner.formatPointValue(this, format);\n };\n\n Bullet.prototype.pointData = function pointData () {\n return {\n dataItem: this.dataItem,\n category: this.category,\n value: this.value,\n series: this.series\n };\n };\n\n Bullet.prototype.overlapsBox = function overlapsBox (box) {\n return this.box.overlaps(box);\n };\n\n Bullet.prototype.getIndex = function getIndex () {\n return this.categoryIx;\n };\n\n return Bullet;\n}(ChartElement));\n\nBullet.prototype.tooltipAnchor = Bar.prototype.tooltipAnchor;\nBullet.prototype.createFocusHighlight = Bar.prototype.createFocusHighlight;\n\nsetDefaultOptions(Bullet, {\n border: {\n width: 1\n },\n vertical: false,\n opacity: 1,\n target: {\n shape: \"\",\n border: {\n width: 0,\n color: \"green\"\n },\n line: {\n width: 2\n }\n },\n labels: {\n visible: false\n },\n tooltip: {\n format: \"Current: {0}
Target: {1}\"\n },\n notes: {\n label: {}\n },\n accessibility: {\n role: CHART_POINT_ROLE,\n className: CHART_POINT_CLASSNAME,\n ariaRoleDescription: CHART_POINT_ROLE_DESCRIPTION\n }\n});\n\ndeepExtend(Bullet.prototype, PointEventsMixin);\ndeepExtend(Bullet.prototype, NoteMixin);\ndeepExtend(Bullet.prototype, AccessibilityAttributesMixin);\n\nexport default Bullet;","\nimport CategoricalChart from '../categorical-chart';\nimport BarChart from '../bar-chart/bar-chart';\nimport Bullet from './bullet';\nimport ClusterLayout from '../layout/cluster-layout';\nimport { BAR } from '../constants';\n\nimport { MIN_VALUE, MAX_VALUE } from '../../common/constants';\nimport { deepExtend, defined, isArray, isFunction, isObject, setDefaultOptions } from '../../common';\n\nvar BulletChart = (function (CategoricalChart) {\n function BulletChart(plotArea, options) {\n\n wrapData(options);\n\n CategoricalChart.call(this, plotArea, options);\n }\n\n if ( CategoricalChart ) BulletChart.__proto__ = CategoricalChart;\n BulletChart.prototype = Object.create( CategoricalChart && CategoricalChart.prototype );\n BulletChart.prototype.constructor = BulletChart;\n\n BulletChart.prototype.reflowCategories = function reflowCategories (categorySlots) {\n var children = this.children;\n var childrenLength = children.length;\n\n for (var i = 0; i < childrenLength; i++) {\n children[i].reflow(categorySlots[i]);\n }\n };\n\n BulletChart.prototype.plotRange = function plotRange (point) {\n var series = point.series;\n var valueAxis = this.seriesValueAxis(series);\n var axisCrossingValue = this.categoryAxisCrossingValue(valueAxis);\n\n return [ axisCrossingValue, point.value.current || axisCrossingValue ];\n };\n\n BulletChart.prototype.createPoint = function createPoint (data, fields) {\n var categoryIx = fields.categoryIx;\n var series = fields.series;\n var ref = this;\n var options = ref.options;\n var children = ref.children;\n var value = data.valueFields;\n\n var bulletOptions = deepExtend({\n vertical: !options.invertAxes,\n overlay: series.overlay,\n categoryIx: categoryIx,\n invertAxes: options.invertAxes\n }, series);\n\n var color = data.fields.color || series.color;\n bulletOptions = this.evalPointOptions(bulletOptions, value, fields);\n if (isFunction(series.color)) {\n color = bulletOptions.color;\n }\n\n var bullet = new Bullet(value, bulletOptions);\n bullet.color = color;\n\n var cluster = children[categoryIx];\n if (!cluster) {\n cluster = new ClusterLayout({\n vertical: options.invertAxes,\n gap: options.gap,\n spacing: options.spacing,\n rtl: !options.invertAxes && (this.chartService || {}).rtl\n });\n this.append(cluster);\n }\n\n cluster.append(bullet);\n\n return bullet;\n };\n\n BulletChart.prototype.updateRange = function updateRange (value, fields) {\n var current = value.current;\n var target = value.target;\n var axisName = fields.series.axis;\n var axisRange = this.valueAxisRanges[axisName];\n\n if (defined(current) && !isNaN(current) && defined(target && !isNaN(target))) {\n axisRange = this.valueAxisRanges[axisName] =\n axisRange || { min: MAX_VALUE, max: MIN_VALUE };\n\n axisRange.min = Math.min(axisRange.min, current, target);\n axisRange.max = Math.max(axisRange.max, current, target);\n }\n };\n\n BulletChart.prototype.formatPointValue = function formatPointValue (point, format) {\n return this.chartService.format.auto(format, point.value.current, point.value.target);\n };\n\n BulletChart.prototype.pointValue = function pointValue (data) {\n return data.valueFields.current;\n };\n\n BulletChart.prototype.aboveAxis = function aboveAxis (point) {\n var value = point.value.current;\n\n return value > 0;\n };\n\n BulletChart.prototype.createAnimation = function createAnimation () {\n var this$1 = this;\n\n var points = this.points;\n\n this._setAnimationOptions();\n\n for (var idx = 0; idx < points.length; idx++) {\n var point = points[idx];\n point.options.animation = this$1.options.animation;\n point.createAnimation();\n }\n };\n\n return BulletChart;\n}(CategoricalChart));\n\nBulletChart.prototype._setAnimationOptions = BarChart.prototype._setAnimationOptions;\n\nsetDefaultOptions(BulletChart, {\n animation: {\n type: BAR\n }\n});\n\nfunction wrapData(options) {\n var series = options.series;\n\n for (var i = 0; i < series.length; i++) {\n var seriesItem = series[i];\n var data = seriesItem.data;\n if (data && !isArray(data[0]) && !isObject(data[0])) {\n seriesItem.data = [ data ];\n }\n }\n}\n\nexport default BulletChart;\n","import { Color } from '@progress/kendo-drawing';\n\nimport { Class, defined, deepExtend, setDefaultOptions, valueOrDefault, getSpacing, styleValue } from '../../common';\nimport { SHOW_TOOLTIP, HIDE_TOOLTIP } from '../constants';\n\nvar BaseTooltip = (function (Class) {\n function BaseTooltip(chartService, options) {\n Class.call(this);\n\n this.chartService = chartService;\n this.options = deepExtend({}, this.options, options);\n }\n\n if ( Class ) BaseTooltip.__proto__ = Class;\n BaseTooltip.prototype = Object.create( Class && Class.prototype );\n BaseTooltip.prototype.constructor = BaseTooltip;\n\n BaseTooltip.prototype.getStyle = function getStyle (options, point) {\n var background = options.background;\n var border = options.border.color;\n\n if (point) {\n var pointColor = point.color || point.options.color;\n background = valueOrDefault(background, pointColor);\n border = valueOrDefault(border, pointColor);\n }\n\n var padding = getSpacing(options.padding || {}, \"auto\");\n\n return {\n backgroundColor: background,\n borderColor: border,\n font: options.font,\n color: options.color,\n opacity: options.opacity,\n borderWidth: styleValue(options.border.width),\n paddingTop: styleValue(padding.top),\n paddingBottom: styleValue(padding.bottom),\n paddingLeft: styleValue(padding.left),\n paddingRight: styleValue(padding.right)\n };\n };\n\n BaseTooltip.prototype.show = function show (options, tooltipOptions, point) {\n options.format = tooltipOptions.format;\n\n var style = this.getStyle(tooltipOptions, point);\n options.style = style;\n\n var background = new Color(style.backgroundColor);\n if (!defined(tooltipOptions.color) && !background.isDark()) {\n options.className = \"k-chart-tooltip-inverse\";\n }\n\n this.chartService.notify(SHOW_TOOLTIP, options);\n\n this.visible = true;\n };\n\n BaseTooltip.prototype.hide = function hide () {\n if (this.chartService) {\n this.chartService.notify(HIDE_TOOLTIP);\n }\n\n this.visible = false;\n };\n\n BaseTooltip.prototype.destroy = function destroy () {\n delete this.chartService;\n };\n\n return BaseTooltip;\n}(Class));\n\nsetDefaultOptions(BaseTooltip, {\n border: {\n width: 1\n },\n opacity: 1\n});\n\nexport default BaseTooltip;\n","import BaseTooltip from '../tooltip/base-tooltip';\n\nimport { HIDE_TOOLTIP } from '../constants';\nimport { TOP, BOTTOM, LEFT, RIGHT, CENTER, DATE } from '../../common/constants';\nimport { setDefaultOptions } from '../../common';\n\nvar CrosshairTooltip = (function (BaseTooltip) {\n function CrosshairTooltip(chartService, crosshair, options) {\n BaseTooltip.call(this, chartService, options);\n\n this.crosshair = crosshair;\n this.formatService = chartService.format;\n this.initAxisName();\n }\n\n if ( BaseTooltip ) CrosshairTooltip.__proto__ = BaseTooltip;\n CrosshairTooltip.prototype = Object.create( BaseTooltip && BaseTooltip.prototype );\n CrosshairTooltip.prototype.constructor = CrosshairTooltip;\n\n CrosshairTooltip.prototype.initAxisName = function initAxisName () {\n var axis = this.crosshair.axis;\n var plotArea = axis.plotArea;\n var name;\n if (plotArea.categoryAxis) {\n name = axis.getCategory ? \"categoryAxis\" : \"valueAxis\";\n } else {\n name = axis.options.vertical ? \"yAxis\" : \"xAxis\";\n }\n this.axisName = name;\n };\n\n CrosshairTooltip.prototype.showAt = function showAt (point) {\n var ref = this;\n var axis = ref.crosshair.axis;\n var options = ref.options;\n var value = axis[options.stickyMode ? \"getCategory\" : \"getValue\"](point);\n var formattedValue = value;\n\n if (options.format) {\n formattedValue = this.formatService.auto(options.format, value);\n } else if (axis.options.type === DATE) {\n formattedValue = this.formatService.auto(axis.options.labels.dateFormats[axis.options.baseUnit], value);\n }\n\n this.show({\n point: point,\n anchor: this.getAnchor(),\n crosshair: this.crosshair,\n value: formattedValue,\n axisName: this.axisName,\n axisIndex: this.crosshair.axis.axisIndex\n }, this.options);\n };\n\n CrosshairTooltip.prototype.hide = function hide () {\n this.chartService.notify(HIDE_TOOLTIP, {\n crosshair: this.crosshair,\n axisName: this.axisName,\n axisIndex: this.crosshair.axis.axisIndex\n });\n };\n\n CrosshairTooltip.prototype.getAnchor = function getAnchor () {\n var ref = this;\n var crosshair = ref.crosshair;\n var ref_options = ref.options;\n var position = ref_options.position;\n var padding = ref_options.padding;\n var vertical = !crosshair.axis.options.vertical;\n var lineBox = crosshair.line.bbox();\n var horizontalAlign, verticalAlign, point;\n\n if (vertical) {\n horizontalAlign = CENTER;\n if (position === BOTTOM) {\n verticalAlign = TOP;\n point = lineBox.bottomLeft().translate(0, padding);\n } else {\n verticalAlign = BOTTOM;\n point = lineBox.topLeft().translate(0, -padding);\n }\n } else {\n verticalAlign = CENTER;\n if (position === LEFT) {\n horizontalAlign = RIGHT;\n point = lineBox.topLeft().translate(-padding, 0);\n } else {\n horizontalAlign = LEFT;\n point = lineBox.topRight().translate(padding, 0);\n }\n }\n\n return {\n point: point,\n align: {\n horizontal: horizontalAlign,\n vertical: verticalAlign\n }\n };\n };\n\n return CrosshairTooltip;\n}(BaseTooltip));\n\nsetDefaultOptions(CrosshairTooltip, {\n padding: 10\n});\n\nexport default CrosshairTooltip;\n\n","import { drawing as draw, geometry as geom } from '@progress/kendo-drawing';\n\nimport { ChartElement, CategoryAxis } from '../../core';\nimport CrosshairTooltip from './crosshair-tooltip';\n\nimport { BLACK, X, Y } from '../../common/constants';\nimport { deepExtend, setDefaultOptions } from '../../common';\n\nvar Crosshair = (function (ChartElement) {\n function Crosshair(chartService, axis, options) {\n ChartElement.call(this, options);\n\n this.axis = axis;\n this.stickyMode = axis instanceof CategoryAxis;\n\n var tooltipOptions = this.options.tooltip;\n\n if (tooltipOptions.visible) {\n this.tooltip = new CrosshairTooltip(chartService, this,\n deepExtend({}, tooltipOptions, { stickyMode: this.stickyMode })\n );\n }\n }\n\n if ( ChartElement ) Crosshair.__proto__ = ChartElement;\n Crosshair.prototype = Object.create( ChartElement && ChartElement.prototype );\n Crosshair.prototype.constructor = Crosshair;\n\n Crosshair.prototype.showAt = function showAt (point) {\n this.point = point;\n this.moveLine();\n this.line.visible(true);\n\n if (this.tooltip) {\n this.tooltip.showAt(point);\n }\n };\n\n Crosshair.prototype.hide = function hide () {\n this.line.visible(false);\n\n if (this.tooltip) {\n this.tooltip.hide();\n }\n };\n\n Crosshair.prototype.moveLine = function moveLine () {\n var ref = this;\n var axis = ref.axis;\n var point = ref.point;\n var vertical = axis.options.vertical;\n var box = this.getBox();\n var dim = vertical ? Y : X;\n var lineStart = new geom.Point(box.x1, box.y1);\n var lineEnd;\n\n if (vertical) {\n lineEnd = new geom.Point(box.x2, box.y1);\n } else {\n lineEnd = new geom.Point(box.x1, box.y2);\n }\n\n if (point) {\n if (this.stickyMode) {\n var slot = axis.getSlot(axis.pointCategoryIndex(point));\n lineStart[dim] = lineEnd[dim] = slot.center()[dim];\n } else {\n lineStart[dim] = lineEnd[dim] = point[dim];\n }\n }\n\n this.box = box;\n\n this.line.moveTo(lineStart).lineTo(lineEnd);\n };\n\n Crosshair.prototype.getBox = function getBox () {\n var axis = this.axis;\n var axes = axis.pane.axes;\n var length = axes.length;\n var vertical = axis.options.vertical;\n var box = axis.lineBox().clone();\n var dim = vertical ? X : Y;\n var axisLineBox;\n\n for (var i = 0; i < length; i++) {\n var currentAxis = axes[i];\n if (currentAxis.options.vertical !== vertical) {\n if (!axisLineBox) {\n axisLineBox = currentAxis.lineBox().clone();\n } else {\n axisLineBox.wrap(currentAxis.lineBox());\n }\n }\n }\n\n box[dim + 1] = axisLineBox[dim + 1];\n box[dim + 2] = axisLineBox[dim + 2];\n\n return box;\n };\n\n Crosshair.prototype.createVisual = function createVisual () {\n ChartElement.prototype.createVisual.call(this);\n\n var options = this.options;\n this.line = new draw.Path({\n stroke: {\n color: options.color,\n width: options.width,\n opacity: options.opacity,\n dashType: options.dashType\n },\n visible: false\n });\n\n this.moveLine();\n this.visual.append(this.line);\n };\n\n Crosshair.prototype.destroy = function destroy () {\n if (this.tooltip) {\n this.tooltip.destroy();\n }\n\n ChartElement.prototype.destroy.call(this);\n };\n\n return Crosshair;\n}(ChartElement));\n\nsetDefaultOptions(Crosshair, {\n color: BLACK,\n width: 2,\n zIndex: -1,\n tooltip: {\n visible: false\n }\n});\n\nexport default Crosshair;","import { drawing as draw } from '@progress/kendo-drawing';\nimport { alignPathToPixel } from '../common';\n\nimport { ChartElement } from '../core';\n\nvar ChartContainer = (function (ChartElement) {\n function ChartContainer(options, pane) {\n ChartElement.call(this, options);\n this.pane = pane;\n }\n\n if ( ChartElement ) ChartContainer.__proto__ = ChartElement;\n ChartContainer.prototype = Object.create( ChartElement && ChartElement.prototype );\n ChartContainer.prototype.constructor = ChartContainer;\n\n ChartContainer.prototype.shouldClip = function shouldClip () {\n var children = this.children;\n var length = children.length;\n\n for (var i = 0; i < length; i++) {\n if (children[i].options.clip === true) {\n return true;\n }\n }\n return false;\n };\n\n ChartContainer.prototype._clipBox = function _clipBox () {\n return this.pane.chartsBox();\n };\n\n ChartContainer.prototype.createVisual = function createVisual () {\n this.visual = new draw.Group({\n zIndex: 0\n });\n\n if (this.shouldClip()) {\n var clipBox = this.clipBox = this._clipBox();\n var clipRect = clipBox.toRect();\n var clipPath = draw.Path.fromRect(clipRect);\n alignPathToPixel(clipPath);\n\n this.visual.clip(clipPath);\n this.unclipLabels();\n }\n };\n\n ChartContainer.prototype.stackRoot = function stackRoot () {\n return this;\n };\n\n ChartContainer.prototype.unclipLabels = function unclipLabels () {\n var ref = this;\n var charts = ref.children;\n var clipBox = ref.clipBox;\n\n for (var i = 0; i < charts.length; i++) {\n var points = charts[i].points || {};\n var length = points.length;\n\n for (var j = 0; j < length; j++) {\n var point = points[j];\n if (point && point.visible !== false && point.overlapsBox && point.overlapsBox(clipBox)) {\n if (point.unclipElements) {\n point.unclipElements();\n } else {\n var label = point.label;\n var note = point.note;\n\n if (label && label.options.visible) {\n if (label.alignToClipBox) {\n label.alignToClipBox(clipBox);\n }\n label.options.noclip = true;\n }\n\n if (note && note.options.visible) {\n note.options.noclip = true;\n }\n }\n }\n }\n }\n };\n\n ChartContainer.prototype.destroy = function destroy () {\n ChartElement.prototype.destroy.call(this);\n\n delete this.parent;\n };\n\n return ChartContainer;\n}(ChartElement));\n\nChartContainer.prototype.isStackRoot = true;\n\nexport default ChartContainer;","import { ChartElement, BoxElement, Title, Box } from '../core';\nimport { ChartPane } from './api-elements';\nimport ChartContainer from './chart-container';\n\nimport { PANE_RENDER } from './constants';\nimport { TOP, LEFT, X, Y } from '../common/constants';\nimport { append, deepExtend, isObject, last, setDefaultOptions } from '../common';\n\nvar Pane = (function (BoxElement) {\n function Pane(options) {\n BoxElement.call(this, options);\n\n this.id = paneID();\n\n this.createTitle();\n\n this.content = new ChartElement();\n\n this.chartContainer = new ChartContainer({}, this);\n this.append(this.content);\n\n this.axes = [];\n this.charts = [];\n }\n\n if ( BoxElement ) Pane.__proto__ = BoxElement;\n Pane.prototype = Object.create( BoxElement && BoxElement.prototype );\n Pane.prototype.constructor = Pane;\n\n Pane.prototype.createTitle = function createTitle () {\n var titleOptions = this.options.title;\n if (isObject(titleOptions)) {\n titleOptions = deepExtend({}, titleOptions, {\n align: titleOptions.position,\n position: TOP\n });\n }\n\n this.title = Title.buildTitle(titleOptions, Pane.prototype.options.title);\n if (this.title) {\n this.append(this.title);\n }\n };\n\n Pane.prototype.appendAxis = function appendAxis (axis) {\n this.content.append(axis);\n this.axes.push(axis);\n axis.pane = this;\n };\n\n Pane.prototype.appendAxisAt = function appendAxisAt (axis, pos) {\n this.content.append(axis);\n this.axes.splice(pos, 0, axis);\n axis.pane = this;\n };\n\n Pane.prototype.appendChart = function appendChart (chart) {\n if (this.chartContainer.parent !== this.content) {\n this.content.append(this.chartContainer);\n }\n\n this.charts.push(chart);\n this.chartContainer.append(chart);\n chart.pane = this;\n };\n\n Pane.prototype.empty = function empty () {\n var this$1 = this;\n\n var plotArea = this.parent;\n\n if (plotArea) {\n for (var i = 0; i < this.axes.length; i++) {\n plotArea.removeAxis(this$1.axes[i]);\n }\n\n for (var i$1 = 0; i$1 < this.charts.length; i$1++) {\n plotArea.removeChart(this$1.charts[i$1]);\n }\n }\n\n this.axes = [];\n this.charts = [];\n\n this.content.destroy();\n this.content.children = [];\n this.chartContainer.children = [];\n };\n\n Pane.prototype.reflow = function reflow (targetBox) {\n // Content (such as charts) is rendered, but excluded from reflows\n var content;\n if (last(this.children) === this.content) {\n content = this.children.pop();\n }\n\n BoxElement.prototype.reflow.call(this, targetBox);\n\n if (content) {\n this.children.push(content);\n }\n\n if (this.title) {\n this.contentBox.y1 += this.title.box.height();\n }\n };\n\n Pane.prototype.visualStyle = function visualStyle () {\n var style = BoxElement.prototype.visualStyle.call(this);\n style.zIndex = -10;\n\n return style;\n };\n\n Pane.prototype.renderComplete = function renderComplete () {\n if (this.options.visible) {\n this.createGridLines();\n }\n };\n\n Pane.prototype.stackRoot = function stackRoot () {\n return this;\n };\n\n Pane.prototype.clipRoot = function clipRoot () {\n return this;\n };\n\n Pane.prototype.createGridLines = function createGridLines () {\n var axes = this.axes;\n var allAxes = axes.concat(this.parent.axes);\n var vGridLines = [];\n var hGridLines = [];\n\n // TODO\n // Is full combination really necessary?\n for (var i = 0; i < axes.length; i++) {\n var axis = axes[i];\n var vertical = axis.options.vertical;\n var gridLines = vertical ? vGridLines : hGridLines;\n for (var j = 0; j < allAxes.length; j++) {\n if (gridLines.length === 0) {\n var altAxis = allAxes[j];\n if (vertical !== altAxis.options.vertical) {\n append(gridLines, axis.createGridLines(altAxis));\n }\n }\n }\n }\n };\n\n Pane.prototype.refresh = function refresh () {\n this.visual.clear();\n\n this.content.parent = null;\n this.content.createGradient = this.createGradient.bind(this);\n this.content.renderVisual();\n this.content.parent = this;\n\n if (this.title) {\n this.visual.append(this.title.visual);\n }\n\n this.visual.append(this.content.visual);\n\n this.renderComplete();\n this.notifyRender();\n };\n\n Pane.prototype.chartsBox = function chartsBox () {\n var axes = this.axes;\n var length = axes.length;\n var chartsBox = new Box();\n\n for (var idx = 0; idx < length; idx++) {\n var axis = axes[idx];\n var axisValueField = axis.options.vertical ? Y : X;\n var lineBox = axis.lineBox();\n chartsBox[axisValueField + 1] = lineBox[axisValueField + 1];\n chartsBox[axisValueField + 2] = lineBox[axisValueField + 2];\n }\n\n if (chartsBox.x2 === 0) {\n var allAxes = this.parent.axes;\n var length$1 = allAxes.length;\n\n for (var idx$1 = 0; idx$1 < length$1; idx$1++) {\n var axis$1 = allAxes[idx$1];\n if (!axis$1.options.vertical) {\n var lineBox$1 = axis$1.lineBox();\n chartsBox.x1 = lineBox$1.x1;\n chartsBox.x2 = lineBox$1.x2;\n }\n }\n }\n return chartsBox;\n };\n\n Pane.prototype.clipBox = function clipBox () {\n return this.chartContainer.clipBox;\n };\n\n Pane.prototype.notifyRender = function notifyRender () {\n var service = this.getService();\n if (service) {\n service.notify(PANE_RENDER, {\n pane: new ChartPane(this),\n index: this.paneIndex,\n name: this.options.name\n });\n }\n };\n\n return Pane;\n}(BoxElement));\n\nvar ID = 1;\n\nfunction paneID() {\n return \"pane\" + ID++;\n}\n\nPane.prototype.isStackRoot = true;\n\nsetDefaultOptions(Pane, {\n zIndex: -1,\n shrinkToFit: true,\n title: {\n align: LEFT\n },\n visible: true\n});\n\nexport default Pane;\n","import { drawing as draw } from '@progress/kendo-drawing';\n\nimport { ChartElement, Box } from '../../core';\nimport Crosshair from '../crosshair/crosshair';\nimport Pane from '../pane';\nimport { hasValue } from '../utils';\nimport SeriesBinder from '../series-binder';\n\nimport { WHITE, BLACK, X, Y, COORD_PRECISION, TOP, BOTTOM, LEFT, RIGHT, START, END, INHERIT } from '../../common/constants';\nimport { append, deepExtend, defined, getSpacing, getTemplate, inArray, isFunction, isString,\n limitValue, round, setDefaultOptions, last, cycleIndex } from '../../common';\nimport { TRENDLINE_SERIES } from '../constants';\n\nvar PlotAreaBase = (function (ChartElement) {\n function PlotAreaBase(series, options, chartService) {\n ChartElement.call(this, options);\n\n this.initFields(series, options);\n this.series = series;\n this.initSeries();\n this.charts = [];\n this.options.legend = this.options.legend || {};\n this.options.legend.data = [];\n this.axes = [];\n this.crosshairs = [];\n this.chartService = chartService;\n this.originalOptions = options;\n this.originalSeries = series;\n this._bindCache = new WeakMap();\n\n this.createPanes();\n this.render();\n this.createCrosshairs();\n }\n\n if ( ChartElement ) PlotAreaBase.__proto__ = ChartElement;\n PlotAreaBase.prototype = Object.create( ChartElement && ChartElement.prototype );\n PlotAreaBase.prototype.constructor = PlotAreaBase;\n\n PlotAreaBase.prototype.initFields = function initFields () { };\n\n PlotAreaBase.prototype.initSeries = function initSeries () {\n var series = this.series;\n\n for (var i = 0; i < series.length; i++) {\n series[i].index = i;\n }\n };\n\n PlotAreaBase.prototype.bindPoint = function bindPoint (series, pointIx, item) {\n var cached = this._bindCache.get(series);\n if (!cached) {\n cached = [];\n this._bindCache.set(series, cached);\n }\n\n var data = cached[pointIx];\n if (!data) {\n data = cached[pointIx] = SeriesBinder.current.bindPoint(series, pointIx, item);\n }\n\n return data;\n };\n\n PlotAreaBase.prototype.createPanes = function createPanes () {\n var this$1 = this;\n\n var titleOptions = this.options.title || {};\n var paneDefaults = this.options.paneDefaults;\n var paneOptions = this.options.panes || [];\n var panesLength = Math.max(paneOptions.length, 1);\n var panes = [];\n\n var defaults = deepExtend({\n title: {\n color: titleOptions.color\n }\n }, paneDefaults);\n\n for (var i = 0; i < panesLength; i++) {\n var options = deepExtend({}, defaults, paneOptions[i]);\n if (isString(options.title)) {\n options.title = deepExtend({ text: options.title }, defaults.title);\n }\n\n var currentPane = new Pane(options);\n currentPane.paneIndex = i;\n\n panes.push(currentPane);\n this$1.append(currentPane);\n }\n\n this.panes = panes;\n };\n\n PlotAreaBase.prototype.crosshairOptions = function crosshairOptions (axis) {\n return axis.options.crosshair;\n };\n\n PlotAreaBase.prototype.createCrosshairs = function createCrosshairs (panes) {\n var this$1 = this;\n if ( panes === void 0 ) panes = this.panes;\n\n for (var i = 0; i < panes.length; i++) {\n var pane = panes[i];\n for (var j = 0; j < pane.axes.length; j++) {\n var axis = pane.axes[j];\n var options = this$1.crosshairOptions(axis);\n if (options && options.visible) {\n var currentCrosshair = new Crosshair(this$1.chartService, axis, options);\n\n this$1.crosshairs.push(currentCrosshair);\n pane.content.append(currentCrosshair);\n }\n }\n }\n };\n\n PlotAreaBase.prototype.removeCrosshairs = function removeCrosshairs (pane) {\n var crosshairs = this.crosshairs;\n var axes = pane.axes;\n\n for (var i = crosshairs.length - 1; i >= 0; i--) {\n for (var j = 0; j < axes.length; j++) {\n if (crosshairs[i].axis === axes[j]) {\n crosshairs.splice(i, 1);\n break;\n }\n }\n }\n };\n\n PlotAreaBase.prototype.hideCrosshairs = function hideCrosshairs () {\n var crosshairs = this.crosshairs;\n for (var idx = 0; idx < crosshairs.length; idx++) {\n crosshairs[idx].hide();\n }\n };\n\n PlotAreaBase.prototype.findPane = function findPane (name) {\n var panes = this.panes;\n var matchingPane;\n\n for (var i = 0; i < panes.length; i++) {\n if (panes[i].options.name === name) {\n matchingPane = panes[i];\n break;\n }\n }\n\n return matchingPane || panes[0];\n };\n\n PlotAreaBase.prototype.findPointPane = function findPointPane (point) {\n var panes = this.panes;\n var matchingPane;\n\n for (var i = 0; i < panes.length; i++) {\n if (panes[i].box.containsPoint(point)) {\n matchingPane = panes[i];\n break;\n }\n }\n\n return matchingPane;\n };\n\n PlotAreaBase.prototype.appendAxis = function appendAxis (axis) {\n var pane = this.findPane(axis.options.pane);\n\n pane.appendAxis(axis);\n this.axes.push(axis);\n axis.plotArea = this;\n };\n\n PlotAreaBase.prototype.removeAxis = function removeAxis (axisToRemove) {\n var this$1 = this;\n\n var filteredAxes = [];\n\n for (var i = 0; i < this.axes.length; i++) {\n var axis = this$1.axes[i];\n if (axisToRemove !== axis) {\n filteredAxes.push(axis);\n } else {\n axis.destroy();\n }\n }\n\n this.axes = filteredAxes;\n };\n\n PlotAreaBase.prototype.appendChart = function appendChart (chart, pane) {\n this.charts.push(chart);\n if (pane) {\n pane.appendChart(chart);\n } else {\n this.append(chart);\n }\n };\n\n PlotAreaBase.prototype.removeChart = function removeChart (chartToRemove) {\n var this$1 = this;\n\n var filteredCharts = [];\n\n for (var i = 0; i < this.charts.length; i++) {\n var chart = this$1.charts[i];\n if (chart !== chartToRemove) {\n filteredCharts.push(chart);\n } else {\n chart.destroy();\n }\n }\n\n this.charts = filteredCharts;\n };\n\n PlotAreaBase.prototype.addToLegend = function addToLegend (series) {\n var count = series.length;\n var legend = this.options.legend;\n var labels = legend.labels || {};\n var inactiveItems = legend.inactiveItems || {};\n var inactiveItemsLabels = inactiveItems.labels || {};\n var data = [];\n\n for (var i = 0; i < count; i++) {\n var currentSeries = series[i];\n var seriesVisible = currentSeries.visible !== false;\n if (currentSeries.visibleInLegend === false) {\n continue;\n }\n\n var text = currentSeries.name;\n var labelTemplate = seriesVisible ? getTemplate(labels) : getTemplate(inactiveItemsLabels) || getTemplate(labels);\n if (labelTemplate) {\n text = labelTemplate({\n text: hasValue(text) ? text : \"\",\n series: currentSeries\n });\n }\n\n var defaults = currentSeries._defaults;\n var color = currentSeries.color;\n if (isFunction(color) && defaults) {\n color = defaults.color;\n }\n\n var itemLabelOptions = (void 0), markerColor = (void 0);\n if (seriesVisible) {\n itemLabelOptions = {};\n markerColor = color;\n } else {\n itemLabelOptions = {\n color: inactiveItemsLabels.color,\n font: inactiveItemsLabels.font\n };\n markerColor = inactiveItems.markers.color;\n }\n\n if (hasValue(text) && text !== \"\") {\n data.push({\n text: text,\n labels: itemLabelOptions,\n markerColor: markerColor,\n series: currentSeries,\n active: seriesVisible\n });\n }\n }\n\n append(legend.data, data);\n };\n\n PlotAreaBase.prototype.groupAxes = function groupAxes (panes) {\n var xAxes = [];\n var yAxes = [];\n\n for (var paneIx = 0; paneIx < panes.length; paneIx++) {\n var paneAxes = panes[paneIx].axes;\n for (var axisIx = 0; axisIx < paneAxes.length; axisIx++) {\n var axis = paneAxes[axisIx];\n if (axis.options.vertical) {\n yAxes.push(axis);\n } else {\n xAxes.push(axis);\n }\n }\n }\n\n return { x: xAxes, y: yAxes, any: xAxes.concat(yAxes) };\n };\n\n PlotAreaBase.prototype.groupSeriesByPane = function groupSeriesByPane () {\n var this$1 = this;\n\n var series = this.series;\n var seriesByPane = {};\n\n for (var i = 0; i < series.length; i++) {\n var currentSeries = series[i];\n var pane = this$1.seriesPaneName(currentSeries);\n\n if (seriesByPane[pane]) {\n seriesByPane[pane].push(currentSeries);\n } else {\n seriesByPane[pane] = [ currentSeries ];\n }\n }\n\n return seriesByPane;\n };\n\n PlotAreaBase.prototype.filterVisibleSeries = function filterVisibleSeries (series) {\n var result = [];\n\n for (var i = 0; i < series.length; i++) {\n var currentSeries = series[i];\n if (currentSeries.visible !== false) {\n result.push(currentSeries);\n }\n }\n\n return result;\n };\n\n PlotAreaBase.prototype.reflow = function reflow (targetBox) {\n var options = this.options.plotArea;\n var panes = this.panes;\n var margin = getSpacing(options.margin);\n\n this.box = targetBox.clone().unpad(margin);\n this.reflowPanes();\n\n this.detachLabels();\n this.reflowAxes(panes);\n this.reflowCharts(panes);\n };\n\n PlotAreaBase.prototype.redraw = function redraw (panes) {\n var this$1 = this;\n\n var panesArray = [].concat(panes);\n this.initSeries();\n\n //prevents leak during partial redraws. the cached gradients observers retain reference to the destroyed elements.\n var root = this.getRoot();\n if (root) {\n root.cleanGradients();\n }\n\n for (var i = 0; i < panesArray.length; i++) {\n this$1.removeCrosshairs(panesArray[i]);\n panesArray[i].empty();\n }\n\n this._bindCache = new WeakMap();\n\n this.render(panesArray);\n this.detachLabels();\n this.reflowAxes(this.panes);\n this.reflowCharts(panesArray);\n\n this.createCrosshairs(panesArray);\n\n for (var i$1 = 0; i$1 < panesArray.length; i$1++) {\n panesArray[i$1].refresh();\n }\n };\n\n PlotAreaBase.prototype.axisCrossingValues = function axisCrossingValues (axis, crossingAxes) {\n var options = axis.options;\n var crossingValues = [].concat(\n options.axisCrossingValues || options.axisCrossingValue\n );\n var valuesToAdd = crossingAxes.length - crossingValues.length;\n var defaultValue = crossingValues[0] || 0;\n\n for (var i = 0; i < valuesToAdd; i++) {\n crossingValues.push(defaultValue);\n }\n\n return crossingValues;\n };\n\n PlotAreaBase.prototype.alignAxisTo = function alignAxisTo (axis, targetAxis, crossingValue, targetCrossingValue) {\n var slot = axis.getSlot(crossingValue, crossingValue, true);\n var slotEdge = axis.options.reverse ? 2 : 1;\n var targetSlot = targetAxis.getSlot(targetCrossingValue, targetCrossingValue, true);\n var targetEdge = targetAxis.options.reverse ? 2 : 1;\n var axisBox = axis.box.translate(\n targetSlot[X + targetEdge] - slot[X + slotEdge],\n targetSlot[Y + targetEdge] - slot[Y + slotEdge]\n );\n\n if (axis.pane !== targetAxis.pane) {\n axisBox.translate(0, axis.pane.box.y1 - targetAxis.pane.box.y1);\n }\n\n axis.reflow(axisBox);\n };\n\n PlotAreaBase.prototype.alignAxes = function alignAxes (xAxes, yAxes) {\n var this$1 = this;\n\n var xAnchor = xAxes[0];\n var yAnchor = yAxes[0];\n var xAnchorCrossings = this.axisCrossingValues(xAnchor, yAxes);\n var yAnchorCrossings = this.axisCrossingValues(yAnchor, xAxes);\n var leftAnchors = {};\n var rightAnchors = {};\n var topAnchors = {};\n var bottomAnchors = {};\n\n for (var i = 0; i < yAxes.length; i++) {\n var axis = yAxes[i];\n var pane = axis.pane;\n var paneId = pane.id;\n var visible = axis.options.visible !== false;\n\n // Locate pane anchor, if any, and use its axisCrossingValues\n var anchor = paneAnchor(xAxes, pane) || xAnchor;\n var anchorCrossings = xAnchorCrossings;\n\n if (anchor !== xAnchor) {\n anchorCrossings = this$1.axisCrossingValues(anchor, yAxes);\n }\n\n this$1.alignAxisTo(axis, anchor, yAnchorCrossings[i], anchorCrossings[i]);\n\n if (axis.options._overlap) {\n continue;\n }\n\n if (round(axis.lineBox().x1) === round(anchor.lineBox().x1)) {\n // Push the axis to the left the previous y-axis so they don't overlap\n if (leftAnchors[paneId]) {\n axis.reflow(axis.box\n .alignTo(leftAnchors[paneId].box, LEFT)\n .translate(-axis.options.margin, 0)\n );\n }\n\n if (visible) {\n leftAnchors[paneId] = axis;\n }\n }\n\n if (round(axis.lineBox().x2) === round(anchor.lineBox().x2)) {\n // Flip the labels on the right if we're at the right end of the pane\n if (!axis._mirrored) {\n axis.options.labels.mirror = !axis.options.labels.mirror;\n axis._mirrored = true;\n }\n\n this$1.alignAxisTo(axis, anchor, yAnchorCrossings[i], anchorCrossings[i]);\n\n // Push the axis to the right the previous y-axis so they don't overlap\n if (rightAnchors[paneId]) {\n axis.reflow(axis.box\n .alignTo(rightAnchors[paneId].box, RIGHT)\n .translate(axis.options.margin, 0)\n );\n }\n\n if (visible) {\n rightAnchors[paneId] = axis;\n }\n }\n\n // Locate pane anchor, if any, and align the axis to it\n var paneYAnchor = paneAnchor(yAxes, pane) || yAnchor;\n if (paneYAnchor !== axis) {\n axis.alignTo(paneYAnchor);\n axis.reflow(axis.box);\n }\n }\n\n for (var i$1 = 0; i$1 < xAxes.length; i$1++) {\n var axis$1 = xAxes[i$1];\n var pane$1 = axis$1.pane;\n var paneId$1 = pane$1.id;\n var visible$1 = axis$1.options.visible !== false;\n\n // Locate pane anchor and use its axisCrossingValues\n var anchor$1 = paneAnchor(yAxes, pane$1) || yAnchor;\n var anchorCrossings$1 = yAnchorCrossings;\n if (anchor$1 !== yAnchor) {\n anchorCrossings$1 = this$1.axisCrossingValues(anchor$1, xAxes);\n }\n\n this$1.alignAxisTo(axis$1, anchor$1, xAnchorCrossings[i$1], anchorCrossings$1[i$1]);\n\n if (axis$1.options._overlap) {\n continue;\n }\n\n if (round(axis$1.lineBox().y1) === round(anchor$1.lineBox().y1)) {\n // Flip the labels on top if we're at the top of the pane\n if (!axis$1._mirrored) {\n axis$1.options.labels.mirror = !axis$1.options.labels.mirror;\n axis$1._mirrored = true;\n }\n this$1.alignAxisTo(axis$1, anchor$1, xAnchorCrossings[i$1], anchorCrossings$1[i$1]);\n\n // Push the axis above the previous x-axis so they don't overlap\n if (topAnchors[paneId$1]) {\n axis$1.reflow(axis$1.box\n .alignTo(topAnchors[paneId$1].box, TOP)\n .translate(0, -axis$1.options.margin)\n );\n }\n\n if (visible$1) {\n topAnchors[paneId$1] = axis$1;\n }\n }\n\n if (round(axis$1.lineBox().y2, COORD_PRECISION) === round(anchor$1.lineBox().y2, COORD_PRECISION)) {\n // Push the axis below the previous x-axis so they don't overlap\n if (bottomAnchors[paneId$1]) {\n axis$1.reflow(axis$1.box\n .alignTo(bottomAnchors[paneId$1].box, BOTTOM)\n .translate(0, axis$1.options.margin)\n );\n }\n\n if (visible$1) {\n bottomAnchors[paneId$1] = axis$1;\n }\n }\n\n if (i$1 !== 0) {\n axis$1.alignTo(xAnchor);\n axis$1.reflow(axis$1.box);\n }\n }\n };\n\n PlotAreaBase.prototype.shrinkAxisWidth = function shrinkAxisWidth (panes) {\n var axes = this.groupAxes(panes).any;\n var axisBox = axisGroupBox(axes);\n var overflowX = 0;\n\n for (var i = 0; i < panes.length; i++) {\n var currentPane = panes[i];\n\n if (currentPane.axes.length > 0) {\n overflowX = Math.max(\n overflowX,\n axisBox.width() - currentPane.contentBox.width()\n );\n }\n }\n\n if (overflowX !== 0) {\n for (var i$1 = 0; i$1 < axes.length; i$1++) {\n var currentAxis = axes[i$1];\n\n if (!currentAxis.options.vertical) {\n currentAxis.reflow(currentAxis.box.shrink(overflowX, 0));\n }\n }\n }\n };\n\n PlotAreaBase.prototype.shrinkAxisHeight = function shrinkAxisHeight (panes) {\n var shrinked;\n\n for (var i = 0; i < panes.length; i++) {\n var currentPane = panes[i];\n var axes = currentPane.axes;\n var overflowY = Math.max(0, axisGroupBox(axes).height() - currentPane.contentBox.height());\n\n if (overflowY !== 0) {\n for (var j = 0; j < axes.length; j++) {\n var currentAxis = axes[j];\n\n if (currentAxis.options.vertical) {\n currentAxis.reflow(\n currentAxis.box.shrink(0, overflowY)\n );\n }\n }\n shrinked = true;\n }\n }\n\n return shrinked;\n };\n\n PlotAreaBase.prototype.fitAxes = function fitAxes (panes) {\n var axes = this.groupAxes(panes).any;\n var offsetX = 0;\n\n for (var i = 0; i < panes.length; i++) {\n var currentPane = panes[i];\n var paneAxes = currentPane.axes;\n var paneBox = currentPane.contentBox;\n\n if (paneAxes.length > 0) {\n var axisBox = axisGroupBox(paneAxes);\n // OffsetY is calculated and applied per pane\n var offsetY = Math.max(paneBox.y1 - axisBox.y1, paneBox.y2 - axisBox.y2);\n\n // OffsetX is calculated and applied globally\n offsetX = Math.max(offsetX, paneBox.x1 - axisBox.x1);\n\n\n for (var j = 0; j < paneAxes.length; j++) {\n var currentAxis = paneAxes[j];\n\n currentAxis.reflow(\n currentAxis.box.translate(0, offsetY)\n );\n }\n }\n }\n\n for (var i$1 = 0; i$1 < axes.length; i$1++) {\n var currentAxis$1 = axes[i$1];\n\n currentAxis$1.reflow(\n currentAxis$1.box.translate(offsetX, 0)\n );\n }\n };\n\n PlotAreaBase.prototype.reflowAxes = function reflowAxes (panes) {\n var this$1 = this;\n\n var axes = this.groupAxes(panes);\n\n for (var i = 0; i < panes.length; i++) {\n this$1.reflowPaneAxes(panes[i]);\n }\n\n if (axes.x.length > 0 && axes.y.length > 0) {\n this.alignAxes(axes.x, axes.y);\n this.shrinkAxisWidth(panes);\n\n this.autoRotateAxisLabels(axes);\n\n this.alignAxes(axes.x, axes.y);\n if (this.shrinkAxisWidth(panes)) {\n this.alignAxes(axes.x, axes.y);\n }\n\n this.shrinkAxisHeight(panes);\n this.alignAxes(axes.x, axes.y);\n\n if (this.shrinkAxisHeight(panes)) {\n this.alignAxes(axes.x, axes.y);\n }\n\n this.fitAxes(panes);\n }\n };\n\n PlotAreaBase.prototype.autoRotateAxisLabels = function autoRotateAxisLabels (groupedAxes) {\n var this$1 = this;\n\n var ref = this;\n var panes = ref.panes;\n var axes = allPaneAxes(panes);\n var rotated;\n\n for (var idx = 0; idx < axes.length; idx++) {\n var axis = axes[idx];\n if (axis.autoRotateLabels()) {\n rotated = true;\n }\n }\n\n if (rotated) {\n for (var idx$1 = 0; idx$1 < panes.length; idx$1++) {\n this$1.reflowPaneAxes(panes[idx$1]);\n }\n\n if (groupedAxes.x.length > 0 && groupedAxes.y.length > 0) {\n this.alignAxes(groupedAxes.x, groupedAxes.y);\n this.shrinkAxisWidth(panes);\n }\n }\n };\n\n PlotAreaBase.prototype.reflowPaneAxes = function reflowPaneAxes (pane) {\n var axes = pane.axes;\n var length = axes.length;\n\n if (length > 0) {\n for (var i = 0; i < length; i++) {\n axes[i].reflow(pane.contentBox);\n }\n }\n };\n\n PlotAreaBase.prototype.reflowCharts = function reflowCharts (panes) {\n var charts = this.charts;\n var count = charts.length;\n var box = this.box;\n\n for (var i = 0; i < count; i++) {\n var chartPane = charts[i].pane;\n if (!chartPane || inArray(chartPane, panes)) {\n charts[i].reflow(box);\n }\n }\n };\n\n PlotAreaBase.prototype.reflowPanes = function reflowPanes () {\n var ref = this;\n var box = ref.box;\n var panes = ref.panes;\n var panesLength = panes.length;\n var remainingHeight = box.height();\n var autoHeightPanes = 0;\n var top = box.y1;\n\n for (var i = 0; i < panesLength; i++) {\n var currentPane = panes[i];\n var height = currentPane.options.height;\n\n currentPane.options.width = box.width();\n\n if (!currentPane.options.height) {\n autoHeightPanes++;\n } else {\n if (height.indexOf && height.indexOf(\"%\")) {\n var percents = parseInt(height, 10) / 100;\n currentPane.options.height = percents * box.height();\n }\n\n currentPane.reflow(box.clone());\n\n remainingHeight -= currentPane.options.height;\n }\n }\n\n for (var i$1 = 0; i$1 < panesLength; i$1++) {\n var currentPane$1 = panes[i$1];\n\n if (!currentPane$1.options.height) {\n currentPane$1.options.height = remainingHeight / autoHeightPanes;\n }\n }\n\n for (var i$2 = 0; i$2 < panesLength; i$2++) {\n var currentPane$2 = panes[i$2];\n var paneBox = box\n .clone()\n .move(box.x1, top);\n\n currentPane$2.reflow(paneBox);\n\n top += currentPane$2.options.height;\n }\n };\n\n PlotAreaBase.prototype.backgroundBox = function backgroundBox () {\n var axes = this.axes;\n var axesCount = axes.length;\n var box;\n\n for (var i = 0; i < axesCount; i++) {\n var axisA = axes[i];\n\n for (var j = 0; j < axesCount; j++) {\n var axisB = axes[j];\n\n if (axisA.options.vertical !== axisB.options.vertical) {\n var lineBox = axisA.lineBox().clone().wrap(axisB.lineBox());\n\n if (!box) {\n box = lineBox;\n } else {\n box = box.wrap(lineBox);\n }\n }\n }\n }\n\n return box || this.box;\n };\n\n PlotAreaBase.prototype.chartsBoxes = function chartsBoxes () {\n var panes = this.panes;\n var boxes = [];\n\n for (var idx = 0; idx < panes.length; idx++) {\n boxes.push(panes[idx].chartsBox());\n }\n\n return boxes;\n };\n\n PlotAreaBase.prototype.addBackgroundPaths = function addBackgroundPaths (multipath) {\n var boxes = this.chartsBoxes();\n for (var idx = 0; idx < boxes.length; idx++) {\n multipath.paths.push(draw.Path.fromRect(boxes[idx].toRect()));\n }\n };\n\n PlotAreaBase.prototype.backgroundContainsPoint = function backgroundContainsPoint (point) {\n var boxes = this.chartsBoxes();\n for (var idx = 0; idx < boxes.length; idx++) {\n if (boxes[idx].containsPoint(point)) {\n return true;\n }\n }\n };\n\n PlotAreaBase.prototype.createVisual = function createVisual () {\n ChartElement.prototype.createVisual.call(this);\n\n var options = this.options.plotArea;\n var opacity = options.opacity;\n var background = options.background;\n var border = options.border; if ( border === void 0 ) border = {};\n if (isTransparent(background)) {\n background = WHITE;\n opacity = 0;\n }\n\n var bg = this._bgVisual = new draw.MultiPath({\n fill: {\n color: background,\n opacity: opacity\n },\n stroke: {\n color: border.width ? border.color : \"\",\n width: border.width,\n dashType: border.dashType\n },\n zIndex: -1\n });\n\n this.addBackgroundPaths(bg);\n\n this.appendVisual(bg);\n };\n\n PlotAreaBase.prototype.pointsByCategoryIndex = function pointsByCategoryIndex (categoryIndex) {\n var charts = this.charts;\n var result = [];\n\n if (categoryIndex !== null) {\n for (var i = 0; i < charts.length; i++) {\n var chart = charts[i];\n\n if (chart.pane.options.name === \"_navigator\") {\n continue;\n }\n\n var points = charts[i].categoryPoints[categoryIndex];\n if (points && points.length) {\n for (var j = 0; j < points.length; j++) {\n var point = points[j];\n if (point && defined(point.value) && point.value !== null) {\n result.push(point);\n }\n }\n }\n }\n }\n\n return result;\n };\n\n PlotAreaBase.prototype.pointsBySeriesIndex = function pointsBySeriesIndex (seriesIndex) {\n return this.filterPoints(function(point) {\n return point.series.index === seriesIndex;\n });\n };\n\n PlotAreaBase.prototype.pointsByPointIndex = function pointsByPointIndex (pointIndex) {\n return this.filterPoints(function(point) {\n return point.getIndex() === pointIndex;\n });\n };\n\n PlotAreaBase.prototype.pointsBySeriesName = function pointsBySeriesName (name) {\n return this.filterPoints(function(point) {\n return point.series.name === name;\n });\n };\n\n PlotAreaBase.prototype.filterPoints = function filterPoints (callback) {\n var charts = this.charts;\n var result = [];\n\n for (var i = 0; i < charts.length; i++) {\n var chart = charts[i];\n var points = chart.points;\n for (var j = 0; j < points.length; j++) {\n var point = points[j];\n if (point && point.visible !== false && callback(point)) {\n result.push(point);\n }\n }\n }\n\n return result;\n };\n\n PlotAreaBase.prototype.findPoint = function findPoint (callback) {\n var charts = this.charts;\n\n for (var i = 0; i < charts.length; i++) {\n var chart = charts[i];\n var points = chart.points;\n for (var j = 0; j < points.length; j++) {\n var point = points[j];\n if (point && point.visible !== false && callback(point)) {\n return point;\n }\n }\n }\n };\n\n PlotAreaBase.prototype.paneByPoint = function paneByPoint (point) {\n var panes = this.panes;\n\n for (var i = 0; i < panes.length; i++) {\n var pane = panes[i];\n if (pane.box.containsPoint(point)) {\n return pane;\n }\n }\n };\n\n PlotAreaBase.prototype.detachLabels = function detachLabels () {\n var axes = this.groupAxes(this.panes);\n var xAxes = axes.x;\n var yAxes = axes.y;\n\n this.detachAxisGroupLabels(yAxes, xAxes);\n this.detachAxisGroupLabels(xAxes, yAxes);\n };\n\n PlotAreaBase.prototype.detachAxisGroupLabels = function detachAxisGroupLabels (axes, crossingAxes) {\n var this$1 = this;\n\n var labelAxisCount = 0;\n\n for (var i = 0; i < axes.length; i++) {\n var axis = axes[i];\n var pane = axis.pane;\n var anchor = paneAnchor(crossingAxes, pane) || crossingAxes[0];\n var axisIndex = i + labelAxisCount;\n var labelAxis = this$1.createLabelAxis(axis, axisIndex, anchor);\n\n if (labelAxis) {\n labelAxisCount++;\n\n var pos = pane.axes.indexOf(axis) + labelAxisCount;\n pane.appendAxisAt(labelAxis, pos);\n }\n }\n };\n\n PlotAreaBase.prototype.createLabelAxis = function createLabelAxis (axis, axisIndex, anchor) {\n var labelOptions = axis.options.labels;\n var position = labelOptions.position;\n var onAxis = position !== END && position !== START;\n var visible = labelOptions.visible;\n\n if (onAxis || visible === false) {\n return null;\n }\n\n var allAxes = this.groupAxes(this.panes);\n var crossingAxes = anchor.options.vertical ? allAxes.x : allAxes.y;\n var anchorCrossings = this.axisCrossingValues(anchor, crossingAxes);\n var end = position === END;\n var range = anchor.range();\n var edge = end ? range.max : range.min;\n var crossingValue = limitValue(anchorCrossings[axisIndex], range.min, range.max);\n\n if (crossingValue - edge === 0) {\n return null;\n }\n\n anchorCrossings.splice(axisIndex + 1, 0, edge);\n anchor.options.axisCrossingValues = anchorCrossings;\n\n var labelAxis = axis.clone();\n axis.clear();\n\n labelAxis.options.name = undefined;\n labelAxis.options.line.visible = false;\n\n labelAxis.options.crosshair = undefined;\n labelAxis.options.notes = undefined;\n labelAxis.options.plotBands = undefined;\n\n return labelAxis;\n };\n\n PlotAreaBase.prototype.isTrendline = function isTrendline (series) {\n return series && inArray(series.type, TRENDLINE_SERIES);\n };\n\n PlotAreaBase.prototype.trendlineFactory = function trendlineFactory () { /* abstract */ };\n\n PlotAreaBase.prototype.createTrendlineSeries = function createTrendlineSeries () {\n var this$1 = this;\n\n var modifiedSeries = [];\n\n this.series = this.series.map(function (series) {\n if (!this$1.isTrendline(series)) {\n return series;\n }\n\n var forSeries = this$1.seriesByName(series.for);\n if (!forSeries) {\n throw new Error('Invalid Configuration: Unable to locate linked series ' +\n \"\\\"\" + (series.for) + \"\\\" for trendline \\\"\" + (series.name) + \"\\\".\");\n }\n\n var valueFields = SeriesBinder.current.valueFields(forSeries);\n var field = last(valueFields); // Use the last field for multi-field series\n\n var trendlineSeries = this$1.trendlineFactory(Object.assign({}, {field: field}, series), forSeries);\n if (trendlineSeries) {\n if (forSeries.visible === false) {\n trendlineSeries.visible = false;\n }\n\n if (trendlineSeries.color === INHERIT) {\n trendlineSeries.color = forSeries.color;\n }\n\n modifiedSeries.push(trendlineSeries);\n }\n\n return trendlineSeries;\n }).filter(function (series) { return series !== null; });\n\n return modifiedSeries;\n };\n\n PlotAreaBase.prototype.seriesByName = function seriesByName (name) {\n return this.series.find(function (series) { return series.name === name; });\n };\n\n PlotAreaBase.prototype.getFirstPoint = function getFirstPoint () {\n return this.pointsBySeriesIndex(0)[0];\n };\n\n PlotAreaBase.prototype.getPointBelow = function getPointBelow (point) {\n return this._getNextPoint(point, this._pointsByVertical, 1);\n };\n\n PlotAreaBase.prototype.getPointAbove = function getPointAbove (point) {\n return this._getNextPoint(point, this._pointsByVertical, -1);\n };\n\n PlotAreaBase.prototype.getPointToTheRight = function getPointToTheRight (point) {\n return this._getNextPoint(point, this._pointsByHorizontal, 1);\n };\n\n PlotAreaBase.prototype.getPointToTheLeft = function getPointToTheLeft (point) {\n return this._getNextPoint(point, this._pointsByHorizontal, -1);\n };\n\n PlotAreaBase.prototype._getNextPoint = function _getNextPoint (point, getPointsFunc, increment) {\n var this$1 = this;\n\n var points = getPointsFunc.call(this, point);\n var pointIndex = points.indexOf(point);\n var nextIndex = pointIndex + increment;\n var loopPoints = function (direction) {\n // loop over to last non-empty collection\n var result;\n var offset = 0;\n do {\n offset += direction;\n result = getPointsFunc.call(this$1, point, offset);\n } while (result.length === 0);\n\n return result;\n };\n\n if (nextIndex < 0) {\n points = loopPoints(-1);\n\n return points.at(-1);\n } else if (nextIndex >= points.length) {\n points = loopPoints(1);\n\n return points.at(0);\n }\n\n return points[nextIndex];\n };\n\n PlotAreaBase.prototype._pointsByVertical = function _pointsByVertical (basePoint) {\n return this.pointsByPointIndex(basePoint.getIndex());\n };\n\n PlotAreaBase.prototype._pointsByHorizontal = function _pointsByHorizontal (basePoint, offset) {\n if ( offset === void 0 ) offset = 0;\n\n var index = cycleIndex(basePoint.series.index + offset, this.series.length);\n return this.pointsBySeriesIndex(index);\n };\n\n return PlotAreaBase;\n}(ChartElement));\n\nfunction isSingleAxis(axis) {\n return !axis.pane.axes.some(function (a) { return a.options.vertical === axis.options.vertical && a !== axis && a.options.visible !== false; }\n );\n}\n\nfunction axisGroupBox(axes) {\n var length = axes.length;\n var box;\n\n for (var i = 0; i < length; i++) {\n var axis = axes[i];\n var visible = axis.options.visible !== false;\n if (visible || isSingleAxis(axis)) {\n var axisBox = visible ? axis.contentBox() : axis.lineBox();\n\n if (!box) {\n box = axisBox.clone();\n } else {\n box.wrap(axisBox);\n }\n }\n }\n\n return box || new Box();\n}\n\nfunction paneAnchor(axes, pane) {\n for (var i = 0; i < axes.length; i++) {\n var anchor = axes[i];\n if (anchor && anchor.pane === pane) {\n return anchor;\n }\n }\n}\n\nfunction isTransparent(color) {\n return color === \"\" || color === null || color === \"none\" || color === \"transparent\" || !defined(color);\n}\n\nvar allPaneAxes = function (panes) { return panes.reduce(function (acc, pane) { return acc.concat(pane.axes); }, []); };\n\nsetDefaultOptions(PlotAreaBase, {\n series: [],\n plotArea: {\n margin: {}\n },\n background: \"\",\n border: {\n color: BLACK,\n width: 0\n },\n paneDefaults: {\n title: {}\n },\n legend: {\n inactiveItems: {\n labels: {\n color: \"#919191\"\n },\n markers: {\n color: \"#919191\"\n }\n }\n }\n});\n\nexport default PlotAreaBase;\n","import { PLOT_AREA_HOVER, PLOT_AREA_CLICK } from '../constants';\n\nvar PlotAreaEventsMixin = {\n hover: function(chart, e) {\n this._dispatchEvent(chart, e, PLOT_AREA_HOVER);\n },\n\n click: function(chart, e) {\n this._dispatchEvent(chart, e, PLOT_AREA_CLICK);\n }\n};\n\nexport default PlotAreaEventsMixin;","import Aggregates from './aggregates';\n\nimport { Class, defined, inArray, isArray, isFunction, isNumber, isObject } from '../../common';\n\nvar SeriesAggregator = (function (Class) {\n function SeriesAggregator(series, binder, defaultAggregates) {\n Class.call(this);\n\n var canonicalFields = binder.canonicalFields(series);\n var valueFields = binder.valueFields(series);\n var sourceFields = binder.sourceFields(series, canonicalFields);\n var seriesFields = this._seriesFields = [];\n var defaults = defaultAggregates.query(series.type);\n var rootAggregate = series.aggregate || defaults;\n\n this._series = series;\n this._binder = binder;\n\n for (var i = 0; i < canonicalFields.length; i++) {\n var field = canonicalFields[i];\n var fieldAggregate = (void 0);\n\n if (isObject(rootAggregate)) {\n fieldAggregate = rootAggregate[field];\n } else if (i === 0 || inArray(field, valueFields)) {\n fieldAggregate = rootAggregate;\n } else {\n break;\n }\n\n if (fieldAggregate) {\n seriesFields.push({\n canonicalName: field,\n name: sourceFields[i],\n transform: isFunction(fieldAggregate) ? fieldAggregate : Aggregates[fieldAggregate]\n });\n }\n }\n }\n\n if ( Class ) SeriesAggregator.__proto__ = Class;\n SeriesAggregator.prototype = Object.create( Class && Class.prototype );\n SeriesAggregator.prototype.constructor = SeriesAggregator;\n\n SeriesAggregator.prototype.aggregatePoints = function aggregatePoints (srcPoints, group) {\n var this$1 = this;\n\n var ref = this;\n var series = ref._series;\n var seriesFields = ref._seriesFields;\n var data = this._bindPoints(srcPoints || []);\n var firstDataItem = data.dataItems[0];\n var result = {};\n\n if (firstDataItem && !isNumber(firstDataItem) && !isArray(firstDataItem)) {\n var fn = function() {};\n fn.prototype = firstDataItem;\n result = new fn();\n }\n\n for (var i = 0; i < seriesFields.length; i++) {\n var field = seriesFields[i];\n var srcValues = this$1._bindField(data.values, field.canonicalName);\n var value = field.transform(srcValues, series, data.dataItems, group);\n\n if (value !== null && isObject(value) && !defined(value.length) && !(value instanceof Date)) {\n result = value;\n break;\n } else {\n if (defined(value)) {\n setValue(field.name, result, value);\n }\n }\n }\n\n return result;\n };\n\n SeriesAggregator.prototype._bindPoints = function _bindPoints (points) {\n var ref = this;\n var binder = ref._binder;\n var series = ref._series;\n var values = [];\n var dataItems = [];\n\n for (var i = 0; i < points.length; i++) {\n var pointIx = points[i];\n\n values.push(binder.bindPoint(series, pointIx));\n dataItems.push(series.data[pointIx]);\n }\n\n return {\n values: values,\n dataItems: dataItems\n };\n };\n\n SeriesAggregator.prototype._bindField = function _bindField (data, field) {\n var values = [];\n var count = data.length;\n\n for (var i = 0; i < count; i++) {\n var item = data[i];\n var valueFields = item.valueFields;\n var value = (void 0);\n\n if (defined(valueFields[field])) {\n value = valueFields[field];\n } else {\n value = item.fields[field];\n }\n\n values.push(value);\n }\n\n return values;\n };\n\n return SeriesAggregator;\n}(Class));\n\nfunction setValue(fieldName, target, value) {\n var parentObj = target;\n var field = fieldName;\n\n if (fieldName.indexOf(\".\") > -1) {\n var parts = fieldName.split(\".\");\n\n while (parts.length > 1) {\n field = parts.shift();\n if (!defined(parentObj[field])) {\n parentObj[field] = {};\n }\n parentObj = parentObj[field];\n }\n field = parts.shift();\n }\n\n parentObj[field] = value;\n}\n\nexport default SeriesAggregator;","import { Class } from '../../common';\n\nvar DefaultAggregates = (function (Class) {\n function DefaultAggregates() {\n Class.call(this);\n\n this._defaults = {};\n }\n\n if ( Class ) DefaultAggregates.__proto__ = Class;\n DefaultAggregates.prototype = Object.create( Class && Class.prototype );\n DefaultAggregates.prototype.constructor = DefaultAggregates;\n\n DefaultAggregates.prototype.register = function register (seriesTypes, aggregates) {\n var this$1 = this;\n\n for (var i = 0; i < seriesTypes.length; i++) {\n this$1._defaults[seriesTypes[i]] = aggregates;\n }\n };\n\n DefaultAggregates.prototype.query = function query (seriesType) {\n return this._defaults[seriesType];\n };\n\n return DefaultAggregates;\n}(Class));\n\nDefaultAggregates.current = new DefaultAggregates();\n\nexport default DefaultAggregates;","import Bar from '../bar-chart/bar';\n\nimport { deepExtend } from '../../common';\n\nvar RangeBar = (function (Bar) {\n function RangeBar () {\n Bar.apply(this, arguments);\n }\n\n if ( Bar ) RangeBar.__proto__ = Bar;\n RangeBar.prototype = Object.create( Bar && Bar.prototype );\n RangeBar.prototype.constructor = RangeBar;\n\n RangeBar.prototype.createLabel = function createLabel () {\n var labels = this.options.labels;\n var fromOptions = deepExtend({}, labels, labels.from);\n var toOptions = deepExtend({}, labels, labels.to);\n\n if (fromOptions.visible) {\n this.labelFrom = this.createLabelElement(fromOptions);\n this.append(this.labelFrom);\n }\n\n if (toOptions.visible) {\n this.labelTo = this.createLabelElement(toOptions);\n this.append(this.labelTo);\n }\n };\n\n RangeBar.prototype.reflow = function reflow (targetBox) {\n this.render();\n\n var ref = this;\n var labelFrom = ref.labelFrom;\n var labelTo = ref.labelTo;\n var value = ref.value;\n\n this.box = targetBox;\n\n if (labelFrom) {\n labelFrom.options.aboveAxis = value.from > value.to;\n labelFrom.reflow(targetBox);\n }\n\n if (labelTo) {\n labelTo.options.aboveAxis = value.to > value.from;\n labelTo.reflow(targetBox);\n }\n\n if (this.note) {\n this.note.reflow(targetBox);\n }\n };\n\n return RangeBar;\n}(Bar));\n\nRangeBar.prototype.defaults = deepExtend({}, RangeBar.prototype.defaults, {\n labels: {\n format: \"{0} - {1}\"\n },\n tooltip: {\n format: \"{1}\"\n }\n});\n\nexport default RangeBar;","import BarChart from '../bar-chart/bar-chart';\nimport RangeBar from './range-bar';\nimport CategoricalChart from '../categorical-chart';\n\nimport { MIN_VALUE, MAX_VALUE } from '../../common/constants';\nimport { isNumber } from '../../common';\n\nvar RangeBarChart = (function (BarChart) {\n function RangeBarChart () {\n BarChart.apply(this, arguments);\n }\n\n if ( BarChart ) RangeBarChart.__proto__ = BarChart;\n RangeBarChart.prototype = Object.create( BarChart && BarChart.prototype );\n RangeBarChart.prototype.constructor = RangeBarChart;\n\n RangeBarChart.prototype.pointType = function pointType () {\n return RangeBar;\n };\n\n RangeBarChart.prototype.pointValue = function pointValue (data) {\n return data.valueFields;\n };\n\n RangeBarChart.prototype.formatPointValue = function formatPointValue (point, format) {\n if (point.value.from === null && point.value.to === null) {\n return \"\";\n }\n\n return this.chartService.format.auto(format, point.value.from, point.value.to);\n };\n\n RangeBarChart.prototype.plotRange = function plotRange (point) {\n if (!point) {\n return 0;\n }\n\n return [ point.value.from, point.value.to ];\n };\n\n RangeBarChart.prototype.updateRange = function updateRange (value, fields) {\n var axisName = fields.series.axis;\n var from = value.from;\n var to = value.to;\n var axisRange = this.valueAxisRanges[axisName];\n\n if (value !== null && isNumber(from) && isNumber(to)) {\n axisRange = this.valueAxisRanges[axisName] = axisRange || { min: MAX_VALUE, max: MIN_VALUE };\n\n axisRange.min = Math.min(axisRange.min, from);\n axisRange.max = Math.max(axisRange.max, from);\n\n axisRange.min = Math.min(axisRange.min, to);\n axisRange.max = Math.max(axisRange.max, to);\n }\n };\n\n RangeBarChart.prototype.aboveAxis = function aboveAxis (point) {\n var value = point.value;\n return value.from < value.to;\n };\n\n return RangeBarChart;\n}(BarChart));\n\nRangeBarChart.prototype.plotLimits = CategoricalChart.prototype.plotLimits;\n\nexport default RangeBarChart;","import LinePoint from '../line-chart/line-point';\n\nvar RangeLinePoint = (function (LinePoint) {\n function RangeLinePoint () {\n LinePoint.apply(this, arguments);\n }\n\n if ( LinePoint ) RangeLinePoint.__proto__ = LinePoint;\n RangeLinePoint.prototype = Object.create( LinePoint && LinePoint.prototype );\n RangeLinePoint.prototype.constructor = RangeLinePoint;\n\n RangeLinePoint.prototype.aliasFor = function aliasFor () {\n return this.parent;\n };\n\n return RangeLinePoint;\n}(LinePoint));\n\nexport default RangeLinePoint;","import { drawing as draw } from '@progress/kendo-drawing';\n\nimport { ChartElement, Point } from '../../core';\nimport RangeLinePoint from './range-line-point';\nimport PointEventsMixin from '../mixins/point-events-mixin';\nimport NoteMixin from '../mixins/note-mixin';\n\nimport { LINE_MARKER_SIZE, FADEIN, INITIAL_ANIMATION_DURATION, TOOLTIP_OFFSET, ABOVE, BELOW, CHART_POINT_ROLE, CHART_POINT_CLASSNAME, CHART_POINT_ROLE_DESCRIPTION } from '../constants';\nimport { WHITE, CIRCLE, HIGHLIGHT_ZINDEX, LEFT, RIGHT, BOTTOM, CENTER } from '../../common/constants';\nimport { deepExtend, valueOrDefault, getSpacing } from '../../common';\nimport guid from '../../core/utils/guid';\n\nvar AUTO = 'auto';\nvar DEFAULT_FROM_FORMAT = '{0}';\nvar DEFAULT_TO_FORMAT = '{1}';\n\nvar RangeAreaPoint = (function (ChartElement) {\n function RangeAreaPoint(value, options) {\n ChartElement.call(this);\n\n this.value = value;\n this.options = options;\n this.aboveAxis = valueOrDefault(this.options.aboveAxis, true);\n this.tooltipTracking = true;\n this._id = guid();\n this.initLabelsFormat();\n }\n\n if ( ChartElement ) RangeAreaPoint.__proto__ = ChartElement;\n RangeAreaPoint.prototype = Object.create( ChartElement && ChartElement.prototype );\n RangeAreaPoint.prototype.constructor = RangeAreaPoint;\n\n RangeAreaPoint.prototype.render = function render () {\n if (this._rendered) {\n return;\n }\n\n this._rendered = true;\n\n var ref = this.options;\n var markers = ref.markers;\n var labels = ref.labels;\n var value = this.value;\n\n var fromPoint = this.fromPoint = new RangeLinePoint(value, deepExtend({}, this.options, {\n labels: labels.from,\n markers: markers.from\n }));\n\n var toPoint = this.toPoint = new RangeLinePoint(value, deepExtend({}, this.options, {\n labels: labels.to,\n markers: markers.to\n }));\n\n this.copyFields(fromPoint);\n this.copyFields(toPoint);\n\n this.append(fromPoint);\n this.append(toPoint);\n };\n\n RangeAreaPoint.prototype.reflow = function reflow (targetBox) {\n this.render();\n\n var fromBox = targetBox.from;\n var toBox = targetBox.to;\n\n this.positionLabels(fromBox, toBox);\n\n this.fromPoint.reflow(fromBox);\n this.toPoint.reflow(toBox);\n\n this.box = this.fromPoint.markerBox().clone().wrap(this.toPoint.markerBox());\n };\n\n RangeAreaPoint.prototype.createHighlight = function createHighlight () {\n var group = new draw.Group();\n group.append(this.fromPoint.createHighlight());\n group.append(this.toPoint.createHighlight());\n\n return group;\n };\n\n RangeAreaPoint.prototype.highlightVisual = function highlightVisual () {\n return this.visual;\n };\n\n RangeAreaPoint.prototype.highlightVisualArgs = function highlightVisualArgs () {\n return {\n options: this.options,\n from: this.fromPoint.highlightVisualArgs(),\n to: this.toPoint.highlightVisualArgs()\n };\n };\n\n RangeAreaPoint.prototype.createFocusHighlight = function createFocusHighlight () {\n var group = new draw.Group();\n group.append(this.fromPoint.createFocusHighlight());\n group.append(this.toPoint.createFocusHighlight());\n\n return group;\n };\n\n RangeAreaPoint.prototype.tooltipAnchor = function tooltipAnchor () {\n var clipBox = this.owner.pane.clipBox();\n var showTooltip = !clipBox || clipBox.overlaps(this.box);\n\n if (showTooltip) {\n var box = this.box;\n var center = box.center();\n var horizontalAlign = LEFT;\n var x, y, verticalAlign;\n\n if (this.options.vertical) {\n x = center.x;\n y = box.y1 - TOOLTIP_OFFSET;\n verticalAlign = BOTTOM;\n } else {\n x = box.x2 + TOOLTIP_OFFSET;\n y = center.y;\n verticalAlign = CENTER;\n }\n\n return {\n point: new Point(x, y),\n align: {\n horizontal: horizontalAlign,\n vertical: verticalAlign\n }\n };\n }\n };\n\n RangeAreaPoint.prototype.formatValue = function formatValue (format) {\n return this.owner.formatPointValue(this, format);\n };\n\n RangeAreaPoint.prototype.overlapsBox = function overlapsBox (box) {\n return this.box.overlaps(box);\n };\n\n RangeAreaPoint.prototype.unclipElements = function unclipElements () {\n this.fromPoint.unclipElements();\n this.toPoint.unclipElements();\n };\n\n RangeAreaPoint.prototype.initLabelsFormat = function initLabelsFormat () {\n var labels = this.options.labels;\n if (!labels.format) {\n if (!labels.from || !labels.from.format) {\n labels.from = Object.assign({}, labels.from, {\n format: DEFAULT_FROM_FORMAT\n });\n }\n\n if (!labels.to || !labels.to.format) {\n labels.to = Object.assign({}, labels.to, {\n format: DEFAULT_TO_FORMAT\n });\n }\n }\n };\n\n RangeAreaPoint.prototype.positionLabels = function positionLabels (fromBox, toBox) {\n var ref = this.options;\n var labels = ref.labels;\n var vertical = ref.vertical;\n\n if (labels.position === AUTO) {\n var fromLabelPosition, toLabelPosition;\n if (vertical) {\n if (toBox.y1 <= fromBox.y1) {\n toLabelPosition = ABOVE;\n fromLabelPosition = BELOW;\n } else {\n toLabelPosition = BELOW;\n fromLabelPosition = ABOVE;\n }\n } else {\n if (toBox.x1 <= fromBox.x1) {\n toLabelPosition = LEFT;\n fromLabelPosition = RIGHT;\n } else {\n toLabelPosition = RIGHT;\n fromLabelPosition = LEFT;\n }\n }\n\n if (!labels.from || !labels.from.position) {\n this.fromPoint.options.labels.position = fromLabelPosition;\n }\n\n if (!labels.to || !labels.to.position) {\n this.toPoint.options.labels.position = toLabelPosition;\n }\n }\n };\n\n RangeAreaPoint.prototype.copyFields = function copyFields (point) {\n point.dataItem = this.dataItem;\n point.category = this.category;\n point.series = this.series;\n point.color = this.color;\n point.owner = this.owner;\n };\n\n RangeAreaPoint.prototype.focusVisual = function focusVisual () {\n this.fromPoint.focusVisual();\n };\n\n RangeAreaPoint.prototype.clearFocusFromVisual = function clearFocusFromVisual () {\n this.toPoint.clearFocusFromVisual();\n };\n\n RangeAreaPoint.prototype.getIndex = function getIndex () {\n return this.categoryIx;\n };\n\n return RangeAreaPoint;\n}(ChartElement));\n\ndeepExtend(RangeAreaPoint.prototype, PointEventsMixin);\ndeepExtend(RangeAreaPoint.prototype, NoteMixin);\n\nRangeAreaPoint.prototype.defaults = {\n markers: {\n visible: false,\n background: WHITE,\n size: LINE_MARKER_SIZE,\n type: CIRCLE,\n border: {\n width: 2\n },\n opacity: 1\n },\n labels: {\n visible: false,\n margin: getSpacing(3),\n padding: getSpacing(4),\n animation: {\n type: FADEIN,\n delay: INITIAL_ANIMATION_DURATION\n },\n position: AUTO\n },\n notes: {\n label: {}\n },\n highlight: {\n markers: {\n border: {\n color: WHITE,\n width: 2\n }\n },\n zIndex: HIGHLIGHT_ZINDEX\n },\n tooltip: {\n format: '{0} - {1}'\n },\n accessibility: {\n role: CHART_POINT_ROLE,\n className: CHART_POINT_CLASSNAME,\n ariaRoleDescription: CHART_POINT_ROLE_DESCRIPTION\n }\n};\n\nexport default RangeAreaPoint;\n","import { drawing as draw } from '@progress/kendo-drawing';\nimport AreaSegment from '../area-chart/area-segment';\n\nvar RangeAreaSegment = (function (AreaSegment) {\n function RangeAreaSegment () {\n AreaSegment.apply(this, arguments);\n }\n\n if ( AreaSegment ) RangeAreaSegment.__proto__ = AreaSegment;\n RangeAreaSegment.prototype = Object.create( AreaSegment && AreaSegment.prototype );\n RangeAreaSegment.prototype.constructor = RangeAreaSegment;\n\n RangeAreaSegment.prototype.createStrokeSegments = function createStrokeSegments () {\n return this.segmentsFromPoints(this.toGeometryPoints(this.toPoints()));\n };\n\n RangeAreaSegment.prototype.stackSegments = function stackSegments () {\n var fromSegments = this.fromSegments;\n if (!this.fromSegments) {\n fromSegments = this.fromSegments = this.segmentsFromPoints(this.toGeometryPoints(this.fromPoints().reverse()));\n }\n\n return fromSegments;\n };\n\n RangeAreaSegment.prototype.createStroke = function createStroke (style) {\n var toPath = new draw.Path(style);\n var fromPath = new draw.Path(style);\n\n toPath.segments.push.apply(toPath.segments, this.strokeSegments());\n fromPath.segments.push.apply(fromPath.segments, this.stackSegments());\n\n this.visual.append(toPath);\n this.visual.append(fromPath);\n };\n\n RangeAreaSegment.prototype.hasStackSegment = function hasStackSegment () {\n return true;\n };\n\n RangeAreaSegment.prototype.fromPoints = function fromPoints () {\n return this.linePoints.map(function (point) { return point.fromPoint; });\n };\n\n RangeAreaSegment.prototype.toPoints = function toPoints () {\n return this.linePoints.map(function (point) { return point.toPoint; });\n };\n\n return RangeAreaSegment;\n}(AreaSegment));\n\nexport default RangeAreaSegment;","import { CurveProcessor } from '../../core';\n\nimport RangeAreaSegment from './range-area-segment';\n\nvar SplineRangeAreaSegment = (function (RangeAreaSegment) {\n function SplineRangeAreaSegment () {\n RangeAreaSegment.apply(this, arguments);\n }\n\n if ( RangeAreaSegment ) SplineRangeAreaSegment.__proto__ = RangeAreaSegment;\n SplineRangeAreaSegment.prototype = Object.create( RangeAreaSegment && RangeAreaSegment.prototype );\n SplineRangeAreaSegment.prototype.constructor = SplineRangeAreaSegment;\n\n SplineRangeAreaSegment.prototype.createStrokeSegments = function createStrokeSegments () {\n return this.createCurveSegments(this.toPoints());\n };\n\n SplineRangeAreaSegment.prototype.stackSegments = function stackSegments () {\n var fromSegments = this.fromSegments;\n if (!this.fromSegments) {\n fromSegments = this.fromSegments = this.createCurveSegments(this.fromPoints().reverse());\n }\n\n return fromSegments;\n };\n\n SplineRangeAreaSegment.prototype.createCurveSegments = function createCurveSegments (points) {\n var curveProcessor = new CurveProcessor();\n\n return curveProcessor.process(this.toGeometryPoints(points));\n };\n\n return SplineRangeAreaSegment;\n}(RangeAreaSegment));\n\nexport default SplineRangeAreaSegment;","import StepLineMixin from '../line-chart/step-line-mixin';\nimport RangeAreaSegment from './range-area-segment';\nimport { deepExtend } from '../../common';\n\nvar StepRangeAreaSegment = (function (RangeAreaSegment) {\n function StepRangeAreaSegment () {\n RangeAreaSegment.apply(this, arguments);\n }\n\n if ( RangeAreaSegment ) StepRangeAreaSegment.__proto__ = RangeAreaSegment;\n StepRangeAreaSegment.prototype = Object.create( RangeAreaSegment && RangeAreaSegment.prototype );\n StepRangeAreaSegment.prototype.constructor = StepRangeAreaSegment;\n\n StepRangeAreaSegment.prototype.createStrokeSegments = function createStrokeSegments () {\n return this.segmentsFromPoints(this.calculateStepPoints(this.toPoints()));\n };\n\n StepRangeAreaSegment.prototype.stackSegments = function stackSegments () {\n var fromSegments = this.fromSegments;\n if (!this.fromSegments) {\n fromSegments = this.fromSegments = this.segmentsFromPoints(this.calculateStepPoints(this.fromPoints()));\n fromSegments.reverse();\n }\n\n return fromSegments;\n };\n\n return StepRangeAreaSegment;\n}(RangeAreaSegment));\n\ndeepExtend(StepRangeAreaSegment.prototype, StepLineMixin);\n\nexport default StepRangeAreaSegment;","import CategoricalChart from '../categorical-chart';\nimport LineChartMixin from '../mixins/line-chart-mixin';\nimport ClipAnimationMixin from '../mixins/clip-animation-mixin';\nimport RangeAreaPoint from './range-area-point';\nimport RangeAreaSegment from './range-area-segment';\nimport SplineRangeAreaSegment from './spline-range-area-segment';\nimport StepRangeAreaSegment from './step-range-area-segment';\n\nimport { Box } from '../../core';\nimport { ZERO } from '../constants';\nimport { MIN_VALUE, MAX_VALUE } from '../../common/constants';\nimport { isNumber } from '../../common';\nimport { deepExtend, isFunction } from '../../common';\nimport { hasValue } from '../utils';\n\nvar RangeAreaChart = (function (CategoricalChart) {\n function RangeAreaChart () {\n CategoricalChart.apply(this, arguments);\n }\n\n if ( CategoricalChart ) RangeAreaChart.__proto__ = CategoricalChart;\n RangeAreaChart.prototype = Object.create( CategoricalChart && CategoricalChart.prototype );\n RangeAreaChart.prototype.constructor = RangeAreaChart;\n\n RangeAreaChart.prototype.render = function render () {\n CategoricalChart.prototype.render.call(this);\n\n this.renderSegments();\n };\n\n RangeAreaChart.prototype.pointType = function pointType () {\n return RangeAreaPoint;\n };\n\n RangeAreaChart.prototype.createPoint = function createPoint (data, fields) {\n var series = fields.series;\n var seriesIx = fields.seriesIx;\n var value = data.valueFields;\n\n if (!hasValue(value.from) && !hasValue(value.to)) {\n if (this.seriesMissingValues(series) === ZERO) {\n value = {\n from: 0,\n to: 0\n };\n } else {\n return null;\n }\n }\n\n var pointOptions = this.pointOptions(series, seriesIx);\n pointOptions = this.evalPointOptions(pointOptions, value, fields);\n\n var color = data.fields.color || series.color;\n if (isFunction(series.color)) {\n color = pointOptions.color;\n }\n\n var point = new RangeAreaPoint(value, pointOptions);\n point.color = color;\n\n this.append(point);\n\n return point;\n };\n\n RangeAreaChart.prototype.createSegment = function createSegment (linePoints, currentSeries, seriesIx) {\n var style = (currentSeries.line || {}).style;\n var segmentType;\n if (style === \"smooth\") {\n segmentType = SplineRangeAreaSegment;\n } else if (style === \"step\") {\n segmentType = StepRangeAreaSegment;\n } else {\n segmentType = RangeAreaSegment;\n }\n\n return new segmentType(linePoints, currentSeries, seriesIx);\n };\n\n RangeAreaChart.prototype.plotRange = function plotRange (point, startValue) {\n if (!point) {\n return [ startValue, startValue ];\n }\n\n return [ point.value.from, point.value.to ];\n };\n\n RangeAreaChart.prototype.valueSlot = function valueSlot (valueAxis, plotRange) {\n var fromSlot = valueAxis.getSlot(plotRange[0], plotRange[0], !this.options.clip);\n var toSlot = valueAxis.getSlot(plotRange[1], plotRange[1], !this.options.clip);\n if (fromSlot && toSlot) {\n return {\n from: fromSlot,\n to: toSlot\n };\n }\n };\n\n RangeAreaChart.prototype.pointSlot = function pointSlot (categorySlot, valueSlot) {\n var from = valueSlot.from;\n var to = valueSlot.to;\n var fromSlot, toSlot;\n\n if (this.options.invertAxes) {\n fromSlot = new Box(from.x1, categorySlot.y1, from.x2, categorySlot.y2);\n toSlot = new Box(to.x1, categorySlot.y1, to.x2, categorySlot.y2);\n } else {\n fromSlot = new Box(categorySlot.x1, from.y1, categorySlot.x2, from.y2);\n toSlot = new Box(categorySlot.x1, to.y1, categorySlot.x2, to.y2);\n }\n\n return {\n from: fromSlot,\n to: toSlot\n };\n };\n\n RangeAreaChart.prototype.addValue = function addValue (data, fields) {\n var valueFields = data.valueFields;\n if (!isNumber(valueFields.from)) {\n valueFields.from = valueFields.to;\n }\n\n if (!isNumber(valueFields.to)) {\n valueFields.to = valueFields.from;\n }\n\n CategoricalChart.prototype.addValue.call(this, data, fields);\n };\n\n RangeAreaChart.prototype.updateRange = function updateRange (value, fields) {\n if (value !== null && isNumber(value.from) && isNumber(value.to)) {\n var axisName = fields.series.axis;\n var axisRange = this.valueAxisRanges[axisName] = this.valueAxisRanges[axisName] || { min: MAX_VALUE, max: MIN_VALUE };\n var from = value.from;\n var to = value.to;\n\n axisRange.min = Math.min(axisRange.min, from, to);\n axisRange.max = Math.max(axisRange.max, from, to);\n }\n };\n\n RangeAreaChart.prototype.formatPointValue = function formatPointValue (point, format) {\n var value = point.value;\n\n return this.chartService.format.auto(format, value.from, value.to);\n };\n\n RangeAreaChart.prototype.animationPoints = function animationPoints () {\n var points = this.points;\n var result = [];\n for (var idx = 0; idx < points.length; idx++) {\n var point = points[idx];\n if (point) {\n result.push((point.fromPoint || {}).marker);\n result.push((point.toPoint || {}).marker);\n }\n }\n\n return result.concat(this._segments);\n };\n\n return RangeAreaChart;\n}(CategoricalChart));\n\ndeepExtend(RangeAreaChart.prototype, LineChartMixin, ClipAnimationMixin);\n\nexport default RangeAreaChart;\n","import Candlestick from '../candlestick-chart/candlestick';\n\nvar OHLCPoint = (function (Candlestick) {\n function OHLCPoint () {\n Candlestick.apply(this, arguments);\n }\n\n if ( Candlestick ) OHLCPoint.__proto__ = Candlestick;\n OHLCPoint.prototype = Object.create( Candlestick && Candlestick.prototype );\n OHLCPoint.prototype.constructor = OHLCPoint;\n\n OHLCPoint.prototype.reflow = function reflow (box) {\n var ref = this;\n var options = ref.options;\n var value = ref.value;\n var chart = ref.owner;\n var valueAxis = chart.seriesValueAxis(options);\n var oPoints = [];\n var cPoints = [];\n var lhPoints = [];\n\n var lhSlot = valueAxis.getSlot(value.low, value.high);\n var oSlot = valueAxis.getSlot(value.open, value.open);\n var cSlot = valueAxis.getSlot(value.close, value.close);\n\n oSlot.x1 = cSlot.x1 = lhSlot.x1 = box.x1;\n oSlot.x2 = cSlot.x2 = lhSlot.x2 = box.x2;\n\n var mid = lhSlot.center().x;\n\n oPoints.push([ oSlot.x1, oSlot.y1 ]);\n oPoints.push([ mid, oSlot.y1 ]);\n cPoints.push([ mid, cSlot.y1 ]);\n cPoints.push([ cSlot.x2, cSlot.y1 ]);\n lhPoints.push([ mid, lhSlot.y1 ]);\n lhPoints.push([ mid, lhSlot.y2 ]);\n\n this.lines = [\n oPoints, cPoints, lhPoints\n ];\n\n this.box = lhSlot.clone().wrap(oSlot.clone().wrap(cSlot));\n\n this.reflowNote();\n };\n\n OHLCPoint.prototype.createBody = function createBody () {};\n\n return OHLCPoint;\n}(Candlestick));\n\nexport default OHLCPoint;","import CandlestickChart from '../candlestick-chart/candlestick-chart';\nimport OHLCPoint from './ohlc-point';\n\nvar OHLCChart = (function (CandlestickChart) {\n function OHLCChart () {\n CandlestickChart.apply(this, arguments);\n }\n\n if ( CandlestickChart ) OHLCChart.__proto__ = CandlestickChart;\n OHLCChart.prototype = Object.create( CandlestickChart && CandlestickChart.prototype );\n OHLCChart.prototype.constructor = OHLCChart;\n\n OHLCChart.prototype.pointType = function pointType () {\n return OHLCPoint;\n };\n\n return OHLCChart;\n}(CandlestickChart));\n\nexport default OHLCChart;","import { drawing as draw } from '@progress/kendo-drawing';\n\nimport { ChartElement } from '../../core';\n\nimport { FADEIN, INITIAL_ANIMATION_DURATION } from '../constants';\n\nimport { alignPathToPixel, setDefaultOptions } from '../../common';\n\nvar WaterfallSegment = (function (ChartElement) {\n function WaterfallSegment(from, to, series) {\n ChartElement.call(this);\n\n this.from = from;\n this.to = to;\n this.series = series;\n }\n\n if ( ChartElement ) WaterfallSegment.__proto__ = ChartElement;\n WaterfallSegment.prototype = Object.create( ChartElement && ChartElement.prototype );\n WaterfallSegment.prototype.constructor = WaterfallSegment;\n\n WaterfallSegment.prototype.linePoints = function linePoints () {\n var from = this.from;\n var ref = this;\n var fromBox = ref.from.box;\n var toBox = ref.to.box;\n var points = [];\n\n if (from.isVertical) {\n var y = from.aboveAxis ? fromBox.y1 : fromBox.y2;\n points.push(\n [ fromBox.x1, y ],\n [ toBox.x2, y ]\n );\n } else {\n var x = from.aboveAxis ? fromBox.x2 : fromBox.x1;\n points.push(\n [ x, fromBox.y1 ],\n [ x, toBox.y2 ]\n );\n }\n\n return points;\n };\n\n WaterfallSegment.prototype.createVisual = function createVisual () {\n ChartElement.prototype.createVisual.call(this);\n\n var line = this.series.line || {};\n\n var path = draw.Path.fromPoints(this.linePoints(), {\n stroke: {\n color: line.color,\n width: line.width,\n opacity: line.opacity,\n dashType: line.dashType\n }\n });\n\n alignPathToPixel(path);\n this.visual.append(path);\n };\n\n return WaterfallSegment;\n}(ChartElement));\n\nsetDefaultOptions(WaterfallSegment, {\n animation: {\n type: FADEIN,\n delay: INITIAL_ANIMATION_DURATION\n }\n});\n\nexport default WaterfallSegment;","import BarChart from '../bar-chart/bar-chart';\nimport SeriesBinder from '../series-binder';\nimport WaterfallSegment from './waterfall-segment';\n\nimport categoriesCount from '../utils/categories-count';\n\nimport { isNumber } from '../../common';\n\nvar WaterfallChart = (function (BarChart) {\n function WaterfallChart () {\n BarChart.apply(this, arguments);\n }\n\n if ( BarChart ) WaterfallChart.__proto__ = BarChart;\n WaterfallChart.prototype = Object.create( BarChart && BarChart.prototype );\n WaterfallChart.prototype.constructor = WaterfallChart;\n\n WaterfallChart.prototype.render = function render () {\n BarChart.prototype.render.call(this);\n this.createSegments();\n };\n\n WaterfallChart.prototype.traverseDataPoints = function traverseDataPoints (callback) {\n var this$1 = this;\n\n var series = this.options.series;\n var totalCategories = categoriesCount(series);\n var isVertical = !this.options.invertAxes;\n\n for (var seriesIx = 0; seriesIx < series.length; seriesIx++) {\n var currentSeries = series[seriesIx];\n var total = 0;\n var runningTotal = 0;\n\n for (var categoryIx = 0; categoryIx < totalCategories; categoryIx++) {\n var data = SeriesBinder.current.bindPoint(currentSeries, categoryIx);\n var value = data.valueFields.value;\n var summary = data.fields.summary;\n var from = total;\n var to = (void 0);\n\n if (summary) {\n if (summary.toLowerCase() === \"total\") {\n data.valueFields.value = total;\n from = 0;\n to = total;\n } else {\n data.valueFields.value = runningTotal;\n to = from - runningTotal;\n runningTotal = 0;\n }\n } else if (isNumber(value)) {\n runningTotal += value;\n total += value;\n to = total;\n }\n\n callback(data, {\n category: this$1.categoryAxis.categoryAt(categoryIx),\n categoryIx: categoryIx,\n series: currentSeries,\n seriesIx: seriesIx,\n total: total,\n runningTotal: runningTotal,\n from: from,\n to: to,\n isVertical: isVertical\n });\n }\n }\n };\n\n WaterfallChart.prototype.updateRange = function updateRange (value, fields) {\n BarChart.prototype.updateRange.call(this, { value: fields.to }, fields);\n };\n\n WaterfallChart.prototype.aboveAxis = function aboveAxis (point) {\n return point.value >= 0;\n };\n\n WaterfallChart.prototype.plotRange = function plotRange (point) {\n return [ point.from, point.to ];\n };\n\n WaterfallChart.prototype.createSegments = function createSegments () {\n var this$1 = this;\n\n var series = this.options.series;\n var seriesPoints = this.seriesPoints;\n var segments = this.segments = [];\n\n for (var seriesIx = 0; seriesIx < series.length; seriesIx++) {\n var currentSeries = series[seriesIx];\n var points = seriesPoints[seriesIx];\n\n if (points) {\n var prevPoint = (void 0);\n for (var pointIx = 0; pointIx < points.length; pointIx++) {\n var point = points[pointIx];\n\n if (point && prevPoint) {\n var segment = new WaterfallSegment(prevPoint, point, currentSeries);\n segments.push(segment);\n this$1.append(segment);\n }\n\n prevPoint = point;\n }\n }\n }\n };\n\n return WaterfallChart;\n}(BarChart));\n\nexport default WaterfallChart;","function trendlineFactory(registry, type, context) {\n var impl = registry[String(type)];\n if (impl) {\n return impl(context);\n }\n\n return null;\n}\n\nexport default trendlineFactory;\n","// Optimized version of calculatePolynomial for order = 1\nfunction calculateSlope(sourceValues, valueGetter) {\n var x = 0;\n var y = 0;\n var x2 = 0;\n var xy = 0;\n var count = 0;\n var slope, intercept;\n var xMin = Number.MAX_VALUE;\n var xMax = Number.MIN_VALUE;\n\n for (var i = 0; i < sourceValues.length; i++) {\n var value = sourceValues[i];\n var ref = valueGetter(value);\n var xValue = ref.xValue;\n var yValue = ref.yValue;\n\n if (isFinite(xValue) && xValue !== null && isFinite(yValue) && yValue !== null) {\n xMin = Math.min(xValue, xMin);\n xMax = Math.max(xValue, xMax);\n\n count++;\n x += xValue;\n y += yValue;\n x2 += Math.pow(xValue, 2);\n xy += xValue * yValue;\n }\n }\n\n if (count > 0) {\n slope = (count * xy - x * y) / (count * x2 - Math.pow(x, 2));\n intercept = (y - slope * x) / count;\n }\n\n return { slope: slope, intercept: intercept, count: count, xMin: xMin, xMax: xMax };\n}\n\nexport default calculateSlope;\n","import { hasValue } from '../utils';\n\nvar checkAllPositive = function (sourceValues, fieldName) { return sourceValues.every(function (ref) {\n var valueFields = ref.valueFields;\n\n return !hasValue(valueFields[fieldName]) || valueFields[fieldName] > 0;\n }); };\n\nexport default checkAllPositive;\n","function getTrendlineData(valueMapper, categoryAxis) {\n var data = [];\n var totalRange = categoryAxis.totalRangeIndices();\n var currentRange = categoryAxis.currentRangeIndices();\n var range = {\n min: Math.floor(Math.max(currentRange.min - 1, totalRange.min)),\n max: Math.ceil(Math.min(currentRange.max + 2, totalRange.max))\n };\n\n for (var i = range.min; i < range.max; i++) {\n var x = (i + 1);\n data[i] = {\n category: categoryAxis.categoryAt(i, true),\n value: valueMapper(x)\n };\n }\n\n return data;\n}\n\nexport default getTrendlineData;\n","import calculateSlope from './calculate-slope';\nimport checkAllPositive from './check-all-positive';\nimport getTrendlineData from './get-trendline-data';\n\nfunction exponentialTrendline(context) {\n var options = context.options;\n var categoryAxis = context.categoryAxis;\n var seriesValues = context.seriesValues;\n\n var data = getData({ seriesValues: seriesValues, categoryAxis: categoryAxis, options: options });\n if (data) {\n return Object.assign({}, options,\n\n {type: 'line',\n data: data,\n categoryField: 'category',\n field: 'value'});\n }\n\n return null;\n}\n\nvar valueGetter = function (fieldName) { return function (ref) {\n var categoryIx = ref.categoryIx;\n var valueFields = ref.valueFields;\n\n return ({ xValue: categoryIx + 1, yValue: Math.log(valueFields[fieldName]) });\n; } };\n\nfunction getData(ref) {\n var seriesValues = ref.seriesValues;\n var categoryAxis = ref.categoryAxis;\n var options = ref.options;\n\n var sourceValues = seriesValues();\n if (!checkAllPositive(sourceValues, options.field)) {\n return null;\n }\n\n var ref$1 = calculateSlope(sourceValues, valueGetter(options.field));\n var slope = ref$1.slope;\n var intercept = ref$1.intercept;\n var count = ref$1.count;\n if (count > 0) {\n // Exponential trendline equation:\n // y = a * e ^ (b * x)\n var a = Math.exp(intercept);\n var b = slope;\n\n return getTrendlineData(function (x) { return a * Math.exp(b * x); }, categoryAxis);\n }\n\n return null;\n}\n\nexport default exponentialTrendline;\n","import calculateSlope from './calculate-slope';\nimport getTrendlineData from './get-trendline-data';\n\nfunction linearTrendline(context) {\n var options = context.options;\n var categoryAxis = context.categoryAxis;\n var seriesValues = context.seriesValues;\n\n var data = getData({ seriesValues: seriesValues, categoryAxis: categoryAxis, options: options });\n if (data) {\n return Object.assign({}, options,\n\n {type: 'line',\n data: data,\n categoryField: 'category',\n field: 'value'});\n }\n\n return null;\n}\n\nvar valueGetter = function (fieldName) { return function (ref) {\n var categoryIx = ref.categoryIx;\n var valueFields = ref.valueFields;\n\n return ({ xValue: categoryIx + 1, yValue: valueFields[fieldName] });\n; } };\n\nfunction getData(ref) {\n var seriesValues = ref.seriesValues;\n var categoryAxis = ref.categoryAxis;\n var options = ref.options;\n\n var ref$1 = calculateSlope(seriesValues(), valueGetter(options.field));\n var slope = ref$1.slope;\n var intercept = ref$1.intercept;\n var count = ref$1.count;\n\n if (count > 0) {\n return getTrendlineData(function (x) { return slope * x + intercept; }, categoryAxis);\n }\n\n return null;\n}\n\nexport default linearTrendline;\n","import calculateSlope from './calculate-slope';\nimport getTrendlineData from './get-trendline-data';\n\nfunction logarithmicTrendline(context) {\n var options = context.options;\n var categoryAxis = context.categoryAxis;\n var seriesValues = context.seriesValues;\n\n var data = getData({ seriesValues: seriesValues, categoryAxis: categoryAxis, options: options });\n if (data) {\n return Object.assign({}, options,\n\n {type: 'line',\n data: data,\n categoryField: 'category',\n field: 'value'});\n }\n\n return null;\n}\n\nvar valueGetter = function (fieldName) { return function (ref) {\n var categoryIx = ref.categoryIx;\n var valueFields = ref.valueFields;\n\n return ({ xValue: Math.log(categoryIx + 1), yValue: valueFields[fieldName] });\n; } };\n\nfunction getData(ref) {\n var seriesValues = ref.seriesValues;\n var categoryAxis = ref.categoryAxis;\n var options = ref.options;\n\n var ref$1 = calculateSlope(seriesValues(), valueGetter(options.field));\n var slope = ref$1.slope;\n var intercept = ref$1.intercept;\n var count = ref$1.count;\n if (count > 0) {\n // Logarithmic trendline equation:\n // y = a * ln (x) + b\n var a = slope;\n var b = intercept;\n return getTrendlineData(function (x) { return a * Math.log(x) + b; }, categoryAxis);\n }\n\n return null;\n}\n\nexport default logarithmicTrendline;\n","import { MIN_MOVING_AVERAGE_PERIOD } from '../constants';\n\nfunction calculateMovingAverage(sourceValues, valueGetter, period) {\n var averagePoints = [];\n var values = [];\n var start = Math.max(MIN_MOVING_AVERAGE_PERIOD, period) - 1;\n\n var end = 0;\n var sum = 0;\n\n for (var i = 0; i < sourceValues.length; i++) {\n var value = sourceValues[i];\n var ref = valueGetter(value);\n var xValue = ref.xValue;\n var yValue = ref.yValue;\n\n if (isFinite(yValue) && yValue !== null) {\n values.push(yValue);\n sum += yValue;\n end = Math.max(i, end);\n } else {\n values.push(null);\n }\n\n if (i >= start) {\n var count = values.filter(function (value) { return value !== null; }).length;\n var lastValue = values.shift() || 0;\n\n if (count > 0) {\n var average = sum / count;\n averagePoints.push([xValue, average]);\n\n sum -= lastValue;\n continue;\n }\n }\n\n averagePoints.push([xValue, null]);\n }\n\n return averagePoints.slice(0, end + 1);\n}\n\nexport default calculateMovingAverage;\n","import { MIN_MOVING_AVERAGE_PERIOD } from '../constants';\nimport calculateMovingAverage from './calculate-moving-average';\n\nfunction movingAverageTrendline(context) {\n var options = context.options;\n\n var data = getData(context);\n if (data) {\n return Object.assign({}, options,\n\n {type: 'line',\n data: data,\n categoryField: 'category',\n field: 'value'});\n }\n\n return null;\n}\n\nvar valueGetter = function (fieldName) { return function (ref) {\n var categoryIx = ref.categoryIx;\n var valueFields = ref.valueFields;\n\n return ({ xValue: categoryIx, yValue: valueFields[fieldName] });\n; } };\n\nfunction calculatePoints(ref) {\n var options = ref.options;\n var categoryAxis = ref.categoryAxis;\n var seriesValues = ref.seriesValues;\n\n var period = (options.trendline || {}).period || MIN_MOVING_AVERAGE_PERIOD;\n var totalRange = categoryAxis.totalRangeIndices();\n var currentRange = categoryAxis.currentRangeIndices();\n var range = {\n min: Math.floor(Math.max(currentRange.min - period, totalRange.min)),\n max: Math.ceil(Math.min(currentRange.max + period + 2, totalRange.max))\n };\n\n return calculateMovingAverage(seriesValues(range), valueGetter(options.field), period);\n}\n\nfunction getData(context) {\n var categoryAxis = context.categoryAxis;\n var points = calculatePoints(context);\n var data = [];\n points.forEach(function (ref) {\n var categoryIx = ref[0];\n var value = ref[1];\n\n data[categoryIx] = {\n category: categoryAxis.categoryAt(categoryIx, true),\n value: value\n };\n });\n\n if (data.length > 0) {\n return data;\n }\n\n return null;\n}\n\nexport default movingAverageTrendline;\n","import { Matrix } from '../../common';\n\nvar MIN_ORDER = 1;\nvar MAX_ORDER = 6;\n\nfunction calculatePolynomial(sourceValues, valueGetter, order) {\n var k = Math.min(Math.max(order || MIN_ORDER, MIN_ORDER), MAX_ORDER) + 1;\n var X = new Matrix();\n var Y = new Matrix();\n var count = 0;\n var xMin = Number.MAX_VALUE;\n var xMax = Number.MIN_VALUE;\n var valueMapper = function (x) { return x; };\n var coefficients = [];\n\n for (var i = 0; i < sourceValues.length; i++) {\n var value = sourceValues[i];\n var ref = valueGetter(value);\n var xValue = ref.xValue;\n var yValue = ref.yValue;\n\n if (isFinite(xValue) && xValue !== null && isFinite(yValue) && yValue !== null) {\n xMin = Math.min(xValue, xMin);\n xMax = Math.max(xValue, xMax);\n count++;\n\n // Set Y value in matrix\n Y.set(i, 0, yValue);\n\n // Set indicator column to 1 for valid values\n X.set(i, 0, 1);\n X.set(i, 1, xValue);\n for (var pow = 2; pow <= k; pow++) {\n X.set(i, pow, Math.pow(X.get(i, 1), pow));\n }\n } else {\n // Set indicator column to 0 for missing values\n X.set(i, 0, 0);\n }\n }\n\n // Limit order to number of values.\n X.width = Math.min(k, count);\n\n if (count > 0) {\n // Polynomial trendline equation:\n // y = aN * x^N + ... + a2 * x^2 + a1 * x + a0\n coefficients = linearRegression(X, Y);\n valueMapper = function (x) { return coefficients.reduce(function (y, a, n) { return y + a * Math.pow(x, n); }, 0); };\n }\n\n return {\n coefficients: coefficients,\n count: count,\n valueMapper: valueMapper,\n xMin: xMin,\n xMax: xMax\n };\n}\n\nfunction linearRegression(X, Y) {\n var Xt = X.transpose();\n var B = Xt.multiply(X).inverse().multiply(Xt).multiply(Y); // the last square estimate of the coefficients\n\n var coefficients = [];\n for (var i = 0; i < B.height; i++) {\n coefficients.push(B.get(i, 0));\n }\n\n // y_intercept and regression coefficients ('slopes')\n return coefficients;\n\n // It's possible to calculate statistics for the regression based on\n // the LINEST function implementation in kendo-spreadsheet-common/src/calc.js\n //\n // * The standard errors (of coefficients and y-intercept)\n // * The coefficient of determination (R^2)\n // * The standard error for the y estimate\n // * The F statistic\n // * The degrees of freedom\n // * The regression sum of squares (SSR)\n // * The residual sum of squares (SSE)\n}\n\nexport default calculatePolynomial;\n","import getTrendlineData from './get-trendline-data';\nimport calculatePolynomial from './calculate-polynomial';\n\nfunction polynomialTrendline(context) {\n var options = context.options;\n var categoryAxis = context.categoryAxis;\n var seriesValues = context.seriesValues;\n\n var data = getData({ seriesValues: seriesValues, categoryAxis: categoryAxis, options: options });\n if (data) {\n return Object.assign({}, options,\n\n {type: 'line',\n data: data,\n categoryField: 'category',\n field: 'value'});\n }\n\n return null;\n}\n\nvar valueGetter = function (fieldName) { return function (ref) {\n var categoryIx = ref.categoryIx;\n var valueFields = ref.valueFields;\n\n return ({ xValue: categoryIx + 1, yValue: valueFields[fieldName] });\n; } };\n\nfunction getData(ref) {\n var seriesValues = ref.seriesValues;\n var categoryAxis = ref.categoryAxis;\n var options = ref.options;\n\n var order = (options.trendline || {}).order;\n var ref$1 = calculatePolynomial(seriesValues(), valueGetter(options.field), order);\n var count = ref$1.count;\n var valueMapper = ref$1.valueMapper;\n\n if (count > 0) {\n // Polynomial trendline equation:\n // y = aN * x^N + ... + a2 * x^2 + a1 * x + a0\n\n return getTrendlineData(function (x) { return valueMapper(x); }, categoryAxis);\n }\n\n return null;\n}\n\nexport default polynomialTrendline;\n","import calculateSlope from './calculate-slope';\nimport checkAllPositive from './check-all-positive';\nimport getTrendlineData from './get-trendline-data';\n\nfunction powerTrendline(context) {\n var options = context.options;\n var categoryAxis = context.categoryAxis;\n var seriesValues = context.seriesValues;\n\n var data = getData({ seriesValues: seriesValues, categoryAxis: categoryAxis, options: options });\n if (data) {\n return Object.assign({}, options,\n\n {type: 'line',\n data: data,\n categoryField: 'category',\n field: 'value'});\n }\n\n return null;\n}\n\nvar valueGetter = function (fieldName) { return function (ref) {\n var categoryIx = ref.categoryIx;\n var valueFields = ref.valueFields;\n\n return ({ xValue: Math.log(categoryIx + 1), yValue: Math.log(valueFields[fieldName]) });\n; } };\n\nfunction getData(ref) {\n var seriesValues = ref.seriesValues;\n var categoryAxis = ref.categoryAxis;\n var options = ref.options;\n\n var sourceValues = seriesValues();\n if (!checkAllPositive(sourceValues, options.field)) {\n return null;\n }\n\n var ref$1 = calculateSlope(sourceValues, valueGetter(options.field));\n var slope = ref$1.slope;\n var intercept = ref$1.intercept;\n var count = ref$1.count;\n if (count > 0) {\n // Power trendline equation:\n // y = a * x ^ b\n var a = Math.exp(intercept);\n var b = slope;\n\n return getTrendlineData(function (x) { return a * Math.pow(x, b); }, categoryAxis);\n }\n\n return null;\n}\n\nexport default powerTrendline;\n","import {\n TRENDLINE_EXPONENTIAL,\n TRENDLINE_LINEAR,\n TRENDLINE_LOGARITHMIC,\n TRENDLINE_MOVING_AVERAGE,\n TRENDLINE_POLYNOMIAL,\n TRENDLINE_POWER\n} from '../constants';\nimport exponentialTrendline from './exponential-trendline';\nimport linearTrendline from './linear-trendline';\nimport logarithmicTrendline from './logarithmic-trendline';\nimport movingAverageTrendline from './moving-average';\nimport polynomialTrendline from './polynomial-trendline';\nimport powerTrendline from './power-trendline';\n\nvar registry = {};\nregistry[TRENDLINE_EXPONENTIAL] = exponentialTrendline;\nregistry[TRENDLINE_LINEAR] = linearTrendline;\nregistry[TRENDLINE_LOGARITHMIC] = logarithmicTrendline;\nregistry[TRENDLINE_MOVING_AVERAGE] = movingAverageTrendline;\nregistry[TRENDLINE_POLYNOMIAL] = polynomialTrendline;\nregistry[TRENDLINE_POWER] = powerTrendline;\n\nexport default registry;\n","import PlotAreaBase from './plotarea-base';\nimport AxisGroupRangeTracker from '../axis-group-range-tracker';\nimport PlotAreaEventsMixin from '../mixins/plotarea-events-mixin';\nimport SeriesAggregator from '../aggregates/series-aggregator';\nimport DefaultAggregates from '../aggregates/default-aggregates';\nimport SeriesBinder from '../series-binder';\nimport BarChart from '../bar-chart/bar-chart';\nimport RangeBarChart from '../range-bar-chart/range-bar-chart';\nimport BulletChart from '../bullet-chart/bullet-chart';\nimport LineChart from '../line-chart/line-chart';\nimport AreaChart from '../area-chart/area-chart';\nimport RangeAreaChart from '../range-area-chart/range-area-chart';\nimport OHLCChart from '../ohlc-chart/ohlc-chart';\nimport CandlestickChart from '../candlestick-chart/candlestick-chart';\nimport BoxPlotChart from '../box-plot-chart/box-plot-chart';\nimport WaterfallChart from '../waterfall-chart/waterfall-chart';\nimport trendlineFactory from '../trendlines/trendline-factory';\nimport trendlineRegistry from '../trendlines/trendline-registry';\n\nimport { CategoryAxis, DateCategoryAxis, NumericAxis, LogarithmicAxis, Point } from '../../core';\n\nimport { appendIfNotNull, categoriesCount, createOutOfRangePoints, equalsIgnoreCase, filterSeriesByType,\n isDateAxis, parseDateCategory, singleItemOrArray } from '../utils';\n\nimport { BAR, COLUMN, BULLET, VERTICAL_BULLET, LINE, VERTICAL_LINE, AREA, VERTICAL_AREA,\n RANGE_AREA, VERTICAL_RANGE_AREA, RANGE_COLUMN, RANGE_BAR, WATERFALL, HORIZONTAL_WATERFALL,\n BOX_PLOT, VERTICAL_BOX_PLOT, OHLC, CANDLESTICK, LOGARITHMIC, STEP, EQUALLY_SPACED_SERIES, RADAR_LINE, RADAR_AREA } from '../constants';\n\nimport { DATE, MAX_VALUE } from '../../common/constants';\nimport { setDefaultOptions, inArray, deepExtend, defined, eventElement, grep, cycleIndex, hasOwnProperty } from '../../common';\n\nvar AREA_SERIES = [ AREA, VERTICAL_AREA, RANGE_AREA, VERTICAL_RANGE_AREA ];\nvar OUT_OF_RANGE_SERIES = [ LINE, VERTICAL_LINE ].concat(AREA_SERIES);\n\nvar CategoricalPlotArea = (function (PlotAreaBase) {\n function CategoricalPlotArea () {\n PlotAreaBase.apply(this, arguments);\n }\n\n if ( PlotAreaBase ) CategoricalPlotArea.__proto__ = PlotAreaBase;\n CategoricalPlotArea.prototype = Object.create( PlotAreaBase && PlotAreaBase.prototype );\n CategoricalPlotArea.prototype.constructor = CategoricalPlotArea;\n\n CategoricalPlotArea.prototype.initFields = function initFields (series) {\n var this$1 = this;\n\n this.namedCategoryAxes = {};\n this.namedValueAxes = {};\n this.valueAxisRangeTracker = new AxisGroupRangeTracker();\n this._seriesPointsCache = {};\n this._currentPointsCache = {};\n\n if (series.length > 0) {\n this.invertAxes = inArray(\n series[0].type, [ BAR, BULLET, VERTICAL_LINE, VERTICAL_AREA, VERTICAL_RANGE_AREA,\n RANGE_BAR, HORIZONTAL_WATERFALL, VERTICAL_BOX_PLOT ]\n );\n\n for (var i = 0; i < series.length; i++) {\n var stack = series[i].stack;\n if (stack && stack.type === \"100%\") {\n this$1.stack100 = true;\n break;\n }\n }\n }\n };\n\n CategoricalPlotArea.prototype.render = function render (panes) {\n if ( panes === void 0 ) panes = this.panes;\n\n this.series = [].concat( this.originalSeries );\n this.createCategoryAxes(panes);\n\n this.aggregateCategories(panes);\n this.createTrendlineSeries(panes);\n\n this.createCategoryAxesLabels(panes);\n this.createCharts(panes);\n this.createValueAxes(panes);\n };\n\n CategoricalPlotArea.prototype.removeAxis = function removeAxis (axis) {\n var axisName = axis.options.name;\n\n PlotAreaBase.prototype.removeAxis.call(this, axis);\n\n if (axis instanceof CategoryAxis) {\n delete this.namedCategoryAxes[axisName];\n } else {\n this.valueAxisRangeTracker.reset(axisName);\n delete this.namedValueAxes[axisName];\n }\n\n if (axis === this.categoryAxis) {\n delete this.categoryAxis;\n }\n\n if (axis === this.valueAxis) {\n delete this.valueAxis;\n }\n };\n\n CategoricalPlotArea.prototype.trendlineFactory = function trendlineFactory$1 (options, series) {\n var categoryAxis = this.seriesCategoryAxis(options);\n var seriesValues = this.seriesValues.bind(this, series.index);\n\n var trendline = trendlineFactory(trendlineRegistry, options.type, {\n options: options,\n categoryAxis: categoryAxis,\n seriesValues: seriesValues\n });\n\n if (trendline) {\n // Inherit settings\n trendline.categoryAxis = series.categoryAxis;\n trendline.valueAxis = series.valueAxis;\n\n return this.filterSeries(trendline, categoryAxis);\n }\n\n return trendline;\n };\n\n CategoricalPlotArea.prototype.trendlineAggregateForecast = function trendlineAggregateForecast () {\n return this.series\n .map(function (series) { return (series.trendline || {}).forecast; })\n .filter(function (forecast) { return forecast !== undefined; })\n .reduce(function (result, forecast) { return ({\n before: Math.max(result.before, forecast.before || 0),\n after: Math.max(result.after, forecast.after || 0)\n }); }, { before: 0, after: 0 });\n };\n\n CategoricalPlotArea.prototype.seriesValues = function seriesValues (seriesIx, range) {\n var this$1 = this;\n\n var result = [];\n\n var series = this.srcSeries[seriesIx];\n var categoryAxis = this.seriesCategoryAxis(series);\n var dateAxis = equalsIgnoreCase(categoryAxis.options.type, DATE);\n if (dateAxis) {\n this._seriesPointsCache = {};\n this._currentPointsCache = {};\n categoryAxis.options.dataItems = [];\n series = this.aggregateSeries(series, categoryAxis, categoryAxis.totalRangeIndices());\n }\n\n var min = range ? range.min : 0;\n var max = range ? range.max : series.data.length;\n for (var categoryIx = min; categoryIx < max; categoryIx++) {\n var data = this$1.bindPoint(series, categoryIx);\n result.push({ categoryIx: categoryIx, category: data.fields.category, valueFields: data.valueFields });\n }\n\n return result;\n };\n\n CategoricalPlotArea.prototype.createCharts = function createCharts (panes) {\n var this$1 = this;\n\n var seriesByPane = this.groupSeriesByPane();\n\n for (var i = 0; i < panes.length; i++) {\n var pane = panes[i];\n var paneSeries = seriesByPane[pane.options.name || \"default\"] || [];\n this$1.addToLegend(paneSeries);\n\n var visibleSeries = this$1.filterVisibleSeries(paneSeries);\n if (!visibleSeries) {\n continue;\n }\n\n var groups = this$1.groupSeriesByCategoryAxis(visibleSeries);\n for (var groupIx = 0; groupIx < groups.length; groupIx++) {\n this$1.createChartGroup(groups[groupIx], pane);\n }\n }\n };\n\n CategoricalPlotArea.prototype.createChartGroup = function createChartGroup (series, pane) {\n this.createAreaChart(\n filterSeriesByType(series, [ AREA, VERTICAL_AREA ]), pane\n );\n\n this.createRangeAreaChart(\n filterSeriesByType(series, [ RANGE_AREA, VERTICAL_RANGE_AREA ]), pane\n );\n\n this.createBarChart(\n filterSeriesByType(series, [ COLUMN, BAR ]), pane\n );\n\n this.createRangeBarChart(\n filterSeriesByType(series, [ RANGE_COLUMN, RANGE_BAR ]), pane\n );\n\n this.createBulletChart(\n filterSeriesByType(series, [ BULLET, VERTICAL_BULLET ]), pane\n );\n\n this.createCandlestickChart(\n filterSeriesByType(series, CANDLESTICK), pane\n );\n\n this.createBoxPlotChart(\n filterSeriesByType(series, [ BOX_PLOT, VERTICAL_BOX_PLOT ]), pane\n );\n\n this.createOHLCChart(\n filterSeriesByType(series, OHLC), pane\n );\n\n this.createWaterfallChart(\n filterSeriesByType(series, [ WATERFALL, HORIZONTAL_WATERFALL ]), pane\n );\n\n this.createLineChart(\n filterSeriesByType(series, [ LINE, VERTICAL_LINE ]), pane\n );\n };\n\n CategoricalPlotArea.prototype.aggregateCategories = function aggregateCategories (panes) {\n var this$1 = this;\n\n var series = [].concat( this.series );\n var processedSeries = [];\n this._currentPointsCache = {};\n this._seriesPointsCache = this._seriesPointsCache || {};\n\n for (var i = 0; i < series.length; i++) {\n var currentSeries = series[i];\n\n if (!this$1.isTrendline(currentSeries)) {\n var categoryAxis = this$1.seriesCategoryAxis(currentSeries);\n var axisPane = this$1.findPane(categoryAxis.options.pane);\n var dateAxis = equalsIgnoreCase(categoryAxis.options.type, DATE);\n\n if ((dateAxis || currentSeries.categoryField) && inArray(axisPane, panes)) {\n currentSeries = this$1.aggregateSeries(currentSeries, categoryAxis, categoryAxis.currentRangeIndices());\n } else {\n currentSeries = this$1.filterSeries(currentSeries, categoryAxis);\n }\n }\n\n processedSeries.push(currentSeries);\n }\n\n this._seriesPointsCache = this._currentPointsCache;\n this._currentPointsCache = null;\n\n this.srcSeries = series;\n this.series = processedSeries;\n };\n\n CategoricalPlotArea.prototype.filterSeries = function filterSeries (series, categoryAxis) {\n var dataLength = (series.data || {}).length;\n categoryAxis._seriesMax = Math.max(categoryAxis._seriesMax || 0, dataLength);\n\n if (!(defined(categoryAxis.options.min) || defined(categoryAxis.options.max))) {\n return series;\n }\n\n var range = categoryAxis.currentRangeIndices();\n var outOfRangePoints = inArray(series.type, OUT_OF_RANGE_SERIES);\n var currentSeries = deepExtend({}, series);\n\n currentSeries.data = (currentSeries.data || []).slice(range.min, range.max + 1);\n\n if (outOfRangePoints) {\n createOutOfRangePoints(currentSeries, range, dataLength, function (idx) { return ({\n item: series.data[idx],\n category: categoryAxis.categoryAt(idx, true),\n categoryIx: idx - range.min\n }); }, function (idx) { return defined(series.data[idx]); });\n }\n\n return currentSeries;\n };\n\n CategoricalPlotArea.prototype.clearSeriesPointsCache = function clearSeriesPointsCache () {\n this._seriesPointsCache = {};\n };\n\n CategoricalPlotArea.prototype.seriesSourcePoints = function seriesSourcePoints (series, categoryAxis) {\n var this$1 = this;\n\n var key = (series.index) + \";\" + (categoryAxis.categoriesHash());\n if (this._seriesPointsCache && this._seriesPointsCache[key]) {\n this._currentPointsCache[key] = this._seriesPointsCache[key];\n return this._seriesPointsCache[key];\n }\n\n var axisOptions = categoryAxis.options;\n var srcCategories = axisOptions.srcCategories;\n var dateAxis = equalsIgnoreCase(axisOptions.type, DATE);\n var srcData = series.data;\n var result = [];\n if (!dateAxis) {\n categoryAxis.indexCategories();\n }\n\n for (var idx = 0; idx < srcData.length; idx++) {\n var category = SeriesBinder.current.bindPoint(series, idx).fields.category;\n if (dateAxis) {\n category = parseDateCategory(category, srcData[idx], this$1.chartService.intl);\n }\n\n if (!defined(category)) {\n category = srcCategories[idx];\n }\n\n if (defined(category) && category !== null) {\n var categoryIx = categoryAxis.totalIndex(category);\n result[categoryIx] = result[categoryIx] || { items: [], category: category };\n result[categoryIx].items.push(idx);\n }\n }\n\n this._currentPointsCache[key] = result;\n\n return result;\n };\n\n CategoricalPlotArea.prototype.aggregateSeries = function aggregateSeries (series, categoryAxis, range) {\n var srcData = series.data;\n if (!srcData.length) {\n return series;\n }\n\n var srcPoints = this.seriesSourcePoints(series, categoryAxis);\n var result = deepExtend({}, series);\n var aggregator = new SeriesAggregator(deepExtend({}, series), SeriesBinder.current, DefaultAggregates.current);\n var data = result.data = [];\n\n var dataItems = categoryAxis.options.dataItems || [];\n\n var categoryItem = function (idx) {\n var categoryIdx = idx - range.min;\n var point = srcPoints[idx];\n if (!point) {\n point = srcPoints[idx] = {};\n }\n\n point.categoryIx = categoryIdx;\n\n if (!point.item) {\n var category = categoryAxis.categoryAt(idx, true);\n point.category = category;\n point.item = aggregator.aggregatePoints(point.items, category);\n }\n\n return point;\n };\n\n for (var idx = range.min; idx <= range.max; idx++) {\n var point = categoryItem(idx);\n data[point.categoryIx] = point.item;\n\n if (point.items && point.items.length) {\n dataItems[point.categoryIx] = point.item;\n }\n }\n\n if (inArray(result.type, OUT_OF_RANGE_SERIES)) {\n createOutOfRangePoints(result, range, categoryAxis.totalCount(), categoryItem, function (idx) { return srcPoints[idx]; });\n }\n\n categoryAxis.options.dataItems = dataItems;\n\n return result;\n };\n\n CategoricalPlotArea.prototype.appendChart = function appendChart (chart, pane) {\n var series = chart.options.series;\n var categoryAxis = this.seriesCategoryAxis(series[0]);\n var categories = categoryAxis.options.categories;\n var categoriesToAdd = Math.max(0, categoriesCount(series) - categories.length);\n\n if (categoriesToAdd > 0) {//consider setting an option to axis instead of adding fake categories\n categories = categoryAxis.options.categories = categoryAxis.options.categories.slice(0);\n while (categoriesToAdd--) {\n categories.push(\"\");\n }\n }\n\n this.valueAxisRangeTracker.update(chart.valueAxisRanges);\n\n PlotAreaBase.prototype.appendChart.call(this, chart, pane);\n };\n\n // TODO: Refactor, optionally use series.pane option\n CategoricalPlotArea.prototype.seriesPaneName = function seriesPaneName (series) {\n var options = this.options;\n var axisName = series.axis;\n var axisOptions = [].concat(options.valueAxis);\n var axis = grep(axisOptions, function(a) { return a.name === axisName; })[0];\n var panes = options.panes || [ {} ];\n var defaultPaneName = (panes[0] || {}).name || \"default\";\n var paneName = (axis || {}).pane || defaultPaneName;\n\n return paneName;\n };\n\n CategoricalPlotArea.prototype.seriesCategoryAxis = function seriesCategoryAxis (series) {\n var axisName = series.categoryAxis;\n var axis = axisName ? this.namedCategoryAxes[axisName] : this.categoryAxis;\n\n if (!axis) {\n throw new Error(\"Unable to locate category axis with name \" + axisName);\n }\n\n return axis;\n };\n\n CategoricalPlotArea.prototype.stackableChartOptions = function stackableChartOptions (series, pane) {\n var anyStackedSeries = series.some(function (s) { return s.stack; });\n var isStacked100 = series.some(function (s) { return s.stack && s.stack.type === \"100%\"; });\n var clip = pane.options.clip;\n\n return {\n defaultStack: series[0].stack,\n isStacked: anyStackedSeries,\n isStacked100: isStacked100,\n clip: clip\n };\n };\n\n CategoricalPlotArea.prototype.groupSeriesByCategoryAxis = function groupSeriesByCategoryAxis (series) {\n var categoryAxes = [];\n var unique = {};\n for (var idx = 0; idx < series.length; idx++) {\n var name = series[idx].categoryAxis || \"$$default$$\";\n if (!hasOwnProperty(unique, name)) {\n unique[name] = true;\n categoryAxes.push(name);\n }\n }\n\n var groups = [];\n for (var axisIx = 0; axisIx < categoryAxes.length; axisIx++) {\n var axis = categoryAxes[axisIx];\n var axisSeries = groupSeries(series, axis, axisIx);\n if (axisSeries.length === 0) {\n continue;\n }\n\n groups.push(axisSeries);\n }\n\n return groups;\n };\n\n CategoricalPlotArea.prototype.createBarChart = function createBarChart (series, pane) {\n if (series.length === 0) {\n return;\n }\n\n var firstSeries = series[0];\n var barChart = new BarChart(this, Object.assign({\n series: series,\n invertAxes: this.invertAxes,\n gap: firstSeries.gap,\n spacing: firstSeries.spacing\n }, this.stackableChartOptions(series, pane)));\n\n this.appendChart(barChart, pane);\n };\n\n CategoricalPlotArea.prototype.createRangeBarChart = function createRangeBarChart (series, pane) {\n if (series.length === 0) {\n return;\n }\n\n var firstSeries = series[0];\n var rangeColumnChart = new RangeBarChart(this, {\n series: series,\n invertAxes: this.invertAxes,\n gap: firstSeries.gap,\n spacing: firstSeries.spacing\n });\n\n this.appendChart(rangeColumnChart, pane);\n };\n\n CategoricalPlotArea.prototype.createBulletChart = function createBulletChart (series, pane) {\n if (series.length === 0) {\n return;\n }\n\n var firstSeries = series[0];\n var bulletChart = new BulletChart(this, {\n series: series,\n invertAxes: this.invertAxes,\n gap: firstSeries.gap,\n spacing: firstSeries.spacing,\n clip: pane.options.clip\n });\n\n this.appendChart(bulletChart, pane);\n };\n\n CategoricalPlotArea.prototype.createLineChart = function createLineChart (series, pane) {\n if (series.length === 0) {\n return;\n }\n\n var lineChart = new LineChart(this, Object.assign({\n invertAxes: this.invertAxes,\n series: series\n }, this.stackableChartOptions(series, pane)));\n\n this.appendChart(lineChart, pane);\n };\n\n CategoricalPlotArea.prototype.createAreaChart = function createAreaChart (series, pane) {\n if (series.length === 0) {\n return;\n }\n\n var areaChart = new AreaChart(this, Object.assign({\n invertAxes: this.invertAxes,\n series: series\n }, this.stackableChartOptions(series, pane)));\n\n this.appendChart(areaChart, pane);\n };\n\n CategoricalPlotArea.prototype.createRangeAreaChart = function createRangeAreaChart (series, pane) {\n if (series.length === 0) {\n return;\n }\n\n var rangeAreaChart = new RangeAreaChart(this, {\n invertAxes: this.invertAxes,\n series: series,\n clip: pane.options.clip\n });\n\n this.appendChart(rangeAreaChart, pane);\n };\n\n CategoricalPlotArea.prototype.createOHLCChart = function createOHLCChart (series, pane) {\n if (series.length === 0) {\n return;\n }\n\n var firstSeries = series[0];\n var chart = new OHLCChart(this, {\n invertAxes: this.invertAxes,\n gap: firstSeries.gap,\n series: series,\n spacing: firstSeries.spacing,\n clip: pane.options.clip\n });\n\n this.appendChart(chart, pane);\n };\n\n CategoricalPlotArea.prototype.createCandlestickChart = function createCandlestickChart (series, pane) {\n if (series.length === 0) {\n return;\n }\n\n var firstSeries = series[0];\n var chart = new CandlestickChart(this, {\n invertAxes: this.invertAxes,\n gap: firstSeries.gap,\n series: series,\n spacing: firstSeries.spacing,\n clip: pane.options.clip\n });\n\n this.appendChart(chart, pane);\n };\n\n CategoricalPlotArea.prototype.createBoxPlotChart = function createBoxPlotChart (series, pane) {\n if (series.length === 0) {\n return;\n }\n\n var firstSeries = series[0];\n var chart = new BoxPlotChart(this, {\n invertAxes: this.invertAxes,\n gap: firstSeries.gap,\n series: series,\n spacing: firstSeries.spacing,\n clip: pane.options.clip\n });\n\n this.appendChart(chart, pane);\n };\n\n CategoricalPlotArea.prototype.createWaterfallChart = function createWaterfallChart (series, pane) {\n if (series.length === 0) {\n return;\n }\n\n var firstSeries = series[0];\n var waterfallChart = new WaterfallChart(this, {\n series: series,\n invertAxes: this.invertAxes,\n gap: firstSeries.gap,\n spacing: firstSeries.spacing\n });\n\n this.appendChart(waterfallChart, pane);\n };\n\n CategoricalPlotArea.prototype.axisRequiresRounding = function axisRequiresRounding (categoryAxisName, categoryAxisIndex) {\n var this$1 = this;\n\n var centeredSeries = filterSeriesByType(this.series, EQUALLY_SPACED_SERIES);\n\n for (var seriesIx = 0; seriesIx < this.series.length; seriesIx++) {\n var currentSeries = this$1.series[seriesIx];\n if (inArray(currentSeries.type, AREA_SERIES)) {\n var line = currentSeries.line;\n if (line && line.style === STEP) {\n centeredSeries.push(currentSeries);\n }\n }\n }\n\n for (var seriesIx$1 = 0; seriesIx$1 < centeredSeries.length; seriesIx$1++) {\n var seriesAxis = centeredSeries[seriesIx$1].categoryAxis || \"\";\n if (seriesAxis === categoryAxisName || (!seriesAxis && categoryAxisIndex === 0)) {\n return true;\n }\n }\n };\n\n CategoricalPlotArea.prototype.aggregatedAxis = function aggregatedAxis (categoryAxisName, categoryAxisIndex) {\n var series = this.series;\n\n for (var seriesIx = 0; seriesIx < series.length; seriesIx++) {\n var seriesAxis = series[seriesIx].categoryAxis || \"\";\n if ((seriesAxis === categoryAxisName || (!seriesAxis && categoryAxisIndex === 0)) && series[seriesIx].categoryField) {\n return true;\n }\n }\n };\n\n CategoricalPlotArea.prototype.createCategoryAxesLabels = function createCategoryAxesLabels () {\n var axes = this.axes;\n for (var i = 0; i < axes.length; i++) {\n if (axes[i] instanceof CategoryAxis) {\n axes[i].createLabels();\n }\n }\n };\n\n CategoricalPlotArea.prototype.createCategoryAxes = function createCategoryAxes (panes) {\n var this$1 = this;\n\n var invertAxes = this.invertAxes;\n var definitions = [].concat(this.options.categoryAxis);\n var axes = [];\n\n for (var i = 0; i < definitions.length; i++) {\n var axisOptions = definitions[i];\n var axisPane = this$1.findPane(axisOptions.pane);\n\n if (inArray(axisPane, panes)) {\n var name = axisOptions.name;\n var categories = axisOptions.categories; if ( categories === void 0 ) categories = [];\n axisOptions = deepExtend({\n vertical: invertAxes,\n reverse: !invertAxes && this$1.chartService.rtl,\n axisCrossingValue: invertAxes ? MAX_VALUE : 0\n }, axisOptions);\n\n if (!defined(axisOptions.justified)) {\n axisOptions.justified = this$1.isJustified();\n }\n\n if (this$1.axisRequiresRounding(name, i)) {\n axisOptions.justified = false;\n }\n\n var categoryAxis = (void 0);\n\n if (isDateAxis(axisOptions, categories[0])) {\n axisOptions._forecast = this$1.trendlineAggregateForecast();\n categoryAxis = new DateCategoryAxis(axisOptions, this$1.chartService);\n } else {\n categoryAxis = new CategoryAxis(axisOptions, this$1.chartService);\n }\n\n definitions[i].categories = categoryAxis.options.srcCategories;\n\n if (name) {\n if (this$1.namedCategoryAxes[name]) {\n throw new Error((\"Category axis with name \" + name + \" is already defined\"));\n }\n this$1.namedCategoryAxes[name] = categoryAxis;\n }\n\n categoryAxis.axisIndex = i;\n axes.push(categoryAxis);\n this$1.appendAxis(categoryAxis);\n }\n }\n\n var primaryAxis = this.categoryAxis || axes[0];\n this.categoryAxis = primaryAxis;\n\n if (invertAxes) {\n this.axisY = primaryAxis;\n } else {\n this.axisX = primaryAxis;\n }\n };\n\n CategoricalPlotArea.prototype.isJustified = function isJustified () {\n var series = this.series;\n\n for (var i = 0; i < series.length; i++) {\n var currentSeries = series[i];\n if (!inArray(currentSeries.type, AREA_SERIES)) {\n return false;\n }\n }\n\n return true;\n };\n\n CategoricalPlotArea.prototype.createValueAxes = function createValueAxes (panes) {\n var this$1 = this;\n\n var tracker = this.valueAxisRangeTracker;\n var defaultRange = tracker.query();\n var definitions = [].concat(this.options.valueAxis);\n var invertAxes = this.invertAxes;\n var baseOptions = { vertical: !invertAxes, reverse: invertAxes && this.chartService.rtl };\n var axes = [];\n\n if (this.stack100) {\n baseOptions.roundToMajorUnit = false;\n baseOptions.labels = { format: \"P0\" };\n }\n\n for (var i = 0; i < definitions.length; i++) {\n var axisOptions = definitions[i];\n var axisPane = this$1.findPane(axisOptions.pane);\n\n if (inArray(axisPane, panes)) {\n var name = axisOptions.name;\n var defaultAxisRange = equalsIgnoreCase(axisOptions.type, LOGARITHMIC) ? { min: 0.1, max: 1 } : { min: 0, max: 1 };\n var range = tracker.query(name) || defaultRange || defaultAxisRange;\n\n if (i === 0 && range && defaultRange) {\n range.min = Math.min(range.min, defaultRange.min);\n range.max = Math.max(range.max, defaultRange.max);\n }\n\n var axisType = (void 0);\n if (equalsIgnoreCase(axisOptions.type, LOGARITHMIC)) {\n axisType = LogarithmicAxis;\n } else {\n axisType = NumericAxis;\n }\n\n var valueAxis = new axisType(range.min, range.max,\n deepExtend({}, baseOptions, axisOptions),\n this$1.chartService\n );\n\n if (name) {\n if (this$1.namedValueAxes[name]) {\n throw new Error((\"Value axis with name \" + name + \" is already defined\"));\n }\n this$1.namedValueAxes[name] = valueAxis;\n }\n valueAxis.axisIndex = i;\n\n axes.push(valueAxis);\n this$1.appendAxis(valueAxis);\n }\n }\n\n var primaryAxis = this.valueAxis || axes[0];\n this.valueAxis = primaryAxis;\n\n if (invertAxes) {\n this.axisX = primaryAxis;\n } else {\n this.axisY = primaryAxis;\n }\n };\n\n CategoricalPlotArea.prototype._dispatchEvent = function _dispatchEvent (chart, e, eventType) {\n var coords = chart._eventCoordinates(e);\n var point = new Point(coords.x, coords.y);\n var pane = this.pointPane(point);\n var categories = [];\n var values = [];\n\n if (!pane) {\n return;\n }\n\n var allAxes = pane.axes;\n for (var i = 0; i < allAxes.length; i++) {\n var axis = allAxes[i];\n if (axis.getValue) {\n appendIfNotNull(values, axis.getValue(point));\n } else {\n appendIfNotNull(categories, axis.getCategory(point));\n }\n }\n\n if (categories.length === 0) {\n appendIfNotNull(categories, this.categoryAxis.getCategory(point));\n }\n\n if (categories.length > 0 && values.length > 0) {\n chart.trigger(eventType, {\n element: eventElement(e),\n originalEvent: e,\n category: singleItemOrArray(categories),\n value: singleItemOrArray(values)\n });\n }\n };\n\n CategoricalPlotArea.prototype.pointPane = function pointPane (point) {\n var panes = this.panes;\n\n for (var i = 0; i < panes.length; i++) {\n var currentPane = panes[i];\n if (currentPane.contentBox.containsPoint(point)) {\n return currentPane;\n }\n }\n };\n\n CategoricalPlotArea.prototype.updateAxisOptions = function updateAxisOptions$1 (axis, options) {\n updateAxisOptions(this.options, axis, options);\n updateAxisOptions(this.originalOptions, axis, options);\n };\n\n CategoricalPlotArea.prototype._pointsByVertical = function _pointsByVertical (basePoint, offset) {\n if ( offset === void 0 ) offset = 0;\n\n if (this.invertAxes) {\n return this._siblingsBySeriesIndex(basePoint.series.index, offset);\n }\n\n return this._siblingsByPointIndex(basePoint.getIndex());\n };\n\n CategoricalPlotArea.prototype._pointsByHorizontal = function _pointsByHorizontal (basePoint, offset) {\n if ( offset === void 0 ) offset = 0;\n\n if (this.invertAxes) {\n return this._siblingsByPointIndex(basePoint.getIndex());\n }\n\n var siblings = this._siblingsBySeriesIndex(basePoint.series.index, offset);\n\n if (this.chartService.rtl) {\n return siblings.reverse();\n }\n\n return siblings;\n };\n\n CategoricalPlotArea.prototype._siblingsByPointIndex = function _siblingsByPointIndex (pointIndex) {\n var this$1 = this;\n\n var charts = this.charts;\n var result = [];\n\n for (var i = 0; i < charts.length; i++) {\n var chart = charts[i];\n\n if (chart.pane && chart.pane.options.name === \"_navigator\") {\n continue;\n }\n\n var chartPoints = chart.points\n .filter(function (point) { return point && point.visible !== false && point.getIndex() === pointIndex; }\n );\n\n result.push.apply(result, chartPoints.sort(this$1._getSeriesCompareFn(chartPoints[0])));\n }\n\n return result;\n };\n\n CategoricalPlotArea.prototype._siblingsBySeriesIndex = function _siblingsBySeriesIndex (seriesIndex, offset) {\n var index = cycleIndex(seriesIndex + offset, this.series.length);\n\n return this.pointsBySeriesIndex(index);\n };\n\n CategoricalPlotArea.prototype._getSeriesCompareFn = function _getSeriesCompareFn (point) {\n var isStacked = this._isInStackedSeries(point);\n\n if (isStacked && this.invertAxes || !isStacked && !this.invertAxes) {\n return function (a, b) { return a.box.center().x - b.box.center().x; };\n }\n\n return function (a, b) { return a.box.center().y - b.box.center().y; };\n };\n\n CategoricalPlotArea.prototype._isInStackedSeries = function _isInStackedSeries (point) {\n var sortableSeries = inArray(point.series.type,\n [ AREA, VERTICAL_AREA, RANGE_AREA, VERTICAL_RANGE_AREA, LINE, VERTICAL_LINE, RADAR_LINE, RADAR_AREA]);\n\n var stackableSeries = inArray(point.series.type, [ COLUMN, BAR]);\n\n return sortableSeries || stackableSeries && point.options.isStacked;\n };\n\n return CategoricalPlotArea;\n}(PlotAreaBase));\n\nfunction updateAxisOptions(targetOptions, axis, options) {\n var axesOptions = axis instanceof CategoryAxis ? [].concat(targetOptions.categoryAxis) : [].concat(targetOptions.valueAxis);\n deepExtend(axesOptions[axis.axisIndex], options);\n}\n\nfunction groupSeries(series, axis, axisIx) {\n return grep(series, function(s) {\n return (axisIx === 0 && !s.categoryAxis) || (s.categoryAxis === axis);\n });\n}\n\nsetDefaultOptions(CategoricalPlotArea, {\n categoryAxis: {},\n valueAxis: {}\n});\n\ndeepExtend(CategoricalPlotArea.prototype, PlotAreaEventsMixin);\n\nexport default CategoricalPlotArea;\n","import Class from './class';\n\nvar Observable = (function (Class) {\n function Observable() {\n Class.call(this);\n\n this._events = {};\n }\n\n if ( Class ) Observable.__proto__ = Class;\n Observable.prototype = Object.create( Class && Class.prototype );\n Observable.prototype.constructor = Observable;\n\n Observable.prototype.bind = function bind (eventName, handlers, one) {\n var arguments$1 = arguments;\n var this$1 = this;\n\n var eventNames = getArray(eventName);\n var handlersIsFunction = isFunction(handlers);\n var length = eventNames.length;\n\n if (handlers === undefined) {\n for (var field in eventName) {\n this$1.bind(field, eventName[field]);\n }\n return this;\n }\n\n var loop = function ( idx ) {\n var eventName$1 = eventNames[idx];\n\n var handler = handlersIsFunction ? handlers : handlers[eventName$1];\n\n if (handler) {\n if (one) {\n var original = handler;\n handler = function () { // eslint-disable-line no-loop-func\n this$1.unbind(eventName$1, handler);\n original.apply(this$1, arguments$1);\n };\n handler.original = original;\n }\n var events = this$1._events[eventName$1] = this$1._events[eventName$1] || [];\n events.push(handler);\n }\n };\n\n for (var idx = 0; idx < length; idx++) loop( idx );\n\n return this;\n };\n\n Observable.prototype.one = function one (eventNames, handlers) {\n return this.bind(eventNames, handlers, true);\n };\n\n Observable.prototype.first = function first (eventName, handlers) {\n var this$1 = this;\n\n var eventNames = getArray(eventName);\n var handlersIsFunction = isFunction(handlers);\n\n for (var idx = 0, length = eventNames.length; idx < length; idx++) {\n var eventName$1 = eventNames[idx];\n\n var handler = handlersIsFunction ? handlers : handlers[eventName$1];\n\n if (handler) {\n var events = this$1._events[eventName$1] = this$1._events[eventName$1] || [];\n events.unshift(handler);\n }\n }\n\n return this;\n };\n\n Observable.prototype.trigger = function trigger (eventName, e) {\n var this$1 = this;\n if ( e === void 0 ) e = {};\n\n var events = this._events[eventName];\n\n if (events) {\n var length = events.length;\n\n e.sender = this;\n e._defaultPrevented = false;\n e.preventDefault = preventDefault;\n e.isDefaultPrevented = isDefaultPrevented;\n\n events = events.slice();\n\n for (var idx = 0; idx < length; idx++) {\n events[idx].call(this$1, e);\n }\n\n return e._defaultPrevented === true;\n }\n\n return false;\n };\n\n Observable.prototype.unbind = function unbind (eventName, handler) {\n var events = this._events[eventName];\n\n if (eventName === undefined) {\n this._events = {};\n } else if (events) {\n if (handler) {\n for (var idx = events.length - 1; idx >= 0; idx--) {\n if (events[idx] === handler || events[idx].original === handler) {\n events.splice(idx, 1);\n }\n }\n } else {\n this._events[eventName] = [];\n }\n }\n\n return this;\n };\n\n return Observable;\n}(Class));\n\nfunction isFunction(value) {\n return typeof value === \"function\";\n}\n\nfunction getArray(value) {\n return typeof value === \"string\" ? [ value ] : value;\n}\n\nfunction preventDefault() {\n this._defaultPrevented = true;\n}\n\nfunction isDefaultPrevented() {\n return this._defaultPrevented === true;\n}\n\nexport default Observable;","import Group from '../shapes/group';\nimport Point from '../geometry/point';\nimport { Observable } from '../common';\nimport { eventElement, eventCoordinates, elementPadding, elementScale, elementSize, elementOffset } from '../util';\n\nvar events = [\n \"click\",\n \"mouseenter\",\n \"mouseleave\",\n \"mousemove\",\n \"resize\"\n];\n\nvar Surface = (function (Observable) {\n function Surface(element, options) {\n Observable.call(this);\n\n this.options = Object.assign({}, options);\n this.element = element;\n this.element._kendoExportVisual = this.exportVisual.bind(this);\n\n this._click = this._handler(\"click\");\n this._mouseenter = this._handler(\"mouseenter\");\n this._mouseleave = this._handler(\"mouseleave\");\n this._mousemove = this._handler(\"mousemove\");\n\n this._visual = new Group();\n\n elementSize(element, this.options);\n\n this.bind(events, this.options);\n\n this._enableTracking();\n }\n\n if ( Observable ) Surface.__proto__ = Observable;\n Surface.prototype = Object.create( Observable && Observable.prototype );\n Surface.prototype.constructor = Surface;\n\n Surface.prototype.draw = function draw (element) {\n this._visual.children.push(element);\n };\n\n Surface.prototype.clear = function clear () {\n this._visual.children = [];\n };\n\n Surface.prototype.destroy = function destroy () {\n this._visual = null;\n this.element._kendoExportVisual = null;\n this.unbind();\n };\n\n Surface.prototype.eventTarget = function eventTarget (e) {\n var this$1 = this;\n\n var domNode = eventElement(e);\n var node;\n\n while (!node && domNode) {\n node = domNode._kendoNode;\n if (domNode === this$1.element) {\n break;\n }\n\n domNode = domNode.parentElement;\n }\n\n if (node) {\n return node.srcElement;\n }\n };\n\n Surface.prototype.exportVisual = function exportVisual () {\n return this._visual;\n };\n\n Surface.prototype.getSize = function getSize () {\n return elementSize(this.element);\n };\n\n Surface.prototype.currentSize = function currentSize (size) {\n if (size) {\n this._size = size;\n } else {\n return this._size;\n }\n };\n\n Surface.prototype.setSize = function setSize (size) {\n elementSize(this.element, size);\n\n this.currentSize(size);\n this._resize();\n };\n\n Surface.prototype.resize = function resize (force) {\n var size = this.getSize();\n var currentSize = this.currentSize();\n\n if (force || (size.width > 0 || size.height > 0) && (!currentSize || size.width !== currentSize.width || size.height !== currentSize.height)) {\n this.currentSize(size);\n this._resize(size, force);\n this.trigger(\"resize\", size);\n }\n };\n\n Surface.prototype.size = function size (value) {\n if (!value) {\n return this.getSize();\n }\n\n this.setSize(value);\n };\n\n Surface.prototype.suspendTracking = function suspendTracking () {\n this._suspendedTracking = true;\n };\n\n Surface.prototype.resumeTracking = function resumeTracking () {\n this._suspendedTracking = false;\n };\n\n Surface.prototype._enableTracking = function _enableTracking () {};\n\n Surface.prototype._resize = function _resize () {};\n\n Surface.prototype._handler = function _handler (eventName) {\n var this$1 = this;\n\n return function (e) {\n var node = this$1.eventTarget(e);\n if (node && !this$1._suspendedTracking) {\n this$1.trigger(eventName, {\n element: node,\n originalEvent: e,\n type: eventName\n });\n }\n };\n };\n\n Surface.prototype._elementOffset = function _elementOffset () {\n var element = this.element;\n var padding = elementPadding(element);\n var ref = elementOffset(element);\n var left = ref.left;\n var top = ref.top;\n\n return {\n left: left + padding.left,\n top: top + padding.top\n };\n };\n\n Surface.prototype._surfacePoint = function _surfacePoint (e) {\n var offset = this._elementOffset();\n var coord = eventCoordinates(e);\n var x = coord.x - offset.left;\n var y = coord.y - offset.top;\n\n var inverseTransform = elementScale(this.element).invert();\n var point = new Point(\n x,\n y\n ).transform(inverseTransform);\n\n return point;\n };\n\n return Surface;\n}(Observable));\n\nexport default Surface;\n","import { Class } from '../common';\n\nvar BaseNode = (function (Class) {\n function BaseNode(srcElement) {\n Class.call(this);\n\n this.childNodes = [];\n this.parent = null;\n\n if (srcElement) {\n this.srcElement = srcElement;\n this.observe();\n }\n }\n\n if ( Class ) BaseNode.__proto__ = Class;\n BaseNode.prototype = Object.create( Class && Class.prototype );\n BaseNode.prototype.constructor = BaseNode;\n\n BaseNode.prototype.destroy = function destroy () {\n var this$1 = this;\n\n if (this.srcElement) {\n this.srcElement.removeObserver(this);\n }\n\n var children = this.childNodes;\n for (var i = 0; i < children.length; i++) {\n this$1.childNodes[i].destroy();\n }\n\n this.parent = null;\n };\n\n BaseNode.prototype.load = function load () {};\n\n BaseNode.prototype.observe = function observe () {\n if (this.srcElement) {\n this.srcElement.addObserver(this);\n }\n };\n\n BaseNode.prototype.append = function append (node) {\n this.childNodes.push(node);\n node.parent = this;\n };\n\n BaseNode.prototype.insertAt = function insertAt (node, pos) {\n this.childNodes.splice(pos, 0, node);\n node.parent = this;\n };\n\n BaseNode.prototype.remove = function remove (index, count) {\n var this$1 = this;\n\n var end = index + count;\n for (var i = index; i < end; i++) {\n this$1.childNodes[i].removeSelf();\n }\n this.childNodes.splice(index, count);\n };\n\n BaseNode.prototype.removeSelf = function removeSelf () {\n this.clear();\n this.destroy();\n };\n\n BaseNode.prototype.clear = function clear () {\n this.remove(0, this.childNodes.length);\n };\n\n BaseNode.prototype.invalidate = function invalidate () {\n if (this.parent) {\n this.parent.invalidate();\n }\n };\n\n BaseNode.prototype.geometryChange = function geometryChange () {\n this.invalidate();\n };\n\n BaseNode.prototype.optionsChange = function optionsChange () {\n this.invalidate();\n };\n\n BaseNode.prototype.childrenChange = function childrenChange (e) {\n if (e.action === \"add\") {\n this.load(e.items, e.index);\n } else if (e.action === \"remove\") {\n this.remove(e.index, e.items.length);\n }\n\n this.invalidate();\n };\n\n return BaseNode;\n}(Class));\n\nexport default BaseNode;","import { defined } from '../../util';\n\nexport default function renderAttr(name, value) {\n return (defined(value) && value !== null) ? (\" \" + name + \"=\\\"\" + value + \"\\\" \") : \"\";\n}","import renderAttr from './render-attribute';\n\nexport default function renderAllAttr(attrs) {\n var output = \"\";\n for (var i = 0; i < attrs.length; i++) {\n output += renderAttr(attrs[i][0], attrs[i][1]);\n }\n\n return output;\n}","import { defined } from '../../util';\n\nexport default function renderStyle(attrs) {\n var output = \"\";\n for (var i = 0; i < attrs.length; i++) {\n var value = attrs[i][1];\n if (defined(value)) {\n output += attrs[i][0] + \":\" + value + \";\";\n }\n }\n\n if (output !== \"\") {\n return output;\n }\n}","var NODE_MAP = {};\n\nexport default NODE_MAP;","/**\n * @hidden\n */\nexport var isWindowAvailable = function () {\n return typeof window !== 'undefined';\n};\n","/* tslint:disable:object-literal-sort-keys max-line-length */\nimport { isWindowAvailable } from './util';\nvar agentRxs = {\n wp: /(Windows Phone(?: OS)?)\\s(\\d+)\\.(\\d+(\\.\\d+)?)/,\n fire: /(Silk)\\/(\\d+)\\.(\\d+(\\.\\d+)?)/,\n android: /(Android|Android.*(?:Opera|Firefox).*?\\/)\\s*(\\d+)(\\.(\\d+(\\.\\d+)?))?/,\n iphone: /(iPhone|iPod).*OS\\s+(\\d+)[\\._]([\\d\\._]+)/,\n ipad: /(iPad).*OS\\s+(\\d+)[\\._]([\\d_]+)/,\n meego: /(MeeGo).+NokiaBrowser\\/(\\d+)\\.([\\d\\._]+)/,\n webos: /(webOS)\\/(\\d+)\\.(\\d+(\\.\\d+)?)/,\n blackberry: /(BlackBerry|BB10).*?Version\\/(\\d+)\\.(\\d+(\\.\\d+)?)/,\n playbook: /(PlayBook).*?Tablet\\s*OS\\s*(\\d+)\\.(\\d+(\\.\\d+)?)/,\n windows: /(MSIE)\\s+(\\d+)\\.(\\d+(\\.\\d+)?)/,\n tizen: /(tizen).*?Version\\/(\\d+)\\.(\\d+(\\.\\d+)?)/i,\n sailfish: /(sailfish).*rv:(\\d+)\\.(\\d+(\\.\\d+)?).*firefox/i,\n ffos: /(Mobile).*rv:(\\d+)\\.(\\d+(\\.\\d+)?).*Firefox/\n};\nvar osRxs = {\n ios: /^i(phone|pad|pod)$/i,\n android: /^android|fire$/i,\n blackberry: /^blackberry|playbook/i,\n windows: /windows/,\n wp: /wp/,\n flat: /sailfish|ffos|tizen/i,\n meego: /meego/\n};\nvar desktopBrowserRxs = {\n edge: /(edge)[ \\/]([\\w.]+)/i,\n webkit: /(chrome)[ \\/]([\\w.]+)/i,\n safari: /(webkit)[ \\/]([\\w.]+)/i,\n opera: /(opera)(?:.*version|)[ \\/]([\\w.]+)/i,\n msie: /(msie\\s|trident.*? rv:)([\\w.]+)/i,\n mozilla: /(mozilla)(?:.*? rv:([\\w.]+)|)/i\n};\nvar mobileBrowserRxs = {\n omini: /Opera\\sMini/i,\n omobile: /Opera\\sMobi/i,\n firefox: /Firefox|Fennec/i,\n mobilesafari: /version\\/.*safari/i,\n ie: /MSIE|Windows\\sPhone/i,\n chrome: /chrome|crios/i,\n webkit: /webkit/i\n};\nvar testRx = function (agent, rxs, dflt) {\n for (var rx in rxs) {\n if (rxs.hasOwnProperty(rx) && rxs[rx].test(agent)) {\n return rx;\n }\n }\n return dflt !== undefined ? dflt : agent;\n};\n/**\n * A function that detects the mobile browser based on the given UserAgent.\n *\n * @param ua - The user agent string.\n * @returns - A browser info object containing the browser type and version.\n *\n * @example\n * ```ts-no-run\n * const userAgent = 'Mozilla/5.0 (Linux; Android 8.0.0) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Focus/1.3 Chrome/61.0.3163.81 Mobile Safari/537.36';\n * detectMobileOS(userAgent); // { android: true };\n * ```\n */\nexport var detectMobileOS = function (ua) {\n var minorVersion;\n var match = [];\n for (var agent in agentRxs) {\n if (agentRxs.hasOwnProperty(agent)) {\n match = ua.match(agentRxs[agent]);\n if (!match) {\n continue;\n }\n if (agent === 'windows' && 'plugins' in window.navigator) {\n return null;\n } // Break if not Metro/Mobile Windows\n var os = {};\n os.device = agent;\n os.browser = testRx(ua, mobileBrowserRxs, 'default');\n os.name = testRx(agent, osRxs);\n os[os.name] = true;\n os.majorVersion = match[2];\n os.minorVersion = match[3] ? match[3].replace('_', '.') : '.0';\n minorVersion = os.minorVersion.replace('.', '').substr(0, 2);\n os.flatVersion = os.majorVersion + minorVersion +\n (new Array(3 - (minorVersion.length < 3 ? minorVersion.length : 2)).join('0'));\n os.cordova = typeof window.PhoneGap !== undefined\n || typeof window.cordova !== undefined; // Use file protocol to detect appModes.\n os.appMode = window.navigator.standalone\n || (/file|local|wmapp/).test(window.location.protocol)\n || os.cordova; // Use file protocol to detect appModes.\n return os;\n }\n }\n return null;\n};\n/**\n * A function that detects the desktop browser based on the given UserAgent.\n *\n * @param ua - The user agent string.\n * @returns - A browser info object containing the browser type and version.\n *\n * @example\n * ```ts-no-run\n * const userAgent = 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_3) AppleWebKit/535.19 (KHTML, like Gecko) Chrome/18.0.1025.151 Safari/535.19';\n * detectDesktopBrowser(userAgent); // { chrome: true, webkit: true };\n * ```\n */\nexport var detectDesktopBrowser = function (ua) {\n var browserInfo = null;\n var match = [];\n for (var agent in desktopBrowserRxs) {\n if (desktopBrowserRxs.hasOwnProperty(agent)) {\n match = ua.match(desktopBrowserRxs[agent]);\n if (match) {\n browserInfo = {};\n browserInfo[agent] = true;\n browserInfo[match[1].toLowerCase().split(' ')[0].split('/')[0]] = true;\n browserInfo.version = parseInt(document.documentMode || match[2], 10);\n break;\n }\n }\n }\n return browserInfo;\n};\nvar userAgent = isWindowAvailable() && window.navigator ? window.navigator.userAgent : null;\n/**\n * A constant holding the desktop browser info. The variable persists the result of the detectDesktopBrowser(window.navigator.userAgent) call.\n * If no desktop browser is detected, the constant will be `null`.\n */\nexport var browser = userAgent ? detectDesktopBrowser(userAgent) : null;\n/**\n * A constant holding the mobile OS info. The variable persists the result of the detectMobileOS(window.navigator.userAgent) call.\n * If no mobile OS is detected, the constant will be `null`.\n */\nexport var mobileOS = userAgent ? detectMobileOS(userAgent) : null;\n/**\n * A constant reporting the browser `touch` events support.\n */\nexport var touch = isWindowAvailable() && 'ontouchstart' in window;\n/**\n * @hidden\n * A constant reporting the browser `msPointers` events support.\n */\nexport var msPointers = browser && !browser.chrome && window.MSPointerEvent;\n/**\n * A constant reporting the browser `pointers` events support.\n */\nexport var pointers = browser && !browser.chrome && window.PointerEvent;\n/**\n * A constant reporting whether the browser is touch enabled.\n */\nexport var touchEnabled = mobileOS && (touch || msPointers || pointers);\n","import { fieldList } from './field-list';\nvar getterCache = {};\n// tslint:disable-next-line:no-string-literal\ngetterCache['undefined'] = function (obj) { return obj; };\n/**\n * @hidden\n */\nexport function getter(field) {\n if (getterCache[field]) {\n return getterCache[field];\n }\n var fields = fieldList(field);\n getterCache[field] = function (obj) {\n var result = obj;\n for (var idx = 0; idx < fields.length && result; idx++) {\n result = result[fields[idx]];\n }\n return result;\n };\n return getterCache[field];\n}\n","var reComment = /\\/\\*[\\s\\S]*?\\*\\//g;\n/*\n([^\\s:;]+?)\\s*:\\s* # Property name and colon\n(\n (?:\n (?: # Begin alternation\n url\\( # Match 'url('\n \\s*\n (?:\n (?:[^\"')\\\\]|\\\\.)* # Content inside url(), excluding quotes and closing parenthesis\n |\n \"(?:[^\"\\\\]|\\\\.)*\" # Double-quoted strings, handling escaped characters\n |\n '(?:[^'\\\\]|\\\\.)*' # Single-quoted strings, handling escaped characters\n )\n \\s*\n \\)\n |\n \"(?:[^\"\\\\]|\\\\.)*\" # Double-quoted strings, handling escaped characters\n |\n '(?:[^'\\\\]|\\\\.)*' # Single-quoted strings, handling escaped characters\n |\n [^;\"'] # Any character except ';', double or single quotes\n )*? # Repeat zero or more times, non-greedy\n \\s*\n )\n)\n(?=;|$) # Lookahead for ';' or end of string\n*/\nvar reDeclaration = /([^\\s:;]+?)\\s*:\\s*((?:(?:url\\(\\s*(?:(?:[^\"')\\\\]|\\\\.)*|\"(?:[^\"\\\\]|\\\\.)*\"|'(?:[^'\\\\]|\\\\.)*')\\s*\\)|\"(?:[^\"\\\\]|\\\\.)*\"|'(?:[^'\\\\]|\\\\.)*'|[^;\"'])*?)\\s*)(?=;|$)/gi;\nvar reDoubleQuoted = /"|"|"/gi;\nvar reSingleQuoted = /'|'|'/gi;\nvar doubleQuote = '\"';\nvar singleQuote = \"'\";\nvar empty = '';\nfunction replaceQuoteEntities(str) {\n return str.replace(reDoubleQuoted, doubleQuote)\n .replace(reSingleQuoted, singleQuote);\n}\n/**\n * Parse inline styles string into object.\n *\n * @param styleString - inline styles string\n * @returns object with styles\n */\nexport function parseInlineStyles(styleString) {\n var styleObject = {};\n var input = replaceQuoteEntities((styleString || empty).replace(reComment, empty));\n var match = reDeclaration.exec(input), property, value;\n while (match !== null) {\n property = match[1].trim();\n value = match[2].trim();\n styleObject[property] = value;\n match = reDeclaration.exec(input);\n }\n return styleObject;\n}\n","import { parseInlineStyles } from '@progress/kendo-common';\r\n\r\nexport var setStyle = function (element, styleString) {\r\n var styles = parseInlineStyles(styleString);\r\n Object.keys(styles).forEach(function (key) {\r\n element.style[key] = styles[key];\r\n });\r\n};\r\n\r\nvar styleAttr = 'data-style';\r\nexport var replaceStyleAttr = function (html) { return (html || '').replace(/\\sstyle=/g, ' ' + styleAttr + '='); };\r\nexport var restoreStyleAttr = function (container) {\r\n Array.from(container.querySelectorAll('[' + styleAttr +']')).forEach(function (element) {\r\n var styleString = element.getAttribute(styleAttr);\r\n element.removeAttribute(styleAttr);\r\n setStyle(element, styleString);\r\n });\r\n};\r\n\r\nexport var setInnerHTML = function (container, html) {\r\n container.innerHTML = replaceStyleAttr(html);\r\n restoreStyleAttr(container);\r\n};\r\n","var SVG_NS = \"http://www.w3.org/2000/svg\";\nvar NONE = \"none\";\nvar POINT_DIGITS = 3;\n\nexport { SVG_NS, NONE, POINT_DIGITS };","import { replaceStyleAttr, restoreStyleAttr, setInnerHTML } from '../../util/element-set-styles-safe';\nimport { SVG_NS } from '../constants';\n\nvar renderSVG = function(container, svg) {\n setInnerHTML(container, svg);\n};\n\nif (typeof document !== \"undefined\") {\n var testFragment = \"\";\n var testContainer = document.createElement(\"div\");\n var hasParser = typeof DOMParser !== \"undefined\";\n\n testContainer.innerHTML = testFragment;\n\n if (hasParser && testContainer.firstChild.namespaceURI !== SVG_NS) {\n renderSVG = function(container, svg) {\n var parser = new DOMParser();\n var chartDoc = parser.parseFromString(replaceStyleAttr(svg), \"text/xml\");\n restoreStyleAttr(chartDoc);\n var importedDoc = document.adoptNode(chartDoc.documentElement);\n\n container.innerHTML = \"\";\n container.appendChild(importedDoc);\n };\n }\n}\n\nexport default renderSVG;\n","var ampRegExp = /&/g;\nvar ltRegExp = //g;\n\nexport default function htmlEncode(value) {\n return String(value).replace(ampRegExp, \"&\").replace(ltRegExp, \"<\").replace(gtRegExp, \">\").replace(quoteRegExp, \""\").replace(aposRegExp, \"'\");\n}","import BaseNode from '../core/base-node';\nimport renderAllAttr from './utils/render-all-attributes';\nimport renderAttr from './utils/render-attribute';\nimport renderStyle from './utils/render-style';\nimport NODE_MAP from './node-map';\nimport renderSVG from './utils/render-svg';\nimport { SVG_NS, NONE } from './constants';\nimport { support, htmlEncode } from '../common';\nimport { defined } from '../util';\nimport { PATTERN } from '../core/constants';\n\nvar TRANSFORM = \"transform\";\nvar DefinitionMap = {\n clip: \"clip-path\",\n fill: \"fill\"\n};\n\nfunction isDefinition(type, value) {\n return type === \"clip\" || (type === \"fill\" && (!value || value.nodeType === \"Gradient\" || value.nodeType === PATTERN));\n}\n\nfunction baseUrl() {\n var base = document.getElementsByTagName(\"base\")[0];\n var href = document.location.href;\n var url = \"\";\n\n if (base && !(support.browser || {}).msie) {\n var hashIndex = href.indexOf(\"#\");\n if (hashIndex !== -1) {\n href = href.substring(0, hashIndex);\n }\n\n url = href;\n }\n\n return url;\n}\n\nvar Node = (function (BaseNode) {\n function Node(srcElement, options) {\n BaseNode.call(this, srcElement);\n this.definitions = {};\n\n this.options = options;\n }\n\n if ( BaseNode ) Node.__proto__ = BaseNode;\n Node.prototype = Object.create( BaseNode && BaseNode.prototype );\n Node.prototype.constructor = Node;\n\n Node.prototype.destroy = function destroy () {\n if (this.element) {\n this.element._kendoNode = null;\n this.element = null;\n }\n\n this.clearDefinitions();\n BaseNode.prototype.destroy.call(this);\n };\n\n Node.prototype.load = function load (elements, pos) {\n var this$1 = this;\n\n for (var i = 0; i < elements.length; i++) {\n var srcElement = elements[i];\n var children = srcElement.children;\n\n var childNode = new NODE_MAP[srcElement.nodeType](srcElement, this$1.options);\n\n if (defined(pos)) {\n this$1.insertAt(childNode, pos);\n } else {\n this$1.append(childNode);\n }\n\n childNode.createDefinitions();\n\n if (children && children.length > 0) {\n childNode.load(children);\n }\n\n var element = this$1.element;\n if (element) {\n childNode.attachTo(element, pos);\n }\n }\n };\n\n Node.prototype.root = function root () {\n var root = this;\n\n while (root.parent) {\n root = root.parent;\n }\n\n return root;\n };\n\n Node.prototype.attachTo = function attachTo (domElement, pos) {\n var container = document.createElement(\"div\");\n renderSVG(container,\n \"\" +\n this.render() +\n \"\"\n );\n\n var element = container.firstChild.firstChild;\n if (element) {\n if (defined(pos)) {\n domElement.insertBefore(element, domElement.childNodes[pos] || null);\n } else {\n domElement.appendChild(element);\n }\n this.setElement(element);\n }\n };\n\n Node.prototype.setElement = function setElement (element) {\n if (this.element) {\n this.element._kendoNode = null;\n }\n\n this.element = element;\n this.element._kendoNode = this;\n\n var nodes = this.childNodes;\n for (var i = 0; i < nodes.length; i++) {\n var childElement = element.childNodes[i];\n nodes[i].setElement(childElement);\n }\n };\n\n Node.prototype.clear = function clear () {\n this.clearDefinitions();\n\n if (this.element) {\n this.element.innerHTML = \"\";\n }\n\n var children = this.childNodes;\n for (var i = 0; i < children.length; i++) {\n children[i].destroy();\n }\n\n this.childNodes = [];\n };\n\n Node.prototype.removeSelf = function removeSelf () {\n if (this.element) {\n var parentNode = this.element.parentNode;\n if (parentNode) {\n parentNode.removeChild(this.element);\n }\n this.element = null;\n }\n\n BaseNode.prototype.removeSelf.call(this);\n };\n\n Node.prototype.template = function template () {\n return this.renderChildren();\n };\n\n Node.prototype.render = function render () {\n return this.template();\n };\n\n Node.prototype.renderChildren = function renderChildren () {\n var nodes = this.childNodes;\n var output = \"\";\n\n for (var i = 0; i < nodes.length; i++) {\n output += nodes[i].render();\n }\n\n return output;\n };\n\n Node.prototype.optionsChange = function optionsChange (e) {\n var field = e.field;\n var value = e.value;\n\n if (field === \"visible\") {\n this.css(\"display\", value ? \"\" : NONE);\n } else if (DefinitionMap[field] && isDefinition(field, value)) {\n this.updateDefinition(field, value);\n } else if (field === \"opacity\") {\n this.attr(\"opacity\", value);\n } else if (field === \"cursor\") {\n this.css(\"cursor\", value);\n } else if (field === \"id\") {\n if (value) {\n this.attr(\"id\", value);\n } else {\n this.removeAttr(\"id\");\n }\n }\n\n BaseNode.prototype.optionsChange.call(this, e);\n };\n\n Node.prototype.accessibilityOptionsChange = function accessibilityOptionsChange (e) {\n var field = e.field;\n var value = e.value;\n\n\n if (field === \"role\") {\n if (value) {\n this.attr(\"role\", value);\n } else {\n this.removeAttr(\"role\");\n }\n } else if (field === \"ariaLabel\") {\n if (value) {\n this.attr(\"aria-label\", htmlEncode(value));\n } else {\n this.removeAttr(\"aria-label\");\n }\n } else if (field === \"ariaRoleDescription\") {\n if (value) {\n this.attr(\"aria-roledescription\", htmlEncode(value));\n } else {\n this.removeAttr(\"aria-roledescription\");\n }\n } else if (field === \"ariaChecked\") {\n if (defined(value)) {\n this.attr(\"aria-checked\", value);\n } else {\n this.removeAttr(\"aria-checked\");\n }\n } else if (field === \"className\") {\n this.className(value);\n }\n };\n\n Node.prototype.attr = function attr (name, value) {\n if (this.element) {\n this.element.setAttribute(name, value);\n }\n };\n\n Node.prototype.allAttr = function allAttr (attrs) {\n var this$1 = this;\n\n for (var i = 0; i < attrs.length; i++) {\n this$1.attr(attrs[i][0], attrs[i][1]);\n }\n };\n\n Node.prototype.toggleAttr = function toggleAttr (name, value) {\n if (value) {\n this.attr(name, value);\n } else {\n this.removeAttr(name);\n }\n };\n\n Node.prototype.css = function css (name, value) {\n if (this.element) {\n this.element.style[name] = value;\n }\n };\n\n Node.prototype.allCss = function allCss (styles) {\n var this$1 = this;\n\n for (var i = 0; i < styles.length; i++) {\n this$1.css(styles[i][0], styles[i][1]);\n }\n };\n\n Node.prototype.className = function className (value) {\n var this$1 = this;\n\n if (this.element) {\n (ref = this.element.classList).remove.apply(ref, this.element.classList);\n value.split(\" \").forEach(function (item) {\n this$1.element.classList.add(item);\n });\n }\n var ref;\n };\n\n Node.prototype.removeAttr = function removeAttr (name) {\n if (this.element) {\n this.element.removeAttribute(name);\n }\n };\n\n Node.prototype.mapTransform = function mapTransform (transform) {\n var attrs = [];\n if (transform) {\n attrs.push([\n TRANSFORM,\n \"matrix(\" + transform.matrix().toString(6) + \")\"\n ]);\n }\n\n return attrs;\n };\n\n Node.prototype.renderTransform = function renderTransform () {\n return renderAllAttr(\n this.mapTransform(this.srcElement.transform())\n );\n };\n\n Node.prototype.transformChange = function transformChange (value) {\n if (value) {\n this.allAttr(this.mapTransform(value));\n } else {\n this.removeAttr(TRANSFORM);\n }\n };\n\n Node.prototype.mapStyle = function mapStyle () {\n var options = this.srcElement.options;\n var style = [ [ \"cursor\", options.cursor ] ];\n\n if (options.visible === false) {\n style.push([ \"display\", NONE ]);\n }\n\n return style;\n };\n\n Node.prototype.renderStyle = function renderStyle$1 () {\n return renderAttr(\"style\", renderStyle(this.mapStyle(true)));\n };\n\n Node.prototype.renderOpacity = function renderOpacity () {\n return renderAttr(\"opacity\", this.srcElement.options.opacity);\n };\n\n Node.prototype.renderId = function renderId () {\n return renderAttr(\"id\", this.srcElement.options.id);\n };\n\n Node.prototype.renderClassName = function renderClassName () {\n return renderAttr(\"class\", this.srcElement.options.className);\n };\n\n Node.prototype.renderRole = function renderRole () {\n return renderAttr(\"role\", this.srcElement.options.role);\n };\n\n Node.prototype.renderAriaLabel = function renderAriaLabel () {\n var value = this.srcElement.options.ariaLabel;\n if (value) {\n value = htmlEncode(value);\n }\n return renderAttr(\"aria-label\", value);\n };\n\n Node.prototype.renderAriaRoleDescription = function renderAriaRoleDescription () {\n var value = this.srcElement.options.ariaRoleDescription;\n if (value) {\n value = htmlEncode(value);\n }\n return renderAttr(\"aria-roledescription\", value);\n };\n\n Node.prototype.renderAriaChecked = function renderAriaChecked () {\n return renderAttr(\"aria-checked\", this.srcElement.options.ariaChecked);\n };\n\n Node.prototype.createDefinitions = function createDefinitions () {\n var srcElement = this.srcElement;\n var definitions = this.definitions;\n if (srcElement) {\n var options = srcElement.options;\n var hasDefinitions;\n\n for (var field in DefinitionMap) {\n var definition = options.get(field);\n if (definition && isDefinition(field, definition)) {\n definitions[field] = definition;\n hasDefinitions = true;\n }\n }\n if (hasDefinitions) {\n this.definitionChange({\n action: \"add\",\n definitions: definitions\n });\n }\n }\n };\n\n Node.prototype.definitionChange = function definitionChange (e) {\n if (this.parent) {\n this.parent.definitionChange(e);\n }\n };\n\n Node.prototype.updateDefinition = function updateDefinition (type, value) {\n var definitions = this.definitions;\n var current = definitions[type];\n var attr = DefinitionMap[type];\n var definition = {};\n if (current) {\n definition[type] = current;\n this.definitionChange({\n action: \"remove\",\n definitions: definition\n });\n delete definitions[type];\n }\n\n if (!value) {\n if (current) {\n this.removeAttr(attr);\n }\n } else {\n definition[type] = value;\n this.definitionChange({\n action: \"add\",\n definitions: definition\n });\n definitions[type] = value;\n this.attr(attr, this.refUrl(value.id));\n }\n };\n\n Node.prototype.clearDefinitions = function clearDefinitions () {\n var definitions = this.definitions;\n\n this.definitionChange({\n action: \"remove\",\n definitions: definitions\n });\n this.definitions = {};\n };\n\n Node.prototype.renderDefinitions = function renderDefinitions () {\n return renderAllAttr(this.mapDefinitions());\n };\n\n Node.prototype.mapDefinitions = function mapDefinitions () {\n var this$1 = this;\n\n var definitions = this.definitions;\n var attrs = [];\n\n for (var field in definitions) {\n attrs.push([ DefinitionMap[field], this$1.refUrl(definitions[field].id) ]);\n }\n\n return attrs;\n };\n\n Node.prototype.refUrl = function refUrl (id) {\n var skipBaseHref = (this.options || {}).skipBaseHref;\n var baseHref = this.baseUrl().replace(/'/g, \"\\\\'\");\n var base = skipBaseHref ? '' : baseHref;\n return (\"url(\" + base + \"#\" + id + \")\");\n };\n\n Node.prototype.baseUrl = function baseUrl$1 () {\n return baseUrl();\n };\n\n return Node;\n}(BaseNode));\n\nexport default Node;\n","import Node from './node';\nimport renderAttr from './utils/render-attribute';\n\nvar GradientStopNode = (function (Node) {\n function GradientStopNode () {\n Node.apply(this, arguments);\n }\n\n if ( Node ) GradientStopNode.__proto__ = Node;\n GradientStopNode.prototype = Object.create( Node && Node.prototype );\n GradientStopNode.prototype.constructor = GradientStopNode;\n\n GradientStopNode.prototype.template = function template () {\n return (\"\");\n };\n\n GradientStopNode.prototype.renderOffset = function renderOffset () {\n return renderAttr(\"offset\", this.srcElement.offset());\n };\n\n GradientStopNode.prototype.mapStyle = function mapStyle () {\n var srcElement = this.srcElement;\n return [\n [ \"stop-color\", srcElement.color() ],\n [ \"stop-opacity\", srcElement.opacity() ]\n ];\n };\n\n GradientStopNode.prototype.optionsChange = function optionsChange (e) {\n if (e.field === \"offset\") {\n this.attr(e.field, e.value);\n } else if (e.field === \"color\" || e.field === \"opacity\") {\n this.css(\"stop-\" + e.field, e.value);\n }\n };\n\n return GradientStopNode;\n}(Node));\n\nexport default GradientStopNode;","import GradientStopNode from './gradient-stop-node';\nimport BaseNode from '../core/base-node';\nimport Node from './node';\nimport renderAllAttr from './utils/render-all-attributes';\n\nvar GradientNode = (function (Node) {\n function GradientNode(srcElement) {\n Node.call(this, srcElement);\n\n this.id = srcElement.id;\n\n this.loadStops();\n }\n\n if ( Node ) GradientNode.__proto__ = Node;\n GradientNode.prototype = Object.create( Node && Node.prototype );\n GradientNode.prototype.constructor = GradientNode;\n\n GradientNode.prototype.loadStops = function loadStops () {\n var this$1 = this;\n\n var stops = this.srcElement.stops;\n var element = this.element;\n\n for (var idx = 0; idx < stops.length; idx++) {\n var stopNode = new GradientStopNode(stops[idx]);\n this$1.append(stopNode);\n if (element) {\n stopNode.attachTo(element);\n }\n }\n };\n\n GradientNode.prototype.optionsChange = function optionsChange (e) {\n if (e.field === \"gradient.stops\") {\n BaseNode.prototype.clear.call(this);\n this.loadStops();\n } else if (e.field === \"gradient\") {\n this.allAttr(this.mapCoordinates());\n }\n };\n\n GradientNode.prototype.renderCoordinates = function renderCoordinates () {\n return renderAllAttr(this.mapCoordinates());\n };\n\n GradientNode.prototype.mapSpace = function mapSpace () {\n return [ \"gradientUnits\", this.srcElement.userSpace() ? \"userSpaceOnUse\" : \"objectBoundingBox\" ];\n };\n\n return GradientNode;\n}(Node));\n\nexport default GradientNode;","import GradientNode from './gradient-node';\n\nvar LinearGradientNode = (function (GradientNode) {\n function LinearGradientNode () {\n GradientNode.apply(this, arguments);\n }\n\n if ( GradientNode ) LinearGradientNode.__proto__ = GradientNode;\n LinearGradientNode.prototype = Object.create( GradientNode && GradientNode.prototype );\n LinearGradientNode.prototype.constructor = LinearGradientNode;\n\n LinearGradientNode.prototype.template = function template () {\n return (\"\" + (this.renderChildren()) + \"\");\n };\n\n LinearGradientNode.prototype.mapCoordinates = function mapCoordinates () {\n var srcElement = this.srcElement;\n var start = srcElement.start();\n var end = srcElement.end();\n var attrs = [\n [ \"x1\", start.x ],\n [ \"y1\", start.y ],\n [ \"x2\", end.x ],\n [ \"y2\", end.y ],\n this.mapSpace()\n ];\n\n return attrs;\n };\n\n return LinearGradientNode;\n}(GradientNode));\n\nexport default LinearGradientNode;","import GradientNode from './gradient-node';\n\nvar RadialGradientNode = (function (GradientNode) {\n function RadialGradientNode () {\n GradientNode.apply(this, arguments);\n }\n\n if ( GradientNode ) RadialGradientNode.__proto__ = GradientNode;\n RadialGradientNode.prototype = Object.create( GradientNode && GradientNode.prototype );\n RadialGradientNode.prototype.constructor = RadialGradientNode;\n\n RadialGradientNode.prototype.template = function template () {\n return (\"\" + (this.renderChildren()) + \"\");\n };\n\n RadialGradientNode.prototype.mapCoordinates = function mapCoordinates () {\n var srcElement = this.srcElement;\n var center = srcElement.center();\n var radius = srcElement.radius();\n var attrs = [\n [ \"cx\", center.x ],\n [ \"cy\", center.y ],\n [ \"r\", radius ],\n this.mapSpace()\n ];\n return attrs;\n };\n\n return RadialGradientNode;\n}(GradientNode));\n\nexport default RadialGradientNode;","import Node from './node';\n\nexport var PatternNode = (function (Node) {\n function PatternNode(pattern) {\n Node.call(this, pattern);\n\n this.id = pattern.id;\n this.load(pattern.children);\n }\n\n if ( Node ) PatternNode.__proto__ = Node;\n PatternNode.prototype = Object.create( Node && Node.prototype );\n PatternNode.prototype.constructor = PatternNode;\n\n PatternNode.prototype.template = function template () {\n var width = this.srcElement.size().getWidth();\n var height = this.srcElement.size().getHeight();\n\n return \"\" +\n \"\" + (this.renderChildren()) +\n \"\";\n };\n\n return PatternNode;\n}(Node));\n","import Node from './node';\nimport renderAttr from './utils/render-attribute';\n\nvar ClipNode = (function (Node) {\n function ClipNode(srcElement) {\n Node.call(this);\n\n this.srcElement = srcElement;\n this.id = srcElement.id;\n\n this.load([ srcElement ]);\n }\n\n if ( Node ) ClipNode.__proto__ = Node;\n ClipNode.prototype = Object.create( Node && Node.prototype );\n ClipNode.prototype.constructor = ClipNode;\n\n ClipNode.prototype.renderClipRule = function renderClipRule () {\n return renderAttr(\"clip-rule\", \"evenodd\");\n };\n ClipNode.prototype.template = function template () {\n return (\"\" + (this.renderChildren()) + \"\");\n };\n\n return ClipNode;\n}(Node));\n\nexport default ClipNode;","import LinearGradient from '../gradients/linear-gradient';\nimport RadialGradient from '../gradients/radial-gradient';\nimport LinearGradientNode from './linear-gradient-node';\nimport RadialGradientNode from './radial-gradient-node';\nimport { PatternNode } from './pattern-node';\nimport Node from './node';\nimport ClipNode from './clip-node';\nimport { PATTERN } from '../core/constants';\n\nvar DefinitionNode = (function (Node) {\n function DefinitionNode() {\n Node.call(this);\n this.definitionMap = {};\n }\n\n if ( Node ) DefinitionNode.__proto__ = Node;\n DefinitionNode.prototype = Object.create( Node && Node.prototype );\n DefinitionNode.prototype.constructor = DefinitionNode;\n\n DefinitionNode.prototype.attachTo = function attachTo (domElement) {\n this.element = domElement;\n };\n\n DefinitionNode.prototype.template = function template () {\n return (\"\" + (this.renderChildren()) + \"\");\n };\n\n DefinitionNode.prototype.definitionChange = function definitionChange (e) {\n var definitions = e.definitions;\n var action = e.action;\n\n if (action === \"add\") {\n this.addDefinitions(definitions);\n } else if (action === \"remove\") {\n this.removeDefinitions(definitions);\n }\n };\n\n DefinitionNode.prototype.createDefinition = function createDefinition (type, item) {\n var nodeType;\n if (type === \"clip\") {\n nodeType = ClipNode;\n } else if (type === \"fill\") {\n if (item instanceof LinearGradient) {\n nodeType = LinearGradientNode;\n } else if (item instanceof RadialGradient) {\n nodeType = RadialGradientNode;\n } else if (item.nodeType === PATTERN) {\n nodeType = PatternNode;\n }\n }\n return new nodeType(item);\n };\n\n DefinitionNode.prototype.addDefinitions = function addDefinitions (definitions) {\n var this$1 = this;\n\n for (var field in definitions) {\n this$1.addDefinition(field, definitions[field]);\n }\n };\n\n DefinitionNode.prototype.addDefinition = function addDefinition (type, srcElement) {\n var ref = this;\n var element = ref.element;\n var definitionMap = ref.definitionMap;\n var id = srcElement.id;\n var mapItem = definitionMap[id];\n if (!mapItem) {\n var node = this.createDefinition(type, srcElement);\n definitionMap[id] = {\n element: node,\n count: 1\n };\n this.append(node);\n if (element) {\n node.attachTo(this.element);\n }\n } else {\n mapItem.count++;\n }\n };\n\n DefinitionNode.prototype.removeDefinitions = function removeDefinitions (definitions) {\n var this$1 = this;\n\n for (var field in definitions) {\n this$1.removeDefinition(definitions[field]);\n }\n };\n\n DefinitionNode.prototype.removeDefinition = function removeDefinition (srcElement) {\n var definitionMap = this.definitionMap;\n var id = srcElement.id;\n var mapItem = definitionMap[id];\n\n if (mapItem) {\n mapItem.count--;\n if (mapItem.count === 0) {\n this.remove(this.childNodes.indexOf(mapItem.element), 1);\n delete definitionMap[id];\n }\n }\n };\n\n return DefinitionNode;\n}(Node));\n\nexport default DefinitionNode;","import BaseNode from '../core/base-node';\nimport Node from './node';\nimport DefinitionNode from './definition-node';\n\nvar RootNode = (function (Node) {\n function RootNode(options) {\n Node.call(this);\n this.options = options;\n this.defs = new DefinitionNode();\n }\n\n if ( Node ) RootNode.__proto__ = Node;\n RootNode.prototype = Object.create( Node && Node.prototype );\n RootNode.prototype.constructor = RootNode;\n\n RootNode.prototype.attachTo = function attachTo (domElement) {\n this.element = domElement;\n this.defs.attachTo(domElement.firstElementChild);\n };\n\n RootNode.prototype.clear = function clear () {\n BaseNode.prototype.clear.call(this);\n };\n\n RootNode.prototype.template = function template () {\n return this.defs.render() + this.renderChildren();\n };\n\n RootNode.prototype.definitionChange = function definitionChange (e) {\n this.defs.definitionChange(e);\n };\n\n return RootNode;\n}(Node));\n\nexport default RootNode;","import Node from './node';\nimport { defined, isTransparent } from '../util';\nimport { DASH_ARRAYS, SOLID, BUTT, PATTERN } from '../core/constants';\nimport { NONE, POINT_DIGITS } from './constants';\nimport renderAllAttr from './utils/render-all-attributes';\nimport renderAttr from './utils/render-attribute';\n\nvar ATTRIBUTE_MAP = {\n \"fill.opacity\": \"fill-opacity\",\n \"stroke.color\": \"stroke\",\n \"stroke.width\": \"stroke-width\",\n \"stroke.opacity\": \"stroke-opacity\"\n};\n\nvar PathNode = (function (Node) {\n function PathNode () {\n Node.apply(this, arguments);\n }\n\n if ( Node ) PathNode.__proto__ = Node;\n PathNode.prototype = Object.create( Node && Node.prototype );\n PathNode.prototype.constructor = PathNode;\n\n PathNode.prototype.geometryChange = function geometryChange () {\n this.attr(\"d\", this.renderData());\n this.invalidate();\n };\n\n PathNode.prototype.optionsChange = function optionsChange (e) {\n switch (e.field) {\n case \"fill\":\n if (e.value) {\n this.allAttr(this.mapFill(e.value));\n } else {\n this.removeAttr(\"fill\");\n }\n break;\n\n case \"fill.color\":\n this.allAttr(this.mapFill({ color: e.value }));\n break;\n\n case \"stroke\":\n if (e.value) {\n this.allAttr(this.mapStroke(e.value));\n } else {\n this.removeAttr(\"stroke\");\n }\n break;\n\n case \"transform\":\n this.transformChange(e.value);\n break;\n\n default:\n var name = ATTRIBUTE_MAP[e.field];\n if (name) {\n this.attr(name, e.value);\n }\n break;\n }\n\n this.accessibilityOptionsChange(e);\n\n Node.prototype.optionsChange.call(this, e);\n };\n\n PathNode.prototype.content = function content () {\n if (this.element) {\n this.element.textContent = this.srcElement.content();\n }\n };\n\n PathNode.prototype.renderData = function renderData () {\n return this.srcElement.toString(POINT_DIGITS) || undefined;\n };\n\n PathNode.prototype.mapStroke = function mapStroke (stroke) {\n var attrs = [];\n\n if (stroke && !isTransparent(stroke.color)) {\n attrs.push([ \"stroke\", stroke.color ]);\n attrs.push([ \"stroke-width\", stroke.width ]);\n attrs.push([ \"stroke-linecap\", this.renderLinecap(stroke) ]);\n attrs.push([ \"stroke-linejoin\", stroke.lineJoin ]);\n\n if (defined(stroke.opacity)) {\n attrs.push([ \"stroke-opacity\", stroke.opacity ]);\n }\n\n if (defined(stroke.dashType)) {\n attrs.push([ \"stroke-dasharray\", this.renderDashType(stroke) ]);\n }\n } else {\n attrs.push([ \"stroke\", NONE ]);\n }\n\n return attrs;\n };\n\n PathNode.prototype.renderStroke = function renderStroke () {\n return renderAllAttr(\n this.mapStroke(this.srcElement.options.stroke)\n );\n };\n\n PathNode.prototype.renderDashType = function renderDashType (stroke) {\n var dashType = stroke.dashType;\n var width = stroke.width; if ( width === void 0 ) width = 1;\n\n if (dashType && dashType !== SOLID) {\n var dashArray = DASH_ARRAYS[dashType.toLowerCase()];\n var result = [];\n\n for (var i = 0; i < dashArray.length; i++) {\n result.push(dashArray[i] * width);\n }\n\n return result.join(\" \");\n }\n };\n\n PathNode.prototype.renderLinecap = function renderLinecap (stroke) {\n var dashType = stroke.dashType;\n var lineCap = stroke.lineCap;\n\n return (dashType && dashType !== SOLID) ? BUTT : lineCap;\n };\n\n PathNode.prototype.mapFill = function mapFill (fill) {\n var attrs = [];\n if (!(fill && (fill.nodeType === \"Gradient\" || fill.nodeType === PATTERN))) {\n if (fill && !isTransparent(fill.color)) {\n attrs.push([ \"fill\", fill.color ]);\n\n if (defined(fill.opacity)) {\n attrs.push([ \"fill-opacity\", fill.opacity ]);\n }\n } else {\n attrs.push([ \"fill\", NONE ]);\n }\n }\n\n return attrs;\n };\n\n PathNode.prototype.renderFill = function renderFill () {\n return renderAllAttr(\n this.mapFill(this.srcElement.options.fill)\n );\n };\n\n PathNode.prototype.template = function template () {\n return \"\";\n };\n\n return PathNode;\n}(Node));\n\nexport default PathNode;\n","import { POINT_DIGITS } from './constants';\nimport PathNode from './path-node';\n\nvar ArcNode = (function (PathNode) {\n function ArcNode () {\n PathNode.apply(this, arguments);\n }\n\n if ( PathNode ) ArcNode.__proto__ = PathNode;\n ArcNode.prototype = Object.create( PathNode && PathNode.prototype );\n ArcNode.prototype.constructor = ArcNode;\n\n ArcNode.prototype.renderData = function renderData () {\n return this.srcElement.toPath().toString(POINT_DIGITS);\n };\n\n return ArcNode;\n}(PathNode));\n\nexport default ArcNode;\n","import PathNode from './path-node';\n\nvar CircleNode = (function (PathNode) {\n function CircleNode () {\n PathNode.apply(this, arguments);\n }\n\n if ( PathNode ) CircleNode.__proto__ = PathNode;\n CircleNode.prototype = Object.create( PathNode && PathNode.prototype );\n CircleNode.prototype.constructor = CircleNode;\n\n CircleNode.prototype.geometryChange = function geometryChange () {\n var center = this.center();\n this.attr(\"cx\", center.x);\n this.attr(\"cy\", center.y);\n this.attr(\"r\", this.radius());\n this.invalidate();\n };\n\n CircleNode.prototype.center = function center () {\n return this.srcElement.geometry().center;\n };\n\n CircleNode.prototype.radius = function radius () {\n return this.srcElement.geometry().radius;\n };\n\n CircleNode.prototype.template = function template () {\n return \"\";\n };\n\n return CircleNode;\n}(PathNode));\n\nexport default CircleNode;\n","import Node from './node';\nimport renderAttr from './utils/render-attribute';\n\nvar GroupNode = (function (Node) {\n function GroupNode () {\n Node.apply(this, arguments);\n }\n\n if ( Node ) GroupNode.__proto__ = Node;\n GroupNode.prototype = Object.create( Node && Node.prototype );\n GroupNode.prototype.constructor = GroupNode;\n\n GroupNode.prototype.template = function template () {\n return (\"\" + (this.renderChildren()) + \"\");\n };\n\n GroupNode.prototype.optionsChange = function optionsChange (e) {\n var field = e.field;\n var value = e.value;\n\n if (field === \"transform\") {\n this.transformChange(value);\n }\n\n this.accessibilityOptionsChange(e);\n\n Node.prototype.optionsChange.call(this, e);\n };\n\n return GroupNode;\n}(Node));\n\nexport default GroupNode;\n","import PathNode from './path-node';\nimport renderAllAttr from './utils/render-all-attributes';\nimport { htmlEncode } from '../common';\n\nvar ImageNode = (function (PathNode) {\n function ImageNode () {\n PathNode.apply(this, arguments);\n }\n\n if ( PathNode ) ImageNode.__proto__ = PathNode;\n ImageNode.prototype = Object.create( PathNode && PathNode.prototype );\n ImageNode.prototype.constructor = ImageNode;\n\n ImageNode.prototype.geometryChange = function geometryChange () {\n this.allAttr(this.mapPosition());\n this.invalidate();\n };\n\n ImageNode.prototype.optionsChange = function optionsChange (e) {\n if (e.field === \"src\") {\n this.allAttr(this.mapSource());\n }\n\n PathNode.prototype.optionsChange.call(this, e);\n };\n\n ImageNode.prototype.mapPosition = function mapPosition () {\n var rect = this.srcElement.rect();\n var tl = rect.topLeft();\n\n return [\n [ \"x\", tl.x ],\n [ \"y\", tl.y ],\n [ \"width\", rect.width() + \"px\" ],\n [ \"height\", rect.height() + \"px\" ]\n ];\n };\n\n ImageNode.prototype.renderPosition = function renderPosition () {\n return renderAllAttr(this.mapPosition());\n };\n\n ImageNode.prototype.mapSource = function mapSource (encode) {\n var src = this.srcElement.src();\n\n if (encode) {\n src = htmlEncode(src);\n }\n\n return [ [ \"xlink:href\", src ] ];\n };\n\n ImageNode.prototype.renderSource = function renderSource () {\n return renderAllAttr(this.mapSource(true));\n };\n\n ImageNode.prototype.template = function template () {\n return \"\" +\n \"\";\n };\n\n return ImageNode;\n}(PathNode));\n\nexport default ImageNode;\n","import { POINT_DIGITS } from './constants';\nimport PathNode from './path-node';\n\nvar MultiPathNode = (function (PathNode) {\n function MultiPathNode () {\n PathNode.apply(this, arguments);\n }\n\n if ( PathNode ) MultiPathNode.__proto__ = PathNode;\n MultiPathNode.prototype = Object.create( PathNode && PathNode.prototype );\n MultiPathNode.prototype.constructor = MultiPathNode;\n\n MultiPathNode.prototype.renderData = function renderData () {\n return this.srcElement.toString(POINT_DIGITS) || 'undefined';\n };\n\n return MultiPathNode;\n}(PathNode));\n\nexport default MultiPathNode;\n","import PathNode from './path-node';\n\nvar RectNode = (function (PathNode) {\n function RectNode () {\n PathNode.apply(this, arguments);\n }\n\n if ( PathNode ) RectNode.__proto__ = PathNode;\n RectNode.prototype = Object.create( PathNode && PathNode.prototype );\n RectNode.prototype.constructor = RectNode;\n\n RectNode.prototype.geometryChange = function geometryChange () {\n var geometry = this.srcElement.geometry();\n this.attr(\"x\", geometry.origin.x);\n this.attr(\"y\", geometry.origin.y);\n this.attr(\"width\", geometry.size.width);\n this.attr(\"height\", geometry.size.height);\n this.attr(\"rx\", geometry.cornerRadius[0]);\n this.attr(\"ry\", geometry.cornerRadius[1]);\n this.invalidate();\n };\n\n RectNode.prototype.size = function size () {\n return this.srcElement.geometry().size;\n };\n\n RectNode.prototype.origin = function origin () {\n return this.srcElement.geometry().origin;\n };\n\n RectNode.prototype.rx = function rx () {\n return this.srcElement.geometry().cornerRadius[0];\n };\n\n RectNode.prototype.ry = function ry () {\n return this.srcElement.geometry().cornerRadius[1];\n };\n\n RectNode.prototype.template = function template () {\n return \"\";\n };\n\n return RectNode;\n}(PathNode));\n\nexport default RectNode;\n","import PathNode from './path-node';\nimport renderStyle from './utils/render-style';\nimport renderAttr from './utils/render-attribute';\nimport { htmlEncode, support } from '../common';\nimport { normalizeText } from '../text-metrics';\n\nvar ENTITY_REGEX = /&(?:[a-zA-Z]+|#\\d+);/g;\n\nfunction decodeEntities(text) {\n if (!text || typeof text !== \"string\" || !ENTITY_REGEX.test(text)) {\n return text;\n }\n\n var element = decodeEntities._element;\n ENTITY_REGEX.lastIndex = 0;\n\n return text.replace(ENTITY_REGEX, function (match) {\n element.innerHTML = match;\n\n return element.textContent || element.innerText;\n });\n}\n\nif (typeof document !== \"undefined\") {\n decodeEntities._element = document.createElement(\"span\");\n}\n\nvar TextNode = (function (PathNode) {\n function TextNode () {\n PathNode.apply(this, arguments);\n }\n\n if ( PathNode ) TextNode.__proto__ = PathNode;\n TextNode.prototype = Object.create( PathNode && PathNode.prototype );\n TextNode.prototype.constructor = TextNode;\n\n TextNode.prototype.geometryChange = function geometryChange () {\n var pos = this.pos();\n this.attr(\"x\", pos.x);\n this.attr(\"y\", pos.y);\n this.invalidate();\n };\n\n TextNode.prototype.optionsChange = function optionsChange (e) {\n if (e.field === \"font\") {\n this.attr(\"style\", renderStyle(this.mapStyle()));\n this.geometryChange();\n } else if (e.field === \"content\") {\n PathNode.prototype.content.call(this, this.srcElement.content());\n }\n\n PathNode.prototype.optionsChange.call(this, e);\n };\n\n TextNode.prototype.mapStyle = function mapStyle (encode) {\n var style = PathNode.prototype.mapStyle.call(this, encode);\n var font = this.srcElement.options.font;\n\n if (encode) {\n font = htmlEncode(font);\n }\n\n style.push([ \"font\", font ], [ \"white-space\", \"pre\" ]);\n\n return style;\n };\n\n TextNode.prototype.pos = function pos () {\n var pos = this.srcElement.position();\n var size = this.srcElement.measure();\n return pos.clone().setY(pos.y + size.baseline);\n };\n\n TextNode.prototype.renderContent = function renderContent () {\n var content = this.srcElement.content();\n content = decodeEntities(content);\n content = htmlEncode(content);\n\n return normalizeText(content);\n };\n\n TextNode.prototype.renderTextAnchor = function renderTextAnchor () {\n var anchor;\n\n if ((this.options || {}).rtl && !(support.browser.msie || support.browser.edge)) {\n anchor = 'end';\n }\n\n return renderAttr(\"text-anchor\", anchor);\n };\n\n TextNode.prototype.renderPaintOrder = function renderPaintOrder () {\n var paintOrder = this.srcElement.options.paintOrder;\n return paintOrder ? renderAttr(\"paint-order\", paintOrder) : \"\";\n };\n\n TextNode.prototype.template = function template () {\n return \"\" + (this.renderContent()) + \"\";\n };\n\n return TextNode;\n}(PathNode));\n\nexport default TextNode;\n","import BaseSurface from '../core/surface';\nimport RootNode from './root-node';\nimport Group from '../shapes/group';\nimport transform from '../geometry/transform';\nimport renderSVG from './utils/render-svg';\nimport { SVG_NS } from './constants';\nimport { bindEvents, unbindEvents, elementStyles } from '../util';\n\nimport ArcNode from './arc-node';\nimport CircleNode from './circle-node';\nimport GroupNode from './group-node';\nimport ImageNode from './image-node';\nimport MultiPathNode from './multi-path-node';\nimport PathNode from './path-node';\nimport RectNode from './rect-node';\nimport TextNode from './text-node';\nimport NODE_MAP from './node-map';\n\nNODE_MAP.Arc = ArcNode;\nNODE_MAP.Circle = CircleNode;\nNODE_MAP.Group = GroupNode;\nNODE_MAP.Image = ImageNode;\nNODE_MAP.MultiPath = MultiPathNode;\nNODE_MAP.Path = PathNode;\nNODE_MAP.Rect = RectNode;\nNODE_MAP.Text = TextNode;\n\nvar RTL = 'rtl';\n\nfunction alignToScreen(element) {\n var ctm;\n\n try {\n ctm = element.getScreenCTM ? element.getScreenCTM() : null;\n } catch (e) { } // eslint-disable-line no-empty\n\n if (ctm) {\n var left = - ctm.e % 1;\n var top = - ctm.f % 1;\n var style = element.style;\n\n if (left !== 0 || top !== 0) {\n style.left = left + \"px\";\n style.top = top + \"px\";\n }\n }\n}\n\nvar Surface = (function (BaseSurface) {\n function Surface(element, options) {\n BaseSurface.call(this, element, options);\n\n this._root = new RootNode(Object.assign({\n rtl: elementStyles(element, 'direction').direction === RTL\n }, this.options));\n\n renderSVG(this.element, this._template(''));\n\n this._rootElement = this.element.firstElementChild;\n this._rootElement.style.width = '100%';\n this._rootElement.style.height = '100%';\n this._rootElement.style.overflow = 'hidden';\n\n alignToScreen(this._rootElement);\n\n this._root.attachTo(this._rootElement);\n\n bindEvents(this.element, {\n click: this._click,\n mouseover: this._mouseenter,\n mouseout: this._mouseleave,\n mousemove: this._mousemove\n });\n\n this.resize();\n }\n\n if ( BaseSurface ) Surface.__proto__ = BaseSurface;\n Surface.prototype = Object.create( BaseSurface && BaseSurface.prototype );\n Surface.prototype.constructor = Surface;\n\n var prototypeAccessors = { type: { configurable: true } };\n\n prototypeAccessors.type.get = function () {\n return \"svg\";\n };\n\n Surface.prototype.destroy = function destroy () {\n if (this._root) {\n this._root.destroy();\n this._root = null;\n this._rootElement = null;\n unbindEvents(this.element, {\n click: this._click,\n mouseover: this._mouseenter,\n mouseout: this._mouseleave,\n mousemove: this._mousemove\n });\n }\n\n BaseSurface.prototype.destroy.call(this);\n };\n\n Surface.prototype.translate = function translate (offset) {\n var viewBox = (Math.round(offset.x)) + \" \" + (Math.round(offset.y)) + \" \" + (this._size.width) + \" \" + (this._size.height);\n\n this._offset = offset;\n this._rootElement.setAttribute(\"viewBox\", viewBox);\n };\n\n Surface.prototype.draw = function draw (element) {\n BaseSurface.prototype.draw.call(this, element);\n this._root.load([ element ]);\n };\n\n Surface.prototype.clear = function clear () {\n BaseSurface.prototype.clear.call(this);\n this._root.clear();\n };\n\n Surface.prototype.svg = function svg () {\n return \"\" + this._template();\n };\n\n Surface.prototype.exportVisual = function exportVisual () {\n var ref = this;\n var visual = ref._visual;\n var offset = ref._offset;\n\n if (offset) {\n var wrap = new Group();\n wrap.children.push(visual);\n\n wrap.transform(\n transform().translate(-offset.x, -offset.y)\n );\n\n visual = wrap;\n }\n\n return visual;\n };\n\n Surface.prototype._resize = function _resize () {\n if (this._offset) {\n this.translate(this._offset);\n }\n };\n\n Surface.prototype._template = function _template (svgStyles) {\n var styles = typeof svgStyles === 'string' ? svgStyles :\n \"style='width: 100%; height: 100%; overflow: hidden;' \";\n return (\"\" + (this._root.render()) + \"\");\n };\n\n Object.defineProperties( Surface.prototype, prototypeAccessors );\n\n return Surface;\n}(BaseSurface));\n\nexport default Surface;\n","var NODE_MAP = {};\n\nexport default NODE_MAP;","import BaseNode from '../core/base-node';\nimport NODE_MAP from './node-map';\nimport { defined } from '../util';\n\nvar Node = (function (BaseNode) {\n function Node(srcElement) {\n BaseNode.call(this, srcElement);\n if (srcElement) {\n this.initClip();\n }\n }\n\n if ( BaseNode ) Node.__proto__ = BaseNode;\n Node.prototype = Object.create( BaseNode && BaseNode.prototype );\n Node.prototype.constructor = Node;\n\n Node.prototype.initClip = function initClip () {\n var clip = this.srcElement.clip();\n if (clip) {\n this.clip = clip;\n clip.addObserver(this);\n }\n };\n\n Node.prototype.clear = function clear () {\n if (this.srcElement) {\n this.srcElement.removeObserver(this);\n }\n\n this.clearClip();\n\n BaseNode.prototype.clear.call(this);\n };\n\n Node.prototype.clearClip = function clearClip () {\n if (this.clip) {\n this.clip.removeObserver(this);\n delete this.clip;\n }\n };\n\n Node.prototype.setClip = function setClip (ctx) {\n if (this.clip) {\n ctx.beginPath();\n\n var clipNode = new NODE_MAP[this.clip.nodeType](this.clip);\n clipNode.renderPoints(ctx, this.clip);\n\n ctx.clip(\"evenodd\");\n }\n };\n\n Node.prototype.optionsChange = function optionsChange (e) {\n if (e.field === \"clip\") {\n this.clearClip();\n this.initClip();\n }\n\n BaseNode.prototype.optionsChange.call(this, e);\n };\n\n Node.prototype.setTransform = function setTransform (ctx) {\n if (this.srcElement) {\n var transform = this.srcElement.transform();\n if (transform) {\n ctx.transform.apply(ctx, transform.matrix().toArray(6));\n }\n }\n };\n\n Node.prototype.loadElements = function loadElements (elements, pos, cors) {\n var this$1 = this;\n\n for (var i = 0; i < elements.length; i++) {\n var srcElement = elements[i];\n var children = srcElement.children;\n\n var childNode = new NODE_MAP[srcElement.nodeType](srcElement, cors);\n\n if (children && children.length > 0) {\n childNode.load(children, pos, cors);\n }\n\n if (defined(pos)) {\n this$1.insertAt(childNode, pos);\n } else {\n this$1.append(childNode);\n }\n }\n };\n\n Node.prototype.load = function load (elements, pos, cors) {\n this.loadElements(elements, pos, cors);\n\n this.invalidate();\n };\n\n Node.prototype.setOpacity = function setOpacity (ctx) {\n if (this.srcElement) {\n var opacity = this.srcElement.opacity();\n if (defined(opacity)) {\n this.globalAlpha(ctx, opacity);\n }\n }\n };\n\n Node.prototype.globalAlpha = function globalAlpha (ctx, value) {\n var opactity = value;\n if (opactity && ctx.globalAlpha) {\n opactity *= ctx.globalAlpha;\n }\n ctx.globalAlpha = opactity;\n };\n\n Node.prototype.visible = function visible () {\n var src = this.srcElement;\n return !src || (src && src.options.visible !== false);\n };\n\n return Node;\n}(BaseNode));\n\nexport default Node;","import Node from './node';\nimport traversable from '../mixins/traversable';\n\n\nvar GroupNode = (function (superclass) {\n function GroupNode () {\n superclass.apply(this, arguments);\n }\n\n if ( superclass ) GroupNode.__proto__ = superclass;\n GroupNode.prototype = Object.create( superclass && superclass.prototype );\n GroupNode.prototype.constructor = GroupNode;\n\n GroupNode.prototype.renderTo = function renderTo (ctx) {\n if (!this.visible()) {\n return;\n }\n\n ctx.save();\n\n this.setTransform(ctx);\n this.setClip(ctx);\n this.setOpacity(ctx);\n\n var childNodes = this.childNodes;\n for (var i = 0; i < childNodes.length; i++) {\n var child = childNodes[i];\n if (child.visible()) {\n child.renderTo(ctx);\n }\n }\n\n ctx.restore();\n };\n\n return GroupNode;\n}(traversable(Node, \"childNodes\")));\n\nexport default GroupNode;\n","import now from '../util/now';\n\nexport default function throttle(fn, delay) {\n var lastExecTime = 0;\n var timeout;\n\n if (!delay || delay <= 0) {\n return fn;\n }\n\n var throttled = function() {\n var elapsed = now() - lastExecTime;\n var args = arguments;\n\n var exec = function() {\n fn.apply(null, args);\n lastExecTime = now();\n };\n\n // first execution\n if (!lastExecTime) {\n return exec();\n }\n\n if (timeout) {\n clearTimeout(timeout);\n }\n\n if (elapsed > delay) {\n exec();\n } else {\n timeout = setTimeout(exec, delay - elapsed);\n }\n };\n\n throttled.cancel = function() {\n clearTimeout(timeout);\n };\n\n return throttled;\n}\n","import GroupNode from './group-node';\nimport traversable from '../mixins/traversable';\nimport { animationFrame, throttle } from '../common';\n\n\nvar FRAME_DELAY = 1000 / 60;\n\nvar RootNode = (function (superclass) {\n function RootNode(canvas, size) {\n superclass.call(this);\n\n this.canvas = canvas;\n this.size = size;\n this.ctx = canvas.getContext(\"2d\");\n\n var invalidateHandler = this._invalidate.bind(this);\n this.invalidate = throttle(function () {\n animationFrame(invalidateHandler);\n }, FRAME_DELAY);\n }\n\n if ( superclass ) RootNode.__proto__ = superclass;\n RootNode.prototype = Object.create( superclass && superclass.prototype );\n RootNode.prototype.constructor = RootNode;\n\n RootNode.prototype.destroy = function destroy () {\n superclass.prototype.destroy.call(this);\n this.canvas = null;\n this.ctx = null;\n };\n\n RootNode.prototype.load = function load (elements, pos, cors) {\n this.loadElements(elements, pos, cors);\n this._invalidate();\n };\n\n RootNode.prototype._rescale = function _rescale (scale) {\n var ref = this;\n var canvas = ref.canvas;\n var size = ref.size;\n canvas.width = size.width * scale;\n canvas.height = size.height * scale;\n this.ctx.scale(scale, scale);\n };\n\n RootNode.prototype._devicePixelRatio = function _devicePixelRatio () {\n if (typeof window.devicePixelRatio === 'number') {\n return window.devicePixelRatio;\n }\n\n return 1;\n };\n\n RootNode.prototype._invalidate = function _invalidate (options) {\n if (!this.ctx) {\n return;\n }\n\n var fixedScale = options && options.fixedScale;\n var scale = fixedScale ? 1 : this._devicePixelRatio();\n this._rescale(scale);\n\n this.ctx.clearRect(0, 0, this.canvas.width, this.canvas.height);\n this.renderTo(this.ctx);\n };\n\n return RootNode;\n}(traversable(GroupNode, \"childNodes\")));\n\nexport default RootNode;\n","import { Class } from '../common';\n\nvar QuadRoot = (function (Class) {\n function QuadRoot() {\n Class.call(this);\n\n this.shapes = [];\n }\n\n if ( Class ) QuadRoot.__proto__ = Class;\n QuadRoot.prototype = Object.create( Class && Class.prototype );\n QuadRoot.prototype.constructor = QuadRoot;\n\n QuadRoot.prototype._add = function _add (shape, bbox) {\n this.shapes.push({\n bbox: bbox,\n shape: shape\n });\n shape._quadNode = this;\n };\n\n QuadRoot.prototype.pointShapes = function pointShapes (point) {\n var shapes = this.shapes;\n var length = shapes.length;\n var result = [];\n for (var idx = 0; idx < length; idx++) {\n if (shapes[idx].bbox.containsPoint(point)) {\n result.push(shapes[idx].shape);\n }\n }\n return result;\n };\n\n QuadRoot.prototype.insert = function insert (shape, bbox) {\n this._add(shape, bbox);\n };\n\n QuadRoot.prototype.remove = function remove (shape) {\n var shapes = this.shapes;\n var length = shapes.length;\n\n for (var idx = 0; idx < length; idx++) {\n if (shapes[idx].shape === shape) {\n shapes.splice(idx, 1);\n break;\n }\n }\n };\n\n return QuadRoot;\n}(Class));\n\nexport default QuadRoot;","import QuadRoot from './quad-root';\nimport { Rect } from '../geometry';\nimport { append } from '../util';\n\nvar QuadNode = (function (QuadRoot) {\n function QuadNode(rect) {\n QuadRoot.call(this);\n this.children = [];\n this.rect = rect;\n }\n\n if ( QuadRoot ) QuadNode.__proto__ = QuadRoot;\n QuadNode.prototype = Object.create( QuadRoot && QuadRoot.prototype );\n QuadNode.prototype.constructor = QuadNode;\n\n QuadNode.prototype.inBounds = function inBounds (rect) {\n var nodeRect = this.rect;\n var nodeBottomRight = nodeRect.bottomRight();\n var bottomRight = rect.bottomRight();\n var inBounds = nodeRect.origin.x <= rect.origin.x && nodeRect.origin.y <= rect.origin.y && bottomRight.x <= nodeBottomRight.x &&\n bottomRight.y <= nodeBottomRight.y;\n return inBounds;\n };\n\n QuadNode.prototype.pointShapes = function pointShapes (point) {\n var children = this.children;\n var length = children.length;\n var result = QuadRoot.prototype.pointShapes.call(this, point);\n for (var idx = 0; idx < length; idx++) {\n append(result, children[idx].pointShapes(point));\n }\n return result;\n };\n\n QuadNode.prototype.insert = function insert (shape, bbox) {\n var children = this.children;\n var inserted = false;\n\n if (this.inBounds(bbox)) {\n if (this.shapes.length < 4) {\n this._add(shape, bbox);\n } else {\n if (!children.length) {\n this._initChildren();\n }\n\n for (var idx = 0; idx < children.length; idx++) {\n if (children[idx].insert(shape, bbox)) {\n inserted = true;\n break;\n }\n }\n\n if (!inserted) {\n this._add(shape, bbox);\n }\n }\n inserted = true;\n }\n\n return inserted;\n };\n\n QuadNode.prototype._initChildren = function _initChildren () {\n var ref = this;\n var rect = ref.rect;\n var children = ref.children;\n var center = rect.center();\n var halfWidth = rect.width() / 2;\n var halfHeight = rect.height() / 2;\n\n children.push(\n new QuadNode(new Rect([ rect.origin.x, rect.origin.y ], [ halfWidth, halfHeight ])),\n new QuadNode(new Rect([ center.x, rect.origin.y ], [ halfWidth, halfHeight ])),\n new QuadNode(new Rect([ rect.origin.x, center.y ], [ halfWidth, halfHeight ])),\n new QuadNode(new Rect([ center.x, center.y ], [ halfWidth, halfHeight ]))\n );\n };\n\n return QuadNode;\n}(QuadRoot));\n\nexport default QuadNode;","import QuadRoot from './quad-root';\nimport QuadNode from './quad-node';\nimport { Rect } from '../geometry';\nimport { Class } from '../common';\nimport { append } from '../util';\n\nvar ROOT_SIZE = 3000;\nvar LEVEL_STEP = 10000;\nvar MAX_LEVEL = 75;\n\nvar ShapesQuadTree = (function (Class) {\n function ShapesQuadTree() {\n Class.call(this);\n\n this.initRoots();\n }\n\n if ( Class ) ShapesQuadTree.__proto__ = Class;\n ShapesQuadTree.prototype = Object.create( Class && Class.prototype );\n ShapesQuadTree.prototype.constructor = ShapesQuadTree;\n\n ShapesQuadTree.prototype.initRoots = function initRoots () {\n this.rootMap = {};\n this.root = new QuadRoot();\n this.rootElements = [];\n };\n\n ShapesQuadTree.prototype.clear = function clear () {\n var this$1 = this;\n\n var rootElements = this.rootElements;\n for (var idx = 0; idx < rootElements.length; idx++) {\n this$1.remove(rootElements[idx]);\n }\n this.initRoots();\n };\n\n ShapesQuadTree.prototype.pointShape = function pointShape (point) {\n var sectorRoot = ( this.rootMap[ Math.floor( point.x / ROOT_SIZE ) ] || {} )[ Math.floor( point.y / ROOT_SIZE ) ];\n var result = this.root.pointShapes(point);\n\n if (sectorRoot) {\n result = result.concat(sectorRoot.pointShapes(point));\n }\n\n this.assignZindex(result);\n\n result.sort(zIndexComparer);\n for (var idx = 0; idx < result.length; idx++) {\n if (result[idx].containsPoint(point)) {\n return result[idx];\n }\n }\n };\n\n ShapesQuadTree.prototype.assignZindex = function assignZindex (elements) {\n var this$1 = this;\n\n for (var idx = 0; idx < elements.length; idx++) {\n var element = elements[idx];\n var zIndex = 0;\n var levelWeight = Math.pow(LEVEL_STEP, MAX_LEVEL);\n var parents = [];\n\n while (element) {\n parents.push(element);\n element = element.parent;\n }\n\n while (parents.length) {\n element = parents.pop();\n zIndex += ((element.parent ? element.parent.children : this$1.rootElements).indexOf(element) + 1) * levelWeight;\n levelWeight /= LEVEL_STEP;\n }\n\n elements[idx]._zIndex = zIndex;\n }\n };\n\n ShapesQuadTree.prototype.optionsChange = function optionsChange (e) {\n if (e.field === \"transform\" || e.field === \"stroke.width\") {\n this.bboxChange(e.element);\n }\n };\n\n ShapesQuadTree.prototype.geometryChange = function geometryChange (e) {\n this.bboxChange(e.element);\n };\n\n ShapesQuadTree.prototype.bboxChange = function bboxChange (element) {\n var this$1 = this;\n\n if (element.nodeType === \"Group\") {\n for (var idx = 0; idx < element.children.length; idx++) {\n this$1.bboxChange(element.children[idx]);\n }\n } else {\n if (element._quadNode) {\n element._quadNode.remove(element);\n }\n this._insertShape(element);\n }\n };\n\n ShapesQuadTree.prototype.add = function add (elements) {\n var elementsArray = Array.isArray(elements) ? elements.slice(0) : [ elements ];\n\n append(this.rootElements, elementsArray);\n this._insert(elementsArray);\n };\n\n ShapesQuadTree.prototype.childrenChange = function childrenChange (e) {\n var this$1 = this;\n\n if (e.action === \"remove\") {\n for (var idx = 0; idx < e.items.length; idx++) {\n this$1.remove(e.items[idx]);\n }\n } else {\n this._insert(Array.prototype.slice.call(e.items, 0));\n }\n };\n\n ShapesQuadTree.prototype._insert = function _insert (elements) {\n var this$1 = this;\n\n var element;\n\n while (elements.length > 0) {\n element = elements.pop();\n element.addObserver(this$1);\n if (element.nodeType === \"Group\") {\n append(elements, element.children);\n } else {\n this$1._insertShape(element);\n }\n }\n };\n\n ShapesQuadTree.prototype._insertShape = function _insertShape (shape) {\n var bbox = shape.bbox();\n if (bbox) {\n var sectors = this.getSectors(bbox);\n var x = sectors[0][0];\n var y = sectors[1][0];\n\n if (this.inRoot(sectors)) {\n this.root.insert(shape, bbox);\n } else {\n var rootMap = this.rootMap;\n if (!rootMap[x]) {\n rootMap[x] = {};\n }\n\n if (!rootMap[x][y]) {\n rootMap[x][y] = new QuadNode(\n new Rect([ x * ROOT_SIZE, y * ROOT_SIZE ], [ ROOT_SIZE, ROOT_SIZE ])\n );\n }\n\n rootMap[x][y].insert(shape, bbox);\n }\n }\n };\n\n ShapesQuadTree.prototype.remove = function remove (element) {\n var this$1 = this;\n\n element.removeObserver(this);\n\n if (element.nodeType === \"Group\") {\n var children = element.children;\n for (var idx = 0; idx < children.length; idx++) {\n this$1.remove(children[idx]);\n }\n } else if (element._quadNode) {\n element._quadNode.remove(element);\n delete element._quadNode;\n }\n };\n\n ShapesQuadTree.prototype.inRoot = function inRoot (sectors) {\n return sectors[0].length > 1 || sectors[1].length > 1;\n };\n\n ShapesQuadTree.prototype.getSectors = function getSectors (rect) {\n var bottomRight = rect.bottomRight();\n var bottomX = Math.floor(bottomRight.x / ROOT_SIZE);\n var bottomY = Math.floor(bottomRight.y / ROOT_SIZE);\n var sectors = [ [], [] ];\n for (var x = Math.floor(rect.origin.x / ROOT_SIZE); x <= bottomX; x++) {\n sectors[0].push(x);\n }\n for (var y = Math.floor(rect.origin.y / ROOT_SIZE); y <= bottomY; y++) {\n sectors[1].push(y);\n }\n return sectors;\n };\n\n return ShapesQuadTree;\n}(Class));\n\nfunction zIndexComparer(x1, x2) {\n if (x1._zIndex < x2._zIndex) {\n return 1;\n }\n if (x1._zIndex > x2._zIndex) {\n return -1;\n }\n\n return 0;\n}\n\nexport default ShapesQuadTree;","import { defined } from '../util';\n\nvar SurfaceCursor = function SurfaceCursor(surface) {\n surface.bind(\"mouseenter\", this._mouseenter.bind(this));\n surface.bind(\"mouseleave\", this._mouseleave.bind(this));\n\n this.element = surface.element;\n};\n\nSurfaceCursor.prototype.clear = function clear () {\n this._resetCursor();\n};\n\nSurfaceCursor.prototype.destroy = function destroy () {\n this._resetCursor();\n delete this.element;\n};\n\nSurfaceCursor.prototype._mouseenter = function _mouseenter (e) {\n var cursor = this._shapeCursor(e);\n\n if (!cursor) {\n this._resetCursor();\n } else {\n if (!this._current) {\n this._defaultCursor = this._getCursor();\n }\n\n this._setCursor(cursor);\n }\n};\n\nSurfaceCursor.prototype._mouseleave = function _mouseleave () {\n this._resetCursor();\n};\n\nSurfaceCursor.prototype._shapeCursor = function _shapeCursor (e) {\n var shape = e.element;\n\n while (shape && !defined(shape.options.cursor)) {\n shape = shape.parent;\n }\n\n if (shape) {\n return shape.options.cursor;\n }\n};\n\nSurfaceCursor.prototype._getCursor = function _getCursor () {\n if (this.element) {\n return this.element.style.cursor;\n }\n};\n\nSurfaceCursor.prototype._setCursor = function _setCursor (cursor) {\n if (this.element) {\n this.element.style.cursor = cursor;\n this._current = cursor;\n }\n};\n\nSurfaceCursor.prototype._resetCursor = function _resetCursor () {\n if (this._current) {\n this._setCursor(this._defaultCursor || \"\");\n delete this._current;\n }\n};\n\nexport default SurfaceCursor;\n\n","\nexport default function renderPath(ctx, path) {\n var segments = path.segments;\n\n if (segments.length === 0) {\n return;\n }\n\n var segment = segments[0];\n var anchor = segment.anchor();\n ctx.moveTo(anchor.x, anchor.y);\n\n for (var i = 1; i < segments.length; i++) {\n segment = segments[i];\n anchor = segment.anchor();\n\n var prevSeg = segments[i - 1];\n var prevOut = prevSeg.controlOut();\n var controlIn = segment.controlIn();\n\n if (prevOut && controlIn) {\n ctx.bezierCurveTo(prevOut.x, prevOut.y,\n controlIn.x, controlIn.y,\n anchor.x, anchor.y);\n } else {\n ctx.lineTo(anchor.x, anchor.y);\n }\n }\n\n if (path.options.closed) {\n ctx.closePath();\n }\n}\n","import Node from './node';\nimport { parseColor } from '../common';\nimport { isTransparent, valueOrDefault } from '../util';\nimport LinearGradient from '../gradients/linear-gradient';\nimport RadialGradient from '../gradients/radial-gradient';\nimport { DASH_ARRAYS, SOLID, BUTT, PATTERN } from '../core/constants';\nimport renderPath from './utils/render-path';\n\nfunction addGradientStops(gradient, stops) {\n for (var idx = 0; idx < stops.length; idx++) {\n var stop = stops[idx];\n var color = parseColor(stop.color());\n\n color.a *= stop.opacity();\n\n gradient.addColorStop(stop.offset(), color.toCssRgba());\n }\n}\n\nvar PathNode = (function (Node) {\n function PathNode () {\n Node.apply(this, arguments);\n }\n\n if ( Node ) PathNode.__proto__ = Node;\n PathNode.prototype = Object.create( Node && Node.prototype );\n PathNode.prototype.constructor = PathNode;\n\n PathNode.prototype.renderTo = function renderTo (ctx) {\n ctx.save();\n\n this.setTransform(ctx);\n this.setClip(ctx);\n this.setOpacity(ctx);\n\n ctx.beginPath();\n\n this.renderPoints(ctx, this.srcElement);\n\n this.setLineDash(ctx);\n this.setLineCap(ctx);\n this.setLineJoin(ctx);\n\n this.setFill(ctx);\n this.setStroke(ctx);\n\n ctx.restore();\n };\n\n PathNode.prototype.setFill = function setFill (ctx) {\n var fill = this.srcElement.options.fill;\n var hasFill = false;\n\n if (fill) {\n if (fill.nodeType === \"Gradient\") {\n this.setGradientFill(ctx, fill);\n hasFill = true;\n } else if (fill.nodeType === PATTERN) {\n this.setPatternFill(ctx, fill);\n hasFill = true;\n } else if (!isTransparent(fill.color)) {\n ctx.fillStyle = fill.color;\n\n ctx.save();\n this.globalAlpha(ctx, fill.opacity);\n ctx.fill();\n ctx.restore();\n\n hasFill = true;\n }\n }\n\n return hasFill;\n };\n\n PathNode.prototype.setGradientFill = function setGradientFill (ctx, fill) {\n var bbox = this.srcElement.rawBBox();\n var gradient;\n\n if (fill instanceof LinearGradient) {\n var start = fill.start();\n var end = fill.end();\n gradient = ctx.createLinearGradient(start.x, start.y, end.x, end.y);\n } else if (fill instanceof RadialGradient) {\n var center = fill.center();\n gradient = ctx.createRadialGradient(center.x, center.y, 0, center.x, center.y, fill.radius());\n }\n\n addGradientStops(gradient, fill.stops);\n\n ctx.save();\n\n if (!fill.userSpace()) {\n ctx.transform(bbox.width(), 0, 0, bbox.height(), bbox.origin.x, bbox.origin.y);\n }\n ctx.fillStyle = gradient;\n ctx.fill();\n\n ctx.restore();\n };\n\n PathNode.prototype.setPatternFill = function setPatternFill (ctx, pattern) {\n var size = pattern.size();\n var patternCanvas = document.createElement(\"canvas\");\n var patternContext = patternCanvas.getContext(\"2d\");\n\n patternCanvas.width = size.getWidth();\n patternCanvas.height = size.getHeight();\n\n this.childNodes.length = 0;\n this.loadElements(pattern.children);\n\n var childNodes = this.childNodes;\n for (var i = 0; i < childNodes.length; i++) {\n var child = childNodes[i];\n child.renderTo(patternContext);\n }\n\n ctx.save();\n ctx.fillStyle = ctx.createPattern(patternCanvas, \"repeat\");\n ctx.fill();\n ctx.restore();\n };\n\n PathNode.prototype.setStroke = function setStroke (ctx) {\n var stroke = this.srcElement.options.stroke;\n if (stroke && !isTransparent(stroke.color) && stroke.width > 0) {\n ctx.strokeStyle = stroke.color;\n ctx.lineWidth = valueOrDefault(stroke.width, 1);\n ctx.lineJoin = valueOrDefault(stroke.lineJoin, ctx.lineJoin);\n\n ctx.save();\n this.globalAlpha(ctx, stroke.opacity);\n ctx.stroke();\n ctx.restore();\n\n return true;\n }\n };\n\n PathNode.prototype.dashType = function dashType () {\n var stroke = this.srcElement.options.stroke;\n if (stroke && stroke.dashType) {\n return stroke.dashType.toLowerCase();\n }\n };\n\n PathNode.prototype.setLineDash = function setLineDash (ctx) {\n var dashType = this.dashType();\n if (dashType && dashType !== SOLID) {\n var dashArray = DASH_ARRAYS[dashType];\n if (ctx.setLineDash) {\n ctx.setLineDash(dashArray);\n } else {\n ctx.mozDash = dashArray;\n ctx.webkitLineDash = dashArray;\n }\n }\n };\n\n PathNode.prototype.setLineCap = function setLineCap (ctx) {\n var dashType = this.dashType();\n var stroke = this.srcElement.options.stroke;\n if (dashType && dashType !== SOLID) {\n ctx.lineCap = BUTT;\n } else if (stroke && stroke.lineCap) {\n ctx.lineCap = stroke.lineCap;\n }\n };\n\n PathNode.prototype.setLineJoin = function setLineJoin (ctx) {\n var stroke = this.srcElement.options.stroke;\n if (stroke && stroke.lineJoin) {\n ctx.lineJoin = stroke.lineJoin;\n }\n };\n\n PathNode.prototype.renderPoints = function renderPoints (ctx, path) {\n renderPath(ctx, path);\n };\n\n return PathNode;\n}(Node));\n\nexport default PathNode;\n","import PathNode from './path-node';\nimport renderPath from './utils/render-path';\n\nvar ArcNode = (function (PathNode) {\n function ArcNode () {\n PathNode.apply(this, arguments);\n }\n\n if ( PathNode ) ArcNode.__proto__ = PathNode;\n ArcNode.prototype = Object.create( PathNode && PathNode.prototype );\n ArcNode.prototype.constructor = ArcNode;\n\n ArcNode.prototype.renderPoints = function renderPoints (ctx) {\n var path = this.srcElement.toPath();\n renderPath(ctx, path);\n };\n\n return ArcNode;\n}(PathNode));\n\nexport default ArcNode;\n","import PathNode from './path-node';\n\nvar CircleNode = (function (PathNode) {\n function CircleNode () {\n PathNode.apply(this, arguments);\n }\n\n if ( PathNode ) CircleNode.__proto__ = PathNode;\n CircleNode.prototype = Object.create( PathNode && PathNode.prototype );\n CircleNode.prototype.constructor = CircleNode;\n\n CircleNode.prototype.renderPoints = function renderPoints (ctx) {\n var ref = this.srcElement.geometry();\n var center = ref.center;\n var radius = ref.radius;\n\n ctx.arc(center.x, center.y, radius, 0, Math.PI * 2);\n };\n\n return CircleNode;\n}(PathNode));\n\nexport default CircleNode;\n","import PathNode from './path-node';\nimport { createPromise } from '../util';\n\nvar ImageNode = (function (PathNode) {\n function ImageNode(srcElement, cors) {\n PathNode.call(this, srcElement);\n\n this.onLoad = this.onLoad.bind(this);\n this.onError = this.onError.bind(this);\n\n this.loading = createPromise();\n\n var img = this.img = new Image();\n var src = srcElement.src();\n\n if (cors && !(/^data:/i.test(src))) {\n img.crossOrigin = cors;\n }\n\n if (src) {\n img.src = src;\n }\n\n if (img.complete) {\n this.onLoad();\n } else {\n img.onload = this.onLoad;\n img.onerror = this.onError;\n }\n }\n\n if ( PathNode ) ImageNode.__proto__ = PathNode;\n ImageNode.prototype = Object.create( PathNode && PathNode.prototype );\n ImageNode.prototype.constructor = ImageNode;\n\n ImageNode.prototype.renderTo = function renderTo (ctx) {\n if (this.loading.state() === \"resolved\") {\n ctx.save();\n\n this.setTransform(ctx);\n this.setClip(ctx);\n\n this.drawImage(ctx);\n\n ctx.restore();\n }\n };\n\n ImageNode.prototype.optionsChange = function optionsChange (e) {\n if (e.field === \"src\") {\n this.loading = createPromise();\n this.img.src = this.srcElement.src();\n } else {\n PathNode.prototype.optionsChange.call(this, e);\n }\n };\n\n ImageNode.prototype.onLoad = function onLoad () {\n this.loading.resolve();\n this.invalidate();\n };\n\n ImageNode.prototype.onError = function onError () {\n this.loading.reject(new Error(\n \"Unable to load image '\" + this.img.src +\n \"'. Check for connectivity and verify CORS headers.\"\n ));\n };\n\n ImageNode.prototype.drawImage = function drawImage (ctx) {\n var rect = this.srcElement.rect();\n var topLeft = rect.topLeft();\n\n ctx.drawImage(\n this.img, topLeft.x, topLeft.y, rect.width(), rect.height()\n );\n };\n\n return ImageNode;\n}(PathNode));\n\nexport default ImageNode;\n","import PathNode from './path-node';\nimport renderPath from './utils/render-path';\n\nvar MultiPathNode = (function (PathNode) {\n function MultiPathNode () {\n PathNode.apply(this, arguments);\n }\n\n if ( PathNode ) MultiPathNode.__proto__ = PathNode;\n MultiPathNode.prototype = Object.create( PathNode && PathNode.prototype );\n MultiPathNode.prototype.constructor = MultiPathNode;\n\n MultiPathNode.prototype.renderPoints = function renderPoints (ctx) {\n var paths = this.srcElement.paths;\n for (var i = 0; i < paths.length; i++) {\n renderPath(ctx, paths[i]);\n }\n };\n\n return MultiPathNode;\n}(PathNode));\n\nexport default MultiPathNode;\n","import { Path } from '../shapes/path';\nimport PathNode from './path-node';\n\nvar RectNode = (function (PathNode) {\n function RectNode () {\n PathNode.apply(this, arguments);\n }\n\n if ( PathNode ) RectNode.__proto__ = PathNode;\n RectNode.prototype = Object.create( PathNode && PathNode.prototype );\n RectNode.prototype.constructor = RectNode;\n\n RectNode.prototype.renderPoints = function renderPoints (ctx) {\n var geometry = this.srcElement.geometry();\n var ref = geometry.cornerRadius;\n var rx = ref[0];\n var ry = ref[1];\n\n if (rx === 0 && ry === 0) {\n var origin = geometry.origin;\n var size = geometry.size;\n ctx.rect(origin.x, origin.y, size.width, size.height);\n } else {\n PathNode.prototype.renderPoints.call(this, ctx, Path.fromRect(geometry));\n }\n };\n\n return RectNode;\n}(PathNode));\n\nexport default RectNode;\n","import PathNode from './path-node';\n\nvar TextNode = (function (PathNode) {\n function TextNode () {\n PathNode.apply(this, arguments);\n }\n\n if ( PathNode ) TextNode.__proto__ = PathNode;\n TextNode.prototype = Object.create( PathNode && PathNode.prototype );\n TextNode.prototype.constructor = TextNode;\n\n TextNode.prototype.renderTo = function renderTo (ctx) {\n var text = this.srcElement;\n var pos = text.position();\n var size = text.measure();\n\n ctx.save();\n\n this.setTransform(ctx);\n this.setClip(ctx);\n this.setOpacity(ctx);\n\n ctx.beginPath();\n\n ctx.font = text.options.font;\n ctx.textAlign = 'left';\n\n if (text.options.paintOrder === 'stroke') {\n this.stroke(ctx, text, pos, size);\n this.fill(ctx, text, pos, size);\n } else {\n this.fill(ctx, text, pos, size);\n this.stroke(ctx, text, pos, size);\n }\n\n ctx.restore();\n };\n\n TextNode.prototype.stroke = function stroke (ctx, text, pos, size) {\n if (this.setStroke(ctx)) {\n this.setLineDash(ctx);\n ctx.strokeText(text.content(), pos.x, pos.y + size.baseline);\n }\n };\n\n TextNode.prototype.fill = function fill (ctx, text, pos, size) {\n if (this.setFill(ctx)) {\n ctx.fillText(text.content(), pos.x, pos.y + size.baseline);\n }\n };\n\n return TextNode;\n}(PathNode));\n\n\nexport default TextNode;\n","import BaseSurface from '../core/surface';\nimport { createPromise, promiseAll, bindEvents, elementSize, unbindEvents } from '../util';\nimport RootNode from './root-node';\nimport ShapesQuadTree from '../search/shapes-quad-tree';\nimport SurfaceCursor from './surface-cursor';\n\nimport ArcNode from './arc-node';\nimport CircleNode from './circle-node';\nimport GroupNode from './group-node';\nimport ImageNode from './image-node';\nimport MultiPathNode from './multi-path-node';\nimport PathNode from './path-node';\nimport RectNode from './rect-node';\nimport TextNode from './text-node';\nimport NODE_MAP from './node-map';\n\nNODE_MAP.Arc = ArcNode;\nNODE_MAP.Circle = CircleNode;\nNODE_MAP.Group = GroupNode;\nNODE_MAP.Image = ImageNode;\nNODE_MAP.MultiPath = MultiPathNode;\nNODE_MAP.Path = PathNode;\nNODE_MAP.Rect = RectNode;\nNODE_MAP.Text = TextNode;\n\n\nvar Surface = (function (BaseSurface) {\n function Surface(element, options) {\n BaseSurface.call(this, element, options);\n\n this.element.innerHTML = this._template(this);\n\n var canvas = this.element.firstElementChild;\n canvas.style.width = '100%';\n canvas.style.height = '100%';\n\n var size = elementSize(element);\n\n canvas.width = size.width;\n canvas.height = size.height;\n\n this._rootElement = canvas;\n\n this._root = new RootNode(canvas, size);\n\n this._mouseTrackHandler = this._trackMouse.bind(this);\n\n bindEvents(this.element, {\n click: this._mouseTrackHandler,\n mousemove: this._mouseTrackHandler\n });\n }\n\n if ( BaseSurface ) Surface.__proto__ = BaseSurface;\n Surface.prototype = Object.create( BaseSurface && BaseSurface.prototype );\n Surface.prototype.constructor = Surface;\n\n var prototypeAccessors = { type: { configurable: true } };\n\n prototypeAccessors.type.get = function () {\n return \"canvas\";\n };\n\n Surface.prototype.destroy = function destroy () {\n BaseSurface.prototype.destroy.call(this);\n\n if (this._root) {\n this._root.destroy();\n this._root = null;\n }\n\n if (this._searchTree) {\n this._searchTree.clear();\n delete this._searchTree;\n }\n\n if (this._cursor) {\n this._cursor.destroy();\n delete this._cursor;\n }\n\n unbindEvents(this.element, {\n click: this._mouseTrackHandler,\n mousemove: this._mouseTrackHandler\n });\n };\n\n Surface.prototype.draw = function draw (element) {\n BaseSurface.prototype.draw.call(this, element);\n this._root.load([ element ], undefined, this.options.cors);\n\n if (this._searchTree) {\n this._searchTree.add([ element ]);\n }\n };\n\n Surface.prototype.clear = function clear () {\n BaseSurface.prototype.clear.call(this);\n this._root.clear();\n\n if (this._searchTree) {\n this._searchTree.clear();\n }\n\n if (this._cursor) {\n this._cursor.clear();\n }\n };\n\n Surface.prototype.eventTarget = function eventTarget (e) {\n if (this._searchTree) {\n var point = this._surfacePoint(e);\n var shape = this._searchTree.pointShape(point);\n return shape;\n }\n };\n\n Surface.prototype.image = function image () {\n var ref = this;\n var root = ref._root;\n var rootElement = ref._rootElement;\n var loadingStates = [];\n\n root.traverse(function (childNode) {\n if (childNode.loading) {\n loadingStates.push(childNode.loading);\n }\n });\n\n var promise = createPromise();\n var resolveDataURL = function () {\n root._invalidate({ fixedScale: true });\n\n try {\n var data = rootElement.toDataURL();\n promise.resolve(data);\n } catch (e) {\n promise.reject(e);\n }\n };\n\n promiseAll(loadingStates).then(resolveDataURL, resolveDataURL);\n\n return promise;\n };\n\n Surface.prototype.suspendTracking = function suspendTracking () {\n BaseSurface.prototype.suspendTracking.call(this);\n if (this._searchTree) {\n this._searchTree.clear();\n delete this._searchTree;\n }\n };\n\n Surface.prototype.resumeTracking = function resumeTracking () {\n BaseSurface.prototype.resumeTracking.call(this);\n if (!this._searchTree) {\n this._searchTree = new ShapesQuadTree();\n\n var childNodes = this._root.childNodes;\n var rootElements = [];\n for (var idx = 0; idx < childNodes.length; idx++) {\n rootElements.push(childNodes[idx].srcElement);\n }\n this._searchTree.add(rootElements);\n }\n };\n\n Surface.prototype._resize = function _resize () {\n this._rootElement.width = this._size.width;\n this._rootElement.height = this._size.height;\n\n this._root.size = this._size;\n this._root.invalidate();\n };\n\n Surface.prototype._template = function _template () {\n return \"\";\n };\n\n Surface.prototype._enableTracking = function _enableTracking () {\n this._searchTree = new ShapesQuadTree();\n this._cursor = new SurfaceCursor(this);\n\n BaseSurface.prototype._enableTracking.call(this);\n };\n\n Surface.prototype._trackMouse = function _trackMouse (e) {\n if (this._suspendedTracking) {\n return;\n }\n\n var shape = this.eventTarget(e);\n\n if (e.type !== \"click\") {\n var currentShape = this._currentShape;\n if (currentShape && currentShape !== shape) {\n this.trigger(\"mouseleave\", {\n element: currentShape,\n originalEvent: e,\n type: \"mouseleave\"\n });\n }\n\n if (shape && currentShape !== shape) {\n this.trigger(\"mouseenter\", {\n element: shape,\n originalEvent: e,\n type: \"mouseenter\"\n });\n }\n\n this.trigger(\"mousemove\", {\n element: shape,\n originalEvent: e,\n type: \"mousemove\"\n });\n\n this._currentShape = shape;\n } else if (shape) {\n this.trigger(\"click\", {\n element: shape,\n originalEvent: e,\n type: \"click\"\n });\n }\n };\n\n Object.defineProperties( Surface.prototype, prototypeAccessors );\n\n return Surface;\n}(BaseSurface));\n\nexport default Surface;\n","import { Class, logToConsole } from './common';\nimport SVGSurface from './svg/surface';\nimport CanvasSurface from './canvas/surface';\n\nvar instance;\nvar support;\n\nvar hasDocument = function () { return typeof document !== \"undefined\"; };\n\nvar supportsCanvas = function () { return hasDocument() &&\n document.createElement(\"canvas\").getContext; };\n\nvar supportsSVG = function () { return hasDocument() &&\n document.implementation.hasFeature(\"http://www.w3.org/TR/SVG11/feature#BasicStructure\", \"1.1\"); };\n\nvar SurfaceFactory = (function (Class) {\n function SurfaceFactory() {\n Class.call(this);\n\n this._items = [ {\n name: \"svg\",\n type: SVGSurface\n }, {\n name: \"canvas\",\n type: CanvasSurface\n } ];\n }\n\n if ( Class ) SurfaceFactory.__proto__ = Class;\n SurfaceFactory.prototype = Object.create( Class && Class.prototype );\n SurfaceFactory.prototype.constructor = SurfaceFactory;\n\n var staticAccessors = { support: { configurable: true },current: { configurable: true } };\n\n staticAccessors.support.get = function () {\n if (!support) {\n support = {\n canvas: supportsCanvas(),\n svg: supportsSVG()\n };\n }\n\n return support;\n };\n\n staticAccessors.current.get = function () {\n if (!instance) {\n instance = new SurfaceFactory();\n }\n\n return instance;\n };\n\n SurfaceFactory.prototype.create = function create (element, options) {\n var items = this._items;\n var match = items[0];\n\n if (options && options.type) {\n var preferred = options.type.toLowerCase();\n for (var i = 0; i < items.length; i++) {\n if (items[i].name === preferred) {\n match = items[i];\n break;\n }\n }\n }\n\n if (match) {\n return new match.type(element, options);\n }\n\n logToConsole(\n \"Warning: Unable to create Kendo UI Drawing Surface. Possible causes:\\n\" +\n \"- The browser does not support SVG and Canvas. User agent: \" + (navigator.userAgent));\n };\n\n Object.defineProperties( SurfaceFactory, staticAccessors );\n\n return SurfaceFactory;\n}(Class));\n\nexport default SurfaceFactory;\n\n","import BaseSurface from './core/surface';\nimport SurfaceFactory from './surface-factory';\n\nvar Surface = (function (BaseSurface) {\n function Surface () {\n BaseSurface.apply(this, arguments);\n }\n\n if ( BaseSurface ) Surface.__proto__ = BaseSurface;\n Surface.prototype = Object.create( BaseSurface && BaseSurface.prototype );\n Surface.prototype.constructor = Surface;\n\n var staticAccessors = { support: { configurable: true } };\n\n staticAccessors.support.get = function () {\n return SurfaceFactory.support;\n };\n\n Surface.create = function create (element, options) {\n return SurfaceFactory.current.create(element, options);\n };\n\n Object.defineProperties( Surface, staticAccessors );\n\n return Surface;\n}(BaseSurface));\n\nexport default Surface;\n\n","import { Class } from '../common';\n\nvar Highlight = (function (Class) {\n function Highlight() {\n Class.call(this);\n\n this._points = [];\n }\n\n if ( Class ) Highlight.__proto__ = Class;\n Highlight.prototype = Object.create( Class && Class.prototype );\n Highlight.prototype.constructor = Highlight;\n\n Highlight.prototype.destroy = function destroy () {\n this._points = [];\n };\n\n Highlight.prototype.show = function show (points, opacity) {\n var this$1 = this;\n\n var arrayPoints = [].concat(points);\n this.hide();\n\n for (var i = 0; i < arrayPoints.length; i++) {\n var point = arrayPoints[i];\n if (point && point.toggleHighlight && point.hasHighlight()) {\n this$1.togglePointHighlight(point, true, opacity);\n this$1._points.push(point);\n }\n }\n };\n\n Highlight.prototype.togglePointHighlight = function togglePointHighlight (point, show, opacity) {\n var toggleHandler = (point.options.highlight || {}).toggle;\n if (toggleHandler) {\n var eventArgs = {\n category: point.category,\n series: point.series,\n dataItem: point.dataItem,\n value: point.value,\n stackValue: point.stackValue,\n preventDefault: preventDefault,\n visual: point.highlightVisual(),\n show: show\n };\n toggleHandler(eventArgs);\n if (!eventArgs._defaultPrevented) {\n point.toggleHighlight(show, opacity);\n }\n } else {\n point.toggleHighlight(show, opacity);\n }\n };\n\n Highlight.prototype.hide = function hide () {\n var this$1 = this;\n\n var points = this._points;\n while (points.length) {\n this$1.togglePointHighlight(points.pop(), false);\n }\n };\n\n Highlight.prototype.isHighlighted = function isHighlighted (element) {\n var points = this._points;\n\n for (var i = 0; i < points.length; i++) {\n var point = points[i];\n if (element === point) {\n return true;\n }\n }\n\n return false;\n };\n\n return Highlight;\n}(Class));\n\nfunction preventDefault() {\n this._defaultPrevented = true;\n}\n\nexport default Highlight;\n","export default function acceptKey(e, mouseKey) {\n var key = (mouseKey || \"\").toLowerCase();\n var event = e.event;\n var accept = (key === \"none\" && !(event.ctrlKey || event.shiftKey || event.altKey)) || event[key + \"Key\"];\n\n return accept;\n}","export default function toChartAxisRanges(axisRanges) {\n var ranges = {};\n for (var idx = 0; idx < axisRanges.length; idx++) {\n var axisRange = axisRanges[idx];\n if (axisRange.axis.options.name) {\n ranges[axisRange.axis.options.name] = {\n min: axisRange.range.min,\n max: axisRange.range.max\n };\n }\n }\n return ranges;\n}","import acceptKey from './accept-key';\nimport toChartAxisRanges from './to-chart-axis-ranges';\n\nimport { X, Y } from '../../common/constants';\nimport { Class, deepExtend } from '../../common';\n\nvar Pannable = (function (Class) {\n function Pannable(plotArea, options) {\n Class.call(this);\n\n this.plotArea = plotArea;\n this.options = deepExtend({}, this.options, options);\n }\n\n if ( Class ) Pannable.__proto__ = Class;\n Pannable.prototype = Object.create( Class && Class.prototype );\n Pannable.prototype.constructor = Pannable;\n\n Pannable.prototype.start = function start (e) {\n this._active = acceptKey(e, this.options.key);\n return this._active;\n };\n\n Pannable.prototype.move = function move (e) {\n if (this._active) {\n var axisRanges = this.axisRanges = this._panAxes(e, X).concat(this._panAxes(e, Y));\n if (axisRanges.length) {\n this.axisRanges = axisRanges;\n return toChartAxisRanges(axisRanges);\n }\n }\n };\n\n Pannable.prototype.end = function end () {\n var active = this._active;\n this._active = false;\n\n return active;\n };\n\n Pannable.prototype.pan = function pan () {\n var ref = this;\n var plotArea = ref.plotArea;\n var axisRanges = ref.axisRanges;\n if (axisRanges.length) {\n for (var idx = 0; idx < axisRanges.length; idx++) {\n var range = axisRanges[idx];\n plotArea.updateAxisOptions(range.axis, range.range);\n }\n plotArea.redraw(plotArea.panes);\n }\n };\n\n Pannable.prototype.destroy = function destroy () {\n delete this.plotArea;\n };\n\n Pannable.prototype._panAxes = function _panAxes (e, position) {\n var plotArea = this.plotArea;\n var delta = -e[position].delta;\n var lock = (this.options.lock || \"\").toLowerCase();\n var updatedAxes = [];\n\n if (delta !== 0 && (lock || \"\").toLowerCase() !== position) {\n var axes = plotArea.axes;\n for (var idx = 0; idx < axes.length; idx++) {\n var axis = axes[idx];\n\n if (position === X && !axis.options.vertical || position === Y && axis.options.vertical) {\n var range = axis.pan(delta);\n\n if (range) {\n range.limitRange = true;\n updatedAxes.push({\n axis: axis,\n range: range\n });\n }\n }\n }\n }\n\n return updatedAxes;\n };\n\n return Pannable;\n}(Class));\n\nPannable.prototype.options = {\n key: \"none\",\n lock: \"none\"\n};\n\nexport default Pannable;","import acceptKey from './accept-key';\nimport toChartAxisRanges from './to-chart-axis-ranges';\n\nimport { X, Y } from '../../common/constants';\nimport { Class, deepExtend, elementStyles, elementOffset, defined } from '../../common';\n\nvar ZoomSelection = (function (Class) {\n function ZoomSelection(chart, options) {\n Class.call(this);\n\n this.chart = chart;\n this.options = deepExtend({}, this.options, options);\n this.createElement();\n }\n\n if ( Class ) ZoomSelection.__proto__ = Class;\n ZoomSelection.prototype = Object.create( Class && Class.prototype );\n ZoomSelection.prototype.constructor = ZoomSelection;\n\n ZoomSelection.prototype.createElement = function createElement () {\n var marquee = this._marquee = document.createElement(\"div\");\n marquee.className = \"k-marquee\";\n var marqueeColor = document.createElement(\"div\");\n marqueeColor.className = \"k-marquee-color\";\n marquee.appendChild(marqueeColor);\n };\n\n ZoomSelection.prototype.removeElement = function removeElement () {\n if (this._marquee.parentNode) {\n this._marquee.parentNode.removeChild(this._marquee);\n }\n };\n\n ZoomSelection.prototype.setStyles = function setStyles (styles) {\n elementStyles(this._marquee, styles);\n };\n\n ZoomSelection.prototype.start = function start (e) {\n if (acceptKey(e, this.options.key)) {\n var chart = this.chart;\n var point = chart._eventCoordinates(e);\n var zoomPane = this._zoomPane = chart._plotArea.paneByPoint(point);\n var clipBox = zoomPane ? zoomPane.chartsBox().clone() : null;\n\n if (zoomPane && clipBox) {\n var offset = this._elementOffset();\n\n clipBox.translate(offset.left, offset.top);\n this._zoomPaneClipBox = clipBox;\n\n document.body.appendChild(this._marquee);\n this.setStyles({\n left: e.pageX + 1,\n top: e.pageY + 1,\n width: 0,\n height: 0\n });\n\n return true;\n }\n }\n return false;\n };\n\n ZoomSelection.prototype._elementOffset = function _elementOffset () {\n var chartElement = this.chart.element;\n var ref = elementStyles(chartElement, [ \"paddingLeft\", \"paddingTop\" ]);\n var paddingLeft = ref.paddingLeft;\n var paddingTop = ref.paddingTop;\n var offset = elementOffset(chartElement);\n\n return {\n left: paddingLeft + offset.left,\n top: paddingTop + offset.top\n };\n };\n\n ZoomSelection.prototype.move = function move (e) {\n var zoomPane = this._zoomPane;\n if (zoomPane) {\n this.setStyles(this._selectionPosition(e));\n }\n };\n\n ZoomSelection.prototype.end = function end (e) {\n var zoomPane = this._zoomPane;\n if (zoomPane) {\n var elementOffset = this._elementOffset();\n var selectionPosition = this._selectionPosition(e);\n selectionPosition.left -= elementOffset.left;\n selectionPosition.top -= elementOffset.top;\n\n var start = { x: selectionPosition.left, y: selectionPosition.top };\n var end = { x: selectionPosition.left + selectionPosition.width, y: selectionPosition.top + selectionPosition.height };\n this._updateAxisRanges(start, end);\n\n this.removeElement();\n delete this._zoomPane;\n\n return toChartAxisRanges(this.axisRanges);\n }\n };\n\n ZoomSelection.prototype.zoom = function zoom () {\n var axisRanges = this.axisRanges;\n if (axisRanges && axisRanges.length) {\n var plotArea = this.chart._plotArea;\n for (var idx = 0; idx < axisRanges.length; idx++) {\n var axisRange = axisRanges[idx];\n plotArea.updateAxisOptions(axisRange.axis, axisRange.range);\n }\n plotArea.redraw(plotArea.panes);\n }\n };\n\n ZoomSelection.prototype.destroy = function destroy () {\n this.removeElement();\n delete this._marquee;\n delete this.chart;\n };\n\n ZoomSelection.prototype._updateAxisRanges = function _updateAxisRanges (start, end) {\n var lock = (this.options.lock || \"\").toLowerCase();\n var axisRanges = [];\n\n var axes = this._zoomPane.axes;\n for (var idx = 0; idx < axes.length; idx++) {\n var axis = axes[idx];\n var vertical = axis.options.vertical;\n if (!(lock === X && !vertical) && !(lock === Y && vertical) && defined(axis.axisIndex)) {\n var range = axis.pointsRange(start, end);\n if (range) {\n axisRanges.push({\n axis: axis,\n range: range\n });\n }\n }\n }\n\n this.axisRanges = axisRanges;\n };\n\n ZoomSelection.prototype._selectionPosition = function _selectionPosition (e) {\n var clipBox = this._zoomPaneClipBox;\n var startLocation = {\n x: e.x.startLocation,\n y: e.y.startLocation\n };\n var pageX = e.x.location;\n var pageY = e.y.location;\n var lock = (this.options.lock || \"\").toLowerCase();\n var left = Math.min(startLocation.x, pageX);\n var top = Math.min(startLocation.y, pageY);\n var width = Math.abs(startLocation.x - pageX);\n var height = Math.abs(startLocation.y - pageY);\n\n if (lock === X) {\n left = clipBox.x1;\n width = clipBox.width();\n }\n if (lock === Y) {\n top = clipBox.y1;\n height = clipBox.height();\n }\n\n if (pageX > clipBox.x2) {\n width = clipBox.x2 - startLocation.x;\n }\n\n if (pageX < clipBox.x1) {\n width = startLocation.x - clipBox.x1;\n }\n\n if (pageY > clipBox.y2) {\n height = clipBox.y2 - startLocation.y;\n }\n\n if (pageY < clipBox.y1) {\n height = startLocation.y - clipBox.y1;\n }\n\n return {\n left: Math.max(left, clipBox.x1),\n top: Math.max(top, clipBox.y1),\n width: width,\n height: height\n };\n };\n\n return ZoomSelection;\n}(Class));\n\nZoomSelection.prototype.options = {\n key: \"shift\",\n lock: \"none\"\n};\n\nexport default ZoomSelection;","\nimport toChartAxisRanges from './to-chart-axis-ranges';\n\nimport { X, Y } from '../../common/constants';\nimport { Class, deepExtend } from '../../common';\nimport { limitValue } from '../../drawing-utils';\n\n// Limit the zoom rate between 1% and 90% per mousewheel event.\n// At zoom rates close to 100% the axis range quickly becomes 0.\nvar MIN_RATE = 0.01;\nvar MAX_RATE = 0.9;\nvar DEFAULT_RATE = 0.3;\n\nvar MousewheelZoom = (function (Class) {\n function MousewheelZoom(chart, options) {\n Class.call(this);\n\n this.chart = chart;\n this.options = deepExtend({\n rate: DEFAULT_RATE\n }, this.options, options);\n }\n\n if ( Class ) MousewheelZoom.__proto__ = Class;\n MousewheelZoom.prototype = Object.create( Class && Class.prototype );\n MousewheelZoom.prototype.constructor = MousewheelZoom;\n\n MousewheelZoom.prototype.updateRanges = function updateRanges (delta, coords) {\n var this$1 = this;\n\n var lock = (this.options.lock || \"\").toLowerCase();\n var axisRanges = [];\n var axes = this.chart._plotArea.axes;\n\n for (var idx = 0; idx < axes.length; idx++) {\n var axis = axes[idx];\n var vertical = axis.options.vertical;\n\n if (!(lock === X && !vertical) && !(lock === Y && vertical) && axis.zoomRange) {\n var rate = limitValue(this$1.options.rate, MIN_RATE, MAX_RATE);\n var range = axis.zoomRange(-delta * rate, coords);\n\n if (range) {\n axisRanges.push({\n axis: axis,\n range: range\n });\n }\n }\n }\n\n this.axisRanges = axisRanges;\n return toChartAxisRanges(axisRanges);\n };\n\n MousewheelZoom.prototype.zoom = function zoom () {\n var axisRanges = this.axisRanges;\n var plotArea = this.chart._plotArea;\n\n if (axisRanges && axisRanges.length && plotArea.updateAxisOptions) {\n for (var idx = 0; idx < axisRanges.length; idx++) {\n var axisRange = axisRanges[idx];\n plotArea.updateAxisOptions(axisRange.axis, axisRange.range);\n }\n plotArea.redraw(plotArea.panes);\n }\n };\n\n MousewheelZoom.prototype.destroy = function destroy () {\n delete this.chart;\n };\n\n return MousewheelZoom;\n}(Class));\n\nexport default MousewheelZoom;\n","\nexport default function alignStart(size, rect, align, axis, sizeField) {\n var start;\n if (align === \"start\") {\n start = rect.origin[axis];\n } else if (align === \"end\") {\n start = rect.origin[axis] + rect.size[sizeField] - size;\n } else {\n start = rect.origin[axis] + (rect.size[sizeField] - size) / 2;\n }\n\n return start;\n}","\nexport default function alignStartReverse(size, rect, align, axis, sizeField) {\n var start;\n if (align === \"start\") {\n start = rect.origin[axis] + rect.size[sizeField] - size;\n } else if (align === \"end\") {\n start = rect.origin[axis];\n } else {\n start = rect.origin[axis] + (rect.size[sizeField] - size) / 2;\n }\n\n return start;\n}","import Group from './group';\nimport Size from '../geometry/size';\nimport Rect from '../geometry/rect';\nimport Point from '../geometry/point';\nimport createTransform from '../geometry/transform';\nimport translateToPoint from '../alignment/translate-to-point';\nimport alignStart from '../alignment/align-start';\nimport alignStartReverse from '../alignment/align-start-reverse';\n\nvar DEFAULT_OPTIONS = {\n alignContent: \"start\",\n justifyContent: \"start\",\n alignItems: \"start\",\n spacing: 0,\n orientation: \"horizontal\",\n lineSpacing: 0,\n wrap: true,\n revers: false\n};\n\nvar forEach = function (elements, callback) {\n elements.forEach(callback);\n};\n\nvar forEachReverse = function (elements, callback) {\n var length = elements.length;\n\n for (var idx = length - 1; idx >= 0; idx--) {\n callback(elements[idx], idx);\n }\n};\n\nvar Layout = (function (Group) {\n function Layout(rect, options) {\n Group.call(this, Object.assign({}, DEFAULT_OPTIONS, options));\n this._rect = rect;\n this._fieldMap = {};\n }\n\n if ( Group ) Layout.__proto__ = Group;\n Layout.prototype = Object.create( Group && Group.prototype );\n Layout.prototype.constructor = Layout;\n\n Layout.prototype.rect = function rect (value) {\n if (value) {\n this._rect = value;\n return this;\n }\n\n return this._rect;\n };\n\n Layout.prototype._initMap = function _initMap () {\n var options = this.options;\n var fieldMap = this._fieldMap;\n if (options.orientation === \"horizontal\") {\n fieldMap.sizeField = \"width\";\n fieldMap.groupsSizeField = \"height\";\n fieldMap.groupAxis = \"x\";\n fieldMap.groupsAxis = \"y\";\n } else {\n fieldMap.sizeField = \"height\";\n fieldMap.groupsSizeField = \"width\";\n fieldMap.groupAxis = \"y\";\n fieldMap.groupsAxis = \"x\";\n }\n\n if (options.reverse) {\n this.forEach = forEachReverse;\n this.justifyAlign = alignStartReverse;\n } else {\n this.forEach = forEach;\n this.justifyAlign = alignStart;\n }\n };\n\n Layout.prototype.reflow = function reflow () {\n var this$1 = this;\n\n if (!this._rect || this.children.length === 0) {\n return;\n }\n this._initMap();\n\n if (this.options.transform) {\n this.transform(null);\n }\n\n var options = this.options;\n var rect = this._rect;\n var ref = this._initGroups();\n var groups = ref.groups;\n var groupsSize = ref.groupsSize;\n var ref$1 = this._fieldMap;\n var sizeField = ref$1.sizeField;\n var groupsSizeField = ref$1.groupsSizeField;\n var groupAxis = ref$1.groupAxis;\n var groupsAxis = ref$1.groupsAxis;\n var groupOrigin = new Point();\n var elementOrigin = new Point();\n var size = new Size();\n var groupStart = alignStart(groupsSize, rect, options.alignContent, groupsAxis, groupsSizeField);\n var elementStart, group, groupBox;\n\n var arrangeElements = function (bbox, idx) {\n var element = group.elements[idx];\n\n elementOrigin[groupAxis] = elementStart;\n elementOrigin[groupsAxis] = alignStart(bbox.size[groupsSizeField], groupBox, options.alignItems, groupsAxis, groupsSizeField);\n translateToPoint(elementOrigin, bbox, element);\n elementStart += bbox.size[sizeField] + options.spacing;\n };\n\n for (var groupIdx = 0; groupIdx < groups.length; groupIdx++) {\n group = groups[groupIdx];\n groupOrigin[groupAxis] = elementStart = this$1.justifyAlign(group.size, rect, options.justifyContent, groupAxis, sizeField);\n groupOrigin[groupsAxis] = groupStart;\n size[sizeField] = group.size;\n size[groupsSizeField] = group.lineSize;\n groupBox = new Rect(groupOrigin, size);\n this$1.forEach(group.bboxes, arrangeElements);\n\n groupStart += group.lineSize + options.lineSpacing;\n }\n\n if (!options.wrap && group.size > rect.size[sizeField]) {\n var scale = rect.size[sizeField] / groupBox.size[sizeField];\n var scaledStart = groupBox.topLeft().scale(scale, scale);\n var scaledSize = groupBox.size[groupsSizeField] * scale;\n var newStart = alignStart(scaledSize, rect, options.alignContent, groupsAxis, groupsSizeField);\n var transform = createTransform();\n if (groupAxis === \"x\") {\n transform.translate(rect.origin.x - scaledStart.x, newStart - scaledStart.y);\n } else {\n transform.translate(newStart - scaledStart.x, rect.origin.y - scaledStart.y);\n }\n transform.scale(scale, scale);\n\n this.transform(transform);\n }\n };\n\n Layout.prototype._initGroups = function _initGroups () {\n var this$1 = this;\n\n var ref = this;\n var options = ref.options;\n var children = ref.children;\n var lineSpacing = options.lineSpacing;\n var wrap = options.wrap;\n var spacing = options.spacing;\n var sizeField = this._fieldMap.sizeField;\n var group = this._newGroup();\n var groups = [];\n var addGroup = function() {\n groups.push(group);\n groupsSize += group.lineSize + lineSpacing;\n };\n var groupsSize = -lineSpacing;\n\n for (var idx = 0; idx < children.length; idx++) {\n var element = children[idx];\n var bbox = children[idx].clippedBBox();\n if (element.visible() && bbox) {\n if (wrap && group.size + bbox.size[sizeField] + spacing > this$1._rect.size[sizeField]) {\n if (group.bboxes.length === 0) {\n this$1._addToGroup(group, bbox, element);\n addGroup();\n group = this$1._newGroup();\n } else {\n addGroup();\n group = this$1._newGroup();\n this$1._addToGroup(group, bbox, element);\n }\n } else {\n this$1._addToGroup(group, bbox, element);\n }\n }\n }\n\n if (group.bboxes.length) {\n addGroup();\n }\n\n return {\n groups: groups,\n groupsSize: groupsSize\n };\n };\n\n Layout.prototype._addToGroup = function _addToGroup (group, bbox, element) {\n group.size += bbox.size[this._fieldMap.sizeField] + this.options.spacing;\n group.lineSize = Math.max(bbox.size[this._fieldMap.groupsSizeField], group.lineSize);\n group.bboxes.push(bbox);\n group.elements.push(element);\n };\n\n Layout.prototype._newGroup = function _newGroup () {\n return {\n lineSize: 0,\n size: -this.options.spacing,\n bboxes: [],\n elements: []\n };\n };\n\n return Layout;\n}(Group));\n\nexport default Layout;","import createTransform from '../geometry/transform';\n\nexport default function translateToPoint(point, bbox, element) {\n var transofrm = element.transform() || createTransform();\n var matrix = transofrm.matrix();\n matrix.e += point.x - bbox.origin.x;\n matrix.f += point.y - bbox.origin.y;\n\n transofrm.matrix(matrix);\n element.transform(transofrm);\n}","import { drawing as draw } from '@progress/kendo-drawing';\n\nimport { ChartElement, Box, rectToBox } from '../../core';\nimport { CENTER, HORIZONTAL, START, END, VERTICAL } from '../../common/constants';\n\nvar alignItems = function (rtl) { return (rtl ? END : START); };\n\nvar LegendLayout = (function (ChartElement) {\n function LegendLayout(options, chartService) {\n ChartElement.call(this, options);\n\n this.chartService = chartService;\n }\n\n if ( ChartElement ) LegendLayout.__proto__ = ChartElement;\n LegendLayout.prototype = Object.create( ChartElement && ChartElement.prototype );\n LegendLayout.prototype.constructor = LegendLayout;\n\n LegendLayout.prototype.render = function render () {\n var ref = this;\n var children = ref.children;\n var options = ref.options;\n var vertical = options.vertical;\n\n this.visual = new draw.Layout(null, {\n spacing: vertical ? 0 : options.spacing,\n lineSpacing: vertical ? options.spacing : 0,\n orientation: vertical ? VERTICAL : HORIZONTAL,\n reverse: options.rtl,\n alignItems: vertical ? alignItems(options.rtl) : CENTER\n });\n\n for (var idx = 0; idx < children.length; idx++) {\n var legendItem = children[idx];\n legendItem.reflow(new Box());\n legendItem.renderVisual();\n }\n };\n\n LegendLayout.prototype.reflow = function reflow (box) {\n this.visual.rect(box.toRect());\n this.visual.reflow();\n var bbox = this.visual.clippedBBox();\n\n if (bbox) {\n this.box = rectToBox(bbox);\n } else {\n this.box = new Box();\n }\n };\n\n LegendLayout.prototype.renderVisual = function renderVisual () {\n this.addVisual();\n };\n\n LegendLayout.prototype.createVisual = function createVisual () {};\n\n return LegendLayout;\n}(ChartElement));\n\nexport default LegendLayout;\n","import { ShapeElement } from '../../core';\nimport { deepExtend, setDefaultOptions } from '../../common';\nimport { CROSS, LEFT, TOP, WHITE } from '../../common/constants';\nimport { valueOrDefault } from '../../drawing-utils';\n\nexport var DEFAULT_MARKER_SIZE = 10;\nexport var DEFAULT_MARKER_BORDER_WIDTH = 2;\n\nvar LegendItemMarker = (function (ShapeElement) {\n function LegendItemMarker () {\n ShapeElement.apply(this, arguments);\n }\n\n if ( ShapeElement ) LegendItemMarker.__proto__ = ShapeElement;\n LegendItemMarker.prototype = Object.create( ShapeElement && ShapeElement.prototype );\n LegendItemMarker.prototype.constructor = LegendItemMarker;\n\n LegendItemMarker.prototype.visualStyle = function visualStyle () {\n var options = this.markerOptions();\n var border = options.border;\n\n return {\n stroke: {\n width: border.width,\n color: border.color,\n opacity: valueOrDefault(border.opacity, options.opacity),\n dashType: border.dashType\n },\n fill: {\n color: options.background,\n opacity: options.opacity\n },\n cursor: options.cursor\n };\n };\n\n LegendItemMarker.prototype.markerOptions = function markerOptions () {\n return this.options;\n };\n\n LegendItemMarker.prototype.markerHighlightOptions = function markerHighlightOptions () {\n var options = this.markerOptions();\n var borderWidth = options.highlight.border.width;\n\n return deepExtend(\n {},\n options,\n { background: options.border.color },\n options.highlight,\n options.type === CROSS ? {\n background: options.highlight.border.color,\n border: { color: options.highlight.background, width: borderWidth / 2 },\n width: options.width,\n height: options.height,\n margin: { top: 0, left: 0 }\n } : {}\n );\n };\n\n LegendItemMarker.prototype.createHighlight = function createHighlight () {\n var highlight = new ShapeElement(this.markerHighlightOptions());\n var box = this.paddingBox.clone();\n highlight.reflow(box.pad(highlight.options.border.width));\n this.highlight = [ highlight.getElement() ];\n\n return this.highlight;\n };\n\n return LegendItemMarker;\n}(ShapeElement));\n\nsetDefaultOptions(LegendItemMarker, {\n border: {\n width: DEFAULT_MARKER_BORDER_WIDTH\n },\n width: DEFAULT_MARKER_SIZE - DEFAULT_MARKER_BORDER_WIDTH,\n height: DEFAULT_MARKER_SIZE - DEFAULT_MARKER_BORDER_WIDTH,\n background: WHITE,\n margin: {\n top: -1,\n left: -1\n },\n vAlign: TOP,\n align: LEFT,\n highlight: {\n width: DEFAULT_MARKER_SIZE,\n height: DEFAULT_MARKER_SIZE,\n border: {\n color: WHITE,\n width: DEFAULT_MARKER_BORDER_WIDTH\n }\n }\n});\n\nexport default LegendItemMarker;\n","import { drawing as draw } from '@progress/kendo-drawing';\nimport ShapeElement from \"../../core/shape-element\";\nimport { setDefaultOptions } from '../../common';\nimport { BOTTOM, RIGHT } from '../../common/constants';\n\nvar MarkerLineArea = (function (ShapeElement) {\n function MarkerLineArea () {\n ShapeElement.apply(this, arguments);\n }\n\n if ( ShapeElement ) MarkerLineArea.__proto__ = ShapeElement;\n MarkerLineArea.prototype = Object.create( ShapeElement && ShapeElement.prototype );\n MarkerLineArea.prototype.constructor = MarkerLineArea;\n\n MarkerLineArea.prototype.getElement = function getElement () {\n var group = new draw.Group();\n var element = new draw.MultiPath(this.visualStyle());\n var ref = this;\n var box = ref.paddingBox;\n var halfHeight = box.height() / 2;\n\n element\n .moveTo(box.x1, box.y1 + halfHeight)\n .lineTo(box.x1, box.y2)\n .lineTo(box.x2, box.y2);\n\n group.append(element);\n\n return group;\n };\n\n return MarkerLineArea;\n}(ShapeElement));\n\nsetDefaultOptions(MarkerLineArea, {\n width: 15,\n height: 15,\n align: RIGHT,\n vAlign: BOTTOM,\n margin: {\n right: -2,\n bottom: 2\n }\n});\n\nexport default MarkerLineArea;\n","import { drawing as draw } from '@progress/kendo-drawing';\nimport ShapeElement from \"../../core/shape-element\";\nimport { deepExtend, setDefaultOptions } from '../../common';\nimport { CENTER, CIRCLE, LEFT, RECT, TOP, WHITE } from \"../../common/constants\";\nimport MarkerLineArea from \"./legend-item-line-area\";\nimport { DEFAULT_MARKER_BORDER_WIDTH, DEFAULT_MARKER_SIZE } from \"./legend-item-marker\";\n\nvar LegendItemLine = (function (ShapeElement) {\n function LegendItemLine () {\n ShapeElement.apply(this, arguments);\n }\n\n if ( ShapeElement ) LegendItemLine.__proto__ = ShapeElement;\n LegendItemLine.prototype = Object.create( ShapeElement && ShapeElement.prototype );\n LegendItemLine.prototype.constructor = LegendItemLine;\n\n LegendItemLine.prototype.getElement = function getElement () {\n var group = new draw.Group();\n var element = new draw.MultiPath({\n stroke: {\n color: this.options.border.color,\n opacity: this.options.opacity,\n width: this.options.height,\n dashType: this.options.dashType\n }\n });\n var box = this.paddingBox;\n var centerY = box.center().y;\n\n element\n .moveTo(box.x1, centerY)\n .lineTo(box.x2, centerY);\n\n group.append(element);\n\n return group;\n };\n\n LegendItemLine.prototype.createHighlight = function createHighlight () {\n this.highlight = [ this.createHighlightLine(), this.createHighlightMarker() ];\n return this.highlight;\n };\n\n LegendItemLine.prototype.createHighlightLine = function createHighlightLine () {\n var options = deepExtend({}, {\n border: {\n color: this.options.border.color,\n opacity: this.options.border.opacity,\n dashType: this.options.border.dashType\n }\n }, this.options.highlight);\n var highlightLine = new MarkerLineArea(options);\n highlightLine.reflow(this.parent.paddingBox.clone());\n\n this.highlightLine = highlightLine.getElement();\n\n return this.highlightLine;\n };\n\n LegendItemLine.prototype.createHighlightMarker = function createHighlightMarker () {\n var options = deepExtend({}, {\n background: this.options.background,\n }, this.options.highlight.markers);\n var highlightMarker = new ShapeElement(options);\n var paddingBox = this.parent.paddingBox;\n var borderWidth = options.border.width;\n var box = this.parent.box.clone();\n\n box.pad({\n left: borderWidth - paddingBox.x1,\n top: borderWidth - paddingBox.y1\n });\n\n highlightMarker.reflow(box);\n this.highlightMarker = highlightMarker.getElement();\n\n return this.highlightMarker;\n };\n\n return LegendItemLine;\n}(ShapeElement));\n\nsetDefaultOptions(LegendItemLine, {\n border: {\n width: 0\n },\n type: RECT,\n align: LEFT,\n vAlign: CENTER,\n highlight: {\n border: {\n width: DEFAULT_MARKER_BORDER_WIDTH\n },\n markers: {\n type: CIRCLE,\n width: DEFAULT_MARKER_SIZE,\n height: DEFAULT_MARKER_SIZE,\n border: {\n width: DEFAULT_MARKER_BORDER_WIDTH,\n color: WHITE\n },\n align: LEFT,\n vAlign: TOP\n }\n }\n});\n\nexport default LegendItemLine;\n","import ShapeElement from \"../../core/shape-element\";\nimport { deepExtend, setDefaultOptions } from '../../common';\nimport { CIRCLE, LEFT, TOP, WHITE, X, Y } from \"../../common/constants\";\nimport { DEFAULT_MARKER_BORDER_WIDTH, DEFAULT_MARKER_SIZE } from \"./legend-item-marker\";\n\nvar LegendItemSquare = (function (ShapeElement) {\n function LegendItemSquare () {\n ShapeElement.apply(this, arguments);\n }\n\n if ( ShapeElement ) LegendItemSquare.__proto__ = ShapeElement;\n LegendItemSquare.prototype = Object.create( ShapeElement && ShapeElement.prototype );\n LegendItemSquare.prototype.constructor = LegendItemSquare;\n\n LegendItemSquare.prototype.createHighlight = function createHighlight () {\n var options = deepExtend({}, {\n background: this.options.background,\n }, this.options.highlight.markers);\n var highlight = new ShapeElement(options);\n\n var box = this.paddingBox.clone();\n var targetBox = this.parent.box.clone();\n box.align(targetBox, X, LEFT);\n box.align(targetBox, Y, TOP);\n highlight.reflow(box);\n\n this.highlight = [ highlight.getElement() ];\n\n return this.highlight;\n };\n\n return LegendItemSquare;\n}(ShapeElement));\n\nsetDefaultOptions(LegendItemSquare, {\n highlight: {\n markers: {\n type: CIRCLE,\n width: DEFAULT_MARKER_SIZE,\n height: DEFAULT_MARKER_SIZE,\n border: {\n width: DEFAULT_MARKER_BORDER_WIDTH,\n color: WHITE\n },\n margin: {\n top: -3,\n left: -3\n }\n }\n }\n});\n\nexport default LegendItemSquare;\n","import { drawing as draw } from '@progress/kendo-drawing';\n\nimport { BoxElement, FloatElement, TextBox } from '../../core';\nimport { AREA, LEGEND_ITEM_ARIA_ROLE_DESCRIPTION, LEGEND_ITEM_CLASSNAME, LEGEND_ITEM_CLICK, LEGEND_ITEM_HOVER, LEGEND_ITEM_LEAVE, LEGEND_ITEM_ROLE, LINE } from '../constants';\nimport { BOTTOM, CENTER, WHITE } from '../../common/constants';\nimport { deepExtend, eventElement, setDefaultOptions } from '../../common';\nimport addAccessibilityAttributesToVisual from '../../core/utils/add-accessibility-attributes-to-visual';\nimport guid from '../../core/utils/guid';\nimport LegendItemMarker from './legend-item-marker';\nimport MarkerLineArea from './legend-item-line-area';\nimport LegendItemLine from './legend-item-line';\nimport LegendItemSquare from './legend-item-square';\n\nvar LegendItem = (function (BoxElement) {\n function LegendItem(options) {\n BoxElement.call(this, options);\n\n this.createContainer();\n if (!options.rtl) {\n this.createMarker();\n this.createLabel();\n } else {\n this.createLabel();\n this.createMarker();\n }\n\n this._id = guid();\n this.options.accessibility.ariaChecked = options.active;\n }\n\n if ( BoxElement ) LegendItem.__proto__ = BoxElement;\n LegendItem.prototype = Object.create( BoxElement && BoxElement.prototype );\n LegendItem.prototype.constructor = LegendItem;\n\n LegendItem.prototype.createContainer = function createContainer () {\n this.container = new FloatElement({ vertical: false, wrap: false, align: CENTER, spacing: this.options.spacing });\n this.append(this.container);\n };\n\n LegendItem.prototype.createMarker = function createMarker () {\n this.markerWrap = new BoxElement({ vertical: false, shrinkToFit: true, wrap: false, margin: 1, width: 22, height: 22 });\n this.container.append(this.markerWrap);\n\n this.createMarkerArea();\n\n if (this.options.markers.visible) {\n this._marker = this._createMarker();\n this.markerWrap.append(this._marker);\n }\n };\n\n LegendItem.prototype.createMarkerArea = function createMarkerArea () {\n var options = this.options;\n var markerColor = options.markerColor;\n var line = options.line; if ( line === void 0 ) line = {};\n var lineOptions = {\n border: {\n color: line.color || markerColor,\n opacity: line.opacity,\n dashType: line.dashType\n }\n };\n return this._createLine(lineOptions) ||\n this._createMarkerLine(lineOptions, line) ||\n this._createSquare();\n };\n\n LegendItem.prototype.markerOptions = function markerOptions () {\n var options = this.options;\n var markers = options.markers; if ( markers === void 0 ) markers = {};\n var markerColor = options.markerColor;\n var border = markers.border; if ( border === void 0 ) border = {};\n markers.zIndex = undefined;\n\n return deepExtend({}, markers, {\n border: { color: border.color || markerColor },\n highlight: options.highlight.markers\n });\n };\n\n LegendItem.prototype._highlightOptions = function _highlightOptions () {\n var options = this.options;\n return deepExtend(\n { markers: { type: options.markers.type } },\n options.highlight\n );\n };\n\n LegendItem.prototype._createLine = function _createLine (lineOptions) {\n var options = this.options;\n if (options.type === LINE && !options.markers.visible) {\n this._line = new LegendItemLine(deepExtend({}, {\n background: options.markerColor,\n highlight: this._highlightOptions(),\n }, lineOptions, options.line));\n\n this.markerWrap.append(this._line);\n }\n return this._line;\n };\n\n LegendItem.prototype._createMarkerLine = function _createMarkerLine (lineOptions, line) {\n var options = this.options;\n if (options.type === LINE) {\n this._markerLineArea = new MarkerLineArea(deepExtend({}, {\n border: {\n width: line.height\n }\n }, lineOptions));\n\n this.markerWrap.append(this._markerLineArea);\n }\n\n return this._markerLineArea;\n };\n\n LegendItem.prototype._createSquare = function _createSquare () {\n var options = this.options;\n if (options.type === AREA) {\n this._square = new LegendItemSquare(Object.assign({}, {border: options.border,\n vAlign: options.markers.visible ? BOTTOM : CENTER,\n highlight: this._highlightOptions()},\n options.area,\n {background: options.area.background || options.markerColor}));\n this.markerWrap.append(this._square);\n }\n return this._square;\n };\n\n LegendItem.prototype._createMarker = function _createMarker () {\n return new LegendItemMarker(this.markerOptions());\n };\n\n LegendItem.prototype._highlightMarkers = function _highlightMarkers () {\n if (this.options.active) {\n this._toggleHighlight(true);\n }\n };\n\n LegendItem.prototype._restoreMarkers = function _restoreMarkers () {\n this._toggleHighlight(false);\n };\n\n LegendItem.prototype._toggleHighlight = function _toggleHighlight (show) {\n var this$1 = this;\n\n if (!this.options.highlight.visible) {\n return;\n }\n\n var element = this._marker || this._square || this._line;\n\n if (element && element === this._line) {\n this._line.visual.visible(!show);\n }\n\n if (element) {\n var highlight = element.highlight;\n\n if (!highlight) {\n highlight = element.createHighlight();\n highlight.forEach(function (h) { return h && this$1.markerWrap.appendVisual(h); });\n }\n\n highlight.forEach(function (h) { return h && h.visible(show); });\n }\n };\n\n LegendItem.prototype.createLabel = function createLabel () {\n var options = this.options;\n var labelOptions = deepExtend({}, options.labels);\n\n this.container.append(new TextBox(options.text, labelOptions));\n };\n\n LegendItem.prototype.getAriaLabelText = function getAriaLabelText () {\n return this.options.text;\n };\n\n LegendItem.prototype.focusVisual = function focusVisual () {\n this.visual.options.set(\"id\", this._id);\n this.toggleFocusHighlight(true);\n this._highlightMarkers();\n };\n\n LegendItem.prototype.clearFocusFromVisual = function clearFocusFromVisual () {\n this.visual.options.set(\"id\", \"\");\n this.toggleFocusHighlight(false);\n this._restoreMarkers();\n };\n\n LegendItem.prototype.renderComplete = function renderComplete () {\n BoxElement.prototype.renderComplete.call(this);\n\n var cursor = this.options.cursor || {};\n var eventSink = this._itemOverlay = draw.Path.fromRect(this.container.box.toRect(), {\n fill: {\n color: WHITE,\n opacity: 0\n },\n stroke: null,\n cursor: cursor.style || cursor\n });\n\n this.appendVisual(eventSink);\n };\n\n LegendItem.prototype.click = function click (widget, e) {\n var args = this.eventArgs(e);\n\n if (!widget.trigger(LEGEND_ITEM_CLICK, args) && e && e.type === 'contextmenu') {\n e.preventDefault();\n }\n };\n\n LegendItem.prototype.over = function over (widget, e) {\n var args = this.eventArgs(e);\n\n if (!widget.trigger(LEGEND_ITEM_HOVER, args)) {\n widget._legendItemHover(args.seriesIndex, args.pointIndex);\n this._highlightMarkers();\n }\n\n // Don't trigger point hover for legend items\n return true;\n };\n\n LegendItem.prototype.out = function out (widget, e) {\n widget._unsetActivePoint();\n this._restoreMarkers();\n\n widget.trigger(LEGEND_ITEM_LEAVE, this.eventArgs(e));\n };\n\n LegendItem.prototype.eventArgs = function eventArgs (e) {\n var options = this.options;\n\n return {\n element: eventElement(e),\n text: options.text,\n series: options.series,\n seriesIndex: options.series.index,\n pointIndex: options.pointIndex\n };\n };\n\n LegendItem.prototype.createVisual = function createVisual () {\n BoxElement.prototype.createVisual.call(this);\n var options = this.options;\n\n if (this.options.visible) {\n var accessibilityOptions = deepExtend({\n ariaLabel: options.accessibility.ariaLabel !== undefined ? options.accessibility.ariaLabel : options.text\n }, options.accessibility);\n\n addAccessibilityAttributesToVisual(this.visual, accessibilityOptions);\n }\n };\n\n LegendItem.prototype.renderVisual = function renderVisual () {\n var this$1 = this;\n\n var options = this.options;\n var customVisual = options.visual;\n\n if (customVisual) {\n this.visual = customVisual({\n active: options.active,\n series: options.series,\n sender: this.getSender(),\n pointIndex: options.pointIndex,\n options: {\n type: options.type,\n // Passing the markerColor as a background option for backwards compatibility.\n // Example in jq docs - https://docs.telerik.com/kendo-ui/api/javascript/dataviz/ui/chart/configuration/legend.item#legenditemvisual\n markers: deepExtend({ background: this.options.markerColor }, this.markerOptions()),\n labels: options.labels\n },\n createVisual: function () {\n this$1.createVisual();\n this$1.renderChildren();\n this$1.renderComplete();\n\n var defaultVisual = this$1.visual;\n\n delete this$1.visual;\n\n return defaultVisual;\n }\n });\n this._marker = this._markerLineArea = this._square = this._line = null;\n this.addVisual();\n } else {\n BoxElement.prototype.renderVisual.call(this);\n }\n };\n\n LegendItem.prototype.createFocusHighlight = function createFocusHighlight (style) {\n var borderWidth = style.stroke.width;\n return draw.Path.fromRect(this.container.box.pad(borderWidth / 2).toRect(), style);\n };\n\n return LegendItem;\n}(BoxElement));\n\nsetDefaultOptions(LegendItem, {\n accessibility: {\n role: LEGEND_ITEM_ROLE,\n className: LEGEND_ITEM_CLASSNAME,\n ariaRoleDescription: LEGEND_ITEM_ARIA_ROLE_DESCRIPTION\n },\n markers: {},\n highlight: {\n visible: true,\n markers: {}\n }\n});\n\nexport default LegendItem;\n","\nimport { ChartElement, BoxElement, Box, TextBox, FloatElement } from '../../core';\nimport LegendLayout from './legend-layout';\nimport LegendItem from './legend-item';\n\nimport { TOP, RIGHT, BOTTOM, LEFT, CENTER, X, Y, BLACK, CIRCLE, POINTER, START, END, HORIZONTAL, SQUARE } from '../../common/constants';\nimport { deepExtend, defined, getTemplate, getSpacing, inArray, setDefaultOptions } from '../../common';\n\nvar CUSTOM = \"custom\";\n\nvar Legend = (function (ChartElement) {\n function Legend(options, chartService) {\n if ( chartService === void 0 ) chartService = {};\n\n ChartElement.call(this, options);\n\n this.chartService = chartService;\n\n if (!inArray(this.options.position, [ TOP, RIGHT, BOTTOM, LEFT, CUSTOM ])) {\n this.options.position = RIGHT;\n }\n\n this.createContainers();\n\n this.createLegendTitle(options.title);\n\n this.createItems();\n }\n\n if ( ChartElement ) Legend.__proto__ = ChartElement;\n Legend.prototype = Object.create( ChartElement && ChartElement.prototype );\n Legend.prototype.constructor = Legend;\n\n Legend.prototype.createContainers = function createContainers () {\n var options = this.options;\n var position = options.position;\n var userAlign = options.align;\n var align = position;\n var vAlign = CENTER;\n\n if (position === CUSTOM) {\n align = LEFT;\n } else if (inArray(position, [ TOP, BOTTOM ])) {\n if (userAlign === START) {\n align = LEFT;\n } else if (userAlign === END) {\n align = RIGHT;\n } else {\n align = CENTER;\n }\n vAlign = position;\n } else if (userAlign) {\n if (userAlign === START) {\n vAlign = TOP;\n } else if (userAlign === END) {\n vAlign = BOTTOM;\n }\n }\n\n this.container = new BoxElement({\n margin: options.margin,\n padding: options.padding,\n background: options.background,\n border: options.border,\n vAlign: vAlign,\n align: align,\n zIndex: options.zIndex,\n shrinkToFit: true\n });\n\n if (this.hasTitle()) {\n this.itemsContainer = new BoxElement({\n vAlign: vAlign,\n align: align,\n zIndex: options.zIndex,\n shrinkToFit: true\n });\n } else {\n this.itemsContainer = this.container;\n }\n\n this.append(this.container);\n };\n\n Legend.prototype.createItems = function createItems () {\n var chartService = this.getService();\n var options = this.options;\n var vertical = this.isVertical();\n var innerElement = new LegendLayout({\n vertical: vertical,\n spacing: options.spacing,\n rtl: chartService.rtl\n }, chartService);\n var data = options.data;\n\n if (options.reverse) {\n data = data.slice(0).reverse();\n }\n\n var count = data.length;\n\n for (var i = 0; i < count; i++) {\n var dataItem = data[i];\n var ref = dataItem.series || {};\n var markers = ref.markers; if ( markers === void 0 ) markers = {};\n var dashType = ref.dashType;\n var legendItem = ref.legendItem;\n var opacity = ref.opacity;\n var markersOptions = deepExtend({ visible: markers.visible !== false, type: CIRCLE }, markers);\n delete markersOptions.size;\n\n var itemOptions = deepExtend({},\n {\n markers: markersOptions,\n labels: options.labels,\n rtl: chartService.rtl,\n line: Object.assign({}, {dashType: dashType},\n options.line),\n area: Object.assign({}, {opacity: opacity},\n options.area),\n opacity: opacity,\n accessibility: options.accessibility\n },\n options.item,\n legendItem,\n dataItem,\n { markers: options.markers }\n );\n\n innerElement.append(new LegendItem(itemOptions));\n }\n\n innerElement.render();\n this.itemsContainer.append(innerElement);\n };\n\n Legend.prototype.isVertical = function isVertical () {\n var ref = this.options;\n var orientation = ref.orientation;\n var position = ref.position;\n var vertical = (position === CUSTOM && orientation !== HORIZONTAL) ||\n (defined(orientation) ? orientation !== HORIZONTAL : inArray(position, [ LEFT, RIGHT ]));\n\n return vertical;\n };\n\n Legend.prototype.hasItems = function hasItems () {\n return this.container.children[0].children.length > 0;\n };\n\n Legend.prototype.getItems = function getItems () {\n return this.itemsContainer.children[0].children;\n };\n\n Legend.prototype.reflow = function reflow (targetBox) {\n var options = this.options;\n var legendBox = targetBox.clone();\n\n if (!this.hasItems()) {\n this.box = legendBox;\n return;\n }\n\n if (options.position === CUSTOM) {\n this.containerCustomReflow(legendBox);\n this.box = legendBox;\n } else {\n this.containerReflow(legendBox);\n }\n\n if (this.hasTitle()) {\n this.title.reflow(new Box(this.container.box.x1, this.title.box.y1, this.container.box.x2, this.title.box.y2));\n }\n };\n\n Legend.prototype.containerReflow = function containerReflow (targetBox) {\n var ref = this;\n var options = ref.options;\n var container = ref.container;\n var position = options.position;\n var width = options.width;\n var height = options.height;\n var pos = position === TOP || position === BOTTOM ? X : Y;\n var vertical = this.isVertical();\n var alignTarget = targetBox.clone();\n var containerBox = targetBox.clone();\n\n if (position === LEFT || position === RIGHT) {\n containerBox.y1 = alignTarget.y1 = 0;\n }\n\n if (vertical && height) {\n containerBox.y2 = containerBox.y1 + height;\n containerBox.align(alignTarget, Y, container.options.vAlign);\n } else if (!vertical && width) {\n containerBox.x2 = containerBox.x1 + width;\n containerBox.align(alignTarget, X, container.options.align);\n }\n\n container.reflow(containerBox);\n containerBox = container.box;\n\n var box = containerBox.clone();\n\n if (options.offsetX || options.offsetY) {\n containerBox.translate(options.offsetX, options.offsetY);\n container.reflow(containerBox);\n }\n\n box[pos + 1] = targetBox[pos + 1];\n box[pos + 2] = targetBox[pos + 2];\n\n this.box = box;\n };\n\n Legend.prototype.containerCustomReflow = function containerCustomReflow (targetBox) {\n var ref = this;\n var options = ref.options;\n var container = ref.container;\n var offsetX = options.offsetX;\n var offsetY = options.offsetY;\n var width = options.width;\n var height = options.height;\n var vertical = this.isVertical();\n var containerBox = targetBox.clone();\n\n if (vertical && height) {\n containerBox.y2 = containerBox.y1 + height;\n } else if (!vertical && width) {\n containerBox.x2 = containerBox.x1 + width;\n }\n container.reflow(containerBox);\n containerBox = container.box;\n\n container.reflow(new Box(\n offsetX, offsetY,\n offsetX + containerBox.width(), offsetY + containerBox.height()\n ));\n };\n\n Legend.prototype.renderVisual = function renderVisual () {\n if (this.hasItems()) {\n ChartElement.prototype.renderVisual.call(this);\n }\n };\n\n Legend.prototype.createLegendTitle = function createLegendTitle (title) {\n var titleOptions = deepExtend({}, {\n color: BLACK,\n position: TOP,\n align: CENTER\n }, title);\n var text = titleOptions.text;\n\n if (!title || title.visible === false || !title.text) {\n return;\n }\n\n if (defined(titleOptions) && titleOptions.visible) {\n var labelTemplate = getTemplate(titleOptions);\n if (labelTemplate) {\n text = labelTemplate({ text: text });\n } else if (titleOptions.format) {\n text = this.chartService.format.auto(titleOptions.format, text);\n }\n }\n\n this.title = new TextBox(text, titleOptions);\n\n this.createTitleLayout();\n\n this.appendTitleLayoutContent();\n };\n\n Legend.prototype.createTitleLayout = function createTitleLayout () {\n this.layout = new FloatElement({\n vertical: true,\n wrap: false\n });\n\n this.container.append(this.layout);\n };\n\n Legend.prototype.hasTitle = function hasTitle () {\n return Boolean(this.options.title && this.options.title.visible !== false && this.options.title.text);\n };\n\n Legend.prototype.appendTitleLayoutContent = function appendTitleLayoutContent () {\n var options = this.options;\n\n if (options.title.position === BOTTOM) {\n this.layout.append(this.itemsContainer);\n this.layout.append(this.title);\n } else {\n this.layout.append(this.title);\n this.layout.append(this.itemsContainer);\n }\n };\n\n return Legend;\n}(ChartElement));\n\nsetDefaultOptions(Legend, {\n position: RIGHT,\n data: [],\n offsetX: 0,\n offsetY: 0,\n margin: getSpacing(2),\n padding: getSpacing(5),\n border: {\n color: BLACK,\n width: 0\n },\n item: {\n cursor: POINTER,\n spacing: 6\n },\n spacing: 6,\n background: \"\",\n zIndex: 1,\n markers: {},\n line: {\n width: 20,\n height: 2,\n cursor: POINTER,\n opacity: 1\n },\n area: {\n type: SQUARE,\n align: RIGHT,\n width: 15,\n height: 15,\n }\n});\n\nexport default Legend;\n","import filterSeriesByType from '../utils/filter-series-by-type';\nimport { Class } from '../../common';\nimport { TRENDLINE_SERIES } from '../constants';\n\nvar PlotAreaFactory = (function (Class) {\n function PlotAreaFactory() {\n Class.call(this);\n\n this._registry = [];\n }\n\n if ( Class ) PlotAreaFactory.__proto__ = Class;\n PlotAreaFactory.prototype = Object.create( Class && Class.prototype );\n PlotAreaFactory.prototype.constructor = PlotAreaFactory;\n\n PlotAreaFactory.prototype.register = function register (type, seriesTypes) {\n this._registry.push({\n type: type,\n seriesTypes: seriesTypes\n });\n };\n\n PlotAreaFactory.prototype.create = function create (srcSeries, options, chartService) {\n var registry = this._registry;\n var match = registry[0];\n var series;\n\n for (var idx = 0; idx < registry.length; idx++) {\n var entry = registry[idx];\n series = filterSeriesByType(srcSeries, entry.seriesTypes);\n var trendlines = filterSeriesByType(srcSeries, TRENDLINE_SERIES);\n\n if ((series.length - trendlines.length) > 0) {\n match = entry;\n break;\n }\n }\n\n return new match.type(series, options, chartService);\n };\n\n return PlotAreaFactory;\n}(Class));\n\nPlotAreaFactory.current = new PlotAreaFactory();\n\nexport default PlotAreaFactory;\n","import { DomEventsBuilder } from '../services';\n\nimport { DateCategoryAxis, Point } from '../core';\n\nimport { MOUSEWHEEL_DELAY, MOUSEWHEEL, SELECT_START, SELECT, SELECT_END } from './constants';\n\nimport { LEFT, RIGHT, MIN_VALUE, MAX_VALUE, X } from '../common/constants';\nimport { addClass, Class, removeClass, eventCoordinates, deepExtend, elementStyles, eventElement, setDefaultOptions, limitValue, round, bindEvents, unbindEvents, mousewheelDelta, hasClasses } from '../common';\nimport { parseDate } from '../date-utils';\n\nvar ZOOM_ACCELERATION = 3;\nvar SELECTOR_HEIGHT_ADJUST = 0.1;\n\nfunction createDiv(classNames) {\n var element = document.createElement(\"div\");\n if (classNames) {\n element.className = classNames;\n }\n\n return element;\n}\n\nfunction closestHandle(element) {\n var current = element;\n while (current && !hasClasses(current, \"k-handle\")) {\n current = current.parentNode;\n }\n\n return current;\n}\n\nvar Selection = (function (Class) {\n function Selection(chart, categoryAxis, options, observer) {\n Class.call(this);\n\n var chartElement = chart.element;\n\n this.options = deepExtend({}, this.options, options);\n this.chart = chart;\n this.observer = observer;\n this.chartElement = chartElement;\n this.categoryAxis = categoryAxis;\n this._dateAxis = this.categoryAxis instanceof DateCategoryAxis;\n\n this.initOptions();\n\n this.visible = this.options.visible && chartElement.offsetHeight;\n\n if (this.visible) {\n this.createElements();\n\n this.set(this._index(this.options.from), this._index(this.options.to));\n\n this.bindEvents();\n }\n }\n\n if ( Class ) Selection.__proto__ = Class;\n Selection.prototype = Object.create( Class && Class.prototype );\n Selection.prototype.constructor = Selection;\n\n Selection.prototype.onPane = function onPane (pane) {\n return this.categoryAxis.pane === pane;\n };\n\n Selection.prototype.createElements = function createElements () {\n var options = this.options;\n var wrapper = this.wrapper = createDiv(\"k-selector k-pointer-events-none\");\n elementStyles(wrapper, {\n top: options.offset.top,\n left: options.offset.left,\n width: options.width,\n height: options.height,\n direction: 'ltr'\n });\n\n var selection = this.selection = createDiv(\"k-selection k-pointer-events-none\");\n\n this.leftMask = createDiv(\"k-mask k-pointer-events-none\");\n this.rightMask = createDiv(\"k-mask k-pointer-events-none\");\n\n wrapper.appendChild(this.leftMask);\n wrapper.appendChild(this.rightMask);\n wrapper.appendChild(selection);\n\n var body = this.body = createDiv(\"k-selection-bg k-pointer-events-none\");\n selection.appendChild(body);\n\n var leftHandle = this.leftHandle = createDiv(\"k-handle k-left-handle k-pointer-events-auto\");\n var rightHandle = this.rightHandle = createDiv(\"k-handle k-right-handle k-pointer-events-auto\");\n leftHandle.appendChild(createDiv());\n rightHandle.appendChild(createDiv());\n\n selection.appendChild(leftHandle);\n selection.appendChild(rightHandle);\n\n this.chartElement.appendChild(wrapper);\n var selectionStyles = elementStyles(selection, [ \"borderLeftWidth\", \"borderRightWidth\", \"height\" ]);\n var leftHandleHeight = elementStyles(leftHandle, \"height\").height;\n var rightHandleHeight = elementStyles(rightHandle, \"height\").height;\n\n options.selection = {\n border: {\n left: selectionStyles.borderLeftWidth,\n right: selectionStyles.borderRightWidth\n }\n };\n\n elementStyles(leftHandle, {\n top: (selectionStyles.height - leftHandleHeight) / 2\n });\n\n elementStyles(rightHandle, {\n top: (selectionStyles.height - rightHandleHeight) / 2\n });\n\n /* eslint no-self-assign: \"off\" */\n wrapper.style.cssText = wrapper.style.cssText;\n };\n\n Selection.prototype.bindEvents = function bindEvents$1 () {\n var obj;\n\n if (this.options.mousewheel !== false) {\n this._mousewheelHandler = this._mousewheel.bind(this);\n bindEvents(this.chartElement, ( obj = {}, obj[ MOUSEWHEEL ] = this._mousewheelHandler, obj ));\n }\n\n this._domEvents = DomEventsBuilder.create(this.chartElement, {\n stopPropagation: true, // applicable for the jQuery UserEvents\n start: this._start.bind(this),\n move: this._move.bind(this),\n end: this._end.bind(this),\n tap: this._tap.bind(this),\n press: this._press.bind(this),\n gesturestart: this._gesturestart.bind(this),\n gesturechange: this._gesturechange.bind(this),\n gestureend: this._gestureend.bind(this)\n });\n };\n\n Selection.prototype.initOptions = function initOptions () {\n var ref = this;\n var options = ref.options;\n var categoryAxis = ref.categoryAxis;\n var box = categoryAxis.pane.chartsBox();\n var intlService = this.chart.chartService.intl;\n\n if (this._dateAxis) {\n deepExtend(options, {\n min: parseDate(intlService, options.min),\n max: parseDate(intlService, options.max),\n from: parseDate(intlService, options.from),\n to: parseDate(intlService, options.to)\n });\n }\n\n var ref$1 = elementStyles(this.chartElement, [ \"paddingLeft\", \"paddingTop\" ]);\n var paddingLeft = ref$1.paddingLeft;\n var paddingTop = ref$1.paddingTop;\n\n this.options = deepExtend({}, {\n width: box.width(),\n height: box.height() + SELECTOR_HEIGHT_ADJUST, //workaround for sub-pixel hover on the paths in chrome\n padding: {\n left: paddingLeft,\n top: paddingTop\n },\n offset: {\n left: box.x1 + paddingLeft,\n top: box.y1 + paddingTop\n },\n from: options.min,\n to: options.max\n }, options);\n };\n\n Selection.prototype.destroy = function destroy () {\n var obj;\n\n if (this._domEvents) {\n this._domEvents.destroy();\n delete this._domEvents;\n }\n\n clearTimeout(this._mwTimeout);\n this._state = null;\n\n if (this.wrapper) {\n if (this._mousewheelHandler) {\n unbindEvents(this.chartElement, ( obj = {}, obj[ MOUSEWHEEL ] = this._mousewheelHandler, obj ));\n this._mousewheelHandler = null;\n }\n\n this.chartElement.removeChild(this.wrapper);\n this.wrapper = null;\n }\n };\n\n Selection.prototype._rangeEventArgs = function _rangeEventArgs (range) {\n\n return {\n axis: this.categoryAxis.options,\n from: this._value(range.from),\n to: this._value(range.to)\n };\n };\n\n Selection.prototype._pointInPane = function _pointInPane (x, y) {\n var paneBox = this.categoryAxis.pane.box;\n var modelCoords = this.chart._toModelCoordinates(x, y);\n return paneBox.containsPoint(modelCoords);\n };\n\n Selection.prototype._start = function _start (e) {\n var options = this.options;\n var target = eventElement(e);\n if (this._state || !target) {\n return;\n }\n\n var coords = eventCoordinates(e);\n var inPane = this._pointInPane(coords.x, coords.y);\n if (!inPane) {\n return;\n }\n\n var handle = closestHandle(target);\n var bodyRect = this.body.getBoundingClientRect();\n var inBody = !handle && coords.x >= bodyRect.x && coords.x <= bodyRect.x + bodyRect.width &&\n coords.y >= bodyRect.y && coords.y <= bodyRect.y + bodyRect.height;\n\n this.chart._unsetActivePoint();\n this._state = {\n moveTarget: handle,\n startLocation: e.x ? e.x.location : 0,\n inBody: inBody,\n range: {\n from: this._index(options.from),\n to: this._index(options.to)\n }\n };\n\n var args = this._rangeEventArgs({\n from: this._index(options.from),\n to: this._index(options.to)\n });\n\n if (this.trigger(SELECT_START, args)) {\n this._state = null;\n }\n };\n\n Selection.prototype._press = function _press (e) {\n var handle;\n if (this._state) {\n handle = this._state.moveTarget;\n } else {\n handle = closestHandle(eventElement(e));\n }\n if (handle) {\n addClass(handle, \"k-handle-active\");\n }\n };\n\n Selection.prototype._move = function _move (e) {\n if (!this._state) {\n return;\n }\n\n var ref = this;\n var state = ref._state;\n var options = ref.options;\n var categoryAxis = ref.categoryAxis;\n var range = state.range;\n var target = state.moveTarget;\n var reverse = categoryAxis.options.reverse;\n var from = this._index(options.from);\n var to = this._index(options.to);\n var min = this._index(options.min);\n var max = this._index(options.max);\n var delta = state.startLocation - e.x.location;\n var oldRange = { from: range.from, to: range.to };\n var span = range.to - range.from;\n var scale = elementStyles(this.wrapper, \"width\").width / (categoryAxis.categoriesCount() - 1);\n var offset = Math.round(delta / scale) * (reverse ? -1 : 1);\n\n if (!target && !state.inBody) {\n return;\n }\n\n var leftHandle = target && hasClasses(target, \"k-left-handle\");\n var rightHandle = target && hasClasses(target, \"k-right-handle\");\n\n if (state.inBody) {\n range.from = Math.min(\n Math.max(min, from - offset),\n max - span\n );\n range.to = Math.min(\n range.from + span,\n max\n );\n } else if ((leftHandle && !reverse) || (rightHandle && reverse)) {\n range.from = Math.min(\n Math.max(min, from - offset),\n max - 1\n );\n range.to = Math.max(range.from + 1, range.to);\n } else if ((leftHandle && reverse) || (rightHandle && !reverse)) {\n range.to = Math.min(\n Math.max(min + 1, to - offset),\n max\n );\n range.from = Math.min(range.to - 1, range.from);\n }\n\n if (range.from !== oldRange.from || range.to !== oldRange.to) {\n this.move(range.from, range.to);\n this.trigger(SELECT, this._rangeEventArgs(range));\n }\n };\n\n Selection.prototype._end = function _end () {\n if (this._state) {\n var moveTarget = this._state.moveTarget;\n if (moveTarget) {\n removeClass(moveTarget, \"k-handle-active\");\n }\n\n var range = this._state.range;\n this.set(range.from, range.to);\n this.trigger(SELECT_END, this._rangeEventArgs(range));\n\n delete this._state;\n }\n };\n\n Selection.prototype._tap = function _tap (e) {\n var ref = this;\n var options = ref.options;\n var categoryAxis = ref.categoryAxis;\n var coords = this.chart._eventCoordinates(e);\n var categoryIx = categoryAxis.pointCategoryIndex(new Point(coords.x, categoryAxis.box.y1));\n var from = this._index(options.from);\n var to = this._index(options.to);\n var min = this._index(options.min);\n var max = this._index(options.max);\n var span = to - from;\n var mid = from + span / 2;\n var range = {};\n var rightClick = e.event.which === 3;\n var offset = Math.round(mid - categoryIx);\n\n if (this._state || rightClick) {\n return;\n }\n\n\n this.chart._unsetActivePoint();\n\n if (!categoryAxis.options.justified) {\n offset--;\n }\n\n range.from = Math.min(\n Math.max(min, from - offset),\n max - span\n );\n\n range.to = Math.min(range.from + span, max);\n\n this._start(e);\n\n if (this._state) {\n this._state.range = range;\n this.trigger(SELECT, this._rangeEventArgs(range));\n this._end();\n }\n };\n\n Selection.prototype._mousewheel = function _mousewheel (e) {\n var this$1 = this;\n\n var delta = mousewheelDelta(e);\n\n this._start(e);\n\n if (this._state) {\n var range = this._state.range;\n\n e.preventDefault();\n e.stopPropagation();\n\n if (Math.abs(delta) > 1) {\n delta *= ZOOM_ACCELERATION;\n }\n\n if (this.options.mousewheel.reverse) {\n delta *= -1;\n }\n\n if (this.expand(delta)) {\n this.trigger(SELECT, {\n axis: this.categoryAxis.options,\n delta: delta,\n originalEvent: e,\n from: this._value(range.from),\n to: this._value(range.to)\n });\n }\n\n if (this._mwTimeout) {\n clearTimeout(this._mwTimeout);\n }\n\n this._mwTimeout = setTimeout(function () {\n this$1._end();\n }, MOUSEWHEEL_DELAY);\n }\n };\n\n Selection.prototype._gesturestart = function _gesturestart (e) {\n var options = this.options;\n var touch = e.touches[0];\n var inPane = this._pointInPane(touch.pageX, touch.pageY);\n\n if (!inPane) {\n return;\n }\n\n this._state = {\n range: {\n from: this._index(options.from),\n to: this._index(options.to)\n }\n };\n var args = this._rangeEventArgs(this._state.range);\n\n if (this.trigger(SELECT_START, args)) {\n this._state = null;\n } else {\n e.preventDefault();\n }\n };\n\n Selection.prototype._gestureend = function _gestureend () {\n if (this._state) {\n this.trigger(SELECT_END, this._rangeEventArgs(this._state.range));\n delete this._state;\n }\n };\n\n Selection.prototype._gesturechange = function _gesturechange (e) {\n if (!this._state) {\n return;\n }\n\n var ref = this;\n var chart = ref.chart;\n var state = ref._state;\n var options = ref.options;\n var categoryAxis = ref.categoryAxis;\n var range = state.range;\n var p0 = chart._toModelCoordinates(e.touches[0].x.location).x;\n var p1 = chart._toModelCoordinates(e.touches[1].x.location).x;\n var left = Math.min(p0, p1);\n var right = Math.max(p0, p1);\n\n e.preventDefault();\n\n range.from = categoryAxis.pointCategoryIndex(new Point(left)) || options.min;\n\n range.to = categoryAxis.pointCategoryIndex(new Point(right)) || options.max;\n\n this.move(range.from, range.to);\n\n this.trigger(SELECT, this._rangeEventArgs(range));\n };\n\n Selection.prototype._index = function _index (value) {\n var index = value;\n\n if (value instanceof Date) {\n index = this.categoryAxis.categoryIndex(value);\n }\n\n return index;\n };\n\n Selection.prototype._value = function _value (index) {\n var value = index;\n if (this._dateAxis) {\n value = this.categoryAxis.categoryAt(index);\n if (value > this.options.max) {\n value = this.options.max;\n }\n }\n\n return value;\n };\n\n Selection.prototype._slot = function _slot (value) {\n var categoryAxis = this.categoryAxis;\n var index = this._index(value);\n\n return categoryAxis.getSlot(index, index, true);\n };\n\n Selection.prototype.move = function move (from, to) {\n var options = this.options;\n var reverse = this.categoryAxis.options.reverse;\n var offset = options.offset;\n var padding = options.padding;\n var border = options.selection.border;\n var left = reverse ? to : from;\n var right = reverse ? from : to;\n var edge = 'x' + (reverse ? 2 : 1);\n\n var box = this._slot(left);\n var leftMaskWidth = round(box[edge] - offset.left + padding.left);\n\n elementStyles(this.leftMask, {\n width: leftMaskWidth\n });\n elementStyles(this.selection, {\n left: leftMaskWidth\n });\n\n box = this._slot(right);\n\n var rightMaskWidth = round(options.width - (box[edge] - offset.left + padding.left));\n elementStyles(this.rightMask, {\n width: rightMaskWidth\n });\n\n var distance = options.width - rightMaskWidth;\n if (distance !== options.width) {\n distance += border.right;\n }\n\n elementStyles(this.rightMask, {\n left: distance\n });\n elementStyles(this.selection, {\n width: Math.max(options.width - (leftMaskWidth + rightMaskWidth) - border.right, 0)\n });\n };\n\n Selection.prototype.set = function set (from, to) {\n var options = this.options;\n var min = this._index(options.min);\n var max = this._index(options.max);\n var fromValue = limitValue(this._index(from), min, max);\n var toValue = limitValue(this._index(to), fromValue + 1, max);\n\n if (options.visible) {\n this.move(fromValue, toValue);\n }\n\n options.from = this._value(fromValue);\n options.to = this._value(toValue);\n };\n\n Selection.prototype.expand = function expand (delta) {\n var options = this.options;\n var min = this._index(options.min);\n var max = this._index(options.max);\n var zDir = options.mousewheel.zoom;\n var from = this._index(options.from);\n var to = this._index(options.to);\n var range = { from: from, to: to };\n var oldRange = deepExtend({}, range);\n\n if (this._state) {\n range = this._state.range;\n }\n\n if (zDir !== RIGHT) {\n range.from = limitValue(\n limitValue(from - delta, 0, to - 1),\n min, max\n );\n }\n\n if (zDir !== LEFT) {\n range.to = limitValue(\n limitValue(to + delta, range.from + 1, max),\n min,\n max\n );\n }\n\n if (range.from !== oldRange.from || range.to !== oldRange.to) {\n this.set(range.from, range.to);\n return true;\n }\n };\n\n Selection.prototype.zoom = function zoom (delta, coords) {\n var options = this.options;\n var min = this._index(options.min);\n var max = this._index(options.max);\n var from = this._index(options.from);\n var to = this._index(options.to);\n var range = { from: from, to: to };\n var oldRange = deepExtend({}, range);\n\n var ref = this.categoryAxis.options;\n var reverse = ref.reverse;\n var origin = X + (reverse ? '2' : '1');\n var lineBox = this.categoryAxis.lineBox();\n var relative = Math.abs(lineBox[origin] - coords[X]);\n var size = lineBox.width();\n var position = round(relative / size, 2);\n var minDelta = round(position * delta);\n var maxDelta = round((1 - position) * delta);\n\n if (this._state) {\n range = this._state.range;\n }\n\n range.from = limitValue(\n limitValue(from - minDelta, 0, to - 1),\n min, max\n );\n\n range.to = limitValue(\n limitValue(to + maxDelta, range.from + 1, max),\n min,\n max\n );\n\n if (range.from !== oldRange.from || range.to !== oldRange.to) {\n this.set(range.from, range.to);\n return true;\n }\n };\n\n Selection.prototype.trigger = function trigger (name, args) {\n return (this.observer || this.chart).trigger(name, args);\n };\n\n return Selection;\n}(Class));\n\nsetDefaultOptions(Selection, {\n visible: true,\n mousewheel: {\n zoom: \"both\"\n },\n min: MIN_VALUE,\n max: MAX_VALUE\n});\n\nexport default Selection;\n","import BaseTooltip from './base-tooltip';\n\nimport { deepExtend } from '../../common';\n\nvar Tooltip = (function (BaseTooltip) {\n function Tooltip () {\n BaseTooltip.apply(this, arguments);\n }\n\n if ( BaseTooltip ) Tooltip.__proto__ = BaseTooltip;\n Tooltip.prototype = Object.create( BaseTooltip && BaseTooltip.prototype );\n Tooltip.prototype.constructor = Tooltip;\n\n Tooltip.prototype.show = function show (point) {\n if (!point || !point.tooltipAnchor || (this._current && this._current === point)) {\n return;\n }\n\n var options = deepExtend({}, this.options, point.options.tooltip);\n var anchor = point.tooltipAnchor();\n\n if (anchor) {\n this._current = point;\n BaseTooltip.prototype.show.call(this, {\n point: point,\n anchor: anchor\n }, options, point);\n } else {\n this.hide();\n }\n };\n\n Tooltip.prototype.hide = function hide () {\n delete this._current;\n BaseTooltip.prototype.hide.call(this);\n };\n\n return Tooltip;\n}(BaseTooltip));\n\nexport default Tooltip;","import BaseTooltip from './base-tooltip';\nimport { Point } from '../../core';\n\nimport { grep, setDefaultOptions } from '../../common';\n\nvar SharedTooltip = (function (BaseTooltip) {\n function SharedTooltip(plotArea, options) {\n BaseTooltip.call(this, plotArea.chartService, options);\n\n this.plotArea = plotArea;\n this.formatService = plotArea.chartService.format;\n }\n\n if ( BaseTooltip ) SharedTooltip.__proto__ = BaseTooltip;\n SharedTooltip.prototype = Object.create( BaseTooltip && BaseTooltip.prototype );\n SharedTooltip.prototype.constructor = SharedTooltip;\n\n SharedTooltip.prototype.showAt = function showAt (points, coords) {\n var tooltipPoints = grep(points, function(point) {\n var tooltip = point.series.tooltip;\n var excluded = tooltip && tooltip.visible === false;\n\n return !excluded;\n });\n\n if (tooltipPoints.length > 0) {\n var point = tooltipPoints[0];\n var slot = this.plotArea.categoryAxis.getSlot(point.categoryIx);\n\n var anchor = coords ? this._slotAnchor(coords, slot) : this._defaultAnchor(point, slot);\n\n this.show({\n anchor: anchor,\n shared: true,\n points: points,\n category: point.category,\n categoryText: this.formatService.auto(this.options.categoryFormat, point.category),\n series: this.plotArea.series\n }, this.options);\n }\n };\n\n SharedTooltip.prototype._slotAnchor = function _slotAnchor (point, slot) {\n var axis = this.plotArea.categoryAxis;\n var align = {\n horizontal: \"left\",\n vertical: \"center\"\n };\n\n if (!axis.options.vertical) {\n point.x = slot.center().x;\n }\n\n return {\n point: point,\n align: align\n };\n };\n\n SharedTooltip.prototype._defaultAnchor = function _defaultAnchor (point, slot) {\n var box = point.owner.pane.chartsBox();\n var vertical = this.plotArea.categoryAxis.options.vertical;\n var center = box.center();\n var slotCenter = slot.center();\n var align = {\n horizontal: \"center\",\n vertical: \"center\"\n };\n\n var centerPoint;\n if (vertical) {\n centerPoint = new Point(center.x, slotCenter.y);\n } else {\n centerPoint = new Point(slotCenter.x, center.y);\n }\n\n return {\n point: centerPoint,\n align: align\n };\n };\n\n return SharedTooltip;\n}(BaseTooltip));\n\nsetDefaultOptions(SharedTooltip, {\n categoryFormat: '{0:d}'\n});\n\nexport default SharedTooltip;","import { drawing as draw, geometry as geom } from '@progress/kendo-drawing';\n\nimport { INITIAL_ANIMATION_DURATION, BAR, START_SCALE } from '../constants';\n\nimport { X, Y } from '../../common/constants';\nimport { interpolateValue, setDefaultOptions } from '../../common';\n\nvar BarChartAnimation = (function (superclass) {\n function BarChartAnimation () {\n superclass.apply(this, arguments);\n }\n\n if ( superclass ) BarChartAnimation.__proto__ = superclass;\n BarChartAnimation.prototype = Object.create( superclass && superclass.prototype );\n BarChartAnimation.prototype.constructor = BarChartAnimation;\n\n BarChartAnimation.prototype.setup = function setup () {\n var ref = this;\n var element = ref.element;\n var options = ref.options;\n var bbox = element.bbox();\n\n if (bbox) {\n this.origin = options.origin;\n var axis = options.vertical ? Y : X;\n\n var fromScale = this.fromScale = new geom.Point(1, 1);\n fromScale[axis] = START_SCALE;\n\n element.transform(geom.transform()\n .scale(fromScale.x, fromScale.y)\n );\n } else {\n this.abort();\n }\n };\n\n BarChartAnimation.prototype.step = function step (pos) {\n var scaleX = interpolateValue(this.fromScale.x, 1, pos);\n var scaleY = interpolateValue(this.fromScale.y, 1, pos);\n\n this.element.transform(geom.transform()\n .scale(scaleX, scaleY, this.origin)\n );\n };\n\n BarChartAnimation.prototype.abort = function abort () {\n superclass.prototype.abort.call(this);\n this.element.transform(null);\n };\n\n return BarChartAnimation;\n}(draw.Animation));\n\nsetDefaultOptions(BarChartAnimation, {\n duration: INITIAL_ANIMATION_DURATION\n});\n\ndraw.AnimationFactory.current.register(BAR, BarChartAnimation);\n\nexport default BarChartAnimation;","import { drawing as draw, geometry as geom } from '@progress/kendo-drawing';\n\nimport { START_SCALE, BUBBLE } from '../constants';\n\nimport { setDefaultOptions } from '../../common';\n\nvar BubbleAnimation = (function (superclass) {\n function BubbleAnimation () {\n superclass.apply(this, arguments);\n }\n\n if ( superclass ) BubbleAnimation.__proto__ = superclass;\n BubbleAnimation.prototype = Object.create( superclass && superclass.prototype );\n BubbleAnimation.prototype.constructor = BubbleAnimation;\n\n BubbleAnimation.prototype.setup = function setup () {\n var center = this.center = this.element.bbox().center();\n this.element.transform(geom.transform()\n .scale(START_SCALE, START_SCALE, center)\n );\n };\n\n BubbleAnimation.prototype.step = function step (pos) {\n this.element.transform(geom.transform()\n .scale(pos, pos, this.center)\n );\n };\n\n return BubbleAnimation;\n}(draw.Animation));\n\nsetDefaultOptions(BubbleAnimation, {\n easing: \"easeOutElastic\"\n});\n\ndraw.AnimationFactory.current.register(BUBBLE, BubbleAnimation);\n\nexport default BubbleAnimation;","import { drawing as draw } from '@progress/kendo-drawing';\n\nimport { FADEIN } from '../constants';\n\nimport { setDefaultOptions } from '../../common';\n\nvar FadeInAnimation = (function (superclass) {\n function FadeInAnimation () {\n superclass.apply(this, arguments);\n }\n\n if ( superclass ) FadeInAnimation.__proto__ = superclass;\n FadeInAnimation.prototype = Object.create( superclass && superclass.prototype );\n FadeInAnimation.prototype.constructor = FadeInAnimation;\n\n FadeInAnimation.prototype.setup = function setup () {\n this.fadeTo = this.element.opacity();\n this.element.opacity(0);\n };\n\n FadeInAnimation.prototype.step = function step (pos) {\n this.element.opacity(pos * this.fadeTo);\n };\n\n return FadeInAnimation;\n}(draw.Animation));\n\nsetDefaultOptions(FadeInAnimation, {\n duration: 200,\n easing: \"linear\"\n});\n\ndraw.AnimationFactory.current.register(FADEIN, FadeInAnimation);\n\nexport default FadeInAnimation;","import { drawing as draw, geometry as geom } from '@progress/kendo-drawing';\n\nimport { START_SCALE, INITIAL_ANIMATION_DURATION, PIE } from '../constants';\n\nimport { setDefaultOptions } from '../../common';\n\nvar PieAnimation = (function (superclass) {\n function PieAnimation () {\n superclass.apply(this, arguments);\n }\n\n if ( superclass ) PieAnimation.__proto__ = superclass;\n PieAnimation.prototype = Object.create( superclass && superclass.prototype );\n PieAnimation.prototype.constructor = PieAnimation;\n\n PieAnimation.prototype.setup = function setup () {\n this.element.transform(geom.transform()\n .scale(START_SCALE, START_SCALE, this.options.center)\n );\n };\n\n PieAnimation.prototype.step = function step (pos) {\n this.element.transform(geom.transform()\n .scale(pos, pos, this.options.center)\n );\n };\n\n return PieAnimation;\n}(draw.Animation));\n\nsetDefaultOptions(PieAnimation, {\n easing: \"easeOutElastic\",\n duration: INITIAL_ANIMATION_DURATION\n});\n\ndraw.AnimationFactory.current.register(PIE, PieAnimation);\n\nexport default PieAnimation;","import ScatterChart from './scatter-chart';\nimport LineChartMixin from '../mixins/line-chart-mixin';\nimport LineSegment from '../line-chart/line-segment';\nimport SplineSegment from '../line-chart/spline-segment';\n\nimport { SMOOTH, ZERO } from '../constants';\n\nimport hasValue from '../utils/has-value';\n\nimport { deepExtend } from '../../common';\n\nvar ScatterLineChart = (function (ScatterChart) {\n function ScatterLineChart () {\n ScatterChart.apply(this, arguments);\n }\n\n if ( ScatterChart ) ScatterLineChart.__proto__ = ScatterChart;\n ScatterLineChart.prototype = Object.create( ScatterChart && ScatterChart.prototype );\n ScatterLineChart.prototype.constructor = ScatterLineChart;\n\n ScatterLineChart.prototype.render = function render () {\n ScatterChart.prototype.render.call(this);\n\n this.renderSegments();\n };\n\n ScatterLineChart.prototype.createSegment = function createSegment (linePoints, currentSeries, seriesIx) {\n var style = currentSeries.style;\n var pointType;\n\n if (style === SMOOTH) {\n pointType = SplineSegment;\n } else {\n pointType = LineSegment;\n }\n\n return new pointType(linePoints, currentSeries, seriesIx);\n };\n\n ScatterLineChart.prototype.animationPoints = function animationPoints () {\n var points = ScatterChart.prototype.animationPoints.call(this);\n return points.concat(this._segments);\n };\n\n ScatterLineChart.prototype.createMissingValue = function createMissingValue (value, missingValues) {\n if (missingValues === ZERO) {\n var missingValue = {\n x: value.x,\n y: value.y\n };\n if (!hasValue(missingValue.x)) {\n missingValue.x = 0;\n }\n if (!hasValue(missingValue.y)) {\n missingValue.y = 0;\n }\n return missingValue;\n }\n };\n\n return ScatterLineChart;\n}(ScatterChart));\n\ndeepExtend(ScatterLineChart.prototype, LineChartMixin);\n\nexport default ScatterLineChart;","import autoMajorUnit from '../../core/utils/auto-major-unit';\nimport { valueOrDefault } from '../../common';\n\nfunction getScatterTrendlineData(valueMapper, range, options) {\n var data = [];\n var xMin = range.xMin;\n var xMax = range.xMax;\n\n var forecast = (options || {}).forecast;\n if (forecast) {\n if (forecast.before > 0) {\n xMin -= forecast.before;\n }\n\n if (forecast.after > 0) {\n xMax += forecast.after;\n }\n }\n\n var samplingInterval = (options || {}).samplingInterval;\n var delta = valueOrDefault(samplingInterval, autoMajorUnit(xMin, xMax) / 10);\n if (samplingInterval <= 0) {\n delta = xMax - xMin;\n }\n\n for (var x = xMin; x <= xMax; x += delta) {\n data.push([\n x,\n valueMapper(x)\n ]);\n }\n\n return data;\n}\n\nexport default getScatterTrendlineData;\n","import calculateSlope from './calculate-slope';\nimport checkAllPositive from './check-all-positive';\nimport getScatterTrendlineData from './get-scatter-trendline-data';\n\nfunction scatterExponentialTrendline(context) {\n var options = context.options;\n var seriesValues = context.seriesValues;\n\n var data = getData({ seriesValues: seriesValues, options: options });\n if (data) {\n return Object.assign({}, options,\n\n {type: 'scatterLine',\n data: data});\n }\n\n return null;\n}\n\nvar valueGetter = function (fieldName) { return function (ref) {\n var valueFields = ref.valueFields;\n\n return ({ xValue: valueFields.x, yValue: Math.log(valueFields[fieldName]) });\n; } };\n\nfunction getData(ref) {\n var seriesValues = ref.seriesValues;\n var options = ref.options;\n\n var sourceValues = seriesValues();\n if (!checkAllPositive(sourceValues, options.field)) {\n return null;\n }\n\n var ref$1 = calculateSlope(sourceValues, valueGetter(options.field));\n var slope = ref$1.slope;\n var intercept = ref$1.intercept;\n var count = ref$1.count;\n var xMin = ref$1.xMin;\n var xMax = ref$1.xMax;\n var range = { xMin: xMin, xMax: xMax };\n\n if (count > 0) {\n // Exponential trendline equation:\n // y = a * e ^ (b * x)\n var a = Math.exp(intercept);\n var b = slope;\n\n return getScatterTrendlineData(function (x) { return a * Math.exp(b * x); }, range, options.trendline);\n }\n\n return null;\n}\n\nexport default scatterExponentialTrendline;\n","var scatterValueGetter = function (fieldName) { return function (ref) {\n var valueFields = ref.valueFields;\n\n return ({ xValue: valueFields.x, yValue: valueFields[fieldName] });\n; } };\n\nexport default scatterValueGetter;\n","import calculateSlope from './calculate-slope';\nimport getScatterTrendlineData from './get-scatter-trendline-data';\nimport scatterValueGetter from './scatter-value-getter';\n\nfunction scatterLinearTrendline(context) {\n var options = context.options;\n var seriesValues = context.seriesValues;\n\n var data = getData({ seriesValues: seriesValues, options: options });\n if (data) {\n return Object.assign({}, options,\n\n {type: 'scatterLine',\n data: data});\n }\n\n return null;\n}\n\nfunction getData(ref) {\n var seriesValues = ref.seriesValues;\n var options = ref.options;\n\n var ref$1 = calculateSlope(seriesValues(), scatterValueGetter(options.field));\n var slope = ref$1.slope;\n var intercept = ref$1.intercept;\n var count = ref$1.count;\n var xMin = ref$1.xMin;\n var xMax = ref$1.xMax;\n var range = { xMin: xMin, xMax: xMax };\n\n if (count > 0) {\n return getScatterTrendlineData(function (x) { return slope * x + intercept; }, range, options.trendline);\n }\n\n return null;\n}\n\nexport default scatterLinearTrendline;\n","function xValueLimits(sourceValues, valueGetter) {\n var xMin = Number.MAX_VALUE;\n var xMax = Number.MIN_VALUE;\n\n for (var i = 0; i < sourceValues.length; i++) {\n var value = sourceValues[i];\n var ref = valueGetter(value);\n var xValue = ref.xValue;\n var yValue = ref.yValue;\n\n if (isFinite(xValue) && xValue !== null && isFinite(yValue) && yValue !== null) {\n xMin = Math.min(xValue, xMin);\n xMax = Math.max(xValue, xMax);\n }\n }\n\n return { xMin: xMin, xMax: xMax };\n}\n\nexport default xValueLimits;\n","import calculateSlope from './calculate-slope';\nimport checkAllPositive from './check-all-positive';\nimport getScatterTrendlineData from './get-scatter-trendline-data';\nimport xValueLimits from './x-value-limits';\n\nfunction scatterLogarithmicTrendline(context) {\n var options = context.options;\n var seriesValues = context.seriesValues;\n\n var data = getData({ seriesValues: seriesValues, options: options });\n if (data) {\n return Object.assign({}, options,\n\n {type: 'scatterLine',\n data: data});\n }\n\n return null;\n}\n\nvar valueGetter = function (fieldName) { return function (ref) {\n var valueFields = ref.valueFields;\n\n return ({ xValue: valueFields.x, yValue: valueFields[fieldName] });\n; } };\n\nvar logValueGetter = function (fieldName) { return function (ref) {\n var valueFields = ref.valueFields;\n\n return ({ xValue: Math.log(valueFields.x), yValue: valueFields[fieldName] });\n; } };\n\nfunction getData(ref) {\n var seriesValues = ref.seriesValues;\n var options = ref.options;\n\n var sourceValues = seriesValues();\n if (!checkAllPositive(sourceValues, 'x')) {\n return null;\n }\n\n var ref$1 = calculateSlope(sourceValues, logValueGetter(options.field));\n var slope = ref$1.slope;\n var intercept = ref$1.intercept;\n var count = ref$1.count;\n var range = xValueLimits(sourceValues, valueGetter(options.field));\n\n if (count > 0) {\n // Logarithmic trendline equation:\n // y = a * ln (x) + b\n var a = slope;\n var b = intercept;\n\n return getScatterTrendlineData(function (x) { return a * Math.log(x) + b; }, range, options.trendline);\n }\n\n return null;\n}\n\nexport default scatterLogarithmicTrendline;\n","import calculateMovingAverage from './calculate-moving-average';\nimport { MIN_MOVING_AVERAGE_PERIOD } from '../constants';\nimport scatterValueGetter from './scatter-value-getter';\n\nfunction scatterMovingAverageTrendline(context) {\n var options = context.options;\n\n var data = getData(context);\n if (data) {\n return Object.assign({}, options,\n\n {type: 'scatterLine',\n data: data});\n }\n\n return null;\n}\n\nfunction getData(ref) {\n var options = ref.options;\n var seriesValues = ref.seriesValues;\n\n var period = (options.trendline || {}).period || MIN_MOVING_AVERAGE_PERIOD;\n var range = { before: period, after: period };\n var data = calculateMovingAverage(seriesValues(range), scatterValueGetter(options.field), period);\n\n if (data.length > 0) {\n return data;\n }\n\n return null;\n}\n\nexport default scatterMovingAverageTrendline;\n","import getScatterTrendlineData from './get-scatter-trendline-data';\nimport scatterValueGetter from './scatter-value-getter';\nimport calculatePolynomial from './calculate-polynomial';\n\nfunction scatterPolynomialTrendline(context) {\n var options = context.options;\n var seriesValues = context.seriesValues;\n\n var data = getData({ seriesValues: seriesValues, options: options });\n if (data) {\n return Object.assign({}, options,\n\n {type: 'scatterLine',\n data: data});\n }\n\n return null;\n}\n\nfunction getData(ref) {\n var seriesValues = ref.seriesValues;\n var options = ref.options;\n\n var order = (options.trendline || {}).order;\n var valueGetter = scatterValueGetter(options.field);\n var ref$1 = calculatePolynomial(seriesValues(), valueGetter, order);\n var count = ref$1.count;\n var valueMapper = ref$1.valueMapper;\n var xMin = ref$1.xMin;\n var xMax = ref$1.xMax;\n var range = { xMin: xMin, xMax: xMax };\n\n if (count > 0) {\n // Polynomial trendline equation:\n // y = aN * x^N + ... + a2 * x^2 + a1 * x + a0\n return getScatterTrendlineData(valueMapper, range, options.trendline);\n }\n\n return null;\n}\n\nexport default scatterPolynomialTrendline;\n","import calculateSlope from './calculate-slope';\nimport checkAllPositive from './check-all-positive';\nimport getScatterTrendlineData from './get-scatter-trendline-data';\nimport scatterValueGetter from './scatter-value-getter';\nimport xValueLimits from './x-value-limits';\n\nfunction scatterPowerTrendline(context) {\n var options = context.options;\n var seriesValues = context.seriesValues;\n\n var data = getData({ seriesValues: seriesValues, options: options });\n if (data) {\n return Object.assign({}, options,\n\n {type: 'scatterLine',\n data: data});\n }\n\n return null;\n}\n\nvar valueGetter = function (fieldName) { return function (ref) {\n var valueFields = ref.valueFields;\n\n return ({ xValue: Math.log(valueFields.x), yValue: Math.log(valueFields[fieldName]) });\n; } };\n\nfunction getData(ref) {\n var seriesValues = ref.seriesValues;\n var options = ref.options;\n\n var sourceValues = seriesValues();\n if (!checkAllPositive(sourceValues, 'x')) {\n return null;\n }\n\n var ref$1 = calculateSlope(sourceValues, valueGetter(options.field));\n var slope = ref$1.slope;\n var intercept = ref$1.intercept;\n var count = ref$1.count;\n var range = xValueLimits(sourceValues, scatterValueGetter(options.field));\n\n if (count > 0) {\n // Power trendline equation:\n // y = a * x ^ b\n var a = Math.exp(intercept);\n var b = slope;\n return getScatterTrendlineData(function (x) { return a * Math.pow(x, b); }, range, options.trendline);\n }\n\n return null;\n}\n\nexport default scatterPowerTrendline;\n","import {\n TRENDLINE_EXPONENTIAL,\n TRENDLINE_LINEAR,\n TRENDLINE_LOGARITHMIC,\n TRENDLINE_MOVING_AVERAGE,\n TRENDLINE_POLYNOMIAL,\n TRENDLINE_POWER\n} from '../constants';\nimport scatterExponentialTrendline from './scatter-exponential-trendline';\nimport scatterLinearTrendline from './scatter-linear-trendline';\nimport scatterLogarithmicTrendline from './scatter-logarithmic-trendline';\nimport scatterMovingAverageTrendline from './scatter-moving-average';\nimport scatterPolynomialTrendline from './scatter-polynomial-trendline';\nimport scatterPowerTrendline from './scatter-power-trendline';\n\nvar scatterRegistry = {};\nscatterRegistry[TRENDLINE_EXPONENTIAL] = scatterExponentialTrendline;\nscatterRegistry[TRENDLINE_LINEAR] = scatterLinearTrendline;\nscatterRegistry[TRENDLINE_LOGARITHMIC] = scatterLogarithmicTrendline;\nscatterRegistry[TRENDLINE_MOVING_AVERAGE] = scatterMovingAverageTrendline;\nscatterRegistry[TRENDLINE_POLYNOMIAL] = scatterPolynomialTrendline;\nscatterRegistry[TRENDLINE_POWER] = scatterPowerTrendline;\n\nexport default scatterRegistry;\n","import PlotAreaBase from './plotarea-base';\nimport AxisGroupRangeTracker from '../axis-group-range-tracker';\nimport PlotAreaEventsMixin from '../mixins/plotarea-events-mixin';\nimport ScatterChart from '../scatter-charts/scatter-chart';\nimport ScatterLineChart from '../scatter-charts/scatter-line-chart';\nimport BubbleChart from '../bubble-chart/bubble-chart';\nimport SeriesBinder from '../series-binder';\nimport trendlineFactory from '../trendlines/trendline-factory';\nimport scatterTrendlineRegistry from '../trendlines/scatter-trendline-registry';\n\nimport { NumericAxis, LogarithmicAxis, DateValueAxis, Point } from '../../core';\n\nimport { filterSeriesByType, equalsIgnoreCase, singleItemOrArray } from '../utils';\n\nimport { SCATTER, SCATTER_LINE, BUBBLE, LOGARITHMIC } from '../constants';\n\nimport { DATE } from '../../common/constants';\nimport { deepExtend, eventElement, grep, inArray, setDefaultOptions } from '../../common';\n\nvar XYPlotArea = (function (PlotAreaBase) {\n function XYPlotArea () {\n PlotAreaBase.apply(this, arguments);\n }\n\n if ( PlotAreaBase ) XYPlotArea.__proto__ = PlotAreaBase;\n XYPlotArea.prototype = Object.create( PlotAreaBase && PlotAreaBase.prototype );\n XYPlotArea.prototype.constructor = XYPlotArea;\n\n XYPlotArea.prototype.initFields = function initFields () {\n this.namedXAxes = {};\n this.namedYAxes = {};\n\n this.xAxisRangeTracker = new AxisGroupRangeTracker();\n this.yAxisRangeTracker = new AxisGroupRangeTracker();\n };\n\n XYPlotArea.prototype.render = function render (panes) {\n var this$1 = this;\n if ( panes === void 0 ) panes = this.panes;\n\n this.series = [].concat( this.originalSeries );\n this.createTrendlineSeries();\n\n var seriesByPane = this.groupSeriesByPane();\n for (var i = 0; i < panes.length; i++) {\n var pane = panes[i];\n var paneSeries = seriesByPane[pane.options.name || \"default\"] || [];\n this$1.addToLegend(paneSeries);\n var filteredSeries = this$1.filterVisibleSeries(paneSeries);\n\n if (!filteredSeries) {\n continue;\n }\n\n this$1.createScatterChart(\n filterSeriesByType(filteredSeries, SCATTER),\n pane\n );\n\n this$1.createScatterLineChart(\n filterSeriesByType(filteredSeries, SCATTER_LINE),\n pane\n );\n\n this$1.createBubbleChart(\n filterSeriesByType(filteredSeries, BUBBLE),\n pane\n );\n }\n\n this.createAxes(panes);\n };\n\n XYPlotArea.prototype.appendChart = function appendChart (chart, pane) {\n this.xAxisRangeTracker.update(chart.xAxisRanges);\n this.yAxisRangeTracker.update(chart.yAxisRanges);\n\n PlotAreaBase.prototype.appendChart.call(this, chart, pane);\n };\n\n XYPlotArea.prototype.removeAxis = function removeAxis (axis) {\n var axisName = axis.options.name;\n\n PlotAreaBase.prototype.removeAxis.call(this, axis);\n\n if (axis.options.vertical) {\n this.yAxisRangeTracker.reset(axisName);\n delete this.namedYAxes[axisName];\n } else {\n this.xAxisRangeTracker.reset(axisName);\n delete this.namedXAxes[axisName];\n }\n\n if (axis === this.axisX) {\n delete this.axisX;\n }\n\n if (axis === this.axisY) {\n delete this.axisY;\n }\n };\n\n // TODO: Refactor, optionally use series.pane option\n XYPlotArea.prototype.seriesPaneName = function seriesPaneName (series) {\n var options = this.options;\n var xAxisName = series.xAxis;\n var xAxisOptions = [].concat(options.xAxis);\n var xAxis = grep(xAxisOptions, function(a) { return a.name === xAxisName; })[0];\n var yAxisName = series.yAxis;\n var yAxisOptions = [].concat(options.yAxis);\n var yAxis = grep(yAxisOptions, function(a) { return a.name === yAxisName; })[0];\n var panes = options.panes || [ {} ];\n var defaultPaneName = panes[0].name || \"default\";\n var paneName = (xAxis || {}).pane || (yAxis || {}).pane || defaultPaneName;\n\n return paneName;\n };\n\n XYPlotArea.prototype.createScatterChart = function createScatterChart (series, pane) {\n if (series.length > 0) {\n this.appendChart(\n new ScatterChart(this, { series: series, clip: pane.options.clip }),\n pane\n );\n }\n };\n\n XYPlotArea.prototype.createScatterLineChart = function createScatterLineChart (series, pane) {\n if (series.length > 0) {\n this.appendChart(\n new ScatterLineChart(this, { series: series, clip: pane.options.clip }),\n pane\n );\n }\n };\n\n XYPlotArea.prototype.createBubbleChart = function createBubbleChart (series, pane) {\n if (series.length > 0) {\n this.appendChart(\n new BubbleChart(this, { series: series, clip: pane.options.clip }),\n pane\n );\n }\n };\n\n XYPlotArea.prototype.createXYAxis = function createXYAxis (options, vertical, axisIndex) {\n var axisName = options.name;\n var namedAxes = vertical ? this.namedYAxes : this.namedXAxes;\n var tracker = vertical ? this.yAxisRangeTracker : this.xAxisRangeTracker;\n var axisOptions = deepExtend({ reverse: !vertical && this.chartService.rtl }, options, { vertical: vertical });\n var isLog = equalsIgnoreCase(axisOptions.type, LOGARITHMIC);\n var defaultRange = tracker.query();\n var defaultAxisRange = isLog ? { min: 0.1, max: 1 } : { min: 0, max: 1 };\n var range = tracker.query(axisName) || defaultRange || defaultAxisRange;\n var typeSamples = [ axisOptions.min, axisOptions.max ];\n var series = this.series;\n\n for (var seriesIx = 0; seriesIx < series.length; seriesIx++) {\n var currentSeries = series[seriesIx];\n var seriesAxisName = currentSeries[vertical ? \"yAxis\" : \"xAxis\"];\n if ((seriesAxisName === axisOptions.name) || (axisIndex === 0 && !seriesAxisName)) {\n var firstPointValue = SeriesBinder.current.bindPoint(currentSeries, 0).valueFields;\n typeSamples.push(firstPointValue[vertical ? \"y\" : \"x\"]);\n\n break;\n }\n }\n\n if (axisIndex === 0 && defaultRange) {\n range.min = Math.min(range.min, defaultRange.min);\n range.max = Math.max(range.max, defaultRange.max);\n }\n\n var inferredDate;\n\n for (var i = 0; i < typeSamples.length; i++) {\n if (typeSamples[i] instanceof Date) {\n inferredDate = true;\n break;\n }\n }\n\n var axisType;\n if (equalsIgnoreCase(axisOptions.type, DATE) || (!axisOptions.type && inferredDate)) {\n axisType = DateValueAxis;\n } else if (isLog) {\n axisType = LogarithmicAxis;\n } else {\n axisType = NumericAxis;\n }\n\n var axis = new axisType(range.min, range.max, axisOptions, this.chartService);\n axis.axisIndex = axisIndex;\n\n if (axisName) {\n if (namedAxes[axisName]) {\n throw new Error(((vertical ? \"Y\" : \"X\") + \" axis with name \" + axisName + \" is already defined\"));\n }\n namedAxes[axisName] = axis;\n }\n\n this.appendAxis(axis);\n\n return axis;\n };\n\n XYPlotArea.prototype.createAxes = function createAxes (panes) {\n var this$1 = this;\n\n var options = this.options;\n var xAxesOptions = [].concat(options.xAxis);\n var xAxes = [];\n var yAxesOptions = [].concat(options.yAxis);\n var yAxes = [];\n\n for (var idx = 0; idx < xAxesOptions.length; idx++) {\n var axisPane = this$1.findPane(xAxesOptions[idx].pane);\n if (inArray(axisPane, panes)) {\n xAxes.push(this$1.createXYAxis(xAxesOptions[idx], false, idx));\n }\n }\n\n for (var idx$1 = 0; idx$1 < yAxesOptions.length; idx$1++) {\n var axisPane$1 = this$1.findPane(yAxesOptions[idx$1].pane);\n if (inArray(axisPane$1, panes)) {\n yAxes.push(this$1.createXYAxis(yAxesOptions[idx$1], true, idx$1));\n }\n }\n\n this.axisX = this.axisX || xAxes[0];\n this.axisY = this.axisY || yAxes[0];\n };\n\n XYPlotArea.prototype._dispatchEvent = function _dispatchEvent (chart, e, eventType) {\n var coords = chart._eventCoordinates(e);\n var point = new Point(coords.x, coords.y);\n var allAxes = this.axes;\n var length = allAxes.length;\n var xValues = [];\n var yValues = [];\n\n for (var i = 0; i < length; i++) {\n var axis = allAxes[i];\n var values = axis.options.vertical ? yValues : xValues;\n var currentValue = axis.getValue(point);\n if (currentValue !== null) {\n values.push(currentValue);\n }\n }\n\n if (xValues.length > 0 && yValues.length > 0) {\n chart.trigger(eventType, {\n element: eventElement(e),\n originalEvent: e,\n x: singleItemOrArray(xValues),\n y: singleItemOrArray(yValues)\n });\n }\n };\n\n XYPlotArea.prototype.updateAxisOptions = function updateAxisOptions$1 (axis, options) {\n var vertical = axis.options.vertical;\n var axes = this.groupAxes(this.panes);\n var index = (vertical ? axes.y : axes.x).indexOf(axis);\n\n updateAxisOptions(this.options, index, vertical, options);\n updateAxisOptions(this.originalOptions, index, vertical, options);\n };\n\n XYPlotArea.prototype.trendlineFactory = function trendlineFactory$1 (options, series) {\n var seriesValues = this.seriesValues.bind(this, series.index);\n\n var trendline = trendlineFactory(scatterTrendlineRegistry, options.type, {\n options: options,\n seriesValues: seriesValues\n });\n\n if (trendline) {\n // Inherit settings\n trendline.xAxis = series.xAxis;\n trendline.yAxis = series.yAxis;\n }\n\n return trendline;\n };\n\n XYPlotArea.prototype.seriesValues = function seriesValues (seriesIx) {\n var this$1 = this;\n\n var result = [];\n var currentSeries = this.series[seriesIx];\n\n for (var pointIx = 0; pointIx < currentSeries.data.length; pointIx++) {\n var data = this$1.bindPoint(currentSeries, pointIx);\n result.push({ pointIx: pointIx, valueFields: data.valueFields });\n }\n\n return result;\n };\n\n return XYPlotArea;\n}(PlotAreaBase));\n\nfunction updateAxisOptions(targetOptions, axisIndex, vertical, options) {\n var axisOptions = ([].concat(vertical ? targetOptions.yAxis : targetOptions.xAxis))[axisIndex];\n deepExtend(axisOptions, options);\n}\n\nsetDefaultOptions(XYPlotArea, {\n xAxis: {},\n yAxis: {}\n});\n\ndeepExtend(XYPlotArea.prototype, PlotAreaEventsMixin);\n\nexport default XYPlotArea;\n","import { drawing as draw, geometry as geom } from '@progress/kendo-drawing';\n\nimport { ChartElement, ShapeBuilder, TextBox, Box } from '../../core';\n\nimport PointEventsMixin from '../mixins/point-events-mixin';\n\nimport { OUTSIDE_END, INSIDE_END, PIE, FADEIN, TOOLTIP_OFFSET, CHART_POINT_ROLE, CHART_POINT_CLASSNAME, CHART_POINT_ROLE_DESCRIPTION } from '../constants';\nimport hasGradientOverlay from '../utils/has-gradient-overlay';\n\nimport { TOP, BOTTOM, LEFT, RIGHT, DEFAULT_FONT, CIRCLE, WHITE, CENTER, DEFAULT_PRECISION } from '../../common/constants';\nimport { autoTextColor, setDefaultOptions, getSpacing, getTemplate, deepExtend, round, rad } from '../../common';\nimport AccessibilityAttributesMixin from '../mixins/accessibility-attributes-mixin';\n\nvar PieSegment = (function (ChartElement) {\n function PieSegment(value, sector, options) {\n ChartElement.call(this, options);\n\n this.value = value;\n this.sector = sector;\n }\n\n if ( ChartElement ) PieSegment.__proto__ = ChartElement;\n PieSegment.prototype = Object.create( ChartElement && ChartElement.prototype );\n PieSegment.prototype.constructor = PieSegment;\n\n PieSegment.prototype.render = function render () {\n if (this._rendered || this.visible === false) {\n return;\n }\n this._rendered = true;\n\n this.createLabel();\n };\n\n PieSegment.prototype.createLabel = function createLabel () {\n var labels = this.options.labels;\n var chartService = this.owner.chartService;\n var labelText = this.getLabelText(labels);\n\n if (labels.visible && (labelText || labelText === 0)) {\n if (labels.position === CENTER || labels.position === INSIDE_END) {\n if (!labels.color) {\n labels.color = autoTextColor(this.options.color);\n }\n if (!labels.background) {\n labels.background = this.options.color;\n }\n } else {\n var themeLabels = chartService.theme.seriesDefaults.labels;\n labels.color = labels.color || themeLabels.color;\n labels.background = labels.background || themeLabels.background;\n }\n\n\n this.label = new TextBox(labelText, deepExtend({}, labels, {\n align: CENTER,\n vAlign: \"\",\n animation: {\n type: FADEIN,\n delay: this.animationDelay\n }\n }), this.pointData());\n\n this.append(this.label);\n }\n };\n\n PieSegment.prototype.getLabelText = function getLabelText (options) {\n var labelTemplate = getTemplate(options);\n\n if (labelTemplate) {\n return labelTemplate(this.pointData());\n }\n\n return this.owner.chartService.format.auto(options.format, this.value);\n };\n\n PieSegment.prototype.reflow = function reflow (targetBox) {\n this.render();\n this.box = targetBox;\n this.reflowLabel();\n };\n\n PieSegment.prototype.reflowLabel = function reflowLabel () {\n var ref = this;\n var labelsOptions = ref.options.labels;\n var label = ref.label;\n var sector = this.sector.clone();\n var labelsDistance = labelsOptions.distance;\n var angle = sector.middle();\n\n if (label) {\n var labelHeight = label.box.height();\n var labelWidth = label.box.width();\n var lp;\n\n if (labelsOptions.position === CENTER) {\n sector.radius = Math.abs((sector.radius - labelHeight) / 2) + labelHeight;\n lp = sector.point(angle);\n label.reflow(new Box(lp.x, lp.y - labelHeight / 2, lp.x, lp.y));\n } else if (labelsOptions.position === INSIDE_END) {\n sector.radius = sector.radius - labelHeight / 2;\n lp = sector.point(angle);\n label.reflow(new Box(lp.x, lp.y - labelHeight / 2, lp.x, lp.y));\n } else {\n var x1;\n lp = sector.clone().expand(labelsDistance).point(angle);\n if (lp.x >= sector.center.x) {\n x1 = lp.x + labelWidth;\n label.orientation = RIGHT;\n } else {\n x1 = lp.x - labelWidth;\n label.orientation = LEFT;\n }\n label.reflow(new Box(x1, lp.y - labelHeight, lp.x, lp.y));\n }\n }\n };\n\n PieSegment.prototype.createVisual = function createVisual () {\n var this$1 = this;\n\n var ref = this;\n var sector = ref.sector;\n var options = ref.options;\n\n ChartElement.prototype.createVisual.call(this);\n\n this.addAccessibilityAttributesToVisual();\n\n if (this.value) {\n if (options.visual) {\n var startAngle = (sector.startAngle + 180) % 360;\n var visual = options.visual({\n category: this.category,\n dataItem: this.dataItem,\n value: this.value,\n series: this.series,\n percentage: this.percentage,\n center: new geom.Point(sector.center.x, sector.center.y),\n radius: sector.radius,\n innerRadius: sector.innerRadius,\n startAngle: startAngle,\n endAngle: startAngle + sector.angle,\n options: options,\n sender: this.getSender(),\n createVisual: function () {\n var group = new draw.Group();\n this$1.createSegmentVisual(group);\n\n return group;\n }\n });\n\n if (visual) {\n this.visual.append(visual);\n }\n } else {\n this.createSegmentVisual(this.visual);\n }\n }\n };\n\n PieSegment.prototype.createSegmentVisual = function createSegmentVisual (group) {\n var ref = this;\n var sector = ref.sector;\n var options = ref.options;\n var borderOptions = options.border || {};\n var border = borderOptions.width > 0 ? {\n stroke: {\n color: borderOptions.color,\n width: borderOptions.width,\n opacity: borderOptions.opacity,\n dashType: borderOptions.dashType\n }\n } : {};\n var color = options.color;\n var fill = {\n color: color,\n opacity: options.opacity\n };\n var visual = this.createSegment(sector, deepExtend({\n fill: fill,\n stroke: {\n opacity: options.opacity\n },\n zIndex: options.zIndex\n }, border));\n\n group.append(visual);\n\n if (hasGradientOverlay(options)) {\n group.append(this.createGradientOverlay(visual, {\n baseColor: color,\n fallbackFill: fill\n }, deepExtend({\n center: [ sector.center.x, sector.center.y ],\n innerRadius: sector.innerRadius,\n radius: sector.radius,\n userSpace: true\n }, options.overlay)));\n }\n };\n\n PieSegment.prototype.createSegment = function createSegment (sector, options) {\n if (options.singleSegment) {\n return new draw.Circle(new geom.Circle(new geom.Point(sector.center.x, sector.center.y), sector.radius), options);\n }\n\n return ShapeBuilder.current.createRing(sector, options);\n };\n\n PieSegment.prototype.createAnimation = function createAnimation () {\n var ref = this;\n var options = ref.options;\n var center = ref.sector.center;\n\n deepExtend(options, {\n animation: {\n center: [ center.x, center.y ],\n delay: this.animationDelay\n }\n });\n\n ChartElement.prototype.createAnimation.call(this);\n };\n\n PieSegment.prototype.createHighlight = function createHighlight (options) {\n var highlight = this.options.highlight || {};\n var border = highlight.border || {};\n\n return this.createSegment(this.sector, deepExtend({}, options, {\n fill: {\n color: highlight.color,\n opacity: highlight.opacity\n },\n stroke: {\n opacity: border.opacity,\n width: border.width,\n color: border.color\n }\n }));\n };\n\n PieSegment.prototype.highlightVisual = function highlightVisual () {\n return this.visual.children[0];\n };\n\n PieSegment.prototype.highlightVisualArgs = function highlightVisualArgs () {\n var sector = this.sector;\n\n return {\n options: this.options,\n radius: sector.radius,\n innerRadius: sector.innerRadius,\n center: new geom.Point(sector.center.x, sector.center.y),\n startAngle: sector.startAngle,\n endAngle: sector.angle + sector.startAngle,\n visual: this.visual\n };\n };\n\n PieSegment.prototype.createFocusHighlight = function createFocusHighlight (style) {\n var borderWidth = this.options.accessibility.highlight.border.width;\n var result = this.createSegment(this.sector, deepExtend({}, style, {\n stroke: {\n width: borderWidth * 2\n }\n }));\n\n var clipPath = new draw.MultiPath();\n\n clipPath.paths.push(draw.Path.fromRect(result.bbox()));\n clipPath.paths.push(this.createSegment(this.sector, {}));\n\n result.clip(clipPath);\n\n return result;\n };\n\n PieSegment.prototype.tooltipAnchor = function tooltipAnchor () {\n var sector = this.sector.clone().expand(TOOLTIP_OFFSET);\n var midAndle = sector.middle();\n var midPoint = sector.point(midAndle);\n\n return {\n point: midPoint,\n align: tooltipAlignment(midAndle + 180)\n };\n };\n\n PieSegment.prototype.formatValue = function formatValue (format) {\n return this.owner.formatPointValue(this, format);\n };\n\n PieSegment.prototype.pointData = function pointData () {\n return {\n dataItem: this.dataItem,\n category: this.category,\n value: this.value,\n series: this.series,\n percentage: this.percentage\n };\n };\n\n PieSegment.prototype.getIndex = function getIndex () {\n return this.index;\n };\n\n return PieSegment;\n}(ChartElement));\n\nvar RAD_30 = round(rad(30), DEFAULT_PRECISION);\nvar RAD_60 = round(rad(60), DEFAULT_PRECISION);\n\nfunction tooltipAlignment(angle) {\n var radians = rad(angle);\n var sine = round(Math.sin(radians), DEFAULT_PRECISION);\n var cosine = round(Math.cos(radians), DEFAULT_PRECISION);\n\n\n var horizontal;\n if (Math.abs(sine) > RAD_60) {\n horizontal = CENTER;\n } else if (cosine < 0) {\n horizontal = RIGHT;\n } else {\n horizontal = LEFT;\n }\n\n var vertical;\n if (Math.abs(sine) < RAD_30) {\n vertical = CENTER;\n } else if (sine < 0) {\n vertical = BOTTOM;\n } else {\n vertical = TOP;\n }\n\n return {\n horizontal: horizontal,\n vertical: vertical\n };\n}\n\nsetDefaultOptions(PieSegment, {\n color: WHITE,\n overlay: {\n gradient: \"roundedBevel\"\n },\n border: {\n width: 0.5\n },\n labels: {\n visible: false,\n distance: 35,\n font: DEFAULT_FONT,\n margin: getSpacing(0.5),\n align: CIRCLE,\n zIndex: 1,\n position: OUTSIDE_END\n },\n animation: {\n type: PIE\n },\n highlight: {\n visible: true,\n border: {\n width: 1\n }\n },\n visible: true,\n accessibility: {\n role: CHART_POINT_ROLE,\n className: CHART_POINT_CLASSNAME,\n ariaRoleDescription: CHART_POINT_ROLE_DESCRIPTION\n }\n});\n\ndeepExtend(PieSegment.prototype, PointEventsMixin);\ndeepExtend(PieSegment.prototype, AccessibilityAttributesMixin);\n\nexport default PieSegment;\n","import { getTemplate } from '../../common';\nimport { hasValue } from '../utils';\n\nvar PieChartMixin = {\n createLegendItem: function(value, point, options) {\n var legendOptions = this.options.legend || {};\n var labelsOptions = legendOptions.labels || {};\n var inactiveItems = legendOptions.inactiveItems || {};\n var inactiveItemsLabels = inactiveItems.labels || {};\n\n if (options && options.visibleInLegend !== false) {\n var pointVisible = options.visible !== false;\n var labelTemplate = pointVisible ? getTemplate(labelsOptions) :\n getTemplate(inactiveItemsLabels) || getTemplate(labelsOptions);\n var text = options.category;\n\n if (labelTemplate) {\n text = labelTemplate({\n text: text,\n series: options.series,\n dataItem: options.dataItem,\n percentage: options.percentage,\n value: value\n });\n }\n\n var itemLabelOptions, markerColor;\n if (pointVisible) {\n itemLabelOptions = {};\n markerColor = point.color;\n } else {\n itemLabelOptions = {\n color: inactiveItemsLabels.color,\n font: inactiveItemsLabels.font\n };\n markerColor = (inactiveItems.markers || {}).color;\n }\n\n if (hasValue(text) && text !== \"\") {\n this.legendItems.push({\n active: pointVisible,\n pointIndex: options.index,\n text: text,\n series: options.series,\n markerColor: markerColor,\n labels: itemLabelOptions\n });\n }\n }\n }\n};\n\nexport default PieChartMixin;","import { drawing as draw, geometry } from '@progress/kendo-drawing';\n\nimport PieSegment from './pie-segment';\nimport PieChartMixin from '../mixins/pie-chart-mixin';\nimport { ChartElement, Ring, Box, Point } from '../../core';\n\nimport { OUTSIDE_END, FADEIN, COLUMN } from '../constants';\nimport { bindSegments, evalOptions } from '../utils';\n\nimport { CIRCLE, RIGHT, CENTER } from '../../common/constants';\nimport { deepExtend, defined, find, isFunction, last, round, setDefaultOptions, valueOrDefault } from '../../common';\n\nvar PIE_SECTOR_ANIM_DELAY = 70;\n\nvar PieChart = (function (ChartElement) {\n function PieChart(plotArea, options) {\n ChartElement.call(this, options);\n\n this.plotArea = plotArea;\n this.chartService = plotArea.chartService;\n this.points = [];\n this.legendItems = [];\n this.render();\n }\n\n if ( ChartElement ) PieChart.__proto__ = ChartElement;\n PieChart.prototype = Object.create( ChartElement && ChartElement.prototype );\n PieChart.prototype.constructor = PieChart;\n\n PieChart.prototype.render = function render () {\n this.traverseDataPoints(this.addValue.bind(this));\n };\n\n PieChart.prototype.traverseDataPoints = function traverseDataPoints (callback) {\n var this$1 = this;\n\n var ref = this;\n var options = ref.options;\n var seriesColors = ref.plotArea.options.seriesColors; if ( seriesColors === void 0 ) seriesColors = [];\n var colorsCount = seriesColors.length;\n var series = options.series;\n var seriesCount = series.length;\n\n for (var seriesIx = 0; seriesIx < seriesCount; seriesIx++) {\n var currentSeries = series[seriesIx];\n var data = currentSeries.data;\n var ref$1 = bindSegments(currentSeries);\n var total = ref$1.total;\n var points = ref$1.points;\n var count = ref$1.count;\n var anglePerValue = 360 / total;\n var constantAngle = (void 0);\n if (!isFinite(anglePerValue)) {\n constantAngle = 360 / count;\n }\n var currentAngle = (void 0);\n\n if (defined(currentSeries.startAngle)) {\n currentAngle = currentSeries.startAngle;\n } else {\n currentAngle = options.startAngle;\n }\n\n if (seriesIx !== seriesCount - 1) {\n if (currentSeries.labels.position === OUTSIDE_END) {\n currentSeries.labels.position = CENTER;\n }\n }\n\n for (var i = 0; i < points.length; i++) {\n var pointData = points[i];\n if (!pointData) {\n continue;\n }\n\n var fields = pointData.fields;\n var value = pointData.value;\n var visible = pointData.visible;\n var angle = value !== 0 ? (constantAngle || (value * anglePerValue)) : 0;\n var explode = data.length !== 1 && Boolean(fields.explode);\n\n if (!isFunction(currentSeries.color)) {\n currentSeries.color = fields.color || seriesColors[i % colorsCount];\n }\n\n callback(value, new Ring(null, 0, 0, currentAngle, angle), {\n owner: this$1,\n category: defined(fields.category) ? fields.category : \"\",\n index: i,\n series: currentSeries,\n seriesIx: seriesIx,\n dataItem: data[i],\n percentage: total !== 0 ? value / total : 0,\n explode: explode,\n visibleInLegend: fields.visibleInLegend,\n visible: visible,\n zIndex: seriesCount - seriesIx,\n animationDelay: this$1.animationDelay(i, seriesIx, seriesCount)\n });\n\n if (visible !== false) {\n currentAngle += angle;\n }\n }\n }\n };\n\n PieChart.prototype.evalSegmentOptions = function evalSegmentOptions (options, value, fields) {\n var series = fields.series;\n\n evalOptions(options, {\n value: value,\n series: series,\n dataItem: fields.dataItem,\n category: fields.category,\n percentage: fields.percentage\n }, { defaults: series._defaults, excluded: [\n \"data\", \"content\", \"template\", \"visual\", \"toggle\",\n \"ariaTemplate\", \"ariaContent\"\n ] });\n };\n\n PieChart.prototype.addValue = function addValue (value, sector, fields) {\n var segmentOptions = deepExtend({}, fields.series, { index: fields.index });\n this.evalSegmentOptions(segmentOptions, value, fields);\n\n this.createLegendItem(value, segmentOptions, fields);\n\n if (fields.visible === false) {\n return;\n }\n\n var segment = new PieSegment(value, sector, segmentOptions);\n Object.assign(segment, fields);\n this.append(segment);\n this.points.push(segment);\n };\n\n PieChart.prototype.reflow = function reflow (targetBox) {\n var ref = this;\n var options = ref.options;\n var points = ref.points;\n var seriesConfigs = ref.seriesConfigs; if ( seriesConfigs === void 0 ) seriesConfigs = [];\n var count = points.length;\n var box = targetBox.clone();\n var space = 5;\n var minWidth = Math.min(box.width(), box.height());\n var halfMinWidth = minWidth / 2;\n var defaultPadding = minWidth - minWidth * 0.85;\n var newBox = new Box(box.x1, box.y1, box.x1 + minWidth, box.y1 + minWidth);\n var newBoxCenter = newBox.center();\n var boxCenter = box.center();\n var seriesCount = options.series.length;\n var leftSideLabels = [];\n var rightSideLabels = [];\n var padding = valueOrDefault(options.padding, defaultPadding);\n\n this.targetBox = targetBox;\n\n padding = padding > halfMinWidth - space ? halfMinWidth - space : padding;\n newBox.translate(boxCenter.x - newBoxCenter.x, boxCenter.y - newBoxCenter.y);\n\n var radius = halfMinWidth - padding;\n var center = new Point(\n radius + newBox.x1 + padding,\n radius + newBox.y1 + padding\n );\n\n for (var i = 0; i < count; i++) {\n var segment = points[i];\n var sector = segment.sector;\n var seriesIndex = segment.seriesIx;\n sector.radius = radius;\n sector.center = center;\n\n if (seriesConfigs.length) {\n var seriesConfig = seriesConfigs[seriesIndex];\n sector.innerRadius = seriesConfig.innerRadius;\n sector.radius = seriesConfig.radius;\n }\n\n if (seriesIndex === seriesCount - 1 && segment.explode) {\n sector.center = sector.clone().setRadius(sector.radius * 0.15).point(sector.middle());\n }\n\n segment.reflow(newBox);\n\n var label = segment.label;\n if (label) {\n if (label.options.position === OUTSIDE_END) {\n if (seriesIndex === seriesCount - 1) {\n if (label.orientation === RIGHT) {\n rightSideLabels.push(label);\n } else {\n leftSideLabels.push(label);\n }\n }\n }\n }\n }\n\n if (leftSideLabels.length > 0) {\n leftSideLabels.sort(this.labelComparator(true));\n this.leftLabelsReflow(leftSideLabels);\n }\n\n if (rightSideLabels.length > 0) {\n rightSideLabels.sort(this.labelComparator(false));\n this.rightLabelsReflow(rightSideLabels);\n }\n\n this.box = newBox;\n };\n\n PieChart.prototype.leftLabelsReflow = function leftLabelsReflow (labels) {\n var distances = this.distanceBetweenLabels(labels);\n\n this.distributeLabels(distances, labels);\n };\n\n PieChart.prototype.rightLabelsReflow = function rightLabelsReflow (labels) {\n var distances = this.distanceBetweenLabels(labels);\n\n this.distributeLabels(distances, labels);\n };\n\n PieChart.prototype.distanceBetweenLabels = function distanceBetweenLabels (labels) {\n var segment = last(this.points);\n var sector = segment.sector;\n var count = labels.length - 1;\n var lr = sector.radius + segment.options.labels.distance;\n var distances = [];\n var firstBox = labels[0].box;\n var distance = round(firstBox.y1 - (sector.center.y - lr - firstBox.height() - firstBox.height() / 2));\n\n distances.push(distance);\n\n for (var i = 0; i < count; i++) {\n var secondBox = labels[i + 1].box;\n\n firstBox = labels[i].box;\n distance = round(secondBox.y1 - firstBox.y2);\n distances.push(distance);\n }\n distance = round(sector.center.y + lr - labels[count].box.y2 - labels[count].box.height() / 2);\n distances.push(distance);\n\n return distances;\n };\n\n PieChart.prototype.distributeLabels = function distributeLabels (distances, labels) {\n var this$1 = this;\n\n var count = distances.length;\n var left, right, remaining;\n\n for (var i = 0; i < count; i++) {\n remaining = -distances[i];\n left = right = i;\n\n while (remaining > 0 && (left >= 0 || right < count)) {\n remaining = this$1._takeDistance(distances, i, --left, remaining);\n remaining = this$1._takeDistance(distances, i, ++right, remaining);\n }\n }\n\n this.reflowLabels(distances, labels);\n };\n\n PieChart.prototype._takeDistance = function _takeDistance (distances, anchor, position, amount) {\n var result = amount;\n if (distances[position] > 0) {\n var available = Math.min(distances[position], result);\n result -= available;\n distances[position] -= available;\n distances[anchor] += available;\n }\n\n return result;\n };\n\n PieChart.prototype.reflowLabels = function reflowLabels (distances, labels) {\n var this$1 = this;\n\n var segment = last(this.points);\n var sector = segment.sector;\n var labelOptions = segment.options.labels;\n var labelsCount = labels.length;\n var labelDistance = labelOptions.distance;\n var boxY = sector.center.y - (sector.radius + labelDistance) - labels[0].box.height();\n var boxX;\n\n distances[0] += 2;\n for (var i = 0; i < labelsCount; i++) {\n var label = labels[i];\n var box = label.box;\n\n boxY += distances[i];\n boxX = this$1.hAlignLabel(\n box.x2,\n sector.clone().expand(labelDistance),\n boxY,\n boxY + box.height(),\n label.orientation === RIGHT);\n\n if (label.orientation === RIGHT) {\n if (labelOptions.align !== CIRCLE) {\n boxX = sector.radius + sector.center.x + labelDistance;\n }\n label.reflow(new Box(boxX + box.width(), boxY, boxX, boxY));\n } else {\n if (labelOptions.align !== CIRCLE) {\n boxX = sector.center.x - sector.radius - labelDistance;\n }\n label.reflow(new Box(boxX - box.width(), boxY, boxX, boxY));\n }\n\n boxY += box.height();\n }\n };\n\n PieChart.prototype.createVisual = function createVisual () {\n var this$1 = this;\n\n var ref = this;\n var connectors = ref.options.connectors;\n var points = ref.points;\n var count = points.length;\n var space = 4;\n\n ChartElement.prototype.createVisual.call(this);\n\n this._connectorLines = [];\n\n for (var i = 0; i < count; i++) {\n var segment = points[i];\n var sector = segment.sector;\n var label = segment.label;\n var angle = sector.middle();\n var connectorsColor = (segment.options.connectors || {}).color || connectors.color;\n\n if (label) {\n var connectorLine = new draw.Path({\n stroke: {\n color: connectorsColor,\n width: connectors.width\n },\n animation: {\n type: FADEIN,\n delay: segment.animationDelay\n }\n });\n\n if (label.options.position === OUTSIDE_END) {\n var box = label.box;\n var centerPoint = sector.center;\n var start = sector.point(angle);\n var middle = new Point(box.x1, box.center().y);\n var sr = (void 0), end = (void 0), crossing = (void 0);\n\n start = sector.clone().expand(connectors.padding).point(angle);\n connectorLine.moveTo(start.x, start.y);\n // TODO: Extract into a method to remove duplication\n if (label.orientation === RIGHT) {\n end = new Point(box.x1 - connectors.padding, box.center().y);\n crossing = intersection(centerPoint, start, middle, end);\n middle = new Point(end.x - space, end.y);\n crossing = crossing || middle;\n crossing.x = Math.min(crossing.x, middle.x);\n\n if (this$1.pointInCircle(crossing, sector.center, sector.radius + space) ||\n crossing.x < sector.center.x) {\n sr = sector.center.x + sector.radius + space;\n if (segment.options.labels.align !== COLUMN) {\n if (sr < middle.x) {\n connectorLine.lineTo(sr, start.y);\n } else {\n connectorLine.lineTo(start.x + space * 2, start.y);\n }\n } else {\n connectorLine.lineTo(sr, start.y);\n }\n connectorLine.lineTo(middle.x, end.y);\n } else {\n crossing.y = end.y;\n connectorLine.lineTo(crossing.x, crossing.y);\n }\n } else {\n end = new Point(box.x2 + connectors.padding, box.center().y);\n crossing = intersection(centerPoint, start, middle, end);\n middle = new Point(end.x + space, end.y);\n crossing = crossing || middle;\n crossing.x = Math.max(crossing.x, middle.x);\n\n if (this$1.pointInCircle(crossing, sector.center, sector.radius + space) ||\n crossing.x > sector.center.x) {\n sr = sector.center.x - sector.radius - space;\n if (segment.options.labels.align !== COLUMN) {\n if (sr > middle.x) {\n connectorLine.lineTo(sr, start.y);\n } else {\n connectorLine.lineTo(start.x - space * 2, start.y);\n }\n } else {\n connectorLine.lineTo(sr, start.y);\n }\n connectorLine.lineTo(middle.x, end.y);\n } else {\n crossing.y = end.y;\n connectorLine.lineTo(crossing.x, crossing.y);\n }\n }\n\n connectorLine.lineTo(end.x, end.y);\n\n this$1._connectorLines.push(connectorLine);\n this$1.visual.append(connectorLine);\n }\n }\n }\n };\n\n PieChart.prototype.renderVisual = function renderVisual () {\n ChartElement.prototype.renderVisual.call(this);\n\n if (find(this.options.series, function (options) { return options.autoFit; })) {\n var targetBox = this.targetBox;\n var pieCenter = this.box.center();\n var bbox = this.visual.bbox();\n if (!bbox) {\n return;\n }\n\n var bboxBottom = bbox.bottomRight();\n\n var scale = Math.min(\n (pieCenter.y - targetBox.y1) / (pieCenter.y - bbox.origin.y),\n (targetBox.y2 - pieCenter.y) / (bboxBottom.y - pieCenter.y),\n (pieCenter.x - targetBox.x1) / (pieCenter.x - bbox.origin.x),\n (targetBox.x2 - pieCenter.x) / (bboxBottom.x - pieCenter.x)\n );\n\n if (scale < 1) {\n this.visual.transform(geometry.transform().scale(scale, scale, [ pieCenter.x, pieCenter.y ]));\n }\n }\n };\n\n PieChart.prototype.labelComparator = function labelComparator (reverse) {\n var reverseValue = reverse ? -1 : 1;\n\n return function(a, b) {\n var first = (a.parent.sector.middle() + 270) % 360;\n var second = (b.parent.sector.middle() + 270) % 360;\n return (first - second) * reverseValue;\n };\n };\n\n PieChart.prototype.hAlignLabel = function hAlignLabel (originalX, sector, y1, y2, direction) {\n var radius = sector.radius;\n var sector_center = sector.center;\n var cx = sector_center.x;\n var cy = sector_center.y;\n var t = Math.min(Math.abs(cy - y1), Math.abs(cy - y2));\n\n if (t > radius) {\n return originalX;\n }\n\n return cx + Math.sqrt((radius * radius) - (t * t)) * (direction ? 1 : -1);\n };\n\n PieChart.prototype.pointInCircle = function pointInCircle (point, center, radius) {\n return Math.pow(center.x - point.x, 2) + Math.pow(center.y - point.y, 2) < Math.pow(radius, 2);\n };\n\n PieChart.prototype.formatPointValue = function formatPointValue (point, format) {\n return this.chartService.format.auto(format, point.value);\n };\n\n PieChart.prototype.animationDelay = function animationDelay (categoryIndex) {\n return categoryIndex * PIE_SECTOR_ANIM_DELAY;\n };\n\n PieChart.prototype.stackRoot = function stackRoot () {\n return this;\n };\n\n return PieChart;\n}(ChartElement));\n\nfunction intersection(a1, a2, b1, b2) {\n var uat = (b2.x - b1.x) * (a1.y - b1.y) - (b2.y - b1.y) * (a1.x - b1.x);\n var ub = (b2.y - b1.y) * (a2.x - a1.x) - (b2.x - b1.x) * (a2.y - a1.y);\n\n var result;\n if (ub !== 0) {\n var ua = (uat / ub);\n\n result = new Point(\n a1.x + ua * (a2.x - a1.x),\n a1.y + ua * (a2.y - a1.y)\n );\n }\n\n return result;\n}\n\nsetDefaultOptions(PieChart, {\n startAngle: 90,\n connectors: {\n width: 2,\n color: \"#939393\",\n padding: 8\n },\n inactiveItems: {\n markers: {},\n labels: {}\n }\n});\n\ndeepExtend(PieChart.prototype, PieChartMixin);\n\nPieChart.prototype.isStackRoot = true;\n\nexport default PieChart;\n","import PlotAreaBase from './plotarea-base';\nimport PieChart from '../pie-chart/pie-chart';\n\nimport { append } from '../../common';\n\nvar PiePlotArea = (function (PlotAreaBase) {\n function PiePlotArea () {\n PlotAreaBase.apply(this, arguments);\n }\n\n if ( PlotAreaBase ) PiePlotArea.__proto__ = PlotAreaBase;\n PiePlotArea.prototype = Object.create( PlotAreaBase && PlotAreaBase.prototype );\n PiePlotArea.prototype.constructor = PiePlotArea;\n\n PiePlotArea.prototype.render = function render () {\n this.createPieChart(this.series);\n };\n\n PiePlotArea.prototype.createPieChart = function createPieChart (series) {\n var firstSeries = series[0];\n var pieChart = new PieChart(this, {\n series: series,\n padding: firstSeries.padding,\n startAngle: firstSeries.startAngle,\n connectors: firstSeries.connectors,\n legend: this.options.legend\n });\n\n this.appendChart(pieChart);\n };\n\n PiePlotArea.prototype.appendChart = function appendChart (chart, pane) {\n PlotAreaBase.prototype.appendChart.call(this, chart, pane);\n append(this.options.legend.data, chart.legendItems);\n };\n\n PiePlotArea.prototype.getPointBelow = function getPointBelow (point) {\n return this.getPointToTheRight(point);\n };\n\n PiePlotArea.prototype.getPointAbove = function getPointAbove (point) {\n return this.getPointToTheLeft(point);\n };\n\n return PiePlotArea;\n}(PlotAreaBase));\n\nexport default PiePlotArea;\n","import PieSegment from '../pie-chart/pie-segment';\nimport PointEventsMixin from '../mixins/point-events-mixin';\n\nimport { PIE } from '../constants';\n\nimport { ShapeBuilder, Box } from '../../core';\n\nimport { CENTER } from '../../common/constants';\nimport { deepExtend, setDefaultOptions } from '../../common';\n\nvar DonutSegment = (function (PieSegment) {\n function DonutSegment () {\n PieSegment.apply(this, arguments);\n }\n\n if ( PieSegment ) DonutSegment.__proto__ = PieSegment;\n DonutSegment.prototype = Object.create( PieSegment && PieSegment.prototype );\n DonutSegment.prototype.constructor = DonutSegment;\n\n DonutSegment.prototype.reflowLabel = function reflowLabel () {\n var ref = this;\n var labelsOptions = ref.options.labels;\n var label = ref.label;\n var sector = this.sector.clone();\n var angle = sector.middle();\n\n if (label) {\n var labelHeight = label.box.height();\n if (labelsOptions.position === CENTER) {\n sector.radius -= (sector.radius - sector.innerRadius) / 2;\n\n var lp = sector.point(angle);\n\n label.reflow(new Box(lp.x, lp.y - labelHeight / 2, lp.x, lp.y));\n } else {\n PieSegment.prototype.reflowLabel.call(this);\n }\n }\n };\n\n DonutSegment.prototype.createSegment = function createSegment (sector, options) {\n return ShapeBuilder.current.createRing(sector, options);\n };\n\n return DonutSegment;\n}(PieSegment));\n\nsetDefaultOptions(DonutSegment, {\n overlay: {\n gradient: \"roundedGlass\"\n },\n labels: {\n position: CENTER\n },\n animation: {\n type: PIE\n }\n});\n\ndeepExtend(DonutSegment.prototype, PointEventsMixin);\n\n\nexport default DonutSegment;\n","import PieChart from '../pie-chart/pie-chart';\nimport DonutSegment from './donut-segment';\n\nimport { INITIAL_ANIMATION_DURATION } from '../constants';\n\nimport { deepExtend, defined, setDefaultOptions, valueOrDefault } from '../../common';\n\nvar DONUT_SECTOR_ANIM_DELAY = 50;\n\nvar DonutChart = (function (PieChart) {\n function DonutChart () {\n PieChart.apply(this, arguments);\n }\n\n if ( PieChart ) DonutChart.__proto__ = PieChart;\n DonutChart.prototype = Object.create( PieChart && PieChart.prototype );\n DonutChart.prototype.constructor = DonutChart;\n\n DonutChart.prototype.addValue = function addValue (value, sector, fields) {\n var segmentOptions = deepExtend({}, fields.series, { index: fields.index });\n this.evalSegmentOptions(segmentOptions, value, fields);\n\n this.createLegendItem(value, segmentOptions, fields);\n\n if (fields.visible === false) {\n return;\n }\n\n var segment = new DonutSegment(value, sector, segmentOptions);\n\n Object.assign(segment, fields);\n this.append(segment);\n this.points.push(segment);\n };\n\n DonutChart.prototype.reflow = function reflow (targetBox) {\n var this$1 = this;\n\n var options = this.options;\n var box = targetBox.clone();\n var space = 5;\n var minWidth = Math.min(box.width(), box.height());\n var halfMinWidth = minWidth / 2;\n var defaultPadding = minWidth - minWidth * 0.85;\n var series = options.series;\n var seriesCount = series.length;\n\n var padding = valueOrDefault(options.padding, defaultPadding);\n padding = padding > halfMinWidth - space ? halfMinWidth - space : padding;\n\n var totalSize = halfMinWidth - padding;\n var seriesWithoutSize = 0;\n var holeSize;\n\n for (var i = 0; i < seriesCount; i++) {\n var currentSeries = series[i];\n if (i === 0) {\n if (defined(currentSeries.holeSize)) {\n holeSize = currentSeries.holeSize;\n totalSize -= currentSeries.holeSize;\n }\n }\n\n if (defined(currentSeries.size)) {\n totalSize -= currentSeries.size;\n } else {\n seriesWithoutSize++;\n }\n\n if (defined(currentSeries.margin) && i !== seriesCount - 1) {\n totalSize -= currentSeries.margin;\n }\n }\n\n if (!defined(holeSize)) {\n var currentSize = (halfMinWidth - padding) / (seriesCount + 0.75);\n holeSize = currentSize * 0.75;\n totalSize -= holeSize;\n }\n\n var innerRadius = holeSize;\n var margin = 0;\n var size, radius;\n\n this.seriesConfigs = [];\n\n for (var i$1 = 0; i$1 < seriesCount; i$1++) {\n var currentSeries$1 = series[i$1];\n size = valueOrDefault(currentSeries$1.size, totalSize / seriesWithoutSize);\n innerRadius += margin;\n radius = innerRadius + size;\n this$1.seriesConfigs.push({ innerRadius: innerRadius, radius: radius });\n margin = currentSeries$1.margin || 0;\n innerRadius = radius;\n }\n\n PieChart.prototype.reflow.call(this, targetBox);\n };\n\n DonutChart.prototype.animationDelay = function animationDelay (categoryIndex, seriesIndex, seriesCount) {\n return categoryIndex * DONUT_SECTOR_ANIM_DELAY +\n (INITIAL_ANIMATION_DURATION * (seriesIndex + 1) / (seriesCount + 1));\n };\n\n return DonutChart;\n}(PieChart));\n\n\nsetDefaultOptions(DonutChart, {\n startAngle: 90,\n connectors: {\n width: 2,\n color: \"#939393\",\n padding: 8\n }\n});\n\nexport default DonutChart;\n","import PiePlotArea from './pie-plotarea';\nimport DonutChart from '../donut-chart/donut-chart';\n\nvar DonutPlotArea = (function (PiePlotArea) {\n function DonutPlotArea () {\n PiePlotArea.apply(this, arguments);\n }\n\n if ( PiePlotArea ) DonutPlotArea.__proto__ = PiePlotArea;\n DonutPlotArea.prototype = Object.create( PiePlotArea && PiePlotArea.prototype );\n DonutPlotArea.prototype.constructor = DonutPlotArea;\n\n DonutPlotArea.prototype.render = function render () {\n this.createDonutChart(this.series);\n };\n\n DonutPlotArea.prototype.createDonutChart = function createDonutChart (series) {\n var firstSeries = series[0];\n var donutChart = new DonutChart(this, {\n series: series,\n padding: firstSeries.padding,\n connectors: firstSeries.connectors,\n legend: this.options.legend\n });\n\n this.appendChart(donutChart);\n };\n\n // These were overriden in the Pie, so revert to original behavior\n DonutPlotArea.prototype.getPointBelow = function getPointBelow (point) {\n return this._getNextPoint(point, this._pointsByVertical, -1);\n };\n\n DonutPlotArea.prototype.getPointAbove = function getPointAbove (point) {\n return this._getNextPoint(point, this._pointsByVertical, 1);\n };\n\n return DonutPlotArea;\n}(PiePlotArea));\n\nexport default DonutPlotArea;","import PlotAreaBase from './plotarea-base';\nimport AxisGroupRangeTracker from '../axis-group-range-tracker';\nimport { RadarLogarithmicAxis, RadarNumericAxis } from '../../core';\n\nimport { LOGARITHMIC } from '../constants';\n\nimport { getSpacing } from '../../common';\nimport { Y, CENTER } from '../../common/constants';\n\nvar DEFAULT_PADDING = 0.15;\n\nvar PolarPlotAreaBase = (function (PlotAreaBase) {\n function PolarPlotAreaBase () {\n PlotAreaBase.apply(this, arguments);\n }\n\n if ( PlotAreaBase ) PolarPlotAreaBase.__proto__ = PlotAreaBase;\n PolarPlotAreaBase.prototype = Object.create( PlotAreaBase && PlotAreaBase.prototype );\n PolarPlotAreaBase.prototype.constructor = PolarPlotAreaBase;\n\n PolarPlotAreaBase.prototype.initFields = function initFields () {\n this.valueAxisRangeTracker = new AxisGroupRangeTracker();\n };\n\n PolarPlotAreaBase.prototype.render = function render () {\n this.addToLegend(this.series);\n this.createPolarAxis();\n this.createCharts();\n this.createValueAxis();\n };\n\n PolarPlotAreaBase.prototype.alignAxes = function alignAxes () {\n var axis = this.valueAxis;\n var range = axis.range();\n var crossingValue = axis.options.reverse ? range.max : range.min;\n var slot = axis.getSlot(crossingValue);\n var center = this.polarAxis.getSlot(0).center;\n var axisBox = axis.box.translate(\n center.x - slot.x1,\n center.y - slot.y1\n );\n\n axis.reflow(axisBox);\n };\n\n PolarPlotAreaBase.prototype.createValueAxis = function createValueAxis () {\n var tracker = this.valueAxisRangeTracker;\n var defaultRange = tracker.query();\n var axisOptions = this.valueAxisOptions({\n roundToMajorUnit: false,\n zIndex: -1\n });\n var axisType, axisDefaultRange;\n\n if (axisOptions.type === LOGARITHMIC) {\n axisType = RadarLogarithmicAxis;\n axisDefaultRange = { min: 0.1, max: 1 };\n } else {\n axisType = RadarNumericAxis;\n axisDefaultRange = { min: 0, max: 1 };\n }\n\n var range = tracker.query(name) || defaultRange || axisDefaultRange;\n\n if (range && defaultRange) {\n range.min = Math.min(range.min, defaultRange.min);\n range.max = Math.max(range.max, defaultRange.max);\n }\n\n var valueAxis = new axisType(\n range.min, range.max,\n axisOptions,\n this.chartService\n );\n\n this.valueAxis = valueAxis;\n this.appendAxis(valueAxis);\n };\n\n PolarPlotAreaBase.prototype.reflowAxes = function reflowAxes () {\n var ref = this;\n var options = ref.options.plotArea;\n var valueAxis = ref.valueAxis;\n var polarAxis = ref.polarAxis;\n var box = ref.box;\n var defaultPadding = Math.min(box.width(), box.height()) * DEFAULT_PADDING;\n var padding = getSpacing(options.padding || {}, defaultPadding);\n var paddingBox = box.clone().unpad(padding);\n var axisBox = paddingBox.clone();\n\n axisBox.y2 = axisBox.y1 + Math.min(axisBox.width(), axisBox.height());\n axisBox.align(paddingBox, Y, CENTER);\n\n var valueAxisBox = axisBox.clone().shrink(0, axisBox.height() / 2);\n\n polarAxis.reflow(axisBox);\n valueAxis.reflow(valueAxisBox);\n var heightDiff = valueAxis.lineBox().height() - valueAxis.box.height();\n valueAxis.reflow(valueAxis.box.unpad({ top: heightDiff }));\n\n this.axisBox = axisBox;\n this.alignAxes(axisBox);\n };\n\n PolarPlotAreaBase.prototype.backgroundBox = function backgroundBox () {\n return this.box;\n };\n\n PolarPlotAreaBase.prototype.detachLabels = function detachLabels () {};\n\n return PolarPlotAreaBase;\n}(PlotAreaBase));\n\nexport default PolarPlotAreaBase;\n","import ScatterChart from '../scatter-charts/scatter-chart';\n\nimport { Point, Box } from '../../core';\n\nimport { setDefaultOptions } from '../../common';\n\nvar PolarScatterChart = (function (ScatterChart) {\n function PolarScatterChart () {\n ScatterChart.apply(this, arguments);\n }\n\n if ( ScatterChart ) PolarScatterChart.__proto__ = ScatterChart;\n PolarScatterChart.prototype = Object.create( ScatterChart && ScatterChart.prototype );\n PolarScatterChart.prototype.constructor = PolarScatterChart;\n\n PolarScatterChart.prototype.pointSlot = function pointSlot (slotX, slotY) {\n var valueRadius = slotX.center.y - slotY.y1;\n var slot = Point.onCircle(slotX.center, slotX.startAngle, valueRadius);\n\n return new Box(slot.x, slot.y, slot.x, slot.y);\n };\n\n return PolarScatterChart;\n}(ScatterChart));\n\nsetDefaultOptions(PolarScatterChart, {\n clip: false\n});\n\nexport default PolarScatterChart;","import ScatterLineChart from '../scatter-charts/scatter-line-chart';\nimport PolarScatterChart from '../polar-scatter-chart/polar-scatter-chart';\n\nimport { setDefaultOptions } from '../../common';\n\nvar PolarLineChart = (function (ScatterLineChart) {\n function PolarLineChart () {\n ScatterLineChart.apply(this, arguments);\n }if ( ScatterLineChart ) PolarLineChart.__proto__ = ScatterLineChart;\n PolarLineChart.prototype = Object.create( ScatterLineChart && ScatterLineChart.prototype );\n PolarLineChart.prototype.constructor = PolarLineChart;\n\n \n\n return PolarLineChart;\n}(ScatterLineChart));\n\nPolarLineChart.prototype.pointSlot = PolarScatterChart.prototype.pointSlot;\n\nsetDefaultOptions(PolarLineChart, {\n clip: false\n});\n\nexport default PolarLineChart;","import SplineAreaSegment from '../area-chart/spline-area-segment';\nimport { CurveProcessor } from '../../core';\n\nvar SplinePolarAreaSegment = (function (SplineAreaSegment) {\n function SplinePolarAreaSegment () {\n SplineAreaSegment.apply(this, arguments);\n }\n\n if ( SplineAreaSegment ) SplinePolarAreaSegment.__proto__ = SplineAreaSegment;\n SplinePolarAreaSegment.prototype = Object.create( SplineAreaSegment && SplineAreaSegment.prototype );\n SplinePolarAreaSegment.prototype.constructor = SplinePolarAreaSegment;\n\n SplinePolarAreaSegment.prototype.fillToAxes = function fillToAxes (fillPath) {\n var center = this._polarAxisCenter();\n fillPath.lineTo(center.x, center.y);\n };\n\n SplinePolarAreaSegment.prototype._polarAxisCenter = function _polarAxisCenter () {\n var polarAxis = this.parent.plotArea.polarAxis;\n var center = polarAxis.box.center();\n return center;\n };\n\n SplinePolarAreaSegment.prototype.strokeSegments = function strokeSegments () {\n var segments = this._strokeSegments;\n\n if (!segments) {\n var center = this._polarAxisCenter();\n var curveProcessor = new CurveProcessor(false);\n var linePoints = this.points();\n\n linePoints.push(center);\n segments = this._strokeSegments = curveProcessor.process(linePoints);\n segments.pop();\n }\n\n return segments;\n };\n\n return SplinePolarAreaSegment;\n}(SplineAreaSegment));\n\nexport default SplinePolarAreaSegment;","import { geometry as geom } from '@progress/kendo-drawing';\nimport AreaSegment from '../area-chart/area-segment';\n\nvar PolarAreaSegment = (function (AreaSegment) {\n function PolarAreaSegment () {\n AreaSegment.apply(this, arguments);\n }\n\n if ( AreaSegment ) PolarAreaSegment.__proto__ = AreaSegment;\n PolarAreaSegment.prototype = Object.create( AreaSegment && AreaSegment.prototype );\n PolarAreaSegment.prototype.constructor = PolarAreaSegment;\n\n PolarAreaSegment.prototype.fillToAxes = function fillToAxes (fillPath) {\n var polarAxis = this.parent.plotArea.polarAxis;\n var center = polarAxis.box.center();\n var centerSegment = new geom.Segment([ center.x, center.y ]);\n\n fillPath.segments.unshift(centerSegment);\n fillPath.segments.push(centerSegment);\n };\n\n return PolarAreaSegment;\n}(AreaSegment));\n\nexport default PolarAreaSegment;","import PolarLineChart from '../polar-line-chart/polar-line-chart';\nimport SplinePolarAreaSegment from './spline-polar-area-segment';\nimport PolarAreaSegment from './polar-area-segment';\n\nimport { SMOOTH, INTERPOLATE, ZERO, GAP } from '../constants';\n\nimport hasValue from '../utils/has-value';\n\nvar PolarAreaChart = (function (PolarLineChart) {\n function PolarAreaChart () {\n PolarLineChart.apply(this, arguments);\n }\n\n if ( PolarLineChart ) PolarAreaChart.__proto__ = PolarLineChart;\n PolarAreaChart.prototype = Object.create( PolarLineChart && PolarLineChart.prototype );\n PolarAreaChart.prototype.constructor = PolarAreaChart;\n\n PolarAreaChart.prototype.createSegment = function createSegment (linePoints, currentSeries, seriesIx) {\n var style = (currentSeries.line || {}).style;\n var segment;\n\n if (style === SMOOTH) {\n segment = new SplinePolarAreaSegment(linePoints, currentSeries, seriesIx);\n } else {\n segment = new PolarAreaSegment(linePoints, currentSeries, seriesIx);\n }\n return segment;\n };\n\n PolarAreaChart.prototype.createMissingValue = function createMissingValue (value, missingValues) {\n var missingValue;\n\n if (hasValue(value.x) && missingValues !== INTERPOLATE) {\n missingValue = {\n x: value.x,\n y: value.y\n };\n if (missingValues === ZERO) {\n missingValue.y = 0;\n }\n }\n\n return missingValue;\n };\n\n PolarAreaChart.prototype.seriesMissingValues = function seriesMissingValues (series) {\n return series.missingValues || ZERO;\n };\n\n PolarAreaChart.prototype._hasMissingValuesGap = function _hasMissingValuesGap () {\n var this$1 = this;\n\n var series = this.options.series;\n\n for (var idx = 0; idx < series.length; idx++) {\n if (this$1.seriesMissingValues(series[idx]) === GAP) {\n return true;\n }\n }\n };\n\n PolarAreaChart.prototype.sortPoints = function sortPoints (points) {\n var this$1 = this;\n\n points.sort(xComparer);\n\n if (this._hasMissingValuesGap()) {\n for (var idx = 0; idx < points.length; idx++) {\n var point = points[idx];\n if (point) {\n var value = point.value;\n if (!hasValue(value.y) && this$1.seriesMissingValues(point.series) === GAP) {\n delete points[idx];\n }\n }\n }\n }\n\n return points;\n };\n\n return PolarAreaChart;\n}(PolarLineChart));\n\nfunction xComparer(a, b) {\n return a.value.x - b.value.x;\n}\n\nexport default PolarAreaChart;","import PolarPlotAreaBase from './polar-plotarea-base';\nimport PlotAreaBase from './plotarea-base';\nimport PolarLineChart from '../polar-line-chart/polar-line-chart';\nimport PolarScatterChart from '../polar-scatter-chart/polar-scatter-chart';\nimport PolarAreaChart from '../polar-area-chart/polar-area-chart';\nimport PlotAreaEventsMixin from '../mixins/plotarea-events-mixin';\n\nimport { PolarAxis, Point } from '../../core';\n\nimport { POLAR_AREA, POLAR_LINE, POLAR_SCATTER } from '../constants';\n\nimport filterSeriesByType from '../utils/filter-series-by-type';\n\nimport { ARC } from '../../common/constants';\nimport { deepExtend, eventElement, setDefaultOptions } from '../../common';\nimport XYPlotArea from './xy-plotarea';\n\nvar PolarPlotArea = (function (PolarPlotAreaBase) {\n function PolarPlotArea () {\n PolarPlotAreaBase.apply(this, arguments);\n }\n\n if ( PolarPlotAreaBase ) PolarPlotArea.__proto__ = PolarPlotAreaBase;\n PolarPlotArea.prototype = Object.create( PolarPlotAreaBase && PolarPlotAreaBase.prototype );\n PolarPlotArea.prototype.constructor = PolarPlotArea;\n\n PolarPlotArea.prototype.createPolarAxis = function createPolarAxis () {\n var polarAxis = new PolarAxis(this.options.xAxis, this.chartService);\n\n this.polarAxis = polarAxis;\n this.axisX = polarAxis;\n this.appendAxis(polarAxis);\n };\n\n PolarPlotArea.prototype.render = function render () {\n this.series = [].concat( this.originalSeries );\n this.createTrendlineSeries();\n\n PolarPlotAreaBase.prototype.render.call(this);\n };\n\n PolarPlotArea.prototype.valueAxisOptions = function valueAxisOptions (defaults) {\n return deepExtend(defaults, {\n majorGridLines: { type: ARC },\n minorGridLines: { type: ARC }\n }, this.options.yAxis);\n };\n\n PolarPlotArea.prototype.createValueAxis = function createValueAxis () {\n PolarPlotAreaBase.prototype.createValueAxis.call(this);\n this.axisY = this.valueAxis;\n };\n\n PolarPlotArea.prototype.trendlineFactory = function trendlineFactory (options, series) {\n var trendline = XYPlotArea.prototype.trendlineFactory.call(this, options, series);\n if (trendline) {\n trendline.type = POLAR_LINE;\n }\n\n return trendline;\n };\n\n PolarPlotArea.prototype.appendChart = function appendChart (chart, pane) {\n this.valueAxisRangeTracker.update(chart.yAxisRanges);\n\n PlotAreaBase.prototype.appendChart.call(this, chart, pane);\n };\n\n PolarPlotArea.prototype.createCharts = function createCharts () {\n var series = this.filterVisibleSeries(this.series);\n var pane = this.panes[0];\n\n this.createLineChart(\n filterSeriesByType(series, [ POLAR_LINE ]),\n pane\n );\n\n this.createScatterChart(\n filterSeriesByType(series, [ POLAR_SCATTER ]),\n pane\n );\n\n this.createAreaChart(\n filterSeriesByType(series, [ POLAR_AREA ]),\n pane\n );\n };\n\n PolarPlotArea.prototype.createLineChart = function createLineChart (series, pane) {\n if (series.length === 0) {\n return;\n }\n\n var lineChart = new PolarLineChart(this, { series: series });\n\n this.appendChart(lineChart, pane);\n };\n\n PolarPlotArea.prototype.createScatterChart = function createScatterChart (series, pane) {\n if (series.length === 0) {\n return;\n }\n\n var scatterChart = new PolarScatterChart(this, { series: series });\n\n this.appendChart(scatterChart, pane);\n };\n\n PolarPlotArea.prototype.createAreaChart = function createAreaChart (series, pane) {\n if (series.length === 0) {\n return;\n }\n\n var areaChart = new PolarAreaChart(this, { series: series });\n\n this.appendChart(areaChart, pane);\n };\n\n PolarPlotArea.prototype._dispatchEvent = function _dispatchEvent (chart, e, eventType) {\n var coords = chart._eventCoordinates(e);\n var point = new Point(coords.x, coords.y);\n var xValue = this.axisX.getValue(point);\n var yValue = this.axisY.getValue(point);\n\n if (xValue !== null && yValue !== null) {\n chart.trigger(eventType, {\n element: eventElement(e),\n x: xValue,\n y: yValue\n });\n }\n };\n\n PolarPlotArea.prototype.createCrosshairs = function createCrosshairs () {};\n\n return PolarPlotArea;\n}(PolarPlotAreaBase));\n\nsetDefaultOptions(PolarPlotArea, {\n xAxis: {},\n yAxis: {}\n});\n\ndeepExtend(PolarPlotArea.prototype, PlotAreaEventsMixin, {\n seriesValues: XYPlotArea.prototype.seriesValues\n});\n\nexport default PolarPlotArea;\n","import LineChart from '../line-chart/line-chart';\nimport SplineSegment from '../line-chart/spline-segment';\nimport LineSegment from '../line-chart/line-segment';\n\nimport { Point, Box } from '../../core';\n\nimport { SMOOTH, INTERPOLATE } from '../constants';\n\nimport { setDefaultOptions, last } from '../../common';\n\nfunction groupBySeriesIx(segments) {\n var seriesSegments = [];\n for (var idx = 0; idx < segments.length; idx++) {\n var segment = segments[idx];\n seriesSegments[segment.seriesIx] = seriesSegments[segment.seriesIx] || [];\n seriesSegments[segment.seriesIx].push(segment);\n }\n\n return seriesSegments;\n}\n\nvar RadarLineChart = (function (LineChart) {\n function RadarLineChart () {\n LineChart.apply(this, arguments);\n }\n\n if ( LineChart ) RadarLineChart.__proto__ = LineChart;\n RadarLineChart.prototype = Object.create( LineChart && LineChart.prototype );\n RadarLineChart.prototype.constructor = RadarLineChart;\n\n RadarLineChart.prototype.pointSlot = function pointSlot (categorySlot, valueSlot) {\n var valueRadius = categorySlot.center.y - valueSlot.y1;\n var slot = Point.onCircle(categorySlot.center, categorySlot.middle(), valueRadius);\n\n return new Box(slot.x, slot.y, slot.x, slot.y);\n };\n\n RadarLineChart.prototype.renderSegments = function renderSegments () {\n LineChart.prototype.renderSegments.call(this);\n\n if (this._segments && this._segments.length > 1) {\n var seriesSegments = groupBySeriesIx(this._segments);\n\n for (var idx = 0; idx < seriesSegments.length; idx++) {\n var segments = seriesSegments[idx];\n if (segments && segments.length > 1) {\n var firstPoint = segments[0].linePoints[0];\n var lastSegment = last(segments);\n var lastPoint = last(lastSegment.linePoints);\n var isFirstDataPoint = firstPoint.categoryIx === 0;\n var isLastDataPoint = lastPoint.categoryIx === lastPoint.categoriesCount - 1;\n if (isFirstDataPoint && isLastDataPoint) {\n last(segments).linePoints.push(firstPoint);\n }\n }\n }\n }\n };\n\n RadarLineChart.prototype.createSegment = function createSegment (linePoints, currentSeries, seriesIx) {\n var style = currentSeries.style;\n var pointType;\n\n if (style === SMOOTH) {\n pointType = SplineSegment;\n } else {\n pointType = LineSegment;\n }\n\n var segment = new pointType(linePoints, currentSeries, seriesIx);\n var missingValues = this.seriesMissingValues(currentSeries);\n\n if (linePoints.length === currentSeries.data.length || missingValues === INTERPOLATE) {\n segment.options.closed = true;\n }\n\n return segment;\n };\n\n return RadarLineChart;\n}(LineChart));\n\nsetDefaultOptions(RadarLineChart, {\n clip: false,\n limitPoints: false\n});\n\nexport default RadarLineChart;\n","import SplineAreaSegment from '../area-chart/spline-area-segment';\n\nvar SplineRadarAreaSegment = (function (SplineAreaSegment) {\n function SplineRadarAreaSegment () {\n SplineAreaSegment.apply(this, arguments);\n }\n\n if ( SplineAreaSegment ) SplineRadarAreaSegment.__proto__ = SplineAreaSegment;\n SplineRadarAreaSegment.prototype = Object.create( SplineAreaSegment && SplineAreaSegment.prototype );\n SplineRadarAreaSegment.prototype.constructor = SplineRadarAreaSegment;\n\n SplineRadarAreaSegment.prototype.fillToAxes = function fillToAxes () {};\n\n return SplineRadarAreaSegment;\n}(SplineAreaSegment));\n\nexport default SplineRadarAreaSegment;","import AreaSegment from '../area-chart/area-segment';\n\nvar RadarAreaSegment = (function (AreaSegment) {\n function RadarAreaSegment () {\n AreaSegment.apply(this, arguments);\n }\n\n if ( AreaSegment ) RadarAreaSegment.__proto__ = AreaSegment;\n RadarAreaSegment.prototype = Object.create( AreaSegment && AreaSegment.prototype );\n RadarAreaSegment.prototype.constructor = RadarAreaSegment;\n\n RadarAreaSegment.prototype.fillToAxes = function fillToAxes () {};\n\n return RadarAreaSegment;\n}(AreaSegment));\n\nexport default RadarAreaSegment;","import RadarLineChart from '../radar-line-chart/radar-line-chart';\nimport SplineRadarAreaSegment from './spline-radar-area-segment';\nimport RadarAreaSegment from './radar-area-segment';\n\nimport { SMOOTH, ZERO } from '../constants';\n\nvar RadarAreaChart = (function (RadarLineChart) {\n function RadarAreaChart () {\n RadarLineChart.apply(this, arguments);\n }\n\n if ( RadarLineChart ) RadarAreaChart.__proto__ = RadarLineChart;\n RadarAreaChart.prototype = Object.create( RadarLineChart && RadarLineChart.prototype );\n RadarAreaChart.prototype.constructor = RadarAreaChart;\n\n RadarAreaChart.prototype.createSegment = function createSegment (linePoints, currentSeries, seriesIx, prevSegment) {\n var isStacked = this.options.isStacked;\n var style = (currentSeries.line || {}).style;\n var previousSegment;\n var stackPoints;\n var segment;\n\n if (isStacked && seriesIx > 0 && prevSegment) {\n stackPoints = prevSegment.linePoints.slice(0);\n previousSegment = prevSegment;\n }\n\n if (style === SMOOTH) {\n segment = new SplineRadarAreaSegment(linePoints, currentSeries, seriesIx, previousSegment, stackPoints);\n segment.options.closed = true;\n } else {\n linePoints.push(linePoints[0]);\n segment = new RadarAreaSegment(linePoints, currentSeries, seriesIx, previousSegment, stackPoints);\n }\n\n return segment;\n };\n\n RadarAreaChart.prototype.seriesMissingValues = function seriesMissingValues (series) {\n return series.missingValues || ZERO;\n };\n\n return RadarAreaChart;\n}(RadarLineChart));\n\nexport default RadarAreaChart;","import DonutSegment from '../donut-chart/donut-segment';\n\nimport { setDefaultOptions } from '../../common';\n\nvar RadarSegment = (function (DonutSegment) {\n function RadarSegment(value, options) {\n DonutSegment.call(this, value, null, options);\n }\n\n if ( DonutSegment ) RadarSegment.__proto__ = DonutSegment;\n RadarSegment.prototype = Object.create( DonutSegment && DonutSegment.prototype );\n RadarSegment.prototype.constructor = RadarSegment;\n\n RadarSegment.prototype.getIndex = function getIndex () {\n return this.categoryIx;\n };\n\n return RadarSegment;\n}(DonutSegment));\n\nsetDefaultOptions(RadarSegment, {\n overlay: {\n gradient: \"none\"\n },\n labels: {\n distance: 10\n }\n});\n\nexport default RadarSegment;","import { ChartElement } from '../../core';\n\nimport { setDefaultOptions } from '../../common';\n\nimport { forEach, forEachReverse } from './utils';\n\nvar RadarClusterLayout = (function (ChartElement) {\n function RadarClusterLayout(options) {\n ChartElement.call(this, options);\n\n this.forEach = options.rtl ? forEachReverse : forEach;\n }\n\n if ( ChartElement ) RadarClusterLayout.__proto__ = ChartElement;\n RadarClusterLayout.prototype = Object.create( ChartElement && ChartElement.prototype );\n RadarClusterLayout.prototype.constructor = RadarClusterLayout;\n\n RadarClusterLayout.prototype.reflow = function reflow (sector) {\n var ref = this;\n var options = ref.options;\n var children = ref.children;\n var gap = options.gap;\n var spacing = options.spacing;\n var count = children.length;\n var slots = count + gap + (spacing * (count - 1));\n var slotAngle = sector.angle / slots;\n var angle = sector.startAngle + slotAngle * (gap / 2);\n\n this.forEach(children, function (child) {\n var slotSector = sector.clone();\n slotSector.startAngle = angle;\n slotSector.angle = slotAngle;\n\n if (child.sector) {\n slotSector.radius = child.sector.radius;\n }\n\n child.reflow(slotSector);\n child.sector = slotSector;\n\n angle += slotAngle + (slotAngle * spacing);\n });\n };\n\n return RadarClusterLayout;\n}(ChartElement));\n\nsetDefaultOptions(RadarClusterLayout, {\n gap: 1,\n spacing: 0\n});\n\nexport default RadarClusterLayout;","import { ChartElement, Box } from '../../core';\n\nvar RadarStackLayout = (function (ChartElement) {\n function RadarStackLayout () {\n ChartElement.apply(this, arguments);\n }\n\n if ( ChartElement ) RadarStackLayout.__proto__ = ChartElement;\n RadarStackLayout.prototype = Object.create( ChartElement && ChartElement.prototype );\n RadarStackLayout.prototype.constructor = RadarStackLayout;\n\n RadarStackLayout.prototype.reflow = function reflow (sector) {\n var ref = this;\n var reverse = ref.options.reverse;\n var children = ref.children;\n var childrenCount = children.length;\n var first = reverse ? childrenCount - 1 : 0;\n var step = reverse ? -1 : 1;\n\n this.box = new Box();\n\n for (var i = first; i >= 0 && i < childrenCount; i += step) {\n var childSector = children[i].sector;\n childSector.startAngle = sector.startAngle;\n childSector.angle = sector.angle;\n }\n };\n\n return RadarStackLayout;\n}(ChartElement));\n\nexport default RadarStackLayout;","import BarChart from '../bar-chart/bar-chart';\nimport RadarSegment from './radar-segment';\nimport RadarClusterLayout from '../layout/radar-cluster-layout';\nimport RadarStackLayout from '../layout/radar-stack-layout';\nimport CategoricalChart from '../categorical-chart';\n\nimport { setDefaultOptions } from '../../common';\n\nvar RadarBarChart = (function (BarChart) {\n function RadarBarChart () {\n BarChart.apply(this, arguments);\n }\n\n if ( BarChart ) RadarBarChart.__proto__ = BarChart;\n RadarBarChart.prototype = Object.create( BarChart && BarChart.prototype );\n RadarBarChart.prototype.constructor = RadarBarChart;\n\n RadarBarChart.prototype.pointType = function pointType () {\n return RadarSegment;\n };\n\n RadarBarChart.prototype.clusterType = function clusterType () {\n return RadarClusterLayout;\n };\n\n RadarBarChart.prototype.stackType = function stackType () {\n return RadarStackLayout;\n };\n\n RadarBarChart.prototype.categorySlot = function categorySlot (categoryAxis, categoryIx) {\n return categoryAxis.getSlot(categoryIx);\n };\n\n RadarBarChart.prototype.pointSlot = function pointSlot (categorySlot, valueSlot) {\n var slot = categorySlot.clone();\n var y = categorySlot.center.y;\n\n slot.radius = y - valueSlot.y1;\n slot.innerRadius = y - valueSlot.y2;\n\n return slot;\n };\n\n RadarBarChart.prototype.reflowPoint = function reflowPoint (point, pointSlot) {\n point.sector = pointSlot;\n point.reflow();\n };\n\n RadarBarChart.prototype.createAnimation = function createAnimation () {\n this.options.animation.center = this.box.toRect().center();\n BarChart.prototype.createAnimation.call(this);\n };\n\n return RadarBarChart;\n}(BarChart));\n\nRadarBarChart.prototype.reflow = CategoricalChart.prototype.reflow;\n\nsetDefaultOptions(RadarBarChart, {\n clip: false,\n limitPoints: false,\n animation: {\n type: \"pie\"\n }\n});\n\nexport default RadarBarChart;","import PolarPlotAreaBase from './polar-plotarea-base';\nimport CategoricalPlotArea from './categorical-plotarea';\nimport RadarAreaChart from '../radar-area-chart/radar-area-chart';\nimport RadarLineChart from '../radar-line-chart/radar-line-chart';\nimport RadarBarChart from '../radar-bar-chart/radar-bar-chart';\nimport PlotAreaEventsMixin from '../mixins/plotarea-events-mixin';\n\nimport { RadarCategoryAxis, Point } from '../../core';\n\nimport { RADAR_AREA, RADAR_LINE, RADAR_COLUMN } from '../constants';\n\nimport filterSeriesByType from '../utils/filter-series-by-type';\n\nimport { ARC } from '../../common/constants';\nimport { eventElement, deepExtend, setDefaultOptions } from '../../common';\n\nvar RadarPlotArea = (function (PolarPlotAreaBase) {\n function RadarPlotArea () {\n PolarPlotAreaBase.apply(this, arguments);\n }\n\n if ( PolarPlotAreaBase ) RadarPlotArea.__proto__ = PolarPlotAreaBase;\n RadarPlotArea.prototype = Object.create( PolarPlotAreaBase && PolarPlotAreaBase.prototype );\n RadarPlotArea.prototype.constructor = RadarPlotArea;\n\n RadarPlotArea.prototype.createPolarAxis = function createPolarAxis () {\n var categoryAxis = new RadarCategoryAxis(this.options.categoryAxis, this.chartService);\n\n this.polarAxis = categoryAxis;\n this.categoryAxis = categoryAxis;\n this.appendAxis(categoryAxis);\n this.aggregateCategories();\n this.createTrendlineSeries();\n this.createCategoryAxesLabels();\n };\n\n RadarPlotArea.prototype.valueAxisOptions = function valueAxisOptions (defaults) {\n if (this._hasBarCharts) {\n deepExtend(defaults, {\n majorGridLines: { type: ARC },\n minorGridLines: { type: ARC }\n });\n }\n\n if (this._isStacked100) {\n deepExtend(defaults, {\n roundToMajorUnit: false,\n labels: { format: \"P0\" }\n });\n }\n\n return deepExtend(defaults, this.options.valueAxis);\n };\n\n RadarPlotArea.prototype.aggregateCategories = function aggregateCategories () {\n // No separate panes in radar charts\n CategoricalPlotArea.prototype.aggregateCategories.call(this, this.panes);\n };\n\n RadarPlotArea.prototype.createCategoryAxesLabels = function createCategoryAxesLabels () {\n CategoricalPlotArea.prototype.createCategoryAxesLabels.call(this, this.panes);\n };\n\n RadarPlotArea.prototype.filterSeries = function filterSeries (currentSeries) {\n // Not supported for radar charts\n return currentSeries;\n };\n\n RadarPlotArea.prototype.trendlineFactory = function trendlineFactory (options, series) {\n var trendline = CategoricalPlotArea.prototype.trendlineFactory.call(this, options, series);\n if (trendline) {\n trendline.type = RADAR_LINE;\n }\n\n return trendline;\n };\n\n RadarPlotArea.prototype.createCharts = function createCharts () {\n var series = this.filterVisibleSeries(this.series);\n var pane = this.panes[0];\n\n this.createAreaChart(\n filterSeriesByType(series, [ RADAR_AREA ]),\n pane\n );\n\n this.createLineChart(\n filterSeriesByType(series, [ RADAR_LINE ]),\n pane\n );\n\n this.createBarChart(\n filterSeriesByType(series, [ RADAR_COLUMN ]),\n pane\n );\n };\n\n RadarPlotArea.prototype.chartOptions = function chartOptions (series) {\n var options = { series: series };\n var firstSeries = series[0];\n if (firstSeries) {\n var filteredSeries = this.filterVisibleSeries(series);\n var stack = firstSeries.stack;\n options.isStacked = stack && filteredSeries.length > 1;\n options.isStacked100 = stack && stack.type === \"100%\" && filteredSeries.length > 1;\n\n if (options.isStacked100) {\n this._isStacked100 = true;\n }\n }\n\n return options;\n };\n\n RadarPlotArea.prototype.createAreaChart = function createAreaChart (series, pane) {\n if (series.length === 0) {\n return;\n }\n\n var areaChart = new RadarAreaChart(this, this.chartOptions(series));\n this.appendChart(areaChart, pane);\n };\n\n RadarPlotArea.prototype.createLineChart = function createLineChart (series, pane) {\n if (series.length === 0) {\n return;\n }\n\n var lineChart = new RadarLineChart(this, this.chartOptions(series));\n this.appendChart(lineChart, pane);\n };\n\n RadarPlotArea.prototype.createBarChart = function createBarChart (series, pane) {\n if (series.length === 0) {\n return;\n }\n\n var firstSeries = series[0];\n var options = this.chartOptions(series);\n var filteredSeries = this.filterVisibleSeries(series);\n var anyStackedSeries = filteredSeries.some(function (s) { return s.stack; });\n var isStacked100 = filteredSeries.some(function (s) { return s.stack && s.stack.type === \"100%\"; });\n options.gap = firstSeries.gap;\n options.spacing = firstSeries.spacing;\n options.defaultStack = firstSeries.stack && filteredSeries.length > 1;\n options.isStacked = anyStackedSeries && filteredSeries.length > 1;\n options.isStacked100 = isStacked100 && filteredSeries.length > 1;\n\n var barChart = new RadarBarChart(this, options);\n this.appendChart(barChart, pane);\n\n this._hasBarCharts = true;\n };\n\n RadarPlotArea.prototype.seriesCategoryAxis = function seriesCategoryAxis () {\n return this.categoryAxis;\n };\n\n RadarPlotArea.prototype._dispatchEvent = function _dispatchEvent (chart, e, eventType) {\n var coords = chart._eventCoordinates(e);\n var point = new Point(coords.x, coords.y);\n var category = this.categoryAxis.getCategory(point);\n var value = this.valueAxis.getValue(point);\n\n if (category !== null && value !== null) {\n chart.trigger(eventType, {\n element: eventElement(e),\n category: category,\n value: value\n });\n }\n };\n\n RadarPlotArea.prototype.createCrosshairs = function createCrosshairs () {};\n\n RadarPlotArea.prototype._pointsByVertical = function _pointsByVertical (basePoint) {\n return PolarPlotAreaBase.prototype._pointsByVertical.call(this, basePoint).sort(this._getSeriesCompareFn());\n };\n\n RadarPlotArea.prototype._getSeriesCompareFn = function _getSeriesCompareFn () {\n return function (a, b) { return b.value - a.value; };\n };\n\n return RadarPlotArea;\n}(PolarPlotAreaBase));\n\ndeepExtend(RadarPlotArea.prototype, PlotAreaEventsMixin, {\n appendChart: CategoricalPlotArea.prototype.appendChart,\n aggregateSeries: CategoricalPlotArea.prototype.aggregateSeries,\n seriesSourcePoints: CategoricalPlotArea.prototype.seriesSourcePoints,\n seriesValues: CategoricalPlotArea.prototype.seriesValues\n});\n\nsetDefaultOptions(RadarPlotArea, {\n categoryAxis: {\n categories: []\n },\n valueAxis: {}\n});\n\nexport default RadarPlotArea;\n","import { drawing as draw } from '@progress/kendo-drawing';\n\nimport { ChartElement, Box, Point } from '../../core';\nimport PointEventsMixin from '../mixins/point-events-mixin';\n\nimport { WHITE } from '../../common/constants';\nimport { deepExtend, setDefaultOptions, getTemplate } from '../../common';\nimport AccessibilityAttributesMixin from '../mixins/accessibility-attributes-mixin';\nimport { CHART_POINT_CLASSNAME, CHART_POINT_ROLE, CHART_POINT_ROLE_DESCRIPTION } from '../constants';\n\nvar FunnelSegment = (function (ChartElement) {\n function FunnelSegment(value, options, segmentOptions) {\n ChartElement.call(this, options);\n\n this.value = value;\n this.options.index = segmentOptions.index;\n }\n\n if ( ChartElement ) FunnelSegment.__proto__ = ChartElement;\n FunnelSegment.prototype = Object.create( ChartElement && ChartElement.prototype );\n FunnelSegment.prototype.constructor = FunnelSegment;\n\n FunnelSegment.prototype.getLabelText = function getLabelText (options) {\n var labelTemplate = getTemplate(options);\n\n if (labelTemplate) {\n return labelTemplate(this.pointData());\n } else if (options.format) {\n return this.formatValue(options.format);\n }\n\n return this.value;\n };\n\n FunnelSegment.prototype.reflow = function reflow (chartBox) {\n var points = this.points;\n var label = this.children[0];\n var x1 = Math.min(points[0].x, points[3].x);\n var x2 = Math.max(points[1].x, points[2].x);\n\n this.box = new Box(x1, points[0].y, x2, points[2].y);\n\n if (label) {\n label.reflow(new Box(chartBox.x1, points[0].y, chartBox.x2, points[2].y));\n }\n };\n\n FunnelSegment.prototype.createVisual = function createVisual () {\n var this$1 = this;\n\n var options = this.options;\n var visual;\n\n ChartElement.prototype.createVisual.call(this);\n\n this.addAccessibilityAttributesToVisual();\n\n if (options.visual) {\n visual = options.visual({\n category: this.category,\n dataItem: this.dataItem,\n value: this.value,\n series: this.series,\n percentage: this.percentage,\n points: this.points,\n options: options,\n sender: this.getSender(),\n createVisual: function () { return this$1.createPath(); }\n });\n } else {\n visual = this.createPath();\n }\n\n if (visual) {\n this.visual.append(visual);\n }\n };\n\n FunnelSegment.prototype.createPath = function createPath () {\n var options = this.options;\n var border = options.border;\n var path = draw.Path.fromPoints(this.points, {\n fill: {\n color: options.color,\n opacity: options.opacity\n },\n stroke: {\n color: border.color,\n opacity: border.opacity,\n width: border.width\n }\n }).close();\n\n return path;\n };\n\n FunnelSegment.prototype.createHighlight = function createHighlight (style) {\n return draw.Path.fromPoints(this.points, style);\n };\n\n FunnelSegment.prototype.highlightVisual = function highlightVisual () {\n return this.visual.children[0];\n };\n\n FunnelSegment.prototype.highlightVisualArgs = function highlightVisualArgs () {\n var path = draw.Path.fromPoints(this.points).close();\n\n return {\n options: this.options,\n path: path\n };\n };\n\n FunnelSegment.prototype.createFocusHighlight = function createFocusHighlight (style) {\n var borderWidth = this.options.accessibility.highlight.border.width;\n var result = draw.Path.fromPoints(this.points, deepExtend({}, style, {\n stroke: {\n width: borderWidth * 2\n }\n })).close();\n\n var clipPath = new draw.MultiPath();\n\n clipPath.paths.push(draw.Path.fromRect(this.box.clone().pad(borderWidth).toRect()));\n clipPath.paths.push(draw.Path.fromPoints(this.points));\n\n result.clip(clipPath);\n\n return result;\n };\n\n FunnelSegment.prototype.tooltipAnchor = function tooltipAnchor () {\n var box = this.box;\n return {\n point: new Point(box.center().x, box.y1),\n align: {\n horizontal: \"center\",\n vertical: \"top\"\n }\n };\n };\n\n FunnelSegment.prototype.formatValue = function formatValue (format) {\n var point = this;\n return point.owner.formatPointValue(point, format);\n };\n\n FunnelSegment.prototype.pointData = function pointData () {\n return {\n dataItem: this.dataItem,\n category: this.category,\n value: this.value,\n series: this.series,\n percentage: this.percentage\n };\n };\n\n FunnelSegment.prototype.getIndex = function getIndex () {\n return this.index;\n };\n\n return FunnelSegment;\n}(ChartElement));\n\nsetDefaultOptions(FunnelSegment, {\n color: WHITE,\n border: {\n width: 1\n },\n labels: {\n format: \"\"\n },\n accessibility: {\n role: CHART_POINT_ROLE,\n className: CHART_POINT_CLASSNAME,\n ariaRoleDescription: CHART_POINT_ROLE_DESCRIPTION\n }\n});\n\ndeepExtend(FunnelSegment.prototype, PointEventsMixin);\ndeepExtend(FunnelSegment.prototype, AccessibilityAttributesMixin);\n\nexport default FunnelSegment;","import { geometry as geom } from '@progress/kendo-drawing';\n\nimport { ChartElement, TextBox } from '../../core';\nimport PieChartMixin from '../mixins/pie-chart-mixin';\nimport FunnelSegment from './funnel-segment';\n\nimport { bindSegments, evalOptions } from '../utils';\n\nimport { CENTER, LEFT } from '../../common/constants';\nimport { autoTextColor, deepExtend, isFunction, getTemplate, limitValue, setDefaultOptions } from '../../common';\n\nvar FunnelChart = (function (ChartElement) {\n function FunnelChart(plotArea, options) {\n ChartElement.call(this, options);\n\n this.plotArea = plotArea;\n this.chartService = plotArea.chartService;\n this.points = [];\n this.labels = [];\n this.legendItems = [];\n this.render();\n }\n\n if ( ChartElement ) FunnelChart.__proto__ = ChartElement;\n FunnelChart.prototype = Object.create( ChartElement && ChartElement.prototype );\n FunnelChart.prototype.constructor = FunnelChart;\n\n FunnelChart.prototype.formatPointValue = function formatPointValue (point, format) {\n return this.plotArea.chartService.format.auto(format,point.value);\n };\n\n FunnelChart.prototype.render = function render () {\n var this$1 = this;\n\n var seriesIx = 0;\n var ref = this;\n var options = ref.options;\n var seriesColors = ref.plotArea.options.seriesColors; if ( seriesColors === void 0 ) seriesColors = [];\n var series = options.series[seriesIx];\n var data = series.data;\n\n if (!data) {\n return;\n }\n\n var ref$1 = bindSegments(series);\n var total = ref$1.total;\n var points = ref$1.points;\n\n for (var i = 0; i < points.length; i++) {\n var pointData = points[i];\n\n if (!pointData) {\n continue;\n }\n\n var fields = pointData.fields;\n\n if (!isFunction(series.color)) {\n series.color = fields.color || seriesColors[i % seriesColors.length];\n }\n\n fields = deepExtend({\n index: i,\n owner: this$1,\n series: series,\n seriesIx: seriesIx,\n dataItem: data[i],\n percentage: pointData.value / total\n }, fields, { visible: pointData.visible });\n\n var value = pointData.valueFields.value;\n var segment = this$1.createSegment(value, fields);\n var label = this$1.createLabel(value, fields);\n\n if (segment && label) {\n segment.append(label);\n }\n }\n };\n\n FunnelChart.prototype.evalSegmentOptions = function evalSegmentOptions (options, value, fields) {\n var series = fields.series;\n\n evalOptions(options, {\n value: value,\n series: series,\n dataItem: fields.dataItem,\n index: fields.index\n }, { defaults: series._defaults, excluded: [\n \"data\", \"content\", \"template\", \"toggle\", \"visual\",\n \"ariaTemplate\", \"ariaContent\"\n ] });\n };\n\n FunnelChart.prototype.createSegment = function createSegment (value, fields) {\n var seriesOptions = deepExtend({}, fields.series);\n this.evalSegmentOptions(seriesOptions, value, fields);\n\n this.createLegendItem(value, seriesOptions, fields);\n\n if (fields.visible !== false) {\n\n var segment = new FunnelSegment(value, seriesOptions, fields);\n Object.assign(segment, fields);\n\n this.append(segment);\n this.points.push(segment);\n\n return segment;\n }\n };\n\n FunnelChart.prototype.createLabel = function createLabel (value, fields) {\n var series = fields.series;\n var dataItem = fields.dataItem;\n var labels = deepExtend({}, this.options.labels, series.labels);\n var text = value;\n\n if (labels.visible) {\n var labelTemplate = getTemplate(labels);\n var data = {\n dataItem: dataItem,\n value: value,\n percentage: fields.percentage,\n category: fields.category,\n series: series\n };\n if (labelTemplate) {\n text = labelTemplate(data);\n } else if (labels.format) {\n text = this.chartService.format.auto(labels.format, text);\n }\n\n if (!labels.color) {\n labels.color = autoTextColor(series.color);\n if (!labels.background) {\n labels.background = series.color;\n }\n }\n\n this.evalSegmentOptions(labels, value, fields);\n var textBox = new TextBox(text, deepExtend({\n vAlign: labels.position\n }, labels), data);\n\n this.labels.push(textBox);\n\n return textBox;\n }\n };\n\n FunnelChart.prototype.labelPadding = function labelPadding () {\n var labels = this.labels;\n var padding = { left: 0, right: 0 };\n\n for (var i = 0; i < labels.length; i++) {\n var label = labels[i];\n var align = label.options.align;\n if (align !== CENTER) {\n var width = labels[i].box.width();\n\n if (align === LEFT) {\n padding.left = Math.max(padding.left, width);\n } else {\n padding.right = Math.max(padding.right, width);\n }\n }\n }\n\n return padding;\n };\n\n FunnelChart.prototype.dynamicSlopeReflow = function dynamicSlopeReflow (box, width, totalHeight) {\n var ref = this;\n var options = ref.options;\n var segments = ref.points;\n var count = segments.length;\n var firstSegment = segments[0];\n var maxSegment = firstSegment;\n\n for (var idx = 0; idx < segments.length; idx++) {\n if (segments[idx].percentage > maxSegment.percentage) {\n maxSegment = segments[idx];\n }\n }\n\n var lastUpperSide = (firstSegment.percentage / maxSegment.percentage) * width;\n var previousOffset = (width - lastUpperSide) / 2;\n var previousHeight = 0;\n\n for (var idx$1 = 0; idx$1 < count; idx$1++) {\n var percentage = segments[idx$1].percentage;\n var nextSegment = segments[idx$1 + 1];\n var nextPercentage = (nextSegment ? nextSegment.percentage : percentage);\n var points = segments[idx$1].points = [];\n var height = (options.dynamicHeight) ? (totalHeight * percentage) : (totalHeight / count);\n var offset = (void 0);\n\n if (!percentage) {\n offset = nextPercentage ? 0 : width / 2;\n } else {\n offset = (width - lastUpperSide * (nextPercentage / percentage)) / 2;\n }\n\n offset = limitValue(offset, 0, width);\n\n points.push(new geom.Point(box.x1 + previousOffset, box.y1 + previousHeight));\n points.push(new geom.Point(box.x1 + width - previousOffset, box.y1 + previousHeight));\n points.push(new geom.Point(box.x1 + width - offset, box.y1 + height + previousHeight));\n points.push(new geom.Point(box.x1 + offset, box.y1 + height + previousHeight));\n\n previousOffset = offset;\n previousHeight += height + options.segmentSpacing;\n lastUpperSide = limitValue(width - 2 * offset, 0, width);\n }\n };\n\n FunnelChart.prototype.constantSlopeReflow = function constantSlopeReflow (box, width, totalHeight) {\n var ref = this;\n var options = ref.options;\n var segments = ref.points;\n var count = segments.length;\n var decreasingWidth = options.neckRatio <= 1;\n var neckRatio = decreasingWidth ? options.neckRatio * width : width;\n var previousOffset = decreasingWidth ? 0 : (width - width / options.neckRatio) / 2;\n var topMostWidth = decreasingWidth ? width : width - previousOffset * 2;\n var finalNarrow = (topMostWidth - neckRatio) / 2;\n var previousHeight = 0;\n\n for (var idx = 0; idx < count; idx++) {\n var points = segments[idx].points = [];\n var percentage = segments[idx].percentage;\n var offset = (options.dynamicHeight) ? (finalNarrow * percentage) : (finalNarrow / count);\n var height = (options.dynamicHeight) ? (totalHeight * percentage) : (totalHeight / count);\n\n points.push(new geom.Point(box.x1 + previousOffset, box.y1 + previousHeight));\n points.push(new geom.Point(box.x1 + width - previousOffset, box.y1 + previousHeight));\n points.push(new geom.Point(box.x1 + width - previousOffset - offset, box.y1 + height + previousHeight));\n points.push(new geom.Point(box.x1 + previousOffset + offset,box.y1 + height + previousHeight));\n previousOffset += offset;\n previousHeight += height + options.segmentSpacing;\n }\n };\n\n FunnelChart.prototype.reflow = function reflow (chartBox) {\n var points = this.points;\n var count = points.length;\n\n if (!count) {\n return;\n }\n\n var options = this.options;\n var box = chartBox.clone().unpad(this.labelPadding());\n var totalHeight = box.height() - options.segmentSpacing * (count - 1);\n var width = box.width();\n\n if (options.dynamicSlope) {\n this.dynamicSlopeReflow(box, width, totalHeight);\n } else {\n this.constantSlopeReflow(box, width, totalHeight);\n }\n\n for (var idx = 0; idx < count; idx++) {\n points[idx].reflow(chartBox);\n }\n };\n\n return FunnelChart;\n}(ChartElement));\n\nsetDefaultOptions(FunnelChart, {\n neckRatio: 0.3,\n width: 300,\n dynamicSlope: false,\n dynamicHeight: true,\n segmentSpacing: 0,\n labels: {\n visible: false,\n align: CENTER,\n position: CENTER,\n zIndex: 1\n }\n});\n\ndeepExtend(FunnelChart.prototype, PieChartMixin);\n\nexport default FunnelChart;\n","import FunnelChart from './funnel-chart';\n\nvar MAX_NECK_RATIO = 1e6;\n\nvar PyramidChart = (function (FunnelChart) {\n function PyramidChart(plotArea, options) {\n options.dynamicSlope = false;\n options.neckRatio = MAX_NECK_RATIO;\n\n FunnelChart.call(this, plotArea, options);\n }\n\n if ( FunnelChart ) PyramidChart.__proto__ = FunnelChart;\n PyramidChart.prototype = Object.create( FunnelChart && FunnelChart.prototype );\n PyramidChart.prototype.constructor = PyramidChart;\n\n return PyramidChart;\n}(FunnelChart));\n\nexport default PyramidChart;\n","import PlotAreaBase from './plotarea-base';\nimport FunnelChart from '../funnel-chart/funnel-chart';\nimport PyramidChart from '../funnel-chart/pyramid-chart';\n\nimport { append } from '../../common';\nimport { filterSeriesByType } from '../utils';\n\nimport { FUNNEL, PYRAMID } from '../constants';\n\nvar FunnelPlotArea = (function (PlotAreaBase) {\n function FunnelPlotArea () {\n PlotAreaBase.apply(this, arguments);\n }\n\n if ( PlotAreaBase ) FunnelPlotArea.__proto__ = PlotAreaBase;\n FunnelPlotArea.prototype = Object.create( PlotAreaBase && PlotAreaBase.prototype );\n FunnelPlotArea.prototype.constructor = FunnelPlotArea;\n\n FunnelPlotArea.prototype.render = function render () {\n this.createChart(FunnelChart, filterSeriesByType(this.series, [ FUNNEL ]));\n this.createChart(PyramidChart, filterSeriesByType(this.series, [ PYRAMID ]));\n };\n\n FunnelPlotArea.prototype.createChart = function createChart (chartType, series) {\n var firstSeries = series[0];\n if (!firstSeries) {\n return;\n }\n\n var chart = new chartType(this, {\n series: series,\n legend: this.options.legend,\n neckRatio: firstSeries.neckRatio,\n dynamicHeight: firstSeries.dynamicHeight,\n dynamicSlope: firstSeries.dynamicSlope,\n segmentSpacing: firstSeries.segmentSpacing,\n highlight: firstSeries.highlight\n });\n\n this.appendChart(chart);\n };\n\n FunnelPlotArea.prototype.appendChart = function appendChart (chart, pane) {\n PlotAreaBase.prototype.appendChart.call(this, chart, pane);\n append(this.options.legend.data, chart.legendItems);\n };\n\n FunnelPlotArea.prototype._pointsByVertical = function _pointsByVertical (basePoint) {\n return this.pointsBySeriesIndex(basePoint.series.index);\n };\n\n FunnelPlotArea.prototype.getPointToTheRight = function getPointToTheRight (point) {\n return this.getPointBelow(point);\n };\n\n FunnelPlotArea.prototype.getPointToTheLeft = function getPointToTheLeft (point) {\n return this.getPointAbove(point);\n };\n\n return FunnelPlotArea;\n}(PlotAreaBase));\n\nexport default FunnelPlotArea;\n","import { parseColor } from '@progress/kendo-drawing';\n\n// Linear color scale from the given color to white minus minimum lightness offset.\nvar colorScale = function (color, minLightnessOffset) {\n if ( minLightnessOffset === void 0 ) minLightnessOffset = 0.05;\n\n var baseColor = parseColor(color);\n var offset = 1 - minLightnessOffset;\n\n return function (value) {\n var hsl = baseColor.toHSL();\n var range = 100 - hsl.l;\n var point = offset - value;\n hsl.l += Math.min(point * range, range);\n\n return hsl.toCss();\n };\n};\n\nexport default colorScale;\n","import { autoTextColor, deepExtend, getTemplate, valueOrDefault } from '../../common';\nimport { CENTER, ROUNDED_RECT, BOTTOM, WHITE } from '../../common/constants';\nimport { ChartElement, Point, rectToBox, ShapeElement, TextBox } from '../../core';\nimport { CHART_POINT_CLASSNAME, CHART_POINT_ROLE, CHART_POINT_ROLE_DESCRIPTION, TOOLTIP_OFFSET } from '../constants';\nimport AccessibilityAttributesMixin from '../mixins/accessibility-attributes-mixin';\nimport NoteMixin from '../mixins/note-mixin';\nimport PointEventsMixin from '../mixins/point-events-mixin';\n\nvar HeatmapPoint = (function (ChartElement) {\n function HeatmapPoint(value, options) {\n ChartElement.call(this);\n\n this.options = options;\n this.color = options.color || WHITE;\n this.value = value;\n }\n\n if ( ChartElement ) HeatmapPoint.__proto__ = ChartElement;\n HeatmapPoint.prototype = Object.create( ChartElement && ChartElement.prototype );\n HeatmapPoint.prototype.constructor = HeatmapPoint;\n\n HeatmapPoint.prototype.render = function render () {\n if (this._rendered) {\n return;\n }\n\n this._rendered = true;\n\n this.createMarker();\n this.createLabel();\n this.createNote();\n };\n\n HeatmapPoint.prototype.createLabel = function createLabel () {\n var options = this.options;\n var labels = options.labels;\n\n if (labels.visible) {\n this.label = this.createLabelElement(labels);\n this.append(this.label);\n }\n };\n\n HeatmapPoint.prototype.createLabelElement = function createLabelElement (options) {\n var labelColor = options.color;\n\n if (!labelColor) {\n labelColor = autoTextColor(this.color);\n }\n\n return new TextBox(this.getLabelText(options),\n deepExtend({\n align: CENTER,\n vAlign: CENTER,\n margin: {\n left: 5,\n right: 5\n },\n zIndex: valueOrDefault(options.zIndex, this.series.zIndex)\n },\n options, {\n color: labelColor\n }),\n this.pointData()\n );\n };\n\n HeatmapPoint.prototype.getLabelText = function getLabelText (options) {\n var labelTemplate = getTemplate(options);\n\n if (labelTemplate) {\n return labelTemplate(this.pointData());\n }\n\n return this.formatValue(options.format);\n };\n\n HeatmapPoint.prototype.formatValue = function formatValue (format) {\n return this.owner.formatPointValue(this, format);\n };\n\n HeatmapPoint.prototype.reflow = function reflow (targetBox) {\n this.render();\n\n var label = this.label;\n\n this.box = targetBox;\n\n if (label) {\n label.reflow(this.markerBox());\n }\n\n if (this.note) {\n this.note.reflow(targetBox);\n }\n\n this.marker.reflow(this.markerBox());\n };\n\n HeatmapPoint.prototype.createVisual = function createVisual () {\n ChartElement.prototype.createVisual.call(this);\n\n this.addAccessibilityAttributesToVisual();\n };\n\n HeatmapPoint.prototype.markerBox = function markerBox () {\n var options = this.options;\n var markers = options.markers;\n var border = markers.border;\n var rect = this.box.toRect();\n var type = valueOrDefault(markers.type, 'rect');\n var isRoundRect = type === ROUNDED_RECT;\n var borderWidth = valueOrDefault(border.width, isRoundRect ? 1 : 0);\n var halfBorderWidth = Math.round(borderWidth / 2);\n\n if (markers.size) {\n var center = rect.center();\n rect.size.width = rect.size.height = markers.size;\n rect.origin.x = Math.round(center.x - rect.size.width / 2);\n rect.origin.y = Math.round(center.y - rect.size.height / 2);\n }\n\n rect.size.width -= borderWidth;\n rect.size.height -= borderWidth;\n rect.origin.y += halfBorderWidth + 0.5;\n rect.origin.x += halfBorderWidth + 0.5;\n\n return rectToBox(rect);\n };\n\n HeatmapPoint.prototype.markerBorder = function markerBorder () {\n var options = this.options;\n var markers = options.markers;\n var border = markers.border;\n var opacity = valueOrDefault(border.opacity, options.opacity);\n\n return {\n color: border.color || this.color,\n width: border.width,\n opacity: opacity,\n dashType: border.dashType\n };\n };\n\n HeatmapPoint.prototype.createMarker = function createMarker () {\n var options = this.options;\n var markerOptions = options.markers;\n var marker = new ShapeElement({\n type: valueOrDefault(markerOptions.type, 'rect'),\n width: markerOptions.size,\n height: markerOptions.size,\n rotation: markerOptions.rotation,\n background: this.color,\n border: this.markerBorder(),\n borderRadius: markerOptions.borderRadius,\n opacity: this.series.opacity || options.opacity,\n zIndex: valueOrDefault(options.zIndex, this.series.zIndex),\n animation: options.animation,\n visual: options.visual\n }, {\n dataItem: this.dataItem,\n value: this.value,\n series: this.series,\n category: this.category\n });\n\n this.marker = marker;\n this.append(marker);\n };\n\n HeatmapPoint.prototype.createHighlight = function createHighlight (style) {\n var options = this.options;\n var markerOptions = this.options.highlight.markers || this.options.markers;\n\n var highlight = new ShapeElement({\n type: valueOrDefault(markerOptions.type, 'rect'),\n width: markerOptions.size,\n height: markerOptions.size,\n rotation: markerOptions.rotation,\n background: markerOptions.color || this.color,\n border: this.markerBorder(),\n borderRadius: markerOptions.borderRadius,\n opacity: this.series.opacity || options.opacity,\n zIndex: valueOrDefault(options.zIndex, this.series.zIndex)\n });\n\n highlight.reflow(this.markerBox());\n var visual = highlight.getElement();\n\n visual.options.fill = style.fill;\n visual.options.stroke = style.stroke;\n\n return visual;\n };\n\n HeatmapPoint.prototype.highlightVisual = function highlightVisual () {\n return this.rectVisual;\n };\n\n HeatmapPoint.prototype.highlightVisualArgs = function highlightVisualArgs () {\n return {\n options: this.options,\n rect: this.box.toRect(),\n visual: this.rectVisual\n };\n };\n\n HeatmapPoint.prototype.createFocusHighlight = function createFocusHighlight () {\n var markerOptions = this.options.markers;\n var highlightOptions = this.options.accessibility.highlight;\n\n var highlight = new ShapeElement({\n type: valueOrDefault(markerOptions.type, 'rect'),\n width: markerOptions.size,\n height: markerOptions.size,\n rotation: markerOptions.rotation,\n background: highlightOptions.color,\n border: highlightOptions.border,\n borderRadius: markerOptions.borderRadius,\n padding: highlightOptions.border.width / 2,\n zIndex: highlightOptions.zIndex\n });\n\n highlight.reflow(this.markerBox());\n\n return highlight.getElement();\n };\n\n HeatmapPoint.prototype.tooltipAnchor = function tooltipAnchor () {\n var left = this.box.center().x;\n var top = this.box.y1 - TOOLTIP_OFFSET;\n\n return {\n point: new Point(left, top),\n align: {\n horizontal: CENTER,\n vertical: BOTTOM\n }\n };\n };\n\n HeatmapPoint.prototype.overlapsBox = function overlapsBox (box) {\n return this.box.overlaps(box);\n };\n\n HeatmapPoint.prototype.unclipElements = function unclipElements () {\n /* noop, clip labels */\n };\n\n HeatmapPoint.prototype.pointData = function pointData () {\n return {\n x: this.value.x,\n y: this.value.y,\n value: this.value.value,\n dataItem: this.dataItem,\n series: this.series\n };\n };\n\n return HeatmapPoint;\n}(ChartElement));\n\ndeepExtend(HeatmapPoint.prototype, PointEventsMixin);\ndeepExtend(HeatmapPoint.prototype, NoteMixin);\ndeepExtend(HeatmapPoint.prototype, AccessibilityAttributesMixin);\n\nHeatmapPoint.prototype.defaults = {\n markers: {\n type: 'rect',\n borderRadius: 4,\n border: {\n color: 'transparent'\n }\n },\n padding: { top: 1 },\n labels: {\n visible: false,\n padding: 3\n },\n opacity: 1,\n notes: {\n label: {}\n },\n accessibility: {\n role: CHART_POINT_ROLE,\n className: CHART_POINT_CLASSNAME,\n ariaRoleDescription: CHART_POINT_ROLE_DESCRIPTION\n }\n};\n\nexport default HeatmapPoint;\n","import { deepExtend, defined, isFunction, setDefaultOptions } from '../../common';\nimport { MAX_VALUE, MIN_VALUE } from '../../common/constants';\nimport { Box, ChartElement } from '../../core';\nimport evalOptions from '../utils/eval-options';\nimport colorScale from './color-scale';\nimport HeatmapPoint from './heatmap-point';\n\nvar HeatmapChart = (function (ChartElement) {\n function HeatmapChart(plotArea, options) {\n ChartElement.call(this, options);\n\n this.plotArea = plotArea;\n this.chartService = plotArea.chartService;\n this._initFields();\n\n this.render();\n }\n\n if ( ChartElement ) HeatmapChart.__proto__ = ChartElement;\n HeatmapChart.prototype = Object.create( ChartElement && ChartElement.prototype );\n HeatmapChart.prototype.constructor = HeatmapChart;\n\n HeatmapChart.prototype._initFields = function _initFields () {\n this.points = [];\n this.seriesOptions = [];\n this.valueRange = { min: MAX_VALUE, max: MIN_VALUE };\n this._evalSeries = [];\n };\n\n HeatmapChart.prototype.render = function render () {\n this.setRange();\n this.traverseDataPoints(this.addValue.bind(this));\n };\n\n HeatmapChart.prototype.setRange = function setRange () {\n var this$1 = this;\n\n var ref = this;\n var series = ref.options.series;\n\n for (var seriesIx = 0; seriesIx < series.length; seriesIx++) {\n var currentSeries = series[seriesIx];\n\n for (var pointIx = 0; pointIx < currentSeries.data.length; pointIx++) {\n var ref$1 = this$1.plotArea.bindPoint(currentSeries, pointIx);\n var valueFields = ref$1.valueFields;\n if (defined(valueFields.value) && valueFields.value !== null) {\n this$1.valueRange.min = Math.min(this$1.valueRange.min, valueFields.value);\n this$1.valueRange.max = Math.max(this$1.valueRange.max, valueFields.value);\n }\n }\n }\n };\n\n HeatmapChart.prototype.addValue = function addValue (value, fields) {\n var point;\n if (value && defined(value.value) && value.value !== null) {\n point = this.createPoint(value, fields);\n if (point) {\n Object.assign(point, fields);\n }\n }\n\n this.points.push(point);\n };\n\n HeatmapChart.prototype.evalPointOptions = function evalPointOptions (options, value, fields) {\n var series = fields.series;\n var seriesIx = fields.seriesIx;\n var state = {\n defaults: series._defaults,\n excluded: [\n \"data\", \"tooltip\", \"content\", \"template\",\n \"visual\", \"toggle\", \"drilldownSeriesFactory\",\n \"ariaTemplate\", \"ariaContent\"\n ]\n };\n\n var doEval = this._evalSeries[seriesIx];\n if (!defined(doEval)) {\n this._evalSeries[seriesIx] = doEval = evalOptions(options, {}, state, true);\n }\n\n var pointOptions = options;\n if (doEval) {\n pointOptions = deepExtend({}, options);\n evalOptions(pointOptions, {\n value: value,\n series: series,\n dataItem: fields.dataItem,\n min: this.valueRange.min,\n max: this.valueRange.max\n }, state);\n }\n\n return pointOptions;\n };\n\n HeatmapChart.prototype.pointType = function pointType () {\n return HeatmapPoint;\n };\n\n HeatmapChart.prototype.pointOptions = function pointOptions (series, seriesIx) {\n var options = this.seriesOptions[seriesIx];\n if (!options) {\n var defaults = this.pointType().prototype.defaults;\n this.seriesOptions[seriesIx] = options = deepExtend({}, defaults, {\n markers: {\n opacity: series.opacity\n },\n tooltip: {\n format: this.options.tooltip.format\n },\n labels: {\n format: this.options.labels.format\n }\n }, series);\n }\n\n return options;\n };\n\n HeatmapChart.prototype.createPoint = function createPoint (value, fields) {\n var series = fields.series;\n var pointOptions = this.pointOptions(series, fields.seriesIx);\n var color = fields.color || series.color;\n\n pointOptions = this.evalPointOptions(pointOptions, value, fields);\n\n if (isFunction(series.color)) {\n color = pointOptions.color;\n } else if (this.valueRange.max !== 0) {\n var scale = colorScale(color);\n color = scale(value.value / this.valueRange.max);\n }\n\n var point = new HeatmapPoint(value, pointOptions);\n point.color = color;\n\n this.append(point);\n\n return point;\n };\n\n HeatmapChart.prototype.seriesAxes = function seriesAxes (series) {\n var xAxisName = series.xAxis;\n var yAxisName = series.yAxis;\n var plotArea = this.plotArea;\n var xAxis = xAxisName ? plotArea.namedXAxes[xAxisName] : plotArea.axisX;\n var yAxis = yAxisName ? plotArea.namedYAxes[yAxisName] : plotArea.axisY;\n\n if (!xAxis) {\n throw new Error(\"Unable to locate X axis with name \" + xAxisName);\n }\n\n if (!yAxis) {\n throw new Error(\"Unable to locate Y axis with name \" + yAxisName);\n }\n\n return { xAxis: xAxis, yAxis: yAxis };\n };\n\n HeatmapChart.prototype.reflow = function reflow (targetBox) {\n var this$1 = this;\n\n var chartPoints = this.points;\n var limit = !this.options.clip;\n var pointIx = 0;\n\n\n this.traverseDataPoints(function (value, fields) {\n var point = chartPoints[pointIx++];\n var ref = this$1.seriesAxes(fields.series);\n var xAxis = ref.xAxis;\n var yAxis = ref.yAxis;\n var indexX = xAxis.categoryIndex(value.x);\n var indexY = yAxis.categoryIndex(value.y);\n var slotX = xAxis.getSlot(indexX, indexX, limit);\n var slotY = yAxis.getSlot(indexY, indexY, limit);\n\n if (point) {\n if (slotX && slotY) {\n var pointSlot = this$1.pointSlot(slotX, slotY);\n point.reflow(pointSlot);\n } else {\n point.visible = false;\n }\n }\n });\n\n this.box = targetBox;\n };\n\n HeatmapChart.prototype.pointSlot = function pointSlot (slotX, slotY) {\n return new Box(slotX.x1, slotY.y1, slotX.x2, slotY.y2);\n };\n\n HeatmapChart.prototype.traverseDataPoints = function traverseDataPoints (callback) {\n var this$1 = this;\n\n var ref = this;\n var series = ref.options.series;\n\n for (var seriesIx = 0; seriesIx < series.length; seriesIx++) {\n var currentSeries = series[seriesIx];\n var ref$1 = this$1.seriesAxes(currentSeries);\n var xAxis = ref$1.xAxis;\n var yAxis = ref$1.yAxis;\n var xRange = xAxis.currentRangeIndices();\n var yRange = yAxis.currentRangeIndices();\n\n for (var pointIx = 0; pointIx < currentSeries.data.length; pointIx++) {\n var ref$2 = this$1.plotArea.bindPoint(currentSeries, pointIx);\n var value = ref$2.valueFields;\n var fields = ref$2.fields;\n var xIndex = xAxis.totalIndex(value.x);\n var yIndex = yAxis.totalIndex(value.y);\n var xIn = xRange.min <= xIndex && xIndex <= xRange.max;\n var yIn = yRange.min <= yIndex && yIndex <= yRange.max;\n\n if (xIn && yIn) {\n callback(value, deepExtend({\n pointIx: pointIx,\n series: currentSeries,\n seriesIx: seriesIx,\n dataItem: currentSeries.data[pointIx],\n owner: this$1\n }, fields));\n }\n }\n }\n };\n\n HeatmapChart.prototype.formatPointValue = function formatPointValue (point, format) {\n var value = point.value;\n return this.chartService.format.auto(format, value.x, value.y, value.value);\n };\n\n HeatmapChart.prototype.animationPoints = function animationPoints () {\n var points = this.points;\n var result = [];\n for (var idx = 0; idx < points.length; idx++) {\n result.push((points[idx] || {}).marker);\n }\n return result;\n };\n\n return HeatmapChart;\n}(ChartElement));\nsetDefaultOptions(HeatmapChart, {\n series: [],\n tooltip: {\n format: \"{0}, {1}: {2}\"\n },\n labels: {\n format: \"{2}\"\n },\n clip: true\n});\n\nexport default HeatmapChart;\n","import { deepExtend, eventElement, grep, inArray, setDefaultOptions, createHashSet, cycleIndex } from '../../common';\nimport { DATE } from '../../common/constants';\nimport { CategoryAxis, DateCategoryAxis, Point } from '../../core';\nimport { dateEquals } from '../../date-utils';\nimport { HEATMAP } from '../constants';\nimport HeatmapChart from '../heatmap-chart/heatmap-chart';\nimport PlotAreaEventsMixin from '../mixins/plotarea-events-mixin';\nimport SeriesBinder from '../series-binder';\nimport { appendIfNotNull, equalsIgnoreCase, filterSeriesByType, singleItemOrArray } from '../utils';\nimport PlotAreaBase from './plotarea-base';\n\n\nvar HeatmapPlotArea = (function (PlotAreaBase) {\n function HeatmapPlotArea () {\n PlotAreaBase.apply(this, arguments);\n }\n\n if ( PlotAreaBase ) HeatmapPlotArea.__proto__ = PlotAreaBase;\n HeatmapPlotArea.prototype = Object.create( PlotAreaBase && PlotAreaBase.prototype );\n HeatmapPlotArea.prototype.constructor = HeatmapPlotArea;\n\n HeatmapPlotArea.prototype.initFields = function initFields () {\n this.namedXAxes = {};\n this.namedYAxes = {};\n };\n\n HeatmapPlotArea.prototype.render = function render (panes) {\n if ( panes === void 0 ) panes = this.panes;\n\n this.bindCategories();\n this.createAxes(panes);\n this.createCharts(panes);\n this.createAxisLabels();\n };\n\n HeatmapPlotArea.prototype.bindCategories = function bindCategories () {\n var this$1 = this;\n\n var series = this.srcSeries || this.series;\n\n for (var i = 0; i < series.length; i++) {\n var currentSeries = series[i];\n var data = currentSeries.data || [];\n var ref = this$1.seriesAxes(currentSeries);\n var xAxis = ref.xAxis;\n var yAxis = ref.yAxis;\n\n var xCategories = createHashSet(xAxis.categories || []);\n var yCategories = createHashSet(yAxis.categories || []);\n\n for (var pointIndex = 0; pointIndex < data.length; pointIndex++) {\n var ref$1 = SeriesBinder.current.bindPoint(currentSeries, pointIndex).valueFields;\n var x = ref$1.x;\n var y = ref$1.y;\n\n if (!xCategories.has(x)) {\n xCategories.add(x);\n }\n\n if (!yCategories.has(y)) {\n yCategories.add(y);\n }\n }\n\n xAxis.categories = xCategories.values();\n yAxis.categories = yCategories.values();\n }\n };\n\n HeatmapPlotArea.prototype.createCharts = function createCharts (panes) {\n var this$1 = this;\n\n var seriesByPane = this.groupSeriesByPane();\n\n for (var i = 0; i < panes.length; i++) {\n var pane = panes[i];\n var paneSeries = seriesByPane[pane.options.name || \"default\"] || [];\n this$1.addToLegend(paneSeries);\n var filteredSeries = this$1.filterVisibleSeries(paneSeries);\n\n if (!filteredSeries) {\n continue;\n }\n\n this$1.createHeatmapChart(\n filterSeriesByType(filteredSeries, [ HEATMAP ]),\n pane\n );\n }\n };\n\n HeatmapPlotArea.prototype.createHeatmapChart = function createHeatmapChart (series, pane) {\n var chart = new HeatmapChart(this, {\n series: series\n });\n\n this.appendChart(chart, pane);\n };\n\n HeatmapPlotArea.prototype.seriesPaneName = function seriesPaneName (series) {\n var options = this.options;\n var xAxisName = series.xAxis;\n var xAxisOptions = [].concat(options.xAxis);\n var xAxis = grep(xAxisOptions, function(a) { return a.name === xAxisName; })[0];\n var yAxisName = series.yAxis;\n var yAxisOptions = [].concat(options.yAxis);\n var yAxis = grep(yAxisOptions, function(a) { return a.name === yAxisName; })[0];\n var panes = options.panes || [ {} ];\n var defaultPaneName = panes[0].name || \"default\";\n var paneName = (xAxis || {}).pane || (yAxis || {}).pane || defaultPaneName;\n\n return paneName;\n };\n\n HeatmapPlotArea.prototype.seriesAxes = function seriesAxes (series) {\n var xAxis;\n var yAxis;\n\n var options = this.options;\n\n var xAxisOptions = [].concat(options.xAxis);\n var xAxisName = series.xAxis;\n if (xAxisName) {\n xAxis = xAxisOptions.find(function (axis) { return axis.name === xAxisName; });\n } else {\n xAxis = xAxisOptions[0];\n }\n\n var yAxisOptions = [].concat(options.yAxis);\n var yAxisName = series.yAxis;\n if (yAxisName) {\n yAxis = yAxisOptions.find(function (axis) { return axis.name === yAxisName; });\n } else {\n yAxis = yAxisOptions[0];\n }\n\n if (!xAxis) {\n throw new Error(\"Unable to locate X axis with name \" + xAxisName);\n }\n\n if (!yAxis) {\n throw new Error(\"Unable to locate Y axis with name \" + yAxisName);\n }\n\n return { xAxis: xAxis, yAxis: yAxis };\n };\n\n HeatmapPlotArea.prototype.createAxisLabels = function createAxisLabels () {\n var axes = this.axes;\n for (var i = 0; i < axes.length; i++) {\n axes[i].createLabels();\n }\n };\n\n HeatmapPlotArea.prototype.createXYAxis = function createXYAxis (options, vertical, axisIndex) {\n var axisName = options.name;\n var namedAxes = vertical ? this.namedYAxes : this.namedXAxes;\n var axisOptions = Object.assign({\n axisCrossingValue: 0\n }, options, {\n vertical: vertical,\n reverse: (vertical || this.chartService.rtl) ? !options.reverse : options.reverse,\n justified: false\n });\n var firstCategory = axisOptions.categories ? axisOptions.categories[0] : null;\n var typeSamples = [ axisOptions.min, axisOptions.max, firstCategory ];\n var series = this.series;\n\n for (var seriesIx = 0; seriesIx < series.length; seriesIx++) {\n var currentSeries = series[seriesIx];\n var seriesAxisName = currentSeries[vertical ? \"yAxis\" : \"xAxis\"];\n if ((seriesAxisName === axisOptions.name) || (axisIndex === 0 && !seriesAxisName)) {\n var firstPointValue = SeriesBinder.current.bindPoint(currentSeries, 0).valueFields;\n typeSamples.push(firstPointValue[vertical ? \"y\" : \"x\"]);\n\n break;\n }\n }\n\n var inferredDate;\n\n for (var i = 0; i < typeSamples.length; i++) {\n if (typeSamples[i] instanceof Date) {\n inferredDate = true;\n break;\n }\n }\n\n var axisType;\n if (equalsIgnoreCase(axisOptions.type, DATE) || (!axisOptions.type && inferredDate)) {\n axisType = DateCategoryAxis;\n } else {\n axisType = CategoryAxis;\n }\n\n var axis = new axisType(axisOptions, this.chartService);\n axis.axisIndex = axisIndex;\n\n if (axisName) {\n if (namedAxes[axisName]) {\n throw new Error(((vertical ? \"Y\" : \"X\") + \" axis with name \" + axisName + \" is already defined\"));\n }\n namedAxes[axisName] = axis;\n }\n\n this.appendAxis(axis);\n axis.indexCategories();\n\n return axis;\n };\n\n HeatmapPlotArea.prototype.createAxes = function createAxes (panes) {\n var this$1 = this;\n\n var options = this.options;\n var xAxesOptions = [].concat(options.xAxis);\n var xAxes = [];\n var yAxesOptions = [].concat(options.yAxis);\n var yAxes = [];\n\n for (var idx = 0; idx < xAxesOptions.length; idx++) {\n var axisPane = this$1.findPane(xAxesOptions[idx].pane);\n if (inArray(axisPane, panes)) {\n xAxes.push(this$1.createXYAxis(xAxesOptions[idx], false, idx));\n }\n }\n\n for (var idx$1 = 0; idx$1 < yAxesOptions.length; idx$1++) {\n var axisPane$1 = this$1.findPane(yAxesOptions[idx$1].pane);\n if (inArray(axisPane$1, panes)) {\n yAxes.push(this$1.createXYAxis(yAxesOptions[idx$1], true, idx$1));\n }\n }\n\n this.axisX = this.axisX || xAxes[0];\n this.axisY = this.axisY || yAxes[0];\n };\n\n HeatmapPlotArea.prototype.removeAxis = function removeAxis (axis) {\n var axisName = axis.options.name;\n\n PlotAreaBase.prototype.removeAxis.call(this, axis);\n\n if (axis.options.vertical) {\n delete this.namedYAxes[axisName];\n } else {\n delete this.namedXAxes[axisName];\n }\n\n if (axis === this.axisX) {\n delete this.axisX;\n }\n\n if (axis === this.axisY) {\n delete this.axisY;\n }\n };\n\n HeatmapPlotArea.prototype._dispatchEvent = function _dispatchEvent (chart, e, eventType) {\n var coords = chart._eventCoordinates(e);\n var point = new Point(coords.x, coords.y);\n var allAxes = this.axes;\n var length = allAxes.length;\n var xValues = [];\n var yValues = [];\n\n for (var i = 0; i < length; i++) {\n var axis = allAxes[i];\n var values = axis.options.vertical ? yValues : xValues;\n appendIfNotNull(values, axis.getCategory(point));\n }\n\n if (xValues.length > 0 && yValues.length > 0) {\n chart.trigger(eventType, {\n element: eventElement(e),\n originalEvent: e,\n x: singleItemOrArray(xValues),\n y: singleItemOrArray(yValues)\n });\n }\n };\n\n HeatmapPlotArea.prototype.updateAxisOptions = function updateAxisOptions$1 (axis, options) {\n var vertical = axis.options.vertical;\n var axes = this.groupAxes(this.panes);\n var index = (vertical ? axes.y : axes.x).indexOf(axis);\n\n updateAxisOptions(this.options, index, vertical, options);\n updateAxisOptions(this.originalOptions, index, vertical, options);\n };\n\n HeatmapPlotArea.prototype.crosshairOptions = function crosshairOptions (axis) {\n // Stack the crosshair above the series points.\n return Object.assign({}, axis.options.crosshair, { zIndex: 0 });\n };\n\n HeatmapPlotArea.prototype._pointsByVertical = function _pointsByVertical (basePoint, offset) {\n var this$1 = this;\n if ( offset === void 0 ) offset = 0;\n\n var normalizedOffset = this.axisX.options.reverse ? offset * -1 : offset;\n var axisXItems = this.axisX.children;\n var xIndex = this._getPointAxisXIndex(basePoint) + normalizedOffset;\n\n xIndex = cycleIndex(xIndex, axisXItems.length);\n var targetXValue = axisXItems[xIndex].value;\n\n var points = this\n .filterPoints(function (point) { return compareValues(point.pointData().x, targetXValue); })\n .sort(function (a, b) { return this$1._getPointAxisYIndex(a) - this$1._getPointAxisYIndex(b); });\n\n if (this.axisY.options.reverse) {\n return points.reverse();\n }\n\n return points;\n };\n\n HeatmapPlotArea.prototype._pointsByHorizontal = function _pointsByHorizontal (basePoint, offset) {\n var this$1 = this;\n if ( offset === void 0 ) offset = 0;\n\n var normalizedOffset = this.axisY.options.reverse ? offset * -1 : offset;\n var axisYItems = this.axisY.children;\n var yIndex = this._getPointAxisYIndex(basePoint) + normalizedOffset;\n\n yIndex = cycleIndex(yIndex, axisYItems.length);\n var targetYValue = axisYItems[yIndex].value;\n\n var points = this\n .filterPoints(function (point) { return compareValues(point.pointData().y, targetYValue); })\n .sort(function (a, b) { return this$1._getPointAxisXIndex(a) - this$1._getPointAxisXIndex(b); });\n\n if (this.axisX.options.reverse) {\n return points.reverse();\n }\n\n return points;\n };\n\n HeatmapPlotArea.prototype._getPointAxisXIndex = function _getPointAxisXIndex (point) {\n return this._getPointAxisIndex(this.axisX, point.pointData().x);\n };\n\n HeatmapPlotArea.prototype._getPointAxisYIndex = function _getPointAxisYIndex (point) {\n return this._getPointAxisIndex(this.axisY, point.pointData().y);\n };\n\n HeatmapPlotArea.prototype._getPointAxisIndex = function _getPointAxisIndex (axis, pointValue) {\n return axis.children.findIndex(function (axisItem) { return compareValues(pointValue, axisItem.value); });\n };\n\n return HeatmapPlotArea;\n}(PlotAreaBase));\n\nfunction compareValues(a, b) {\n if (a instanceof Date && b instanceof Date) {\n return dateEquals(a, b);\n }\n\n return a === b;\n}\n\nfunction updateAxisOptions(targetOptions, axisIndex, vertical, options) {\n var axisOptions = ([].concat(vertical ? targetOptions.yAxis : targetOptions.xAxis))[axisIndex];\n deepExtend(axisOptions, options);\n}\n\nsetDefaultOptions(HeatmapPlotArea, {\n xAxis: {},\n yAxis: {}\n});\n\ndeepExtend(HeatmapPlotArea.prototype, PlotAreaEventsMixin);\n\nexport default HeatmapPlotArea;\n","import PlotAreaFactory from './plotarea/plotarea-factory';\nimport SeriesBinder from './series-binder';\nimport DefaultAggregates from './aggregates/default-aggregates';\nimport CategoricalPlotArea from './plotarea/categorical-plotarea';\nimport XYPlotArea from './plotarea/xy-plotarea';\nimport PiePlotArea from './plotarea/pie-plotarea';\nimport DonutPlotArea from './plotarea/donut-plotarea';\nimport PolarPlotArea from './plotarea/polar-plotarea';\nimport RadarPlotArea from './plotarea/radar-plotarea';\nimport FunnelPlotArea from './plotarea/funnel-plotarea';\nimport HeatmapPlotArea from './plotarea/heatmap-plotarea';\n\nimport { COLUMN, DONUT, PIE, FUNNEL, PYRAMID, BAR, LINE, VERTICAL_LINE, AREA, VERTICAL_AREA,\n CANDLESTICK, OHLC, BULLET, VERTICAL_BULLET, BOX_PLOT, VERTICAL_BOX_PLOT, RANGE_COLUMN,\n RANGE_BAR, WATERFALL, HORIZONTAL_WATERFALL, SCATTER, SCATTER_LINE, BUBBLE,\n POLAR_AREA, POLAR_LINE, POLAR_SCATTER, RADAR_AREA, RADAR_COLUMN, RADAR_LINE, CATEGORY,\n RANGE_AREA, VERTICAL_RANGE_AREA, X_ERROR_LOW_FIELD, X_ERROR_HIGH_FIELD, Y_ERROR_LOW_FIELD, Y_ERROR_HIGH_FIELD,\n ERROR_LOW_FIELD, ERROR_HIGH_FIELD, HEATMAP, DRILLDOWN_FIELD, TRENDLINE_SERIES } from './constants';\nimport { X, Y, VALUE } from '../common/constants';\n\nvar COLOR = \"color\";\nvar FIRST = \"first\";\nvar FROM = \"from\";\nvar MAX = \"max\";\nvar MIN = \"min\";\nvar NOTE_TEXT = \"noteText\";\nvar SUMMARY_FIELD = \"summary\";\nvar TO = \"to\";\n\nPlotAreaFactory.current.register(CategoricalPlotArea, [\n BAR, COLUMN, LINE, VERTICAL_LINE, AREA, VERTICAL_AREA,\n CANDLESTICK, OHLC, BULLET, VERTICAL_BULLET, BOX_PLOT, VERTICAL_BOX_PLOT,\n RANGE_COLUMN, RANGE_BAR, WATERFALL, HORIZONTAL_WATERFALL, RANGE_AREA, VERTICAL_RANGE_AREA ].concat( TRENDLINE_SERIES\n));\n\nPlotAreaFactory.current.register(XYPlotArea, [\n SCATTER, SCATTER_LINE, BUBBLE ].concat( TRENDLINE_SERIES\n));\n\nPlotAreaFactory.current.register(PiePlotArea, [ PIE ]);\nPlotAreaFactory.current.register(DonutPlotArea, [ DONUT ]);\nPlotAreaFactory.current.register(FunnelPlotArea, [ FUNNEL, PYRAMID ]);\n\nPlotAreaFactory.current.register(PolarPlotArea, [\n POLAR_AREA, POLAR_LINE, POLAR_SCATTER ].concat( TRENDLINE_SERIES\n));\n\nPlotAreaFactory.current.register(RadarPlotArea, [\n RADAR_AREA, RADAR_COLUMN, RADAR_LINE ].concat( TRENDLINE_SERIES\n));\n\nPlotAreaFactory.current.register(HeatmapPlotArea, [ HEATMAP ]);\n\nSeriesBinder.current.register(\n [ BAR, COLUMN, LINE, VERTICAL_LINE, AREA, VERTICAL_AREA ],\n [ VALUE ], [ CATEGORY, COLOR, NOTE_TEXT, ERROR_LOW_FIELD, ERROR_HIGH_FIELD, DRILLDOWN_FIELD ]\n);\n\nSeriesBinder.current.register(\n [ RANGE_COLUMN, RANGE_BAR, RANGE_AREA, VERTICAL_RANGE_AREA ],\n [ FROM, TO ], [ CATEGORY, COLOR, NOTE_TEXT, DRILLDOWN_FIELD ]\n);\n\nSeriesBinder.current.register(\n [ WATERFALL, HORIZONTAL_WATERFALL ],\n [ VALUE ], [ CATEGORY, COLOR, NOTE_TEXT, SUMMARY_FIELD, DRILLDOWN_FIELD ]\n);\n\nSeriesBinder.current.register([ POLAR_AREA, POLAR_LINE, POLAR_SCATTER ], [ X, Y ], [ COLOR, DRILLDOWN_FIELD ]);\nSeriesBinder.current.register([ RADAR_AREA, RADAR_COLUMN, RADAR_LINE ], [ VALUE ], [ CATEGORY, COLOR, DRILLDOWN_FIELD ]);\n\nSeriesBinder.current.register(\n [ FUNNEL, PYRAMID ],\n [ VALUE ], [ CATEGORY, COLOR, \"visibleInLegend\", \"visible\", DRILLDOWN_FIELD ]\n);\n\nDefaultAggregates.current.register(\n [ BAR, COLUMN, LINE, VERTICAL_LINE, AREA, VERTICAL_AREA, WATERFALL, HORIZONTAL_WATERFALL ],\n { value: MAX, color: FIRST, noteText: FIRST, errorLow: MIN, errorHigh: MAX }\n);\n\nDefaultAggregates.current.register(\n [ RANGE_COLUMN, RANGE_BAR, RANGE_AREA, VERTICAL_RANGE_AREA ],\n { from: MIN, to: MAX, color: FIRST, noteText: FIRST }\n);\n\nDefaultAggregates.current.register(\n [ RADAR_AREA, RADAR_COLUMN, RADAR_LINE ],\n { value: MAX, color: FIRST }\n);\n\nSeriesBinder.current.register(\n [ SCATTER, SCATTER_LINE, BUBBLE ],\n [ X, Y ], [ COLOR, NOTE_TEXT, X_ERROR_LOW_FIELD, X_ERROR_HIGH_FIELD, Y_ERROR_LOW_FIELD, Y_ERROR_HIGH_FIELD ]\n);\n\nSeriesBinder.current.register(\n [ BUBBLE ], [ X, Y, \"size\" ], [ COLOR, CATEGORY, NOTE_TEXT ]\n);\n\nSeriesBinder.current.register(\n [ HEATMAP ],\n [ X, Y, VALUE ], [ COLOR, NOTE_TEXT ]\n);\n\nSeriesBinder.current.register(\n [ CANDLESTICK, OHLC ],\n [ \"open\", \"high\", \"low\", \"close\" ], [ CATEGORY, COLOR, \"downColor\", NOTE_TEXT ]\n);\n\nDefaultAggregates.current.register(\n [ CANDLESTICK, OHLC ],\n { open: MAX, high: MAX, low: MIN, close: MAX,\n color: FIRST, downColor: FIRST, noteText: FIRST }\n);\n\nSeriesBinder.current.register(\n [ BOX_PLOT, VERTICAL_BOX_PLOT ],\n [ \"lower\", \"q1\", \"median\", \"q3\", \"upper\", \"mean\", \"outliers\" ], [ CATEGORY, COLOR, NOTE_TEXT, DRILLDOWN_FIELD ]\n);\n\nDefaultAggregates.current.register(\n [ BOX_PLOT, VERTICAL_BOX_PLOT ],\n { lower: MAX, q1: MAX, median: MAX, q3: MAX, upper: MAX, mean: MAX, outliers: FIRST,\n color: FIRST, noteText: FIRST }\n);\n\nSeriesBinder.current.register(\n [ BULLET, VERTICAL_BULLET ],\n [ \"current\", \"target\" ], [ CATEGORY, COLOR, \"visibleInLegend\", NOTE_TEXT, DRILLDOWN_FIELD ]\n);\n\nDefaultAggregates.current.register(\n [ BULLET, VERTICAL_BULLET ],\n { current: MAX, target: MAX, color: FIRST, noteText: FIRST }\n);\n\nSeriesBinder.current.register(\n [ PIE, DONUT ],\n [ VALUE ], [ CATEGORY, COLOR, \"explode\", \"visibleInLegend\", \"visible\", DRILLDOWN_FIELD ]\n);\n","import { drawing as draw, throttle, geometry } from '@progress/kendo-drawing';\n\nimport { RootElement, Title, CategoryAxis, Point } from '../core';\n\nimport Highlight from './highlight';\nimport Pannable from './pan-and-zoom/pannable';\nimport ZoomSelection from './pan-and-zoom/zoom-selection';\nimport MousewheelZoom from './pan-and-zoom/mousewheel-zoom';\nimport Legend from './legend/legend';\nimport PlotAreaFactory from './plotarea/plotarea-factory';\nimport Selection from './selection';\nimport SeriesBinder from './series-binder';\nimport Tooltip from './tooltip/tooltip';\nimport SharedTooltip from './tooltip/shared-tooltip';\nimport CategoricalPlotArea from './plotarea/categorical-plotarea';\nimport PlotAreaBase from './plotarea/plotarea-base';\nimport { ChartService, DomEventsBuilder } from '../services';\nimport isDateAxis from './utils/is-date-axis';\nimport { ChartPane, ChartPlotArea, findAxisByName } from './api-elements';\n\nimport { X, Y, VALUE, DEFAULT_WIDTH, DEFAULT_HEIGHT, DEFAULT_SERIES_OPACITY,\n ARROW_DOWN, ARROW_UP, ARROW_LEFT, ARROW_RIGHT, ARIA_ACTIVE_DESCENDANT, TAB, TOP, LEFT, BLACK,\n ENTER, ESCAPE } from '../common/constants';\nimport { addClass, Class, setDefaultOptions, deepExtend, defined, find, isObject, isFunction, elementSize, elementOffset,\n elementScale, elementStyles, eventCoordinates, bindEvents, unbindEvents, mousewheelDelta, FontLoader, inArray, round,\n valueOrDefault, isString, cycleUp, cycleDown, hasOwnProperty } from '../common';\n\nimport { DRAG_START, DRAG, DRAG_END, ZOOM_START, ZOOM, ZOOM_END, SELECT_START, SELECT, SELECT_END, PLOT_AREA_HOVER, PLOT_AREA_LEAVE,\n RENDER, CATEGORY, PIE, DONUT, FUNNEL, PYRAMID, COLUMN, MOUSEWHEEL, MOUSEWHEEL_DELAY, MOUSEWHEEL_ZOOM_RATE, SHOW_TOOLTIP, SERIES_HOVER,\n SERIES_OVER, SERIES_LEAVE, SERIES_CLICK, DRILLDOWN, LEGEND_ITEM_CLICK } from './constants';\n\nimport './animations';\nimport './register-charts';\nimport { parseDateCategory } from './utils';\n\nvar AXIS_NAMES = [ CATEGORY, VALUE, X, Y ];\n\nvar MOUSEDOWN = \"mousedown\";\nvar MOUSEMOVE = \"mousemove\";\nvar CONTEXTMENU = \"contextmenu\";\nvar MOUSELEAVE = \"mouseleave\";\nvar KEYDOWN = \"keydown\";\nvar FOCUS = \"focus\";\nvar BLUR = \"blur\";\nvar MOUSEMOVE_DELAY = 20;\n\nvar Chart = (function (Class) {\n function Chart(element, userOptions, themeOptions, context) {\n var this$1 = this;\n if ( context === void 0 ) context = {};\n\n Class.call(this);\n\n this.observers = [];\n this.addObserver(context.observer);\n this.chartService = new ChartService(this, context);\n this.chartService.theme = themeOptions;\n\n this._initElement(element);\n\n var options = deepExtend({}, this.options, userOptions);\n this._originalOptions = deepExtend({}, options);\n this._theme = themeOptions;\n this._initTheme(options, themeOptions);\n this._focusState = {};\n\n this._initHandlers();\n this._initSurface();\n\n this.bindCategories();\n FontLoader.preloadFonts(userOptions, function () {\n this$1.fontLoaded = true;\n if (!this$1._destroyed) {\n this$1.trigger('init');\n this$1._redraw();\n this$1._attachEvents();\n }\n });\n }\n\n if ( Class ) Chart.__proto__ = Class;\n Chart.prototype = Object.create( Class && Class.prototype );\n Chart.prototype.constructor = Chart;\n\n Chart.prototype._initElement = function _initElement (element) {\n this._setElementClass(element);\n element.style.position = \"relative\";\n element.tabIndex = element.getAttribute(\"tabindex\") ? element.getAttribute(\"tabindex\") : 0;\n // To support user agents and assistive technologies based on the ARIA 1.0 specification, authors may wish to include the document role as a fallback value, in the form role=\"graphics-document document\".\n element.setAttribute(\"role\", \"graphics-document document\");\n while (element.firstChild) {\n element.removeChild(element.firstChild);\n }\n this.element = element;\n };\n\n Chart.prototype._setElementClass = function _setElementClass (element) {\n addClass(element, \"k-chart\");\n };\n\n Chart.prototype._initTheme = function _initTheme (options, themeOptions) {\n var seriesCopies = [];\n var series = options.series || [];\n\n for (var i = 0; i < series.length; i++) {\n seriesCopies.push(Object.assign({}, series[i]));\n }\n options.series = seriesCopies;\n\n resolveAxisAliases(options);\n this.applyDefaults(options, themeOptions);\n\n // Clean up default if not overriden by data attributes\n if (options.seriesColors === null) {\n delete options.seriesColors;\n }\n\n if (isString(options.title)) {\n options.title = { text: options.title };\n }\n\n this.options = deepExtend({}, themeOptions, options);\n this.applySeriesColors();\n };\n\n Chart.prototype.getSize = function getSize () {\n var chartArea = this.options.chartArea || {};\n var width = chartArea.width ? parseInt(chartArea.width, 10) : Math.floor(this.element.offsetWidth);\n var height = chartArea.height ? parseInt(chartArea.height, 10) : Math.floor(this.element.offsetHeight);\n\n return {\n width: width,\n height: height\n };\n };\n\n Chart.prototype.resize = function resize (force) {\n var size = this.getSize();\n var currentSize = this._size;\n var hasSize = size.width > 0 || size.height > 0;\n\n if (force || hasSize && (!currentSize || size.width !== currentSize.width || size.height !== currentSize.height)) {\n this._size = size;\n this._resize(size, force);\n this.trigger(\"resize\", size);\n } else if (hasSize && this._selections && find(this._selections, function (s) { return !s.visible; })) {\n this._destroySelections();\n this._setupSelection();\n }\n };\n\n Chart.prototype._resize = function _resize () {\n this._noTransitionsRedraw();\n };\n\n Chart.prototype.redraw = function redraw (paneName) {\n this.applyDefaults(this.options);\n this.applySeriesColors();\n\n if (paneName) {\n var plotArea = this._model._plotArea;\n var pane = plotArea.findPane(paneName);\n plotArea.redraw(pane);\n } else {\n this._redraw();\n }\n };\n\n Chart.prototype.getAxis = function getAxis (name) {\n return findAxisByName(name, this._plotArea.axes);\n };\n\n Chart.prototype.findAxisByName = function findAxisByName (name) {\n return this.getAxis(name);\n };\n\n Chart.prototype.findPaneByName = function findPaneByName (name) {\n var panes = this._plotArea.panes;\n\n for (var idx = 0; idx < panes.length; idx++) {\n if (panes[idx].options.name === name) {\n return new ChartPane(panes[idx]);\n }\n }\n };\n\n Chart.prototype.findPaneByIndex = function findPaneByIndex (idx) {\n var panes = this._plotArea.panes;\n if (panes[idx]) {\n return new ChartPane(panes[idx]);\n }\n };\n\n Chart.prototype.plotArea = function plotArea () {\n return new ChartPlotArea(this._plotArea);\n };\n\n Chart.prototype.toggleHighlight = function toggleHighlight (show, filter) {\n var plotArea = this._plotArea;\n var firstSeries = (plotArea.srcSeries || plotArea.series || [])[0];\n var points;\n\n if (isFunction(filter)) {\n points = plotArea.filterPoints(filter);\n } else {\n var seriesName, categoryName;\n if (isObject(filter)) {\n seriesName = filter.series;\n categoryName = filter.category;\n } else {\n seriesName = categoryName = filter;\n }\n\n if (firstSeries.type === DONUT) {\n points = pointByCategoryName(plotArea.pointsBySeriesName(seriesName), categoryName);\n } else if (inArray(firstSeries.type, [ PIE, FUNNEL, PYRAMID ])) {\n points = pointByCategoryName((plotArea.charts[0] || {}).points, categoryName);\n } else {\n points = plotArea.pointsBySeriesName(seriesName);\n }\n }\n\n if (points) {\n this.togglePointsHighlight(show, points);\n }\n };\n\n Chart.prototype.togglePointsHighlight = function togglePointsHighlight (show, points) {\n var highlight = this._highlight;\n for (var idx = 0; idx < points.length; idx++) {\n highlight.togglePointHighlight(points[idx], show);\n }\n };\n\n Chart.prototype.showTooltip = function showTooltip (filter) {\n var shared = this._sharedTooltip();\n var ref = this;\n var tooltip = ref._tooltip;\n var plotArea = ref._plotArea;\n var point, categoryIndex;\n\n if (isFunction(filter)) {\n point = plotArea.findPoint(filter);\n if (point && shared) {\n categoryIndex = point.categoryIx;\n }\n } else if (shared && defined(filter)) {\n categoryIndex = plotArea.categoryAxis.categoryIndex(filter);\n }\n\n if (shared) {\n if (categoryIndex >= 0) {\n var points = this._plotArea.pointsByCategoryIndex(categoryIndex);\n tooltip.showAt(points);\n }\n } else if (point) {\n tooltip.show(point);\n }\n };\n\n Chart.prototype.hideTooltip = function hideTooltip () {\n this._tooltip.hide();\n };\n\n Chart.prototype._initSurface = function _initSurface () {\n var surface = this.surface;\n var wrap = this._surfaceWrap();\n\n var chartArea = this.options.chartArea || {};\n if (chartArea.width) {\n elementSize(wrap, { width: chartArea.width });\n }\n if (chartArea.height) {\n elementSize(wrap, { height: chartArea.height });\n }\n\n if (!surface || surface.options.type !== this.options.renderAs) {\n this._destroySurface();\n\n this.surface = draw.Surface.create(wrap, {\n type: this.options.renderAs\n });\n\n this.surface.bind(\"mouseenter\", this._surfaceMouseenterHandler);\n this.surface.bind(\"mouseleave\", this._surfaceMouseleaveHandler);\n\n } else {\n this.surface.clear();\n this.surface.resize();\n }\n\n // Override the surface _kendoExportVisual in order to accept export options with size.\n this.element._kendoExportVisual = this._kendoExportVisual.bind(this);\n };\n\n Chart.prototype._surfaceWrap = function _surfaceWrap () {\n return this.element;\n };\n\n Chart.prototype._redraw = function _redraw () {\n var model = this._getModel();\n this._size = {\n width: model.options.width,\n height: model.options.height\n };\n\n this._destroyView();\n\n this._setElementAccessibilityAttributes();\n\n this._model = model;\n this._plotArea = model._plotArea;\n this._legend = model._legend;\n\n model.renderVisual();\n\n if (this.options.transitions !== false) {\n model.traverse(function(element) {\n if (element.animation) {\n element.animation.setup();\n }\n });\n }\n\n this._initSurface();\n this.surface.draw(model.visual);\n\n if (this.options.transitions !== false) {\n model.traverse(function(element) {\n if (element.animation) {\n element.animation.play();\n }\n });\n }\n\n this._tooltip = this._createTooltip();\n this._highlight = new Highlight();\n this._setupSelection();\n this._createPannable();\n this._createZoomSelection();\n this._createMousewheelZoom();\n\n this.trigger(RENDER);\n triggerPaneRender(this._plotArea.panes);\n\n if (!this._navState) {\n this._cancelDomEvents();\n }\n\n this._redrawFocusHighlight();\n };\n\n Chart.prototype._redrawFocusHighlight = function _redrawFocusHighlight () {\n var ref = this;\n var ref_focusState = ref._focusState;\n var legendInFocus = ref_focusState.legendInFocus;\n var preserveHighlight = ref_focusState.preserveHighlight;\n\n if (legendInFocus && preserveHighlight) {\n this._focusElement(this._getFocusedLegendItem(), false);\n this._focusState.preserveHighlight = false;\n }\n };\n\n Chart.prototype._setElementAccessibilityAttributes = function _setElementAccessibilityAttributes () {\n var titleOptions = this.options.title;\n var title = isString(titleOptions) ? titleOptions : (titleOptions.description || titleOptions.text);\n\n if (title) {\n this.element.setAttribute(\"aria-roledescription\", title);\n }\n };\n\n Chart.prototype._kendoExportVisual = function _kendoExportVisual (size) {\n if (size && size.width && size.height) {\n var chartArea = this._originalOptions.chartArea || {};\n var exportOptions = {\n width: chartArea.width || size.width,\n height: chartArea.height || size.height\n };\n\n return this.exportVisual(exportOptions);\n }\n\n return this.exportVisual();\n };\n\n Chart.prototype.exportVisual = function exportVisual (exportOptions) {\n var visual;\n if (exportOptions && (exportOptions.width || exportOptions.height || exportOptions.options)) {\n var currentOptions = this.options;\n var options = deepExtend({}, exportOptions.options, {\n chartArea: {\n width: exportOptions.width,\n height: exportOptions.height\n }\n });\n\n clearMissingValues(this._originalOptions, options);\n this.options = deepExtend({}, this._originalOptions, options);\n this._initTheme(this.options, this._theme);\n this.bindCategories();\n\n var model = this._getModel();\n\n model.renderVisual();\n triggerPaneRender(model._plotArea.panes);\n\n visual = model.visual;\n\n this.options = currentOptions;\n } else {\n visual = this.surface.exportVisual();\n }\n\n return visual;\n };\n\n Chart.prototype._sharedTooltip = function _sharedTooltip () {\n return this._plotArea instanceof CategoricalPlotArea && this.options.tooltip && this.options.tooltip.shared;\n };\n\n Chart.prototype._createPannable = function _createPannable () {\n var options = this.options;\n if (options.pannable !== false) {\n this._pannable = new Pannable(this._plotArea, options.pannable);\n }\n };\n\n Chart.prototype._createZoomSelection = function _createZoomSelection () {\n var zoomable = this.options.zoomable;\n var selection = (zoomable || {}).selection;\n if (zoomable !== false && selection !== false) {\n this._zoomSelection = new ZoomSelection(this, selection);\n }\n };\n\n Chart.prototype._createMousewheelZoom = function _createMousewheelZoom () {\n var zoomable = this.options.zoomable;\n var mousewheel = (zoomable || {}).mousewheel;\n if (zoomable !== false && mousewheel !== false) {\n this._mousewheelZoom = new MousewheelZoom(this, mousewheel);\n }\n };\n\n Chart.prototype._toggleDragZoomEvents = function _toggleDragZoomEvents () {\n var pannable = this.options.pannable;\n var zoomable = this.options.zoomable;\n var selection = (zoomable || {}).selection;\n var mousewheel = (zoomable || {}).mousewheel;\n var allowDrag = !pannable && (zoomable === false || selection === false) && !this.requiresHandlers([ DRAG_START, DRAG, DRAG_END ]);\n var allowZoom = (zoomable === false || mousewheel === false) && !this.requiresHandlers([ ZOOM_START, ZOOM, ZOOM_END ]);\n var element = this.element;\n\n if (this._dragZoomEnabled && allowDrag && allowZoom) {\n element.style.touchAction = this._touchAction || '';\n this._dragZoomEnabled = false;\n } else if (!this._dragZoomEnabled && !(allowDrag && allowZoom)) {\n element.style.touchAction = \"none\";\n\n this._dragZoomEnabled = true;\n }\n\n this._toggleDomEvents(!allowDrag, !allowZoom);\n };\n\n Chart.prototype._toggleDomEvents = function _toggleDomEvents (drag, zoom) {\n var domEvents = this.domEvents;\n if (!domEvents) {\n return;\n }\n\n if (domEvents.toggleDrag) {\n domEvents.toggleDrag(drag);\n }\n\n if (domEvents.toggleZoom) {\n domEvents.toggleZoom(zoom);\n }\n };\n\n Chart.prototype._createTooltip = function _createTooltip () {\n var ref = this;\n var tooltipOptions = ref.options.tooltip;\n var tooltip;\n\n if (this._sharedTooltip()) {\n tooltip = this._createSharedTooltip(tooltipOptions);\n } else {\n tooltip = new Tooltip(this.chartService, tooltipOptions);\n }\n\n return tooltip;\n };\n\n Chart.prototype._createSharedTooltip = function _createSharedTooltip (options) {\n return new SharedTooltip(this._plotArea, options);\n };\n\n Chart.prototype.applyDefaults = function applyDefaults (options, themeOptions) {\n applyAxisDefaults(options, themeOptions);\n applySeriesDefaults(options, themeOptions);\n };\n\n Chart.prototype.applySeriesColors = function applySeriesColors () {\n var options = this.options;\n var series = options.series;\n var colors = options.seriesColors || [];\n\n for (var i = 0; i < series.length; i++) {\n var currentSeries = series[i];\n var seriesColor = colors[i % colors.length];\n var defaults = currentSeries._defaults;\n\n currentSeries.color = currentSeries.color || seriesColor;\n if (defaults) {\n defaults.color = defaults.color || seriesColor;\n }\n }\n };\n\n Chart.prototype._getModel = function _getModel () {\n var options = this.options;\n var plotArea = this._createPlotArea();\n var model = new RootElement(this._modelOptions());\n model.chart = this;\n model._plotArea = plotArea;\n\n var title = Title.buildTitle(options.title);\n var subtitle = Title.buildTitle(options.subtitle, {\n align: options.title.align,\n position: options.title.position\n });\n model.append.apply(model, Title.orderTitles([title, subtitle]));\n\n if (options.legend && options.legend.visible) {\n var legend = new Legend(plotArea.options.legend, this.chartService);\n model.append(legend);\n model._legend = legend;\n }\n model.append(plotArea);\n model.reflow();\n\n return model;\n };\n\n Chart.prototype._modelOptions = function _modelOptions () {\n var options = this.options;\n var size = this.getSize();\n\n return deepExtend({\n transitions: options.transitions,\n width: size.width || DEFAULT_WIDTH,\n height: size.height || DEFAULT_HEIGHT\n }, options.chartArea);\n };\n\n Chart.prototype._createPlotArea = function _createPlotArea (skipSeries) {\n var options = this.options;\n\n var plotArea = PlotAreaFactory.current.create(skipSeries ? [] : options.series, options, this.chartService);\n\n return plotArea;\n };\n\n Chart.prototype._setupSelection = function _setupSelection () {\n var this$1 = this;\n\n var ref = this;\n var axes = ref._plotArea.axes;\n var selections = this._selections = [];\n\n for (var i = 0; i < axes.length; i++) {\n var axis = axes[i];\n var options = axis.options;\n if (axis instanceof CategoryAxis && options.select && !options.vertical) {\n var range = axis.range();\n\n var selection = new Selection(this$1, axis,\n deepExtend({ min: range.min, max: range.max }, options.select)\n );\n\n selections.push(selection);\n }\n }\n };\n\n Chart.prototype._selectStart = function _selectStart (e) {\n return this.trigger(SELECT_START, e);\n };\n\n Chart.prototype._select = function _select (e) {\n return this.trigger(SELECT, e);\n };\n\n Chart.prototype._selectEnd = function _selectEnd (e) {\n return this.trigger(SELECT_END, e);\n };\n\n Chart.prototype._initHandlers = function _initHandlers () {\n this._clickHandler = this._click.bind(this);\n this._keydownHandler = this._keydown.bind(this);\n this._focusHandler = this._focus.bind(this);\n this._blurHandler = this._blur.bind(this);\n this._mousedownHandler = this._mousedown.bind(this);\n this._mousewheelHandler = this._mousewheel.bind(this);\n this._mouseleaveHandler = this._mouseleave.bind(this);\n this._surfaceMouseenterHandler = this._mouseover.bind(this);\n this._surfaceMouseleaveHandler = this._mouseout.bind(this);\n\n this._mousemove = throttle(\n this._mousemove.bind(this),\n MOUSEMOVE_DELAY\n );\n };\n\n Chart.prototype.addObserver = function addObserver (observer) {\n if (observer) {\n this.observers.push(observer);\n }\n };\n\n Chart.prototype.removeObserver = function removeObserver (observer) {\n var index = this.observers.indexOf(observer);\n if (index >= 0) {\n this.observers.splice(index, 1);\n }\n };\n\n Chart.prototype.requiresHandlers = function requiresHandlers (eventNames) {\n var observers = this.observers;\n for (var idx = 0; idx < observers.length; idx++) {\n if (observers[idx].requiresHandlers(eventNames)) {\n return true;\n }\n }\n };\n\n Chart.prototype.trigger = function trigger (name, args) {\n if ( args === void 0 ) args = {};\n\n args.sender = this;\n\n if (name === SHOW_TOOLTIP) {\n args.anchor.point = this._toDocumentCoordinates(args.anchor.point);\n } else if (name === SERIES_OVER) {\n this._updateDrilldownPoint(args.point);\n } else if (name === SERIES_LEAVE) {\n this._resetDrilldownPoint();\n } else if (name === SERIES_CLICK) {\n this._focusPoint(args.point);\n this._startDrilldown(args.point);\n } else if (name === LEGEND_ITEM_CLICK) {\n this._focusLegendItem(args);\n }\n\n var observers = this.observers;\n var isDefaultPrevented = false;\n for (var idx = 0; idx < observers.length; idx++) {\n if (observers[idx].trigger(name, args)) {\n isDefaultPrevented = true;\n }\n }\n\n return isDefaultPrevented;\n };\n\n Chart.prototype._attachEvents = function _attachEvents () {\n var obj, obj$1;\n\n var element = this.element;\n\n this._touchAction = element.style.touchAction;\n\n bindEvents(element, ( obj = {}, obj[ CONTEXTMENU ] = this._clickHandler, obj[ MOUSEWHEEL ] = this._mousewheelHandler, obj[ MOUSELEAVE ] = this._mouseleaveHandler, obj[ KEYDOWN ] = this._keydownHandler, obj[ MOUSEDOWN ] = this._mousedownHandler, obj[ FOCUS ] = this._focusHandler, obj[ BLUR] = this._blurHandler, obj ));\n\n if (this._shouldAttachMouseMove()) {\n bindEvents(element, ( obj$1 = {}, obj$1[ MOUSEMOVE ] = this._mousemove, obj$1 ));\n }\n\n this.domEvents = DomEventsBuilder.create(this.element, {\n start: this._start.bind(this),\n move: this._move.bind(this),\n end: this._end.bind(this),\n tap: this._tap.bind(this),\n gesturestart: this._gesturestart.bind(this),\n gesturechange: this._gesturechange.bind(this),\n gestureend: this._gestureend.bind(this)\n });\n\n this._toggleDragZoomEvents();\n };\n\n Chart.prototype._mouseleave = function _mouseleave (e) {\n if (this._hoveredPoint) {\n this._hoveredPoint.out(this, e);\n this._hoveredPoint = null;\n }\n\n if (this._plotAreaHovered) {\n this._plotAreaHovered = false;\n this.trigger(PLOT_AREA_LEAVE);\n }\n\n if (this._hasInactiveOpacity() && this._activeChartInstance) {\n this._applySeriesOpacity(this._activeChartInstance.children, null, true);\n this._updateSeriesOpacity(null, true);\n }\n };\n\n Chart.prototype._cancelDomEvents = function _cancelDomEvents () {\n if (this.domEvents && this.domEvents.cancel) {\n this.domEvents.cancel();\n }\n };\n\n Chart.prototype._gesturestart = function _gesturestart (e) {\n if (this._mousewheelZoom && !this._stopChartHandlers(e)) {\n this._gestureDistance = e.distance;\n this._unsetActivePoint();\n this._clearFocusedElement();\n this.surface.suspendTracking();\n }\n };\n\n Chart.prototype._gestureend = function _gestureend (e) {\n if (this._zooming && !this._stopChartHandlers(e)) {\n if (this.surface) {\n this.surface.resumeTracking();\n }\n this._zooming = false;\n this.trigger(ZOOM_END, {});\n }\n };\n\n Chart.prototype._gesturechange = function _gesturechange (e) {\n var mousewheelZoom = this._mousewheelZoom;\n\n if (mousewheelZoom && !this._stopChartHandlers(e)) {\n e.preventDefault();\n var previousGestureDistance = this._gestureDistance;\n var scaleDelta = -e.distance / previousGestureDistance + 1;\n\n if (Math.abs(scaleDelta) >= 0.1) {\n scaleDelta = Math.round(scaleDelta * 10);\n\n this._gestureDistance = e.distance;\n var args = { delta: scaleDelta, axisRanges: axisRanges(this._plotArea.axes), originalEvent: e };\n if (this._zooming || !this.trigger(ZOOM_START, args)) {\n var coords = this._eventCoordinates(e);\n\n if (!this._zooming) {\n this._zooming = true;\n }\n\n var ranges = args.axisRanges = mousewheelZoom.updateRanges(scaleDelta, coords);\n if (ranges && !this.trigger(ZOOM, args)) {\n mousewheelZoom.zoom();\n }\n }\n }\n }\n };\n\n Chart.prototype._mouseout = function _mouseout (e) {\n if (e.element) {\n var element = this._drawingChartElement(e.element, e);\n\n if (element && element.leave) {\n element.leave(this, e.originalEvent);\n }\n }\n };\n\n Chart.prototype._start = function _start (e) {\n var coords = this._eventCoordinates(e);\n\n if (this._stopChartHandlers(e) || !this._plotArea.backgroundContainsPoint(coords)) {\n return;\n }\n\n\n if (this.requiresHandlers([ DRAG_START, DRAG, DRAG_END ])) {\n this._startNavigation(e, coords, DRAG_START);\n }\n\n if (this._pannable && this._pannable.start(e)) {\n this.surface.suspendTracking();\n this._unsetActivePoint();\n this._clearFocusedElement();\n this._suppressHover = true;\n this.chartService.panning = true;\n }\n\n if (this._zoomSelection) {\n if (this._zoomSelection.start(e)) {\n this.trigger(ZOOM_START, { axisRanges: axisRanges(this._plotArea.axes), originalEvent: e });\n }\n }\n };\n\n Chart.prototype._move = function _move (e) {\n var ref = this;\n var state = ref._navState;\n var pannable = ref._pannable;\n\n if (this._stopChartHandlers(e)) {\n return;\n }\n\n if (pannable) {\n var ranges = pannable.move(e);\n\n if (ranges && !this.trigger(DRAG, { axisRanges: ranges, originalEvent: e })) {\n pannable.pan();\n }\n } else if (state) {\n var ranges$1 = {};\n var axes = state.axes;\n\n for (var i = 0; i < axes.length; i++) {\n var currentAxis = axes[i];\n var axisName = currentAxis.options.name;\n if (axisName) {\n var axis = currentAxis.options.vertical ? e.y : e.x;\n var delta = axis.startLocation - axis.location;\n\n if (delta !== 0) {\n ranges$1[currentAxis.options.name] = currentAxis.translateRange(delta);\n }\n }\n }\n\n state.axisRanges = ranges$1;\n this.trigger(DRAG, {\n axisRanges: ranges$1,\n originalEvent: e\n });\n }\n\n if (this._zoomSelection) {\n this._zoomSelection.move(e);\n }\n };\n\n Chart.prototype._end = function _end (e) {\n if (this._stopChartHandlers(e)) {\n return;\n }\n\n var pannable = this._pannable;\n if (pannable && pannable.end(e)) {\n this.surface.resumeTracking();\n this.trigger(DRAG_END, {\n axisRanges: axisRanges(this._plotArea.axes),\n originalEvent: e\n });\n this._suppressHover = false;\n this.chartService.panning = false;\n } else {\n this._endNavigation(e, DRAG_END);\n }\n\n if (this._zoomSelection) {\n var ranges = this._zoomSelection.end(e);\n if (ranges && !this.trigger(ZOOM, { axisRanges: ranges, originalEvent: e })) {\n this._zoomSelection.zoom();\n this.trigger(ZOOM_END, { axisRanges: ranges, originalEvent: e });\n }\n }\n };\n\n Chart.prototype._stopChartHandlers = function _stopChartHandlers (e) {\n var selections = this._selections || [];\n if (!selections.length) {\n return false;\n }\n\n var coords = this._eventCoordinates(e);\n var pane = this._plotArea.paneByPoint(coords);\n if (pane) {\n for (var idx = 0; idx < selections.length; idx++) {\n if (selections[idx].onPane(pane)) {\n return true;\n }\n }\n }\n };\n\n Chart.prototype._mousewheelZoomRate = function _mousewheelZoomRate () {\n var zoomable = this.options.zoomable;\n var mousewheel = (zoomable || {}).mousewheel || {};\n return valueOrDefault(mousewheel.rate, MOUSEWHEEL_ZOOM_RATE);\n };\n\n Chart.prototype._mousewheel = function _mousewheel (e) {\n var this$1 = this;\n\n var delta = mousewheelDelta(e);\n var mousewheelZoom = this._mousewheelZoom;\n var coords = this._eventCoordinates(e);\n\n if (this._stopChartHandlers(e) || !this._plotArea.backgroundContainsPoint(coords)) {\n return;\n }\n\n if (mousewheelZoom) {\n var args = { delta: delta, axisRanges: axisRanges(this._plotArea.axes), originalEvent: e };\n if (this._zooming || !this.trigger(ZOOM_START, args)) {\n e.preventDefault();\n\n if (!this._zooming) {\n this._unsetActivePoint();\n this._clearFocusedElement();\n this.surface.suspendTracking();\n this._zooming = true;\n }\n\n if (this._mwTimeout) {\n clearTimeout(this._mwTimeout);\n }\n\n args.axisRanges = mousewheelZoom.updateRanges(delta, coords);\n if (args.axisRanges && !this.trigger(ZOOM, args)) {\n mousewheelZoom.zoom();\n }\n\n this._mwTimeout = setTimeout(function () {\n this$1.trigger(ZOOM_END, args);\n this$1._zooming = false;\n if (this$1.surface) {\n this$1.surface.resumeTracking();\n }\n }, MOUSEWHEEL_DELAY);\n }\n } else {\n var state = this._navState;\n if (!state) {\n var prevented = this._startNavigation(e, coords, ZOOM_START);\n if (!prevented) {\n state = this._navState;\n }\n }\n\n if (state) {\n var totalDelta = state.totalDelta || delta;\n state.totalDelta = totalDelta + delta;\n\n var axes = this._navState.axes;\n var ranges = {};\n\n for (var i = 0; i < axes.length; i++) {\n var currentAxis = axes[i];\n var axisName = currentAxis.options.name;\n if (axisName) {\n ranges[axisName] = currentAxis.scaleRange(-totalDelta * this$1._mousewheelZoomRate(), coords);\n }\n }\n\n this.trigger(ZOOM, {\n delta: delta,\n axisRanges: ranges,\n originalEvent: e\n });\n\n if (this._mwTimeout) {\n clearTimeout(this._mwTimeout);\n }\n\n this._mwTimeout = setTimeout(function () {\n this$1._endNavigation(e, ZOOM_END);\n }, MOUSEWHEEL_DELAY);\n }\n }\n };\n\n Chart.prototype._startNavigation = function _startNavigation (e, coords, chartEvent) {\n var plotArea = this._model._plotArea;\n var pane = plotArea.findPointPane(coords);\n var axes = plotArea.axes.slice(0);\n\n if (!pane) {\n return;\n }\n\n var ranges = axisRanges(axes);\n\n var prevented = this.trigger(chartEvent, {\n axisRanges: ranges,\n originalEvent: e\n });\n\n if (prevented) {\n this._cancelDomEvents();\n } else {\n this._suppressHover = true;\n this._unsetActivePoint();\n this._clearFocusedElement();\n this._navState = {\n axisRanges: ranges,\n pane: pane,\n axes: axes\n };\n }\n };\n\n Chart.prototype._endNavigation = function _endNavigation (e, chartEvent) {\n if (this._navState) {\n this.trigger(chartEvent, {\n axisRanges: this._navState.axisRanges,\n originalEvent: e\n });\n this._suppressHover = false;\n this._navState = null;\n }\n };\n\n Chart.prototype._getChartElement = function _getChartElement (e, match) {\n var element = this.surface.eventTarget(e);\n if (element) {\n return this._drawingChartElement(element, e, match);\n }\n };\n\n Chart.prototype._drawingChartElement = function _drawingChartElement (element, e, match) {\n var current = element;\n var chartElement;\n while (current && !chartElement) {\n chartElement = current.chartElement;\n current = current.parent;\n }\n\n if (chartElement) {\n if (chartElement.aliasFor) {\n chartElement = chartElement.aliasFor(e, this._eventCoordinates(e));\n }\n\n if (match) {\n chartElement = chartElement.closest(match);\n if (chartElement && chartElement.aliasFor) {\n chartElement = chartElement.aliasFor();\n }\n }\n\n return chartElement;\n }\n };\n\n Chart.prototype._eventCoordinates = function _eventCoordinates (e) {\n var coordinates = eventCoordinates(e);\n return this._toModelCoordinates(coordinates.x, coordinates.y);\n };\n\n Chart.prototype._elementPadding = function _elementPadding () {\n if (!this._padding) {\n var ref = elementStyles(this.element, [ \"paddingLeft\", \"paddingTop\" ]);\n var paddingLeft = ref.paddingLeft;\n var paddingTop = ref.paddingTop;\n this._padding = {\n top: paddingTop,\n left: paddingLeft\n };\n }\n\n return this._padding;\n };\n\n Chart.prototype._toDocumentCoordinates = function _toDocumentCoordinates (point) {\n var padding = this._elementPadding();\n var offset = elementOffset(this.element);\n\n return {\n left: round(point.x + padding.left + offset.left),\n top: round(point.y + padding.top + offset.top)\n };\n };\n\n // TODO: Breaking change due to peer version change\n // Reuse by exposing _surfacePoint on Surface\n Chart.prototype._toModelCoordinates = function _toModelCoordinates (clientX, clientY) {\n var element = this.element;\n var offset = elementOffset(element);\n var padding = this._elementPadding();\n var inverseTransform = elementScale(element).invert();\n var point = new geometry.Point(\n clientX - offset.left - padding.left,\n clientY - offset.top - padding.top\n ).transform(inverseTransform);\n\n return new Point(point.x, point.y);\n };\n\n Chart.prototype._tap = function _tap (e) {\n var this$1 = this;\n\n var drawingElement = this.surface.eventTarget(e);\n var element = this._drawingChartElement(drawingElement, e);\n var sharedTooltip = this._sharedTooltip();\n\n if (!this._startHover(drawingElement, e) && !sharedTooltip) {\n this._unsetActivePoint();\n }\n\n if (sharedTooltip) {\n this._trackSharedTooltip(this._eventCoordinates(e), e, true);\n }\n\n this._propagateClick(element, e);\n\n //part of fix for hover issue on windows touch\n this.handlingTap = true;\n setTimeout(function () {\n this$1.handlingTap = false;\n }, 0);\n };\n\n Chart.prototype._click = function _click (e) {\n var element = this._getChartElement(e);\n this._propagateClick(element, e);\n };\n\n Chart.prototype._propagateClick = function _propagateClick (element, e) {\n var this$1 = this;\n\n var current = element;\n while (current) {\n if (current.click) {\n current.click(this$1, e);\n }\n\n current = current.parent;\n }\n };\n\n Chart.prototype._isLegendBeforeChart = function _isLegendBeforeChart () {\n var ref = this;\n var legendPosition = ref.options.legend.position;\n var legend = ref._legend;\n\n return legend && legend.hasItems() && (legendPosition === TOP || legendPosition === LEFT);\n };\n\n Chart.prototype._focus = function _focus () {\n if (!this._preventInitialPointFocus) {\n if (this._isLegendBeforeChart()) {\n this._focusFirstLegendItem();\n } else {\n this._focusFirstPoint();\n }\n }\n\n this._preventInitialPointFocus = false;\n };\n\n Chart.prototype._keydown = function _keydown (e) {\n var ref = this;\n var ref_focusState = ref._focusState;\n var legendInFocus = ref_focusState.legendInFocus;\n var focusedElement = ref_focusState.focusedElement;\n var legend = ref._legend;\n\n if (e.key === TAB) {\n this._clearFocusedElement();\n var isLegendBeforeChart = this._isLegendBeforeChart();\n\n if (legendInFocus && isLegendBeforeChart !== e.shiftKey) {\n this._navigatePoints(e);\n } else if (!legendInFocus && isLegendBeforeChart === e.shiftKey && legend.hasItems()) {\n this._navigateLegend(e);\n }\n } else if (e.key === ESCAPE) {\n if (focusedElement) {\n e.stopPropagation();\n }\n\n if (this._tooltip && this._tooltip.visible) {\n this._hideTooltip();\n } else {\n this._blur();\n }\n } else if (e.key === ENTER) {\n if (focusedElement) {\n this._focusState.preserveHighlight = true;\n this._propagateClick(focusedElement, e);\n this._focusElement(focusedElement);\n }\n } else if (!legendInFocus) {\n this._navigatePoints(e);\n } else {\n this._navigateLegend(e);\n }\n };\n\n Chart.prototype._navigatePoints = function _navigatePoints (e) {\n var this$1 = this;\n\n var ref = this;\n var focusState = ref._focusState;\n var plotArea = ref._plotArea;\n\n focusState.legendInFocus = false;\n\n if (!focusState.focusedElement) {\n this._focusFirstPoint();\n e.preventDefault();\n return;\n }\n\n var moveFocus = function (point) {\n focusState.focusedPoint = point;\n\n this$1._focusElement(focusState.focusedPoint);\n this$1._displayTooltip(point);\n e.preventDefault();\n };\n\n switch (e.key) {\n case ARROW_RIGHT:\n moveFocus(plotArea.getPointToTheRight(focusState.focusedPoint));\n break;\n case ARROW_LEFT:\n moveFocus(plotArea.getPointToTheLeft(focusState.focusedPoint));\n break;\n case ARROW_DOWN:\n moveFocus(plotArea.getPointBelow(focusState.focusedPoint));\n break;\n case ARROW_UP:\n moveFocus(plotArea.getPointAbove(focusState.focusedPoint));\n break;\n default:\n break;\n }\n };\n\n Chart.prototype._navigateLegend = function _navigateLegend (e) {\n var this$1 = this;\n\n var ref = this;\n var focusState = ref._focusState;\n var legend = ref._legend;\n var rtl = ref.chartService.rtl;\n\n focusState.legendInFocus = true;\n\n if (!focusState.focusedElement) {\n this._focusFirstLegendItem();\n e.preventDefault();\n return;\n }\n\n var itemsLength = legend.getItems().length;\n var moveFocus = function (cycleFunc) {\n focusState.focusedLegendItemIndex = cycleFunc(\n focusState.focusedLegendItemIndex,\n itemsLength\n );\n this$1._focusElement(this$1._getFocusedLegendItem());\n e.preventDefault();\n };\n\n switch (e.key) {\n case ARROW_UP:\n case ARROW_LEFT:\n moveFocus(rtl ? cycleUp : cycleDown);\n break;\n case ARROW_DOWN:\n case ARROW_RIGHT:\n moveFocus(rtl ? cycleDown : cycleUp);\n break;\n default:\n break;\n }\n };\n\n Chart.prototype._focusFirstPoint = function _focusFirstPoint () {\n var point = this._focusState.focusedPoint = this._plotArea.getFirstPoint();\n\n if (point) {\n this._focusElement(point);\n this._displayTooltip(point);\n }\n };\n\n Chart.prototype._hasFocus = function _hasFocus () {\n return this.element.ownerDocument.activeElement === this.element;\n };\n\n Chart.prototype._mousedown = function _mousedown () {\n if (!this._hasFocus()) {\n this._preventInitialPointFocus = true;\n }\n };\n\n Chart.prototype._focusChart = function _focusChart () {\n if (!this._hasFocus()) {\n this._preventInitialPointFocus = true;\n this.element.focus();\n }\n };\n\n Chart.prototype._focusPoint = function _focusPoint (point) {\n this._focusState.focusedPoint = point;\n\n this._focusChart();\n\n this._focusElement(point, true);\n };\n\n Chart.prototype._focusFirstLegendItem = function _focusFirstLegendItem () {\n var ref = this;\n var focusState = ref._focusState;\n\n focusState.focusedLegendItemIndex = 0;\n this._focusElement(this._getFocusedLegendItem());\n focusState.legendInFocus = true;\n\n this._hideTooltip();\n };\n\n Chart.prototype._focusLegendItem = function _focusLegendItem (args) {\n var ref = this;\n var focusState = ref._focusState;\n\n focusState.focusedLegendItemIndex = this._legend\n .getItems()\n .findIndex(function (x) { return x.options.series.index === args.seriesIndex\n && x.options.pointIndex === args.pointIndex; });\n\n focusState.legendInFocus = true;\n\n this._focusChart();\n\n this._focusElement(this._getFocusedLegendItem(), true);\n };\n\n Chart.prototype._getFocusedLegendItem = function _getFocusedLegendItem () {\n var ref = this;\n var focusState = ref._focusState;\n var legend = ref._legend;\n\n return legend.getItems()[focusState.focusedLegendItemIndex];\n };\n\n Chart.prototype._focusElement = function _focusElement (element, omitHighlight) {\n var ref = this;\n var focusState = ref._focusState;\n\n this._clearFocusedElement();\n\n if (!element) {\n return;\n }\n\n focusState.focusedElement = element;\n\n this._setElementActiveDescendant(element);\n\n if (!omitHighlight) {\n element.focusVisual();\n\n if (focusState.legendInFocus) {\n var options = element.options;\n\n this._showSeriesInactiveOpacity(options.series.index, options.pointIndex);\n } else {\n this._showInactiveOpacity(element);\n }\n }\n };\n\n Chart.prototype._clearFocusedElement = function _clearFocusedElement () {\n var ref = this;\n var focusState = ref._focusState;\n\n if (!focusState) {\n return;\n }\n\n if (focusState.focusedElement) {\n focusState.focusedElement.clearFocusFromVisual();\n this._clearElementActiveDescendant();\n }\n\n focusState.focusedElement = null;\n };\n\n Chart.prototype._setElementActiveDescendant = function _setElementActiveDescendant (element) {\n if (this.options.renderAs === \"canvas\") {\n this._pseudoFocusedElement = this._createPseudoFocusedElement(element);\n this.element.append(this._pseudoFocusedElement);\n }\n\n this.element.setAttribute(ARIA_ACTIVE_DESCENDANT, element._id);\n };\n\n Chart.prototype._clearElementActiveDescendant = function _clearElementActiveDescendant () {\n if (this._pseudoFocusedElement) {\n this._pseudoFocusedElement.remove();\n this._pseudoFocusedElement = null;\n }\n\n this.element.removeAttribute(ARIA_ACTIVE_DESCENDANT);\n };\n\n Chart.prototype._createPseudoFocusedElement = function _createPseudoFocusedElement (element) {\n var pseudoElement = document.createElement(\"div\");\n var accessibilityOptions = element.options.accessibility;\n\n pseudoElement.id = element._id;\n pseudoElement.setAttribute(\"aria-label\", element.getAriaLabelText());\n pseudoElement.setAttribute(\"role\", accessibilityOptions.role);\n pseudoElement.setAttribute(\"aria-roledescription\", accessibilityOptions.ariaRoleDescription);\n\n var checked = accessibilityOptions.ariaChecked;\n if (defined(checked)) {\n pseudoElement.setAttribute(\"aria-checked\", checked);\n }\n\n return pseudoElement;\n };\n\n Chart.prototype._blur = function _blur () {\n this._focusState.legendInFocus = false;\n this._clearFocusedElement();\n this._hideInactiveOpacity();\n };\n\n Chart.prototype._startHover = function _startHover (element, e) {\n if (this._suppressHover) {\n return false;\n }\n\n var point = this._drawingChartElement(element, e, function(element) {\n return (element.hover || element.over) && !(element instanceof PlotAreaBase);\n });\n\n var activePoint = this._activePoint;\n\n this._updateHoveredPoint(point, e);\n\n if (point && activePoint !== point && point.hover) {\n this._activePoint = point;\n\n if (!this._sharedTooltip() && !point.hover(this, e)) {\n this._displayTooltip(point);\n\n this._showInactiveOpacity(point);\n }\n }\n\n return point;\n };\n\n Chart.prototype._displayTooltip = function _displayTooltip (point) {\n var tooltipOptions = deepExtend({}, this.options.tooltip, point.options.tooltip);\n if (tooltipOptions.visible) {\n this._tooltip.show(point);\n }\n };\n\n Chart.prototype._hideTooltip = function _hideTooltip () {\n if (this._tooltip) {\n this._tooltip.hide();\n }\n };\n\n Chart.prototype._displayInactiveOpacity = function _displayInactiveOpacity (activePoint, multipleSeries, highlightPoints) {\n var chartInstance = this._activeChartInstance = this._chartInstanceFromPoint(activePoint);\n if (!chartInstance) {\n return;\n }\n\n if (multipleSeries) {\n this._updateSeriesOpacity(activePoint);\n this._applySeriesOpacity(chartInstance.children, null, true);\n this._applySeriesOpacity(chartInstance.children, activePoint.series);\n this._highlight.show(highlightPoints || activePoint);\n } else {\n var inactivePoints;\n\n if (!chartInstance.supportsPointInactiveOpacity()) {\n this._highlight.show(activePoint);\n return;\n }\n\n inactivePoints = this._getInactivePoints(activePoint, chartInstance);\n\n if (inactivePoints && inactivePoints.length) {\n this._highlight.show(inactivePoints, 1 - this._getInactiveOpacityForSeries(activePoint.series));\n }\n }\n };\n\n Chart.prototype._getInactivePoints = function _getInactivePoints (activePoint, chartInstance) {\n var allPoints = this._getAllPointsOfType(chartInstance, activePoint.constructor);\n\n return allPoints.filter(function (point) { return point !== activePoint; });\n };\n\n Chart.prototype._getAllPointsOfType = function _getAllPointsOfType (container, type) {\n var this$1 = this;\n\n var points = [];\n\n for (var i = 0; i < container.children.length; i++) {\n var element = container.children[i];\n\n if (element.constructor === type) {\n points.push(element);\n } else if (element.children && element.children.length) {\n points = points.concat(this$1._getAllPointsOfType(element, type));\n }\n }\n\n return points;\n };\n\n Chart.prototype._updateHoveredPoint = function _updateHoveredPoint (point, e) {\n var hoveredPoint = this._hoveredPoint;\n\n if (hoveredPoint && hoveredPoint !== point) {\n hoveredPoint.out(this, e);\n this._hoveredPoint = null;\n }\n\n if (point && hoveredPoint !== point && point.over) {\n this._hoveredPoint = point;\n point.over(this, e);\n }\n };\n\n Chart.prototype._updateDrilldownPoint = function _updateDrilldownPoint (point) {\n if (!point || !point.series) {\n return;\n }\n\n var ref = SeriesBinder.current.bindPoint(point.series, null, point.dataItem);\n var fields = ref.fields;\n if (fields.drilldown) {\n this._drilldownState = { cursor: this.element.style.cursor };\n this.element.style.cursor = 'pointer';\n }\n };\n\n Chart.prototype._resetDrilldownPoint = function _resetDrilldownPoint () {\n if (this._drilldownState) {\n this.element.style.cursor = this._drilldownState.cursor;\n this._drilldownState = null;\n }\n };\n\n Chart.prototype._startDrilldown = function _startDrilldown (point) {\n if (!point || !point.series) {\n return;\n }\n\n var series = point.series;\n var ref = SeriesBinder.current.bindPoint(series, null, point.dataItem);\n var fields = ref.fields;\n var value = fields.drilldown;\n if (value) {\n var args = { series: series, point: point, value: value, sender: this };\n this.trigger(DRILLDOWN, args);\n }\n };\n\n Chart.prototype._updateSeriesOpacity = function _updateSeriesOpacity (point, resetOpacity) {\n var this$1 = this;\n\n var plotArea = this._plotArea;\n var length = plotArea.series.length;\n\n for (var i = 0; i < length; i++) {\n var currSeries = plotArea.series[i];\n var defaultOpacity = this$1._getDefaultOpacityForSeries(currSeries);\n var inactiveOpacity = this$1._getInactiveOpacityForSeries(currSeries);\n\n if (!resetOpacity && currSeries !== point.series) {\n currSeries.defaultOpacity = defaultOpacity;\n currSeries.opacity = inactiveOpacity;\n\n if (currSeries.line) {\n currSeries.line.opacity = inactiveOpacity;\n }\n } else {\n currSeries.opacity = defaultOpacity;\n\n if (currSeries.line) {\n currSeries.line.opacity = defaultOpacity;\n }\n }\n }\n };\n\n Chart.prototype._applySeriesOpacity = function _applySeriesOpacity (elements, activeSeries, reset, series) {\n var this$1 = this;\n\n for (var i = 0; i < elements.length; i++) {\n var element = elements[i];\n var currSeries = element.series || series;\n var shouldHighlight = currSeries && (currSeries.highlight || {}).visible;\n\n if (shouldHighlight && element.visual) {\n var opacity = series ? series.opacity : element.series.opacity;\n if (currSeries !== activeSeries || reset) {\n element.visual.opacity(reset ? 1 : opacity);\n }\n }\n\n if (element.children && element.children.length) {\n this$1._applySeriesOpacity(element.children, activeSeries, reset, element.series);\n }\n }\n };\n\n Chart.prototype._chartInstanceFromPoint = function _chartInstanceFromPoint (point) {\n var chartInstance = point.parent;\n\n while (chartInstance && !chartInstance.plotArea) {\n chartInstance = chartInstance.parent;\n }\n\n return chartInstance;\n };\n\n Chart.prototype._showInactiveOpacity = function _showInactiveOpacity (point) {\n var multipleSeries = this._plotArea.series.length > 1;\n var hasInactiveOpacity = this._hasInactiveOpacity();\n\n if (hasInactiveOpacity) {\n this._displayInactiveOpacity(point, multipleSeries);\n } else {\n this._highlight.show(point);\n }\n };\n\n Chart.prototype._hideInactiveOpacity = function _hideInactiveOpacity (point) {\n var multipleSeries = this._plotArea.series.length > 1;\n var hasInactiveOpacity = this._hasInactiveOpacity();\n if (hasInactiveOpacity) {\n if (multipleSeries && this._activeChartInstance) {\n this._updateSeriesOpacity(point, true);\n this._applySeriesOpacity(this._activeChartInstance.children, null, true);\n this._activeChartInstance = null;\n }\n this._highlight && this._highlight.hide();\n this._activePoint = null;\n }\n };\n\n Chart.prototype._hasInactiveOpacity = function _hasInactiveOpacity () {\n var hasDefaultInactiveOpacity = this.options.seriesDefaults.highlight.inactiveOpacity !== undefined;\n var hasInactiveOpacity = this.options.series.filter(function (s) { return s.highlight.inactiveOpacity !== undefined; } ).length > 0;\n return hasDefaultInactiveOpacity || hasInactiveOpacity;\n };\n\n Chart.prototype._getInactiveOpacityForSeries = function _getInactiveOpacityForSeries (series) {\n var defaultInactiveOpacity = this.options.seriesDefaults.highlight.inactiveOpacity;\n var seriesInactiveOpacity = series.highlight.inactiveOpacity;\n return seriesInactiveOpacity || defaultInactiveOpacity || series.opacity || DEFAULT_SERIES_OPACITY;\n };\n\n Chart.prototype._getDefaultOpacityForSeries = function _getDefaultOpacityForSeries (series) {\n return series.defaultOpacity || series.opacity || DEFAULT_SERIES_OPACITY;\n };\n\n Chart.prototype._mouseover = function _mouseover (e) {\n var obj;\n\n var point = this._startHover(e.element, e.originalEvent);\n\n if (point && point.tooltipTracking && !this._mouseMoveTrackHandler && !this._sharedTooltip()) {\n this._mouseMoveTrackHandler = this._mouseMoveTracking.bind(this);\n bindEvents(document, ( obj = {}, obj[ MOUSEMOVE ] = this._mouseMoveTrackHandler, obj ));\n }\n };\n\n Chart.prototype._mouseMoveTracking = function _mouseMoveTracking (e) {\n var obj;\n\n var ref = this;\n var options = ref.options;\n var tooltip = ref._tooltip;\n var highlight = ref._highlight;\n var point = ref._activePoint;\n var coords = this._eventCoordinates(e);\n\n if (this._plotArea.box.containsPoint(coords)) {\n if (point && point.tooltipTracking && point.series && point.parent.getNearestPoint) {\n var seriesPoint = point.parent.getNearestPoint(coords.x, coords.y, point.seriesIx);\n if (seriesPoint && seriesPoint !== point) {\n this._activePoint = seriesPoint;\n\n if (!seriesPoint.hover(this, e)) {\n var tooltipOptions = deepExtend({}, options.tooltip, seriesPoint.options.tooltip);\n if (tooltipOptions.visible) {\n tooltip.show(seriesPoint);\n }\n\n highlight.show(seriesPoint);\n }\n }\n }\n } else {\n unbindEvents(document, ( obj = {}, obj[ MOUSEMOVE ] = this._mouseMoveTrackHandler, obj ));\n this._unsetActivePoint();\n this._clearFocusedElement();\n this._mouseMoveTrackHandler = null;\n\n this._hideInactiveOpacity(point);\n }\n };\n\n Chart.prototype._mousemove = function _mousemove (e) {\n var coords = this._eventCoordinates(e);\n var plotArea = this._plotArea;\n\n this._trackCrosshairs(coords);\n\n if (plotArea.hover) {\n var overPlotArea = plotArea.backgroundContainsPoint(coords);\n if (overPlotArea) {\n this._plotAreaHovered = true;\n this._plotArea.hover(this, e);\n } else if (this._plotAreaHovered && !overPlotArea) {\n this._plotAreaHovered = false;\n this.trigger(PLOT_AREA_LEAVE);\n }\n }\n\n if (this._sharedTooltip()) {\n this._trackSharedTooltip(coords, e);\n }\n };\n\n Chart.prototype._trackCrosshairs = function _trackCrosshairs (coords) {\n var crosshairs = this._plotArea.crosshairs;\n\n for (var i = 0; i < crosshairs.length; i++) {\n var current = crosshairs[i];\n\n if (current.box.containsPoint(coords)) {\n current.showAt(coords);\n } else {\n current.hide();\n }\n }\n };\n\n Chart.prototype._trackSharedTooltip = function _trackSharedTooltip (coords, e, toggle) {\n if (this._suppressHover) {\n return;\n }\n\n var ref = this;\n var tooltipOptions = ref.options.tooltip;\n var plotArea = ref._plotArea;\n var categoryAxis = ref._plotArea.categoryAxis;\n var tooltip = ref._tooltip;\n var highlight = ref._highlight;\n\n if (plotArea.backgroundContainsPoint(coords)) {\n var index = categoryAxis.pointCategoryIndex(coords);\n if (index !== this._tooltipCategoryIx || (!this._sharedHighlight && toggle)) {\n var points = plotArea.pointsByCategoryIndex(index);\n var pointArgs = points.map(function(point) {\n return point.eventArgs(e);\n });\n var hoverArgs = pointArgs[0] || {};\n hoverArgs.categoryPoints = pointArgs;\n\n if (points.length > 0 && !this.trigger(SERIES_HOVER, hoverArgs)) {\n if (tooltipOptions.visible) {\n tooltip.showAt(points, coords);\n }\n\n highlight.show(points);\n\n this._sharedHighlight = true;\n } else {\n tooltip.hide();\n }\n\n this._tooltipCategoryIx = index;\n } else if (toggle && this._sharedHighlight) {\n highlight.hide();\n tooltip.hide();\n this._sharedHighlight = false;\n }\n } else if (this._sharedHighlight) {\n highlight.hide();\n tooltip.hide();\n this._tooltipCategoryIx = null;\n this._sharedHighlight = false;\n }\n };\n\n Chart.prototype.hideElements = function hideElements (options) {\n var plotArea = this._plotArea;\n this._mousemove.cancel();\n\n plotArea.hideCrosshairs();\n\n this._unsetActivePoint(options);\n };\n\n Chart.prototype._unsetActivePoint = function _unsetActivePoint (options) {\n var ref = this;\n var highlight = ref._highlight;\n\n this._activePoint = null;\n this._hoveredPoint = null;\n\n if (!options || !options.keepTooltipOpen) {\n this._hideTooltip();\n }\n\n this._tooltipCategoryIx = null;\n this._sharedHighlight = false;\n\n if (highlight) {\n highlight.hide();\n }\n };\n\n Chart.prototype._deferRedraw = function _deferRedraw () {\n this._redraw();\n };\n\n Chart.prototype._clearRedrawTimeout = function _clearRedrawTimeout () {\n if (this._redrawTimeout) {\n clearInterval(this._redrawTimeout);\n this._redrawTimeout = null;\n }\n };\n\n Chart.prototype.bindCategories = function bindCategories () {\n var this$1 = this;\n\n var options = this.options;\n var definitions = [].concat(options.categoryAxis);\n\n for (var axisIx = 0; axisIx < definitions.length; axisIx++) {\n var axis = definitions[axisIx];\n if (axis.autoBind !== false) {\n this$1.bindCategoryAxisFromSeries(axis, axisIx);\n }\n }\n };\n\n Chart.prototype.bindCategoryAxisFromSeries = function bindCategoryAxisFromSeries (axis, axisIx) {\n var this$1 = this;\n\n var uniqueCategories = new Set();\n var seriesOnAxis = this.options.series.filter(function (series) { return series.categoryAxis === axis.name || (!series.categoryAxis && axisIx === 0); });\n var hasCategoryBinding = seriesOnAxis.some(function (series) { return Boolean(series.categoryField); });\n var seriesWithData = seriesOnAxis.filter(function (series) { return series.data && series.data.length > 0; });\n var categorySamples = seriesWithData.map(function (series) { return SeriesBinder.current.bindPoint(series, 0).fields.category; });\n var dateAxis = categorySamples.reduce(function (result, firstCategory) { return result || isDateAxis(axis, firstCategory); }, false);\n var seriesWithBinding = seriesWithData.filter(function (series, seriesIx) { return series.categoryField || defined(categorySamples[seriesIx]); });\n\n seriesWithBinding.forEach(function (series) { return series.data.forEach(function (row, index) {\n var category = SeriesBinder.current.bindPoint(series, index).fields.category;\n if (dateAxis) {\n var date = parseDateCategory(category, row, this$1.chartService.intl);\n category = date ? date.getTime() : undefined;\n }\n\n uniqueCategories.add(category);\n }); });\n\n if (uniqueCategories.size > 0) {\n var categories = Array.from(uniqueCategories.values());\n if (dateAxis) {\n categories = categories.sort().map(function (time) { return time && new Date(time); });\n }\n\n axis.categories = categories;\n } else if (hasCategoryBinding) {\n axis.categories = [];\n }\n };\n\n Chart.prototype._isBindable = function _isBindable (series) {\n var valueFields = SeriesBinder.current.valueFields(series);\n var result = true;\n\n for (var i = 0; i < valueFields.length; i++) {\n var field = valueFields[i];\n if (field === VALUE) {\n field = \"field\";\n } else {\n field = field + \"Field\";\n }\n\n if (!defined(series[field])) {\n result = false;\n break;\n }\n }\n\n return result;\n };\n\n Chart.prototype._noTransitionsRedraw = function _noTransitionsRedraw () {\n var options = this.options;\n var transitionsState;\n\n if (options.transitions !== false) {\n options.transitions = false;\n transitionsState = true;\n }\n\n this._redraw();\n\n if (transitionsState) {\n options.transitions = true;\n }\n };\n\n Chart.prototype._legendItemHover = function _legendItemHover (seriesIndex, pointIndex) {\n this._showSeriesInactiveOpacity(seriesIndex, pointIndex);\n };\n\n Chart.prototype._showSeriesInactiveOpacity = function _showSeriesInactiveOpacity (seriesIndex, pointIndex) {\n var ref = this;\n var plotArea = ref._plotArea;\n var highlight = ref._highlight;\n var currentSeries = (plotArea.srcSeries || plotArea.series)[seriesIndex];\n var items;\n\n if (inArray(currentSeries.type, [ PIE, DONUT, FUNNEL, PYRAMID ])) {\n items = plotArea.findPoint(function(point) {\n return point.series.index === seriesIndex && point.index === pointIndex;\n });\n } else {\n items = plotArea.pointsBySeriesIndex(seriesIndex);\n }\n\n if (this._hasInactiveOpacity() && currentSeries.visible && items) {\n var multipleSeries = plotArea.series.length > 1;\n var point = items.length ? items[0] : items;\n\n this._displayInactiveOpacity(point, multipleSeries, items);\n } else {\n highlight.show(items);\n }\n };\n\n Chart.prototype._shouldAttachMouseMove = function _shouldAttachMouseMove () {\n return this._plotArea.crosshairs.length || (this._tooltip && this._sharedTooltip()) || this.requiresHandlers([ PLOT_AREA_HOVER, PLOT_AREA_LEAVE ]);\n };\n\n Chart.prototype.updateMouseMoveHandler = function updateMouseMoveHandler () {\n var obj, obj$1;\n\n unbindEvents(this.element, ( obj = {}, obj[ MOUSEMOVE ] = this._mousemove, obj ));\n\n if (this._shouldAttachMouseMove()) {\n bindEvents(this.element, ( obj$1 = {}, obj$1[ MOUSEMOVE ] = this._mousemove, obj$1 ));\n }\n };\n\n Chart.prototype.applyOptions = function applyOptions (options, theme) {\n clearMissingValues(this._originalOptions, options);\n this._originalOptions = deepExtend(this._originalOptions, options);\n this.options = deepExtend({}, this._originalOptions);\n\n if (theme) {\n this._theme = theme;\n this.chartService.theme = theme;\n }\n this._initTheme(this.options, this._theme);\n\n this._toggleDragZoomEvents();\n };\n\n Chart.prototype.setOptions = function setOptions (options, theme) {\n this.applyOptions(options, theme);\n this.bindCategories();\n this.redraw();\n this.updateMouseMoveHandler();\n };\n\n Chart.prototype.setDirection = function setDirection (rtl) {\n this.chartService.rtl = Boolean(rtl);\n if (this.surface && this.surface.type === 'svg') {\n this._destroySurface();\n }\n };\n\n Chart.prototype.setIntlService = function setIntlService (intl) {\n this.chartService.intl = intl;\n };\n\n Chart.prototype.noTransitionsRedraw = function noTransitionsRedraw () {\n this._noTransitionsRedraw();\n };\n\n Chart.prototype.destroy = function destroy () {\n var obj, obj$1;\n\n this._destroyed = true;\n\n unbindEvents(this.element, ( obj = {}, obj[ CONTEXTMENU ] = this._clickHandler, obj[ MOUSEWHEEL ] = this._mousewheelHandler, obj[ MOUSEMOVE ] = this._mousemove, obj[ MOUSELEAVE ] = this._mouseleaveHandler, obj[ KEYDOWN ] = this._keydownHandler, obj[ FOCUS ] = this._focusHandler, obj[ BLUR] = this._blurHandler, obj ));\n\n if (this.domEvents) {\n this.domEvents.destroy();\n delete this.domEvents;\n }\n\n if (this._mouseMoveTrackHandler) {\n unbindEvents(document, ( obj$1 = {}, obj$1[ MOUSEMOVE ] = this._mouseMoveTrackHandler, obj$1 ));\n }\n\n this._focusState = null;\n\n this._destroyView();\n\n this._destroySurface();\n\n this._clearRedrawTimeout();\n };\n\n Chart.prototype._destroySurface = function _destroySurface () {\n var surface = this.surface;\n if (surface) {\n surface.unbind(\"mouseenter\", this._surfaceMouseenterHandler);\n surface.unbind(\"mouseleave\", this._surfaceMouseleaveHandler);\n surface.destroy();\n\n this.surface = null;\n }\n };\n\n Chart.prototype._destroySelections = function _destroySelections () {\n var selections = this._selections;\n\n if (selections) {\n while (selections.length > 0) {\n selections.shift().destroy();\n }\n }\n };\n\n Chart.prototype._destroyView = function _destroyView () {\n var model = this._model;\n\n if (model) {\n model.destroy();\n this._model = null;\n }\n\n this._unsetActivePoint();\n this._clearFocusedElement();\n this._resetDrilldownPoint();\n this._destroySelections();\n\n if (this._tooltip) {\n this._tooltip.destroy();\n }\n\n if (this._highlight) {\n this._highlight.destroy();\n }\n\n if (this._zoomSelection) {\n this._zoomSelection.destroy();\n delete this._zoomSelection;\n }\n\n if (this._pannable) {\n this._pannable.destroy();\n delete this._pannable;\n }\n\n if (this._mousewheelZoom) {\n this._mousewheelZoom.destroy();\n delete this._mousewheelZoom;\n }\n };\n\n return Chart;\n}(Class));\n\nfunction resolveAxisAliases(options) {\n var aliases = AXIS_NAMES;\n\n for (var idx = 0; idx < aliases.length; idx++) {\n var alias = aliases[idx] + \"Axes\";\n if (options[alias]) {\n options[aliases[idx] + \"Axis\"] = options[alias];\n delete options[alias];\n }\n }\n}\n\nfunction pointByCategoryName(points, name) {\n if (points) {\n for (var idx = 0; idx < points.length; idx++) {\n if (points[idx].category === name) {\n return [ points[idx] ];\n }\n }\n }\n}\n\nfunction applyAxisDefaults(options, themeOptions) {\n var themeAxisDefaults = ((themeOptions || {}).axisDefaults) || {};\n var axisName, axisDefaults, axes;\n\n function mapAxisOptions(axisOptions) {\n var axisColor = (axisOptions || {}).color || axisDefaults.color;\n var result = deepExtend({},\n themeAxisDefaults,\n themeAxisDefaults[axisName],\n axisDefaults,\n axisDefaults[axisName], {\n line: { color: axisColor },\n labels: { color: axisColor },\n title: { color: axisColor }\n },\n axisOptions\n );\n\n delete result[axisName];\n\n return result;\n }\n\n for (var idx = 0; idx < AXIS_NAMES.length; idx++) {\n axisName = AXIS_NAMES[idx] + \"Axis\";\n axisDefaults = options.axisDefaults || {};\n axes = [].concat(options[axisName]);\n\n axes = axes.map(mapAxisOptions);\n\n options[axisName] = axes.length > 1 ? axes : axes[0];\n }\n}\n\nfunction applySeriesDefaults(options, themeOptions) {\n var series = options.series;\n var seriesLength = series.length;\n var seriesDefaults = options.seriesDefaults;\n var commonDefaults = deepExtend({}, options.seriesDefaults);\n var themeSeriesDefaults = themeOptions ? deepExtend({}, themeOptions.seriesDefaults) : {};\n var commonThemeDefaults = deepExtend({}, themeSeriesDefaults);\n\n cleanupNestedSeriesDefaults(commonDefaults);\n cleanupNestedSeriesDefaults(commonThemeDefaults);\n\n for (var i = 0; i < seriesLength; i++) {\n var seriesType = series[i].type || options.seriesDefaults.type;\n\n var baseOptions = deepExtend(\n { data: [] },\n commonThemeDefaults,\n themeSeriesDefaults[seriesType],\n { tooltip: options.tooltip },\n commonDefaults,\n seriesDefaults[seriesType]\n );\n\n series[i]._defaults = baseOptions;\n series[i] = deepExtend({}, baseOptions, series[i]);\n series[i].data = series[i].data || [];\n }\n}\n\nfunction cleanupNestedSeriesDefaults(seriesDefaults) {\n delete seriesDefaults.bar;\n delete seriesDefaults.column;\n delete seriesDefaults.rangeColumn;\n delete seriesDefaults.line;\n delete seriesDefaults.verticalLine;\n delete seriesDefaults.pie;\n delete seriesDefaults.donut;\n delete seriesDefaults.area;\n delete seriesDefaults.verticalArea;\n delete seriesDefaults.scatter;\n delete seriesDefaults.scatterLine;\n delete seriesDefaults.bubble;\n delete seriesDefaults.candlestick;\n delete seriesDefaults.ohlc;\n delete seriesDefaults.boxPlot;\n delete seriesDefaults.bullet;\n delete seriesDefaults.verticalBullet;\n delete seriesDefaults.polarArea;\n delete seriesDefaults.polarLine;\n delete seriesDefaults.radarArea;\n delete seriesDefaults.radarLine;\n delete seriesDefaults.waterfall;\n}\n\n\nfunction axisRanges(axes) {\n var ranges = {};\n\n for (var i = 0; i < axes.length; i++) {\n var axis = axes[i];\n var axisName = axis.options.name;\n if (axisName) {\n ranges[axisName] = axis.range();\n }\n }\n\n return ranges;\n}\n\nvar DATA_FIELDS = [ 'data', 'categories' ];\n\nfunction clearMissingValues(originalOptions, options) {\n for (var field in options) {\n if (!inArray(field, DATA_FIELDS) && hasOwnProperty(options, field)) {\n var fieldValue = options[field];\n var originalValue = originalOptions[field];\n if (defined(originalValue)) {\n var nullValue = fieldValue === null;\n if ((nullValue || !defined(fieldValue))) {\n delete originalOptions[field];\n if (nullValue) {\n delete options[field];\n }\n } else if (originalValue && isObject(fieldValue)) {\n if (isObject(originalValue)) {\n clearMissingValues(originalValue, fieldValue);\n }\n }\n }\n }\n }\n}\n\nfunction triggerPaneRender(panes) {\n for (var idx = 0; idx < panes.length; idx++) {\n panes[idx].notifyRender();\n }\n}\n\nsetDefaultOptions(Chart, {\n renderAs: \"\",\n chartArea: {},\n legend: {\n visible: true,\n labels: {},\n accessibility: {\n highlight: {\n border: {\n opacity: 1,\n color: BLACK,\n width: 2\n }\n }\n }\n },\n categoryAxis: {},\n seriesDefaults: {\n type: COLUMN,\n data: [],\n highlight: {\n visible: true\n },\n labels: {},\n negativeValues: {\n visible: false\n },\n accessibility: {\n highlight: {\n border: {\n opacity: 1,\n width: 2\n },\n zIndex: 200\n }\n }\n },\n series: [],\n seriesColors: null,\n tooltip: {\n visible: false\n },\n transitions: true,\n valueAxis: {},\n plotArea: {},\n title: {},\n xAxis: {},\n yAxis: {},\n panes: [ {} ],\n pannable: false,\n zoomable: false\n});\n\nexport default Chart;\n","import { SharedTooltip as ChartSharedTooltip } from '../chart';\nimport { Point } from '../core';\nvar TOP_OFFSET = -2;\n\nvar SharedTooltip = (function (ChartSharedTooltip) {\n function SharedTooltip () {\n ChartSharedTooltip.apply(this, arguments);\n }\n\n if ( ChartSharedTooltip ) SharedTooltip.__proto__ = ChartSharedTooltip;\n SharedTooltip.prototype = Object.create( ChartSharedTooltip && ChartSharedTooltip.prototype );\n SharedTooltip.prototype.constructor = SharedTooltip;\n\n SharedTooltip.prototype._slotAnchor = function _slotAnchor (coords, slot) {\n var axis = this.plotArea.categoryAxis;\n var vertical = axis.options.vertical;\n var align = vertical ? {\n horizontal: \"left\",\n vertical: \"center\"\n } : {\n horizontal: \"center\",\n vertical: \"bottom\"\n };\n\n var point;\n\n if (vertical) {\n point = new Point(this.plotArea.box.x2, slot.center().y);\n } else {\n point = new Point(slot.center().x, TOP_OFFSET);\n }\n\n return {\n point: point,\n align: align\n };\n };\n\n SharedTooltip.prototype._defaultAnchor = function _defaultAnchor (point, slot) {\n return this._slotAnchor({}, slot);\n };\n\n return SharedTooltip;\n}(ChartSharedTooltip));\n\nexport default SharedTooltip;","import { Chart } from '../chart';\nimport { BAR, BULLET, PIE, COLUMN, VERTICAL_BULLET } from '../chart/constants';\nimport { addClass, deepExtend, elementSize, getSpacing, inArray, isArray, isNumber, setDefaultOptions } from '../common';\nimport SharedTooltip from './shared-tooltip';\n\nvar DEAULT_BAR_WIDTH = 150;\nvar DEAULT_BULLET_WIDTH = 150;\nvar NO_CROSSHAIR = [ BAR, BULLET ];\n\nfunction hide(children) {\n var state = [];\n for (var idx = 0; idx < children.length; idx++) {\n var child = children[idx];\n state[idx] = child.style.display;\n child.style.display = \"none\";\n }\n\n return state;\n}\n\nfunction show(children, state) {\n for (var idx = 0; idx < children.length; idx++) {\n children[idx].style.display = state[idx];\n }\n}\n\nfunction wrapNumber(value) {\n return isNumber(value) ? [ value ] : value;\n}\n\nvar Sparkline = (function (Chart) {\n function Sparkline () {\n Chart.apply(this, arguments);\n }\n\n if ( Chart ) Sparkline.__proto__ = Chart;\n Sparkline.prototype = Object.create( Chart && Chart.prototype );\n Sparkline.prototype.constructor = Sparkline;\n\n Sparkline.prototype._setElementClass = function _setElementClass (element) {\n addClass(element, 'k-sparkline');\n };\n\n Sparkline.prototype._initElement = function _initElement (element) {\n Chart.prototype._initElement.call(this, element);\n\n this._initialWidth = Math.floor(elementSize(element).width);\n };\n\n Sparkline.prototype._resize = function _resize () {\n var element = this.element;\n var state = hide(element.childNodes);\n\n this._initialWidth = Math.floor(elementSize(element).width);\n\n show(element.childNodes, state);\n\n Chart.prototype._resize.call(this);\n };\n\n Sparkline.prototype._modelOptions = function _modelOptions () {\n var chartOptions = this.options;\n var stage = this._surfaceWrap();\n var displayState = hide(stage.childNodes);\n\n var space = document.createElement('span');\n space.innerHTML = ' ';\n\n stage.appendChild(space);\n\n var options = deepExtend({\n width: this._autoWidth,\n height: elementSize(stage).height,\n transitions: chartOptions.transitions\n }, chartOptions.chartArea, {\n inline: true,\n align: false\n });\n\n elementSize(stage, {\n width: options.width,\n height: options.height\n });\n\n stage.removeChild(space);\n\n show(stage.childNodes, displayState);\n\n if (this.surface) {\n this.surface.resize();\n }\n\n return options;\n };\n\n Sparkline.prototype._surfaceWrap = function _surfaceWrap () {\n if (!this.stage) {\n var stage = this.stage = document.createElement('span');\n this.element.appendChild(stage);\n }\n return this.stage;\n };\n\n Sparkline.prototype._createPlotArea = function _createPlotArea (skipSeries) {\n var plotArea = Chart.prototype._createPlotArea.call(this, skipSeries);\n this._autoWidth = this._initialWidth || this._calculateWidth(plotArea);\n\n return plotArea;\n };\n\n Sparkline.prototype._calculateWidth = function _calculateWidth (plotArea) {\n var options = this.options;\n var margin = getSpacing(options.chartArea.margin);\n var charts = plotArea.charts;\n var stage = this._surfaceWrap();\n var total = 0;\n\n\n for (var i = 0; i < charts.length; i++) {\n var currentChart = charts[i];\n var firstSeries = (currentChart.options.series || [])[0];\n if (!firstSeries) {\n continue;\n }\n\n if (firstSeries.type === BAR) {\n return DEAULT_BAR_WIDTH;\n }\n\n if (firstSeries.type === BULLET) {\n return DEAULT_BULLET_WIDTH;\n }\n\n if (firstSeries.type === PIE) {\n return elementSize(stage).height;\n }\n\n var categoryAxis = currentChart.categoryAxis;\n if (categoryAxis) {\n var pointsCount = categoryAxis.categoriesCount() *\n (!currentChart.options.isStacked && inArray(firstSeries.type, [ COLUMN, VERTICAL_BULLET ]) ? currentChart.seriesOptions.length : 1);\n\n total = Math.max(total, pointsCount);\n }\n }\n\n var size = total * options.pointWidth;\n if (size > 0) {\n size += margin.left + margin.right;\n }\n\n return size;\n };\n\n Sparkline.prototype._createSharedTooltip = function _createSharedTooltip (options) {\n return new SharedTooltip(this._plotArea, options);\n };\n\n Sparkline.normalizeOptions = function normalizeOptions (userOptions) {\n var options = wrapNumber(userOptions);\n\n if (isArray(options)) {\n options = { seriesDefaults: { data: options } };\n } else {\n options = deepExtend({}, options);\n }\n\n if (!options.series) {\n options.series = [ { data: wrapNumber(options.data) } ];\n }\n\n deepExtend(options, {\n seriesDefaults: {\n type: options.type\n }\n });\n\n if (inArray(options.series[0].type, NO_CROSSHAIR) ||\n inArray(options.seriesDefaults.type, NO_CROSSHAIR)) {\n options = deepExtend({}, {\n categoryAxis: {\n crosshair: {\n visible: false\n }\n }\n }, options);\n }\n\n return options;\n };\n\n return Sparkline;\n}(Chart));\n\nsetDefaultOptions(Sparkline, {\n chartArea: {\n margin: 2\n },\n axisDefaults: {\n visible: false,\n majorGridLines: {\n visible: false\n },\n valueAxis: {\n narrowRange: true\n }\n },\n seriesDefaults: {\n type: \"line\",\n area: {\n line: {\n width: 0.5\n }\n },\n bar: {\n stack: true\n },\n padding: 2,\n width: 0.5,\n overlay: {\n gradient: null\n },\n highlight: {\n visible: false\n },\n border: {\n width: 0\n },\n markers: {\n size: 2,\n visible: false\n }\n },\n tooltip: {\n visible: true,\n shared: true\n },\n categoryAxis: {\n crosshair: {\n visible: true,\n tooltip: {\n visible: false\n }\n }\n },\n legend: {\n visible: false\n },\n transitions: false,\n\n pointWidth: 5,\n\n panes: [ { clip: false } ]\n});\n\nexport default Sparkline;","import { drawing as draw } from '@progress/kendo-drawing';\n\nimport { interpolateValue, elementStyles } from '../common';\n\nvar FadeOutAnimation = (function (superclass) {\n function FadeOutAnimation () {\n superclass.apply(this, arguments);\n }\n\n if ( superclass ) FadeOutAnimation.__proto__ = superclass;\n FadeOutAnimation.prototype = Object.create( superclass && superclass.prototype );\n FadeOutAnimation.prototype.constructor = FadeOutAnimation;\n\n FadeOutAnimation.prototype.setup = function setup () {\n this._initialOpacity = parseFloat(elementStyles(this.element, 'opacity').opacity);\n };\n\n FadeOutAnimation.prototype.step = function step (pos) {\n elementStyles(this.element, {\n opacity: String(interpolateValue(this._initialOpacity, 0, pos))\n });\n };\n\n FadeOutAnimation.prototype.abort = function abort () {\n superclass.prototype.abort.call(this);\n elementStyles(this.element, {\n display: 'none',\n opacity: String(this._initialOpacity)\n });\n };\n\n FadeOutAnimation.prototype.cancel = function cancel () {\n superclass.prototype.abort.call(this);\n elementStyles(this.element, {\n opacity: String(this._initialOpacity)\n });\n };\n\n return FadeOutAnimation;\n}(draw.Animation));\n\nexport default FadeOutAnimation;","import { Class, deepExtend, elementStyles, getTemplate, setDefaultOptions } from '../common';\nimport { toDate, toTime } from '../date-utils';\nimport FadeOutAnimation from './fade-out-animation';\n\nfunction createDiv(className, style) {\n var div = document.createElement(\"div\");\n div.className = className;\n if (style) {\n div.style.cssText = style;\n }\n\n return div;\n}\n\nvar NavigatorHint = (function (Class) {\n function NavigatorHint(container, chartService, options) {\n Class.call(this);\n\n this.options = deepExtend({}, this.options, options);\n this.container = container;\n this.chartService = chartService;\n\n var padding = elementStyles(container, [ \"paddingLeft\", \"paddingTop\" ]);\n this.chartPadding = {\n top: padding.paddingTop,\n left: padding.paddingLeft\n };\n\n this.createElements();\n container.appendChild(this.element);\n }\n\n if ( Class ) NavigatorHint.__proto__ = Class;\n NavigatorHint.prototype = Object.create( Class && Class.prototype );\n NavigatorHint.prototype.constructor = NavigatorHint;\n\n NavigatorHint.prototype.createElements = function createElements () {\n var element = this.element = createDiv('k-navigator-hint', 'display: none; position: absolute; top: 1px; left: 1px;');\n var tooltip = this.tooltip = createDiv('k-tooltip k-chart-tooltip');\n var scroll = this.scroll = createDiv('k-scroll');\n\n tooltip.innerHTML = ' ';\n\n element.appendChild(tooltip);\n element.appendChild(scroll);\n };\n\n NavigatorHint.prototype.show = function show (from, to, bbox) {\n var ref = this;\n var element = ref.element;\n var options = ref.options;\n var scroll = ref.scroll;\n var tooltip = ref.tooltip;\n var middle = toDate(toTime(from) + toTime(to - from) / 2);\n var scrollWidth = bbox.width() * 0.4;\n var minPos = bbox.center().x - scrollWidth;\n var maxPos = bbox.center().x;\n var posRange = maxPos - minPos;\n var range = options.max - options.min;\n var scale = posRange / range;\n var offset = middle - options.min;\n var text = this.chartService.intl.format(options.format, from, to);\n var template = getTemplate(options);\n\n this.clearHideTimeout();\n\n if (!this._visible) {\n elementStyles(element, {\n visibility: 'hidden',\n display: 'block'\n });\n this._visible = true;\n }\n\n if (template) {\n text = template({\n from: from,\n to: to\n });\n }\n\n tooltip.innerHTML = text;\n elementStyles(tooltip, {\n left: bbox.center().x - tooltip.offsetWidth / 2,\n top: bbox.y1\n });\n\n var tooltipStyle = elementStyles(tooltip, [ 'marginTop', 'borderTopWidth', 'height' ]);\n\n elementStyles(scroll, {\n width: scrollWidth,\n left: minPos + offset * scale,\n top: bbox.y1 + tooltipStyle.marginTop + tooltipStyle.borderTopWidth + tooltipStyle.height / 2\n });\n\n elementStyles(element, {\n visibility: 'visible'\n });\n };\n\n NavigatorHint.prototype.clearHideTimeout = function clearHideTimeout () {\n if (this._hideTimeout) {\n clearTimeout(this._hideTimeout);\n }\n\n if (this._hideAnimation) {\n this._hideAnimation.cancel();\n }\n };\n\n NavigatorHint.prototype.hide = function hide () {\n var this$1 = this;\n\n this.clearHideTimeout();\n\n this._hideTimeout = setTimeout(function () {\n this$1._visible = false;\n this$1._hideAnimation = new FadeOutAnimation(this$1.element);\n this$1._hideAnimation.setup();\n this$1._hideAnimation.play();\n }, this.options.hideDelay);\n };\n\n NavigatorHint.prototype.destroy = function destroy () {\n this.clearHideTimeout();\n if (this.container) {\n this.container.removeChild(this.element);\n }\n delete this.container;\n delete this.chartService;\n delete this.element;\n delete this.tooltip;\n delete this.scroll;\n };\n\n return NavigatorHint;\n}(Class));\n\nsetDefaultOptions(NavigatorHint, {\n format: \"{0:d} - {1:d}\",\n hideDelay: 500\n});\n\nexport default NavigatorHint;","var NAVIGATOR_PANE = \"_navigator\";\nvar NAVIGATOR_AXIS = NAVIGATOR_PANE;\nvar DEFAULT_PANE = \"_default\";\n\nexport { NAVIGATOR_AXIS, NAVIGATOR_PANE, DEFAULT_PANE };\n","import NavigatorHint from './navigator-hint';\nimport { Selection, filterSeriesByType } from '../chart';\nimport { DRAG, DRAG_END, EQUALLY_SPACED_SERIES, ZOOM, ZOOM_END } from '../chart/constants';\nimport { DateCategoryAxis } from '../core';\nimport { addDuration, parseDate, toDate, toTime } from '../date-utils';\nimport { Class, deepExtend, defined, getTemplate, InstanceObserver, last, limitValue, valueOrDefault } from '../common';\nimport { NAVIGATOR_AXIS, NAVIGATOR_PANE, DEFAULT_PANE } from './constants';\n\nvar ZOOM_ACCELERATION = 3;\n\nvar Navigator = (function (Class) {\n function Navigator(chart) {\n var obj;\n\n Class.call(this);\n\n this.chart = chart;\n var options = this.options = deepExtend({}, this.options, chart.options.navigator);\n var select = options.select;\n if (select) {\n select.from = this.parseDate(select.from);\n select.to = this.parseDate(select.to);\n }\n\n if (!defined(options.hint.visible)) {\n options.hint.visible = options.visible;\n }\n\n this.chartObserver = new InstanceObserver(this, ( obj = {}, obj[DRAG] = '_drag', obj[DRAG_END] = '_dragEnd', obj[ZOOM] = '_zoom', obj[ZOOM_END] = '_zoomEnd', obj ));\n chart.addObserver(this.chartObserver);\n }\n\n if ( Class ) Navigator.__proto__ = Class;\n Navigator.prototype = Object.create( Class && Class.prototype );\n Navigator.prototype.constructor = Navigator;\n\n Navigator.prototype.parseDate = function parseDate$1 (value) {\n return parseDate(this.chart.chartService.intl, value);\n };\n\n Navigator.prototype.clean = function clean () {\n if (this.selection) {\n this.selection.destroy();\n this.selection = null;\n }\n\n if (this.hint) {\n this.hint.destroy();\n this.hint = null;\n }\n };\n\n Navigator.prototype.destroy = function destroy () {\n if (this.chart) {\n this.chart.removeObserver(this.chartObserver);\n delete this.chart;\n }\n\n this.clean();\n };\n\n Navigator.prototype.redraw = function redraw () {\n this._redrawSelf();\n this.initSelection();\n };\n\n Navigator.prototype.initSelection = function initSelection () {\n var ref = this;\n var chart = ref.chart;\n var options = ref.options;\n var axis = this.mainAxis();\n var ref$1 = axis.roundedRange();\n var min = ref$1.min;\n var max = ref$1.max;\n var ref$2 = options.select;\n var from = ref$2.from;\n var to = ref$2.to;\n var mousewheel = ref$2.mousewheel;\n var axisClone = clone(axis);\n\n if (axis.categoriesCount() === 0) {\n return;\n }\n\n this.clean();\n\n // \"Freeze\" the selection axis position until the next redraw\n axisClone.box = axis.box;\n\n this.selection = new Selection(chart, axisClone, {\n min: min,\n max: max,\n from: from || min,\n to: to || max,\n mousewheel: valueOrDefault(mousewheel, { zoom: \"left\" }),\n visible: options.visible\n }, new InstanceObserver(this, {\n selectStart: '_selectStart',\n select: '_select',\n selectEnd: '_selectEnd'\n }));\n\n if (options.hint.visible) {\n this.hint = new NavigatorHint(chart.element, chart.chartService, {\n min: min,\n max: max,\n template: getTemplate(options.hint),\n format: options.hint.format\n });\n }\n };\n\n Navigator.prototype.setRange = function setRange () {\n var plotArea = this.chart._createPlotArea(true);\n var axis = plotArea.namedCategoryAxes[NAVIGATOR_AXIS];\n\n var ref = axis.roundedRange();\n var min = ref.min;\n var max = ref.max;\n\n var select = this.options.select || {};\n var from = select.from || min;\n if (from < min) {\n from = min;\n }\n\n var to = select.to || max;\n if (to > max) {\n to = max;\n }\n\n this.options.select = deepExtend({}, select, {\n from: from,\n to: to\n });\n\n this.filterAxes();\n };\n\n Navigator.prototype._redrawSelf = function _redrawSelf (silent) {\n var plotArea = this.chart._plotArea;\n\n if (plotArea) {\n plotArea.redraw(last(plotArea.panes), silent);\n }\n };\n\n Navigator.prototype.redrawSlaves = function redrawSlaves () {\n var chart = this.chart;\n var plotArea = chart._plotArea;\n var slavePanes = plotArea.panes.filter(function (pane) { return pane.options.name !== NAVIGATOR_PANE; });\n\n // Update the original series and categoryAxis before partial refresh.\n plotArea.srcSeries = chart.options.series;\n plotArea.options.categoryAxis = chart.options.categoryAxis;\n plotArea.clearSeriesPointsCache();\n\n plotArea.redraw(slavePanes);\n };\n\n Navigator.prototype._drag = function _drag (e) {\n var ref = this;\n var chart = ref.chart;\n var selection = ref.selection;\n var coords = chart._eventCoordinates(e.originalEvent);\n var navigatorAxis = this.mainAxis();\n var naviRange = navigatorAxis.roundedRange();\n var inNavigator = navigatorAxis.pane.box.containsPoint(coords);\n var axis = chart._plotArea.categoryAxis;\n var range = e.axisRanges[axis.options.name];\n var select = this.options.select;\n var duration;\n\n if (!range || inNavigator || !selection) {\n return;\n }\n\n if (select.from && select.to) {\n duration = toTime(select.to) - toTime(select.from);\n } else {\n duration = toTime(selection.options.to) - toTime(selection.options.from);\n }\n\n var from = toDate(limitValue(\n toTime(range.min),\n naviRange.min, toTime(naviRange.max) - duration\n ));\n\n var to = toDate(limitValue(\n toTime(from) + duration,\n toTime(naviRange.min) + duration, naviRange.max\n ));\n\n this.options.select = { from: from, to: to };\n\n if (this.options.liveDrag) {\n this.filterAxes();\n this.redrawSlaves();\n }\n\n selection.set(from, to);\n\n this.showHint(from, to);\n };\n\n Navigator.prototype._dragEnd = function _dragEnd () {\n this.filterAxes();\n this.filter();\n this.redrawSlaves();\n\n if (this.hint) {\n this.hint.hide();\n }\n };\n\n Navigator.prototype.readSelection = function readSelection () {\n var ref = this;\n var ref_selection_options = ref.selection.options;\n var from = ref_selection_options.from;\n var to = ref_selection_options.to;\n var select = ref.options.select;\n\n select.from = from;\n select.to = to;\n };\n\n Navigator.prototype.filterAxes = function filterAxes () {\n var ref = this;\n var select = ref.options.select; if ( select === void 0 ) select = { };\n var chart = ref.chart;\n var allAxes = chart.options.categoryAxis;\n var from = select.from;\n var to = select.to;\n\n for (var idx = 0; idx < allAxes.length; idx++) {\n var axis = allAxes[idx];\n if (axis.pane !== NAVIGATOR_PANE) {\n axis.min = from;\n axis.max = to;\n }\n }\n };\n\n Navigator.prototype.filter = function filter () {\n var ref = this;\n var chart = ref.chart;\n var select = ref.options.select;\n\n if (!chart.requiresHandlers([ \"navigatorFilter\" ])) {\n return;\n }\n\n var mainAxis = this.mainAxis();\n var args = {\n from: select.from,\n to: select.to\n };\n\n if (mainAxis.options.type !== 'category') {\n var axisOptions = new DateCategoryAxis(deepExtend({\n baseUnit: \"fit\"\n }, chart.options.categoryAxis[0], {\n categories: [ select.from, select.to ]\n }), chart.chartService).options;\n\n args.from = addDuration(axisOptions.min, -axisOptions.baseUnitStep, axisOptions.baseUnit);\n args.to = addDuration(axisOptions.max, axisOptions.baseUnitStep, axisOptions.baseUnit);\n }\n\n this.chart.trigger(\"navigatorFilter\", args);\n };\n\n Navigator.prototype._zoom = function _zoom (e) {\n var ref = this;\n var axis = ref.chart._plotArea.categoryAxis;\n var selection = ref.selection;\n var ref_options = ref.options;\n var select = ref_options.select;\n var liveDrag = ref_options.liveDrag;\n var mainAxis = this.mainAxis();\n var delta = e.delta;\n\n if (!selection) {\n return;\n }\n\n var fromIx = mainAxis.categoryIndex(selection.options.from);\n var toIx = mainAxis.categoryIndex(selection.options.to);\n var coords = this.chart._eventCoordinates(e.originalEvent);\n\n e.originalEvent.preventDefault();\n\n if (Math.abs(delta) > 1) {\n delta *= ZOOM_ACCELERATION;\n }\n\n if (toIx - fromIx > 1) {\n selection.zoom(delta, coords);\n this.readSelection();\n } else {\n axis.options.min = select.from;\n select.from = axis.scaleRange(-e.delta * this.chart._mousewheelZoomRate(), coords).min;\n }\n\n if (liveDrag) {\n this.filterAxes();\n this.redrawSlaves();\n }\n\n selection.set(select.from, select.to);\n\n this.showHint(this.options.select.from, this.options.select.to);\n };\n\n Navigator.prototype._zoomEnd = function _zoomEnd (e) {\n this._dragEnd(e);\n };\n\n Navigator.prototype.showHint = function showHint (from, to) {\n var plotArea = this.chart._plotArea;\n\n if (this.hint) {\n this.hint.show(from, to, plotArea.backgroundBox());\n }\n };\n\n Navigator.prototype._selectStart = function _selectStart (e) {\n return this.chart._selectStart(e);\n };\n\n Navigator.prototype._select = function _select (e) {\n this.showHint(e.from, e.to);\n\n return this.chart._select(e);\n };\n\n Navigator.prototype._selectEnd = function _selectEnd (e) {\n if (this.hint) {\n this.hint.hide();\n }\n\n this.readSelection();\n this.filterAxes();\n this.filter();\n this.redrawSlaves();\n\n return this.chart._selectEnd(e);\n };\n\n Navigator.prototype.mainAxis = function mainAxis () {\n var plotArea = this.chart._plotArea;\n\n if (plotArea) {\n return plotArea.namedCategoryAxes[NAVIGATOR_AXIS];\n }\n };\n\n Navigator.prototype.select = function select (from, to) {\n var select = this.options.select;\n\n if (from && to) {\n select.from = this.parseDate(from);\n select.to = this.parseDate(to);\n\n this.filterAxes();\n this.filter();\n this.redrawSlaves();\n\n this.selection.set(from, to);\n }\n\n return {\n from: select.from,\n to: select.to\n };\n };\n\n Navigator.setup = function setup (options, themeOptions) {\n if ( options === void 0 ) options = {};\n if ( themeOptions === void 0 ) themeOptions = {};\n\n if (options.__navi) {\n return;\n }\n options.__navi = true;\n\n var naviOptions = deepExtend({}, themeOptions.navigator, options.navigator);\n var panes = options.panes = [].concat(options.panes);\n var paneOptions = deepExtend({}, naviOptions.pane, { name: NAVIGATOR_PANE });\n\n if (!naviOptions.visible) {\n paneOptions.visible = false;\n paneOptions.height = 0.1;\n }\n\n if (options.navigator.position !== 'top') {\n panes.push(paneOptions);\n } else {\n panes.unshift(paneOptions);\n }\n\n panes.forEach(function (pane) {\n pane.name = pane.name || DEFAULT_PANE;\n });\n\n Navigator.attachAxes(options, naviOptions);\n Navigator.attachSeries(options, naviOptions, themeOptions);\n };\n\n Navigator.attachAxes = function attachAxes (options, naviOptions) {\n var series = naviOptions.series || [];\n var categoryAxes = options.categoryAxis = [].concat(options.categoryAxis);\n var valueAxes = options.valueAxis = [].concat(options.valueAxis);\n var allAxes = categoryAxes.concat(valueAxes);\n allAxes.forEach(function (axis) {\n axis.pane = axis.pane || DEFAULT_PANE;\n });\n\n var equallySpacedSeries = filterSeriesByType(series, EQUALLY_SPACED_SERIES);\n var justifyAxis = equallySpacedSeries.length === 0;\n\n var base = deepExtend({\n type: \"date\",\n pane: NAVIGATOR_PANE,\n roundToBaseUnit: !justifyAxis,\n justified: justifyAxis,\n _collapse: false,\n majorTicks: { visible: true },\n tooltip: { visible: false },\n labels: { step: 1 },\n autoBind: naviOptions.autoBindElements,\n autoBaseUnitSteps: {\n minutes: [ 1 ],\n hours: [ 1, 2 ],\n days: [ 1, 2 ],\n weeks: [],\n months: [ 1 ],\n years: [ 1 ]\n }\n });\n var user = naviOptions.categoryAxis;\n\n categoryAxes.push(\n deepExtend({}, base, {\n maxDateGroups: 200\n }, user, {\n name: NAVIGATOR_AXIS,\n title: null,\n baseUnit: \"fit\",\n baseUnitStep: \"auto\",\n labels: { visible: false },\n majorTicks: { visible: false }\n }), deepExtend({}, base, user, {\n name: NAVIGATOR_AXIS + \"_labels\",\n maxDateGroups: 20,\n baseUnitStep: \"auto\",\n labels: { position: \"\" },\n plotBands: [],\n autoBaseUnitSteps: {\n minutes: []\n },\n _overlap: true\n }), deepExtend({}, base, user, {\n name: NAVIGATOR_AXIS + \"_ticks\",\n maxDateGroups: 200,\n majorTicks: {\n width: 0.5\n },\n plotBands: [],\n title: null,\n labels: { visible: false, mirror: true },\n _overlap: true\n })\n );\n\n valueAxes.push(deepExtend({\n name: NAVIGATOR_AXIS,\n pane: NAVIGATOR_PANE,\n majorGridLines: {\n visible: false\n },\n visible: false\n }, naviOptions.valueAxis));\n };\n\n Navigator.attachSeries = function attachSeries (options, naviOptions, themeOptions) {\n var series = options.series = options.series || [];\n var navigatorSeries = [].concat(naviOptions.series || []);\n var seriesColors = themeOptions.seriesColors;\n var defaults = naviOptions.seriesDefaults;\n\n for (var idx = 0; idx < navigatorSeries.length; idx++) {\n series.push(\n deepExtend({\n color: seriesColors[idx % seriesColors.length],\n categoryField: naviOptions.dateField,\n visibleInLegend: false,\n tooltip: {\n visible: false\n }\n }, defaults, navigatorSeries[idx], {\n axis: NAVIGATOR_AXIS,\n categoryAxis: NAVIGATOR_AXIS,\n autoBind: naviOptions.autoBindElements\n })\n );\n }\n };\n\n return Navigator;\n}(Class));\n\nfunction ClonedObject() { }\nfunction clone(obj) {\n ClonedObject.prototype = obj;\n return new ClonedObject();\n}\n\nexport default Navigator;\n","import { Chart } from '../chart';\n\nimport Navigator from './navigator';\nimport { DEFAULT_WIDTH } from '../common/constants';\nimport { addClass, deepExtend, elementSize, grep, setDefaultOptions } from '../common';\nimport { NAVIGATOR_AXIS, NAVIGATOR_PANE } from './constants';\n\nvar AUTO_CATEGORY_WIDTH = 28;\n\nvar StockChart = (function (Chart) {\n function StockChart () {\n Chart.apply(this, arguments);\n }\n\n if ( Chart ) StockChart.__proto__ = Chart;\n StockChart.prototype = Object.create( Chart && Chart.prototype );\n StockChart.prototype.constructor = StockChart;\n\n StockChart.prototype.applyDefaults = function applyDefaults (options, themeOptions) {\n var width = elementSize(this.element).width || DEFAULT_WIDTH;\n var theme = themeOptions;\n\n var stockDefaults = {\n seriesDefaults: {\n categoryField: options.dateField\n },\n axisDefaults: {\n categoryAxis: {\n name: \"default\",\n majorGridLines: {\n visible: false\n },\n labels: {\n step: 2\n },\n majorTicks: {\n visible: false\n },\n maxDateGroups: Math.floor(width / AUTO_CATEGORY_WIDTH)\n }\n }\n };\n\n if (theme) {\n theme = deepExtend({}, theme, stockDefaults);\n }\n\n Navigator.setup(options, theme);\n\n Chart.prototype.applyDefaults.call(this, options, theme);\n };\n\n StockChart.prototype._setElementClass = function _setElementClass (element) {\n addClass(element, 'k-chart k-stockchart');\n };\n\n StockChart.prototype.setOptions = function setOptions (options) {\n this.destroyNavigator();\n Chart.prototype.setOptions.call(this, options);\n };\n\n StockChart.prototype.noTransitionsRedraw = function noTransitionsRedraw () {\n var transitions = this.options.transitions;\n\n this.options.transitions = false;\n this._fullRedraw();\n this.options.transitions = transitions;\n };\n\n StockChart.prototype._resize = function _resize () {\n this.noTransitionsRedraw();\n };\n\n StockChart.prototype._redraw = function _redraw () {\n var navigator = this.navigator;\n\n if (!this._dirty() && navigator && navigator.options.partialRedraw) {\n navigator.redrawSlaves();\n } else {\n this._fullRedraw();\n }\n };\n\n StockChart.prototype._dirty = function _dirty () {\n var options = this.options;\n var series = [].concat(options.series, options.navigator.series);\n var seriesCount = grep(series, function(s) { return s && s.visible; }).length;\n var dirty = this._seriesCount !== seriesCount;\n this._seriesCount = seriesCount;\n\n return dirty;\n };\n\n StockChart.prototype._fullRedraw = function _fullRedraw () {\n var navigator = this.navigator;\n\n if (!navigator) {\n navigator = this.navigator = new Navigator(this);\n this.trigger(\"navigatorCreated\", { navigator: navigator });\n }\n\n navigator.clean();\n navigator.setRange();\n\n Chart.prototype._redraw.call(this);\n\n navigator.initSelection();\n };\n\n StockChart.prototype._trackSharedTooltip = function _trackSharedTooltip (coords) {\n var plotArea = this._plotArea;\n var pane = plotArea.paneByPoint(coords);\n\n if (pane && pane.options.name === NAVIGATOR_PANE) {\n this._unsetActivePoint();\n } else {\n Chart.prototype._trackSharedTooltip.call(this, coords);\n }\n };\n\n StockChart.prototype.bindCategories = function bindCategories () {\n Chart.prototype.bindCategories.call(this);\n this.copyNavigatorCategories();\n };\n\n StockChart.prototype.copyNavigatorCategories = function copyNavigatorCategories () {\n var definitions = [].concat(this.options.categoryAxis);\n var categories;\n\n for (var axisIx = 0; axisIx < definitions.length; axisIx++) {\n var axis = definitions[axisIx];\n if (axis.name === NAVIGATOR_AXIS) {\n categories = axis.categories;\n } else if (categories && axis.pane === NAVIGATOR_PANE) {\n axis.categories = categories;\n }\n }\n };\n\n StockChart.prototype.destroyNavigator = function destroyNavigator () {\n if (this.navigator) {\n this.navigator.destroy();\n this.navigator = null;\n }\n };\n\n StockChart.prototype.destroy = function destroy () {\n this.destroyNavigator();\n Chart.prototype.destroy.call(this);\n };\n\n StockChart.prototype._stopChartHandlers = function _stopChartHandlers (e) {\n var coords = this._eventCoordinates(e);\n var pane = this._plotArea.paneByPoint(coords);\n\n return Chart.prototype._stopChartHandlers.call(this, e) || (pane && pane.options.name === NAVIGATOR_PANE);\n };\n\n StockChart.prototype._toggleDragZoomEvents = function _toggleDragZoomEvents () {\n if (!this._dragZoomEnabled) {\n this.element.style.touchAction = \"none\";\n\n this._dragZoomEnabled = true;\n }\n };\n\n return StockChart;\n}(Chart));\n\nsetDefaultOptions(StockChart, {\n dateField: \"date\",\n axisDefaults: {\n categoryAxis: {\n type: \"date\",\n baseUnit: \"fit\",\n justified: true\n },\n valueAxis: {\n narrowRange: true,\n labels: {\n format: \"C\"\n }\n }\n },\n navigator: {\n select: {},\n seriesDefaults: {\n markers: {\n visible: false\n },\n tooltip: {\n visible: false\n },\n highlight: {\n visible: false\n },\n line: {\n width: 2\n }\n },\n hint: {},\n visible: true\n },\n tooltip: {\n visible: true\n },\n legend: {\n visible: false\n }\n});\n\nexport default StockChart;\n","var ANGULAR_SPEED = 150;\nvar LINEAR_SPEED = 250;\nvar ARROW = \"arrow\";\nvar ARROW_POINTER = \"arrowPointer\";\nvar BAR_POINTER = \"barPointer\";\nvar DEFAULT_HEIGHT = 200;\nvar DEFAULT_LINE_WIDTH = 0.5;\nvar DEFAULT_WIDTH = 200;\nvar DEGREE = Math.PI / 180;\nvar INSIDE = \"inside\";\nvar LINEAR = \"linear\";\nvar OUTSIDE = \"outside\";\nvar RADIAL_POINTER = \"radialPointer\";\nvar RADIAL_RANGE_POINTER = \"radialRangePointer\";\n\nexport {\n ANGULAR_SPEED, LINEAR_SPEED, ARROW, ARROW_POINTER, BAR_POINTER,\n DEFAULT_HEIGHT, DEFAULT_LINE_WIDTH, DEFAULT_WIDTH,\n DEGREE, INSIDE, LINEAR, OUTSIDE, RADIAL_POINTER, RADIAL_RANGE_POINTER\n};","import { getSpacing } from '../../common';\n\nexport default function pad(bbox, value) {\n var origin = bbox.getOrigin();\n var size = bbox.getSize();\n var spacing = getSpacing(value);\n\n bbox.setOrigin([ origin.x - spacing.left, origin.y - spacing.top ]);\n bbox.setSize([ size.width + (spacing.left + spacing.right), size.height + (spacing.top + spacing.bottom) ]);\n\n return bbox;\n}","import { geometry as geo, drawing } from '@progress/kendo-drawing';\nimport pad from './pad';\n\nvar Group = drawing.Group;\nvar Path = drawing.Path;\nvar Text = drawing.Text;\n\nexport default function buildLabelElement(label, options) {\n var labelBox = label.box;\n var textBox = label.children[0].box;\n var border = options.border || {};\n var background = options.background || \"\";\n\n var wrapper = Path.fromRect(new geo.Rect([ labelBox.x1, labelBox.y1 ], [ labelBox.width(), labelBox.height() ]), {\n stroke: {}\n });\n\n var text = new Text(label.text, new geo.Point(textBox.x1, textBox.y1), {\n font: options.font,\n fill: { color: options.color }\n });\n\n var styleGeometry = pad(text.bbox().clone(), options.padding);\n\n var styleBox = Path.fromRect(styleGeometry, {\n stroke: {\n color: border.width ? border.color : \"\",\n width: border.width,\n opacity: border.opacity,\n dashType: border.dashType,\n lineJoin: \"round\",\n lineCap: \"round\"\n },\n fill: {\n color: background\n }\n });\n\n var elements = new Group();\n elements.append(wrapper);\n elements.append(styleBox);\n elements.append(text);\n\n return elements;\n}","import { defined } from '../../common';\nimport { MIN_VALUE, MAX_VALUE } from '../../common/constants';\n\nexport default function getRange(range, min, max) {\n var from = defined(range.from) ? range.from : MIN_VALUE;\n var to = defined(range.to) ? range.to : MAX_VALUE;\n\n range.from = Math.max(Math.min(to, from), min);\n range.to = Math.min(Math.max(to, from), max);\n\n return range;\n}","import { getSpacing } from '../../common';\nimport pad from './pad';\n\nexport default function unpad(bbox, value) {\n var spacing = getSpacing(value);\n\n spacing.left = -spacing.left; spacing.top = -spacing.top;\n spacing.right = -spacing.right; spacing.bottom = -spacing.bottom;\n\n return pad(bbox, spacing);\n}","import { geometry as geo, drawing } from '@progress/kendo-drawing';\nimport { Class, elementSize, setDefaultOptions, deepExtend, isArray, isNumber } from '../common';\nimport { DEFAULT_WIDTH, DEFAULT_HEIGHT } from './constants';\nimport { ChartService } from '../services';\nimport { unpad } from './utils';\n\nvar DEFAULT_MARGIN = 5;\nvar Path = drawing.Path;\nvar Surface = drawing.Surface;\n\nvar Gauge = (function (Class) {\n function Gauge(element, userOptions, theme, context) {\n if ( context === void 0 ) context = {};\n\n Class.call(this);\n\n this.element = element;\n this.theme = theme;\n this.contextService = new ChartService(this, context);\n this._originalOptions = deepExtend({}, this.options, userOptions);\n this.options = deepExtend({}, this._originalOptions);\n this._initTheme(theme);\n\n this.redraw();\n }\n\n if ( Class ) Gauge.__proto__ = Class;\n Gauge.prototype = Object.create( Class && Class.prototype );\n Gauge.prototype.constructor = Gauge;\n\n Gauge.prototype.destroy = function destroy () {\n if (this.surface) {\n this.surface.destroy();\n this.surface = null;\n }\n\n delete this.element;\n delete this.surfaceElement;\n };\n\n Gauge.prototype.value = function value (pointerValue) {\n var pointer = this.pointers[0];\n\n if (arguments.length === 0) {\n return pointer.value();\n }\n\n pointer.value(pointerValue);\n this._setValueOptions(pointerValue);\n };\n\n Gauge.prototype._draw = function _draw () {\n var surface = this.surface;\n\n surface.clear();\n surface.draw(this._visuals);\n };\n\n Gauge.prototype.exportVisual = function exportVisual () {\n return this._visuals;\n };\n\n Gauge.prototype.allValues = function allValues (values) {\n var pointers = this.pointers;\n var allValues = [];\n\n if (arguments.length === 0) {\n for (var i = 0; i < pointers.length; i++) {\n allValues.push(pointers[i].value());\n }\n\n return allValues;\n }\n\n if (isArray(values)) {\n for (var i$1 = 0; i$1 < values.length; i$1++) {\n if (isNumber(values[i$1])) {\n pointers[i$1].value(values[i$1]);\n }\n }\n }\n\n this._setValueOptions(values);\n };\n\n Gauge.prototype._setValueOptions = function _setValueOptions (values) {\n var pointers = [].concat(this.options.pointer);\n var arrayValues = [].concat(values);\n\n for (var i = 0; i < arrayValues.length; i++) {\n pointers[i].value = arrayValues[i];\n }\n };\n\n Gauge.prototype.resize = function resize () {\n this.noTransitionsRedraw();\n };\n\n Gauge.prototype.noTransitionsRedraw = function noTransitionsRedraw () {\n var transitions = this.options.transitions;\n\n this._toggleTransitions(false);\n\n this.redraw();\n\n this._toggleTransitions(transitions);\n };\n\n Gauge.prototype.redraw = function redraw () {\n var size = this._surfaceSize();\n var wrapper = new geo.Rect([ 0, 0 ], [ size.width, size.height ]);\n\n this._initSurface();\n\n this.gaugeArea = this._createGaugeArea();\n\n this._createModel();\n\n var bbox = unpad(wrapper.bbox(), this._gaugeAreaMargin);\n this.reflow(bbox);\n };\n\n Gauge.prototype.setOptions = function setOptions (options, theme) {\n this._originalOptions = deepExtend(this._originalOptions, options);\n this.options = deepExtend({}, this._originalOptions);\n\n this._initTheme(theme);\n\n this.redraw();\n };\n\n Gauge.prototype.setDirection = function setDirection (rtl) {\n this.contextService.rtl = Boolean(rtl);\n if (this.surface && this.surface.type === 'svg') {\n this.surface.destroy();\n this.surface = null;\n }\n };\n\n Gauge.prototype.setIntlService = function setIntlService (intl) {\n this.contextService.intl = intl;\n };\n\n Gauge.prototype._initTheme = function _initTheme (theme) {\n var currentTheme = theme || this.theme || {};\n this.theme = currentTheme;\n\n this.options = deepExtend({}, currentTheme, this.options);\n var options = this.options;\n var pointer = options.pointer;\n\n if (isArray(pointer)) {\n var pointers = [];\n for (var i = 0; i < pointer.length; i++) {\n pointers.push(deepExtend({}, currentTheme.pointer, pointer[i]));\n }\n options.pointer = pointers;\n }\n };\n\n Gauge.prototype._createGaugeArea = function _createGaugeArea () {\n var options = this.options.gaugeArea;\n var size = this.surface.size();\n var border = options.border || {};\n var areaGeometry = new geo.Rect([ 0, 0 ], [ size.width, size.height ]);\n\n this._gaugeAreaMargin = options.margin || DEFAULT_MARGIN;\n\n if (border.width > 0) {\n areaGeometry = unpad(areaGeometry, border.width);\n }\n\n var gaugeArea = Path.fromRect(areaGeometry, {\n stroke: {\n color: border.width ? border.color : \"\",\n width: border.width,\n opacity: border.opacity,\n dashType: border.dashType,\n lineJoin: \"round\",\n lineCap: \"round\"\n },\n fill: {\n color: options.background\n }\n });\n\n return gaugeArea;\n };\n\n Gauge.prototype._initSurface = function _initSurface () {\n var ref = this;\n var options = ref.options;\n var surface = ref.surface;\n var element = this._surfaceElement();\n var size = this._surfaceSize();\n\n elementSize(element, size);\n\n if (!surface || surface.options.type !== options.renderAs) {\n if (surface) {\n surface.destroy();\n }\n\n this.surface = Surface.create(element, {\n type: options.renderAs\n });\n } else {\n this.surface.clear();\n this.surface.resize();\n }\n };\n\n Gauge.prototype._surfaceSize = function _surfaceSize () {\n var options = this.options;\n var size = this._getSize();\n\n if (options.gaugeArea) {\n deepExtend(size, options.gaugeArea);\n }\n\n return size;\n };\n\n Gauge.prototype._surfaceElement = function _surfaceElement () {\n if (!this.surfaceElement) {\n this.surfaceElement = document.createElement('div');\n this.element.appendChild(this.surfaceElement);\n }\n\n return this.surfaceElement;\n };\n\n Gauge.prototype.getSize = function getSize () {\n return this._getSize();\n };\n\n Gauge.prototype._getSize = function _getSize () {\n var element = this.element;\n var defaultSize = this._defaultSize();\n var width = element.offsetWidth;\n var height = element.offsetHeight;\n\n if (!width) {\n width = defaultSize.width;\n }\n\n if (!height) {\n height = defaultSize.height;\n }\n\n return { width: width, height: height };\n };\n\n Gauge.prototype._defaultSize = function _defaultSize () {\n return {\n width: DEFAULT_WIDTH,\n height: DEFAULT_HEIGHT\n };\n };\n\n Gauge.prototype._toggleTransitions = function _toggleTransitions (value) {\n var this$1 = this;\n\n this.options.transitions = value;\n for (var i = 0; i < this.pointers.length; i++) {\n this$1.pointers[i].options.animation.transitions = value;\n }\n };\n\n return Gauge;\n}(Class));\n\nsetDefaultOptions(Gauge, {\n plotArea: {},\n theme: \"default\",\n renderAs: \"\",\n pointer: {},\n scale: {},\n gaugeArea: {}\n});\n\nexport default Gauge;","import { geometry as geo, drawing } from '@progress/kendo-drawing';\nimport { setDefaultOptions, deepExtend, defined } from '../../common';\nimport { BLACK } from '../../common/constants';\nimport { NumericAxis } from '../../core';\nimport { DEFAULT_LINE_WIDTH, INSIDE } from '../constants';\nimport { autoMajorUnit } from '../../core';\nimport { buildLabelElement, getRange } from '../utils';\n\nvar Path = drawing.Path;\nvar Group = drawing.Group;\nvar Point = geo.Point;\n\nfunction renderAxisTick(tickRenderOptions, tickOptions) {\n var position = tickRenderOptions.position;\n var tickX = tickRenderOptions.tickX;\n var tickY = tickRenderOptions.tickY;\n var start, end;\n\n if (tickRenderOptions.vertical) {\n start = new Point(tickX, position);\n end = new Point(tickX + tickOptions.size, position);\n } else {\n start = new Point(position, tickY);\n end = new Point(position, tickY + tickOptions.size);\n }\n\n var tickPath = new Path({\n stroke: {\n color: tickOptions.color,\n width: tickOptions.width\n }\n }).moveTo(start).lineTo(end);\n\n return tickPath;\n}\n\nfunction renderTicks(tickGroup, tickPositions, tickRenderOptions, tickOptions) {\n var count = tickPositions.length;\n\n if (tickOptions.visible) {\n var mirror = tickRenderOptions.mirror;\n var lineBox = tickRenderOptions.lineBox;\n for (var i = tickOptions.skip; i < count; i += tickOptions.step) {\n if (i % tickOptions.skipUnit === 0) {\n continue;\n }\n\n tickRenderOptions.tickX = mirror ? lineBox.x2 : lineBox.x2 - tickOptions.size;\n tickRenderOptions.tickY = mirror ? lineBox.y1 - tickOptions.size : lineBox.y1;\n tickRenderOptions.position = tickPositions[i];\n\n tickGroup.append(renderAxisTick(tickRenderOptions, tickOptions));\n }\n }\n}\n\nvar LinearScale = (function (NumericAxis) {\n function LinearScale(options, service) {\n var scaleOptions = options || {};\n if (!defined(scaleOptions.reverse) && scaleOptions.vertical === false && (service || {}).rtl) {\n scaleOptions = Object.assign({}, scaleOptions, {\n reverse: true\n });\n }\n\n NumericAxis.call(this, 0, 1, scaleOptions, service);\n\n this.options.minorUnit = this.options.minorUnit || this.options.majorUnit / 10;\n }\n\n if ( NumericAxis ) LinearScale.__proto__ = NumericAxis;\n LinearScale.prototype = Object.create( NumericAxis && NumericAxis.prototype );\n LinearScale.prototype.constructor = LinearScale;\n\n LinearScale.prototype.initUserOptions = function initUserOptions (options) {\n var scaleOptions = deepExtend({}, this.options, options);\n scaleOptions = deepExtend({}, scaleOptions , { labels: { mirror: scaleOptions.mirror } });\n scaleOptions.majorUnit = scaleOptions.majorUnit || autoMajorUnit(scaleOptions.min, scaleOptions.max);\n\n return scaleOptions;\n };\n\n LinearScale.prototype.initFields = function initFields () {\n };\n\n LinearScale.prototype.render = function render () {\n var elements = this.elements = new Group();\n var labels = this.renderLabels();\n var scaleLine = this.renderLine();\n var scaleTicks = this.renderTicks();\n var ranges = this.renderRanges();\n\n elements.append(scaleLine, labels, scaleTicks, ranges);\n\n return elements;\n };\n\n LinearScale.prototype.renderRanges = function renderRanges () {\n var this$1 = this;\n\n var options = this.options;\n var min = options.min;\n var max = options.max;\n var vertical = options.vertical;\n var mirror = options.labels.mirror;\n var ranges = options.ranges || [];\n var elements = new Group();\n var count = ranges.length;\n var rangeSize = options.rangeSize || options.minorTicks.size / 2;\n\n for (var i = 0; i < count; i++) {\n var range = getRange(ranges[i], min, max);\n var slot = this$1.getSlot(range.from, range.to);\n var slotX = vertical ? this$1.lineBox() : slot;\n var slotY = vertical ? slot : this$1.lineBox();\n if (vertical) {\n slotX.x1 -= rangeSize * (mirror ? -1 : 1);\n } else {\n slotY.y2 += rangeSize * (mirror ? -1 : 1);\n }\n\n elements.append(Path.fromRect(new geo.Rect([ slotX.x1, slotY.y1 ], [ slotX.x2 - slotX.x1, slotY.y2 - slotY.y1 ]), {\n fill: { color: range.color, opacity: range.opacity },\n stroke: { }\n }));\n }\n\n return elements;\n };\n\n LinearScale.prototype.renderLabels = function renderLabels () {\n var ref = this;\n var labels = ref.labels;\n var options = ref.options;\n var elements = new Group();\n\n for (var i = 0; i < labels.length; i++) {\n elements.append(buildLabelElement(labels[i], options.labels));\n }\n\n return elements;\n };\n\n LinearScale.prototype.renderLine = function renderLine () {\n var line = this.options.line;\n var lineBox = this.lineBox();\n var elements = new Group();\n\n if (line.width > 0 && line.visible) {\n var linePath = new Path({\n stroke: {\n color: line.color,\n dashType: line.dashType,\n width: line.width\n }\n });\n\n linePath.moveTo(lineBox.x1, lineBox.y1).lineTo(lineBox.x2, lineBox.y2);\n elements.append(linePath);\n }\n\n return elements;\n };\n\n LinearScale.prototype.renderTicks = function renderTicks$1 () {\n var ticks = new Group();\n var options = this.options;\n var majorUnit = options.majorTicks.visible ? options.majorUnit : 0;\n var tickRenderOptions = {\n vertical: options.vertical,\n mirror: options.labels.mirror,\n lineBox: this.lineBox()\n };\n\n renderTicks(ticks, this.getMajorTickPositions(), tickRenderOptions, options.majorTicks);\n renderTicks(ticks, this.getMinorTickPositions(), tickRenderOptions, deepExtend({}, {\n skipUnit: majorUnit / options.minorUnit\n }, options.minorTicks));\n\n return ticks;\n };\n\n return LinearScale;\n}(NumericAxis));\n\nsetDefaultOptions(LinearScale, {\n min: 0,\n max: 50,\n\n majorTicks: {\n size: 15,\n align: INSIDE,\n color: BLACK,\n width: DEFAULT_LINE_WIDTH,\n visible: true\n },\n\n minorTicks: {\n size: 10,\n align: INSIDE,\n color: BLACK,\n width: DEFAULT_LINE_WIDTH,\n visible: true\n },\n\n line: {\n width: DEFAULT_LINE_WIDTH\n },\n\n labels: {\n position: INSIDE,\n padding: 2\n },\n mirror: false,\n _alignLines: false\n});\n\nexport default LinearScale;","import { Class, setDefaultOptions, defined, deepExtend, limitValue } from '../common';\nimport { BLACK } from '../common/constants';\n\nvar Pointer = (function (Class) {\n function Pointer(scale, userOptions) {\n Class.call(this);\n\n var ref = scale.options;\n var min = ref.min;\n var max = ref.max;\n var options = this.options = deepExtend({}, this.options, userOptions);\n\n options.fill = options.color;\n\n this.scale = scale;\n\n if (defined(options.value)) {\n options.value = limitValue(options.value, min, max);\n } else {\n options.value = min;\n }\n }\n\n if ( Class ) Pointer.__proto__ = Class;\n Pointer.prototype = Object.create( Class && Class.prototype );\n Pointer.prototype.constructor = Pointer;\n\n Pointer.prototype.value = function value (newValue) {\n var options = this.options;\n var value = options.value;\n\n if (arguments.length === 0) {\n return value;\n }\n\n var ref = this.scale.options;\n var min = ref.min;\n var max = ref.max;\n\n options._oldValue = defined(options._oldValue) ? options.value : min;\n options.value = limitValue(newValue, min, max);\n\n if (this.elements) {\n this.repaint();\n }\n };\n\n return Pointer;\n}(Class));\n\nsetDefaultOptions(Pointer, {\n color: BLACK\n});\n\nexport default Pointer;","import { setDefaultOptions, deepExtend, defined, getSpacing } from '../../common';\nimport { Box } from '../../core';\nimport { BLACK } from '../../common/constants';\nimport { BAR_POINTER } from '../constants';\nimport Pointer from '../pointer';\n\nvar LinearPointer = (function (Pointer) {\n function LinearPointer(scale, options) {\n Pointer.call(this, scale, options);\n\n this.options = deepExtend({\n track: {\n visible: defined(options.track)\n }\n }, this.options);\n }\n\n if ( Pointer ) LinearPointer.__proto__ = Pointer;\n LinearPointer.prototype = Object.create( Pointer && Pointer.prototype );\n LinearPointer.prototype.constructor = LinearPointer;\n\n LinearPointer.prototype.reflow = function reflow () {\n var ref = this;\n var options = ref.options;\n var scale = ref.scale;\n var ref$1 = scale.options;\n var mirror = ref$1.mirror;\n var vertical = ref$1.vertical;\n var scaleLine = scale.lineBox();\n var trackSize = options.track.size || options.size;\n var pointerHalfSize = options.size / 2;\n var margin = getSpacing(options.margin);\n var space = vertical ?\n margin[mirror ? \"left\" : \"right\"] :\n margin[mirror ? \"bottom\" : \"top\"];\n var pointerBox, pointerRangeBox, trackBox;\n\n space = mirror ? -space : space;\n\n if (vertical) {\n trackBox = new Box(\n scaleLine.x1 + space, scaleLine.y1,\n scaleLine.x1 + space, scaleLine.y2);\n\n if (mirror) {\n trackBox.x1 -= trackSize;\n } else {\n trackBox.x2 += trackSize;\n }\n\n if (options.shape !== BAR_POINTER) {\n pointerRangeBox = new Box(\n scaleLine.x2 + space, scaleLine.y1 - pointerHalfSize,\n scaleLine.x2 + space, scaleLine.y2 + pointerHalfSize\n );\n pointerBox = pointerRangeBox;\n }\n } else {\n trackBox = new Box(\n scaleLine.x1, scaleLine.y1 - space,\n scaleLine.x2, scaleLine.y1 - space);\n\n if (mirror) {\n trackBox.y2 += trackSize;\n } else {\n trackBox.y1 -= trackSize;\n }\n\n if (options.shape !== BAR_POINTER) {\n pointerRangeBox = new Box(\n scaleLine.x1 - pointerHalfSize, scaleLine.y1 - space,\n scaleLine.x2 + pointerHalfSize, scaleLine.y1 - space\n );\n pointerBox = pointerRangeBox;\n }\n }\n\n this.trackBox = trackBox;\n this.pointerRangeBox = pointerRangeBox;\n this.box = pointerBox || trackBox.clone().pad(options.border.width);\n };\n\n LinearPointer.prototype.getElementOptions = function getElementOptions () {\n var options = this.options;\n\n return {\n fill: {\n color: options.color,\n opacity: options.opacity\n },\n stroke: defined(options.border) ? {\n color: options.border.width ? options.border.color || options.color : \"\",\n width: options.border.width,\n dashType: options.border.dashType,\n opacity: options.opacity\n } : null\n };\n };\n\n LinearPointer.prototype._margin = function _margin () {\n var ref = this;\n var scale = ref.scale;\n var options = ref.options;\n var ref$1 = scale.options;\n var mirror = ref$1.mirror;\n var vertical = ref$1.vertical;\n var margin = getSpacing(options.margin);\n\n var space = vertical ?\n margin[mirror ? \"left\" : \"right\"] :\n margin[mirror ? \"bottom\" : \"top\"];\n\n return space;\n };\n\n return LinearPointer;\n}(Pointer));\n\nsetDefaultOptions(LinearPointer, {\n shape: BAR_POINTER,\n\n track: {\n border: {\n width: 1\n }\n },\n\n color: BLACK,\n border: {\n width: 1\n },\n opacity: 1,\n\n margin: getSpacing(3),\n animation: {\n type: BAR_POINTER\n },\n visible: true\n});\n\nexport default LinearPointer;","import { geometry, drawing } from '@progress/kendo-drawing';\nimport { interpolateValue, setDefaultOptions } from '../../common';\nimport { ARROW_POINTER, LINEAR_SPEED, LINEAR } from '../constants';\n\nvar ArrowLinearPointerAnimation = (function (superclass) {\n function ArrowLinearPointerAnimation () {\n superclass.apply(this, arguments);\n }\n\n if ( superclass ) ArrowLinearPointerAnimation.__proto__ = superclass;\n ArrowLinearPointerAnimation.prototype = Object.create( superclass && superclass.prototype );\n ArrowLinearPointerAnimation.prototype.constructor = ArrowLinearPointerAnimation;\n\n ArrowLinearPointerAnimation.prototype.setup = function setup () {\n var options = this.options;\n var margin = options.margin;\n var from = options.from;\n var to = options.to;\n var vertical = options.vertical;\n var axis = vertical ? \"x1\" : \"y1\";\n\n if (options.mirror === vertical) {\n from[axis] -= margin; to[axis] -= margin;\n } else {\n from[axis] += margin; to[axis] += margin;\n }\n\n var fromScale = this.fromScale = new geometry.Point(from.x1, from.y1);\n var toScale = this.toScale = new geometry.Point(to.x1, to.y1);\n\n if (options.duration !== 0) {\n options.duration = Math.max((fromScale.distanceTo(toScale) / options.duration) * 1000, 1);\n }\n };\n\n ArrowLinearPointerAnimation.prototype.step = function step (pos) {\n var translateX = interpolateValue(this.fromScale.x, this.toScale.x, pos);\n var translateY = interpolateValue(this.fromScale.y, this.toScale.y, pos);\n\n this.element.transform(geometry.transform().translate(translateX, translateY));\n };\n\n return ArrowLinearPointerAnimation;\n}(drawing.Animation));\n\nsetDefaultOptions(ArrowLinearPointerAnimation, {\n easing: LINEAR,\n duration: LINEAR_SPEED\n});\n\ndrawing.AnimationFactory.current.register(ARROW_POINTER, ArrowLinearPointerAnimation);\n\nexport default ArrowLinearPointerAnimation;","import { geometry as geo, drawing } from '@progress/kendo-drawing';\nimport { deepExtend, defined } from '../../common';\nimport { ARROW_POINTER } from '../constants';\nimport LinearPointer from './linear-pointer';\nimport ArrowLinearPointerAnimation from './arrow-linear-pointer-animation';\n\nvar Point = geo.Point;\nvar Path = drawing.Path;\n\nvar ArrowLinearPointer = (function (LinearPointer) {\n function ArrowLinearPointer(scale, options) {\n LinearPointer.call(this, scale, options);\n\n if (!defined(this.options.size)) {\n this.options.size = this.scale.options.majorTicks.size * 0.6;\n }\n }\n\n if ( LinearPointer ) ArrowLinearPointer.__proto__ = LinearPointer;\n ArrowLinearPointer.prototype = Object.create( LinearPointer && LinearPointer.prototype );\n ArrowLinearPointer.prototype.constructor = ArrowLinearPointer;\n\n ArrowLinearPointer.prototype.pointerShape = function pointerShape () {\n var ref = this;\n var scale = ref.scale;\n var size = ref.options.size;\n var halfSize = size / 2;\n var sign = (scale.options.mirror ? -1 : 1);\n var shape;\n\n if (scale.options.vertical) {\n shape = [\n new Point(0, 0 - halfSize), new Point(0 - sign * size, 0), new Point(0, 0 + halfSize)\n ];\n } else {\n shape = [\n new Point(0 - halfSize, 0), new Point(0, 0 + sign * size), new Point(0 + halfSize, 0)\n ];\n }\n\n return shape;\n };\n\n ArrowLinearPointer.prototype.repaint = function repaint () {\n var ref = this;\n var scale = ref.scale;\n var options = ref.options;\n var animation = new ArrowLinearPointerAnimation(this.elements, deepExtend(options.animation, {\n vertical: scale.options.vertical,\n mirror: scale.options.mirror,\n margin: this._margin(options.margin),\n from: scale.getSlot(options._oldValue),\n to: scale.getSlot(options.value)\n }));\n\n if (options.animation.transitions === false) {\n animation.options.duration = 0;\n }\n\n animation.setup();\n animation.play();\n };\n\n ArrowLinearPointer.prototype.render = function render () {\n var ref = this;\n var scale = ref.scale;\n var options = ref.options;\n var elementOptions = this.getElementOptions();\n var shape = this.pointerShape(options.value);\n\n options.animation.type = ARROW_POINTER;\n\n var elements = new Path({\n stroke: elementOptions.stroke,\n fill: elementOptions.fill\n }).moveTo(shape[0]).lineTo(shape[1]).lineTo(shape[2]).close();\n\n var slot = scale.getSlot(options.value);\n elements.transform(geo.transform().translate(slot.x1, slot.y1));\n\n this.elements = elements;\n\n return elements;\n };\n\n return ArrowLinearPointer;\n}(LinearPointer));\n\nexport default ArrowLinearPointer;","import { drawing } from '@progress/kendo-drawing';\nimport { interpolateValue, setDefaultOptions } from '../../common';\nimport { X, Y } from '../../common/constants';\nimport { BAR_POINTER, LINEAR_SPEED, LINEAR } from '../constants';\n\nvar BarLinearPointerAnimation = (function (superclass) {\n function BarLinearPointerAnimation () {\n superclass.apply(this, arguments);\n }\n\n if ( superclass ) BarLinearPointerAnimation.__proto__ = superclass;\n BarLinearPointerAnimation.prototype = Object.create( superclass && superclass.prototype );\n BarLinearPointerAnimation.prototype.constructor = BarLinearPointerAnimation;\n\n BarLinearPointerAnimation.prototype.setup = function setup () {\n var options = this.options;\n var axis = this.axis = options.vertical ? Y : X;\n var to = this.to = options.newPoints[0][axis];\n var from = this.from = options.oldPoints[0][axis];\n\n if (options.duration !== 0) {\n options.duration = Math.max((Math.abs(to - from) / options.speed) * 1000, 1);\n }\n\n this._set(from);\n };\n\n BarLinearPointerAnimation.prototype.step = function step (pos) {\n var value = interpolateValue(this.from, this.to, pos);\n this._set(value);\n };\n\n BarLinearPointerAnimation.prototype._set = function _set (value) {\n var setter = \"set\" + this.axis.toUpperCase();\n var points = this.options.newPoints;\n\n points[0][setter](value);\n points[1][setter](value);\n };\n\n return BarLinearPointerAnimation;\n}(drawing.Animation));\n\nsetDefaultOptions(BarLinearPointerAnimation, {\n easing: LINEAR,\n speed: LINEAR_SPEED\n});\n\ndrawing.AnimationFactory.current.register(BAR_POINTER, BarLinearPointerAnimation);\n\nexport default BarLinearPointerAnimation;","import { geometry as geo, drawing } from '@progress/kendo-drawing';\nimport { deepExtend, defined } from '../../common';\nimport { X, Y } from '../../common/constants';\nimport LinearPointer from './linear-pointer';\nimport BarLinearPointerAnimation from './bar-linear-pointer-animation';\n\nvar Group = drawing.Group;\nvar Path = drawing.Path;\n\nvar BarLinearPointer = (function (LinearPointer) {\n function BarLinearPointer(scale, options) {\n LinearPointer.call(this, scale, options);\n\n if (!defined(this.options.size)) {\n this.options.size = this.scale.options.majorTicks.size * 0.3;\n }\n }\n\n if ( LinearPointer ) BarLinearPointer.__proto__ = LinearPointer;\n BarLinearPointer.prototype = Object.create( LinearPointer && LinearPointer.prototype );\n BarLinearPointer.prototype.constructor = BarLinearPointer;\n\n BarLinearPointer.prototype.pointerShape = function pointerShape (value) {\n var ref = this;\n var scale = ref.scale;\n var options = ref.options;\n var ref$1 = scale.options;\n var mirror = ref$1.mirror;\n var vertical = ref$1.vertical;\n var dir = mirror === vertical ? -1 : 1;\n var size = options.size * dir;\n var minSlot = scale.getSlot(scale.options.min);\n var slot = scale.getSlot(value);\n var axis = vertical ? Y : X;\n var sizeAxis = vertical ? X : Y;\n var margin = this._margin() * dir;\n\n var p1 = new geo.Point();\n p1[axis] = minSlot[axis + \"1\"];\n p1[sizeAxis] = minSlot[sizeAxis + \"1\"];\n\n var p2 = new geo.Point();\n p2[axis] = slot[axis + \"1\"];\n p2[sizeAxis] = slot[sizeAxis + \"1\"];\n\n if (vertical) {\n p1.translate(margin, 0);\n p2.translate(margin, 0);\n } else {\n p1.translate(0, margin);\n p2.translate(0, margin);\n }\n\n var p3 = p2.clone();\n var p4 = p1.clone();\n\n if (vertical) {\n p3.translate(size, 0);\n p4.translate(size, 0);\n } else {\n p3.translate(0, size);\n p4.translate(0, size);\n }\n\n return [ p1, p2, p3, p4 ];\n };\n\n BarLinearPointer.prototype.repaint = function repaint () {\n var ref = this;\n var scale = ref.scale;\n var options = ref.options;\n var shape = this.pointerShape(options.value);\n var pointerPath = this.pointerPath;\n var oldShape = this.pointerShape(options._oldValue);\n\n pointerPath.moveTo(shape[0]).lineTo(shape[1]).lineTo(shape[2]).lineTo(shape[3]).close();\n\n var animation = new BarLinearPointerAnimation(pointerPath, deepExtend(options.animation, {\n reverse: scale.options.reverse,\n vertical: scale.options.vertical,\n oldPoints: [ oldShape[1], oldShape[2] ],\n newPoints: [ shape[1], shape[2] ]\n }));\n\n if (options.animation.transitions === false) {\n animation.options.duration = 0;\n }\n\n animation.setup();\n animation.play();\n };\n\n BarLinearPointer.prototype.render = function render () {\n var group = new Group();\n var elementOptions = this.getElementOptions();\n\n if (this.options.track.visible) {\n group.append(this.renderTrack());\n }\n\n var pointer = this.pointerPath = new Path({\n stroke: elementOptions.stroke,\n fill: elementOptions.fill\n });\n\n group.append(pointer);\n\n this.elements = group;\n\n return group;\n };\n\n BarLinearPointer.prototype.renderTrack = function renderTrack () {\n var trackOptions = this.options.track;\n var border = trackOptions.border || {};\n var trackBox = this.trackBox.clone().pad(border.width || 0);\n\n return new Path.fromRect(trackBox.toRect(), {\n fill: {\n color: trackOptions.color,\n opacity: trackOptions.opacity\n },\n stroke: {\n color: border.width ? border.color || trackOptions.color : \"\",\n width: border.width,\n dashType: border.dashType\n }\n });\n };\n\n return BarLinearPointer;\n}(LinearPointer));\n\nexport default BarLinearPointer;","import { drawing } from '@progress/kendo-drawing';\nimport { Box } from '../../core';\nimport { setDefaultOptions, deepExtend, isArray } from '../../common';\nimport { ARROW, DEFAULT_WIDTH, DEFAULT_HEIGHT } from '../constants';\nimport Gauge from '../gauge';\nimport LinearScale from './linear-scale';\nimport ArrowLinearPointer from './arrow-linear-pointer';\nimport BarLinearPointer from './bar-linear-pointer';\n\nvar DEFAULT_MIN_WIDTH = 60;\nvar DEFAULT_MIN_HEIGHT = 60;\n\nvar Group = drawing.Group;\n\nvar LinearGauge = (function (Gauge) {\n function LinearGauge () {\n Gauge.apply(this, arguments);\n }\n\n if ( Gauge ) LinearGauge.__proto__ = Gauge;\n LinearGauge.prototype = Object.create( Gauge && Gauge.prototype );\n LinearGauge.prototype.constructor = LinearGauge;\n\n LinearGauge.prototype.reflow = function reflow (bbox) {\n var pointers = this.pointers;\n var bboxX = bbox.origin.x;\n var bboxY = bbox.origin.y;\n\n var box = new Box(bboxX, bboxY, bboxX + bbox.width(), bboxY + bbox.height());\n\n this.scale.reflow(box);\n this._shrinkScaleWidth(box);\n\n for (var i = 0; i < pointers.length; i++) {\n pointers[i].reflow();\n }\n\n this.bbox = this._getBox(box);\n this._alignElements();\n this._shrinkElements();\n this._buildVisual();\n this._draw();\n };\n\n LinearGauge.prototype._buildVisual = function _buildVisual () {\n var visuals = new Group();\n var scaleElements = this.scale.render();\n var pointers = this.pointers;\n\n visuals.append(this.gaugeArea);\n visuals.append(scaleElements);\n\n for (var i = 0; i < pointers.length; i++) {\n var current = pointers[i];\n visuals.append(current.render());\n current.value(current.options.value);\n }\n\n this._visuals = visuals;\n };\n\n LinearGauge.prototype._createModel = function _createModel () {\n var this$1 = this;\n\n var options = this.options;\n var scale = this.scale = new LinearScale(options.scale, this.contextService);\n\n this.pointers = [];\n\n var pointers = options.pointer;\n pointers = isArray(pointers) ? pointers : [ pointers ];\n\n for (var i = 0; i < pointers.length; i++) {\n var currentOptions = deepExtend({}, pointers[i], {\n animation: {\n transitions: options.transitions\n }\n });\n var pointerType = currentOptions.shape === ARROW ? ArrowLinearPointer : BarLinearPointer;\n\n this$1.pointers.push(new pointerType(scale, currentOptions));\n }\n };\n\n LinearGauge.prototype._defaultSize = function _defaultSize () {\n var vertical = this.options.scale.vertical;\n\n return {\n width: vertical ? DEFAULT_MIN_WIDTH : DEFAULT_WIDTH,\n height: vertical ? DEFAULT_HEIGHT : DEFAULT_MIN_HEIGHT\n };\n };\n\n LinearGauge.prototype._getBox = function _getBox (box) {\n var ref = this;\n var scale = ref.scale;\n var pointers = ref.pointers;\n var boxCenter = box.center();\n var plotAreaBox = pointers[0].box.clone().wrap(scale.box);\n\n for (var i = 0; i < pointers.length; i++) {\n plotAreaBox.wrap(pointers[i].box.clone());\n }\n\n var size;\n if (scale.options.vertical) {\n size = plotAreaBox.width() / 2;\n plotAreaBox = new Box(\n boxCenter.x - size, box.y1,\n boxCenter.x + size, box.y2\n );\n } else {\n size = plotAreaBox.height() / 2;\n plotAreaBox = new Box(\n box.x1, boxCenter.y - size,\n box.x2, boxCenter.y + size\n );\n }\n\n return plotAreaBox;\n };\n\n LinearGauge.prototype._alignElements = function _alignElements () {\n var this$1 = this;\n\n var ref = this;\n var scale = ref.scale;\n var pointers = ref.pointers;\n var scaleBox = scale.box;\n var box = pointers[0].box.clone().wrap(scale.box);\n var plotAreaBox = this.bbox;\n\n for (var i = 0; i < pointers.length; i++) {\n box.wrap(pointers[i].box.clone());\n }\n\n var diff;\n if (scale.options.vertical) {\n diff = plotAreaBox.center().x - box.center().x;\n scale.reflow(new Box(\n scaleBox.x1 + diff, plotAreaBox.y1,\n scaleBox.x2 + diff, plotAreaBox.y2\n ));\n } else {\n diff = plotAreaBox.center().y - box.center().y;\n scale.reflow(new Box(\n scaleBox.x1, scaleBox.y1 + diff,\n scaleBox.x2, scaleBox.y2 + diff\n ));\n }\n\n for (var i$1 = 0; i$1 < pointers.length; i$1++) {\n pointers[i$1].reflow(this$1.bbox);\n }\n };\n\n LinearGauge.prototype._shrinkScaleWidth = function _shrinkScaleWidth (bbox) {\n var ref = this;\n var scale = ref.scale;\n if (!scale.options.vertical) {\n var overflow = scale.contentBox().width() - bbox.width();\n if (overflow > 0) {\n scale.box.shrink(overflow, 0);\n scale.box.alignTo(bbox, 'center');\n scale.reflow(scale.box);\n }\n }\n };\n\n LinearGauge.prototype._shrinkElements = function _shrinkElements () {\n var this$1 = this;\n\n var ref = this;\n var scale = ref.scale;\n var pointers = ref.pointers;\n var scaleBox = scale.box.clone();\n var pos = scale.options.vertical ? \"y\" : \"x\";\n var pointerBox = pointers[0].box;\n\n for (var i = 0; i < pointers.length; i++) {\n pointerBox.wrap(pointers[i].box.clone());\n }\n\n scaleBox[pos + 1] += Math.max(scaleBox[pos + 1] - pointerBox[pos + 1], 0);\n scaleBox[pos + 2] -= Math.max(pointerBox[pos + 2] - scaleBox[pos + 2], 0);\n\n scale.reflow(scaleBox);\n\n for (var i$1 = 0; i$1 < pointers.length; i$1++) {\n pointers[i$1].reflow(this$1.bbox);\n }\n };\n\n return LinearGauge;\n}(Gauge));\n\nsetDefaultOptions(LinearGauge, {\n transitions: true,\n gaugeArea: {\n background: \"\"\n },\n scale: {\n vertical: true\n }\n});\n\nexport default LinearGauge;","import GeometryArc from '../geometry/arc';\nimport Element from './element';\nimport { Path } from './path';\nimport paintable from '../mixins/paintable';\nimport measurable from '../mixins/measurable';\nimport withGeometry from '../mixins/with-geometry';\nimport { defined } from '../util';\n\n\nvar DEFAULT_STROKE = \"#000\";\n\nvar Arc = (function (superclass) {\n function Arc(geometry, options) {\n if ( geometry === void 0 ) geometry = new GeometryArc();\n if ( options === void 0 ) options = {};\n\n superclass.call(this, options);\n\n this.geometry(geometry);\n\n if (!defined(this.options.stroke)) {\n this.stroke(DEFAULT_STROKE);\n }\n }\n\n if ( superclass ) Arc.__proto__ = superclass;\n Arc.prototype = Object.create( superclass && superclass.prototype );\n Arc.prototype.constructor = Arc;\n\n var prototypeAccessors = { nodeType: { configurable: true } };\n\n prototypeAccessors.nodeType.get = function () {\n return \"Arc\";\n };\n\n Arc.prototype._bbox = function _bbox (matrix) {\n return this._geometry.bbox(matrix);\n };\n\n Arc.prototype.rawBBox = function rawBBox () {\n return this.geometry().bbox();\n };\n\n Arc.prototype.toPath = function toPath () {\n var path = new Path();\n var curvePoints = this.geometry().curvePoints();\n\n if (curvePoints.length > 0) {\n path.moveTo(curvePoints[0].x, curvePoints[0].y);\n\n for (var i = 1; i < curvePoints.length; i += 3) {\n path.curveTo(curvePoints[i], curvePoints[i + 1], curvePoints[i + 2]);\n }\n }\n\n return path;\n };\n\n Arc.prototype._containsPoint = function _containsPoint (point) {\n return this.geometry().containsPoint(point);\n };\n\n Arc.prototype._isOnPath = function _isOnPath (point) {\n return this.geometry()._isOnPath(point, this.options.stroke.width / 2);\n };\n\n Object.defineProperties( Arc.prototype, prototypeAccessors );\n\n return Arc;\n}(paintable(measurable(withGeometry(Element)))));\n\nexport default Arc;\n","import { geometry as geo, drawing } from '@progress/kendo-drawing';\nimport { setDefaultOptions, deepExtend, defined, round, getSpacing } from '../../common';\nimport { BLACK, COORD_PRECISION } from '../../common/constants';\nimport { autoMajorUnit, Box, NumericAxis } from '../../core';\nimport { buildLabelElement, getRange } from '../utils';\n\nimport { DEGREE, DEFAULT_LINE_WIDTH, INSIDE, OUTSIDE } from '../constants';\n\nvar GEO_ARC_ADJUST_ANGLE = 180;\n\nvar Arc = drawing.Arc;\nvar Path = drawing.Path;\nvar Group = drawing.Group;\n\nfunction drawTicks(arc, tickAngles, unit, tickOptions) {\n var ticks = new Group();\n var center = arc.center;\n var radius = arc.getRadiusX();\n\n if (tickOptions.visible) {\n for (var i = 0; i < tickAngles.length; i++) {\n var tickStart = arc.pointAt(tickAngles[i]);\n var tickEnd = new geo.Point(center.x + radius - tickOptions.size, center.y).rotate(tickAngles[i], center);\n\n ticks.append(new Path({\n stroke: {\n color: tickOptions.color,\n width: tickOptions.width\n }\n }).moveTo(tickStart).lineTo(tickEnd));\n }\n }\n\n return ticks;\n}\n\nfunction rangeSegment(from, to, color, opacity) {\n return { from: from, to: to, color: color, opacity: opacity };\n}\n\nvar RadialScale = (function (NumericAxis) {\n function RadialScale(options, service) {\n NumericAxis.call(this, 0, 1, options, service);\n }\n\n if ( NumericAxis ) RadialScale.__proto__ = NumericAxis;\n RadialScale.prototype = Object.create( NumericAxis && NumericAxis.prototype );\n RadialScale.prototype.constructor = RadialScale;\n\n RadialScale.prototype.initUserOptions = function initUserOptions (options) {\n var scaleOptions = deepExtend({}, this.options, options);\n scaleOptions.majorUnit = scaleOptions.majorUnit || autoMajorUnit(scaleOptions.min, scaleOptions.max);\n scaleOptions.minorUnit = scaleOptions.minorUnit || scaleOptions.majorUnit / 10;\n\n return scaleOptions;\n };\n\n RadialScale.prototype.initFields = function initFields () {\n };\n\n RadialScale.prototype.render = function render (center, radius) {\n var arc = this.renderArc(center, radius);\n\n this.bbox = arc.bbox();\n this.labelElements = this.renderLabels();\n this.ticks = this.renderTicks();\n this.ranges = this.renderRanges();\n };\n\n RadialScale.prototype.reflow = function reflow (bbox) {\n var center = bbox.center();\n var radius = Math.min(bbox.height(), bbox.width()) / 2;\n\n if (defined(this.bbox)) {\n this.bbox = this.arc.bbox();\n this.radius(this.arc.getRadiusX());\n this.repositionRanges();\n this.renderLabels();\n } else {\n return this.render(center, radius);\n }\n };\n\n RadialScale.prototype.slotAngle = function slotAngle (value) {\n var ref = this.options;\n var min = ref.min;\n var max = ref.max;\n var reverse = ref.reverse;\n var startAngle = ref.startAngle;\n var endAngle = ref.endAngle;\n var angle = endAngle - startAngle;\n var result;\n\n if (reverse) {\n result = endAngle - (value - min) / (max - min) * angle;\n } else {\n result = ((value - min) / (max - min) * angle) + startAngle;\n }\n\n return result + GEO_ARC_ADJUST_ANGLE;\n };\n\n RadialScale.prototype.hasRanges = function hasRanges () {\n var ranges = this.options.ranges;\n\n return ranges && ranges.length;\n };\n\n RadialScale.prototype.ticksSize = function ticksSize () {\n var ref = this.options;\n var majorTicks = ref.majorTicks;\n var minorTicks = ref.minorTicks;\n var size = 0;\n if (majorTicks.visible) {\n size = majorTicks.size;\n }\n\n if (minorTicks.visible) {\n size = Math.max(minorTicks.size, size);\n }\n\n return size;\n };\n\n RadialScale.prototype.labelsCount = function labelsCount () {\n var count = NumericAxis.prototype.labelsCount.call(this);\n var options = this.options;\n var angle = options.endAngle - options.startAngle;\n\n if (angle >= 360 && (options.max % options.majorUnit === 0)) {\n count -= 1;\n }\n\n return count;\n };\n\n RadialScale.prototype.renderLabels = function renderLabels () {\n var this$1 = this;\n\n var options = this.options;\n var arc = this.arc.clone();\n var radius = arc.getRadiusX();\n var tickAngles = this.tickAngles(arc, options.majorUnit);\n var rangeSize = options.rangeSize = options.rangeSize || radius * 0.1;\n var labelsGroup = new Group();\n\n var rangeDistance = radius * 0.05;\n if (defined(options.rangeDistance)) {\n rangeDistance = options.rangeDistance;\n } else {\n options.rangeDistance = rangeDistance;\n }\n\n var labelsOptions = options.labels;\n var isInside = labelsOptions.position === INSIDE;\n var hasLabelElements = defined(this.labelElements);\n\n if (isInside) {\n radius -= this.ticksSize();\n\n if (this.hasRanges() && !hasLabelElements) {\n radius -= rangeSize + rangeDistance;\n }\n arc.setRadiusX(radius).setRadiusY(radius);\n }\n\n var labels = this.labels;\n var count = labels.length;\n var padding = getSpacing(labelsOptions.padding);\n var paddingWidth = (padding.left + padding.right) / 2;\n var paddingHeight = (padding.top + padding.bottom) / 2;\n\n for (var i = 0; i < count; i++) {\n var label = labels[i];\n var halfWidth = label.box.width() / 2;\n var halfHeight = label.box.height() / 2;\n var angle = tickAngles[i];\n var labelAngle = (angle - GEO_ARC_ADJUST_ANGLE) * DEGREE;\n\n var lp = arc.pointAt(angle);\n var cx = lp.x + (Math.cos(labelAngle) * (halfWidth + paddingWidth) * (isInside ? 1 : -1));\n var cy = lp.y + (Math.sin(labelAngle) * (halfHeight + paddingHeight) * (isInside ? 1 : -1));\n\n label.reflow(new Box(cx - halfWidth, cy - halfHeight, cx + halfWidth, cy + halfHeight));\n var labelPos = new geo.Point(label.box.x1, label.box.y1);\n\n var labelElement = (void 0);\n if (!hasLabelElements) {\n labelElement = buildLabelElement(label, options.labels);\n labelsGroup.append(labelElement);\n } else {\n labelElement = this$1.labelElements.children[i];\n var prevLabelPos = labelElement.bbox().origin;\n\n var labelTransform = labelElement.transform() || geo.transform();\n labelTransform.translate(labelPos.x - prevLabelPos.x, labelPos.y - prevLabelPos.y);\n labelElement.transform(labelTransform);\n }\n\n this$1.bbox = geo.Rect.union(this$1.bbox, labelElement.bbox());\n }\n\n return labelsGroup;\n };\n\n RadialScale.prototype.repositionRanges = function repositionRanges () {\n var ranges = this.ranges.children;\n\n if (ranges.length > 0) {\n var ref = this.options;\n var rangeDistance = ref.rangeDistance;\n var rangeSize = ref.rangeSize;\n var rangeRadius = this.getRangeRadius();\n\n if (this.options.labels.position === INSIDE) {\n rangeRadius += rangeSize + rangeDistance;\n }\n\n var newRadius = rangeRadius + (rangeSize / 2);\n\n for (var i = 0; i < ranges.length; i++) {\n ranges[i]._geometry.setRadiusX(newRadius).setRadiusY(newRadius);\n }\n\n this.bbox = geo.Rect.union(this.bbox, this.ranges.bbox());\n }\n };\n\n RadialScale.prototype.renderRanges = function renderRanges () {\n var this$1 = this;\n\n var segments = this.rangeSegments();\n var segmentsCount = segments.length;\n var result = new Group();\n\n if (segmentsCount) {\n var ref = this.options;\n var rangeSize = ref.rangeSize;\n var reverse = ref.reverse;\n var rangeDistance = ref.rangeDistance;\n var rangeRadius = this.getRangeRadius();\n\n // move the ticks with a range distance and a range size\n this.radius(this.radius() - rangeSize - rangeDistance);\n\n for (var i = 0; i < segmentsCount; i++) {\n var segment = segments[i];\n var from = this$1.slotAngle(segment[reverse ? \"to\" : \"from\"]);\n var to = this$1.slotAngle(segment[!reverse ? \"to\" : \"from\"]);\n\n if (to - from !== 0) {\n result.append(this$1.createRange(from, to, rangeRadius, segment));\n }\n }\n }\n\n return result;\n };\n\n RadialScale.prototype.createRange = function createRange (startAngle, endAngle, rangeRadius, options) {\n var rangeSize = this.options.rangeSize;\n var rangeGeom = new geo.Arc(this.arc.center, {\n radiusX: rangeRadius + (rangeSize / 2),\n radiusY: rangeRadius + (rangeSize / 2),\n startAngle: startAngle,\n endAngle: endAngle\n });\n\n return new Arc(rangeGeom, {\n stroke: {\n width: rangeSize,\n color: options.color,\n opacity: options.opacity,\n lineCap: options.lineCap\n }\n });\n };\n\n RadialScale.prototype.rangeSegments = function rangeSegments () {\n var options = this.options;\n var ranges = options.ranges || [];\n var count = ranges.length;\n var segments = [];\n\n if (count) {\n var min = options.min;\n var max = options.max;\n var defaultColor = options.rangePlaceholderColor;\n segments.push(rangeSegment(min, max, defaultColor));\n\n for (var i = 0; i < count; i++) {\n var range = getRange(ranges[i], min, max);\n var segmentsCount = segments.length;\n\n for (var j = 0; j < segmentsCount; j++) {\n var segment = segments[j];\n\n if (segment.from <= range.from && range.from <= segment.to) {\n segments.push(rangeSegment(range.from, range.to, range.color, range.opacity));\n\n if (segment.from <= range.to && range.to <= segment.to) {\n segments.push(rangeSegment(range.to, segment.to, defaultColor, range.opacity));\n }\n\n segment.to = range.from;\n\n break;\n }\n }\n }\n }\n\n return segments;\n };\n\n RadialScale.prototype.getRangeRadius = function getRangeRadius () {\n var ref = this;\n var arc = ref.arc;\n var options = ref.options;\n var rangeSize = options.rangeSize;\n var rangeDistance = options.rangeDistance;\n var majorTickSize = options.majorTicks.size;\n var radius;\n\n if (options.labels.position === OUTSIDE) {\n radius = arc.getRadiusX() - majorTickSize - rangeDistance - rangeSize;\n } else {\n radius = arc.getRadiusX() - rangeSize;\n }\n\n return radius;\n };\n\n RadialScale.prototype.renderArc = function renderArc (center, radius) {\n var options = this.options;\n\n var arc = this.arc = new geo.Arc(center, {\n radiusX: radius,\n radiusY: radius,\n startAngle: options.startAngle + GEO_ARC_ADJUST_ANGLE,\n endAngle: options.endAngle + GEO_ARC_ADJUST_ANGLE\n });\n\n return arc;\n };\n\n RadialScale.prototype.renderTicks = function renderTicks () {\n var ref = this;\n var arc = ref.arc;\n var options = ref.options;\n var tickArc = arc.clone();\n\n this.majorTickAngles = this.tickAngles(arc, options.majorUnit);\n this.majorTicks = drawTicks(tickArc, this.majorTickAngles, options.majorUnit, options.majorTicks);\n\n var allTicks = new Group();\n allTicks.append(this.majorTicks);\n\n var majorTickSize = options.majorTicks.size;\n var minorTickSize = options.minorTicks.size;\n\n this._tickDifference = majorTickSize - minorTickSize;\n\n if (options.labels.position === OUTSIDE) {\n var radius = tickArc.getRadiusX();\n tickArc.setRadiusX(radius - majorTickSize + minorTickSize)\n .setRadiusY(radius - majorTickSize + minorTickSize);\n }\n\n this.minorTickAngles = this.normalizeTickAngles(this.tickAngles(arc, options.minorUnit));\n this.minorTicks = drawTicks(tickArc, this.minorTickAngles, options.minorUnit, options.minorTicks);\n allTicks.append(this.minorTicks);\n\n return allTicks;\n };\n\n RadialScale.prototype.normalizeTickAngles = function normalizeTickAngles (angles) {\n var options = this.options;\n var skip = options.majorUnit / options.minorUnit;\n\n for (var i = angles.length - 1; i >= 0; i--) {\n if (i % skip === 0) {\n angles.splice(i, 1);\n }\n }\n\n return angles;\n };\n\n RadialScale.prototype.tickAngles = function tickAngles (ring, stepValue) {\n var options = this.options;\n var reverse = options.reverse;\n var range = options.max - options.min;\n var angle = ring.endAngle - ring.startAngle;\n var tickCount = range / stepValue;\n var pos = ring.startAngle;\n var step = angle / tickCount;\n\n if (reverse) {\n pos += angle;\n step = -step;\n }\n\n if (angle >= 360 && (options.max % stepValue === 0)) {\n tickCount -= 1;\n }\n\n var positions = [];\n for (var i = 0; i < tickCount; i++) {\n positions.push(round(pos, COORD_PRECISION));\n pos += step;\n }\n\n if (round(pos) <= ring.endAngle) {\n positions.push(pos);\n }\n\n return positions;\n };\n\n RadialScale.prototype.radius = function radius (value) {\n if (value) {\n this.arc.setRadiusX(value).setRadiusY(value);\n this.repositionTicks(this.majorTicks.children, this.majorTickAngles);\n this.repositionTicks(this.minorTicks.children, this.minorTickAngles, true);\n } else {\n return this.arc.getRadiusX();\n }\n };\n\n RadialScale.prototype.repositionTicks = function repositionTicks (ticks, tickAngles, minor) {\n var diff = minor ? (this._tickDifference || 0) : 0;\n var tickArc = this.arc;\n var radius = tickArc.getRadiusX();\n\n if (minor && this.options.labels.position === OUTSIDE && diff !== 0) {\n tickArc = this.arc.clone();\n tickArc.setRadiusX(radius - diff).setRadiusY(radius - diff);\n }\n\n for (var i = 0; i < ticks.length; i++) {\n var newPoint = tickArc.pointAt(tickAngles[i]);\n var segments = ticks[i].segments;\n var xDiff = newPoint.x - segments[0].anchor().x;\n var yDiff = newPoint.y - segments[0].anchor().y;\n\n ticks[i].transform(new geo.transform().translate(xDiff, yDiff));\n }\n };\n\n return RadialScale;\n}(NumericAxis));\n\nsetDefaultOptions(RadialScale, {\n min: 0,\n max: 100,\n\n majorTicks: {\n size: 15,\n align: INSIDE,\n color: BLACK,\n width: DEFAULT_LINE_WIDTH,\n visible: true\n },\n\n minorTicks: {\n size: 10,\n align: INSIDE,\n color: BLACK,\n width: DEFAULT_LINE_WIDTH,\n visible: true\n },\n\n startAngle: -30,\n endAngle: 210,\n\n labels: {\n position: INSIDE,\n padding: 2\n }\n});\n\nexport default RadialScale;\n","import { geometry, drawing } from '@progress/kendo-drawing';\nimport { interpolateValue, setDefaultOptions } from '../../common';\nimport { ANGULAR_SPEED, LINEAR, RADIAL_POINTER } from '../constants';\n\nvar RadialPointerAnimation = (function (superclass) {\n function RadialPointerAnimation(element, options) {\n superclass.call(this, element, options);\n\n var animationOptions = this.options;\n\n animationOptions.duration = Math.max((Math.abs(animationOptions.newAngle - animationOptions.oldAngle) / animationOptions.duration) * 1000, 1);\n }\n\n if ( superclass ) RadialPointerAnimation.__proto__ = superclass;\n RadialPointerAnimation.prototype = Object.create( superclass && superclass.prototype );\n RadialPointerAnimation.prototype.constructor = RadialPointerAnimation;\n\n RadialPointerAnimation.prototype.step = function step (pos) {\n var options = this.options;\n var angle = interpolateValue(options.oldAngle, options.newAngle, pos);\n\n this.element.transform(geometry.transform().rotate(angle, options.center));\n };\n\n return RadialPointerAnimation;\n}(drawing.Animation));\n\nsetDefaultOptions(RadialPointerAnimation, {\n easing: LINEAR,\n duration: ANGULAR_SPEED\n});\n\ndrawing.AnimationFactory.current.register(RADIAL_POINTER, RadialPointerAnimation);\n\nexport default RadialPointerAnimation;","import { geometry as geo, drawing } from '@progress/kendo-drawing';\n\nimport { setDefaultOptions, deepExtend, limitValue } from '../../common';\nimport { ANGULAR_SPEED, DEGREE, DEFAULT_LINE_WIDTH, RADIAL_POINTER } from '../constants';\nimport Pointer from '../pointer';\nimport RadialPointerAnimation from './radial-pointer-animation';\n\nvar CAP_SIZE = 0.05;\nvar Circle = drawing.Circle;\nvar Group = drawing.Group;\nvar Path = drawing.Path;\n\nvar RadialPointer = (function (Pointer) {\n function RadialPointer () {\n Pointer.apply(this, arguments);\n }\n\n if ( Pointer ) RadialPointer.__proto__ = Pointer;\n RadialPointer.prototype = Object.create( Pointer && Pointer.prototype );\n RadialPointer.prototype.constructor = RadialPointer;\n\n RadialPointer.prototype.setAngle = function setAngle (angle) {\n this.elements.transform(geo.transform().rotate(angle, this.center));\n };\n\n RadialPointer.prototype.repaint = function repaint () {\n var ref = this;\n var scale = ref.scale;\n var options = ref.options;\n var oldAngle = scale.slotAngle(options._oldValue);\n var newAngle = scale.slotAngle(options.value);\n\n if (options.animation.transitions === false) {\n this.setAngle(newAngle);\n } else {\n new RadialPointerAnimation(this.elements, deepExtend(options.animation, {\n oldAngle: oldAngle,\n newAngle: newAngle\n })).play();\n }\n };\n\n RadialPointer.prototype.render = function render () {\n var ref = this;\n var scale = ref.scale;\n var options = ref.options;\n var elements = new Group();\n\n if (options.animation !== false) {\n deepExtend(options.animation, {\n startAngle: 0,\n center: scale.arc.center,\n reverse: scale.options.reverse\n });\n }\n\n elements.append(this._renderNeedle(), this._renderCap());\n\n this.elements = elements;\n this.setAngle(DEGREE);\n\n return elements;\n };\n\n RadialPointer.prototype.reflow = function reflow (arc) {\n var center = this.center = arc.center;\n var length = limitValue(this.options.length || 1, 0.1, 1.5);\n var radius = this.radius = arc.getRadiusX() * length;\n var capSize = this.capSize = Math.round(radius * this.options.cap.size);\n\n this.bbox = geo.Rect.fromPoints(new geo.Point(center.x - capSize, center.y - capSize),\n new geo.Point(center.x + capSize, center.y + capSize));\n };\n\n RadialPointer.prototype._renderNeedle = function _renderNeedle () {\n var minorTickSize = this.scale.options.minorTicks.size;\n var center = this.center;\n var needleColor = this.options.color;\n\n var needlePath = new Path({\n fill: { color: needleColor },\n stroke: { color: needleColor, width: DEFAULT_LINE_WIDTH }\n });\n\n needlePath.moveTo(center.x + this.radius - minorTickSize, center.y)\n .lineTo(center.x, center.y - (this.capSize / 2))\n .lineTo(center.x, center.y + (this.capSize / 2))\n .close();\n\n return needlePath;\n };\n\n RadialPointer.prototype._renderCap = function _renderCap () {\n var options = this.options;\n var capColor = options.cap.color || options.color;\n var circle = new geo.Circle(this.center, this.capSize);\n\n var cap = new Circle(circle, {\n fill: { color: capColor },\n stroke: { color: capColor }\n });\n\n return cap;\n };\n\n return RadialPointer;\n}(Pointer));\n\nsetDefaultOptions(RadialPointer, {\n cap: {\n size: CAP_SIZE\n },\n arrow: {\n width: 16,\n height: 14\n },\n animation: {\n type: RADIAL_POINTER,\n duration: ANGULAR_SPEED\n }\n});\n\nexport default RadialPointer;\n","import { geometry as geo, drawing } from '@progress/kendo-drawing';\nimport { setDefaultOptions, deepExtend, round, isArray } from '../../common';\nimport { COORD_PRECISION } from '../../common/constants';\nimport Gauge from '../gauge';\nimport RadialScale from './radial-scale';\nimport RadialPointer from './radial-pointer';\n\nvar Group = drawing.Group;\n\nvar RadialGauge = (function (Gauge) {\n function RadialGauge () {\n Gauge.apply(this, arguments);\n }\n\n if ( Gauge ) RadialGauge.__proto__ = Gauge;\n RadialGauge.prototype = Object.create( Gauge && Gauge.prototype );\n RadialGauge.prototype.constructor = RadialGauge;\n\n RadialGauge.prototype.reflow = function reflow (bbox) {\n var this$1 = this;\n\n var pointers = this.pointers;\n this.scale.reflow(bbox);\n this._initialPlotArea = this.scale.bbox;\n\n for (var i = 0; i < pointers.length; i++) {\n pointers[i].reflow(this$1.scale.arc);\n this$1._initialPlotArea = geo.Rect.union(this$1._initialPlotArea, pointers[i].bbox);\n }\n\n this.fitScale(bbox);\n this.alignScale(bbox);\n this._buildVisual(this.gaugeArea, pointers, this.scale);\n this._draw();\n };\n\n RadialGauge.prototype._buildVisual = function _buildVisual (gaugeArea, pointers, scale) {\n var visuals = this._visuals = new Group();\n\n visuals.append(gaugeArea);\n visuals.append(scale.ticks);\n visuals.append(scale.ranges);\n this._buildPointers(pointers);\n visuals.append(scale.labelElements);\n };\n\n RadialGauge.prototype._buildPointers = function _buildPointers (pointers) {\n var this$1 = this;\n\n for (var i = 0; i < pointers.length; i++) {\n var current = pointers[i];\n current.render();\n this$1._visuals.append(current.elements);\n\n current.value(current.options.value);\n }\n };\n\n RadialGauge.prototype.fitScale = function fitScale (bbox) {\n var this$1 = this;\n\n var arc = this.scale.arc;\n var plotAreaBox = this._initialPlotArea;\n var step = Math.abs(this.getDiff(plotAreaBox, bbox));\n var min = round(step, COORD_PRECISION);\n var max = round(-step, COORD_PRECISION);\n var minDiff, midDiff, maxDiff, mid, oldDiff;\n var staleFlag = 0;\n var i = 0;\n\n while (i++ < 100) {\n staleFlag = (oldDiff === maxDiff) ? (staleFlag + 1) : 0;\n\n if (staleFlag > 5) {\n break;\n }\n\n if (min !== mid) {\n minDiff = this$1.getPlotBox(min, bbox, arc);\n if (0 <= minDiff && minDiff <= 2) {\n break;\n }\n }\n\n if (max !== mid) {\n maxDiff = this$1.getPlotBox(max, bbox, arc);\n if (0 <= maxDiff && maxDiff <= 2) {\n break;\n }\n }\n\n if (minDiff > 0 && maxDiff > 0) {\n mid = min * 2;\n } else if (minDiff < 0 && maxDiff < 0) {\n mid = max * 2;\n } else {\n mid = round(((min + max) / 2) || 1, COORD_PRECISION);\n }\n\n midDiff = this$1.getPlotBox(mid, bbox, arc);\n if (0 <= midDiff && midDiff <= 2) {\n break;\n }\n\n oldDiff = maxDiff;\n\n if (midDiff > 0) {\n max = mid;\n maxDiff = midDiff;\n } else {\n min = mid;\n minDiff = midDiff;\n }\n }\n };\n\n RadialGauge.prototype.getPlotBox = function getPlotBox (step, bbox, arc) {\n var this$1 = this;\n\n var scale = this.scale;\n var pointers = this.pointers;\n var radius = arc.getRadiusX();\n var scaleArc = arc.clone();\n\n scaleArc.setRadiusX(radius + step).setRadiusY(radius + step);\n\n scale.arc = scaleArc;\n scale.reflow(bbox);\n this.plotBbox = scale.bbox;\n\n for (var i = 0; i < pointers.length; i++) {\n pointers[i].reflow(scaleArc);\n this$1.plotBbox = geo.Rect.union(this$1.plotBbox, pointers[i].bbox);\n }\n\n return this.getDiff(this.plotBbox, bbox);\n };\n\n RadialGauge.prototype.getDiff = function getDiff (plotBox, box) {\n return Math.min(box.width() - plotBox.width(), box.height() - plotBox.height());\n };\n\n RadialGauge.prototype.alignScale = function alignScale (bbox) {\n var this$1 = this;\n\n var plotBoxCenter = this.plotBbox.center();\n var boxCenter = bbox.center();\n var paddingX = plotBoxCenter.x - boxCenter.x;\n var paddingY = plotBoxCenter.y - boxCenter.y;\n var ref = this;\n var scale = ref.scale;\n var pointers = ref.pointers;\n\n scale.arc.center.x -= paddingX;\n scale.arc.center.y -= paddingY;\n\n scale.reflow(bbox);\n\n for (var i = 0; i < pointers.length; i++) {\n pointers[i].reflow(scale.arc);\n this$1.plotBbox = geo.Rect.union(scale.bbox, pointers[i].bbox);\n }\n };\n\n RadialGauge.prototype._createModel = function _createModel () {\n var this$1 = this;\n\n var options = this.options;\n var pointers = options.pointer;\n var scale = this.scale = new RadialScale(options.scale, this.contextService);\n\n this.pointers = [];\n\n var pointersArr = isArray(pointers) ? pointers : [ pointers ];\n for (var i = 0; i < pointersArr.length; i++) {\n var current = new RadialPointer(scale, deepExtend({}, pointersArr[i], {\n animation: {\n transitions: options.transitions\n }\n }));\n\n this$1.pointers.push(current);\n }\n };\n\n return RadialGauge;\n}(Gauge));\n\nsetDefaultOptions(RadialGauge, {\n transitions: true,\n gaugeArea: {\n background: \"\"\n }\n});\n\nexport default RadialGauge;","import RadialScale from '../radial/radial-scale';\nimport { setDefaultOptions } from '../../common';\n\nvar ArcScale = (function (RadialScale) {\n function ArcScale () {\n RadialScale.apply(this, arguments);\n }\n\n if ( RadialScale ) ArcScale.__proto__ = RadialScale;\n ArcScale.prototype = Object.create( RadialScale && RadialScale.prototype );\n ArcScale.prototype.constructor = ArcScale;\n\n ArcScale.prototype.rangeSegments = function rangeSegments () {\n var ref = this.options;\n var min = ref.min;\n var max = ref.max;\n var rangePlaceholderColor = ref.rangePlaceholderColor;\n var rangeLineCap = ref.rangeLineCap;\n\n return [ { from: min, to: max, color: rangePlaceholderColor, lineCap: rangeLineCap } ];\n };\n\n ArcScale.prototype.hasRanges = function hasRanges () {\n return true;\n };\n\n ArcScale.prototype.placeholderRangeAngle = function placeholderRangeAngle (angle) {\n var geometry = this.ranges.children[0].geometry();\n\n if (this.options.reverse) {\n geometry.setEndAngle(angle);\n } else {\n geometry.setStartAngle(angle);\n }\n };\n\n ArcScale.prototype.addRange = function addRange (from, to, options) {\n var reverse = this.options.reverse;\n\n var startAngle = this.slotAngle(reverse ? to : from);\n var endAngle = this.slotAngle(reverse ? from : to);\n\n var range = this.createRange(startAngle, endAngle, this.getRangeRadius(), options);\n\n this.ranges.append(range);\n\n return range;\n };\n\n return ArcScale;\n}(RadialScale));\n\nsetDefaultOptions(ArcScale, {\n min: 0,\n max: 100,\n\n majorTicks: {\n visible: false\n },\n\n minorTicks: {\n visible: false\n },\n\n labels: {\n visible: false\n },\n\n startAngle: 0,\n endAngle: 180,\n rangeLineCap: 'round'\n});\n\nexport default ArcScale;","import { drawing, Color } from '@progress/kendo-drawing';\nimport { interpolateValue, setDefaultOptions, round, limitValue } from '../../common';\nimport { ANGULAR_SPEED, LINEAR, RADIAL_RANGE_POINTER } from '../constants';\n\nvar MAX_DURATION = 800;\n\nvar RangePointerAnimation = (function (superclass) {\n function RangePointerAnimation(element, options) {\n superclass.call(this, element, options);\n\n var animationOptions = this.options;\n var duration = (Math.abs(animationOptions.newAngle - animationOptions.oldAngle) / animationOptions.duration) * 1000;\n animationOptions.duration = limitValue(duration, ANGULAR_SPEED, MAX_DURATION);\n\n var startColor = element.elements.options.get(\"stroke.color\");\n var color = element.currentColor();\n if (startColor !== color) {\n this.startColor = new Color(startColor);\n this.color = new Color(color);\n }\n }\n\n if ( superclass ) RangePointerAnimation.__proto__ = superclass;\n RangePointerAnimation.prototype = Object.create( superclass && superclass.prototype );\n RangePointerAnimation.prototype.constructor = RangePointerAnimation;\n\n RangePointerAnimation.prototype.step = function step (pos) {\n var ref = this;\n var options = ref.options;\n var startColor = ref.startColor;\n var color = ref.color;\n var angle = interpolateValue(options.oldAngle, options.newAngle, pos);\n this.element.angle(angle);\n\n if (color) {\n var r = round(interpolateValue(startColor.r, color.r, pos));\n var g = round(interpolateValue(startColor.g, color.g, pos));\n var b = round(interpolateValue(startColor.b, color.b, pos));\n\n this.element.stroke(new Color(r, g, b).toHex());\n }\n };\n\n return RangePointerAnimation;\n}(drawing.Animation));\n\nsetDefaultOptions(RangePointerAnimation, {\n easing: LINEAR,\n duration: ANGULAR_SPEED\n});\n\ndrawing.AnimationFactory.current.register(RADIAL_RANGE_POINTER, RangePointerAnimation);\n\nexport default RangePointerAnimation;","import { setDefaultOptions, deepExtend, isNumber } from '../../common';\nimport { ANGULAR_SPEED, RADIAL_RANGE_POINTER } from '../constants';\nimport Pointer from '../pointer';\nimport RangePointerAnimation from './range-pointer-animation';\n\nvar RangePointer = (function (Pointer) {\n function RangePointer () {\n Pointer.apply(this, arguments);\n }\n\n if ( Pointer ) RangePointer.__proto__ = Pointer;\n RangePointer.prototype = Object.create( Pointer && Pointer.prototype );\n RangePointer.prototype.constructor = RangePointer;\n\n RangePointer.prototype.repaint = function repaint () {\n var ref = this;\n var scale = ref.scale;\n var options = ref.options;\n var oldAngle = scale.slotAngle(options._oldValue);\n var newAngle = scale.slotAngle(options.value);\n\n if (this.animation) {\n this.animation.abort();\n }\n\n if (options.animation.transitions === false) {\n this.angle(newAngle);\n this.stroke(this.currentColor());\n } else {\n this.animation = new RangePointerAnimation(this, deepExtend(options.animation, {\n oldAngle: oldAngle,\n newAngle: newAngle\n }));\n\n this.animation.play();\n }\n };\n\n RangePointer.prototype.angle = function angle (value) {\n var geometry = this.elements.geometry();\n if (this.scale.options.reverse) {\n geometry.setStartAngle(value);\n } else {\n geometry.setEndAngle(value);\n }\n this.scale.placeholderRangeAngle(value);\n };\n\n RangePointer.prototype.stroke = function stroke (value) {\n this.elements.stroke(value);\n };\n\n RangePointer.prototype.render = function render () {\n if (this.elements) {\n return;\n }\n\n var ref = this;\n var scale = ref.scale;\n var options = ref.options;\n\n if (options.animation !== false) {\n deepExtend(options.animation, {\n startAngle: 0,\n center: scale.arc.center,\n reverse: scale.options.reverse\n });\n }\n\n this.elements = scale.addRange(scale.options.min, this.options.value, {\n color: this.currentColor(),\n opacity: options.opacity,\n lineCap: scale.options.rangeLineCap\n });\n };\n\n RangePointer.prototype.currentColor = function currentColor () {\n var ref = this.scale.options;\n var min = ref.min;\n var max = ref.max;\n var ref$1 = this.options;\n var colors = ref$1.colors;\n var color = ref$1.color;\n var value = ref$1.value;\n var currentValue = isNumber(value) ? value : min;\n\n if (colors) {\n for (var idx = 0; idx < colors.length; idx++) {\n var ref$2 = colors[idx];\n var rangeColor = ref$2.color;\n var from = ref$2.from; if ( from === void 0 ) from = min;\n var to = ref$2.to; if ( to === void 0 ) to = max;\n\n if (from <= currentValue && currentValue <= to) {\n return rangeColor;\n }\n }\n }\n\n return color;\n };\n\n RangePointer.prototype.reflow = function reflow () {\n this.render();\n\n this.bbox = this.elements.bbox();\n };\n\n return RangePointer;\n}(Pointer));\n\nsetDefaultOptions(RangePointer, {\n animation: {\n type: RADIAL_RANGE_POINTER,\n duration: ANGULAR_SPEED\n }\n});\n\nexport default RangePointer;\n","import RadialGauge from '../radial/radial-gauge';\nimport ArcScale from './arc-scale';\nimport RangePointer from './range-pointer';\n\nimport { deepExtend } from '../../common';\n\n\nvar ArcGauge = (function (RadialGauge) {\n function ArcGauge () {\n RadialGauge.apply(this, arguments);\n }\n\n if ( RadialGauge ) ArcGauge.__proto__ = RadialGauge;\n ArcGauge.prototype = Object.create( RadialGauge && RadialGauge.prototype );\n ArcGauge.prototype.constructor = ArcGauge;\n\n ArcGauge.prototype._initTheme = function _initTheme (theme) {\n RadialGauge.prototype._initTheme.call(this, theme);\n\n this.options.color = this.options.color || (this.theme.pointer || {}).color;\n };\n\n ArcGauge.prototype._createModel = function _createModel () {\n var options = this.options;\n var scale = this.scale = new ArcScale(options.scale, this.contextService);\n\n var pointer = new RangePointer(scale, deepExtend({}, {\n colors: options.colors,\n color: options.color,\n value: options.value,\n opacity: options.opacity,\n animation: {\n transitions: options.transitions\n }\n }));\n\n this.pointers = [ pointer ];\n };\n\n ArcGauge.prototype._buildPointers = function _buildPointers (pointers) {\n for (var i = 0; i < pointers.length; i++) {\n var current = pointers[i];\n current.render();\n\n current.value(current.options.value);\n }\n };\n\n ArcGauge.prototype._setValueOptions = function _setValueOptions (value) {\n this.options.value = value;\n };\n\n ArcGauge.prototype.currentColor = function currentColor () {\n var pointer = this.pointers[0];\n if (pointer) {\n return pointer.currentColor();\n }\n };\n\n ArcGauge.prototype.centerLabelPosition = function centerLabelPosition (width, height) {\n var size = this.getSize();\n var center = this.scale.arc.center;\n\n var left = center.x - width / 2;\n var top = center.y - height / 2;\n\n if (width < size.width) {\n var right = left + width;\n\n left = Math.max(left, 0);\n\n if (right > size.width) {\n left -= right - size.width;\n }\n }\n\n if (height < size.height) {\n var bbox = this.scale.bbox;\n var yLimit = bbox.bottomRight().y;\n var bottom = top + height;\n\n top = Math.max(top, bbox.origin.y);\n\n if (bottom > yLimit) {\n top -= bottom - yLimit;\n }\n }\n\n return {\n left: left,\n top: top\n };\n };\n\n return ArcGauge;\n}(RadialGauge));\n\nexport default ArcGauge;","import ArcGauge from '../arc/arc-gauge';\n\nvar defaultStartAngle = 90;\n\nvar CircularGauge = (function (ArcGauge) {\n function CircularGauge () {\n ArcGauge.apply(this, arguments);\n }\n\n if ( ArcGauge ) CircularGauge.__proto__ = ArcGauge;\n CircularGauge.prototype = Object.create( ArcGauge && ArcGauge.prototype );\n CircularGauge.prototype.constructor = CircularGauge;\n\n CircularGauge.prototype._createModel = function _createModel () {\n var scaleOptions = this.options.scale;\n if (typeof scaleOptions.startAngle !== 'number') {\n scaleOptions.startAngle = defaultStartAngle;\n }\n\n scaleOptions.endAngle = scaleOptions.startAngle + 360;\n\n ArcGauge.prototype._createModel.call(this);\n };\n\n return CircularGauge;\n}(ArcGauge));\n\nexport default CircularGauge;\n","import {\n Class,\n defined,\n setDefaultOptions\n} from '../../common';\n\nvar DEFAULT_QUIET_ZONE_LENGTH = 10;\n\nexport var Encoding = (function (Class) {\n function Encoding(options) {\n Class.call(this);\n this.setOptions(options);\n this.initProperties();\n }\n\n if ( Class ) Encoding.__proto__ = Class;\n Encoding.prototype = Object.create( Class && Class.prototype );\n Encoding.prototype.constructor = Encoding;\n\n Encoding.prototype.initProperties = function initProperties () { };\n\n Encoding.prototype.setOptions = function setOptions (options) {\n this.options = Object.assign({}, this.options, options);\n this.quietZoneLength = this.options.addQuietZone ? 2 * this.options.quietZoneLength : 0;\n };\n\n Encoding.prototype.encode = function encode (value, width, height) {\n var convertedValue = defined(value) ? String(value) : value;\n\n this.initValue(convertedValue, width, height);\n\n if (this.options.addQuietZone) {\n this.addQuietZone();\n }\n\n this.addData();\n\n if (this.options.addQuietZone) {\n this.addQuietZone();\n }\n\n return {\n baseUnit: this.baseUnit,\n pattern: this.pattern\n };\n };\n\n Encoding.prototype.initValue = function initValue () { };\n\n Encoding.prototype.addQuietZone = function addQuietZone () {\n this.pattern.push(this.options.quietZoneLength || DEFAULT_QUIET_ZONE_LENGTH);\n };\n\n Encoding.prototype.addData = function addData () { };\n\n Encoding.prototype.invalidCharacterError = function invalidCharacterError (character) {\n throw new Error((\"Character \\\"\" + character + \"\\\" is not valid for symbology \" + (this.name) + \".\"));\n };\n\n return Encoding;\n}(Class));\n\nsetDefaultOptions(Encoding, {\n quietZoneLength: DEFAULT_QUIET_ZONE_LENGTH,\n addQuietZone: true,\n addCheckSum: true\n});\n","import { Encoding } from './encoding';\nimport { setDefaultOptions } from '../../common';\n\nvar extend = Object.assign;\n\nexport var Code11 = (function (Encoding) {\n function Code11 () {\n Encoding.apply(this, arguments);\n }\n\n if ( Encoding ) Code11.__proto__ = Encoding;\n Code11.prototype = Object.create( Encoding && Encoding.prototype );\n Code11.prototype.constructor = Code11;\n\n Code11.prototype.initProperties = function initProperties () {\n Encoding.prototype.initProperties.call(this);\n\n extend(this, {\n name: \"Code 11\",\n characterMap: [\"111121\", \"211121\", \"121121\", \"221111\", \"112121\", \"212111\", \"122111\", \"111221\", \"211211\", \"211111\", \"112111\"],\n cCheckSumTotal: 10,\n kCheckSumTotal: 9,\n kCheckSumMinLength: 10,\n checkSumMod: 11,\n DASH_VALUE: 10,\n DASH: \"-\",\n START: \"112211\",\n STOP: \"11221\"\n });\n };\n\n Code11.prototype.initValue = function initValue (value, width) {\n this.pattern = [];\n this.value = value;\n this.width = width;\n this.totalUnits = 0;\n };\n\n Code11.prototype.addData = function addData () {\n var this$1 = this;\n\n var value = this.value;\n\n this.addPattern(this.START);\n\n for (var i = 0; i < value.length; i++) {\n this$1.addCharacter(value.charAt(i));\n }\n\n if (this.options.addCheckSum) {\n this.addCheckSum();\n }\n\n this.addPattern(this.STOP);\n this.setBaseUnit();\n };\n\n Code11.prototype.setBaseUnit = function setBaseUnit () {\n this.baseUnit = this.width / (this.totalUnits + this.quietZoneLength);\n };\n\n Code11.prototype.addCheckSum = function addCheckSum () {\n var value = this.value;\n var length = value.length;\n var cValue = this.getWeightedSum(value, length, this.cCheckSumTotal) % this.checkSumMod;\n\n this.checksum = String(cValue);\n this.addPattern(this.characterMap[cValue]);\n\n length++;\n\n if (length >= this.kCheckSumMinLength) {\n var kValue = (cValue + this.getWeightedSum(value, length, this.kCheckSumTotal)) % this.checkSumMod;\n this.checksum += kValue;\n this.addPattern(this.characterMap[kValue]);\n }\n };\n\n Code11.prototype.getWeightedSum = function getWeightedSum (value, length, total) {\n var this$1 = this;\n\n var weightedSum = 0;\n\n for (var i = 0; i < value.length; i++) {\n weightedSum += this$1.weightedValue(this$1.getValue(value.charAt(i)), length, i, total);\n }\n\n return weightedSum;\n };\n\n Code11.prototype.weightedValue = function weightedValue (value, length, index, total) {\n var weight = (length - index) % total || total;\n return weight * value;\n };\n\n Code11.prototype.getValue = function getValue (character) {\n if (!isNaN(character)) {\n return parseInt(character, 10);\n } else if (character !== this.DASH) {\n this.invalidCharacterError(character);\n }\n\n return this.DASH_VALUE;\n };\n\n Code11.prototype.addCharacter = function addCharacter (character) {\n var value = this.getValue(character);\n var pattern = this.characterMap[value];\n\n this.addPattern(pattern);\n };\n\n Code11.prototype.addPattern = function addPattern (pattern) {\n var this$1 = this;\n\n var value;\n\n for (var i = 0; i < pattern.length; i++) {\n value = parseInt(pattern.charAt(i), 10);\n this$1.pattern.push(value);\n this$1.totalUnits += value;\n }\n };\n\n return Code11;\n}(Encoding));\n\nsetDefaultOptions(Code11, {\n addCheckSum: true\n});\n","import { setDefaultOptions } from '../../common';\nimport { Encoding } from './encoding';\n\nvar extend = Object.assign;\n\nexport var Code39Base = (function (Encoding) {\n function Code39Base () {\n Encoding.apply(this, arguments);\n }\n\n if ( Encoding ) Code39Base.__proto__ = Encoding;\n Code39Base.prototype = Object.create( Encoding && Encoding.prototype );\n Code39Base.prototype.constructor = Code39Base;\n\n Code39Base.prototype.initProperties = function initProperties () {\n Encoding.prototype.initProperties.call(this);\n\n extend(this, {\n minBaseUnitLength: 0.7\n });\n };\n\n Code39Base.prototype.addData = function addData () {\n var this$1 = this;\n\n var value = this.value;\n\n this.addStart();\n\n for (var idx = 0; idx < value.length; idx++) {\n this$1.addCharacter(value.charAt(idx));\n }\n\n if (this.options.addCheckSum) {\n this.pushCheckSum();\n }\n\n this.addStop();\n this.prepareValues();\n };\n\n Code39Base.prototype.addCharacter = function addCharacter (character) {\n var characterData = this.characterMap[character];\n\n if (!characterData) {\n this.invalidCharacterError(character);\n }\n\n this.addBase(characterData);\n };\n\n Code39Base.prototype.addBase = function addBase () { };\n\n return Code39Base;\n}(Encoding));\n\nexport var Code39 = (function (Code39Base) {\n function Code39 () {\n Code39Base.apply(this, arguments);\n }\n\n if ( Code39Base ) Code39.__proto__ = Code39Base;\n Code39.prototype = Object.create( Code39Base && Code39Base.prototype );\n Code39.prototype.constructor = Code39;\n\n Code39.prototype.initProperties = function initProperties () {\n Code39Base.prototype.initProperties.call(this);\n\n extend(this, {\n name: \"Code 39\",\n checkSumMod: 43,\n minRatio: 2.5,\n maxRatio: 3,\n gapWidth: 1,\n splitCharacter: \"|\",\n patternMappings: {\n \"b\": \"1|\",\n \"w\": \"1|\",\n \"B\": \"ratio|\",\n \"W\": \"ratio|\"\n },\n characterMap: {\n \"0\": { \"pattern\": \"bwbWBwBwb\", \"value\": 0 },\n \"1\": { \"pattern\": \"BwbWbwbwB\", \"value\": 1 },\n \"2\": { \"pattern\": \"bwBWbwbwB\", \"value\": 2 },\n \"3\": { \"pattern\": \"BwBWbwbwb\", \"value\": 3 },\n \"4\": { \"pattern\": \"bwbWBwbwB\", \"value\": 4 },\n \"5\": { \"pattern\": \"BwbWBwbwb\", \"value\": 5 },\n \"6\": { \"pattern\": \"bwBWBwbwb\", \"value\": 6 },\n \"7\": { \"pattern\": \"bwbWbwBwB\", \"value\": 7 },\n \"8\": { \"pattern\": \"BwbWbwBwb\", \"value\": 8 },\n \"9\": { \"pattern\": \"bwBWbwBwb\", \"value\": 9 },\n \"A\": { \"pattern\": \"BwbwbWbwB\", \"value\": 10 },\n \"B\": { \"pattern\": \"bwBwbWbwB\", \"value\": 11 },\n \"C\": { \"pattern\": \"BwBwbWbwb\", \"value\": 12 },\n \"D\": { \"pattern\": \"bwbwBWbwB\", \"value\": 13 },\n \"E\": { \"pattern\": \"BwbwBWbwb\", \"value\": 14 },\n \"F\": { \"pattern\": \"bwBwBWbwb\", \"value\": 15 },\n \"G\": { \"pattern\": \"bwbwbWBwB\", \"value\": 16 },\n \"H\": { \"pattern\": \"BwbwbWBwb\", \"value\": 17 },\n \"I\": { \"pattern\": \"bwBwbWBwb\", \"value\": 18 },\n \"J\": { \"pattern\": \"bwbwBWBwb\", \"value\": 19 },\n \"K\": { \"pattern\": \"BwbwbwbWB\", \"value\": 20 },\n \"L\": { \"pattern\": \"bwBwbwbWB\", \"value\": 21 },\n \"M\": { \"pattern\": \"BwBwbwbWb\", \"value\": 22 },\n \"N\": { \"pattern\": \"bwbwBwbWB\", \"value\": 23 },\n \"O\": { \"pattern\": \"BwbwBwbWb\", \"value\": 24 },\n \"P\": { \"pattern\": \"bwBwBwbWb\", \"value\": 25 },\n \"Q\": { \"pattern\": \"bwbwbwBWB\", \"value\": 26 },\n \"R\": { \"pattern\": \"BwbwbwBWb\", \"value\": 27 },\n \"S\": { \"pattern\": \"bwBwbwBWb\", \"value\": 28 },\n \"T\": { \"pattern\": \"bwbwBwBWb\", \"value\": 29 },\n \"U\": { \"pattern\": \"BWbwbwbwB\", \"value\": 30 },\n \"V\": { \"pattern\": \"bWBwbwbwB\", \"value\": 31 },\n \"W\": { \"pattern\": \"BWBwbwbwb\", \"value\": 32 },\n \"X\": { \"pattern\": \"bWbwBwbwB\", \"value\": 33 },\n \"Y\": { \"pattern\": \"BWbwBwbwb\", \"value\": 34 },\n \"Z\": { \"pattern\": \"bWBwBwbwb\", \"value\": 35 },\n \"-\": { \"pattern\": \"bWbwbwBwB\", \"value\": 36 },\n \".\": { \"pattern\": \"BWbwbwBwb\", \"value\": 37 },\n \" \": { \"pattern\": \"bWBwbwBwb\", \"value\": 38 },\n \"$\": { \"pattern\": \"bWbWbWbwb\", \"value\": 39 },\n \"/\": { \"pattern\": \"bWbWbwbWb\", \"value\": 40 },\n \"+\": { \"pattern\": \"bWbwbWbWb\", \"value\": 41 },\n \"%\": { \"pattern\": \"bwbWbWbWb\", \"value\": 42 },\n START: { pattern: \"bWbwBwBwb\" }\n }\n });\n };\n\n Code39.prototype.initValue = function initValue (value, width, height) {\n this.width = width;\n this.height = height;\n this.value = value;\n this.dataLength = value.length;\n this.pattern = [];\n this.patternString = \"\";\n };\n\n Code39.prototype.prepareValues = function prepareValues () {\n var this$1 = this;\n\n var minBaseUnit = this.minBaseUnitLength;\n var minRatio = this.minRatio;\n var minHeight = Math.ceil(Math.max(0.15 * this.width, 24));\n var baseUnit;\n var ratio = this.maxRatio;\n\n if (this.height < minHeight) {\n throw new Error((\"Insufficient height for Code39 encoding: the current height is \" + (this.height) + \"px and the minimum height is \" + minHeight + \"px.\"));\n }\n\n baseUnit = this.getBaseUnit(ratio);\n\n while (baseUnit < minBaseUnit && ratio > minRatio) {\n ratio = parseFloat((ratio - 0.1).toFixed(1));\n baseUnit = this$1.getBaseUnit(ratio);\n }\n\n if (baseUnit < minBaseUnit) {\n var minWidth = Math.ceil(this.getBaseWidth(minRatio) * minBaseUnit);\n throw new Error((\"Insufficient width for Code39 encoding: the current width is \" + (this.width) + \"px and the minimum width for value \\\"\" + (this.value) + \"\\\" is \" + minWidth + \"px.\"));\n }\n\n this.ratio = ratio;\n this.baseUnit = baseUnit;\n this.patternString = this.patternString.substring(0, this.patternString.length - 1);\n this.pattern = this.pattern.concat(this.patternString.replace(/ratio/g, ratio).split(this.splitCharacter));\n };\n\n Code39.prototype.getBaseUnit = function getBaseUnit (ratio) {\n return this.width / this.getBaseWidth(ratio);\n };\n\n Code39.prototype.getBaseWidth = function getBaseWidth (ratio) {\n var characterLength = 3 * (ratio + 2);\n return this.quietZoneLength + characterLength * (this.dataLength + 2) + this.gapWidth * (this.dataLength + 1);\n };\n\n Code39.prototype.addStart = function addStart () {\n this.addPattern(this.characterMap.START.pattern);\n this.addCharacterGap();\n };\n\n Code39.prototype.addBase = function addBase (character) {\n this.addPattern(character.pattern);\n this.addCharacterGap();\n };\n\n Code39.prototype.addStop = function addStop () {\n this.addPattern(this.characterMap.START.pattern);\n };\n\n Code39.prototype.addPattern = function addPattern (pattern) {\n var this$1 = this;\n\n for (var i = 0; i < pattern.length; i++) {\n this$1.patternString += this$1.patternMappings[pattern.charAt(i)];\n }\n };\n\n Code39.prototype.addCharacterGap = function addCharacterGap () {\n this.patternString += this.gapWidth + this.splitCharacter;\n };\n\n return Code39;\n}(Code39Base));\n\nsetDefaultOptions(Code39, {\n addCheckSum: false\n});\n","import { Code39 } from './code39';\nimport deepExtend from '../../common/deep-extend';\n\nexport var Code39ExtendedBase = {\n addCharacter: function addCharacter(character) {\n if (this.characterMap[character]) {\n this.addBase(this.characterMap[character]);\n } else if (character.charCodeAt(0) > 127) {\n this.invalidCharacterError(character);\n } else {\n this.addExtended(character.charCodeAt(0));\n }\n },\n\n addExtended: function addExtended(code) {\n var this$1 = this;\n\n var patterns;\n\n for (var i = 0; i < this.extendedMappings.length; i++) {\n patterns = this$1.extendedMappings[i].call(this$1, code);\n\n if (patterns) {\n for (var patternIndex = 0; patternIndex < patterns.length; patternIndex++) {\n var pattern = patterns[patternIndex];\n this$1.addBase(pattern);\n }\n\n this$1.dataLength += patterns.length - 1;\n return;\n }\n }\n },\n\n extendedMappings: [\n function(code) {\n if (97 <= code && code <= 122) {\n return [this.characterMap[this.shiftCharacters[0]], this.characterMap[String.fromCharCode(code - 32)]];\n }\n },\n function(code) {\n if (33 <= code && code <= 58) {\n return [this.characterMap[this.shiftCharacters[1]], this.characterMap[String.fromCharCode(code + 32)]];\n }\n },\n function(code) {\n if (1 <= code && code <= 26) {\n return [this.characterMap[this.shiftCharacters[2]], this.characterMap[String.fromCharCode(code + 64)]];\n }\n },\n function(code) {\n var this$1 = this;\n\n var result;\n var dataCharacter;\n\n if (!this.specialAsciiCodes[code]) {\n dataCharacter = Math.floor(code / 32) * 6 + (code - 27) % 32 + 64;\n result = [this.characterMap[this.shiftCharacters[3]], this.characterMap[String.fromCharCode(dataCharacter)]];\n } else {\n result = [];\n\n for (var i = 0; i < this.specialAsciiCodes[code].length; i++) {\n result.push(this$1.characterMap[this$1.shiftCharacters[3]]);\n result.push(this$1.characterMap[this$1.specialAsciiCodes[code][i]]);\n }\n }\n\n return result;\n }\n ],\n specialAsciiCodes: {\n \"0\": [\"U\"],\n \"64\": [\"V\"],\n \"96\": [\"W\"],\n \"127\": [\"T\", \"X\", \"Y\", \"Z\"]\n },\n shiftValuesAsciiCodes: {\n \"39\": 36,\n \"40\": 47,\n \"41\": 43,\n \"42\": 37\n },\n characterMap: {\n \"+\": false,\n \"/\": false,\n \"$\": false,\n \"%\": false\n },\n shiftCharacters: [\"SHIFT0\", \"SHIFT1\", \"SHIFT2\", \"SHIFT3\"]\n};\n\nexport var Code39Extended = (function (Code39) {\n function Code39Extended () {\n Code39.apply(this, arguments);\n }\n\n if ( Code39 ) Code39Extended.__proto__ = Code39;\n Code39Extended.prototype = Object.create( Code39 && Code39.prototype );\n Code39Extended.prototype.constructor = Code39Extended;\n\n Code39Extended.prototype.initProperties = function initProperties () {\n Code39.prototype.initProperties.call(this);\n\n deepExtend(this, Code39ExtendedBase, {\n name: \"Code 39 extended\",\n characterMap: {\n SHIFT0: { \"pattern\": \"bWbwbWbWb\", \"value\": 41 },\n SHIFT1: { \"pattern\": \"bWbWbwbWb\", \"value\": 40 },\n SHIFT2: { \"pattern\": \"bWbWbWbwb\", \"value\": 39 },\n SHIFT3: { \"pattern\": \"bwbWbWbWb\", \"value\": 42 }\n }\n });\n };\n\n return Code39Extended;\n}(Code39));\n","import { Code39Base } from './code39';\n\nvar extend = Object.assign;\n\nexport var Code93 = (function (Code39Base) {\n function Code93 () {\n Code39Base.apply(this, arguments);\n }\n\n if ( Code39Base ) Code93.__proto__ = Code39Base;\n Code93.prototype = Object.create( Code39Base && Code39Base.prototype );\n Code93.prototype.constructor = Code93;\n\n Code93.prototype.initProperties = function initProperties () {\n Code39Base.prototype.initProperties.call(this);\n\n extend(this, {\n name: \"Code 93\",\n cCheckSumTotal: 20,\n kCheckSumTotal: 15,\n checkSumMod: 47,\n characterMap: {\n \"0\": { \"pattern\": \"131112\", \"value\": 0 },\n \"1\": { \"pattern\": \"111213\", \"value\": 1 },\n \"2\": { \"pattern\": \"111312\", \"value\": 2 },\n \"3\": { \"pattern\": \"111411\", \"value\": 3 },\n \"4\": { \"pattern\": \"121113\", \"value\": 4 },\n \"5\": { \"pattern\": \"121212\", \"value\": 5 },\n \"6\": { \"pattern\": \"121311\", \"value\": 6 },\n \"7\": { \"pattern\": \"111114\", \"value\": 7 },\n \"8\": { \"pattern\": \"131211\", \"value\": 8 },\n \"9\": { \"pattern\": \"141111\", \"value\": 9 },\n \"A\": { \"pattern\": \"211113\", \"value\": 10 },\n \"B\": { \"pattern\": \"211212\", \"value\": 11 },\n \"C\": { \"pattern\": \"211311\", \"value\": 12 },\n \"D\": { \"pattern\": \"221112\", \"value\": 13 },\n \"E\": { \"pattern\": \"221211\", \"value\": 14 },\n \"F\": { \"pattern\": \"231111\", \"value\": 15 },\n \"G\": { \"pattern\": \"112113\", \"value\": 16 },\n \"H\": { \"pattern\": \"112212\", \"value\": 17 },\n \"I\": { \"pattern\": \"112311\", \"value\": 18 },\n \"J\": { \"pattern\": \"122112\", \"value\": 19 },\n \"K\": { \"pattern\": \"132111\", \"value\": 20 },\n \"L\": { \"pattern\": \"111123\", \"value\": 21 },\n \"M\": { \"pattern\": \"111222\", \"value\": 22 },\n \"N\": { \"pattern\": \"111321\", \"value\": 23 },\n \"O\": { \"pattern\": \"121122\", \"value\": 24 },\n \"P\": { \"pattern\": \"131121\", \"value\": 25 },\n \"Q\": { \"pattern\": \"212112\", \"value\": 26 },\n \"R\": { \"pattern\": \"212211\", \"value\": 27 },\n \"S\": { \"pattern\": \"211122\", \"value\": 28 },\n \"T\": { \"pattern\": \"211221\", \"value\": 29 },\n \"U\": { \"pattern\": \"221121\", \"value\": 30 },\n \"V\": { \"pattern\": \"222111\", \"value\": 31 },\n \"W\": { \"pattern\": \"112122\", \"value\": 32 },\n \"X\": { \"pattern\": \"112221\", \"value\": 33 },\n \"Y\": { \"pattern\": \"122121\", \"value\": 34 },\n \"Z\": { \"pattern\": \"123111\", \"value\": 35 },\n \"-\": { \"pattern\": \"121131\", \"value\": 36 },\n \".\": { \"pattern\": \"311112\", \"value\": 37 },\n \" \": { \"pattern\": \"311211\", \"value\": 38 },\n \"$\": { \"pattern\": \"321111\", \"value\": 39 },\n \"/\": { \"pattern\": \"112131\", \"value\": 40 },\n \"+\": { \"pattern\": \"113121\", \"value\": 41 },\n \"%\": { \"pattern\": \"211131\", \"value\": 42 },\n SHIFT0: { \"pattern\": \"122211\", \"value\": 46 },\n SHIFT1: { \"pattern\": \"311121\", \"value\": 45 },\n SHIFT2: { \"pattern\": \"121221\", \"value\": 43 },\n SHIFT3: { \"pattern\": \"312111\", \"value\": 44 },\n START: { \"pattern\": \"111141\" },\n TERMINATION_BAR: \"1\"\n }\n });\n };\n\n Code93.prototype.initValue = function initValue (value, width, height) {\n this.value = value;\n this.width = width;\n this.height = height;\n this.pattern = [];\n this.values = [];\n this.dataLength = value.length;\n };\n\n Code93.prototype.prepareValues = function prepareValues () {\n var minHeight = Math.ceil(Math.max(0.15 * this.width, 24));\n\n if (this.height < minHeight) {\n throw new Error((\"Insufficient height for Code93 encoding: the current height is \" + (this.height) + \"px, the minimum required height is \" + minHeight + \"px.\"));\n }\n\n this.setBaseUnit();\n\n if (this.baseUnit < this.minBaseUnitLength) {\n var minWidth = Math.ceil(this.minBaseUnitLength * (this.width / this.baseUnit));\n throw new Error((\"Insufficient width for Code93 encoding: the current width is \" + (this.width) + \"px and the minimum required width for value \\\"\" + (this.value) + \"\\\" is \" + minWidth + \"px.\"));\n }\n };\n\n Code93.prototype.setBaseUnit = function setBaseUnit () {\n var checkSumLength = 2;\n\n this.baseUnit = this.width / (9 * (this.dataLength + 2 + checkSumLength) + this.quietZoneLength + 1);\n };\n\n Code93.prototype.addStart = function addStart () {\n var pattern = this.characterMap.START.pattern;\n this.addPattern(pattern);\n };\n\n Code93.prototype.addStop = function addStop () {\n this.addStart();\n this.pattern.push(this.characterMap.TERMINATION_BAR);\n };\n\n Code93.prototype.addBase = function addBase (charData) {\n this.addPattern(charData.pattern);\n this.values.push(charData.value);\n };\n\n Code93.prototype.pushCheckSum = function pushCheckSum () {\n var this$1 = this;\n\n var checkValues = this._getCheckValues();\n var charData;\n\n this.checksum = checkValues.join(\"\");\n\n for (var i = 0; i < checkValues.length; i++) {\n charData = this$1.characterMap[this$1._findCharacterByValue(checkValues[i])];\n this$1.addPattern(charData.pattern);\n }\n };\n\n Code93.prototype._getCheckValues = function _getCheckValues () {\n var this$1 = this;\n\n var values = this.values;\n var length = values.length;\n var wightedSum = 0;\n var cValue;\n var kValue;\n var idx;\n\n for (idx = length - 1; idx >= 0; idx--) {\n wightedSum += this$1.weightedValue(values[idx], length - idx, this$1.cCheckSumTotal);\n }\n\n cValue = wightedSum % this.checkSumMod;\n\n wightedSum = this.weightedValue(cValue, 1, this.kCheckSumTotal);\n\n for (idx = length - 1; idx >= 0; idx--) {\n wightedSum += this$1.weightedValue(values[idx], length - idx + 1, this$1.kCheckSumTotal);\n }\n\n kValue = wightedSum % this.checkSumMod;\n return [cValue, kValue];\n };\n\n Code93.prototype._findCharacterByValue = function _findCharacterByValue (value) {\n var this$1 = this;\n\n for (var character in this$1.characterMap) {\n if (this$1.characterMap[character].value === value) {\n return character;\n }\n }\n };\n\n Code93.prototype.weightedValue = function weightedValue (value, index, total) {\n return (index % total || total) * value;\n };\n\n Code93.prototype.addPattern = function addPattern (pattern) {\n var this$1 = this;\n\n var value;\n\n for (var i = 0; i < pattern.length; i++) {\n value = parseInt(pattern.charAt(i), 10);\n this$1.pattern.push(value);\n }\n };\n\n return Code93;\n}(Code39Base));\n","import { Code93 } from './code93';\nimport { Code39ExtendedBase } from './code39-extended';\nimport deepExtend from '../../common/deep-extend';\n\nexport var Code93Extended = (function (Code93) {\n function Code93Extended () {\n Code93.apply(this, arguments);\n }\n\n if ( Code93 ) Code93Extended.__proto__ = Code93;\n Code93Extended.prototype = Object.create( Code93 && Code93.prototype );\n Code93Extended.prototype.constructor = Code93Extended;\n\n Code93Extended.prototype.initProperties = function initProperties () {\n Code93.prototype.initProperties.call(this);\n\n deepExtend(this, Code39ExtendedBase, {\n name: \"Code 93 extended\",\n pushCheckSum: function() {\n var this$1 = this;\n\n var checkValues = this._getCheckValues();\n var value;\n\n this.checksum = checkValues.join(\"\");\n\n for (var i = 0; i < checkValues.length; i++) {\n value = checkValues[i];\n\n if (this$1.shiftValuesAsciiCodes[value]) {\n this$1.addExtended(this$1.shiftValuesAsciiCodes[value]);\n } else {\n var characterByValue = this$1._findCharacterByValue(value);\n this$1.addPattern(this$1.characterMap[characterByValue].pattern);\n }\n }\n }\n });\n };\n\n return Code93Extended;\n}(Code93));\n","import { Encoding } from './encoding';\nimport inArray from '../../common/in-array';\n\nvar numberRegex = /^\\d+$/;\nvar extend = Object.assign;\n\nexport var Postnet = (function (Encoding) {\n function Postnet () {\n Encoding.apply(this, arguments);\n }\n\n if ( Encoding ) Postnet.__proto__ = Encoding;\n Postnet.prototype = Object.create( Encoding && Encoding.prototype );\n Postnet.prototype.constructor = Postnet;\n\n Postnet.prototype.initProperties = function initProperties () {\n Encoding.prototype.initProperties.call(this);\n\n extend(this, {\n name: \"Postnet\",\n START: \"2\",\n VALID_CODE_LENGTHS: [5, 9, 11],\n DIGIT_SEPARATOR: \"-\",\n characterMap: [\"22111\", \"11122\", \"11212\", \"11221\", \"12112\", \"12121\", \"12211\", \"21112\", \"21121\", \"21211\"]\n });\n };\n\n Postnet.prototype.initValue = function initValue (value, width, height) {\n this.height = height;\n this.width = width;\n this.baseHeight = height / 2;\n this.value = value.replace(new RegExp(this.DIGIT_SEPARATOR, \"g\"), \"\");\n this.pattern = [];\n this.validate(this.value);\n this.checkSum = 0;\n this.setBaseUnit();\n };\n\n Postnet.prototype.addData = function addData () {\n var this$1 = this;\n\n var value = this.value;\n\n this.addPattern(this.START);\n\n for (var i = 0; i < value.length; i++) {\n this$1.addCharacter(value.charAt(i));\n }\n\n if (this.options.addCheckSum) {\n this.addCheckSum();\n }\n\n this.addPattern(this.START);\n this.pattern.pop();\n };\n\n Postnet.prototype.addCharacter = function addCharacter (character) {\n var pattern = this.characterMap[character];\n this.checkSum += parseInt(character, 10);\n this.addPattern(pattern);\n };\n\n Postnet.prototype.addCheckSum = function addCheckSum () {\n this.checksum = (10 - (this.checkSum % 10)) % 10;\n this.addCharacter(this.checksum);\n };\n\n Postnet.prototype.setBaseUnit = function setBaseUnit () {\n var startStopLength = 3;\n\n this.baseUnit = this.width / ((this.value.length + 1) * 10 + startStopLength + this.quietZoneLength);\n };\n\n Postnet.prototype.validate = function validate (value) {\n if (!numberRegex.test(value)) {\n this.invalidCharacterError(value.match(/[^0-9]/)[0]);\n }\n\n if (!inArray(value.length, this.VALID_CODE_LENGTHS)) {\n throw new Error(\"Invalid value length. Valid lengths for the Postnet symbology are \" + this.VALID_CODE_LENGTHS.join(\",\") + \".\");\n }\n };\n\n Postnet.prototype.addPattern = function addPattern (pattern) {\n var this$1 = this;\n\n var y1;\n\n for (var i = 0; i < pattern.length; i++) {\n y1 = this$1.height - this$1.baseHeight * pattern.charAt(i);\n this$1.pattern.push({ width: 1, y1: y1, y2: this$1.height });\n this$1.pattern.push(1);\n }\n };\n\n return Postnet;\n}(Encoding));\n","import { Class } from '../../common';\nimport { Encoding } from './encoding';\nimport deepExtend from '../../common/deep-extend';\nimport inArray from '../../common/in-array';\n\nvar numberRegex = /^\\d+$/;\nvar alphanumericRegex = /^[a-z0-9]+$/i;\nvar extend = Object.assign;\n\nexport var State128 = (function (Class) {\n function State128(encoding) {\n Class.call(this);\n this.encoding = encoding;\n this.initProperties();\n }\n\n if ( Class ) State128.__proto__ = Class;\n State128.prototype = Object.create( Class && Class.prototype );\n State128.prototype.constructor = State128;\n\n State128.prototype.initProperties = function initProperties () { };\n\n State128.prototype.addStart = function addStart () { };\n\n State128.prototype.is = function is () { };\n\n State128.prototype.isCode = function isCode () {\n return false;\n };\n\n State128.prototype.move = function move () { };\n\n State128.prototype.pushState = function pushState () { };\n\n return State128;\n}(Class));\n\nexport var State128AB = (function (State128) {\n function State128AB(encoding, states) {\n State128.call(this, encoding);\n this.states = states;\n this._initMoves(states);\n }\n\n if ( State128 ) State128AB.__proto__ = State128;\n State128AB.prototype = Object.create( State128 && State128.prototype );\n State128AB.prototype.constructor = State128AB;\n\n State128AB.prototype.initProperties = function initProperties () {\n State128.prototype.initProperties.call(this);\n\n deepExtend(this, {\n FNC4: \"FNC4\",\n SHIFT: 98\n });\n };\n\n State128AB.prototype.addStart = function addStart () {\n this.encoding.addPattern(this.START);\n };\n\n State128AB.prototype.is = function is (value, index) {\n var code = value.charCodeAt(index);\n return this.isCode(code);\n };\n\n State128AB.prototype.move = function move (encodingState) {\n var idx = 0;\n\n while (!this._moves[idx].call(this, encodingState) && idx < this._moves.length) {\n idx++;\n }\n };\n\n State128AB.prototype.pushState = function pushState (encodingState) {\n var this$1 = this;\n\n var states = this.states,\n value = encodingState.value,\n maxLength = value.length,\n code;\n\n if (inArray(\"C\", states)) {\n var numberMatch = value.substr(encodingState.index).match(/\\d{4,}/g);\n\n if (numberMatch) {\n maxLength = value.indexOf(numberMatch[0], encodingState.index);\n }\n }\n\n while ((code = encodingState.value.charCodeAt(encodingState.index)) >= 0 &&\n this.isCode(code) &&\n encodingState.index < maxLength) {\n this$1.encoding.addPattern(this$1.getValue(code));\n encodingState.index++;\n }\n };\n\n State128AB.prototype._initMoves = function _initMoves (states) {\n this._moves = [];\n\n if (inArray(this.FNC4, states)) {\n this._moves.push(this._moveFNC);\n }\n\n if (inArray(this.shiftKey, states)) {\n this._moves.push(this._shiftState);\n }\n\n this._moves.push(this._moveState);\n };\n\n State128AB.prototype._moveFNC = function _moveFNC (encodingState) {\n if (encodingState.fnc) {\n encodingState.fnc = false;\n return encodingState.previousState === this.key;\n }\n };\n\n State128AB.prototype._shiftState = function _shiftState (encodingState) {\n if (encodingState.previousState === this.shiftKey &&\n (encodingState.index + 1 >= encodingState.value.length ||\n this.encoding[this.shiftKey].is(encodingState.value, encodingState.index + 1))) {\n this.encoding.addPattern(this.SHIFT);\n encodingState.shifted = true;\n return true;\n }\n };\n\n State128AB.prototype._moveState = function _moveState () {\n this.encoding.addPattern(this.MOVE);\n return true;\n };\n\n return State128AB;\n}(State128));\n\nvar states128 = {};\n\nstates128.A = (function (State128AB) {\n function State128A () {\n State128AB.apply(this, arguments);\n }\n\n if ( State128AB ) State128A.__proto__ = State128AB;\n State128A.prototype = Object.create( State128AB && State128AB.prototype );\n State128A.prototype.constructor = State128A;\n\n State128A.prototype.initProperties = function initProperties () {\n State128AB.prototype.initProperties.call(this);\n\n extend(this, {\n key: \"A\",\n shiftKey: \"B\",\n MOVE: 101,\n START: 103\n });\n };\n\n State128A.prototype.isCode = function isCode (code) {\n return 0 <= code && code < 96;\n };\n\n State128A.prototype.getValue = function getValue (code) {\n if (code < 32) {\n return code + 64;\n }\n\n return code - 32;\n };\n\n return State128A;\n}(State128AB));\n\nstates128.B = (function (State128AB) {\n function State128B () {\n State128AB.apply(this, arguments);\n }\n\n if ( State128AB ) State128B.__proto__ = State128AB;\n State128B.prototype = Object.create( State128AB && State128AB.prototype );\n State128B.prototype.constructor = State128B;\n\n State128B.prototype.initProperties = function initProperties () {\n State128AB.prototype.initProperties.call(this);\n\n extend(this, {\n key: \"B\",\n shiftKey: \"A\",\n MOVE: 100,\n START: 104\n });\n };\n\n State128B.prototype.isCode = function isCode (code) {\n return 32 <= code && code < 128;\n };\n\n State128B.prototype.getValue = function getValue (code) {\n return code - 32;\n };\n\n return State128B;\n}(State128AB));\n\nstates128.C = (function (State128) {\n function State128C () {\n State128.apply(this, arguments);\n }\n\n if ( State128 ) State128C.__proto__ = State128;\n State128C.prototype = Object.create( State128 && State128.prototype );\n State128C.prototype.constructor = State128C;\n\n State128C.prototype.initProperties = function initProperties () {\n State128.prototype.initProperties.call(this);\n\n extend(this, {\n key: \"C\",\n MOVE: 99,\n START: 105\n });\n };\n\n State128C.prototype.addStart = function addStart () {\n this.encoding.addPattern(this.START);\n };\n\n State128C.prototype.is = function is (value, index) {\n var next4 = getSubstring(value, index, 4);\n return (index + 4 <= value.length || value.length === 2) && numberRegex.test(next4);\n };\n\n State128C.prototype.move = function move () {\n this.encoding.addPattern(this.MOVE);\n };\n\n State128C.prototype.pushState = function pushState (encodingState) {\n var this$1 = this;\n\n var code;\n\n while ((code = getSubstring(encodingState.value, encodingState.index, 2)) &&\n numberRegex.test(code) && code.length === 2) {\n this$1.encoding.addPattern(parseInt(code, 10));\n encodingState.index += 2;\n }\n };\n\n State128C.prototype.getValue = function getValue (code) {\n return code;\n };\n\n return State128C;\n}(State128));\n\nstates128.FNC4 = (function (State128) {\n function State128FNC4(encoding, states) {\n State128.call(this, encoding);\n this._initSubStates(states);\n }\n\n if ( State128 ) State128FNC4.__proto__ = State128;\n State128FNC4.prototype = Object.create( State128 && State128.prototype );\n State128FNC4.prototype.constructor = State128FNC4;\n\n State128FNC4.prototype.initProperties = function initProperties () {\n State128.prototype.initProperties.call(this);\n\n extend(this, {\n key: \"FNC4\",\n dependentStates: [\"A\", \"B\"]\n });\n };\n\n State128FNC4.prototype.addStart = function addStart (encodingState) {\n var code = encodingState.value.charCodeAt(0) - 128,\n subState = this._getSubState(code);\n\n this.encoding[subState].addStart();\n };\n\n State128FNC4.prototype.is = function is (value, index) {\n var code = value.charCodeAt(index);\n return this.isCode(code);\n };\n\n State128FNC4.prototype.isCode = function isCode (code) {\n return 128 <= code && code < 256;\n };\n\n State128FNC4.prototype.pushState = function pushState (encodingState) {\n var this$1 = this;\n\n var subState = this._initSubState(encodingState),\n encoding = this.encoding,\n length = subState.value.length;\n var code;\n\n encodingState.index += length;\n\n if (length < 3) {\n for (; subState.index < length; subState.index++) {\n code = subState.value.charCodeAt(subState.index);\n subState.state = this$1._getSubState(code);\n\n if (subState.previousState !== subState.state) {\n subState.previousState = subState.state;\n encoding[subState.state].move(subState);\n }\n\n encoding.addPattern(encoding[subState.state].MOVE);\n encoding.addPattern(encoding[subState.state].getValue(code));\n }\n } else {\n if (subState.state !== subState.previousState) {\n encoding[subState.state].move(subState);\n }\n\n this._pushStart(subState);\n encoding.pushData(subState, this.subStates);\n\n if (encodingState.index < encodingState.value.length) {\n this._pushStart(subState);\n }\n }\n\n encodingState.fnc = true;\n encodingState.state = subState.state;\n };\n\n State128FNC4.prototype._pushStart = function _pushStart (subState) {\n this.encoding.addPattern(this.encoding[subState.state].MOVE);\n this.encoding.addPattern(this.encoding[subState.state].MOVE);\n };\n\n State128FNC4.prototype._initSubState = function _initSubState (encodingState) {\n var subState = {\n value: this._getAll(encodingState.value, encodingState.index),\n index: 0\n };\n\n subState.state = this._getSubState(subState.value.charCodeAt(0));\n subState.previousState = encodingState.previousState === this.key ?\n subState.state :\n encodingState.previousState;\n\n return subState;\n };\n\n State128FNC4.prototype._initSubStates = function _initSubStates (states) {\n var this$1 = this;\n\n this.subStates = [];\n\n for (var i = 0; i < states.length; i++) {\n if (inArray(states[i], this$1.dependentStates)) {\n this$1.subStates.push(states[i]);\n }\n }\n };\n\n State128FNC4.prototype._getSubState = function _getSubState (code) {\n var this$1 = this;\n\n for (var i = 0; i < this.subStates.length; i++) {\n if (this$1.encoding[this$1.subStates[i]].isCode(code)) {\n return this$1.subStates[i];\n }\n }\n };\n\n State128FNC4.prototype._getAll = function _getAll (value, index) {\n var code;\n var result = \"\";\n var i = index;\n\n while ((code = value.charCodeAt(i++)) && this.isCode(code)) {\n result += String.fromCharCode(code - 128);\n }\n\n return result;\n };\n\n return State128FNC4;\n}(State128));\n\nstates128.FNC1 = (function (State128) {\n function States128FNC1(encoding, states) {\n State128.call(this, encoding);\n this.states = states;\n }\n\n if ( State128 ) States128FNC1.__proto__ = State128;\n States128FNC1.prototype = Object.create( State128 && State128.prototype );\n States128FNC1.prototype.constructor = States128FNC1;\n\n States128FNC1.prototype.initProperties = function initProperties () {\n State128.prototype.initProperties.call(this);\n\n extend(this, {\n key: \"FNC1\",\n startState: \"C\",\n startAI: \"(\",\n endAI: \")\",\n dependentStates: [\"C\", \"B\"],\n applicationIdentifiers: {\n \"22\": { max: 29, type: \"alphanumeric\" },\n \"402\": { length: 17 },\n \"7004\": { max: 4, type: \"alphanumeric\" },\n \"242\": { max: 6, type: \"alphanumeric\" },\n \"8020\": { max: 25, type: \"alphanumeric\" },\n \"703\": { min: 3, max: 30, type: \"alphanumeric\" },\n \"8008\": { min: 8, max: 12, type: \"alphanumeric\" },\n \"253\": { min: 13, max: 17, type: \"alphanumeric\" },\n \"8003\": { min: 14, max: 30, type: \"alphanumeric\" },\n multiKey: [{\n ids: [\"15\", \"17\", \"8005\", \"8100\"],\n ranges: [\n [11, 13],\n [310, 316],\n [320, 336],\n [340, 369]\n ],\n type: { length: 6 }\n }, {\n ids: [\"240\", \"241\", \"250\", \"251\", \"400\", \"401\", \"403\", \"7002\", \"8004\", \"8007\", \"8110\"],\n ranges: [[90 - 99]],\n type: { max: 30, type: \"alphanumeric\" }\n }, {\n ids: [\"7001\"],\n ranges: [[410, 414]],\n type: { length: 13 }\n }, {\n ids: [\"10\", \"21\", \"254\", \"420\", \"8002\"],\n type: { max: 20, type: \"alphanumeric\" }\n }, {\n ids: [\"00\", \"8006\", \"8017\", \"8018\"],\n type: { length: 18 }\n }, {\n ids: [\"01\", \"02\", \"8001\"],\n type: { length: 14 }\n }, {\n ids: [\"422\"],\n ranges: [\n [424, 426]\n ],\n type: { length: 3 }\n }, {\n ids: [\"20\", \"8102\"],\n type: { length: 2 }\n }, {\n ids: [\"30\", \"37\"],\n type: { max: 8, type: \"alphanumeric\" }\n }, {\n ids: [\"390\", \"392\"],\n type: { max: 15, type: \"alphanumeric\" }\n }, {\n ids: [\"421\", \"423\"],\n type: { min: 3, max: 15, type: \"alphanumeric\" }\n }, {\n ids: [\"391\", \"393\"],\n type: { min: 3, max: 18, type: \"alphanumeric\" }\n }, {\n ids: [\"7003\", \"8101\"],\n type: { length: 10 }\n }]\n },\n START: 102\n });\n };\n\n\n States128FNC1.prototype.addStart = function addStart () {\n this.encoding[this.startState].addStart();\n };\n\n States128FNC1.prototype.is = function is () {\n return inArray(this.key, this.states);\n };\n\n States128FNC1.prototype.pushState = function pushState (encodingState) {\n var this$1 = this;\n\n var encoding = this.encoding,\n value = encodingState.value.replace(/\\s/g, \"\"),\n regexSeparators = new RegExp(\"[\" + this.startAI + this.endAI + \"]\", \"g\"),\n index = encodingState.index,\n subState = {\n state: this.startState\n },\n current,\n nextStart,\n separatorLength;\n\n encoding.addPattern(this.START);\n\n var trueCondition = true;\n\n while (trueCondition) {\n subState.index = 0;\n\n separatorLength = value.charAt(index) === this$1.startAI ? 2 : 0;\n current = separatorLength > 0 ? this$1.getBySeparator(value, index) : this$1.getByLength(value, index);\n\n if (current.ai.length) {\n nextStart = index + separatorLength + current.id.length + current.ai.length;\n } else {\n nextStart = value.indexOf(this$1.startAI, index + 1);\n\n if (nextStart < 0) {\n if (index + current.ai.max + current.id.length + separatorLength < value.length) {\n throw new Error(\"Separators are required after variable length identifiers\");\n }\n\n nextStart = value.length;\n }\n }\n\n subState.value = value.substring(index, nextStart).replace(regexSeparators, \"\");\n this$1.validate(current, subState.value);\n encoding.pushData(subState, this$1.dependentStates);\n\n if (nextStart >= value.length) {\n break;\n }\n\n index = nextStart;\n\n if (subState.state !== this$1.startState) {\n encoding[this$1.startState].move(subState);\n subState.state = this$1.startState;\n }\n\n if (!current.ai.length) {\n encoding.addPattern(this$1.START);\n }\n }\n\n encodingState.index = encodingState.value.length;\n };\n\n States128FNC1.prototype.validate = function validate (current, value) {\n var code = value.substr(current.id.length),\n ai = current.ai;\n\n if (!ai.type && !numberRegex.test(code)) {\n throw new Error(\"Application identifier \" + current.id + \" is numeric only but contains non numeric character(s).\");\n }\n\n if (ai.type === \"alphanumeric\" && !alphanumericRegex.test(code)) {\n throw new Error(\"Application identifier \" + current.id + \" is alphanumeric only but contains non alphanumeric character(s).\");\n }\n\n if (ai.length && ai.length !== code.length) {\n throw new Error(\"Application identifier \" + current.id + \" must be \" + ai.length + \" characters long.\");\n }\n\n if (ai.min && ai.min > code.length) {\n throw new Error(\"Application identifier \" + current.id + \" must be at least \" + ai.min + \" characters long.\");\n }\n\n if (ai.max && ai.max < code.length) {\n throw new Error(\"Application identifier \" + current.id + \" must be at most \" + ai.max + \" characters long.\");\n }\n };\n\n States128FNC1.prototype.getByLength = function getByLength (value, index) {\n var this$1 = this;\n\n var id;\n var applicationIdentifier;\n\n for (var i = 2; i <= 4; i++) {\n id = getSubstring(value, index, i);\n applicationIdentifier = this$1.getApplicationIdentifier(id) || this$1.getApplicationIdentifier(id.substring(0, id.length - 1));\n if (applicationIdentifier) {\n return {\n id: id,\n ai: applicationIdentifier\n };\n }\n }\n this.unsupportedAIError(id);\n };\n\n States128FNC1.prototype.unsupportedAIError = function unsupportedAIError (id) {\n throw new Error(\"'\" + id + \"' is not a supported Application Identifier\");\n };\n\n States128FNC1.prototype.getBySeparator = function getBySeparator (value, index) {\n var start = value.indexOf(this.startAI, index),\n end = value.indexOf(this.endAI, start),\n id = value.substring(start + 1, end),\n ai = this.getApplicationIdentifier(id) || this.getApplicationIdentifier(id.substr(id.length - 1));\n\n if (!ai) {\n this.unsupportedAIError(id);\n }\n\n return {\n ai: ai,\n id: id\n };\n };\n\n States128FNC1.prototype.getApplicationIdentifier = function getApplicationIdentifier (id) {\n var applicationIdentifier = this.applicationIdentifiers,\n multiKey = applicationIdentifier.multiKey;\n\n if (applicationIdentifier[id]) {\n return applicationIdentifier[id];\n }\n\n for (var i = 0; i < multiKey.length; i++) {\n if (multiKey[i].ids && inArray(id, multiKey[i].ids)) {\n return multiKey[i].type;\n } else if (multiKey[i].ranges) {\n var ranges = multiKey[i].ranges;\n\n for (var j = 0; j < ranges.length; j++) {\n if (ranges[j][0] <= id && id <= ranges[j][1]) {\n return multiKey[i].type;\n }\n }\n }\n }\n };\n\n return States128FNC1;\n}(State128));\n\nexport var Code128Base = (function (Encoding) {\n function Code128Base(options) {\n Encoding.call(this, options);\n this._initStates();\n }\n\n if ( Encoding ) Code128Base.__proto__ = Encoding;\n Code128Base.prototype = Object.create( Encoding && Encoding.prototype );\n Code128Base.prototype.constructor = Code128Base;\n\n Code128Base.prototype.initProperties = function initProperties () {\n Encoding.prototype.initProperties.call(this);\n\n extend(this, {\n characterMap: [\n 212222, 222122, 222221, 121223, 121322, 131222, 122213, 122312, 132212, 221213,\n 221312, 231212, 112232, 122132, 122231, 113222, 123122, 123221, 223211, 221132,\n 221231, 213212, 223112, 312131, 311222, 321122, 321221, 312212, 322112, 322211,\n 212123, 212321, 232121, 111323, 131123, 131321, 112313, 132113, 132311, 211313,\n 231113, 231311, 112133, 112331, 132131, 113123, 113321, 133121, 313121, 211331,\n 231131, 213113, 213311, 213131, 311123, 311321, 331121, 312113, 312311, 332111,\n 314111, 221411, 431111, 111224, 111422, 121124, 121421, 141122, 141221, 112214,\n 112412, 122114, 122411, 142112, 142211, 241211, 221114, 413111, 241112, 134111,\n 111242, 121142, 121241, 114212, 124112, 124211, 411212, 421112, 421211, 212141,\n 214121, 412121, 111143, 111341, 131141, 114113, 114311, 411113, 411311, 113141,\n 114131, 311141, 411131, 211412, 211214, 211232, 2331112\n ],\n STOP: 106\n });\n };\n\n Code128Base.prototype._initStates = function _initStates () {\n var this$1 = this;\n\n for (var i = 0; i < this.states.length; i++) {\n this$1[this$1.states[i]] = new states128[this$1.states[i]](this$1, this$1.states);\n }\n };\n\n Code128Base.prototype.initValue = function initValue (value, width, height) {\n this.pattern = [];\n this.value = value;\n this.width = width;\n this.height = height;\n this.checkSum = 0;\n this.totalUnits = 0;\n this.index = 0;\n this.position = 1;\n };\n\n Code128Base.prototype.addData = function addData () {\n var encodingState = {\n value: this.value,\n index: 0,\n state: \"\"\n };\n\n if (this.value.length === 0) {\n return;\n }\n\n encodingState.state =\n encodingState.previousState = this.getNextState(encodingState, this.states);\n\n this.addStart(encodingState);\n\n this.pushData(encodingState, this.states);\n\n this.addCheckSum();\n this.addStop();\n this.setBaseUnit();\n };\n\n Code128Base.prototype.pushData = function pushData (encodingState, states) {\n var this$1 = this;\n\n var trueCondition = true;\n\n while (trueCondition) {\n this$1[encodingState.state].pushState(encodingState);\n\n if (encodingState.index >= encodingState.value.length) {\n break;\n }\n\n if (!encodingState.shifted) {\n encodingState.previousState = encodingState.state;\n encodingState.state = this$1.getNextState(encodingState, states);\n this$1[encodingState.state].move(encodingState);\n } else {\n var temp = encodingState.state;\n encodingState.state = encodingState.previousState;\n encodingState.previousState = temp;\n encodingState.shifted = false;\n }\n }\n };\n\n Code128Base.prototype.addStart = function addStart (encodingState) {\n this[encodingState.state].addStart(encodingState);\n this.position = 1;\n };\n\n Code128Base.prototype.addCheckSum = function addCheckSum () {\n this.checksum = this.checkSum % 103;\n this.addPattern(this.checksum);\n };\n\n Code128Base.prototype.addStop = function addStop () {\n this.addPattern(this.STOP);\n };\n\n Code128Base.prototype.setBaseUnit = function setBaseUnit () {\n this.baseUnit = this.width / (this.totalUnits + this.quietZoneLength);\n };\n\n Code128Base.prototype.addPattern = function addPattern (code) {\n var this$1 = this;\n\n var pattern = this.characterMap[code].toString();\n var value;\n\n for (var i = 0; i < pattern.length; i++) {\n value = parseInt(pattern.charAt(i), 10);\n this$1.pattern.push(value);\n this$1.totalUnits += value;\n }\n this.checkSum += code * this.position++;\n };\n\n Code128Base.prototype.getNextState = function getNextState (encodingState, states) {\n var this$1 = this;\n\n for (var i = 0; i < states.length; i++) {\n if (this$1[states[i]].is(encodingState.value, encodingState.index)) {\n return states[i];\n }\n }\n\n this.invalidCharacterError(encodingState.value.charAt(encodingState.index));\n };\n\n return Code128Base;\n}(Encoding));\n\nexport var Code128a = (function (Code128Base) {\n function Code128a () {\n Code128Base.apply(this, arguments);\n }\n\n if ( Code128Base ) Code128a.__proto__ = Code128Base;\n Code128a.prototype = Object.create( Code128Base && Code128Base.prototype );\n Code128a.prototype.constructor = Code128a;\n\n Code128a.prototype.initProperties = function initProperties () {\n Code128Base.prototype.initProperties.call(this);\n\n extend(this, {\n name: \"Code 128 A\",\n states: [\"A\"]\n });\n };\n\n return Code128a;\n}(Code128Base));\n\nexport var Code128b = (function (Code128Base) {\n function Code128b () {\n Code128Base.apply(this, arguments);\n }\n\n if ( Code128Base ) Code128b.__proto__ = Code128Base;\n Code128b.prototype = Object.create( Code128Base && Code128Base.prototype );\n Code128b.prototype.constructor = Code128b;\n\n Code128b.prototype.initProperties = function initProperties () {\n Code128Base.prototype.initProperties.call(this);\n\n extend(this, {\n name: \"Code 128 B\",\n states: [\"B\"]\n });\n };\n\n return Code128b;\n}(Code128Base));\n\nexport var Code128c = (function (Code128Base) {\n function Code128c () {\n Code128Base.apply(this, arguments);\n }\n\n if ( Code128Base ) Code128c.__proto__ = Code128Base;\n Code128c.prototype = Object.create( Code128Base && Code128Base.prototype );\n Code128c.prototype.constructor = Code128c;\n\n Code128c.prototype.initProperties = function initProperties () {\n Code128Base.prototype.initProperties.call(this);\n\n extend(this, {\n name: \"Code 128 C\",\n states: [\"C\"]\n });\n };\n\n return Code128c;\n}(Code128Base));\n\nexport var Code128 = (function (Code128Base) {\n function Code128 () {\n Code128Base.apply(this, arguments);\n }\n\n if ( Code128Base ) Code128.__proto__ = Code128Base;\n Code128.prototype = Object.create( Code128Base && Code128Base.prototype );\n Code128.prototype.constructor = Code128;\n\n Code128.prototype.initProperties = function initProperties () {\n Code128Base.prototype.initProperties.call(this);\n\n extend(this, {\n name: \"Code 128\",\n states: [\"C\", \"B\", \"A\", \"FNC4\"]\n });\n };\n\n return Code128;\n}(Code128Base));\n\nexport var CodeGS1128 = (function (Code128Base) {\n function CodeGS1128 () {\n Code128Base.apply(this, arguments);\n }\n\n if ( Code128Base ) CodeGS1128.__proto__ = Code128Base;\n CodeGS1128.prototype = Object.create( Code128Base && Code128Base.prototype );\n CodeGS1128.prototype.constructor = CodeGS1128;\n\n CodeGS1128.prototype.initProperties = function initProperties () {\n Code128Base.prototype.initProperties.call(this);\n\n extend(this, {\n name: \"Code GS1-128\",\n states: [\"FNC1\", \"C\", \"B\"]\n });\n };\n\n return CodeGS1128;\n}(Code128Base));\n\nfunction getSubstring(value, index, count) {\n return value.substring(index, index + count);\n}\n","import { Encoding } from './encoding';\n\nvar extend = Object.assign;\n\nexport var MsiBase = (function (Encoding) {\n function MsiBase () {\n Encoding.apply(this, arguments);\n }\n\n if ( Encoding ) MsiBase.__proto__ = Encoding;\n MsiBase.prototype = Object.create( Encoding && Encoding.prototype );\n MsiBase.prototype.constructor = MsiBase;\n\n MsiBase.prototype.initProperties = function initProperties () {\n Encoding.prototype.initProperties.call(this);\n\n extend(this, {\n characterMap: [\n \"12121212\",\n \"12121221\",\n \"12122112\",\n \"12122121\",\n \"12211212\",\n \"12211221\",\n \"12212112\",\n \"12212121\",\n \"21121212\",\n \"21121221\"\n ],\n START: \"21\",\n STOP: \"121\",\n checkSumType: \"\",\n checkSums: checkSums\n });\n };\n\n MsiBase.prototype.initValue = function initValue (value, width) {\n this.pattern = [];\n this.value = value;\n this.checkSumLength = 0;\n this.width = width;\n };\n\n MsiBase.prototype.setBaseUnit = function setBaseUnit () {\n var startStopLength = 7;\n\n this.baseUnit = this.width /\n (12 * (this.value.length + this.checkSumLength) + this.quietZoneLength + startStopLength);\n };\n\n MsiBase.prototype.addData = function addData () {\n var this$1 = this;\n\n var value = this.value;\n\n this.addPattern(this.START);\n\n for (var i = 0; i < value.length; i++) {\n this$1.addCharacter(value.charAt(i));\n }\n\n if (this.options.addCheckSum) {\n this.addCheckSum();\n }\n\n this.addPattern(this.STOP);\n this.setBaseUnit();\n };\n\n MsiBase.prototype.addCharacter = function addCharacter (character) {\n var pattern = this.characterMap[character];\n\n if (!pattern) {\n this.invalidCharacterError(character);\n }\n\n this.addPattern(pattern);\n };\n\n MsiBase.prototype.addPattern = function addPattern (pattern) {\n var this$1 = this;\n\n for (var i = 0; i < pattern.length; i++) {\n this$1.pattern.push(parseInt(pattern.charAt(i), 10));\n }\n };\n\n MsiBase.prototype.addCheckSum = function addCheckSum () {\n var this$1 = this;\n\n var checkSumFunction = this.checkSums[this.checkSumType];\n var checkValues = checkSumFunction.call(this.checkSums, this.value);\n\n this.checksum = checkValues.join(\"\");\n\n for (var i = 0; i < checkValues.length; i++) {\n this$1.checkSumLength++;\n this$1.addPattern(this$1.characterMap[checkValues[i]]);\n }\n };\n\n return MsiBase;\n}(Encoding));\n\nexport var MsiMod10 = (function (MsiBase) {\n function MsiMod10 () {\n MsiBase.apply(this, arguments);\n }\n\n if ( MsiBase ) MsiMod10.__proto__ = MsiBase;\n MsiMod10.prototype = Object.create( MsiBase && MsiBase.prototype );\n MsiMod10.prototype.constructor = MsiMod10;\n\n MsiMod10.prototype.initProperties = function initProperties () {\n MsiBase.prototype.initProperties.call(this);\n\n extend(this, {\n name: \"MSI Modulo10\",\n checkSumType: \"Modulo10\"\n });\n };\n\n return MsiMod10;\n}(MsiBase));\n\nexport var MsiMod11 = (function (MsiBase) {\n function MsiMod11 () {\n MsiBase.apply(this, arguments);\n }\n\n if ( MsiBase ) MsiMod11.__proto__ = MsiBase;\n MsiMod11.prototype = Object.create( MsiBase && MsiBase.prototype );\n MsiMod11.prototype.constructor = MsiMod11;\n\n MsiMod11.prototype.initProperties = function initProperties () {\n MsiBase.prototype.initProperties.call(this);\n\n extend(this, {\n name: \"MSI Modulo11\",\n checkSumType: \"Modulo11\"\n });\n };\n\n return MsiMod11;\n}(MsiBase));\n\nexport var MsiMod1010 = (function (MsiBase) {\n function MsiMod1010 () {\n MsiBase.apply(this, arguments);\n }\n\n if ( MsiBase ) MsiMod1010.__proto__ = MsiBase;\n MsiMod1010.prototype = Object.create( MsiBase && MsiBase.prototype );\n MsiMod1010.prototype.constructor = MsiMod1010;\n\n MsiMod1010.prototype.initProperties = function initProperties () {\n MsiBase.prototype.initProperties.call(this);\n\n extend(this, {\n name: \"MSI Modulo10 Modulo10\",\n checkSumType: \"Modulo10Modulo10\"\n });\n };\n\n return MsiMod1010;\n}(MsiBase));\n\nexport var MsiMod1110 = (function (MsiBase) {\n function MsiMod1110 () {\n MsiBase.apply(this, arguments);\n }\n\n if ( MsiBase ) MsiMod1110.__proto__ = MsiBase;\n MsiMod1110.prototype = Object.create( MsiBase && MsiBase.prototype );\n MsiMod1110.prototype.constructor = MsiMod1110;\n\n MsiMod1110.prototype.initProperties = function initProperties () {\n MsiBase.prototype.initProperties.call(this);\n\n extend(this, {\n name: \"MSI Modulo11 Modulo10\",\n checkSumType: \"Modulo11Modulo10\"\n });\n };\n\n return MsiMod1110;\n}(MsiBase));\n\nvar checkSums = {\n Modulo10: function Modulo10(value) {\n var checkValues = [0, \"\"],\n odd = value.length % 2,\n idx,\n evenSum,\n oddSum;\n\n for (idx = 0; idx < value.length; idx++) {\n checkValues[(idx + odd) % 2] += parseInt(value.charAt(idx), 10);\n }\n\n oddSum = checkValues[0];\n evenSum = (checkValues[1] * 2).toString();\n\n for (idx = 0; idx < evenSum.length; idx++) {\n oddSum += parseInt(evenSum.charAt(idx), 10);\n }\n\n return [(10 - (oddSum % 10)) % 10];\n },\n Modulo11: function Modulo11(value) {\n var weightedSum = 0,\n mod = 11,\n length = value.length,\n weight,\n checkValue;\n\n for (var i = 0; i < length; i++) {\n weight = ((length - i) % 6 || 6) + 1;\n weightedSum += weight * value.charAt(i);\n }\n\n checkValue = (mod - weightedSum % mod) % mod;\n\n if (checkValue !== 10) {\n return [checkValue];\n }\n\n return [1, 0];\n },\n Modulo11Modulo10: function Modulo11Modulo10(value) {\n var checkValues = this.Modulo11(value),\n mod11Value;\n mod11Value = value + checkValues[0];\n\n return checkValues.concat(this.Modulo10(mod11Value));\n },\n Modulo10Modulo10: function Modulo10Modulo10(value) {\n var checkValues = this.Modulo10(value),\n mod10Value;\n mod10Value = value + checkValues[0];\n\n return checkValues.concat(this.Modulo10(mod10Value));\n }\n};\n","import { Encoding } from './encoding';\n\nvar extend = Object.assign;\n\nexport var Ean13 = (function (Encoding) {\n function Ean13 () {\n Encoding.apply(this, arguments);\n }\n\n if ( Encoding ) Ean13.__proto__ = Encoding;\n Ean13.prototype = Object.create( Encoding && Encoding.prototype );\n Ean13.prototype.constructor = Ean13;\n\n Ean13.prototype.initProperties = function initProperties () {\n Encoding.prototype.initProperties.call(this);\n\n extend(this, {\n name: \"EAN 13\",\n keyTable: [\n '000000',\n '001011',\n '001101',\n '001110',\n '010011',\n '011001',\n '011100',\n '010101',\n '010110',\n '011010'\n ],\n characterMap: {\n digits: [\n [3, 2, 1, 1],\n [2, 2, 2, 1],\n [2, 1, 2, 2],\n [1, 4, 1, 1],\n [1, 1, 3, 2],\n [1, 2, 3, 1],\n [1, 1, 1, 4],\n [1, 3, 1, 2],\n [1, 2, 1, 3],\n [3, 1, 1, 2]\n ],\n start: [1, 1, 1],\n middle: [1, 1, 1, 1, 1]\n }\n });\n };\n\n Ean13.prototype.initValue = function initValue (value, width, height) {\n var valueAsString = String(value);\n\n if (valueAsString.length !== 12 || /\\D/.test(valueAsString)) {\n throw new Error('The value of the \"EAN13\" encoding should be 12 symbols');\n }\n\n this.pattern = [];\n this.options.height = height;\n this.baseUnit = width / (95 + this.quietZoneLength);\n this.value = valueAsString;\n this.checksum = this.calculateChecksum();\n this.leftKey = valueAsString[0];\n this.leftPart = valueAsString.substr(1, 6);\n this.rightPart = valueAsString.substr(7) + this.checksum;\n };\n\n Ean13.prototype.addData = function addData () {\n this.addPieces(this.characterMap.start);\n this.addSide(this.leftPart, this.leftKey);\n this.addPieces(this.characterMap.middle);\n this.addSide(this.rightPart);\n this.addPieces(this.characterMap.start);\n };\n\n Ean13.prototype.addSide = function addSide (leftPart, key) {\n var this$1 = this;\n\n for (var i = 0; i < leftPart.length; i++) {\n if (key && parseInt(this$1.keyTable[key].charAt(i), 10)) {\n this$1.addPieces(Array.prototype.slice.call(this$1.characterMap.digits[leftPart.charAt(i)]).reverse(), true);\n } else {\n this$1.addPieces(this$1.characterMap.digits[leftPart.charAt(i)], true);\n }\n }\n };\n\n Ean13.prototype.addPieces = function addPieces (arrToAdd, limitedHeight) {\n var this$1 = this;\n\n for (var i = 0; i < arrToAdd.length; i++) {\n if (limitedHeight) {\n this$1.pattern.push({\n y1: 0,\n y2: this$1.options.height * 0.95,\n width: arrToAdd[i]\n });\n } else {\n this$1.pattern.push(arrToAdd[i]);\n }\n }\n };\n\n Ean13.prototype.calculateChecksum = function calculateChecksum () {\n var odd = 0,\n even = 0,\n value = this.value.split(\"\").reverse().join(\"\");\n\n for (var i = 0; i < value.length; i++) {\n if (i % 2) {\n even += parseInt(value.charAt(i), 10);\n } else {\n odd += parseInt(value.charAt(i), 10);\n }\n }\n\n var checksum = (10 - ((3 * odd + even) % 10)) % 10;\n\n return checksum;\n };\n\n return Ean13;\n}(Encoding));\n","import { Ean13 } from './ean13';\n\nvar extend = Object.assign;\n\nexport var Ean8 = (function (Ean13) {\n function Ean8 () {\n Ean13.apply(this, arguments);\n }\n\n if ( Ean13 ) Ean8.__proto__ = Ean13;\n Ean8.prototype = Object.create( Ean13 && Ean13.prototype );\n Ean8.prototype.constructor = Ean8;\n\n Ean8.prototype.initProperties = function initProperties () {\n Ean13.prototype.initProperties.call(this);\n\n extend(this, {\n name: \"EAN 8\"\n });\n };\n\n Ean8.prototype.initValue = function initValue (value, width, height) {\n if (value.length !== 7 || /\\D/.test(value)) {\n throw new Error('Invalid value provided');\n }\n\n this.value = value;\n this.options.height = height;\n this.checksum = this.calculateChecksum(this.value);\n this.leftPart = this.value.substr(0, 4);\n this.rightPart = this.value.substr(4) + this.checksum;\n this.pattern = [];\n this.baseUnit = width / (67 + this.quietZoneLength);\n };\n\n return Ean8;\n}(Ean13));\n","import { Code11 } from './code11';\nimport { Code39 } from './code39';\nimport { Code39Extended } from './code39-extended';\nimport { Code93 } from './code93';\nimport { Code93Extended } from './code93-extended';\nimport { Postnet } from './postnet';\n\nimport {\n Code128,\n Code128a,\n Code128b,\n Code128c,\n CodeGS1128\n} from './code128';\n\nimport {\n MsiMod10,\n MsiMod11,\n MsiMod1010,\n MsiMod1110\n} from './msi';\n\nimport { Ean8 } from './ean8';\nimport { Ean13 } from './ean13';\n\nexport var Encodings = {\n code11: Code11,\n\n code39: Code39,\n code39extended: Code39Extended,\n\n code93: Code93,\n code93extended: Code93Extended,\n\n code128: Code128,\n code128a: Code128a,\n code128b: Code128b,\n code128c: Code128c\n};\nEncodings[\"gs1-128\"] = CodeGS1128;\nEncodings.msimod10 = MsiMod10;\nEncodings.msimod11 = MsiMod11;\nEncodings.msimod1010 = MsiMod1010;\nEncodings.msimod1110 = MsiMod1110;\nEncodings.postnet = Postnet;\nEncodings.ean8 = Ean8;\nEncodings.ean13 = Ean13;\n","export function surfaceSize(element, surfaceType) {\n var display = element.style.display;\n if (surfaceType === 'canvas') {\n // The Canvas default size is different from SVG for\n // inline-block containers such as the Barcode and QR Code.\n //\n // Switch to display: block to get same dimensions.\n element.style.display = 'block';\n }\n\n var size = {\n width: element.clientWidth,\n height: element.clientHeight\n };\n\n element.style.display = display;\n\n return size;\n}\n","import {\n geometry as geom,\n drawing as draw\n} from '@progress/kendo-drawing';\n\nimport {\n Class,\n defined,\n addClass,\n setDefaultOptions,\n deepExtend,\n getSpacing,\n isObject,\n defaultErrorHandler\n} from '../common';\n\nimport {\n Box,\n TextBox\n} from '../core';\n\nimport { Encodings } from './encodings/main';\nimport { surfaceSize } from './surface-size';\n\nvar DEFAULT_BARCODE_WIDTH = 300;\nvar DEFAULT_BARCODE_HEIGHT = 100;\n\nvar Barcode = (function (Class) {\n function Barcode(element, options, errorHandler) {\n if ( errorHandler === void 0 ) errorHandler = defaultErrorHandler;\n\n Class.call(this);\n\n this.options = deepExtend({}, this.options, options);\n this.element = element;\n this.onError = errorHandler;\n\n this._initElement();\n this._initSurface();\n this._setOptions(options);\n\n if (options && defined(options.value)) {\n this.redraw();\n }\n }\n\n if ( Class ) Barcode.__proto__ = Class;\n Barcode.prototype = Object.create( Class && Class.prototype );\n Barcode.prototype.constructor = Barcode;\n\n Barcode.prototype.destroy = function destroy () {\n this._destroySurface();\n };\n\n Barcode.prototype._initElement = function _initElement () {\n addClass(this.element, \"k-barcode\");\n };\n\n Barcode.prototype._initSurface = function _initSurface () {\n var ref = this;\n var options = ref.options;\n var surface = ref.surface;\n\n if (!surface || surface.options.type !== options.renderAs) {\n this._destroySurface();\n this._initSurfaceElement();\n this.surface = this._createSurface();\n }\n };\n\n Barcode.prototype._createSurface = function _createSurface () {\n return draw.Surface.create(this.surfaceElement, {\n type: this.options.renderAs\n });\n };\n\n Barcode.prototype._destroySurface = function _destroySurface () {\n if (this.surface) {\n this.surface.destroy();\n this.surface = null;\n this._destroySurfaceElement();\n }\n };\n\n Barcode.prototype._initSurfaceElement = function _initSurfaceElement () {\n if (!this.surfaceElement) {\n this.surfaceElement = document.createElement('div');\n this.surfaceElement.style.position = 'relative';\n this.element.appendChild(this.surfaceElement);\n }\n };\n\n Barcode.prototype._destroySurfaceElement = function _destroySurfaceElement () {\n if (this.surfaceElement && this.surfaceElement.parentNode) {\n this.surfaceElement.parentNode.removeChild(this.surfaceElement);\n this.surfaceElement = null;\n }\n };\n\n Barcode.prototype.setOptions = function setOptions (options) {\n this._setOptions(options);\n this._initSurface();\n this.redraw();\n };\n\n Barcode.prototype.redraw = function redraw () {\n var size = this._getSize();\n\n this.surface.clear();\n\n this.surface.setSize({\n width: size.width,\n height: size.height\n });\n\n this.createVisual();\n\n this.surface.draw(this.visual);\n };\n\n Barcode.prototype.getSize = function getSize () {\n return {\n width: this.element.offsetWidth,\n height: this.element.offsetHeight\n };\n };\n\n Barcode.prototype._resize = function _resize () {\n this.redraw();\n };\n\n Barcode.prototype.createVisual = function createVisual () {\n this.visual = this._render();\n };\n\n Barcode.prototype._render = function _render () {\n var options = this.options;\n var value = options.value;\n var textOptions = options.text;\n var textMargin = getSpacing(textOptions.margin);\n var size = this._getSize();\n var border = options.border || {};\n var encoding = this.encoding;\n var contentBox = new Box(0, 0, size.width, size.height).unpad(border.width).unpad(options.padding);\n var barHeight = contentBox.height();\n var encodedValue;\n var textToDisplay;\n var textHeight;\n var visual = new draw.Group();\n\n this.contentBox = contentBox;\n visual.append(this._getBackground(size));\n\n if (textOptions.visible) {\n textHeight = draw.util.measureText(value, { font: textOptions.font }).height;\n barHeight -= textHeight + textMargin.top + textMargin.bottom;\n }\n\n try {\n encodedValue = encoding.encode(value, contentBox.width(), barHeight);\n } catch (error) {\n this.onError(error);\n return visual;\n }\n\n if (textOptions.visible) {\n textToDisplay = value;\n\n if (options.checksum && defined(encoding.checksum)) {\n textToDisplay += \" \" + encoding.checksum;\n }\n\n visual.append(this._getText(textToDisplay));\n }\n\n this.barHeight = barHeight;\n this._bandsGroup = this._getBands(encodedValue.pattern, encodedValue.baseUnit);\n visual.append(this._bandsGroup);\n\n return visual;\n };\n\n Barcode.prototype.exportVisual = function exportVisual () {\n return this._render();\n };\n\n Barcode.prototype._getSize = function _getSize () {\n var element = this.element;\n var elementSize = surfaceSize(element, this.options.renderAs);\n var size = new geom.Size(DEFAULT_BARCODE_WIDTH, DEFAULT_BARCODE_HEIGHT);\n\n if (elementSize.width > 0) {\n size.width = elementSize.width;\n }\n\n if (elementSize.height > 0) {\n size.height = elementSize.height;\n }\n\n if (this.options.width) {\n size.width = this.options.width;\n }\n\n if (this.options.height) {\n size.height = this.options.height;\n }\n\n return size;\n };\n\n Barcode.prototype.value = function value (value$1) {\n if (!defined(value$1)) {\n return this.options.value;\n }\n\n this.options.value = String(value$1);\n this.redraw();\n };\n\n Barcode.prototype._getBands = function _getBands (pattern, baseUnit) {\n var this$1 = this;\n\n var contentBox = this.contentBox;\n var offsetX = contentBox.x1;\n var stepX;\n var patternItem;\n var group = new draw.Group();\n\n for (var i = 0; i < pattern.length; i++) {\n patternItem = isObject(pattern[i]) ? pattern[i] : {\n width: pattern[i],\n y1: 0,\n y2: this$1.barHeight\n };\n\n stepX = patternItem.width * baseUnit;\n\n if (i % 2) {\n var rect = geom.Rect.fromPoints(\n new geom.Point(offsetX, patternItem.y1 + contentBox.y1),\n new geom.Point(offsetX + stepX, patternItem.y2 + contentBox.y1)\n );\n\n var path = draw.Path.fromRect(rect, {\n fill: {\n color: this$1.options.color\n },\n stroke: null\n });\n\n group.append(path);\n }\n\n offsetX += stepX;\n }\n\n return group;\n };\n\n Barcode.prototype._getBackground = function _getBackground (size) {\n var options = this.options;\n var border = options.border || {};\n var box = new Box(0, 0, size.width, size.height).unpad(border.width / 2);\n var path = draw.Path.fromRect(box.toRect(), {\n fill: {\n color: options.background\n },\n stroke: {\n color: border.width ? border.color : \"\",\n width: border.width,\n dashType: border.dashType\n }\n });\n\n return path;\n };\n\n Barcode.prototype._getText = function _getText (value) {\n var textOptions = this.options.text;\n var text = this._textbox = new TextBox(value, {\n font: textOptions.font,\n color: textOptions.color,\n align: \"center\",\n vAlign: \"bottom\",\n margin: textOptions.margin\n });\n\n text.reflow(this.contentBox);\n text.renderVisual();\n\n return text.visual;\n };\n\n Barcode.prototype._setOptions = function _setOptions (options) {\n this.type = (options.type || this.options.type).toLowerCase();\n\n if (this.type === \"upca\") {\n this.type = \"ean13\";\n options.value = '0' + options.value;\n }\n\n if (this.type === \"upce\") {\n this.type = \"ean8\";\n options.value = '0' + options.value;\n }\n\n if (!Encodings[this.type]) {\n throw new Error((\"Encoding '\" + (this.type) + \"' is not supported.\"));\n }\n\n this.encoding = new Encodings[this.type]();\n\n this.options = deepExtend({}, this.options, options);\n };\n\n return Barcode;\n}(Class));\n\nsetDefaultOptions(Barcode, {\n name: \"Barcode\",\n renderAs: \"svg\",\n value: \"\",\n type: \"code39\",\n checksum: false,\n width: 0,\n height: 0,\n color: \"black\",\n background: \"white\",\n text: {\n visible: true,\n font: \"16px Consolas, Monaco, Sans Mono, monospace, sans-serif\",\n color: \"black\",\n margin: {\n top: 0,\n bottom: 0,\n left: 0,\n right: 0\n }\n },\n border: {\n width: 0,\n dashType: \"solid\",\n color: \"black\"\n },\n padding: {\n top: 0,\n bottom: 0,\n left: 0,\n right: 0\n }\n});\n\nexport default Barcode;\n","import withGeometry from '../mixins/with-geometry';\nimport Element from './element';\nimport Rect from '../geometry/rect';\nimport toMatrix from '../geometry/to-matrix';\nimport { defined } from '../util';\n\n\nvar Image = (function (superclass) {\n function Image(src, rect, options) {\n if ( rect === void 0 ) rect = new Rect();\n if ( options === void 0 ) options = {};\n\n superclass.call(this, options);\n\n this.src(src);\n this.rect(rect);\n }\n\n if ( superclass ) Image.__proto__ = superclass;\n Image.prototype = Object.create( superclass && superclass.prototype );\n Image.prototype.constructor = Image;\n\n var prototypeAccessors = { nodeType: { configurable: true } };\n\n prototypeAccessors.nodeType.get = function () {\n return \"Image\";\n };\n\n Image.prototype.src = function src (value) {\n if (defined(value)) {\n this.options.set(\"src\", value);\n return this;\n }\n\n return this.options.get(\"src\");\n };\n\n Image.prototype.bbox = function bbox (transformation) {\n var combinedMatrix = toMatrix(this.currentTransform(transformation));\n return this._rect.bbox(combinedMatrix);\n };\n\n Image.prototype.rawBBox = function rawBBox () {\n return this._rect.bbox();\n };\n\n Image.prototype._containsPoint = function _containsPoint (point) {\n return this._rect.containsPoint(point);\n };\n\n Image.prototype._hasFill = function _hasFill () {\n return this.src();\n };\n\n Object.defineProperties( Image.prototype, prototypeAccessors );\n\n return Image;\n}(withGeometry(Element, [ \"rect\" ])));\n\nexport default Image;","export var extend = Object.assign;\n\nexport function splitInto(str, chunkLength) {\n var result = [];\n var idx = 0;\n\n while (idx < str.length) {\n result.push(str.substring(idx, idx + chunkLength));\n idx += chunkLength;\n }\n\n return result;\n}\n\nexport function toBitsString(value, length) {\n var bitString = Number(value).toString(2);\n\n if (bitString.length < length) {\n bitString = new Array(length - bitString.length + 1).join(0) + bitString;\n }\n\n return bitString;\n}\n\nexport function toDecimal(value) {\n return parseInt(value, 2);\n}\n\n","import { Class } from '../../common';\n\nexport var FreeCellVisitor = (function (Class) {\n function FreeCellVisitor(matrix) {\n Class.call(this);\n\n this.matrix = matrix;\n this.row = matrix.length - 1;\n this.column = matrix.length - 1;\n this.startColumn = this.column;\n this.dir = -1;\n this.c = 0;\n }\n\n if ( Class ) FreeCellVisitor.__proto__ = Class;\n FreeCellVisitor.prototype = Object.create( Class && Class.prototype );\n FreeCellVisitor.prototype.constructor = FreeCellVisitor;\n\n FreeCellVisitor.prototype.move = function move () {\n this.row += this.dir * this.c;\n this.c ^= 1;\n this.column = this.startColumn - this.c;\n };\n\n FreeCellVisitor.prototype.getNextCell = function getNextCell () {\n var this$1 = this;\n\n while (this.matrix[this.row][this.column] !== undefined) {\n this$1.move();\n\n if (this$1.row < 0 || this$1.row >= this$1.matrix.length) {\n this$1.dir = -this$1.dir;\n this$1.startColumn -= this$1.startColumn !== 8 ? 2 : 3;\n this$1.column = this$1.startColumn;\n this$1.row = this$1.dir < 0 ? this$1.matrix.length - 1 : 0;\n }\n }\n\n return {\n row: this.row,\n column: this.column\n };\n };\n\n FreeCellVisitor.prototype.getNextRemainderCell = function getNextRemainderCell () {\n this.move();\n\n if (this.matrix[this.row][this.column] === undefined) {\n return {\n row: this.row,\n column: this.column\n };\n }\n };\n\n return FreeCellVisitor;\n}(Class));\n","import { Class } from '../../common';\n\nexport var EncodingResult = (function (Class) {\n function EncodingResult(dataString, version) {\n Class.call(this);\n\n this.dataString = dataString;\n this.version = version;\n }\n\n if ( Class ) EncodingResult.__proto__ = Class;\n EncodingResult.prototype = Object.create( Class && Class.prototype );\n EncodingResult.prototype.constructor = EncodingResult;\n\n return EncodingResult;\n}(Class));\n","import { Class } from '../../../common';\nimport { EncodingResult } from '../encoding-result';\nimport {\n getModes,\n getVersion,\n getDataCodewordsCount,\n getDataString\n} from '../encoding';\n\nexport var IsoEncoder = (function (Class) {\n function IsoEncoder () {\n Class.apply(this, arguments);\n }\n\n if ( Class ) IsoEncoder.__proto__ = Class;\n IsoEncoder.prototype = Object.create( Class && Class.prototype );\n IsoEncoder.prototype.constructor = IsoEncoder;\n\n IsoEncoder.prototype.getEncodingResult = function getEncodingResult (inputString, errorCorrectionLevel) {\n var modes = getModes(inputString),\n dataCodewordsCount = getDataCodewordsCount(modes),\n version = getVersion(dataCodewordsCount, errorCorrectionLevel),\n dataString = getDataString(modes, version);\n\n return new EncodingResult(dataString, version);\n };\n\n return IsoEncoder;\n}(Class));\n","import {\n toBitsString,\n toDecimal\n} from '../utils';\nimport { FreeCellVisitor } from './free-cell-visitor';\nimport { IsoEncoder } from './encoders/iso-encoder';\nimport { Utf8Encoder } from './encoders/utf8-encoder';\nimport { VersionsCodewordsInformation } from './version-codewords';\nimport { DataModeInstances } from './data-modes/data-mode-instances';\n\nvar terminator = \"0000\",\n NUMERIC = \"numeric\",\n ALPHA_NUMERIC = \"alphanumeric\",\n BYTE = \"byte\",\n powersOfTwo = { \"1\": 0 },\n powersOfTwoResult = { \"0\": 1 },\n irregularAlignmentPatternsStartDistance = {\n 15: 20, 16: 20, 18: 24, 19: 24, 22: 20,\n 24: 22, 26: 24, 28: 20, 30: 20, 31: 24,\n 32: 28, 33: 24, 36: 18, 37: 22, 39: 20, 40: 24\n },\n finderPattern = [1, 0, 1, 1, 1],\n alignmentPattern = [1, 0, 1],\n errorCorrectionPatterns = { L: \"01\", M: \"00\", Q: \"11\", H: \"10\" },\n formatMaskPattern = \"101010000010010\",\n formatGeneratorPolynomial = \"10100110111\",\n versionGeneratorPolynomial = \"1111100100101\",\n paddingCodewords = [\"11101100\", \"00010001\"],\n finderPatternValue = 93,\n /* eslint-disable arrow-body-style */\n /* eslint-disable no-unused-vars */\n maskPatternConditions = [\n function (row, column) { return (row + column) % 2 === 0; },\n function (row, column) { return row % 2 === 0; },\n function (row, column) { return column % 3 === 0; },\n function (row, column) { return (row + column) % 3 === 0; },\n function (row, column) { return (Math.floor(row / 2) + Math.floor(column / 3)) % 2 === 0; },\n function (row, column) { return ((row * column) % 2) + ((row * column) % 3) === 0; },\n function (row, column) { return (((row * column) % 2) + ((row * column) % 3)) % 2 === 0; },\n function (row, column) { return (((row + column) % 2) + ((row * column) % 3)) % 2 === 0; }\n ],\n /* eslint-enable no-unused-vars */\n /* eslint-enable arrow-body-style */\n numberRegex = /^\\d+/,\n alphaPattern = \"A-Z0-9 $%*+./:-\",\n alphaExclusiveSet = \"A-Z $%*+./:-\",\n alphaRegex = new RegExp(\"^[\" + alphaExclusiveSet + \"]+\"),\n alphaNumericRegex = new RegExp(\"^[\" + alphaPattern + \"]+\"),\n byteRegex = new RegExp(\"^[^\" + alphaPattern + \"]+\"),\n initMinNumericBeforeAlpha = 8,\n initMinNumericBeforeByte = 5,\n initMinAlphaBeforeByte = 8,\n minNumericBeforeAlpha = 17,\n minNumericBeforeByte = 9,\n minAlphaBeforeByte = 16;\n\nexport var generatorPolynomials = [[1, 0], [1, 25, 0]];\n\nexport function fillFunctionCell(matrices, bit, x, y) {\n for (var i = 0; i < matrices.length; i++) {\n matrices[i][x][y] = bit;\n }\n}\n\nexport function fillDataCell(matrices, bit, x, y) {\n for (var i = 0; i < maskPatternConditions.length; i++) {\n matrices[i][x][y] = maskPatternConditions[i](x, y) ? bit ^ 1 : parseInt(bit, 10);\n }\n}\n\nexport function fillData(matrices, blocks) {\n var cellVisitor = new FreeCellVisitor(matrices[0]),\n block,\n codewordIdx,\n cell;\n\n for (var blockIdx = 0; blockIdx < blocks.length; blockIdx++) {\n block = blocks[blockIdx];\n codewordIdx = 0;\n\n while (block.length > 0) {\n for (var i = 0; i < block.length; i++) {\n for (var j = 0; j < 8; j++) {\n cell = cellVisitor.getNextCell();\n fillDataCell(matrices, block[i][codewordIdx].charAt(j), cell.row, cell.column);\n }\n }\n\n codewordIdx++;\n\n while (block[0] && codewordIdx === block[0].length) {\n block.splice(0, 1);\n }\n }\n }\n\n while ((cell = cellVisitor.getNextRemainderCell())) {\n fillDataCell(matrices, 0, cell.row, cell.column);\n }\n}\n\nexport function padDataString(initialDataString, totalDataCodewords) {\n var dataBitsCount = totalDataCodewords * 8,\n terminatorIndex = 0,\n paddingCodewordIndex = 0;\n var dataString = initialDataString;\n\n while (dataString.length < dataBitsCount && terminatorIndex < terminator.length) {\n dataString += terminator.charAt(terminatorIndex++);\n }\n\n if (dataString.length % 8 !== 0) {\n dataString += new Array(9 - dataString.length % 8).join(\"0\");\n }\n\n while (dataString.length < dataBitsCount) {\n dataString += paddingCodewords[paddingCodewordIndex];\n paddingCodewordIndex ^= 1;\n }\n\n return dataString;\n}\n\nexport function generatePowersOfTwo() {\n var result;\n var power;\n\n for (power = 1; power < 255; power++) {\n result = powersOfTwoResult[power - 1] * 2;\n if (result > 255) {\n result = result ^ 285;\n }\n\n powersOfTwoResult[power] = result;\n powersOfTwo[result] = power;\n }\n\n result = (powersOfTwoResult[power - 1] * 2) ^ 285;\n powersOfTwoResult[power] = result;\n powersOfTwoResult[-1] = 0;\n}\n\nexport function xorPolynomials(x, y) {\n var result = [],\n idx = x.length - 2;\n\n for (var i = idx; i >= 0; i--) {\n result[i] = x[i] ^ y[i];\n }\n\n return result;\n}\n\nexport function multiplyPolynomials(x, y) {\n var result = [];\n\n for (var i = 0; i < x.length; i++) {\n for (var j = 0; j < y.length; j++) {\n if (result[i + j] === undefined) {\n result[i + j] = (x[i] + (y[j] >= 0 ? y[j] : 0)) % 255;\n } else {\n result[i + j] = powersOfTwo[powersOfTwoResult[result[i + j]] ^ powersOfTwoResult[(x[i] + y[j]) % 255]];\n }\n }\n }\n\n return result;\n}\n\nexport function generateGeneratorPolynomials() {\n var maxErrorCorrectionCodeWordsCount = 68;\n\n for (var idx = 2; idx <= maxErrorCorrectionCodeWordsCount; idx++) {\n var firstPolynomial = generatorPolynomials[idx - 1],\n secondPolynomial = [idx, 0];\n\n generatorPolynomials[idx] = multiplyPolynomials(firstPolynomial, secondPolynomial);\n }\n}\n\n//possibly generate on demand\ngeneratePowersOfTwo();\ngenerateGeneratorPolynomials();\n\nexport function multiplyByConstant(polynomial, power) {\n var result = [],\n idx = polynomial.length - 1;\n\n do {\n result[idx] = powersOfTwoResult[(polynomial[idx] + power) % 255];\n idx--;\n }\n while (polynomial[idx] !== undefined);\n\n return result;\n}\n\nexport function generateErrorCodewords(data, errorCodewordsCount) {\n var generator = generatorPolynomials[errorCodewordsCount - 1],\n result = new Array(errorCodewordsCount).concat(data),\n generatorPolynomial = new Array(result.length - generator.length).concat(generator),\n steps = data.length,\n errorCodewords = [],\n divisor,\n idx;\n\n for (idx = 0; idx < steps; idx++) {\n divisor = multiplyByConstant(generatorPolynomial, powersOfTwo[result[result.length - 1]]);\n generatorPolynomial.splice(0, 1);\n\n result = xorPolynomials(divisor, result);\n }\n\n for (idx = result.length - 1; idx >= 0; idx--) {\n errorCodewords[errorCodewordsCount - 1 - idx] = toBitsString(result[idx], 8);\n }\n\n return errorCodewords;\n}\n\nexport function getBlocks(dataStream, versionCodewordsInformation) {\n var codewordStart = 0,\n dataBlocks = [],\n errorBlocks = [],\n dataBlock,\n versionGroups = versionCodewordsInformation.groups,\n blockCodewordsCount,\n groupBlocksCount,\n messagePolynomial,\n codeword;\n\n for (var groupIdx = 0; groupIdx < versionGroups.length; groupIdx++) {\n groupBlocksCount = versionGroups[groupIdx][0];\n\n for (var blockIdx = 0; blockIdx < groupBlocksCount; blockIdx++) {\n blockCodewordsCount = versionGroups[groupIdx][1];\n dataBlock = [];\n messagePolynomial = [];\n\n for (var codewordIdx = 1; codewordIdx <= blockCodewordsCount; codewordIdx++) {\n codeword = dataStream.substring(codewordStart, codewordStart + 8);\n dataBlock.push(codeword);\n messagePolynomial[blockCodewordsCount - codewordIdx] = toDecimal(codeword);\n codewordStart += 8;\n }\n\n dataBlocks.push(dataBlock);\n errorBlocks.push(generateErrorCodewords(messagePolynomial,\n versionCodewordsInformation.errorCodewordsPerBlock));\n }\n }\n return [dataBlocks, errorBlocks];\n}\n\nexport function chooseMode(str, minNumericBeforeAlpha, minNumericBeforeByte, minAlphaBeforeByte, previousMode) {\n var numeric = numberRegex.exec(str),\n numericMatch = numeric ? numeric[0] : \"\",\n alpha = alphaRegex.exec(str),\n alphaMatch = alpha ? alpha[0] : \"\",\n alphaNumeric = alphaNumericRegex.exec(str),\n alphaNumericMatch = alphaNumeric ? alphaNumeric[0] : \"\",\n mode,\n modeString;\n\n if (numericMatch &&\n (numericMatch.length >= minNumericBeforeAlpha || str.length === numericMatch.length ||\n (numericMatch.length >= minNumericBeforeByte && !alphaNumericRegex.test(str.charAt(numericMatch.length))))) {\n mode = NUMERIC;\n modeString = numericMatch;\n } else if (alphaNumericMatch && (str.length === alphaNumericMatch.length ||\n alphaNumericMatch.length >= minAlphaBeforeByte || previousMode === ALPHA_NUMERIC)) {\n mode = ALPHA_NUMERIC;\n modeString = numericMatch || alphaMatch;\n } else {\n mode = BYTE;\n\n if (alphaNumericMatch) {\n modeString = alphaNumericMatch + byteRegex.exec(str.substring(alphaNumericMatch.length))[0];\n } else {\n modeString = byteRegex.exec(str)[0];\n }\n }\n\n return {\n mode: mode,\n modeString: modeString\n };\n}\n\nexport function getModes(inputString) {\n var modes = [],\n previousMode,\n idx = 0;\n var str = inputString;\n\n modes.push(chooseMode(str, initMinNumericBeforeAlpha, initMinNumericBeforeByte, initMinAlphaBeforeByte, previousMode));\n previousMode = modes[0].mode;\n str = str.substr(modes[0].modeString.length);\n\n while (str.length > 0) {\n var nextMode = chooseMode(str, minNumericBeforeAlpha, minNumericBeforeByte, minAlphaBeforeByte, previousMode);\n\n if (nextMode.mode !== previousMode) {\n previousMode = nextMode.mode;\n modes.push(nextMode);\n idx++;\n } else {\n modes[idx].modeString += nextMode.modeString;\n }\n\n str = str.substr(nextMode.modeString.length);\n }\n\n return modes;\n}\n\nexport function getDataCodewordsCount(modes) {\n var length = 0,\n mode;\n\n for (var i = 0; i < modes.length; i++) {\n mode = DataModeInstances[modes[i].mode];\n length += mode.getStringBitsLength(modes[i].modeString.length);\n }\n\n return Math.ceil(length / 8);\n}\n\nexport function getVersion(dataCodewordsCount, errorCorrectionLevel) {\n var x = 0,\n y = VersionsCodewordsInformation.length - 1,\n version = Math.floor(VersionsCodewordsInformation.length / 2);\n\n do {\n if (dataCodewordsCount < VersionsCodewordsInformation[version][errorCorrectionLevel].totalDataCodewords) {\n y = version;\n } else {\n x = version;\n }\n\n version = x + Math.floor((y - x) / 2);\n } while (y - x > 1);\n\n if (dataCodewordsCount <= VersionsCodewordsInformation[x][errorCorrectionLevel].totalDataCodewords) {\n return version + 1;\n }\n\n return y + 1;\n}\n\nexport function getDataString(modes, version) {\n var dataString = \"\",\n mode;\n\n for (var i = 0; i < modes.length; i++) {\n mode = DataModeInstances[modes[i].mode];\n dataString += mode.encode(modes[i].modeString, version);\n }\n\n return dataString;\n}\n\n//fix case all zeros\nexport function encodeFormatInformation(format) {\n var formatNumber = toDecimal(format),\n encodedString,\n result = \"\";\n\n if (formatNumber === 0) {\n return \"101010000010010\";\n }\n\n encodedString = encodeBCH(toDecimal(format), formatGeneratorPolynomial, 15);\n\n for (var i = 0; i < encodedString.length; i++) {\n result += encodedString.charAt(i) ^ formatMaskPattern.charAt(i);\n }\n\n return result;\n}\n\nexport function encodeBCH(value, generatorPolynomial, codeLength) {\n var generatorNumber = toDecimal(generatorPolynomial),\n polynomialLength = generatorPolynomial.length - 1,\n valueNumber = value << polynomialLength,\n length = codeLength - polynomialLength,\n valueString = toBitsString(value, length),\n result = dividePolynomials(valueNumber, generatorNumber);\n\n result = valueString + toBitsString(result, polynomialLength);\n\n return result;\n}\n\nexport function dividePolynomials(numberX, numberY) {\n var yLength = numberY.toString(2).length,\n xLength = numberX.toString(2).length;\n var x = numberX;\n\n do {\n x ^= numberY << xLength - yLength;\n xLength = x.toString(2).length;\n }\n while (xLength >= yLength);\n\n return x;\n}\n\nexport function getNumberAt(str, idx) {\n return parseInt(str.charAt(idx), 10);\n}\n\nexport function initMatrices(version) {\n var matrices = [],\n modules = 17 + 4 * version;\n\n for (var i = 0; i < maskPatternConditions.length; i++) {\n matrices[i] = new Array(modules);\n\n for (var j = 0; j < modules; j++) {\n matrices[i][j] = new Array(modules);\n }\n }\n\n return matrices;\n}\n\nexport function addFormatInformation(matrices, formatString) {\n var matrix = matrices[0],\n x,\n y,\n idx = 0,\n length = formatString.length;\n\n for (x = 0, y = 8; x <= 8; x++) {\n if (x !== 6) {\n fillFunctionCell(matrices, getNumberAt(formatString, length - 1 - idx++), x, y);\n }\n }\n\n for (x = 8, y = 7; y >= 0; y--) {\n if (y !== 6) {\n fillFunctionCell(matrices, getNumberAt(formatString, length - 1 - idx++), x, y);\n }\n }\n\n idx = 0;\n\n for (y = matrix.length - 1, x = 8; y >= matrix.length - 8; y--) {\n fillFunctionCell(matrices, getNumberAt(formatString, length - 1 - idx++), x, y);\n }\n\n fillFunctionCell(matrices, 1, matrix.length - 8, 8);\n\n for (x = matrix.length - 7, y = 8; x < matrix.length; x++) {\n fillFunctionCell(matrices, getNumberAt(formatString, length - 1 - idx++), x, y);\n }\n}\n\nexport function encodeVersionInformation(version) {\n return encodeBCH(version, versionGeneratorPolynomial, 18);\n}\n\nexport function addVersionInformation(matrices, dataString) {\n var matrix = matrices[0],\n modules = matrix.length,\n x1 = 0,\n y1 = modules - 11,\n x2 = modules - 11,\n y2 = 0,\n quotient,\n mod,\n value;\n\n for (var idx = 0; idx < dataString.length; idx++) {\n quotient = Math.floor(idx / 3);\n mod = idx % 3;\n value = getNumberAt(dataString, dataString.length - idx - 1);\n\n fillFunctionCell(matrices, value, x1 + quotient, y1 + mod);\n fillFunctionCell(matrices, value, x2 + mod, y2 + quotient);\n }\n}\n\nexport function addCentricPattern(matrices, pattern, x, y) {\n var size = pattern.length + 2,\n length = pattern.length + 1,\n value;\n\n for (var i = 0; i < pattern.length; i++) {\n for (var j = i; j < size - i; j++) {\n value = pattern[i];\n\n fillFunctionCell(matrices, value, x + j, y + i);\n fillFunctionCell(matrices, value, x + i, y + j);\n fillFunctionCell(matrices, value, x + length - j, y + length - i);\n fillFunctionCell(matrices, value, x + length - i, y + length - j);\n }\n }\n}\n\nexport function addFinderSeparator(matrices, direction, x, y) {\n var nextX = x,\n nextY = y,\n matrix = matrices[0];\n\n do {\n fillFunctionCell(matrices, 0, nextX, y);\n fillFunctionCell(matrices, 0, x, nextY);\n nextX += direction[0];\n nextY += direction[1];\n }\n while (nextX >= 0 && nextX < matrix.length);\n}\n\nexport function addFinderPatterns(matrices) {\n var modules = matrices[0].length;\n\n addCentricPattern(matrices, finderPattern, 0, 0);\n addFinderSeparator(matrices, [-1, -1], 7, 7);\n addCentricPattern(matrices, finderPattern, modules - 7, 0);\n addFinderSeparator(matrices, [1, -1], modules - 8, 7);\n addCentricPattern(matrices, finderPattern, 0, modules - 7);\n addFinderSeparator(matrices, [-1, 1], 7, modules - 8);\n}\n\nexport function addAlignmentPatterns(matrices, version) {\n if (version < 2) {\n return;\n }\n\n var matrix = matrices[0],\n modules = matrix.length,\n pointsCount = Math.floor(version / 7),\n points = [6],\n startDistance,\n distance,\n idx = 0;\n\n if ((startDistance = irregularAlignmentPatternsStartDistance[version])) {\n distance = (modules - 13 - startDistance) / pointsCount;\n } else {\n startDistance = distance = (modules - 13) / (pointsCount + 1);\n }\n\n points.push(points[idx++] + startDistance);\n\n while ((points[idx] + distance) < modules) {\n points.push(points[idx++] + distance);\n }\n\n for (var i = 0; i < points.length; i++) {\n for (var j = 0; j < points.length; j++) {\n if (matrix[points[i]][points[j]] === undefined) {\n addCentricPattern(matrices, alignmentPattern, points[i] - 2, points[j] - 2);\n }\n }\n }\n}\n\nexport function addTimingFunctions(matrices) {\n var row = 6,\n column = 6,\n value = 1,\n modules = matrices[0].length;\n\n for (var i = 8; i < modules - 8; i++) {\n fillFunctionCell(matrices, value, row, i);\n fillFunctionCell(matrices, value, i, column);\n value ^= 1;\n }\n}\n\nexport function scoreMaskMatrixes(matrices) {\n var scores = [],\n previousBits = [],\n darkModules = [],\n patterns = [],\n adjacentSameBits = [],\n matrix,\n i,\n row = 0,\n column = 1,\n modulesLength = matrices[0].length;\n\n for (i = 0; i < matrices.length; i++) {\n scores[i] = 0;\n darkModules[i] = 0;\n adjacentSameBits[i] = [0, 0];\n patterns[i] = [0, 0];\n previousBits[i] = [];\n }\n\n for (var rowIndex = 0; rowIndex < modulesLength; rowIndex++) {\n for (var columnIndex = 0; columnIndex < modulesLength; columnIndex++) {\n for (var matrixIndex = 0; matrixIndex < matrices.length; matrixIndex++) {\n matrix = matrices[matrixIndex];\n darkModules[matrixIndex] += parseInt(matrix[rowIndex][columnIndex], 10);\n\n if (previousBits[matrixIndex][row] === matrix[rowIndex][columnIndex] &&\n rowIndex + 1 < modulesLength &&\n columnIndex - 1 >= 0 &&\n matrix[rowIndex + 1][columnIndex] === previousBits[matrixIndex][row] &&\n matrix[rowIndex + 1][columnIndex - 1] === previousBits[matrixIndex][row]) {\n scores[matrixIndex] += 3;\n }\n\n scoreFinderPatternOccurance(matrixIndex, patterns, scores, row, matrix[rowIndex][columnIndex]);\n scoreFinderPatternOccurance(matrixIndex, patterns, scores, column, matrix[columnIndex][rowIndex]);\n scoreAdjacentSameBits(matrixIndex, scores, previousBits, matrix[rowIndex][columnIndex], adjacentSameBits, row);\n scoreAdjacentSameBits(matrixIndex, scores, previousBits, matrix[columnIndex][rowIndex], adjacentSameBits, column);\n }\n }\n }\n\n var total = modulesLength * modulesLength,\n minIdx,\n min = Number.MAX_VALUE;\n\n for (i = 0; i < scores.length; i++) {\n scores[i] += calculateDarkModulesRatioScore(darkModules[i], total);\n\n if (scores[i] < min) {\n min = scores[i];\n minIdx = i;\n }\n }\n\n return minIdx;\n}\n\nexport function scoreFinderPatternOccurance(idx, patterns, scores, rowColumn, bit) {\n patterns[idx][rowColumn] = ((patterns[idx][rowColumn] << 1) ^ bit) % 128;\n\n if (patterns[idx][rowColumn] === finderPatternValue) {\n scores[idx] += 40;\n }\n}\n\nexport function scoreAdjacentSameBits(idx, scores, previousBits, bit, adjacentBits, rowColumn) {\n if (previousBits[idx][rowColumn] === bit) {\n adjacentBits[idx][rowColumn]++;\n } else {\n previousBits[idx][rowColumn] = bit;\n\n if (adjacentBits[idx][rowColumn] >= 5) {\n scores[idx] += 3 + adjacentBits[idx][rowColumn] - 5;\n }\n\n adjacentBits[idx][rowColumn] = 1;\n }\n}\n\nexport function calculateDarkModulesRatioScore(darkModules, total) {\n var percent = Math.floor((darkModules / total) * 100),\n mod5 = percent % 5,\n previous = Math.abs(percent - mod5 - 50),\n next = Math.abs(percent + 5 - mod5 - 50),\n score = 10 * Math.min(previous / 5, next / 5);\n\n return score;\n}\n\nexport function createQRCodeDataEncoder(encoding) {\n if (encoding && encoding.toLowerCase().indexOf(\"utf_8\") >= 0) {\n return new Utf8Encoder();\n }\n\n return new IsoEncoder();\n}\n\nexport function encodeData(inputString, errorCorrectionLevel, encoding) {\n var encoder = createQRCodeDataEncoder(encoding),\n encodingResult = encoder.getEncodingResult(inputString, errorCorrectionLevel),\n version = encodingResult.version,\n versionInformation = VersionsCodewordsInformation[version - 1][errorCorrectionLevel],\n dataString = padDataString(encodingResult.dataString, versionInformation.totalDataCodewords),\n blocks = getBlocks(dataString, versionInformation),\n matrices = initMatrices(version);\n\n addFinderPatterns(matrices);\n addAlignmentPatterns(matrices, version);\n addTimingFunctions(matrices);\n\n if (version >= 7) {\n addVersionInformation(matrices, toBitsString(0, 18));\n }\n\n addFormatInformation(matrices, toBitsString(0, 15));\n fillData(matrices, blocks);\n\n var minIdx = scoreMaskMatrixes(matrices),\n optimalMatrix = matrices[minIdx];\n\n if (version >= 7) {\n addVersionInformation([optimalMatrix], encodeVersionInformation(version));\n }\n\n var formatString = errorCorrectionPatterns[errorCorrectionLevel] + toBitsString(minIdx, 3);\n addFormatInformation([optimalMatrix], encodeFormatInformation(formatString));\n\n return optimalMatrix;\n}\n","import { Class } from '../../../common';\nimport { extend } from '../../utils';\nimport {\n toBitsString\n} from '../../utils';\n\nexport var QRDataMode = (function (Class) {\n function QRDataMode() {\n Class.call(this);\n\n this.initProperties();\n }\n\n if ( Class ) QRDataMode.__proto__ = Class;\n QRDataMode.prototype = Object.create( Class && Class.prototype );\n QRDataMode.prototype.constructor = QRDataMode;\n\n QRDataMode.prototype.initProperties = function initProperties () {\n extend(this, {\n modeIndicator: \"\",\n bitsInCharacterCount: []\n });\n };\n\n QRDataMode.prototype.getVersionIndex = function getVersionIndex (version) {\n if (version < 10) {\n return 0;\n } else if (version > 26) {\n return 2;\n }\n\n return 1;\n };\n\n QRDataMode.prototype.getBitsCharacterCount = function getBitsCharacterCount (version) {\n return this.bitsInCharacterCount[this.getVersionIndex(version || 40)];\n };\n\n QRDataMode.prototype.getModeCountString = function getModeCountString (length, version) {\n return this.modeIndicator + toBitsString(length, this.getBitsCharacterCount(version));\n };\n\n QRDataMode.prototype.encode = function encode () { };\n\n QRDataMode.prototype.getStringBitsLength = function getStringBitsLength () { };\n\n QRDataMode.prototype.getValue = function getValue () { };\n\n return QRDataMode;\n}(Class));\n","import { QRDataMode } from './qr-data-mode';\nimport { extend } from '../../utils';\nimport {\n toBitsString,\n splitInto\n} from '../../utils';\n\nexport var NumericQRDataMode = (function (QRDataMode) {\n function NumericQRDataMode () {\n QRDataMode.apply(this, arguments);\n }\n\n if ( QRDataMode ) NumericQRDataMode.__proto__ = QRDataMode;\n NumericQRDataMode.prototype = Object.create( QRDataMode && QRDataMode.prototype );\n NumericQRDataMode.prototype.constructor = NumericQRDataMode;\n\n NumericQRDataMode.prototype.initProperties = function initProperties () {\n QRDataMode.prototype.initProperties.call(this);\n\n extend(this, {\n bitsInCharacterCount: [10, 12, 14],\n modeIndicator: \"0001\"\n });\n };\n\n NumericQRDataMode.prototype.getValue = function getValue (character) {\n return parseInt(character, 10);\n };\n\n NumericQRDataMode.prototype.encode = function encode (str, version) {\n var mode = this,\n parts = splitInto(str, 3),\n result = mode.getModeCountString(str.length, version);\n var i;\n\n for (i = 0; i < parts.length - 1; i++) {\n result += toBitsString(parts[i], 10);\n }\n\n return result + toBitsString(parts[i], 1 + 3 * parts[i].length);\n };\n\n NumericQRDataMode.prototype.getStringBitsLength = function getStringBitsLength (inputLength, version) {\n var mod3 = inputLength % 3;\n return 4 + this.getBitsCharacterCount(version) + 10 * Math.floor(inputLength / 3) + 3 * mod3 + (mod3 === 0 ? 0 : 1);\n };\n\n return NumericQRDataMode;\n}(QRDataMode));\n","import { QRDataMode } from './qr-data-mode';\nimport { extend } from '../../utils';\nimport {\n toBitsString,\n splitInto\n} from '../../utils';\n\nexport var AlphaNumericQRDataMode = (function (QRDataMode) {\n function AlphaNumericQRDataMode () {\n QRDataMode.apply(this, arguments);\n }\n\n if ( QRDataMode ) AlphaNumericQRDataMode.__proto__ = QRDataMode;\n AlphaNumericQRDataMode.prototype = Object.create( QRDataMode && QRDataMode.prototype );\n AlphaNumericQRDataMode.prototype.constructor = AlphaNumericQRDataMode;\n\n AlphaNumericQRDataMode.prototype.initProperties = function initProperties () {\n QRDataMode.prototype.initProperties.call(this);\n\n extend(this, {\n characters: {\n \"0\": 0,\n \"1\": 1,\n \"2\": 2,\n \"3\": 3,\n \"4\": 4,\n \"5\": 5,\n \"6\": 6,\n \"7\": 7,\n \"8\": 8,\n \"9\": 9,\n \"A\": 10,\n \"B\": 11,\n \"C\": 12,\n \"D\": 13,\n \"E\": 14,\n \"F\": 15,\n \"G\": 16,\n \"H\": 17,\n \"I\": 18,\n \"J\": 19,\n \"K\": 20,\n \"L\": 21,\n \"M\": 22,\n \"N\": 23,\n \"O\": 24,\n \"P\": 25,\n \"Q\": 26,\n \"R\": 27,\n \"S\": 28,\n \"T\": 29,\n \"U\": 30,\n \"V\": 31,\n \"W\": 32,\n \"X\": 33,\n \"Y\": 34,\n \"Z\": 35,\n \" \": 36,\n \"$\": 37,\n \"%\": 38,\n \"*\": 39,\n \"+\": 40,\n \"-\": 41,\n \".\": 42,\n \"/\": 43,\n \":\": 44\n },\n bitsInCharacterCount: [9, 11, 13],\n modeIndicator: \"0010\"\n });\n };\n\n AlphaNumericQRDataMode.prototype.getValue = function getValue (character) {\n return this.characters[character];\n };\n\n AlphaNumericQRDataMode.prototype.encode = function encode (str, version) {\n var this$1 = this;\n\n var\n parts = splitInto(str, 2),\n result = this.getModeCountString(str.length, version),\n value;\n var i;\n\n for (i = 0; i < parts.length - 1; i++) {\n value = 45 * this$1.getValue(parts[i].charAt(0)) + this$1.getValue(parts[i].charAt(1));\n result += toBitsString(value, 11);\n }\n\n value = parts[i].length === 2 ?\n 45 * this.getValue(parts[i].charAt(0)) + this.getValue(parts[i].charAt(1)) :\n this.getValue(parts[i].charAt(0));\n\n return result + toBitsString(value, 1 + 5 * parts[i].length);\n };\n\n AlphaNumericQRDataMode.prototype.getStringBitsLength = function getStringBitsLength (inputLength, version) {\n return 4 + this.getBitsCharacterCount(version) + 11 * Math.floor(inputLength / 2) + 6 * (inputLength % 2);\n };\n\n return AlphaNumericQRDataMode;\n}(QRDataMode));\n","import { QRDataMode } from './qr-data-mode';\nimport { extend } from '../../utils';\nimport {\n toBitsString\n} from '../../utils';\n\nexport var ByteQRDataMode = (function (QRDataMode) {\n function ByteQRDataMode () {\n QRDataMode.apply(this, arguments);\n }\n\n if ( QRDataMode ) ByteQRDataMode.__proto__ = QRDataMode;\n ByteQRDataMode.prototype = Object.create( QRDataMode && QRDataMode.prototype );\n ByteQRDataMode.prototype.constructor = ByteQRDataMode;\n\n ByteQRDataMode.prototype.initProperties = function initProperties () {\n QRDataMode.prototype.initProperties.call(this);\n\n extend(this, {\n bitsInCharacterCount: [8, 16, 16],\n modeIndicator: \"0100\"\n });\n };\n\n ByteQRDataMode.prototype.getValue = function getValue (character) {\n var code = character.charCodeAt(0);\n\n if (code <= 127 || (160 <= code && code <= 255)) {\n return code;\n }\n\n throw new Error((\"Unsupported character in QR Code: \\\"\" + character + \"\\\".\"));\n };\n\n ByteQRDataMode.prototype.encode = function encode (str, version) {\n var mode = this,\n result = mode.getModeCountString(str.length, version);\n\n for (var i = 0; i < str.length; i++) {\n result += toBitsString(mode.getValue(str.charAt(i)), 8);\n }\n\n return result;\n };\n\n ByteQRDataMode.prototype.getStringBitsLength = function getStringBitsLength (inputLength, version) {\n return 4 + this.getBitsCharacterCount(version) + 8 * inputLength;\n };\n\n return ByteQRDataMode;\n}(QRDataMode));\n","import { NumericQRDataMode } from './numeric-data-mode';\nimport { AlphaNumericQRDataMode } from './alpha-numeric-data-mode';\nimport { ByteQRDataMode } from './byte-data-mode';\n\nvar NUMERIC = \"numeric\";\nvar ALPHA_NUMERIC = \"alphanumeric\";\nvar BYTE = \"byte\";\n\nexport var DataModeInstances = {};\nDataModeInstances[NUMERIC] = new NumericQRDataMode();\nDataModeInstances[ALPHA_NUMERIC] = new AlphaNumericQRDataMode();\nDataModeInstances[BYTE] = new ByteQRDataMode();\n","import { Class } from '../../../common';\nimport { EncodingResult } from '../encoding-result';\nimport { DataModeInstances } from '../data-modes/data-mode-instances';\nimport { extend } from '../../utils';\nimport { toBitsString } from '../../utils';\nimport { getVersion } from '../encoding';\n\nvar BYTE = \"byte\";\n\nexport var Utf8Encoder = (function (Class) {\n function Utf8Encoder() {\n Class.call(this);\n\n this.initProperties();\n\n this.mode = DataModeInstances[this.encodingMode];\n }\n\n if ( Class ) Utf8Encoder.__proto__ = Class;\n Utf8Encoder.prototype = Object.create( Class && Class.prototype );\n Utf8Encoder.prototype.constructor = Utf8Encoder;\n\n Utf8Encoder.prototype.initProperties = function initProperties () {\n extend(this, {\n encodingMode: BYTE,\n utfBOM: \"111011111011101110111111\",\n initialModeCountStringLength: 20,\n ranges: [128, 2048, 65536, 2097152, 67108864]\n });\n };\n\n Utf8Encoder.prototype.getEncodingResult = function getEncodingResult (inputString, errorCorrectionLevel) {\n var data = this.encode(inputString),\n dataCodewordsCount = this.getDataCodewordsCount(data),\n version = getVersion(dataCodewordsCount, errorCorrectionLevel),\n dataString = this.mode.getModeCountString(data.length / 8, version) + data;\n\n return new EncodingResult(dataString, version);\n };\n\n Utf8Encoder.prototype.getDataCodewordsCount = function getDataCodewordsCount (data) {\n var dataLength = data.length,\n dataCodewordsCount = Math.ceil((this.initialModeCountStringLength + dataLength) / 8);\n\n return dataCodewordsCount;\n };\n\n Utf8Encoder.prototype.encode = function encode (str) {\n var this$1 = this;\n\n var result = this.utfBOM;\n\n for (var i = 0; i < str.length; i++) {\n result += this$1.encodeCharacter(str.charCodeAt(i));\n }\n\n return result;\n };\n\n Utf8Encoder.prototype.encodeCharacter = function encodeCharacter (code) {\n var bytesCount = this.getBytesCount(code),\n bc = bytesCount - 1,\n result = \"\";\n\n if (bytesCount === 1) {\n result = toBitsString(code, 8);\n } else {\n var significantOnes = 8 - bytesCount;\n\n for (var i = 0; i < bc; i++) {\n result = toBitsString(code >> (i * 6) & 63 | 128, 8) + result;\n }\n\n result = ((code >> bc * 6) | ((255 >> significantOnes) << significantOnes)).toString(2) + result;\n }\n\n return result;\n };\n\n Utf8Encoder.prototype.getBytesCount = function getBytesCount (code) {\n var ranges = this.ranges;\n\n for (var i = 0; i < ranges.length; i++) {\n if (code < ranges[i]) {\n return i + 1;\n }\n }\n };\n\n return Utf8Encoder;\n}(Class));\n","export var VersionsCodewordsInformation = [{\n L: {\n groups: [\n [1, 19]\n ],\n totalDataCodewords: 19,\n errorCodewordsPerBlock: 7\n },\n M: {\n groups: [\n [1, 16]\n ],\n totalDataCodewords: 16,\n errorCodewordsPerBlock: 10\n },\n Q: {\n groups: [\n [1, 13]\n ],\n totalDataCodewords: 13,\n errorCodewordsPerBlock: 13\n },\n H: {\n groups: [\n [1, 9]\n ],\n totalDataCodewords: 9,\n errorCodewordsPerBlock: 17\n }\n}, {\n L: {\n groups: [\n [1, 34]\n ],\n totalDataCodewords: 34,\n errorCodewordsPerBlock: 10\n },\n M: {\n groups: [\n [1, 28]\n ],\n totalDataCodewords: 28,\n errorCodewordsPerBlock: 16\n },\n Q: {\n groups: [\n [1, 22]\n ],\n totalDataCodewords: 22,\n errorCodewordsPerBlock: 22\n },\n H: {\n groups: [\n [1, 16]\n ],\n totalDataCodewords: 16,\n errorCodewordsPerBlock: 28\n }\n}, {\n L: {\n groups: [\n [1, 55]\n ],\n totalDataCodewords: 55,\n errorCodewordsPerBlock: 15\n },\n M: {\n groups: [\n [1, 44]\n ],\n totalDataCodewords: 44,\n errorCodewordsPerBlock: 26\n },\n Q: {\n groups: [\n [2, 17]\n ],\n totalDataCodewords: 34,\n errorCodewordsPerBlock: 18\n },\n H: {\n groups: [\n [2, 13]\n ],\n totalDataCodewords: 26,\n errorCodewordsPerBlock: 22\n }\n}, {\n L: {\n groups: [\n [1, 80]\n ],\n totalDataCodewords: 80,\n errorCodewordsPerBlock: 20\n },\n M: {\n groups: [\n [2, 32]\n ],\n totalDataCodewords: 64,\n errorCodewordsPerBlock: 18\n },\n Q: {\n groups: [\n [2, 24]\n ],\n totalDataCodewords: 48,\n errorCodewordsPerBlock: 26\n },\n H: {\n groups: [\n [4, 9]\n ],\n totalDataCodewords: 36,\n errorCodewordsPerBlock: 16\n }\n}, {\n L: {\n groups: [\n [1, 108]\n ],\n totalDataCodewords: 108,\n errorCodewordsPerBlock: 26\n },\n M: {\n groups: [\n [2, 43]\n ],\n totalDataCodewords: 86,\n errorCodewordsPerBlock: 24\n },\n Q: {\n groups: [\n [2, 15],\n [2, 16]\n ],\n totalDataCodewords: 62,\n errorCodewordsPerBlock: 18\n },\n H: {\n groups: [\n [2, 11],\n [2, 12]\n ],\n totalDataCodewords: 46,\n errorCodewordsPerBlock: 22\n }\n}, {\n L: {\n groups: [\n [2, 68]\n ],\n totalDataCodewords: 136,\n errorCodewordsPerBlock: 18\n },\n M: {\n groups: [\n [4, 27]\n ],\n totalDataCodewords: 108,\n errorCodewordsPerBlock: 16\n },\n Q: {\n groups: [\n [4, 19]\n ],\n totalDataCodewords: 76,\n errorCodewordsPerBlock: 24\n },\n H: {\n groups: [\n [4, 15]\n ],\n totalDataCodewords: 60,\n errorCodewordsPerBlock: 28\n }\n}, {\n L: {\n groups: [\n [2, 78]\n ],\n totalDataCodewords: 156,\n errorCodewordsPerBlock: 20\n },\n M: {\n groups: [\n [4, 31]\n ],\n totalDataCodewords: 124,\n errorCodewordsPerBlock: 18\n },\n Q: {\n groups: [\n [2, 14],\n [4, 15]\n ],\n totalDataCodewords: 88,\n errorCodewordsPerBlock: 18\n },\n H: {\n groups: [\n [4, 13],\n [1, 14]\n ],\n totalDataCodewords: 66,\n errorCodewordsPerBlock: 26\n }\n}, {\n L: {\n groups: [\n [2, 97]\n ],\n totalDataCodewords: 194,\n errorCodewordsPerBlock: 24\n },\n M: {\n groups: [\n [2, 38],\n [2, 39]\n ],\n totalDataCodewords: 154,\n errorCodewordsPerBlock: 22\n },\n Q: {\n groups: [\n [4, 18],\n [2, 19]\n ],\n totalDataCodewords: 110,\n errorCodewordsPerBlock: 22\n },\n H: {\n groups: [\n [4, 14],\n [2, 15]\n ],\n totalDataCodewords: 86,\n errorCodewordsPerBlock: 26\n }\n}, {\n L: {\n groups: [\n [2, 116]\n ],\n totalDataCodewords: 232,\n errorCodewordsPerBlock: 30\n },\n M: {\n groups: [\n [3, 36],\n [2, 37]\n ],\n totalDataCodewords: 182,\n errorCodewordsPerBlock: 22\n },\n Q: {\n groups: [\n [4, 16],\n [4, 17]\n ],\n totalDataCodewords: 132,\n errorCodewordsPerBlock: 20\n },\n H: {\n groups: [\n [4, 12],\n [4, 13]\n ],\n totalDataCodewords: 100,\n errorCodewordsPerBlock: 24\n }\n}, {\n L: {\n groups: [\n [2, 68],\n [2, 69]\n ],\n totalDataCodewords: 274,\n errorCodewordsPerBlock: 18\n },\n M: {\n groups: [\n [4, 43],\n [1, 44]\n ],\n totalDataCodewords: 216,\n errorCodewordsPerBlock: 26\n },\n Q: {\n groups: [\n [6, 19],\n [2, 20]\n ],\n totalDataCodewords: 154,\n errorCodewordsPerBlock: 24\n },\n H: {\n groups: [\n [6, 15],\n [2, 16]\n ],\n totalDataCodewords: 122,\n errorCodewordsPerBlock: 28\n }\n}, {\n L: {\n groups: [\n [4, 81]\n ],\n totalDataCodewords: 324,\n errorCodewordsPerBlock: 20\n },\n M: {\n groups: [\n [1, 50],\n [4, 51]\n ],\n totalDataCodewords: 254,\n errorCodewordsPerBlock: 30\n },\n Q: {\n groups: [\n [4, 22],\n [4, 23]\n ],\n totalDataCodewords: 180,\n errorCodewordsPerBlock: 28\n },\n H: {\n groups: [\n [3, 12],\n [8, 13]\n ],\n totalDataCodewords: 140,\n errorCodewordsPerBlock: 24\n }\n}, {\n L: {\n groups: [\n [2, 92],\n [2, 93]\n ],\n totalDataCodewords: 370,\n errorCodewordsPerBlock: 24\n },\n M: {\n groups: [\n [6, 36],\n [2, 37]\n ],\n totalDataCodewords: 290,\n errorCodewordsPerBlock: 22\n },\n Q: {\n groups: [\n [4, 20],\n [6, 21]\n ],\n totalDataCodewords: 206,\n errorCodewordsPerBlock: 26\n },\n H: {\n groups: [\n [7, 14],\n [4, 15]\n ],\n totalDataCodewords: 158,\n errorCodewordsPerBlock: 28\n }\n}, {\n L: {\n groups: [\n [4, 107]\n ],\n totalDataCodewords: 428,\n errorCodewordsPerBlock: 26\n },\n M: {\n groups: [\n [8, 37],\n [1, 38]\n ],\n totalDataCodewords: 334,\n errorCodewordsPerBlock: 22\n },\n Q: {\n groups: [\n [8, 20],\n [4, 21]\n ],\n totalDataCodewords: 244,\n errorCodewordsPerBlock: 24\n },\n H: {\n groups: [\n [12, 11],\n [4, 12]\n ],\n totalDataCodewords: 180,\n errorCodewordsPerBlock: 22\n }\n}, {\n L: {\n groups: [\n [3, 115],\n [1, 116]\n ],\n totalDataCodewords: 461,\n errorCodewordsPerBlock: 30\n },\n M: {\n groups: [\n [4, 40],\n [5, 41]\n ],\n totalDataCodewords: 365,\n errorCodewordsPerBlock: 24\n },\n Q: {\n groups: [\n [11, 16],\n [5, 17]\n ],\n totalDataCodewords: 261,\n errorCodewordsPerBlock: 20\n },\n H: {\n groups: [\n [11, 12],\n [5, 13]\n ],\n totalDataCodewords: 197,\n errorCodewordsPerBlock: 24\n }\n}, {\n L: {\n groups: [\n [5, 87],\n [1, 88]\n ],\n totalDataCodewords: 523,\n errorCodewordsPerBlock: 22\n },\n M: {\n groups: [\n [5, 41],\n [5, 42]\n ],\n totalDataCodewords: 415,\n errorCodewordsPerBlock: 24\n },\n Q: {\n groups: [\n [5, 24],\n [7, 25]\n ],\n totalDataCodewords: 295,\n errorCodewordsPerBlock: 30\n },\n H: {\n groups: [\n [11, 12],\n [7, 13]\n ],\n totalDataCodewords: 223,\n errorCodewordsPerBlock: 24\n }\n}, {\n L: {\n groups: [\n [5, 98],\n [1, 99]\n ],\n totalDataCodewords: 589,\n errorCodewordsPerBlock: 24\n },\n M: {\n groups: [\n [7, 45],\n [3, 46]\n ],\n totalDataCodewords: 453,\n errorCodewordsPerBlock: 28\n },\n Q: {\n groups: [\n [15, 19],\n [2, 20]\n ],\n totalDataCodewords: 325,\n errorCodewordsPerBlock: 24\n },\n H: {\n groups: [\n [3, 15],\n [13, 16]\n ],\n totalDataCodewords: 253,\n errorCodewordsPerBlock: 30\n }\n}, {\n L: {\n groups: [\n [1, 107],\n [5, 108]\n ],\n totalDataCodewords: 647,\n errorCodewordsPerBlock: 28\n },\n M: {\n groups: [\n [10, 46],\n [1, 47]\n ],\n totalDataCodewords: 507,\n errorCodewordsPerBlock: 28\n },\n Q: {\n groups: [\n [1, 22],\n [15, 23]\n ],\n totalDataCodewords: 367,\n errorCodewordsPerBlock: 28\n },\n H: {\n groups: [\n [2, 14],\n [17, 15]\n ],\n totalDataCodewords: 283,\n errorCodewordsPerBlock: 28\n }\n}, {\n L: {\n groups: [\n [5, 120],\n [1, 121]\n ],\n totalDataCodewords: 721,\n errorCodewordsPerBlock: 30\n },\n M: {\n groups: [\n [9, 43],\n [4, 44]\n ],\n totalDataCodewords: 563,\n errorCodewordsPerBlock: 26\n },\n Q: {\n groups: [\n [17, 22],\n [1, 23]\n ],\n totalDataCodewords: 397,\n errorCodewordsPerBlock: 28\n },\n H: {\n groups: [\n [2, 14],\n [19, 15]\n ],\n totalDataCodewords: 313,\n errorCodewordsPerBlock: 28\n }\n}, {\n L: {\n groups: [\n [3, 113],\n [4, 114]\n ],\n totalDataCodewords: 795,\n errorCodewordsPerBlock: 28\n },\n M: {\n groups: [\n [3, 44],\n [11, 45]\n ],\n totalDataCodewords: 627,\n errorCodewordsPerBlock: 26\n },\n Q: {\n groups: [\n [17, 21],\n [4, 22]\n ],\n totalDataCodewords: 445,\n errorCodewordsPerBlock: 26\n },\n H: {\n groups: [\n [9, 13],\n [16, 14]\n ],\n totalDataCodewords: 341,\n errorCodewordsPerBlock: 26\n }\n}, {\n L: {\n groups: [\n [3, 107],\n [5, 108]\n ],\n totalDataCodewords: 861,\n errorCodewordsPerBlock: 28\n },\n M: {\n groups: [\n [3, 41],\n [13, 42]\n ],\n totalDataCodewords: 669,\n errorCodewordsPerBlock: 26\n },\n Q: {\n groups: [\n [15, 24],\n [5, 25]\n ],\n totalDataCodewords: 485,\n errorCodewordsPerBlock: 30\n },\n H: {\n groups: [\n [15, 15],\n [10, 16]\n ],\n totalDataCodewords: 385,\n errorCodewordsPerBlock: 28\n }\n}, {\n L: {\n groups: [\n [4, 116],\n [4, 117]\n ],\n totalDataCodewords: 932,\n errorCodewordsPerBlock: 28\n },\n M: {\n groups: [\n [17, 42]\n ],\n totalDataCodewords: 714,\n errorCodewordsPerBlock: 26\n },\n Q: {\n groups: [\n [17, 22],\n [6, 23]\n ],\n totalDataCodewords: 512,\n errorCodewordsPerBlock: 28\n },\n H: {\n groups: [\n [19, 16],\n [6, 17]\n ],\n totalDataCodewords: 406,\n errorCodewordsPerBlock: 30\n }\n}, {\n L: {\n groups: [\n [2, 111],\n [7, 112]\n ],\n totalDataCodewords: 1006,\n errorCodewordsPerBlock: 28\n },\n M: {\n groups: [\n [17, 46]\n ],\n totalDataCodewords: 782,\n errorCodewordsPerBlock: 28\n },\n Q: {\n groups: [\n [7, 24],\n [16, 25]\n ],\n totalDataCodewords: 568,\n errorCodewordsPerBlock: 30\n },\n H: {\n groups: [\n [34, 13]\n ],\n totalDataCodewords: 442,\n errorCodewordsPerBlock: 24\n }\n}, {\n L: {\n groups: [\n [4, 121],\n [5, 122]\n ],\n totalDataCodewords: 1094,\n errorCodewordsPerBlock: 30\n },\n M: {\n groups: [\n [4, 47],\n [14, 48]\n ],\n totalDataCodewords: 860,\n errorCodewordsPerBlock: 28\n },\n Q: {\n groups: [\n [11, 24],\n [14, 25]\n ],\n totalDataCodewords: 614,\n errorCodewordsPerBlock: 30\n },\n H: {\n groups: [\n [16, 15],\n [14, 16]\n ],\n totalDataCodewords: 464,\n errorCodewordsPerBlock: 30\n }\n}, {\n L: {\n groups: [\n [6, 117],\n [4, 118]\n ],\n totalDataCodewords: 1174,\n errorCodewordsPerBlock: 30\n },\n M: {\n groups: [\n [6, 45],\n [14, 46]\n ],\n totalDataCodewords: 914,\n errorCodewordsPerBlock: 28\n },\n Q: {\n groups: [\n [11, 24],\n [16, 25]\n ],\n totalDataCodewords: 664,\n errorCodewordsPerBlock: 30\n },\n H: {\n groups: [\n [30, 16],\n [2, 17]\n ],\n totalDataCodewords: 514,\n errorCodewordsPerBlock: 30\n }\n}, {\n L: {\n groups: [\n [8, 106],\n [4, 107]\n ],\n totalDataCodewords: 1276,\n errorCodewordsPerBlock: 26\n },\n M: {\n groups: [\n [8, 47],\n [13, 48]\n ],\n totalDataCodewords: 1000,\n errorCodewordsPerBlock: 28\n },\n Q: {\n groups: [\n [7, 24],\n [22, 25]\n ],\n totalDataCodewords: 718,\n errorCodewordsPerBlock: 30\n },\n H: {\n groups: [\n [22, 15],\n [13, 16]\n ],\n totalDataCodewords: 538,\n errorCodewordsPerBlock: 30\n }\n}, {\n L: {\n groups: [\n [10, 114],\n [2, 115]\n ],\n totalDataCodewords: 1370,\n errorCodewordsPerBlock: 28\n },\n M: {\n groups: [\n [19, 46],\n [4, 47]\n ],\n totalDataCodewords: 1062,\n errorCodewordsPerBlock: 28\n },\n Q: {\n groups: [\n [28, 22],\n [6, 23]\n ],\n totalDataCodewords: 754,\n errorCodewordsPerBlock: 28\n },\n H: {\n groups: [\n [33, 16],\n [4, 17]\n ],\n totalDataCodewords: 596,\n errorCodewordsPerBlock: 30\n }\n}, {\n L: {\n groups: [\n [8, 122],\n [4, 123]\n ],\n totalDataCodewords: 1468,\n errorCodewordsPerBlock: 30\n },\n M: {\n groups: [\n [22, 45],\n [3, 46]\n ],\n totalDataCodewords: 1128,\n errorCodewordsPerBlock: 28\n },\n Q: {\n groups: [\n [8, 23],\n [26, 24]\n ],\n totalDataCodewords: 808,\n errorCodewordsPerBlock: 30\n },\n H: {\n groups: [\n [12, 15],\n [28, 16]\n ],\n totalDataCodewords: 628,\n errorCodewordsPerBlock: 30\n }\n}, {\n L: {\n groups: [\n [3, 117],\n [10, 118]\n ],\n totalDataCodewords: 1531,\n errorCodewordsPerBlock: 30\n },\n M: {\n groups: [\n [3, 45],\n [23, 46]\n ],\n totalDataCodewords: 1193,\n errorCodewordsPerBlock: 28\n },\n Q: {\n groups: [\n [4, 24],\n [31, 25]\n ],\n totalDataCodewords: 871,\n errorCodewordsPerBlock: 30\n },\n H: {\n groups: [\n [11, 15],\n [31, 16]\n ],\n totalDataCodewords: 661,\n errorCodewordsPerBlock: 30\n }\n}, {\n L: {\n groups: [\n [7, 116],\n [7, 117]\n ],\n totalDataCodewords: 1631,\n errorCodewordsPerBlock: 30\n },\n M: {\n groups: [\n [21, 45],\n [7, 46]\n ],\n totalDataCodewords: 1267,\n errorCodewordsPerBlock: 28\n },\n Q: {\n groups: [\n [1, 23],\n [37, 24]\n ],\n totalDataCodewords: 911,\n errorCodewordsPerBlock: 30\n },\n H: {\n groups: [\n [19, 15],\n [26, 16]\n ],\n totalDataCodewords: 701,\n errorCodewordsPerBlock: 30\n }\n}, {\n L: {\n groups: [\n [5, 115],\n [10, 116]\n ],\n totalDataCodewords: 1735,\n errorCodewordsPerBlock: 30\n },\n M: {\n groups: [\n [19, 47],\n [10, 48]\n ],\n totalDataCodewords: 1373,\n errorCodewordsPerBlock: 28\n },\n Q: {\n groups: [\n [15, 24],\n [25, 25]\n ],\n totalDataCodewords: 985,\n errorCodewordsPerBlock: 30\n },\n H: {\n groups: [\n [23, 15],\n [25, 16]\n ],\n totalDataCodewords: 745,\n errorCodewordsPerBlock: 30\n }\n}, {\n L: {\n groups: [\n [13, 115],\n [3, 116]\n ],\n totalDataCodewords: 1843,\n errorCodewordsPerBlock: 30\n },\n M: {\n groups: [\n [2, 46],\n [29, 47]\n ],\n totalDataCodewords: 1455,\n errorCodewordsPerBlock: 28\n },\n Q: {\n groups: [\n [42, 24],\n [1, 25]\n ],\n totalDataCodewords: 1033,\n errorCodewordsPerBlock: 30\n },\n H: {\n groups: [\n [23, 15],\n [28, 16]\n ],\n totalDataCodewords: 793,\n errorCodewordsPerBlock: 30\n }\n}, {\n L: {\n groups: [\n [17, 115]\n ],\n totalDataCodewords: 1955,\n errorCodewordsPerBlock: 30\n },\n M: {\n groups: [\n [10, 46],\n [23, 47]\n ],\n totalDataCodewords: 1541,\n errorCodewordsPerBlock: 28\n },\n Q: {\n groups: [\n [10, 24],\n [35, 25]\n ],\n totalDataCodewords: 1115,\n errorCodewordsPerBlock: 30\n },\n H: {\n groups: [\n [19, 15],\n [35, 16]\n ],\n totalDataCodewords: 845,\n errorCodewordsPerBlock: 30\n }\n}, {\n L: {\n groups: [\n [17, 115],\n [1, 116]\n ],\n totalDataCodewords: 2071,\n errorCodewordsPerBlock: 30\n },\n M: {\n groups: [\n [14, 46],\n [21, 47]\n ],\n totalDataCodewords: 1631,\n errorCodewordsPerBlock: 28\n },\n Q: {\n groups: [\n [29, 24],\n [19, 25]\n ],\n totalDataCodewords: 1171,\n errorCodewordsPerBlock: 30\n },\n H: {\n groups: [\n [11, 15],\n [46, 16]\n ],\n totalDataCodewords: 901,\n errorCodewordsPerBlock: 30\n }\n}, {\n L: {\n groups: [\n [13, 115],\n [6, 116]\n ],\n totalDataCodewords: 2191,\n errorCodewordsPerBlock: 30\n },\n M: {\n groups: [\n [14, 46],\n [23, 47]\n ],\n totalDataCodewords: 1725,\n errorCodewordsPerBlock: 28\n },\n Q: {\n groups: [\n [44, 24],\n [7, 25]\n ],\n totalDataCodewords: 1231,\n errorCodewordsPerBlock: 30\n },\n H: {\n groups: [\n [59, 16],\n [1, 17]\n ],\n totalDataCodewords: 961,\n errorCodewordsPerBlock: 30\n }\n}, {\n L: {\n groups: [\n [12, 121],\n [7, 122]\n ],\n totalDataCodewords: 2306,\n errorCodewordsPerBlock: 30\n },\n M: {\n groups: [\n [12, 47],\n [26, 48]\n ],\n totalDataCodewords: 1812,\n errorCodewordsPerBlock: 28\n },\n Q: {\n groups: [\n [39, 24],\n [14, 25]\n ],\n totalDataCodewords: 1286,\n errorCodewordsPerBlock: 30\n },\n H: {\n groups: [\n [22, 15],\n [41, 16]\n ],\n totalDataCodewords: 986,\n errorCodewordsPerBlock: 30\n }\n}, {\n L: {\n groups: [\n [6, 121],\n [14, 122]\n ],\n totalDataCodewords: 2434,\n errorCodewordsPerBlock: 30\n },\n M: {\n groups: [\n [6, 47],\n [34, 48]\n ],\n totalDataCodewords: 1914,\n errorCodewordsPerBlock: 28\n },\n Q: {\n groups: [\n [46, 24],\n [10, 25]\n ],\n totalDataCodewords: 1354,\n errorCodewordsPerBlock: 30\n },\n H: {\n groups: [\n [2, 15],\n [64, 16]\n ],\n totalDataCodewords: 1054,\n errorCodewordsPerBlock: 30\n }\n}, {\n L: {\n groups: [\n [17, 122],\n [4, 123]\n ],\n totalDataCodewords: 2566,\n errorCodewordsPerBlock: 30\n },\n M: {\n groups: [\n [29, 46],\n [14, 47]\n ],\n totalDataCodewords: 1992,\n errorCodewordsPerBlock: 28\n },\n Q: {\n groups: [\n [49, 24],\n [10, 25]\n ],\n totalDataCodewords: 1426,\n errorCodewordsPerBlock: 30\n },\n H: {\n groups: [\n [24, 15],\n [46, 16]\n ],\n totalDataCodewords: 1096,\n errorCodewordsPerBlock: 30\n }\n}, {\n L: {\n groups: [\n [4, 122],\n [18, 123]\n ],\n totalDataCodewords: 2702,\n errorCodewordsPerBlock: 30\n },\n M: {\n groups: [\n [13, 46],\n [32, 47]\n ],\n totalDataCodewords: 2102,\n errorCodewordsPerBlock: 28\n },\n Q: {\n groups: [\n [48, 24],\n [14, 25]\n ],\n totalDataCodewords: 1502,\n errorCodewordsPerBlock: 30\n },\n H: {\n groups: [\n [42, 15],\n [32, 16]\n ],\n totalDataCodewords: 1142,\n errorCodewordsPerBlock: 30\n }\n}, {\n L: {\n groups: [\n [20, 117],\n [4, 118]\n ],\n totalDataCodewords: 2812,\n errorCodewordsPerBlock: 30\n },\n M: {\n groups: [\n [40, 47],\n [7, 48]\n ],\n totalDataCodewords: 2216,\n errorCodewordsPerBlock: 28\n },\n Q: {\n groups: [\n [43, 24],\n [22, 25]\n ],\n totalDataCodewords: 1582,\n errorCodewordsPerBlock: 30\n },\n H: {\n groups: [\n [10, 15],\n [67, 16]\n ],\n totalDataCodewords: 1222,\n errorCodewordsPerBlock: 30\n }\n}, {\n L: {\n groups: [\n [19, 118],\n [6, 119]\n ],\n totalDataCodewords: 2956,\n errorCodewordsPerBlock: 30\n },\n M: {\n groups: [\n [18, 47],\n [31, 48]\n ],\n totalDataCodewords: 2334,\n errorCodewordsPerBlock: 28\n },\n Q: {\n groups: [\n [34, 24],\n [34, 25]\n ],\n totalDataCodewords: 1666,\n errorCodewordsPerBlock: 30\n },\n H: {\n groups: [\n [20, 15],\n [61, 16]\n ],\n totalDataCodewords: 1276,\n errorCodewordsPerBlock: 30\n }\n}];\n","import {\n geometry as geom,\n drawing as draw\n} from '@progress/kendo-drawing';\n\nimport {\n Class,\n addClass,\n setDefaultOptions,\n deepExtend,\n defaultErrorHandler\n} from '../common';\n\nimport { Box } from '../core';\nimport { encodeData } from './encodings/encoding';\nimport { extend } from './utils';\n\nimport { surfaceSize } from '../barcode/surface-size';\n\nvar round = Math.round;\nvar crossPattern = [[0, 1], [1, 1], [1, 2], [2, 2], [2, 1], [3, 1], [3, 0], [2, 0], [2, -1], [1, -1], [1, 0]];\nvar squarePattern = [[0, 1], [1, 1], [1, 0]];\n\nvar QRCodeDefaults = {\n DEFAULT_SIZE: 200,\n QUIET_ZONE_LENGTH: 4,\n DEFAULT_ERROR_CORRECTION_LEVEL: \"L\",\n DEFAULT_BACKGROUND: \"#fff\",\n DEFAULT_DARK_MODULE_COLOR: \"#000\",\n MIN_BASE_UNIT_SIZE: 1,\n DEFAULT_LOGO_SIZE: 7\n};\n\nvar QRCode = (function (Class) {\n function QRCode(element, options, errorHandler) {\n if ( errorHandler === void 0 ) errorHandler = defaultErrorHandler;\n\n Class.call(this);\n\n this.options = deepExtend({}, this.options, options);\n this.element = element;\n this.wrapper = this.element;\n this.onError = errorHandler;\n\n this._initElement();\n this._initSurface();\n\n this.setOptions(options);\n }\n\n if ( Class ) QRCode.__proto__ = Class;\n QRCode.prototype = Object.create( Class && Class.prototype );\n QRCode.prototype.constructor = QRCode;\n\n QRCode.prototype.destroy = function destroy () {\n this._destroySurface();\n };\n\n QRCode.prototype._initElement = function _initElement () {\n addClass(this.element, \"k-qrcode\");\n };\n\n QRCode.prototype._initSurface = function _initSurface () {\n var ref = this;\n var options = ref.options;\n var surface = ref.surface;\n\n if (!surface || surface.options.type !== options.renderAs) {\n this._destroySurface();\n this._initSurfaceElement();\n this.surface = this._createSurface();\n }\n };\n\n QRCode.prototype._createSurface = function _createSurface () {\n return draw.Surface.create(this.surfaceElement, {\n type: this.options.renderAs\n });\n };\n\n QRCode.prototype._destroySurface = function _destroySurface () {\n if (this.surface) {\n this.surface.destroy();\n this.surface = null;\n this._destroySurfaceElement();\n }\n };\n\n QRCode.prototype._initSurfaceElement = function _initSurfaceElement () {\n if (!this.surfaceElement) {\n this.surfaceElement = document.createElement('div');\n this.surfaceElement.style.position = \"relative\";\n this.element.appendChild(this.surfaceElement);\n }\n };\n\n QRCode.prototype._destroySurfaceElement = function _destroySurfaceElement () {\n if (this.surfaceElement && this.surfaceElement.parentNode) {\n this.surfaceElement.parentNode.removeChild(this.surfaceElement);\n this.surfaceElement = null;\n }\n };\n\n QRCode.prototype.redraw = function redraw () {\n var size = this._getSize();\n\n this.surface.clear();\n\n this.surface.setSize({\n width: size,\n height: size\n });\n\n this.createVisual();\n\n this.surface.draw(this.visual);\n };\n\n QRCode.prototype.getSize = function getSize () {\n var element = this.element;\n var elementWidth = element.clientWidth;\n var elementHeight = element.clientHeight;\n var size = { width: 0, height: 0 };\n\n if (elementWidth > 0) {\n size.width = elementWidth;\n }\n\n if (elementHeight) {\n size.height = elementHeight;\n }\n\n return size;\n };\n\n QRCode.prototype._resize = function _resize () {\n this.redraw();\n };\n\n QRCode.prototype.createVisual = function createVisual () {\n this.visual = this._render();\n };\n\n QRCode.prototype.exportVisual = function exportVisual () {\n return this._render();\n };\n\n QRCode.prototype._render = function _render () {\n var value = this._value,\n baseUnit,\n border = this.options.border || {},\n padding = this.options.padding || 0,\n borderWidth = border.width || 0,\n quietZoneSize,\n matrix,\n size,\n dataSize,\n contentSize;\n\n border.width = borderWidth;\n\n var visual = new draw.Group();\n\n try {\n if (value) {\n matrix = encodeData(value, this.options.errorCorrection, this.options.encoding);\n size = this._getSize();\n contentSize = size - 2 * (borderWidth + padding);\n baseUnit = this._calculateBaseUnit(contentSize, matrix.length);\n dataSize = matrix.length * baseUnit;\n quietZoneSize = borderWidth + padding + (contentSize - dataSize) / 2;\n\n visual.append(this._renderBackground(size, border));\n visual.append(this._renderMatrix(matrix, baseUnit, quietZoneSize));\n\n if (this._hasCustomLogo()) {\n visual.append(this._renderLogo(size, baseUnit));\n } else if (this._isSwiss()) {\n visual.append(this._renderSwissCode(size, baseUnit));\n }\n }\n } catch (error) {\n this.onError(error);\n }\n\n return visual;\n };\n\n QRCode.prototype._renderLogo = function _renderLogo (qrSize, baseUnit) {\n var image;\n var imageRect;\n var center = round(qrSize / 2);\n var logoSize = this._getLogoSize(baseUnit * QRCodeDefaults.DEFAULT_LOGO_SIZE);\n var logoUrl = this.options.overlay.imageUrl;\n var position = {\n x: center - logoSize.width / 2,\n y: center - logoSize.height / 2\n };\n\n imageRect = new geom.Rect(\n new geom.Point(position.x, position.y),\n new geom.Size(logoSize.width, logoSize.height)\n );\n\n image = new draw.Image(logoUrl, imageRect);\n\n return image;\n };\n\n QRCode.prototype._renderSwissCode = function _renderSwissCode (qrSize, baseUnit) {\n var logoSize = this._getLogoSize(baseUnit * QRCodeDefaults.DEFAULT_LOGO_SIZE);\n logoSize = Math.max(logoSize.width, logoSize.height);\n var crossSize = logoSize / 4;\n var crossOffset = crossSize / 2;\n var center = qrSize / 2;\n var start = {};\n var visual = new draw.Group();\n\n start.x = start.y = Math.ceil(center - baseUnit - logoSize / 2);\n visual.append(this._renderShape(start, Math.ceil(logoSize + baseUnit * 2), squarePattern, \"#fff\"));\n\n start.x = start.y = center - logoSize / 2;\n visual.append(this._renderShape(start, logoSize, squarePattern, this.options.color));\n\n start.x = center + crossOffset - logoSize / 2;\n start.y = center + crossOffset + crossSize - logoSize / 2;\n visual.append(this._renderShape(start, crossSize, crossPattern, \"#fff\"));\n\n return visual;\n };\n\n QRCode.prototype._renderShape = function _renderShape (start, step, pattern, color) {\n var path = new draw.MultiPath({\n fill: {\n color: color\n },\n stroke: null\n });\n\n path.moveTo(start.x, start.y);\n\n for (var i = 0; i < pattern.length; i++) {\n path.lineTo(start.x + step * pattern[i][0], start.y + step * pattern[i][1]);\n }\n\n path.close();\n\n return path;\n };\n\n QRCode.prototype._getSize = function _getSize () {\n var size;\n\n if (this.options.size) {\n size = parseInt(this.options.size, 10);\n } else {\n var element = this.element;\n var elementSize = surfaceSize(element, this.options.renderAs);\n var min = Math.min(elementSize.width, elementSize.height);\n\n if (min > 0) {\n size = min;\n } else {\n size = QRCodeDefaults.DEFAULT_SIZE;\n }\n }\n\n return size;\n };\n\n QRCode.prototype._calculateBaseUnit = function _calculateBaseUnit (size, matrixSize) {\n var baseUnit = Math.floor(size / matrixSize);\n\n if (baseUnit < QRCodeDefaults.MIN_BASE_UNIT_SIZE) {\n var minSize = Math.ceil(matrixSize * QRCodeDefaults.MIN_BASE_UNIT_SIZE);\n this.onError(new Error(\n (\"Insufficient size for QR Code: the current size is \" + size + \"px and the minimum size is \" + minSize + \"px.\")\n ));\n } else if (baseUnit * matrixSize >= size &&\n baseUnit - 1 >= QRCodeDefaults.MIN_BASE_UNIT_SIZE) {\n baseUnit--;\n }\n\n return baseUnit;\n };\n\n QRCode.prototype._renderMatrix = function _renderMatrix (matrix, baseUnit, quietZoneSize) {\n var path = new draw.MultiPath({\n fill: {\n color: this.options.color\n },\n stroke: null\n });\n\n for (var row = 0; row < matrix.length; row++) {\n var y = quietZoneSize + row * baseUnit;\n var column = 0;\n\n while (column < matrix.length) {\n while (matrix[row][column] === 0 && column < matrix.length) {\n column++;\n }\n\n if (column < matrix.length) {\n var x = column;\n while (matrix[row][column] === 1) {\n column++;\n }\n\n var x1 = round(quietZoneSize + x * baseUnit);\n var y1 = round(y);\n var x2 = round(quietZoneSize + column * baseUnit);\n var y2 = round(y + baseUnit);\n\n path.moveTo(x1, y1)\n .lineTo(x1, y2)\n .lineTo(x2, y2)\n .lineTo(x2, y1)\n .close();\n }\n }\n }\n\n return path;\n };\n\n QRCode.prototype._renderBackground = function _renderBackground (size, border) {\n var box = new Box(0, 0, size, size).unpad(border.width / 2);\n var background = draw.Path.fromRect(box.toRect(), {\n fill: {\n color: this.options.background\n },\n stroke: {\n color: border.color,\n width: border.width\n }\n });\n\n return background;\n };\n\n QRCode.prototype.setOptions = function setOptions (options) {\n var newOptions = options || {};\n this.options = extend(this.options, newOptions);\n\n if (options.value !== undefined) {\n this._value = String(this.options.value);\n }\n\n this._initSurface();\n this.redraw();\n };\n\n QRCode.prototype.value = function value (value$1) {\n if (value$1 === undefined) {\n return this._value;\n }\n\n this._value = String(value$1);\n\n this.redraw();\n };\n\n QRCode.prototype._hasCustomLogo = function _hasCustomLogo () {\n return Boolean(this.options.overlay.imageUrl);\n };\n\n QRCode.prototype._isSwiss = function _isSwiss () {\n return this.options.overlay.type === \"swiss\";\n };\n\n QRCode.prototype._getLogoSize = function _getLogoSize (defautLogoSize) {\n var width = this.options.overlay.width;\n var height = this.options.overlay.height;\n\n if (!width && !height) {\n width = height = defautLogoSize;\n } else if (width && !height) {\n height = width;\n } else if (!width && height) {\n width = height;\n }\n\n return {\n width: width,\n height: height\n };\n };\n\n return QRCode;\n}(Class));\n\nsetDefaultOptions(QRCode, {\n name: \"QRCode\",\n renderAs: \"svg\",\n encoding: \"ISO_8859_1\",\n value: \"\",\n errorCorrection: QRCodeDefaults.DEFAULT_ERROR_CORRECTION_LEVEL,\n background: QRCodeDefaults.DEFAULT_BACKGROUND,\n color: QRCodeDefaults.DEFAULT_DARK_MODULE_COLOR,\n size: \"\",\n padding: 0,\n border: {\n color: \"\",\n width: 0\n },\n overlay: {\n type: \"image\",\n imageUrl: \"\",\n width: 0,\n height: 0\n }\n});\n\nexport default QRCode;\n","// Coordinate reference system\n// World Geodetic System of 1984\nvar WGS84 = {\n a: 6378137, // Semi-major radius\n b: 6356752.314245179, // Semi-minor radius\n f: 0.0033528106647474805, // Flattening\n e: 0.08181919084262149 // Eccentricity\n};\n\n// Geographic coordinate systems use a spheroid to calculate positions on the earth.\n// A datum defines the position of the spheroid relative to the center of the earth\n// it provides a frame of reference for measuring locations on the surface of the earth\n// and defines the origin and orientation of latitude and longitude lines.\nexport var datums = {\n WGS84: WGS84\n};\n","import {\n Class,\n deepExtend,\n deg,\n rad,\n round,\n defined\n} from '../common';\n\nimport {\n datums\n} from './datums';\n\nfunction toSquare(value) {\n return value * value;\n}\n\n\nvar math = Math,\n abs = math.abs,\n atan = math.atan,\n atan2 = math.atan2,\n cos = math.cos,\n sin = math.sin,\n tan = math.tan;\n\nexport var Location = (function (Class) {\n function Location(lat, lng) {\n Class.call(this);\n\n this.initProperties();\n\n if (arguments.length === 1) {\n this.lat = lat[0];\n this.lng = lat[1];\n } else {\n this.lat = lat;\n this.lng = lng;\n }\n }\n\n if ( Class ) Location.__proto__ = Class;\n Location.prototype = Object.create( Class && Class.prototype );\n Location.prototype.constructor = Location;\n\n Location.prototype.initProperties = function initProperties () {\n deepExtend(this, {\n DISTANCE_ITERATIONS: 100,\n DISTANCE_CONVERGENCE: 1e-12,\n DISTANCE_PRECISION: 2,\n FORMAT: '{0:N6}{1:N6}'\n });\n };\n\n Location.prototype.toArray = function toArray () {\n return [\n this.lat,\n this.lng\n ];\n };\n\n Location.prototype.equals = function equals (loc) {\n return loc && loc.lat === this.lat && loc.lng === this.lng;\n };\n\n Location.prototype.clone = function clone () {\n return new Location(this.lat, this.lng);\n };\n\n Location.prototype.round = function round$1 (precision) {\n this.lng = round(this.lng, precision);\n this.lat = round(this.lat, precision);\n return this;\n };\n\n Location.prototype.wrap = function wrap () {\n this.lng = this.lng % 180;\n this.lat = this.lat % 90;\n return this;\n };\n\n Location.prototype.distanceTo = function distanceTo (dest, datum) {\n return this.greatCircleTo(dest, datum).distance;\n };\n\n Location.prototype.destination = function destination (distance, initialBearing, initialDatum) {\n var bearing = rad(initialBearing);\n var datum = initialDatum || datums.WGS84;\n var fromLat = rad(this.lat);\n var fromLng = rad(this.lng);\n var dToR = distance / datum.a;\n var lat = math.asin(sin(fromLat) * cos(dToR) + cos(fromLat) * sin(dToR) * cos(bearing));\n var lng = fromLng + atan2(sin(bearing) * sin(dToR) * cos(fromLat), cos(dToR) - sin(fromLat) * sin(lat));\n\n return new Location(deg(lat), deg(lng));\n };\n\n Location.prototype.greatCircleTo = function greatCircleTo (initialDest, initialDatum) {\n var this$1 = this;\n\n var dest = Location.create(dest);\n var datum = initialDatum || datums.WGS84;\n\n if (!dest || this.clone().round(8).equals(dest.clone().round(8))) {\n return {\n distance: 0,\n azimuthFrom: 0,\n azimuthTo: 0\n };\n }\n\n // See http://en.wikipedia.org/wiki/Vincenty's_formulae#Notation\n // o == sigma\n // A == alpha\n\n var a = datum.a;\n var b = datum.b;\n var f = datum.f;\n var L = rad(dest.lng - this.lng);\n var U1 = atan((1 - f) * tan(rad(this.lat)));\n var sinU1 = sin(U1);\n var cosU1 = cos(U1);\n var U2 = atan((1 - f) * tan(rad(dest.lat)));\n var sinU2 = sin(U2);\n var cosU2 = cos(U2);\n var lambda = L;\n var prevLambda;\n var i = this.DISTANCE_ITERATIONS;\n var converged = false;\n var sinLambda;\n var cosLambda;\n var sino;\n var cosA2;\n var coso;\n var cos2om;\n var sigma;\n\n while (!converged && i-- > 0) {\n sinLambda = sin(lambda);\n cosLambda = cos(lambda);\n sino = math.sqrt(toSquare(cosU2 * sinLambda) + toSquare(cosU1 * sinU2 - sinU1 * cosU2 * cosLambda));\n coso = sinU1 * sinU2 + cosU1 * cosU2 * cosLambda;\n sigma = atan2(sino, coso);\n\n var sinA = cosU1 * cosU2 * sinLambda / sino;\n cosA2 = 1 - toSquare(sinA);\n cos2om = 0;\n\n if (cosA2 !== 0) {\n cos2om = coso - 2 * sinU1 * sinU2 / cosA2;\n }\n\n prevLambda = lambda;\n var C = f / 16 * cosA2 * (4 + f * (4 - 3 * cosA2));\n lambda = L + (1 - C) * f * sinA * (sigma + C * sino * (cos2om + C * coso * (-1 + 2 * toSquare(cos2om))));\n converged = abs(lambda - prevLambda) <= this$1.DISTANCE_CONVERGENCE;\n }\n\n var u2 = cosA2 * (toSquare(a) - toSquare(b)) / toSquare(b);\n var A = 1 + u2 / 16384 * (4096 + u2 * (-768 + u2 * (320 - 175 * u2)));\n var B = u2 / 1024 * (256 + u2 * (-128 + u2 * (74 - 47 * u2)));\n var deltao = B * sino * (cos2om + B / 4 * (coso * (-1 + 2 * toSquare(cos2om)) - B / 6 * cos2om * (-3 + 4 * toSquare(sino)) * (-3 + 4 * toSquare(cos2om))));\n\n var azimuthFrom = atan2(cosU2 * sinLambda, cosU1 * sinU2 - sinU1 * cosU2 * cosLambda);\n var azimuthTo = atan2(cosU1 * sinLambda, -sinU1 * cosU2 + cosU1 * sinU2 * cosLambda);\n\n return {\n distance: round(b * A * (sigma - deltao), this.DISTANCE_PRECISION),\n azimuthFrom: deg(azimuthFrom),\n azimuthTo: deg(azimuthTo)\n };\n };\n\n // IE < 9 doesn't allow to override toString on definition\n Location.prototype.toString = function toString () {\n // return kendo.format(this.FORMAT, this.lat, this.lng);\n return String(this.lat) + \",\" + String(this.lng);\n };\n\n Location.fromLngLat = function fromLngLat (lngAndLat) {\n return new Location(lngAndLat[1], lngAndLat[0]);\n };\n\n Location.fromLatLng = function fromLatLng (lngAndLat) {\n return new Location(lngAndLat[0], lngAndLat[1]);\n };\n\n Location.create = function create (a, b) {\n if (defined(a)) {\n if (a instanceof Location) {\n return a.clone();\n } else if (arguments.length === 1 && a.length === 2) {\n return Location.fromLatLng(a);\n }\n\n return new Location(a, b);\n }\n };\n\n return Location;\n}(Class));\n","import {\n geometry as g\n} from '@progress/kendo-drawing';\n\nimport {\n Class,\n setDefaultOptions,\n limitValue,\n rad,\n deg,\n deepExtend\n} from '../common';\n\nimport {\n Location\n} from './location';\n\nimport {\n datums\n} from './datums';\n\n\nvar math = Math,\n atan = math.atan,\n exp = math.exp,\n pow = math.pow,\n sin = math.sin,\n log = math.log,\n tan = math.tan,\n Point = g.Point;\n\nvar PI = math.PI,\n PI_DIV_2 = PI / 2,\n PI_DIV_4 = PI / 4,\n DEG_TO_RAD = PI / 180;\n\nvar WGS84 = datums.WGS84;\n\n// WGS 84 / World Mercator\nexport var Mercator = (function (Class) {\n function Mercator(options) {\n Class.call(this);\n this.initProperties();\n this._initOptions(options);\n }\n\n if ( Class ) Mercator.__proto__ = Class;\n Mercator.prototype = Object.create( Class && Class.prototype );\n Mercator.prototype.constructor = Mercator;\n\n Mercator.prototype._initOptions = function _initOptions (options) {\n this.options = deepExtend({}, this.options, options);\n };\n\n Mercator.prototype.initProperties = function initProperties () {\n // super.initProperties();\n\n deepExtend(this, {\n MAX_LNG: 180,\n MAX_LAT: 85.0840590501,\n INVERSE_ITERATIONS: 15,\n INVERSE_CONVERGENCE: 1e-12\n });\n };\n\n Mercator.prototype.forward = function forward (loc, clamp) {\n var proj = this,\n options = proj.options,\n datum = options.datum,\n r = datum.a,\n lng0 = options.centralMeridian,\n lat = limitValue(loc.lat, -proj.MAX_LAT, proj.MAX_LAT),\n lng = clamp ? limitValue(loc.lng, -proj.MAX_LNG, proj.MAX_LNG) : loc.lng,\n x = rad(lng - lng0) * r,\n y = proj._projectLat(lat);\n return new Point(x, y);\n };\n Mercator.prototype._projectLat = function _projectLat (lat) {\n var datum = this.options.datum,\n ecc = datum.e,\n r = datum.a,\n y = rad(lat),\n ts = tan(PI_DIV_4 + y / 2),\n con = ecc * sin(y),\n p = pow((1 - con) / (1 + con), ecc / 2);\n\n // See: http://en.wikipedia.org/wiki/Mercator_projection#Generalization_to_the_ellipsoid\n return r * log(ts * p);\n };\n Mercator.prototype.inverse = function inverse (point, clamp) {\n var proj = this,\n options = proj.options,\n datum = options.datum,\n r = datum.a,\n lng0 = options.centralMeridian,\n lng = point.x / (DEG_TO_RAD * r) + lng0,\n lat = limitValue(proj._inverseY(point.y), -proj.MAX_LAT, proj.MAX_LAT);\n if (clamp) {\n lng = limitValue(lng, -proj.MAX_LNG, proj.MAX_LNG);\n }\n return new Location(lat, lng);\n };\n Mercator.prototype._inverseY = function _inverseY (y) {\n var proj = this,\n datum = proj.options.datum,\n r = datum.a,\n ecc = datum.e,\n ecch = ecc / 2,\n ts = exp(-y / r),\n phi = PI_DIV_2 - 2 * atan(ts),\n i;\n for (i = 0; i <= proj.INVERSE_ITERATIONS; i++) {\n var con = ecc * sin(phi),\n p = pow((1 - con) / (1 + con), ecch),\n dphi = PI_DIV_2 - 2 * atan(ts * p) - phi;\n phi += dphi;\n if (math.abs(dphi) <= proj.INVERSE_CONVERGENCE) {\n break;\n }\n }\n return deg(phi);\n };\n\n return Mercator;\n}(Class));\n\nsetDefaultOptions(Mercator, {\n centralMeridian: 0,\n datum: WGS84\n});\n\n\n// WGS 84 / Pseudo-Mercator\n// Used by Google Maps, Bing, OSM, etc.\n// Spherical projection of ellipsoidal coordinates.\nexport var SphericalMercator = (function (Mercator) {\n function SphericalMercator () {\n Mercator.apply(this, arguments);\n }\n\n if ( Mercator ) SphericalMercator.__proto__ = Mercator;\n SphericalMercator.prototype = Object.create( Mercator && Mercator.prototype );\n SphericalMercator.prototype.constructor = SphericalMercator;\n\n SphericalMercator.prototype.initProperties = function initProperties () {\n Mercator.prototype.initProperties.call(this);\n\n deepExtend(this, {\n MAX_LAT: 85.0511287798\n });\n };\n\n SphericalMercator.prototype._projectLat = function _projectLat (lat) {\n var r = this.options.datum.a,\n y = rad(lat),\n ts = tan(PI_DIV_4 + y / 2);\n return r * log(ts);\n };\n\n SphericalMercator.prototype._inverseY = function _inverseY (y) {\n var r = this.options.datum.a,\n ts = exp(-y / r);\n return deg(PI_DIV_2 - 2 * atan(ts));\n };\n\n return SphericalMercator;\n}(Mercator));\n\nexport var Equirectangular = (function (Class) {\n function Equirectangular () {\n Class.apply(this, arguments);\n }\n\n if ( Class ) Equirectangular.__proto__ = Class;\n Equirectangular.prototype = Object.create( Class && Class.prototype );\n Equirectangular.prototype.constructor = Equirectangular;\n\n Equirectangular.prototype.forward = function forward (loc) {\n return new Point(loc.lng, loc.lat);\n };\n Equirectangular.prototype.inverse = function inverse (point) {\n return new Location(point.y, point.x);\n };\n\n return Equirectangular;\n}(Class));\n\n// This is the projected coordinate system used for rendering maps in Google Maps, OpenStreetMap, etc\n// Unit: metre\n// Geodetic CRS: WGS 84\n// Scope: Certain Web mapping and visualisation applications. It is not a recognised geodetic system: for that see ellipsoidal Mercator CRS code 3395 (WGS 84 / World Mercator).\n// Remarks: Uses spherical development of ellipsoidal coordinates. Relative to WGS 84 / World Mercator (CRS code 3395) errors of 0.7 percent in scale and differences in northing of up to 43km in the map (equivalent to 21km on the ground) may arise.\n// Area of use: World between 85.06°S and 85.06°N.\n// Coordinate system: Cartesian 2D CS. Axes: easting, northing (X,Y). Orientations: east, north. UoM: m.\n// https://epsg.io/3857\nexport var EPSG3857 = (function (Class) {\n function EPSG3857() {\n Class.call(this);\n var crs = this,\n proj = crs._proj = new SphericalMercator();\n var c = this.c = 2 * PI * proj.options.datum.a;\n\n // transfrom matrix\n // Scale circumference to 1, mirror Y and shift origin to top left\n this._tm = g.transform().translate(0.5, 0.5).scale(1 / c, -1 / c);\n\n // Inverse transform matrix\n this._itm = g.transform().scale(c, -c).translate(-0.5, -0.5);\n }\n\n if ( Class ) EPSG3857.__proto__ = Class;\n EPSG3857.prototype = Object.create( Class && Class.prototype );\n EPSG3857.prototype.constructor = EPSG3857;\n\n // Location <-> Point (screen coordinates for a given scale)\n EPSG3857.prototype.toPoint = function toPoint (loc, scale, clamp) {\n var point = this._proj.forward(loc, clamp);\n return point.transform(this._tm).scale(scale || 1);\n };\n EPSG3857.prototype.toLocation = function toLocation (point, scale, clamp) {\n var newPoint = point.clone().scale(1 / (scale || 1)).transform(this._itm);\n return this._proj.inverse(newPoint, clamp);\n };\n\n return EPSG3857;\n}(Class));\n\n// Unit: metre\n// Geodetic CRS: WGS 84\n// Scope: Very small scale mapping.\n// Remarks: Euro-centric view of world excluding polar areas.\n// Area of use: World between 80°S and 84°N.\n// Coordinate system: Cartesian 2D CS. Axes: easting, northing (E,N). Orientations: east, north. UoM: m.\n// https://epsg.io/3395\nexport var EPSG3395 = (function (Class) {\n function EPSG3395() {\n Class.call(this);\n this._proj = new Mercator();\n }\n\n if ( Class ) EPSG3395.__proto__ = Class;\n EPSG3395.prototype = Object.create( Class && Class.prototype );\n EPSG3395.prototype.constructor = EPSG3395;\n EPSG3395.prototype.toPoint = function toPoint (loc) {\n return this._proj.forward(loc);\n };\n EPSG3395.prototype.toLocation = function toLocation (point) {\n return this._proj.inverse(point);\n };\n\n return EPSG3395;\n}(Class));\n\n// Unit: degree\n// Geodetic CRS: WGS 84\n// Scope: Horizontal component of 3D system. Used by the GPS satellite navigation system and for NATO military geodetic surveying.\n// Area of use: World.\n// Coordinate system: Ellipsoidal 2D CS. Axes: latitude, longitude. Orientations: north, east. UoM: degree\n// https://epsg.io/4326\nexport var EPSG4326 = (function (Class) {\n function EPSG4326() {\n Class.call(this);\n this._proj = new Equirectangular();\n }\n\n if ( Class ) EPSG4326.__proto__ = Class;\n EPSG4326.prototype = Object.create( Class && Class.prototype );\n EPSG4326.prototype.constructor = EPSG4326;\n EPSG4326.prototype.toPoint = function toPoint (loc) {\n return this._proj.forward(loc);\n };\n EPSG4326.prototype.toLocation = function toLocation (point) {\n return this._proj.inverse(point);\n };\n\n return EPSG4326;\n}(Class));\n","import { getSupportedFeatures } from '../common';\n\n/* eslint-disable arrow-body-style, no-useless-escape */\n\nexport var extend = Object.assign;\n\nexport var proxy = function (method, context) {\n return method.bind(context);\n};\n\nexport var convertToHtml = function (html) {\n var div = document.createElement(\"div\");\n div.innerHTML = html;\n return div.firstChild;\n};\n\nexport var appendHtml = function (html, element) {\n var div = document.createElement('div');\n div.innerHTML = html;\n\n // use childNodes instead of children\n // to cover text nodes as well\n while (div.childNodes.length > 0) {\n element.appendChild(div.childNodes[0]);\n }\n};\n\nexport var removeChildren = function (element) {\n while (element.firstChild) {\n element.removeChild(element.firstChild);\n }\n};\n\nexport var prepend = function (element, originElement) {\n originElement.insertBefore(element, originElement.firstChild);\n};\n\nexport var wrapInner = function (parent, wrapper) {\n parent.appendChild(wrapper);\n\n while (parent.firstChild !== wrapper) {\n wrapper.appendChild(parent.firstChild);\n }\n};\n\nexport var toHyphens = function (str) {\n var result = str.replace(/([a-z][A-Z])/g, function(g) {\n return g.charAt(0) + '-' + g.charAt(1).toLowerCase();\n });\n\n return result;\n};\n\nexport var toPixels = function (value) {\n var result;\n\n if (value && String(value).endsWith(\"px\")) {\n result = value;\n } else {\n result = String(value) + \"px\";\n }\n\n return result;\n};\n\nexport var hasNativeScrolling = function (userAgent) {\n var ref = getSupportedFeatures(userAgent);\n var mobileOS = ref.mobileOS;\n return mobileOS.ios || mobileOS.android;\n};\n\nexport var setDefaultEvents = function (type, events) {\n var proto = type.prototype;\n\n if (proto.events) {\n events.forEach(function (event) {\n if (proto.events.indexOf(event) < 0) {\n proto.events.push(event);\n }\n });\n } else {\n proto.events = events;\n }\n};\n\nexport var wheelDeltaY = function (e) {\n var deltaY = e.wheelDeltaY;\n var delta;\n\n if (e.wheelDelta) { // Webkit and IE\n if (deltaY === undefined || deltaY) { // IE does not have deltaY, thus always scroll (horizontal scrolling is treated as vertical)\n delta = e.wheelDelta;\n }\n } else if (e.detail && e.axis === e.VERTICAL_AXIS) { // Firefox and Opera\n delta = (-e.detail) * 10;\n }\n\n return delta;\n};\n\nexport var renderPos = function (pos) {\n var result = [];\n\n if (pos) {\n var parts = toHyphens(pos).split(\"-\");\n\n for (var i = 0; i < parts.length; i++) {\n result.push(\"k-pos-\" + parts[i]);\n }\n }\n\n return result.join(\" \");\n};\n\n/* eslint-enable arrow-body-style, no-useless-escape */\n","import {\n addClass,\n defined,\n Observable,\n valueOrDefault,\n deepExtend,\n setDefaultOptions\n} from '../common';\n\nimport {\n appendHtml,\n removeChildren\n} from './utils';\n\nexport var Attribution = (function (Observable) {\n function Attribution(element, options) {\n Observable.call(this);\n this.element = element;\n\n this._initOptions(options);\n this.items = [];\n\n addClass(this.element, 'k-widget k-attribution');\n }\n\n if ( Observable ) Attribution.__proto__ = Observable;\n Attribution.prototype = Object.create( Observable && Observable.prototype );\n Attribution.prototype.constructor = Attribution;\n\n Attribution.prototype._initOptions = function _initOptions (options) {\n this.options = deepExtend({}, this.options, options);\n };\n\n Attribution.prototype.filter = function filter (extent, zoom) {\n this._extent = extent;\n this._zoom = zoom;\n this._render();\n };\n\n Attribution.prototype.add = function add (item) {\n var newItem = item;\n\n if (defined(item)) {\n if (typeof item === 'string') {\n newItem = {\n text: item\n };\n }\n\n this.items.push(newItem);\n this._render();\n }\n };\n\n Attribution.prototype.remove = function remove (text) {\n var this$1 = this;\n\n var result = [];\n\n for (var i = 0; i < this.items.length; i++) {\n var item = this$1.items[i];\n\n if (item.text !== text) {\n result.push(item);\n }\n }\n\n this.items = result;\n this._render();\n };\n\n Attribution.prototype.clear = function clear () {\n this.items = [];\n removeChildren(this.element);\n };\n\n Attribution.prototype._render = function _render () {\n var this$1 = this;\n\n var result = [];\n\n for (var i = 0; i < this.items.length; i++) {\n var item = this$1.items[i];\n var text = this$1._itemText(item);\n\n if (text !== '') {\n result.push(text);\n }\n }\n\n if (result.length > 0) {\n removeChildren(this.element);\n\n var html = result.join(this.options.separator);\n appendHtml(html, this.element);\n\n this.showElement();\n } else {\n this.hideElement();\n }\n };\n\n Attribution.prototype.hideElement = function hideElement () {\n this.element.style.display = \"none\";\n };\n\n Attribution.prototype.showElement = function showElement () {\n this.element.style.display = \"\";\n };\n\n Attribution.prototype._itemText = function _itemText (item) {\n var text = '';\n var inZoomLevel = this._inZoomLevel(item.minZoom, item.maxZoom);\n var inArea = this._inArea(item.extent);\n\n if (inZoomLevel && inArea) {\n text += item.text;\n }\n\n return text;\n };\n\n Attribution.prototype._inZoomLevel = function _inZoomLevel (min, max) {\n var result = true;\n var newMin = valueOrDefault(min, -Number.MAX_VALUE);\n var newMax = valueOrDefault(max, Number.MAX_VALUE);\n\n result = this._zoom > newMin && this._zoom < newMax;\n return result;\n };\n\n Attribution.prototype._inArea = function _inArea (area) {\n var result = true;\n\n if (area) {\n result = area.contains(this._extent);\n }\n\n return result;\n };\n\n return Attribution;\n}(Observable));\n\nsetDefaultOptions(Attribution, {\n name: 'Attribution',\n separator: ' | '\n});\n","import {\n deepExtend,\n addClass,\n Observable,\n keys,\n setDefaultOptions,\n renderIcon,\n on,\n off,\n} from '../common';\n\nimport {\n proxy,\n setDefaultEvents,\n convertToHtml\n} from './utils';\n\nvar PAN = \"pan\";\n\nvar directionsMap = {\n up: {\n className: \"k-navigator-n\",\n iconClass: \"k-i-caret-alt-up\"\n },\n down: {\n className: \"k-navigator-s\",\n iconClass: \"k-i-caret-alt-down\"\n },\n right: {\n className: \"k-navigator-e\",\n iconClass: \"k-i-caret-alt-right\"\n },\n left: {\n className: \"k-navigator-w\",\n iconClass: \"k-i-caret-alt-left\"\n }\n};\n\nfunction createButton(direction, iconOptions) {\n var html =\n '';\n\n return convertToHtml(html);\n}\n\nexport var Navigator = (function (Observable) {\n function Navigator(element, options) {\n Observable.call(this);\n\n this.element = element;\n this._initOptions(options);\n\n var navigateUpButton = createButton(\"up\", options.icons);\n var navigateRightlButton = createButton(\"right\", options.icons);\n var navigateDownButton = createButton(\"down\", options.icons);\n var navigateLeftButton = createButton(\"left\", options.icons);\n\n this.element.appendChild(navigateUpButton);\n this.element.appendChild(navigateRightlButton);\n this.element.appendChild(navigateDownButton);\n this.element.appendChild(navigateLeftButton);\n\n addClass(this.element, 'k-widget k-navigator');\n\n on(this.element, \"click\", \".k-button\", proxy(this._click, this));\n\n var parentElement = this.element.parentNode.closest(\"[data-role]\");\n\n this._keyroot = parentElement ? parentElement : this.element;\n this._tabindex(this._keyroot);\n\n this._keydownHandler = proxy(this._keydown, this);\n on(this._keyroot, \"keydown\", this._keydownHandler);\n }\n\n if ( Observable ) Navigator.__proto__ = Observable;\n Navigator.prototype = Object.create( Observable && Observable.prototype );\n Navigator.prototype.constructor = Navigator;\n\n Navigator.prototype.destroy = function destroy () {\n this.dispose();\n };\n\n // originates from the kendo.jquery version\n Navigator.prototype.dispose = function dispose () {\n off(this._keyroot, \"keydown\", this._keydownHandler);\n };\n\n Navigator.prototype._tabindex = function _tabindex (target) {\n var targetElement = target || this.wrapper || this.element;\n\n var element = this.element,\n TABINDEX = \"tabindex\",\n tabindex = targetElement.getAttribute(TABINDEX) || element.getAttribute(TABINDEX);\n\n element.removeAttribute(TABINDEX);\n\n targetElement.setAttribute(TABINDEX, !isNaN(tabindex) ? tabindex : 0);\n };\n\n Navigator.prototype._initOptions = function _initOptions (options) {\n this.options = deepExtend({}, this.options, options);\n };\n\n Navigator.prototype._pan = function _pan (x, y) {\n var panStep = this.options.panStep;\n\n this.trigger(PAN, {\n x: x * panStep,\n y: y * panStep\n });\n };\n\n Navigator.prototype._click = function _click (e) {\n var x = 0;\n var y = 0;\n var button = e.currentTarget;\n\n if (button.matches('.k-navigator-n')) {\n y = 1;\n } else if (button.matches('.k-navigator-s')) {\n y = -1;\n } else if (button.matches('.k-navigator-e')) {\n x = 1;\n } else if (button.matches('.k-navigator-w')) {\n x = -1;\n }\n\n this._pan(x, y);\n\n e.preventDefault();\n };\n\n Navigator.prototype._keydown = function _keydown (e) {\n switch (e.which) {\n case keys.UP:\n this._pan(0, 1);\n e.preventDefault();\n break;\n case keys.DOWN:\n this._pan(0, -1);\n e.preventDefault();\n break;\n case keys.RIGHT:\n this._pan(1, 0);\n e.preventDefault();\n break;\n case keys.LEFT:\n this._pan(-1, 0);\n e.preventDefault();\n break;\n default:\n break;\n }\n };\n\n return Navigator;\n}(Observable));\n\nsetDefaultOptions(Navigator, {\n name: 'Navigator',\n panStep: 1\n});\n\n\nsetDefaultEvents(Navigator, [\n PAN\n]);\n","import {\n deepExtend,\n addClass,\n Observable,\n keys,\n hasClasses,\n setDefaultOptions,\n renderIcon,\n on,\n off,\n} from '../common';\n\nimport {\n setDefaultEvents,\n convertToHtml\n} from './utils';\n\nfunction createButton(direction, icon, iconOptions) {\n var html =\n '';\n\n return convertToHtml(html);\n}\n\nvar PLUS = 187;\nvar MINUS = 189;\nvar FF_PLUS = 61;\nvar FF_MINUS = 173;\nvar CHANGE = \"change\";\n\nexport var ZoomControl = (function (Observable) {\n function ZoomControl(element, options, iconOptions) {\n Observable.call(this);\n this.element = element;\n this._initOptions(options);\n\n var zoomInButton = createButton('in', 'plus', iconOptions);\n var zoomOutButton = createButton('out', 'minus', iconOptions);\n\n this.element.appendChild(zoomInButton);\n this.element.appendChild(zoomOutButton);\n this.element.setAttribute(\"role\", \"group\");\n\n addClass(this.element, 'k-widget k-zoom-control k-button-group k-group-horizontal');\n\n this._clickHandler = this._click.bind(this);\n on(this.element, \"click\", \".k-button\", this._clickHandler);\n\n var parentElement = this.element.parentNode.closest(\"[data-role]\");\n\n this._keyroot = parentElement ? parentElement : this.element;\n\n this._tabindex(this._keyroot);\n\n this._keydownHandler = this._keydown.bind(this);\n on(this._keyroot, \"keydown\", this._keydownHandler);\n }\n\n if ( Observable ) ZoomControl.__proto__ = Observable;\n ZoomControl.prototype = Object.create( Observable && Observable.prototype );\n ZoomControl.prototype.constructor = ZoomControl;\n\n ZoomControl.prototype.destroy = function destroy () {\n if (this.element) {\n off(this.element, \"click\", this._clickHandler);\n }\n\n if (this._keyroot) {\n off(this._keyroot, 'keydown', this._keydownHandler);\n }\n };\n\n ZoomControl.prototype._tabindex = function _tabindex (target) {\n var targetElement = target || this.wrapper || this.element;\n\n var element = this.element,\n TABINDEX = \"tabindex\",\n tabindex = targetElement.getAttribute(TABINDEX) || element.getAttribute(TABINDEX);\n\n element.removeAttribute(TABINDEX);\n\n targetElement.setAttribute(TABINDEX, !isNaN(tabindex) ? tabindex : 0);\n };\n\n ZoomControl.prototype._initOptions = function _initOptions (options) {\n this.options = deepExtend({}, this.options, options);\n };\n\n ZoomControl.prototype._change = function _change (direction) {\n var zoomStep = this.options.zoomStep;\n this.trigger(CHANGE, { delta: direction * zoomStep });\n };\n\n ZoomControl.prototype._click = function _click (e) {\n var button = e.currentTarget;\n var direction = 1;\n\n if (hasClasses(button, 'k-zoom-out')) {\n direction = -1;\n }\n\n this._change(direction);\n e.preventDefault();\n };\n\n ZoomControl.prototype._keydown = function _keydown (e) {\n switch (e.which) {\n case keys.NUMPAD_PLUS:\n case PLUS:\n case FF_PLUS:\n this._change(1);\n break;\n case keys.NUMPAD_MINUS:\n case MINUS:\n case FF_MINUS:\n this._change(-1);\n break;\n default:\n break;\n }\n };\n\n return ZoomControl;\n}(Observable));\n\nsetDefaultOptions(ZoomControl, {\n name: 'ZoomControl',\n zoomStep: 1\n});\n\nsetDefaultEvents(ZoomControl, [\n CHANGE\n]);\n","import {\n Class,\n valueOrDefault\n} from '../common';\n\nimport { Location } from './location';\n\nvar math = Math,\n max = math.max,\n min = math.min;\n\nexport var Extent = (function (Class) {\n function Extent(initialNw, initialSe) {\n Class.call(this);\n var nw = Location.create(initialNw);\n var se = Location.create(initialSe);\n\n if (nw.lng + 180 > se.lng + 180 && nw.lat + 90 < se.lat + 90) {\n this.se = nw;\n this.nw = se;\n } else {\n this.se = se;\n this.nw = nw;\n }\n }\n\n if ( Class ) Extent.__proto__ = Class;\n Extent.prototype = Object.create( Class && Class.prototype );\n Extent.prototype.constructor = Extent;\n\n var staticAccessors = { World: { configurable: true } };\n\n Extent.prototype.contains = function contains (loc) {\n var nw = this.nw, se = this.se, lng = valueOrDefault(loc.lng, loc[1]), lat = valueOrDefault(loc.lat, loc[0]);\n\n return loc &&\n lng + 180 >= nw.lng + 180 && lng + 180 <= se.lng + 180 &&\n lat + 90 >= se.lat + 90 && lat + 90 <= nw.lat + 90;\n };\n\n Extent.prototype.center = function center () {\n var nw = this.nw;\n var se = this.se;\n var lng = nw.lng + (se.lng - nw.lng) / 2;\n var lat = nw.lat + (se.lat - nw.lat) / 2;\n\n return new Location(lat, lng);\n };\n\n Extent.prototype.containsAny = function containsAny (locs) {\n var this$1 = this;\n\n var result = false;\n\n for (var i = 0; i < locs.length; i++) {\n result = result || this$1.contains(locs[i]);\n }\n\n return result;\n };\n\n Extent.prototype.include = function include (loc) {\n var nw = this.nw, se = this.se, lng = valueOrDefault(loc.lng, loc[1]), lat = valueOrDefault(loc.lat, loc[0]);\n\n nw.lng = min(nw.lng, lng);\n nw.lat = max(nw.lat, lat);\n se.lng = max(se.lng, lng);\n se.lat = min(se.lat, lat);\n };\n\n Extent.prototype.includeAll = function includeAll (locs) {\n var this$1 = this;\n\n for (var i = 0; i < locs.length; i++) {\n this$1.include(locs[i]);\n }\n };\n\n Extent.prototype.edges = function edges () {\n var nw = this.nw, se = this.se;\n\n return {\n nw: this.nw,\n ne: new Location(nw.lat, se.lng),\n se: this.se,\n sw: new Location(se.lat, nw.lng)\n };\n };\n\n Extent.prototype.toArray = function toArray () {\n var nw = this.nw, se = this.se;\n\n return [\n nw,\n new Location(nw.lat, se.lng),\n se,\n new Location(se.lat, nw.lng)\n ];\n };\n\n Extent.prototype.overlaps = function overlaps (extent) {\n return this.containsAny(extent.toArray()) ||\n extent.containsAny(this.toArray());\n };\n\n Extent.create = function create (a, b) {\n if (a instanceof Extent) {\n return a;\n } else if (a && b) {\n return new Extent(a, b);\n } else if (a && a.length === 4 && !b) {\n return new Extent([\n a[0],\n a[1]\n ], [\n a[2],\n a[3]\n ]);\n }\n };\n\n staticAccessors.World.get = function () {\n return new Extent([ 90, -180 ], [ -90, 180 ]);\n };\n\n Object.defineProperties( Extent, staticAccessors );\n\n return Extent;\n}(Class));\n","export var SHOW_TOOLTIP = 'showTooltip';\nexport var HIDE_TOOLTIP = 'hideTooltip';\nexport var CENTER_CHANGE = 'centerChange';\nexport var ZOOM_CHANGE = 'zoomChange';\nexport var INIT = 'init';\n","import { Class, deepExtend, setDefaultOptions } from '../../common';\nimport { SHOW_TOOLTIP, HIDE_TOOLTIP } from '../constants';\n\nexport var Tooltip = (function (Class) {\n function Tooltip(widgetService, options) {\n Class.call(this);\n\n this.widgetService = widgetService;\n this.options = deepExtend({}, this.options, options);\n this.offset = { x: 0, y: 0 };\n }\n\n if ( Class ) Tooltip.__proto__ = Class;\n Tooltip.prototype = Object.create( Class && Class.prototype );\n Tooltip.prototype.constructor = Tooltip;\n\n var prototypeAccessors = { anchor: { configurable: true } };\n\n Tooltip.prototype.show = function show (anchor, args) {\n if (this.location === args.location) {\n return;\n }\n\n this.anchor = anchor;\n this.location = args.location;\n\n this.widgetService.notify(SHOW_TOOLTIP,\n Object.assign({ anchor: this.anchor }, args)\n );\n\n this.visible = true;\n };\n\n Tooltip.prototype.hide = function hide () {\n if (this.widgetService) {\n this.widgetService.notify(HIDE_TOOLTIP);\n }\n\n this.visible = false;\n this.location = null;\n };\n\n prototypeAccessors.anchor.get = function () {\n return this._anchor;\n };\n\n prototypeAccessors.anchor.set = function (anchor) {\n var documentPoint = this.widgetService.widget._toDocumentCoordinates({\n x: anchor.left - this.offset.x,\n y: anchor.top - this.offset.y\n });\n\n this._anchor = {\n left: documentPoint.left,\n top: documentPoint.top\n };\n };\n\n Tooltip.prototype.destroy = function destroy () {\n this.widgetService = null;\n };\n\n Object.defineProperties( Tooltip.prototype, prototypeAccessors );\n\n return Tooltip;\n}(Class));\n\nsetDefaultOptions(Tooltip, {\n border: {\n width: 1\n },\n opacity: 1\n});\n","import {\n Class,\n addClass,\n deepExtend,\n defined,\n getSupportedFeatures\n} from '../../common';\n\nimport {\n Extent\n} from './../extent';\n\nexport var Layer = (function (Class) {\n function Layer(map, options) {\n Class.call(this);\n\n this.support = getSupportedFeatures();\n\n this._initOptions(options);\n this.map = map;\n\n var element = document.createElement(\"div\");\n addClass(element, \"k-layer\");\n element.style.zIndex = this.options.zIndex;\n element.style.opacity = this.options.opacity;\n\n this.element = element;\n\n map.scrollElement.appendChild(this.element);\n\n this._beforeReset = this._beforeReset.bind(this);\n this._reset = this._reset.bind(this);\n this._resize = this._resize.bind(this);\n this._panEnd = this._panEnd.bind(this);\n\n this._activate();\n this._updateAttribution();\n }\n\n if ( Class ) Layer.__proto__ = Class;\n Layer.prototype = Object.create( Class && Class.prototype );\n Layer.prototype.constructor = Layer;\n\n Layer.prototype.destroy = function destroy () {\n this._deactivate();\n };\n\n Layer.prototype._initOptions = function _initOptions (options) {\n this.options = deepExtend({}, this.options, options);\n };\n\n Layer.prototype.show = function show () {\n this.reset();\n this._activate();\n this._applyExtent(true);\n };\n\n Layer.prototype.hide = function hide () {\n this._deactivate();\n this._setVisibility(false);\n };\n\n Layer.prototype.reset = function reset () {\n this._beforeReset();\n this._reset();\n };\n\n Layer.prototype._reset = function _reset () {\n this._applyExtent();\n };\n\n Layer.prototype._beforeReset = function _beforeReset () {\n\n };\n\n Layer.prototype._resize = function _resize () {\n\n };\n\n Layer.prototype._panEnd = function _panEnd () {\n this._applyExtent();\n };\n\n Layer.prototype._applyExtent = function _applyExtent () {\n var options = this.options;\n var zoom = this.map.zoom();\n var matchMinZoom = !defined(options.minZoom) || zoom >= options.minZoom;\n var matchMaxZoom = !defined(options.maxZoom) || zoom <= options.maxZoom;\n var extent = Extent.create(options.extent);\n var inside = !extent || extent.overlaps(this.map.extent());\n\n this._setVisibility(matchMinZoom && matchMaxZoom && inside);\n };\n\n Layer.prototype._setVisibility = function _setVisibility (visible) {\n this.element.style.display = visible ? '' : 'none';\n };\n\n Layer.prototype._activate = function _activate () {\n var map = this.map;\n\n this._deactivate();\n\n map.bind('beforeReset', this._beforeReset);\n map.bind('reset', this._reset);\n map.bind('resize', this._resize);\n map.bind('panEnd', this._panEnd);\n };\n\n Layer.prototype._deactivate = function _deactivate () {\n var map = this.map;\n\n map.unbind('beforeReset', this._beforeReset);\n map.unbind('reset', this._reset);\n map.unbind('resize', this._resize);\n map.unbind('panEnd', this._panEnd);\n };\n\n Layer.prototype._updateAttribution = function _updateAttribution () {\n var attribution = this.map.attribution;\n\n if (attribution) {\n attribution.add(this.options.attribution);\n }\n };\n\n Layer.prototype._readData = function _readData () {\n var data = this.options.data || [];\n return data;\n };\n\n Layer.prototype._hasData = function _hasData () {\n return this._data && this._data.length > 0;\n };\n\n Layer.prototype._layerIndex = function _layerIndex () {\n var layers = this.map.layers || [];\n return layers.indexOf(this);\n };\n\n return Layer;\n}(Class));\n","import {\n geometry as g,\n throttle\n} from '@progress/kendo-drawing';\n\nimport {\n Class,\n deepExtend,\n round,\n limitValue,\n hashKey,\n setDefaultOptions,\n isFunction\n} from '../../common';\n\nimport { removeChildren } from '../utils';\n\nimport { Layer } from './layer';\n\nimport TemplateService from '../../services/template-service';\n\nvar math = Math,\n Point = g.Point;\n\nfunction compileTemplate(template) {\n if (isFunction(template)) {\n return template;\n }\n\n return TemplateService.compile(template);\n}\n\nfunction roundPoint(point) {\n return new Point(round(point.x), round(point.y));\n}\n\nfunction renderSize(size) {\n var newSize = size;\n\n if (typeof(size) !== \"string\") {\n newSize += \"px\";\n }\n\n return newSize;\n}\n\nexport var TileLayer = (function (Layer) {\n function TileLayer(map, options) {\n Layer.call(this, map, options);\n\n if (typeof this.options.subdomains === 'string') {\n this.options.subdomains = this.options.subdomains.split('');\n }\n\n var viewType = this._viewType();\n this._view = new viewType(this.element, this.options);\n }\n\n if ( Layer ) TileLayer.__proto__ = Layer;\n TileLayer.prototype = Object.create( Layer && Layer.prototype );\n TileLayer.prototype.constructor = TileLayer;\n\n TileLayer.prototype.destroy = function destroy () {\n Layer.prototype.destroy.call(this);\n this._view.destroy();\n this._view = null;\n };\n\n TileLayer.prototype._beforeReset = function _beforeReset () {\n var map = this.map;\n var origin = map.locationToLayer(map.extent().nw).round();\n this._view.viewOrigin(origin);\n };\n\n TileLayer.prototype._reset = function _reset () {\n Layer.prototype._reset.call(this);\n this._updateView();\n this._view.reset();\n };\n\n TileLayer.prototype._viewType = function _viewType () {\n return TileView;\n };\n\n TileLayer.prototype._activate = function _activate () {\n Layer.prototype._activate.call(this);\n\n if (!this.support.mobileOS) {\n if (!this._pan) {\n this._pan = throttle(this._render.bind(this), 100);\n }\n\n this.map.bind('pan', this._pan);\n }\n };\n\n TileLayer.prototype._deactivate = function _deactivate () {\n Layer.prototype._deactivate.call(this);\n\n if (this._pan) {\n this.map.unbind('pan', this._pan);\n }\n };\n\n TileLayer.prototype._updateView = function _updateView () {\n var view = this._view,\n map = this.map,\n extent = map.extent(),\n extentToPoint = {\n nw: map.locationToLayer(extent.nw).round(),\n se: map.locationToLayer(extent.se).round()\n };\n\n view.center(map.locationToLayer(map.center()));\n view.extent(extentToPoint);\n view.zoom(map.zoom());\n };\n\n TileLayer.prototype._resize = function _resize () {\n this._render();\n };\n\n TileLayer.prototype._panEnd = function _panEnd (e) {\n Layer.prototype._panEnd.call(this, e);\n this._render();\n };\n\n TileLayer.prototype._render = function _render () {\n this._updateView();\n this._view.render();\n };\n\n return TileLayer;\n}(Layer));\n\nsetDefaultOptions(TileLayer, {\n tileSize: 256,\n subdomains: ['a', 'b', 'c'],\n urlTemplate: '',\n zIndex: 1\n});\n\nexport var TileView = (function (Class) {\n function TileView(element, options) {\n Class.call(this);\n this.element = element;\n this._initOptions(options);\n this.pool = new TilePool();\n }\n\n if ( Class ) TileView.__proto__ = Class;\n TileView.prototype = Object.create( Class && Class.prototype );\n TileView.prototype.constructor = TileView;\n\n TileView.prototype._initOptions = function _initOptions (options) {\n this.options = deepExtend({}, this.options, options);\n };\n\n TileView.prototype.center = function center (center$1) {\n this._center = center$1;\n };\n\n TileView.prototype.extent = function extent (extent$1) {\n this._extent = extent$1;\n };\n\n TileView.prototype.viewOrigin = function viewOrigin (origin) {\n this._viewOrigin = origin;\n };\n\n TileView.prototype.zoom = function zoom (zoom$1) {\n this._zoom = zoom$1;\n };\n\n TileView.prototype.pointToTileIndex = function pointToTileIndex (point) {\n return new Point(math.floor(point.x / this.options.tileSize), math.floor(point.y / this.options.tileSize));\n };\n\n TileView.prototype.tileCount = function tileCount () {\n var size = this.size(),\n firstTileIndex = this.pointToTileIndex(this._extent.nw),\n nw = this._extent.nw,\n point = this.indexToPoint(firstTileIndex).translate(-nw.x, -nw.y);\n\n return {\n x: math.ceil((math.abs(point.x) + size.width) / this.options.tileSize),\n y: math.ceil((math.abs(point.y) + size.height) / this.options.tileSize)\n };\n };\n\n TileView.prototype.size = function size () {\n var nw = this._extent.nw,\n se = this._extent.se,\n diff = se.clone().translate(-nw.x, -nw.y);\n\n return {\n width: diff.x,\n height: diff.y\n };\n };\n\n TileView.prototype.indexToPoint = function indexToPoint (index) {\n var x = index.x,\n y = index.y;\n\n return new Point(x * this.options.tileSize, y * this.options.tileSize);\n };\n\n TileView.prototype.subdomainText = function subdomainText () {\n var subdomains = this.options.subdomains;\n return subdomains[this.subdomainIndex++ % subdomains.length];\n };\n\n TileView.prototype.destroy = function destroy () {\n removeChildren(this.element);\n this.pool.empty();\n };\n\n TileView.prototype.reset = function reset () {\n this.pool.reset();\n this.subdomainIndex = 0;\n this.render();\n };\n\n TileView.prototype.render = function render () {\n var this$1 = this;\n\n var size = this.tileCount(),\n firstTileIndex = this.pointToTileIndex(this._extent.nw),\n tile, x, y;\n\n for (x = 0; x < size.x; x++) {\n for (y = 0; y < size.y; y++) {\n tile = this$1.createTile({\n x: firstTileIndex.x + x,\n y: firstTileIndex.y + y\n });\n\n if (!tile.visible) {\n tile.show();\n }\n }\n }\n };\n\n TileView.prototype.createTile = function createTile (currentIndex) {\n var options = this.tileOptions(currentIndex);\n var tile = this.pool.get(this._center, options);\n\n if (!tile.element.parentNode) {\n this.element.append(tile.element);\n }\n\n return tile;\n };\n\n TileView.prototype.tileOptions = function tileOptions (currentIndex) {\n var index = this.wrapIndex(currentIndex),\n point = this.indexToPoint(currentIndex),\n origin = this._viewOrigin,\n offset = point.clone().translate(-origin.x, -origin.y);\n\n return {\n index: index,\n currentIndex: currentIndex,\n point: point,\n offset: roundPoint(offset),\n zoom: this._zoom,\n size: this.options.tileSize,\n subdomain: this.subdomainText(),\n urlTemplate: this.options.urlTemplate,\n errorUrlTemplate: this.options.errorUrlTemplate\n };\n };\n\n TileView.prototype.wrapIndex = function wrapIndex (index) {\n var boundary = math.pow(2, this._zoom);\n\n return {\n x: this.wrapValue(index.x, boundary),\n y: limitValue(index.y, 0, boundary - 1)\n };\n };\n\n TileView.prototype.wrapValue = function wrapValue (value, boundary) {\n var remainder = math.abs(value) % boundary;\n var wrappedValue = value;\n\n if (value >= 0) {\n wrappedValue = remainder;\n } else {\n wrappedValue = boundary - (remainder === 0 ? boundary : remainder);\n }\n\n return wrappedValue;\n };\n\n return TileView;\n}(Class));\n\nexport var ImageTile = (function (Class) {\n function ImageTile(id, options) {\n Class.call(this);\n this.id = id;\n this.visible = true;\n this._initOptions(options);\n this.createElement();\n this.show();\n }\n\n if ( Class ) ImageTile.__proto__ = Class;\n ImageTile.prototype = Object.create( Class && Class.prototype );\n ImageTile.prototype.constructor = ImageTile;\n\n ImageTile.prototype.destroy = function destroy () {\n var element = this.element;\n var parentNode = element ? element.parentNode : null;\n\n if (element) {\n if (parentNode) {\n parentNode.removeChild(element);\n }\n\n this.element = null;\n }\n };\n\n ImageTile.prototype._initOptions = function _initOptions (options) {\n this.options = deepExtend({}, this.options, options);\n };\n\n ImageTile.prototype.createElement = function createElement () {\n var el = document.createElement(\"img\");\n var size = this.options.size + \"px\";\n el.setAttribute(\"alt\", \"\");\n el.style.position = \"absolute\";\n el.style.display = \"block\";\n el.style.width = el.style.maxWidth = size;\n el.style.height = el.style.maxHeight = size;\n\n this.element = el;\n\n // todo\n // add on error handler\n\n // this.element =\n // $('\\'\\'')\n // .css({\n // width: this.options.size,\n // height: this.options.size\n // })\n // .on('error', proxy(function(e) {\n // if (this.errorUrl()) {\n // e.target.setAttribute('src', this.errorUrl());\n // } else {\n // e.target.removeAttribute('src');\n // }\n // }, this));\n };\n\n ImageTile.prototype.show = function show () {\n var element = this.element;\n element.style.top = renderSize(this.options.offset.y);\n element.style.left = renderSize(this.options.offset.x);\n\n var url = this.url();\n\n if (url) {\n element.setAttribute('src', url);\n }\n\n element.style.visibility = 'visible';\n this.visible = true;\n };\n\n ImageTile.prototype.hide = function hide () {\n this.element.style.visibility = 'hidden';\n this.visible = false;\n };\n\n ImageTile.prototype.url = function url () {\n var urlResult = compileTemplate(this.options.urlTemplate);\n return urlResult(this.urlOptions());\n };\n\n ImageTile.prototype.errorUrl = function errorUrl () {\n var urlResult = compileTemplate(this.options.errorUrlTemplate);\n return urlResult(this.urlOptions());\n };\n\n ImageTile.prototype.urlOptions = function urlOptions () {\n var options = this.options;\n\n return {\n zoom: options.zoom,\n subdomain: options.subdomain,\n z: options.zoom,\n x: options.index.x,\n y: options.index.y,\n s: options.subdomain,\n quadkey: options.quadkey,\n q: options.quadkey,\n culture: options.culture,\n c: options.culture\n };\n };\n\n return ImageTile;\n}(Class));\n\nsetDefaultOptions(ImageTile, {\n urlTemplate: '',\n errorUrlTemplate: ''\n});\n\nexport var TilePool = (function (Class) {\n function TilePool() {\n Class.call(this);\n this._items = [];\n }\n\n if ( Class ) TilePool.__proto__ = Class;\n TilePool.prototype = Object.create( Class && Class.prototype );\n TilePool.prototype.constructor = TilePool;\n\n TilePool.prototype.get = function get (center, options) {\n if (this._items.length >= this.options.maxSize) {\n this._remove(center);\n }\n\n return this._create(options);\n };\n\n TilePool.prototype.empty = function empty () {\n var items = this._items;\n\n for (var i = 0; i < items.length; i++) {\n items[i].destroy();\n }\n\n this._items = [];\n };\n\n TilePool.prototype.reset = function reset () {\n var items = this._items;\n\n for (var i = 0; i < items.length; i++) {\n items[i].hide();\n }\n };\n\n TilePool.prototype._create = function _create (options) {\n var items = this._items;\n var tile;\n var id = hashKey(options.point.toString() + options.offset.toString() + options.zoom + options.urlTemplate);\n\n for (var i = 0; i < items.length; i++) {\n if (items[i].id === id) {\n tile = items[i];\n break;\n }\n }\n\n if (tile) {\n tile.show();\n } else {\n tile = new ImageTile(id, options);\n this._items.push(tile);\n }\n\n return tile;\n };\n\n TilePool.prototype._remove = function _remove (center) {\n var items = this._items;\n var maxDist = -1;\n var index = -1;\n\n for (var i = 0; i < items.length; i++) {\n var dist = items[i].options.point.distanceTo(center);\n\n if (dist > maxDist && !items[i].visible) {\n index = i;\n maxDist = dist;\n }\n }\n\n if (index !== -1) {\n items[index].destroy();\n items.splice(index, 1);\n }\n };\n\n return TilePool;\n}(Class));\n\nsetDefaultOptions(TilePool, {\n maxSize: 100\n});\n","import {\n Class,\n Observable,\n elementOffset,\n eventMap\n} from '../../common';\n\nimport {\n proxy\n} from '../utils';\n\nvar extend = Object.assign;\n\nvar CHANGE = 'change';\n\nexport var TapCapture = (function (Observable) {\n function TapCapture(element, options) {\n Observable.call(this);\n var that = this,\n domElement = element[0] || element;\n\n that.capture = false;\n\n if (domElement.addEventListener) {\n eventMap.down.split(' ').forEach(function(event) {\n domElement.addEventListener(event, proxy(that._press, that), true);\n });\n eventMap.up.split(' ').forEach(function(event) {\n domElement.addEventListener(event, proxy(that._release, that), true);\n });\n } else {\n eventMap.down.split(' ').forEach(function(event) {\n domElement.attachEvent(event, proxy(that._press, that));\n });\n eventMap.up.split(' ').forEach(function(event) {\n domElement.attachEvent(event, proxy(that._release, that));\n });\n }\n\n that.bind([\n 'press',\n 'release'\n ], options || {});\n }\n\n if ( Observable ) TapCapture.__proto__ = Observable;\n TapCapture.prototype = Object.create( Observable && Observable.prototype );\n TapCapture.prototype.constructor = TapCapture;\n\n TapCapture.prototype.captureNext = function captureNext () {\n this.capture = true;\n };\n\n TapCapture.prototype.cancelCapture = function cancelCapture () {\n this.capture = false;\n };\n\n TapCapture.prototype._press = function _press (e) {\n var that = this;\n\n that.trigger('press');\n\n if (that.capture) {\n e.preventDefault();\n }\n };\n\n TapCapture.prototype._release = function _release (e) {\n var that = this;\n\n that.trigger('release');\n\n if (that.capture) {\n e.preventDefault();\n that.cancelCapture();\n }\n };\n\n return TapCapture;\n}(Observable));\n\nexport var PaneDimension = (function (Observable) {\n function PaneDimension(options) {\n Observable.call(this);\n var that = this;\n that.forcedEnabled = false;\n extend(that, options);\n that.scale = 1;\n\n if (that.horizontal) {\n that.measure = 'offsetWidth';\n that.scrollSize = 'scrollWidth';\n that.axis = 'x';\n } else {\n that.measure = 'offsetHeight';\n that.scrollSize = 'scrollHeight';\n that.axis = 'y';\n }\n }\n\n if ( Observable ) PaneDimension.__proto__ = Observable;\n PaneDimension.prototype = Object.create( Observable && Observable.prototype );\n PaneDimension.prototype.constructor = PaneDimension;\n\n PaneDimension.prototype.makeVirtual = function makeVirtual () {\n extend(this, {\n virtual: true,\n forcedEnabled: true,\n _virtualMin: 0,\n _virtualMax: 0\n });\n };\n\n PaneDimension.prototype.virtualSize = function virtualSize (min, max) {\n if (this._virtualMin !== min || this._virtualMax !== max) {\n this._virtualMin = min;\n this._virtualMax = max;\n this.update();\n }\n };\n\n PaneDimension.prototype.outOfBounds = function outOfBounds (offset) {\n return offset > this.max || offset < this.min;\n };\n\n PaneDimension.prototype.forceEnabled = function forceEnabled () {\n this.forcedEnabled = true;\n };\n\n PaneDimension.prototype.getSize = function getSize () {\n return this.container[this.measure];\n };\n\n PaneDimension.prototype.getTotal = function getTotal () {\n return this.element[this.scrollSize];\n };\n\n PaneDimension.prototype.rescale = function rescale (scale) {\n this.scale = scale;\n };\n\n PaneDimension.prototype.update = function update (silent) {\n var that = this,\n total = that.virtual ? that._virtualMax : that.getTotal(),\n scaledTotal = total * that.scale,\n size = that.getSize();\n\n if (total === 0 && !that.forcedEnabled) {\n return;\n }\n\n that.max = that.virtual ? -that._virtualMin : 0;\n that.size = size;\n that.total = scaledTotal;\n that.min = Math.min(that.max, size - scaledTotal);\n that.minScale = size / total;\n that.centerOffset = (scaledTotal - size) / 2;\n that.enabled = that.forcedEnabled || scaledTotal > size;\n\n if (!silent) {\n that.trigger(CHANGE, that);\n }\n };\n\n return PaneDimension;\n}(Observable));\n\nexport var PaneDimensions = (function (Observable) {\n function PaneDimensions(options) {\n Observable.call(this);\n var that = this;\n\n that.x = new PaneDimension(extend({\n horizontal: true\n }, options));\n\n that.y = new PaneDimension(extend({\n horizontal: false\n }, options));\n\n that.container = options.container;\n that.forcedMinScale = options.minScale;\n that.maxScale = options.maxScale || 100;\n that.bind(CHANGE, options);\n }\n\n if ( Observable ) PaneDimensions.__proto__ = Observable;\n PaneDimensions.prototype = Object.create( Observable && Observable.prototype );\n PaneDimensions.prototype.constructor = PaneDimensions;\n\n PaneDimensions.prototype.rescale = function rescale (newScale) {\n this.x.rescale(newScale);\n this.y.rescale(newScale);\n this.refresh();\n };\n\n PaneDimensions.prototype.centerCoordinates = function centerCoordinates () {\n return {\n x: Math.min(0, -this.x.centerOffset),\n y: Math.min(0, -this.y.centerOffset)\n };\n };\n\n PaneDimensions.prototype.refresh = function refresh () {\n var that = this;\n that.x.update();\n that.y.update();\n that.enabled = that.x.enabled || that.y.enabled;\n that.minScale = that.forcedMinScale || Math.min(that.x.minScale, that.y.minScale);\n that.fitScale = Math.max(that.x.minScale, that.y.minScale);\n that.trigger(CHANGE);\n };\n\n return PaneDimensions;\n}(Observable));\n\nexport var PaneAxis = (function (Observable) {\n function PaneAxis(options) {\n Observable.call(this);\n extend(this, options);\n }\n\n if ( Observable ) PaneAxis.__proto__ = Observable;\n PaneAxis.prototype = Object.create( Observable && Observable.prototype );\n PaneAxis.prototype.constructor = PaneAxis;\n\n PaneAxis.prototype.outOfBounds = function outOfBounds () {\n return this.dimension.outOfBounds(this.movable[this.axis]);\n };\n\n PaneAxis.prototype.dragMove = function dragMove (delta) {\n var that = this,\n dimension = that.dimension,\n axis = that.axis,\n movable = that.movable,\n position = movable[axis] + delta;\n\n if (!dimension.enabled) {\n return;\n }\n\n var dragDelta = delta;\n\n if (position < dimension.min && delta < 0 || position > dimension.max && delta > 0) {\n dragDelta *= that.resistance;\n }\n\n movable.translateAxis(axis, dragDelta);\n that.trigger(CHANGE, that);\n };\n\n return PaneAxis;\n}(Observable));\n\nexport var Pane = (function (Class) {\n function Pane(options) {\n Class.call(this);\n\n var that = this,\n x, y,\n resistance,\n movable;\n\n extend(that, {\n elastic: true\n }, options);\n\n resistance = that.elastic ? 0.5 : 0;\n movable = that.movable;\n\n that.x = x = new PaneAxis({\n axis: 'x',\n dimension: that.dimensions.x,\n resistance: resistance,\n movable: movable\n });\n\n that.y = y = new PaneAxis({\n axis: 'y',\n dimension: that.dimensions.y,\n resistance: resistance,\n movable: movable\n });\n\n that.userEvents.bind([\n 'press',\n 'move',\n 'end',\n 'gesturestart',\n 'gesturechange'\n ], {\n gesturestart: function gesturestart(e) {\n that.gesture = e;\n\n that.offset = elementOffset(that.dimensions.container);\n },\n press: function press(e) {\n var closestAnchor = e.event.target.closest('a');\n\n if (closestAnchor && closestAnchor.matches('[data-navigate-on-press=true]')) {\n e.sender.cancel();\n }\n },\n gesturechange: function gesturechange(e) {\n var previousGesture = that.gesture,\n previousCenter = previousGesture.center,\n center = e.center,\n scaleDelta = e.distance / previousGesture.distance,\n minScale = that.dimensions.minScale,\n maxScale = that.dimensions.maxScale,\n coordinates;\n if (movable.scale <= minScale && scaleDelta < 1) {\n scaleDelta += (1 - scaleDelta) * 0.8;\n }\n\n if (movable.scale * scaleDelta >= maxScale) {\n scaleDelta = maxScale / movable.scale;\n }\n\n var offsetX = movable.x + that.offset.left,\n offsetY = movable.y + that.offset.top;\n coordinates = {\n x: (offsetX - previousCenter.x) * scaleDelta + center.x - offsetX,\n y: (offsetY - previousCenter.y) * scaleDelta + center.y - offsetY\n };\n\n movable.scaleWith(scaleDelta);\n\n x.dragMove(coordinates.x);\n y.dragMove(coordinates.y);\n\n that.dimensions.rescale(movable.scale);\n that.gesture = e;\n\n e.preventDefault();\n },\n move: function move(e) {\n if (e.event.target.tagName.match(/textarea|input/i)) {\n return;\n }\n\n if (x.dimension.enabled || y.dimension.enabled) {\n x.dragMove(e.x.delta);\n y.dragMove(e.y.delta);\n e.preventDefault();\n } else {\n e.touch.skip();\n }\n },\n end: function end(e) {\n e.preventDefault();\n }\n });\n }\n\n if ( Class ) Pane.__proto__ = Class;\n Pane.prototype = Object.create( Class && Class.prototype );\n Pane.prototype.constructor = Pane;\n\n return Pane;\n}(Class));\n\nvar translate = function(x, y, scale) {\n return 'translate3d(' + x + 'px,' + y + 'px,0) scale(' + scale + ')';\n};\n\nexport var Movable = (function (Observable) {\n function Movable(element) {\n Observable.call(this);\n\n var that = this;\n\n that.element = element;\n that.element.style.transformOrigin = 'left top';\n that.x = 0;\n that.y = 0;\n that.scale = 1;\n\n var coordinates = translate(that.x, that.y, that.scale);\n that.element.style.transform = coordinates;\n\n that._saveCoordinates(coordinates);\n }\n\n if ( Observable ) Movable.__proto__ = Observable;\n Movable.prototype = Object.create( Observable && Observable.prototype );\n Movable.prototype.constructor = Movable;\n\n Movable.prototype.translateAxis = function translateAxis (axis, by) {\n this[axis] += by;\n this.refresh();\n };\n\n Movable.prototype.scaleTo = function scaleTo (scale) {\n this.scale = scale;\n this.refresh();\n };\n\n Movable.prototype.scaleWith = function scaleWith (scaleDelta) {\n this.scale *= scaleDelta;\n this.refresh();\n };\n\n Movable.prototype.translate = function translate (coordinates) {\n this.x += coordinates.x;\n this.y += coordinates.y;\n this.refresh();\n };\n\n Movable.prototype.moveAxis = function moveAxis (axis, value) {\n this[axis] = value;\n this.refresh();\n };\n\n Movable.prototype.moveTo = function moveTo (coordinates) {\n extend(this, coordinates);\n this.refresh();\n };\n\n Movable.prototype.refresh = function refresh () {\n var that = this,\n x = that.x,\n y = that.y,\n newCoordinates;\n\n if (that.round) {\n x = Math.round(x);\n y = Math.round(y);\n }\n\n newCoordinates = translate(x, y, that.scale);\n\n if (newCoordinates !== that.coordinates) {\n that.element.style.transform = newCoordinates;\n\n that._saveCoordinates(newCoordinates);\n that.trigger(CHANGE);\n }\n };\n\n Movable.prototype._saveCoordinates = function _saveCoordinates (coordinates) {\n this.coordinates = coordinates;\n };\n\n return Movable;\n}(Observable));\n","import {\n geometry as g,\n drawing as d\n} from '@progress/kendo-drawing';\n\nimport {\n Class,\n defined,\n last,\n setDefaultOptions\n} from '../../common';\n\nimport {\n proxy\n} from '../utils';\n\nimport {\n Layer\n} from './layer';\n\nimport {\n Movable\n} from '../scroller/draggable';\n\nimport {\n Location\n} from '../location';\n\nvar Group = d.Group;\n\nexport var ShapeLayer = (function (Layer) {\n function ShapeLayer(map, options) {\n Layer.call(this, map, options);\n\n this._pan = proxy(this._pan, this);\n\n this.surface = d.Surface.create(this.element, {\n width: map.scrollElement.clientWidth,\n height: map.scrollElement.clientHeight\n });\n\n this._initRoot();\n this.movable = new Movable(this.surface.element);\n this._markers = [];\n\n this._click = this._handler('shapeClick');\n this.surface.bind('click', this._click);\n this._mouseleave = this._handler('shapeMouseLeave');\n this.surface.bind('mouseleave', this._mouseleave);\n this.surface.bind('mouseenter', this._mouseenter.bind(this));\n }\n\n if ( Layer ) ShapeLayer.__proto__ = Layer;\n ShapeLayer.prototype = Object.create( Layer && Layer.prototype );\n ShapeLayer.prototype.constructor = ShapeLayer;\n\n ShapeLayer.prototype.destroy = function destroy () {\n Layer.prototype.destroy.call(this);\n\n this.surface.destroy();\n };\n\n ShapeLayer.prototype._reset = function _reset () {\n Layer.prototype._reset.call(this);\n\n this._translateSurface();\n\n this._data = this._readData();\n\n if (this._hasData()) {\n this._load(this._data);\n }\n };\n\n ShapeLayer.prototype._initRoot = function _initRoot () {\n this._root = new Group();\n this.surface.draw(this._root);\n };\n\n ShapeLayer.prototype._beforeReset = function _beforeReset () {\n this.surface.clear();\n this._initRoot();\n };\n\n ShapeLayer.prototype._resize = function _resize () {\n this.surface.size(this.map.size());\n };\n\n ShapeLayer.prototype._readData = function _readData () {\n var data = Layer.prototype._readData.call(this);\n\n if (data.type === \"FeatureCollection\") {\n return data.features;\n }\n\n if (data.type === \"GeometryCollection\") {\n return data.geometries;\n }\n\n return data;\n };\n\n ShapeLayer.prototype._load = function _load (data) {\n var this$1 = this;\n\n this._data = data;\n this._clearMarkers();\n\n if (!this._loader) {\n this._loader = new GeoJsonLoader(this.map, this.options.style, this);\n }\n\n var container = new Group();\n\n for (var i = 0; i < data.length; i++) {\n var shape = this$1._loader.parse(data[i]);\n\n if (shape) {\n container.append(shape);\n }\n }\n\n this._root.clear();\n this._root.append(container);\n };\n\n ShapeLayer.prototype.shapeCreated = function shapeCreated (shape) {\n var cancelled = false;\n\n // the GeoJSON loader builds \"Point\" type as a circle\n // use the circle shape type as and indicator for rendering a marker\n // keep the behavior under a setting as this is supported by kendo jQuery Map\n // but we opted out of this in blazor\n if (shape instanceof d.Circle && this.map.options.renderPointsAsMarkers) {\n cancelled = defined(this._createMarker(shape));\n }\n\n if (!cancelled) {\n var args = {\n layer: this,\n shape: shape\n };\n\n cancelled = this.map.trigger('shapeCreated', args);\n }\n\n return cancelled;\n };\n\n ShapeLayer.prototype.featureCreated = function featureCreated (e) {\n e.layer = this;\n this.map.trigger('shapeFeatureCreated', e);\n };\n\n ShapeLayer.prototype._createMarker = function _createMarker (shape) {\n var marker = this.map.markers.bind({\n location: shape.location\n }, shape.dataItem);\n\n if (marker) {\n this._markers.push(marker);\n }\n\n return marker;\n };\n\n ShapeLayer.prototype._clearMarkers = function _clearMarkers () {\n var this$1 = this;\n\n for (var i = 0; i < this._markers.length; i++) {\n this$1.map.markers.remove(this$1._markers[i]);\n }\n\n this._markers = [];\n };\n\n ShapeLayer.prototype._pan = function _pan () {\n if (!this._panning) {\n this._panning = true;\n this.surface.suspendTracking();\n }\n };\n\n ShapeLayer.prototype._panEnd = function _panEnd (e) {\n Layer.prototype._panEnd.call(this, e);\n this._translateSurface();\n this.surface.resumeTracking();\n this._panning = false;\n };\n\n ShapeLayer.prototype._translateSurface = function _translateSurface () {\n var map = this.map;\n var nw = map.locationToView(map.extent().nw);\n\n if (this.surface.translate) {\n this.surface.translate(nw);\n this.movable.moveTo({\n x: nw.x,\n y: nw.y\n });\n }\n };\n\n ShapeLayer.prototype._eventArgs = function _eventArgs (e) {\n return {\n layer: this,\n layerIndex: this._layerIndex(),\n shape: e.element,\n shapeIndex: (this._data || []).indexOf(e.element.dataItem),\n originalEvent: e.originalEvent\n };\n };\n\n ShapeLayer.prototype._handler = function _handler (eventName) {\n var this$1 = this;\n\n return function (e) {\n if (e.element) {\n this$1.map.trigger(eventName, this$1._eventArgs(e));\n }\n };\n };\n\n ShapeLayer.prototype._mouseenter = function _mouseenter (e) {\n if (!e.element) {\n return;\n }\n\n this.map.trigger('shapeMouseEnter', this._eventArgs(e));\n\n var shape = e.element;\n var anchor = this._tooltipAnchor(e);\n this.map._tooltip.show(anchor, this._tooltipContext(shape));\n };\n\n ShapeLayer.prototype._tooltipContext = function _tooltipContext (shape) {\n return {\n type: 'shape',\n layerIndex: this._layerIndex(),\n className: 'k-map-shape-tooltip',\n dataItem: shape.dataItem,\n location: shape.location\n };\n };\n\n ShapeLayer.prototype._tooltipAnchor = function _tooltipAnchor (e) {\n var cursor = this.map.eventOffset(e.originalEvent);\n return {\n top: cursor.y,\n left: cursor.x\n };\n };\n\n ShapeLayer.prototype._activate = function _activate () {\n Layer.prototype._activate.call(this);\n this._panHandler = proxy(this._pan, this);\n this.map.bind('pan', this.panHandler);\n };\n\n ShapeLayer.prototype._deactivate = function _deactivate () {\n Layer.prototype._deactivate.call(this);\n this.map.unbind('pan', this._panHandler);\n };\n\n return ShapeLayer;\n}(Layer));\n\nsetDefaultOptions(ShapeLayer, {\n autoBind: true,\n zIndex: 100\n});\n\nvar GeoJsonLoader = (function (Class) {\n function GeoJsonLoader(locator, defaultStyle, observer) {\n Class.call(this);\n this.observer = observer;\n this.locator = locator;\n this.style = defaultStyle;\n }\n\n if ( Class ) GeoJsonLoader.__proto__ = Class;\n GeoJsonLoader.prototype = Object.create( Class && Class.prototype );\n GeoJsonLoader.prototype.constructor = GeoJsonLoader;\n\n GeoJsonLoader.prototype.parse = function parse (item) {\n var root = new Group();\n var unwrap = true;\n\n if (item.type === 'Feature') {\n unwrap = false;\n this._loadGeometryTo(root, item.geometry, item);\n this._featureCreated(root, item);\n } else {\n this._loadGeometryTo(root, item, item);\n }\n\n if (unwrap && root.children.length < 2) {\n root = root.children[0];\n }\n\n return root;\n };\n\n GeoJsonLoader.prototype._shapeCreated = function _shapeCreated (shape) {\n var cancelled = false;\n\n if (this.observer && this.observer.shapeCreated) {\n cancelled = this.observer.shapeCreated(shape);\n }\n\n return cancelled;\n };\n\n GeoJsonLoader.prototype._featureCreated = function _featureCreated (group, dataItem) {\n if (this.observer && this.observer.featureCreated) {\n this.observer.featureCreated({\n group: group,\n dataItem: dataItem,\n properties: dataItem.properties\n });\n }\n };\n\n GeoJsonLoader.prototype._loadGeometryTo = function _loadGeometryTo (container, geometry, dataItem) {\n var this$1 = this;\n\n var coords = geometry.coordinates;\n var i;\n var path;\n\n switch (geometry.type) {\n case 'LineString':\n path = this._loadPolygon(container, [coords], dataItem);\n this._setLineFill(path);\n break;\n case 'MultiLineString':\n for (i = 0; i < coords.length; i++) {\n path = this$1._loadPolygon(container, [coords[i]], dataItem);\n this$1._setLineFill(path);\n }\n break;\n case 'Polygon':\n this._loadPolygon(container, coords, dataItem);\n break;\n case 'MultiPolygon':\n for (i = 0; i < coords.length; i++) {\n this$1._loadPolygon(container, coords[i], dataItem);\n }\n break;\n case 'Point':\n this._loadPoint(container, coords, dataItem);\n break;\n case 'MultiPoint':\n for (i = 0; i < coords.length; i++) {\n this$1._loadPoint(container, coords[i], dataItem);\n }\n break;\n default:\n break;\n }\n };\n\n GeoJsonLoader.prototype._setLineFill = function _setLineFill (path) {\n var segments = path.segments;\n\n if (segments.length < 4 || !segments[0].anchor().equals(last(segments).anchor())) {\n path.options.fill = null;\n }\n };\n\n GeoJsonLoader.prototype._loadShape = function _loadShape (container, shape) {\n if (!this._shapeCreated(shape)) {\n container.append(shape);\n }\n\n return shape;\n };\n\n GeoJsonLoader.prototype._loadPolygon = function _loadPolygon (container, rings, dataItem) {\n var shape = this._buildPolygon(rings);\n shape.dataItem = dataItem;\n shape.location = this.locator.viewToLocation(shape.bbox().center());\n return this._loadShape(container, shape);\n };\n\n GeoJsonLoader.prototype._buildPolygon = function _buildPolygon (rings) {\n var this$1 = this;\n\n var type = rings.length > 1 ? d.MultiPath : d.Path;\n var path = new type(this.style);\n\n for (var i = 0; i < rings.length; i++) {\n for (var j = 0; j < rings[i].length; j++) {\n var point = this$1.locator.locationToView(Location.fromLngLat(rings[i][j]));\n if (j === 0) {\n path.moveTo(point.x, point.y);\n } else {\n path.lineTo(point.x, point.y);\n }\n }\n }\n\n return path;\n };\n\n GeoJsonLoader.prototype._loadPoint = function _loadPoint (container, coords, dataItem) {\n var location = Location.fromLngLat(coords);\n var point = this.locator.locationToView(location);\n var circle = new g.Circle(point, 10);\n var shape = new d.Circle(circle, this.style);\n\n shape.dataItem = dataItem;\n shape.location = location;\n\n return this._loadShape(container, shape);\n };\n\n return GeoJsonLoader;\n}(Class));\n","import {\n geometry as g,\n drawing as d\n} from '@progress/kendo-drawing';\n\nimport {\n Class,\n defined,\n isFunction,\n getter,\n setDefaultOptions\n} from '../../common';\n\nimport {\n ShapeLayer\n} from './shape';\n\nimport {\n Location\n} from '../location';\n\nexport var BubbleLayer = (function (ShapeLayer) {\n function BubbleLayer () {\n ShapeLayer.apply(this, arguments);\n }\n\n if ( ShapeLayer ) BubbleLayer.__proto__ = ShapeLayer;\n BubbleLayer.prototype = Object.create( ShapeLayer && ShapeLayer.prototype );\n BubbleLayer.prototype.constructor = BubbleLayer;\n\n BubbleLayer.prototype._readData = function _readData () {\n var data = this.options.data || [];\n return data;\n };\n\n BubbleLayer.prototype._load = function _load (data) {\n var this$1 = this;\n\n this._data = data;\n this.surface.clear();\n\n if (data.length === 0) {\n return;\n }\n\n var options = this.options;\n var getValue = getter(options.valueField);\n\n var newData = data.slice(0);\n newData.sort(function(a, b) {\n return getValue(b) - getValue(a);\n });\n\n var scaleType = this._scaleType();\n var scale;\n var getLocation = getter(this.options.locationField);\n\n for (var i = 0; i < newData.length; i++) {\n var dataItem = newData[i];\n var location = getLocation(dataItem);\n var value = getValue(dataItem);\n\n if (defined(location) && defined(value)) {\n if (!scale) {\n scale = new scaleType([\n 0,\n value\n ], [\n options.minSize,\n options.maxSize\n ]);\n }\n\n location = Location.create(location);\n\n var center = this$1.map.locationToView(location);\n var size = scale.map(value);\n var symbol = this$1._createSymbol({\n center: center,\n size: size,\n style: options.style,\n dataItem: dataItem,\n location: location\n });\n\n symbol.dataItem = dataItem;\n symbol.location = location;\n symbol.value = value;\n\n this$1._drawSymbol(symbol);\n }\n }\n };\n\n BubbleLayer.prototype._scaleType = function _scaleType () {\n var scale = this.options.scale;\n\n if (isFunction(scale)) {\n return scale;\n }\n\n return Scales[scale];\n };\n\n BubbleLayer.prototype._createSymbol = function _createSymbol (args) {\n var symbol = this.options.symbol;\n\n if (!isFunction(symbol)) {\n symbol = Symbols[symbol];\n }\n\n return symbol(args);\n };\n\n BubbleLayer.prototype._drawSymbol = function _drawSymbol (shape) {\n var args = {\n layer: this,\n shape: shape\n };\n\n var cancelled = this.map.trigger('shapeCreated', args);\n\n if (!cancelled) {\n this.surface.draw(shape);\n }\n };\n\n BubbleLayer.prototype._tooltipContext = function _tooltipContext (shape) {\n return {\n type: 'bubble',\n layerIndex: this._layerIndex(),\n className: 'k-map-bubble-tooltip',\n dataItem: shape.dataItem,\n location: shape.location,\n value: shape.value\n };\n };\n\n BubbleLayer.prototype._tooltipAnchor = function _tooltipAnchor (e) {\n var shape = e.element;\n var center = shape.bbox().center();\n\n return {\n top: center.y,\n left: center.x\n };\n };\n\n return BubbleLayer;\n}(ShapeLayer));\n\nsetDefaultOptions(BubbleLayer, {\n // autoBind: true,\n locationField: 'location',\n valueField: 'value',\n minSize: 0,\n maxSize: 100,\n scale: 'sqrt',\n symbol: 'circle',\n // ensure bubble layers are displayed over tile and shape layers\n zIndex: 200\n});\n\nvar SqrtScale = (function (Class) {\n function SqrtScale(domain, range) {\n Class.call(this);\n\n this._domain = domain;\n this._range = range;\n\n var domainRange = Math.sqrt(domain[1]) - Math.sqrt(domain[0]);\n var outputRange = range[1] - range[0];\n\n this._ratio = outputRange / domainRange;\n }\n\n if ( Class ) SqrtScale.__proto__ = Class;\n SqrtScale.prototype = Object.create( Class && Class.prototype );\n SqrtScale.prototype.constructor = SqrtScale;\n\n SqrtScale.prototype.map = function map (value) {\n var rel = (Math.sqrt(value) - Math.sqrt(this._domain[0])) * this._ratio;\n return this._range[0] + rel;\n };\n\n return SqrtScale;\n}(Class));\n\nvar Scales = {\n sqrt: SqrtScale\n};\n\nvar Symbols = {\n circle: function(args) {\n var geo = new g.Circle(args.center, args.size / 2);\n return new d.Circle(geo, args.style);\n },\n\n square: function(args) {\n var path = new d.Path(args.style);\n var halfSize = args.size / 2;\n var center = args.center;\n path.moveTo(center.x - halfSize, center.y - halfSize).lineTo(center.x + halfSize, center.y - halfSize).lineTo(center.x + halfSize, center.y + halfSize).lineTo(center.x - halfSize, center.y + halfSize).close();\n return path;\n }\n};\n","import {\n Class,\n addClass,\n isArray,\n getter,\n deepExtend,\n setDefaultOptions,\n renderIcon,\n on,\n off,\n} from '../../common';\n\nimport { Layer } from './layer';\nimport { Location } from '../location';\nimport {\n proxy,\n toHyphens,\n toPixels,\n convertToHtml\n} from '../utils';\nimport TemplateService from '../../services/template-service';\n\nvar CLICK = \"click\";\nvar MOUSE_ENTER = \"mouseenter\";\nvar MOUSE_LEAVE = \"mouseleave\";\n\nvar extend = Object.assign;\nvar MARKER_CLASS_NAME = \"k-marker\";\nvar MARKER_CLASS = \".\" + MARKER_CLASS_NAME;\n\nexport var MarkerLayer = (function (Layer) {\n function MarkerLayer(map, options) {\n Layer.call(this, map, options);\n\n this._markerClickHandler = proxy(this._markerClick, this);\n on(this.element, CLICK, MARKER_CLASS, this._markerClickHandler);\n\n this.items = [];\n\n this._load(this._readData());\n }\n\n if ( Layer ) MarkerLayer.__proto__ = Layer;\n MarkerLayer.prototype = Object.create( Layer && Layer.prototype );\n MarkerLayer.prototype.constructor = MarkerLayer;\n\n MarkerLayer.prototype.destroy = function destroy () {\n Layer.prototype.destroy.call(this);\n off(this.element, CLICK, this._markerClickHandler);\n this.clear();\n };\n\n MarkerLayer.prototype.add = function add (args) {\n var this$1 = this;\n\n if (isArray(args)) {\n for (var i = 0; i < args.length; i++) {\n this$1._addOne(args[i]);\n }\n } else {\n return this._addOne(args);\n }\n };\n\n MarkerLayer.prototype.remove = function remove (marker) {\n marker.destroy();\n var index = (this.items || []).indexOf(marker);\n\n if (index > -1) {\n this.items.splice(index, 1);\n }\n };\n\n MarkerLayer.prototype.clear = function clear () {\n var this$1 = this;\n\n for (var i = 0; i < this.items.length; i++) {\n this$1.items[i].destroy();\n }\n\n this.items = [];\n };\n\n MarkerLayer.prototype.update = function update (marker) {\n var location = marker.location();\n\n if (location) {\n marker.showAt(this.map.locationToView(location));\n\n var args = {\n marker: marker,\n layer: this\n };\n\n this.map.trigger('markerActivate', args);\n }\n };\n\n MarkerLayer.prototype._reset = function _reset () {\n var this$1 = this;\n\n Layer.prototype._reset.call(this);\n\n var items = this.items;\n\n for (var i = 0; i < items.length; i++) {\n this$1.update(items[i]);\n }\n };\n\n MarkerLayer.prototype.bind = function bind (options, dataItem) {\n var marker = Marker.create(options, this.options);\n marker.dataItem = dataItem;\n\n var args = {\n marker: marker,\n layer: this\n };\n\n var cancelled = this.map.trigger('markerCreated', args);\n\n if (!cancelled) {\n this.add(marker);\n return marker;\n }\n };\n\n MarkerLayer.prototype._addOne = function _addOne (arg) {\n var marker = Marker.create(arg, this.options);\n marker.addTo(this);\n return marker;\n };\n\n MarkerLayer.prototype._readData = function _readData () {\n var data = this.options.data || [];\n return data;\n };\n\n MarkerLayer.prototype._load = function _load (data) {\n var this$1 = this;\n\n this._data = data;\n this.clear();\n\n var getLocation = getter(this.options.locationField);\n var getTitle = getter(this.options.titleField);\n\n for (var i = 0; i < data.length; i++) {\n var dataItem = data[i];\n\n this$1.bind({\n location: getLocation(dataItem),\n title: getTitle(dataItem)\n }, dataItem);\n }\n };\n\n MarkerLayer.prototype._markerClick = function _markerClick (e) {\n var marker = e.currentTarget._kendoNode;\n\n var args = {\n layer: this,\n layerIndex: this._layerIndex(),\n marker: marker,\n markerIndex: (this.items || []).indexOf(marker),\n originalEvent: e\n };\n\n this.map.trigger('markerClick', args);\n };\n\n MarkerLayer.prototype._markerMouseEnter = function _markerMouseEnter (e) {\n var args = this._createMarkerEventArgs(e);\n this.map.trigger(\"markerMouseEnter\", args);\n };\n\n MarkerLayer.prototype._markerMouseLeave = function _markerMouseLeave (e) {\n var args = this._createMarkerEventArgs(e);\n this.map.trigger(\"markerMouseLeave\", args);\n };\n\n MarkerLayer.prototype._createMarkerEventArgs = function _createMarkerEventArgs (e) {\n var marker = e.marker;\n\n var args = extend({}, {\n layer: this,\n layerIndex: this._layerIndex(),\n marker: marker,\n markerIndex: (this.items || []).indexOf(marker)\n }, e);\n\n return args;\n };\n\n return MarkerLayer;\n}(Layer));\n\nsetDefaultOptions(MarkerLayer, {\n zIndex: 1000,\n autoBind: true,\n locationField: 'location',\n titleField: 'title',\n template: \"\"\n});\n\nexport var Marker = (function (Class) {\n function Marker(options) {\n Class.call(this);\n this.options = options || {};\n }\n\n if ( Class ) Marker.__proto__ = Class;\n Marker.prototype = Object.create( Class && Class.prototype );\n Marker.prototype.constructor = Marker;\n\n Marker.prototype.destroy = function destroy () {\n this.layer = null;\n this.unbindEvents();\n this.hide();\n };\n\n Marker.prototype.addTo = function addTo (parent) {\n this.layer = parent.markers || parent;\n this.layer.items.push(this);\n this.layer.update(this);\n };\n\n Marker.prototype.location = function location (value) {\n if (value) {\n this.options.location = Location.create(value).toArray();\n\n if (this.layer) {\n this.layer.update(this);\n }\n\n return this;\n }\n\n return Location.create(this.options.location);\n };\n\n Marker.prototype.showAt = function showAt (point) {\n this.render();\n\n this._anchor = { left: Math.round(point.x), top: Math.round(point.y) };\n this.element.style.left = toPixels(this._anchor.left);\n this.element.style.top = toPixels(this._anchor.top);\n };\n\n Marker.prototype.hide = function hide () {\n if (this.element) {\n this.element.remove();\n this.element = null;\n }\n };\n\n Marker.prototype.bindEvents = function bindEvents () {\n if (!this.element) {\n return;\n }\n\n this._mouseEnterHandler = proxy(this._mouseEnter, this);\n on(this.element, MOUSE_ENTER, MARKER_CLASS, this._mouseEnterHandler);\n this._mouseLeaveHandler = proxy(this._mouseLeave, this);\n on(this.element, MOUSE_LEAVE, MARKER_CLASS, this._mouseLeaveHandler);\n };\n\n Marker.prototype.unbindEvents = function unbindEvents () {\n if (!this.element) {\n return;\n }\n\n off(this.element, MOUSE_ENTER, this._mouseEnterHandler);\n off(this.element, MOUSE_LEAVE, this._mouseLeaveHandler);\n };\n\n Marker.prototype.render = function render () {\n if (!this.element) {\n var options = this.options;\n var layer = this.layer;\n var element = document.createElement('span');\n addClass(element, MARKER_CLASS_NAME);\n\n if (this.options.template) {\n var templateFn = this._compileTemplate(this.options.template);\n var templateHtml = templateFn(this.dataItem);\n var templateElement = convertToHtml(templateHtml);\n element.appendChild(templateElement);\n } else if (options.svgIcon) {\n renderIcon(element, { icon: options.svgIcon, iconClass: \"k-icon-xxl\", svgIcons: this.options.icons.svgIcons, type: \"svg\" });\n } else {\n var iconOptions = { icon: \"map-marker\", iconClass: \"k-icon-xxl\", svgIcons: this.options.icons.svgIcons, type: this.options.icons.type };\n\n if (options.shape) {\n if (options.shape === \"pinTarget\") {\n iconOptions.icon = \"map-marker-target\";\n renderIcon(element, iconOptions);\n } else if (options.shape === \"pin\") {\n renderIcon(element, iconOptions);\n } else {\n addClass(element, 'k-icon k-icon-xxl k-i-marker-' + toHyphens(options.shape || 'pin'));\n }\n } else {\n renderIcon(element, iconOptions);\n }\n }\n\n if (options.title) {\n element.setAttribute(\"title\", options.title);\n }\n\n var attributes = options.attributes || {};\n Object.keys(attributes).forEach(function(key) {\n element.setAttribute(key, attributes[key]);\n });\n\n element._kendoNode = this;\n element.style.zIndex = options.zIndex;\n\n this.element = element;\n\n if (layer) {\n layer.element.appendChild(this.element);\n }\n\n this.bindEvents();\n }\n };\n\n Marker.prototype._mouseEnter = function _mouseEnter (e) {\n var args = this._createEventArgs(e);\n this.layer._markerMouseEnter(args);\n\n this.layer.map._tooltip.show({\n top: this._anchor.top - this.element.offsetHeight,\n left: this._anchor.left\n }, this._tooltipContext());\n };\n\n Marker.prototype._tooltipContext = function _tooltipContext () {\n return {\n type: 'marker',\n layerIndex: this.layer._layerIndex(),\n className: 'k-map-marker-tooltip',\n dataItem: this.dataItem,\n title: this.options.title,\n location: this.location()\n };\n };\n\n Marker.prototype._mouseLeave = function _mouseLeave (e) {\n var args = this._createEventArgs(e);\n this.layer._markerMouseLeave(args);\n };\n\n Marker.prototype._createEventArgs = function _createEventArgs (e) {\n var args = {\n marker: this,\n originalEvent: e\n };\n\n return args;\n };\n\n Marker.prototype._compileTemplate = function _compileTemplate (template) {\n return TemplateService.compile(template, {\n paramName: \"dataItem\",\n useWithBlock: false\n });\n };\n\n Marker.create = function create (arg, defaults) {\n if (arg instanceof Marker) {\n return arg;\n }\n\n return new Marker(deepExtend({}, defaults, arg));\n };\n\n return Marker;\n}(Class));\n","import {\n Class,\n now\n} from '../../common';\n\nimport {\n proxy,\n} from '../utils';\n\nvar extend = Object.assign;\n\nfunction animationFrame(callback) {\n window.requestAnimationFrame(callback);\n}\n\nexport var Animation = (function (Class) {\n function Animation() {\n Class.call(this);\n var that = this;\n\n that._tickProxy = proxy(that._tick, that);\n that._started = false;\n }\n\n if ( Class ) Animation.__proto__ = Class;\n Animation.prototype = Object.create( Class && Class.prototype );\n Animation.prototype.constructor = Animation;\n\n Animation.prototype.tick = function tick () { };\n Animation.prototype.done = function done () { };\n Animation.prototype.onEnd = function onEnd () { };\n Animation.prototype.onCancel = function onCancel () { };\n\n Animation.prototype.start = function start () {\n if (!this.enabled()) {\n return;\n }\n\n if (!this.done()) {\n this._started = true;\n animationFrame(this._tickProxy);\n } else {\n this.onEnd();\n }\n };\n\n Animation.prototype.enabled = function enabled () {\n return true;\n };\n\n Animation.prototype.cancel = function cancel () {\n this._started = false;\n this.onCancel();\n };\n\n Animation.prototype._tick = function _tick () {\n var that = this;\n\n if (!that._started) {\n return;\n }\n\n that.tick();\n\n if (!that.done()) {\n animationFrame(that._tickProxy);\n } else {\n that._started = false;\n that.onEnd();\n }\n };\n\n return Animation;\n}(Class));\n\nexport var Transition = (function (Animation) {\n function Transition(options) {\n Animation.call(this);\n extend(this, options);\n }\n\n if ( Animation ) Transition.__proto__ = Animation;\n Transition.prototype = Object.create( Animation && Animation.prototype );\n Transition.prototype.constructor = Transition;\n\n Transition.prototype.done = function done () {\n return this.timePassed() >= this.duration;\n };\n\n Transition.prototype.timePassed = function timePassed () {\n return Math.min(this.duration, now() - this.startDate);\n };\n\n Transition.prototype.moveTo = function moveTo (options) {\n var that = this,\n movable = that.movable;\n\n that.initial = movable[that.axis];\n that.delta = options.location - that.initial;\n that.duration = typeof options.duration === 'number' ? options.duration : 300;\n that.tick = that._easeProxy(options.ease);\n that.startDate = now();\n that.start();\n };\n\n Transition.prototype._easeProxy = function _easeProxy (ease) {\n var that = this;\n\n return function() {\n that.movable.moveAxis(that.axis, ease(that.timePassed(), that.initial, that.delta, that.duration));\n };\n };\n\n Transition.easeOutExpo = function easeOutExpo (t, b, c, d) {\n return t === d ? b + c : c * (-Math.pow(2, -10 * t / d) + 1) + b;\n };\n\n return Transition;\n}(Animation));\n","// todo: extract to a separate place\n\nimport {\n Class,\n deepExtend,\n addClass,\n Observable,\n isFunction,\n setDefaultOptions,\n on,\n off,\n UserEvents\n} from '../../common';\n\nimport {\n convertToHtml,\n prepend,\n wrapInner,\n hasNativeScrolling,\n wheelDeltaY,\n proxy,\n setDefaultEvents\n} from '../utils';\n\nimport {\n Transition,\n Animation\n} from './fx';\n\nimport {\n Pane,\n PaneDimensions,\n Movable,\n TapCapture\n} from './draggable';\n\nvar\n extend = Object.assign,\n abs = Math.abs,\n SNAPBACK_DURATION = 500,\n SCROLLBAR_OPACITY = 0.7,\n FRICTION = 0.96,\n VELOCITY_MULTIPLIER = 10,\n MAX_VELOCITY = 55,\n OUT_OF_BOUNDS_FRICTION = 0.5,\n ANIMATED_SCROLLER_PRECISION = 5,\n // SCROLLER_RELEASE_CLASS = 'km-scroller-release',\n // SCROLLER_REFRESH_CLASS = 'km-scroller-refresh',\n PULL = 'pull',\n CHANGE = 'change',\n RESIZE = 'resize',\n SCROLL = 'scroll',\n MOUSE_WHEEL_ID = 2;\n\nvar ZoomSnapBack = (function (Animation) {\n function ZoomSnapBack(options) {\n Animation.call(this, options);\n var that = this;\n extend(that, options);\n that.userEvents.bind('gestureend', that.start.bind(this));\n that.tapCapture.bind('press', that.cancel.bind(this));\n }\n\n if ( Animation ) ZoomSnapBack.__proto__ = Animation;\n ZoomSnapBack.prototype = Object.create( Animation && Animation.prototype );\n ZoomSnapBack.prototype.constructor = ZoomSnapBack;\n\n ZoomSnapBack.prototype.enabled = function enabled () {\n return this.movable.scale < this.dimensions.minScale;\n };\n\n ZoomSnapBack.prototype.done = function done () {\n return this.dimensions.minScale - this.movable.scale < 0.01;\n };\n\n ZoomSnapBack.prototype.tick = function tick () {\n var movable = this.movable;\n movable.scaleWith(1.1);\n this.dimensions.rescale(movable.scale);\n };\n\n ZoomSnapBack.prototype.onEnd = function onEnd () {\n var movable = this.movable;\n movable.scaleTo(this.dimensions.minScale);\n this.dimensions.rescale(movable.scale);\n };\n\n return ZoomSnapBack;\n}(Animation));\n\nvar DragInertia = (function (Animation) {\n function DragInertia(options) {\n Animation.call(this);\n var that = this;\n\n extend(that, options, {\n transition: new Transition({\n axis: options.axis,\n movable: options.movable,\n onEnd: function onEnd() {\n that._end();\n }\n })\n });\n\n that.tapCapture.bind('press', function() {\n that.cancel();\n });\n\n that.userEvents.bind('end', proxy(that.start, that));\n that.userEvents.bind('gestureend', proxy(that.start, that));\n that.userEvents.bind('tap', proxy(that.onEnd, that));\n }\n\n if ( Animation ) DragInertia.__proto__ = Animation;\n DragInertia.prototype = Object.create( Animation && Animation.prototype );\n DragInertia.prototype.constructor = DragInertia;\n\n DragInertia.prototype.onCancel = function onCancel () {\n this.transition.cancel();\n };\n\n DragInertia.prototype.freeze = function freeze (location) {\n var that = this;\n that.cancel();\n that._moveTo(location);\n };\n\n DragInertia.prototype.onEnd = function onEnd () {\n var that = this;\n if (that.paneAxis.outOfBounds()) {\n that._snapBack();\n } else {\n that._end();\n }\n };\n\n DragInertia.prototype.done = function done () {\n return abs(this.velocity) < 1;\n };\n\n DragInertia.prototype.start = function start (e) {\n var that = this,\n velocity;\n if (!that.dimension.enabled) {\n return;\n }\n if (that.paneAxis.outOfBounds()) {\n if (that.transition._started) {\n that.transition.cancel();\n that.velocity = Math.min(e.touch[that.axis].velocity * that.velocityMultiplier, MAX_VELOCITY);\n Animation.prototype.start.call(this);\n } else {\n that._snapBack();\n }\n } else {\n velocity = e.touch.id === MOUSE_WHEEL_ID ? 0 : e.touch[that.axis].velocity;\n that.velocity = Math.max(Math.min(velocity * that.velocityMultiplier, MAX_VELOCITY), -MAX_VELOCITY);\n that.tapCapture.captureNext();\n Animation.prototype.start.call(this);\n }\n };\n\n DragInertia.prototype.tick = function tick () {\n var that = this,\n dimension = that.dimension,\n friction = that.paneAxis.outOfBounds() ? OUT_OF_BOUNDS_FRICTION : that.friction,\n delta = that.velocity *= friction,\n location = that.movable[that.axis] + delta;\n\n if (!that.elastic && dimension.outOfBounds(location)) {\n location = Math.max(Math.min(location, dimension.max), dimension.min);\n that.velocity = 0;\n }\n\n that.movable.moveAxis(that.axis, location);\n };\n\n DragInertia.prototype._end = function _end () {\n this.tapCapture.cancelCapture();\n this.end();\n };\n\n DragInertia.prototype._snapBack = function _snapBack () {\n var that = this,\n dimension = that.dimension,\n snapBack = that.movable[that.axis] > dimension.max ? dimension.max : dimension.min;\n\n that._moveTo(snapBack);\n };\n\n DragInertia.prototype._moveTo = function _moveTo (location) {\n this.transition.moveTo({\n location: location,\n duration: SNAPBACK_DURATION,\n ease: Transition.easeOutExpo\n });\n };\n\n return DragInertia;\n}(Animation));\n\nvar AnimatedScroller = (function (Animation) {\n function AnimatedScroller(options) {\n Animation.call(this, options);\n var that = this;\n\n extend(that, options, {\n origin: {},\n destination: {},\n offset: {}\n });\n }\n\n if ( Animation ) AnimatedScroller.__proto__ = Animation;\n AnimatedScroller.prototype = Object.create( Animation && Animation.prototype );\n AnimatedScroller.prototype.constructor = AnimatedScroller;\n\n AnimatedScroller.prototype.tick = function tick () {\n this._updateCoordinates();\n this.moveTo(this.origin);\n };\n\n AnimatedScroller.prototype.done = function done () {\n return abs(this.offset.y) < ANIMATED_SCROLLER_PRECISION && abs(this.offset.x) < ANIMATED_SCROLLER_PRECISION;\n };\n\n AnimatedScroller.prototype.onEnd = function onEnd () {\n this.moveTo(this.destination);\n if (this.callback) {\n this.callback.call();\n }\n };\n\n AnimatedScroller.prototype.setCoordinates = function setCoordinates (from, to) {\n this.offset = {};\n this.origin = from;\n this.destination = to;\n };\n\n /* eslint-disable no-param-reassign */\n AnimatedScroller.prototype.setCallback = function setCallback (callback) {\n if (callback && isFunction(callback)) {\n this.callback = callback;\n } else {\n callback = undefined;\n }\n };\n /* eslint-enable no-param-reassign */\n\n AnimatedScroller.prototype._updateCoordinates = function _updateCoordinates () {\n this.offset = {\n x: (this.destination.x - this.origin.x) / 4,\n y: (this.destination.y - this.origin.y) / 4\n };\n this.origin = {\n y: this.origin.y + this.offset.y,\n x: this.origin.x + this.offset.x\n };\n };\n\n return AnimatedScroller;\n}(Animation));\n\nvar ScrollBar = (function (Class) {\n function ScrollBar(options) {\n Class.call(this);\n var that = this,\n horizontal = options.axis === 'x';\n\n var orientation = (horizontal ? 'horizontal' : 'vertical');\n var element = convertToHtml('
');\n\n extend(that, options, {\n element: element,\n elementSize: 0,\n movable: new Movable(element),\n scrollMovable: options.movable,\n alwaysVisible: options.alwaysVisible,\n size: horizontal ? 'width' : 'height'\n });\n\n that.scrollMovable.bind(CHANGE, that.refresh.bind(that));\n\n that.container.appendChild(element);\n\n if (options.alwaysVisible) {\n that.show();\n }\n }\n\n if ( Class ) ScrollBar.__proto__ = Class;\n ScrollBar.prototype = Object.create( Class && Class.prototype );\n ScrollBar.prototype.constructor = ScrollBar;\n\n ScrollBar.prototype.refresh = function refresh () {\n var that = this,\n axis = that.axis,\n dimension = that.dimension,\n paneSize = dimension.size,\n scrollMovable = that.scrollMovable,\n sizeRatio = paneSize / dimension.total,\n position = Math.round(-scrollMovable[axis] * sizeRatio),\n size = Math.round(paneSize * sizeRatio);\n if (sizeRatio >= 1) {\n this.element.style.display = \"none\";\n } else {\n this.element.style.display = \"\";\n }\n if (position + size > paneSize) {\n size = paneSize - position;\n } else if (position < 0) {\n size += position;\n position = 0;\n }\n if (that.elementSize !== size) {\n that.element.style[that.size] = size + 'px';\n that.elementSize = size;\n }\n that.movable.moveAxis(axis, position);\n };\n\n ScrollBar.prototype.show = function show () {\n this.element.style.opacity = SCROLLBAR_OPACITY;\n this.element.style.visibility = \"visible\";\n };\n\n ScrollBar.prototype.hide = function hide () {\n if (!this.alwaysVisible) {\n this.element.style.opacity = 0;\n }\n };\n\n return ScrollBar;\n}(Class));\n\n// export class Scroller extends Class {\nexport var Scroller = (function (Observable) {\n function Scroller(element, options) {\n Observable.call(this);\n var that = this;\n this.element = element;\n\n this._initOptions(options);\n\n var hasScrolling = hasNativeScrolling(navigator.userAgent);\n that._native = that.options.useNative && hasScrolling;\n var scrollHeader = convertToHtml('
');\n\n if (that._native) {\n addClass(element, 'km-native-scroller');\n prepend(scrollHeader, element);\n\n extend(that, {\n scrollElement: element,\n fixedContainer: element.children[0]\n });\n\n return;\n }\n\n element.style.overflow = \"hidden\";\n addClass(element, 'km-scroll-wrapper');\n\n var scrollContainer = convertToHtml('
');\n wrapInner(element, scrollContainer);\n prepend(scrollHeader, element);\n\n var inner = element.children[1],\n tapCapture = new TapCapture(element),\n movable = new Movable(inner),\n\n dimensions = new PaneDimensions({\n element: inner,\n container: element,\n forcedEnabled: that.options.zoom\n }),\n avoidScrolling = this.options.avoidScrolling,\n\n userEvents = new UserEvents(element, {\n touchAction: 'none',\n allowSelection: true,\n preventDragEvent: true,\n captureUpIfMoved: true,\n multiTouch: that.options.zoom,\n supportDoubleTap: that.options.supportDoubleTap,\n start: function start(e) {\n dimensions.refresh();\n var velocityX = abs(e.x.velocity),\n velocityY = abs(e.y.velocity),\n horizontalSwipe = velocityX * 2 >= velocityY,\n originatedFromFixedContainer = that.fixedContainer.contains(e.event.target),\n verticalSwipe = velocityY * 2 >= velocityX;\n if (!originatedFromFixedContainer && !avoidScrolling(e) && that.enabled && (dimensions.x.enabled && horizontalSwipe || dimensions.y.enabled && verticalSwipe)) {\n userEvents.capture();\n } else {\n userEvents.cancel();\n }\n }\n }),\n\n pane = new Pane({\n movable: movable,\n dimensions: dimensions,\n userEvents: userEvents,\n elastic: that.options.elastic\n }),\n\n zoomSnapBack = new ZoomSnapBack({\n movable: movable,\n dimensions: dimensions,\n userEvents: userEvents,\n tapCapture: tapCapture\n }),\n\n animatedScroller = new AnimatedScroller({\n moveTo: function moveTo(coordinates) {\n that.scrollTo(coordinates.x, coordinates.y);\n }\n });\n\n movable.bind(CHANGE, function() {\n that.scrollTop = -movable.y;\n that.scrollLeft = -movable.x;\n that.trigger(SCROLL, {\n scrollTop: that.scrollTop,\n scrollLeft: that.scrollLeft\n });\n });\n\n if (that.options.mousewheelScrolling) {\n this._wheelScrollHandler = this._wheelScroll.bind(this);\n on(element, 'wheel', this._wheelScrollHandler);\n }\n\n extend(that, {\n movable: movable,\n dimensions: dimensions,\n zoomSnapBack: zoomSnapBack,\n animatedScroller: animatedScroller,\n userEvents: userEvents,\n pane: pane,\n tapCapture: tapCapture,\n pulled: false,\n enabled: true,\n scrollElement: inner,\n scrollTop: 0,\n scrollLeft: 0,\n fixedContainer: element.children[0]\n });\n\n that._initAxis('x');\n that._initAxis('y');\n\n that._wheelEnd = function() {\n that._wheel = false;\n that.userEvents.end(0, that._wheelY);\n };\n\n dimensions.refresh();\n\n if (that.options.pullToRefresh) {\n that._initPullToRefresh();\n }\n }\n\n if ( Observable ) Scroller.__proto__ = Observable;\n Scroller.prototype = Object.create( Observable && Observable.prototype );\n Scroller.prototype.constructor = Scroller;\n\n Scroller.prototype._initOptions = function _initOptions (options) {\n this.options = deepExtend({}, this.options, options);\n };\n\n Scroller.prototype._wheelScroll = function _wheelScroll (e) {\n if (e.ctrlKey) {\n return;\n }\n if (!this._wheel) {\n this._wheel = true;\n this._wheelY = 0;\n this.userEvents.press(0, this._wheelY);\n }\n\n clearTimeout(this._wheelTimeout);\n this._wheelTimeout = setTimeout(this._wheelEnd, 50);\n var delta = wheelDeltaY(e);\n\n if (delta) {\n this._wheelY += delta;\n this.userEvents.move(0, this._wheelY);\n }\n\n e.preventDefault();\n };\n\n Scroller.prototype.makeVirtual = function makeVirtual () {\n this.dimensions.y.makeVirtual();\n };\n\n Scroller.prototype.virtualSize = function virtualSize (min, max) {\n this.dimensions.y.virtualSize(min, max);\n };\n\n Scroller.prototype.height = function height () {\n return this.dimensions.y.size;\n };\n\n Scroller.prototype.scrollHeight = function scrollHeight () {\n return this.scrollElement.scrollHeight;\n };\n\n Scroller.prototype.scrollWidth = function scrollWidth () {\n return this.scrollElement.scrollWidth;\n };\n\n Scroller.prototype._resize = function _resize () {\n if (!this._native) {\n this.contentResized();\n }\n };\n\n Scroller.prototype.setOptions = function setOptions (options) {\n var that = this;\n\n this._initOptions(options);\n\n if (options.pullToRefresh) {\n that._initPullToRefresh();\n }\n };\n\n Scroller.prototype.reset = function reset () {\n if (this._native) {\n this.scrollElement.scrollTop(0);\n } else {\n this.movable.moveTo({\n x: 0,\n y: 0\n });\n this._scale(1);\n }\n };\n\n Scroller.prototype.contentResized = function contentResized () {\n this.dimensions.refresh();\n if (this.pane.x.outOfBounds()) {\n this.movable.moveAxis('x', this.dimensions.x.min);\n }\n if (this.pane.y.outOfBounds()) {\n this.movable.moveAxis('y', this.dimensions.y.min);\n }\n };\n\n Scroller.prototype.zoomOut = function zoomOut () {\n var dimensions = this.dimensions;\n dimensions.refresh();\n this._scale(dimensions.fitScale);\n this.movable.moveTo(dimensions.centerCoordinates());\n };\n\n Scroller.prototype.enable = function enable () {\n this.enabled = true;\n };\n\n Scroller.prototype.disable = function disable () {\n this.enabled = false;\n };\n\n Scroller.prototype.scrollTo = function scrollTo (x, y) {\n if (this._native) {\n this.scrollElement.scrollLeft(abs(x));\n this.scrollElement.scrollTop(abs(y));\n } else {\n this.dimensions.refresh();\n this.movable.moveTo({\n x: x,\n y: y\n });\n }\n };\n\n Scroller.prototype.animatedScrollTo = function animatedScrollTo (x, y, callback) {\n var from, to;\n if (this._native) {\n this.scrollTo(x, y);\n } else {\n from = {\n x: this.movable.x,\n y: this.movable.y\n };\n to = {\n x: x,\n y: y\n };\n this.animatedScroller.setCoordinates(from, to);\n this.animatedScroller.setCallback(callback);\n this.animatedScroller.start();\n }\n };\n\n // kept for API compatibility, not used\n Scroller.prototype.pullHandled = function pullHandled () {\n // let that = this;\n\n // removeClass(that.refreshHint, SCROLLER_REFRESH_CLASS);\n // that.hintContainer.innerHTML = that.pullTemplate({}));\n\n // that.yinertia.onEnd();\n // that.xinertia.onEnd();\n // that.userEvents.cancel();\n };\n\n Scroller.prototype.destroy = function destroy () {\n var element = this.element;\n\n off(element, 'wheel', this._wheelScrollHandler);\n\n if (this.userEvents) {\n this.userEvents.destroy();\n }\n };\n\n Scroller.prototype._scale = function _scale (scale) {\n this.dimensions.rescale(scale);\n this.movable.scaleTo(scale);\n };\n\n Scroller.prototype._initPullToRefresh = function _initPullToRefresh () {\n };\n\n // kept for API compatibility, not used\n Scroller.prototype._dragEnd = function _dragEnd () {\n // let that = this;\n\n // if (!that.pulled) {\n // return;\n // }\n\n // that.pulled = false;\n\n // removeClass(that.refreshHint, SCROLLER_RELEASE_CLASS);\n // addClass(that.refreshHint, SCROLLER_REFRESH_CLASS);\n\n // that.hintContainer.innerHTML = that.refreshTemplate({});\n\n // that.yinertia.freeze(that.options.pullOffset / 2);\n // that.trigger('pull');\n };\n\n // kept for API compatibility, not used\n Scroller.prototype._paneChange = function _paneChange () {\n // let that = this;\n // if (that.movable.y / OUT_OF_BOUNDS_FRICTION > that.options.pullOffset) {\n // if (!that.pulled) {\n // that.pulled = true;\n // that.refreshHint.removeClass(SCROLLER_REFRESH_CLASS).addClass(SCROLLER_RELEASE_CLASS);\n // that.hintContainer.html(that.releaseTemplate({}));\n // that.hintContainer.html(that.releaseTemplate({}));\n // }\n // } else if (that.pulled) {\n // that.pulled = false;\n // that.refreshHint.removeClass(SCROLLER_RELEASE_CLASS);\n // that.hintContainer.html(that.pullTemplate({}));\n // }\n };\n\n Scroller.prototype._initAxis = function _initAxis (axis) {\n var that = this,\n movable = that.movable,\n dimension = that.dimensions[axis],\n tapCapture = that.tapCapture,\n paneAxis = that.pane[axis],\n scrollBar = new ScrollBar({\n axis: axis,\n movable: movable,\n dimension: dimension,\n container: that.element,\n alwaysVisible: that.options.visibleScrollHints\n });\n\n dimension.bind(CHANGE, function() {\n scrollBar.refresh();\n });\n\n paneAxis.bind(CHANGE, function() {\n scrollBar.show();\n });\n\n that[axis + 'inertia'] = new DragInertia({\n axis: axis,\n paneAxis: paneAxis,\n movable: movable,\n tapCapture: tapCapture,\n userEvents: that.userEvents,\n dimension: dimension,\n elastic: that.options.elastic,\n friction: that.options.friction || FRICTION,\n velocityMultiplier: that.options.velocityMultiplier || VELOCITY_MULTIPLIER,\n end: function end() {\n scrollBar.hide();\n that.trigger('scrollEnd', {\n axis: axis,\n scrollTop: that.scrollTop,\n scrollLeft: that.scrollLeft\n });\n }\n });\n };\n\n return Scroller;\n}(Observable));\n\nsetDefaultOptions(Scroller, {\n name: 'Scroller',\n zoom: false,\n pullOffset: 140,\n visibleScrollHints: false,\n elastic: true,\n useNative: false,\n mousewheelScrolling: true,\n avoidScrolling: function avoidScrolling() {\n return false;\n },\n pullToRefresh: false,\n messages: {\n pullTemplate: 'Pull to refresh',\n releaseTemplate: 'Release to refresh',\n refreshTemplate: 'Refreshing'\n }\n});\n\nsetDefaultEvents(Scroller, [\n PULL,\n SCROLL,\n RESIZE\n]);\n\n","var MapService = function MapService(widget, context) {\n if ( context === void 0 ) context = {};\n\n this.sender = context.sender || widget;\n this.widget = widget;\n this.rtl = Boolean(context.rtl);\n};\n\nMapService.prototype.notify = function notify (name, args) {\n if (this.widget) {\n this.widget.trigger(name, args);\n }\n};\n\nexport default MapService;\n","import {\n geometry as g,\n throttle\n} from '@progress/kendo-drawing';\n\nimport {\n addClass,\n setDefaultOptions,\n valueOrDefault,\n defined,\n Observable,\n mousewheelDelta,\n limitValue,\n deepExtend,\n elementOffset,\n isArray,\n round,\n now,\n on,\n off,\n getSupportedFeatures,\n} from '../common';\n\nimport {\n EPSG3857\n} from './crs';\n\nimport {\n Attribution\n} from './attribution';\n\nimport {\n Navigator\n} from './navigator';\n\nimport {\n ZoomControl\n} from './zoom';\n\nimport {\n Location\n} from './location';\n\nimport {\n Extent\n} from './extent';\n\nimport { Tooltip } from './tooltip/tooltip';\n\nimport {\n TileLayer\n} from './layers/tile';\n\nimport {\n BubbleLayer\n} from './layers/bubble';\n\nimport {\n ShapeLayer\n} from './layers/shape';\n\nimport {\n MarkerLayer\n} from './layers/marker';\n\nimport {\n removeChildren,\n proxy,\n setDefaultEvents,\n convertToHtml,\n renderPos\n} from './utils';\n\nimport {\n Scroller\n} from './scroller/scroller';\n\nimport MapService from './../services/map-service';\n\nimport { CENTER_CHANGE, INIT, ZOOM_CHANGE } from './constants';\n\nvar math = Math,\n min = math.min,\n pow = math.pow,\n Point = g.Point,\n MARKER = \"marker\",\n LOCATION = \"location\",\n FRICTION = 0.9,\n FRICTION_MOBILE = 0.93,\n MOUSEWHEEL = 'wheel',\n MOUSEWHEEL_THROTTLE = 50,\n VELOCITY_MULTIPLIER = 5,\n DEFAULT_ZOOM_RATE = 1;\n\nvar layersMap = {\n bubble: BubbleLayer,\n shape: ShapeLayer,\n tile: TileLayer\n};\nlayersMap[MARKER] = MarkerLayer;\n\nvar Map = (function (Observable) {\n function Map(element, options, themeOptions, context) {\n if ( options === void 0 ) options = {};\n if ( themeOptions === void 0 ) themeOptions = {};\n if ( context === void 0 ) context = {};\n\n Observable.call(this);\n\n this._init(element, options, themeOptions, context);\n }\n\n if ( Observable ) Map.__proto__ = Observable;\n Map.prototype = Object.create( Observable && Observable.prototype );\n Map.prototype.constructor = Map;\n\n Map.prototype.destroy = function destroy () {\n var this$1 = this;\n\n this.scroller.destroy();\n\n if (this._tooltip) {\n this._tooltip.destroy();\n }\n\n if (this.navigator) {\n this.navigator.destroy();\n }\n if (this.attribution) {\n this.attribution.destroy();\n }\n if (this.zoomControl) {\n this.zoomControl.destroy();\n }\n\n if (isArray(this.markers)) {\n this.markers.forEach(function (markerLayer) {\n markerLayer.destroy();\n });\n } else {\n this.markers.destroy();\n }\n\n for (var i = 0; i < this.layers.length; i++) {\n this$1.layers[i].destroy();\n }\n\n off(this.element, MOUSEWHEEL, this._mousewheelHandler);\n\n Observable.prototype.destroy.call(this);\n };\n\n // eslint-disable-next-line no-unused-vars\n Map.prototype._init = function _init (element, options, themeOptions, context) {\n if ( options === void 0 ) options = {};\n if ( themeOptions === void 0 ) themeOptions = {};\n if ( context === void 0 ) context = {};\n\n this.support = getSupportedFeatures();\n this.context = context;\n\n this.initObserver(context);\n this.initServices(context);\n this._notifyObserver(INIT);\n\n this._initOptions(options);\n this._setEvents(options);\n this.crs = new EPSG3857();\n\n this._initElement(element);\n\n this._viewOrigin = this._getOrigin();\n\n this._tooltip = this._createTooltip();\n this._initScroller();\n this._initMarkers();\n this._initControls();\n this._initLayers();\n this._reset();\n\n var mousewheelThrottled = throttle(this._mousewheel.bind(this), MOUSEWHEEL_THROTTLE);\n this._mousewheelHandler = function (e) {\n e.preventDefault();\n mousewheelThrottled(e);\n };\n on(this.element, MOUSEWHEEL, this._mousewheelHandler);\n };\n\n Map.prototype._initOptions = function _initOptions (options) {\n this.options = deepExtend({}, this.options, options);\n };\n\n Map.prototype._initElement = function _initElement (element) {\n this.element = element;\n\n addClass(element, \"k-map\");\n element.style.position = \"relative\";\n element.setAttribute(\"data-role\", \"map\");\n removeChildren(element);\n\n var div = convertToHtml(\"
\");\n this.element.appendChild(div);\n };\n\n Map.prototype.initServices = function initServices (context) {\n if ( context === void 0 ) context = {};\n\n this.widgetService = new MapService(this, context);\n };\n\n Map.prototype.initObserver = function initObserver (context) {\n if ( context === void 0 ) context = {};\n\n this.observers = [];\n this.addObserver(context.observer);\n };\n\n Map.prototype.addObserver = function addObserver (observer) {\n if (observer) {\n this.observers.push(observer);\n }\n };\n\n Map.prototype.removeObserver = function removeObserver (observer) {\n var index = this.observers.indexOf(observer);\n\n if (index >= 0) {\n this.observers.splice(index, 1);\n }\n };\n\n Map.prototype.requiresHandlers = function requiresHandlers (eventNames) {\n var observers = this.observers;\n\n for (var idx = 0; idx < observers.length; idx++) {\n if (observers[idx].requiresHandlers(eventNames)) {\n return true;\n }\n }\n };\n\n Map.prototype.trigger = function trigger (name, args) {\n if ( args === void 0 ) args = {};\n\n args.sender = this;\n\n var observers = this.observers;\n var isDefaultPrevented = false;\n\n for (var idx = 0; idx < observers.length; idx++) {\n if (observers[idx].trigger(name, args)) {\n isDefaultPrevented = true;\n }\n }\n\n if (!isDefaultPrevented) {\n Observable.prototype.trigger.call(this, name, args);\n }\n\n return isDefaultPrevented;\n };\n\n Map.prototype._notifyObserver = function _notifyObserver (name, args) {\n if ( args === void 0 ) args = {};\n\n args.sender = this;\n\n var observers = this.observers;\n var isDefaultPrevented = false;\n\n for (var idx = 0; idx < observers.length; idx++) {\n if (observers[idx].trigger(name, args)) {\n isDefaultPrevented = true;\n }\n }\n\n return isDefaultPrevented;\n };\n\n Map.prototype.zoom = function zoom (level) {\n var options = this.options;\n var result;\n\n if (defined(level)) {\n var zoomLevel = math.round(limitValue(level, options.minZoom, options.maxZoom));\n\n if (options.zoom !== zoomLevel) {\n options.zoom = zoomLevel;\n this.widgetService.notify(ZOOM_CHANGE, { zoom: options.zoom });\n\n this._reset();\n }\n result = this;\n } else {\n result = options.zoom;\n }\n\n return result;\n };\n\n Map.prototype.center = function center (center$1) {\n var result;\n\n if (center$1) {\n var current = Location.create(center$1);\n var previous = Location.create(this.options.center);\n if (!current.equals(previous)) {\n this.options.center = current.toArray();\n this.widgetService.notify(CENTER_CHANGE, { center: this.options.center });\n this._reset();\n }\n\n result = this;\n } else {\n result = Location.create(this.options.center);\n }\n\n return result;\n };\n\n Map.prototype.extent = function extent (extent$1) {\n var result;\n\n if (extent$1) {\n this._setExtent(extent$1);\n result = this;\n } else {\n result = this._getExtent();\n }\n\n return result;\n };\n\n Map.prototype.setOptions = function setOptions (options) {\n if ( options === void 0 ) options = {};\n\n var element = this.element;\n\n this.destroy();\n removeChildren(element);\n this._init(element, options, {}, this.context);\n\n this._reset();\n };\n\n Map.prototype.locationToLayer = function locationToLayer (location, zoom) {\n var clamp = !this.options.wraparound;\n var locationObject = Location.create(location);\n\n return this.crs.toPoint(locationObject, this._layerSize(zoom), clamp);\n };\n\n Map.prototype.layerToLocation = function layerToLocation (point, zoom) {\n var clamp = !this.options.wraparound;\n var pointObject = Point.create(point);\n\n return this.crs.toLocation(pointObject, this._layerSize(zoom), clamp);\n };\n\n Map.prototype.locationToView = function locationToView (location) {\n var locationObject = Location.create(location);\n var origin = this.locationToLayer(this._viewOrigin);\n var point = this.locationToLayer(locationObject);\n\n return point.translateWith(origin.scale(-1));\n };\n\n Map.prototype.viewToLocation = function viewToLocation (point, zoom) {\n var origin = this.locationToLayer(this._getOrigin(), zoom);\n var pointObject = Point.create(point);\n var pointResult = pointObject.clone().translateWith(origin);\n\n return this.layerToLocation(pointResult, zoom);\n };\n\n Map.prototype.eventOffset = function eventOffset (e) {\n var x;\n var y;\n var offset = elementOffset(this.element);\n\n if ((e.x && e.x[LOCATION]) || (e.y && e.y[LOCATION])) {\n x = e.x[LOCATION] - offset.left;\n y = e.y[LOCATION] - offset.top;\n } else {\n var event = e.originalEvent || e;\n x = valueOrDefault(event.pageX, event.clientX) - offset.left;\n y = valueOrDefault(event.pageY, event.clientY) - offset.top;\n }\n\n var point = new g.Point(x, y);\n\n return point;\n };\n\n Map.prototype.eventToView = function eventToView (e) {\n var cursor = this.eventOffset(e);\n return this.locationToView(this.viewToLocation(cursor));\n };\n\n Map.prototype.eventToLayer = function eventToLayer (e) {\n return this.locationToLayer(this.eventToLocation(e));\n };\n\n Map.prototype.eventToLocation = function eventToLocation (e) {\n var cursor = this.eventOffset(e);\n return this.viewToLocation(cursor);\n };\n\n Map.prototype.viewSize = function viewSize () {\n var element = this.element;\n var scale = this._layerSize();\n var width = element.clientWidth;\n\n if (!this.options.wraparound) {\n width = min(scale, width);\n }\n\n return {\n width: width,\n height: min(scale, element.clientHeight)\n };\n };\n\n Map.prototype.exportVisual = function exportVisual () {\n this._reset();\n return false;\n };\n\n Map.prototype.hideTooltip = function hideTooltip () {\n if (this._tooltip) {\n this._tooltip.hide();\n }\n };\n\n Map.prototype._setOrigin = function _setOrigin (origin, zoom) {\n var size = this.viewSize(),\n topLeft;\n\n var originLocation = this._origin = Location.create(origin);\n topLeft = this.locationToLayer(originLocation, zoom);\n topLeft.x += size.width / 2;\n topLeft.y += size.height / 2;\n this.options.center = this.layerToLocation(topLeft, zoom).toArray();\n this.widgetService.notify(CENTER_CHANGE, { center: this.options.center });\n\n return this;\n };\n\n Map.prototype._getOrigin = function _getOrigin (invalidate) {\n var size = this.viewSize(),\n topLeft;\n\n if (invalidate || !this._origin) {\n topLeft = this.locationToLayer(this.center());\n topLeft.x -= size.width / 2;\n topLeft.y -= size.height / 2;\n this._origin = this.layerToLocation(topLeft);\n }\n\n return this._origin;\n };\n\n Map.prototype._setExtent = function _setExtent (newExtent) {\n var this$1 = this;\n\n var raw = Extent.create(newExtent);\n var se = raw.se.clone();\n\n if (this.options.wraparound && se.lng < 0 && newExtent.nw.lng > 0) {\n se.lng = 180 + (180 + se.lng);\n }\n\n var extent = new Extent(raw.nw, se);\n this.center(extent.center());\n var width = this.element.clientWidth;\n var height = this.element.clientHeight;\n var zoom;\n\n for (zoom = this.options.maxZoom; zoom >= this.options.minZoom; zoom--) {\n var topLeft = this$1.locationToLayer(extent.nw, zoom);\n var bottomRight = this$1.locationToLayer(extent.se, zoom);\n var layerWidth = math.abs(bottomRight.x - topLeft.x);\n var layerHeight = math.abs(bottomRight.y - topLeft.y);\n\n if (layerWidth <= width && layerHeight <= height) {\n break;\n }\n }\n\n this.zoom(zoom);\n };\n\n Map.prototype._getExtent = function _getExtent () {\n var nw = this._getOrigin();\n var bottomRight = this.locationToLayer(nw);\n var size = this.viewSize();\n\n bottomRight.x += size.width;\n bottomRight.y += size.height;\n\n var se = this.layerToLocation(bottomRight);\n\n return new Extent(nw, se);\n };\n\n Map.prototype._zoomAround = function _zoomAround (pivot, level) {\n this._setOrigin(this.layerToLocation(pivot, level), level);\n this.zoom(level);\n };\n\n Map.prototype._initControls = function _initControls () {\n var controls = this.options.controls;\n if (controls.attribution) {\n this._createAttribution(controls.attribution);\n }\n\n if (!this.support.mobileOS) {\n if (controls.navigator) {\n this._createNavigator(controls.navigator);\n }\n\n if (controls.zoom) {\n this._createZoomControl(controls.zoom);\n }\n }\n };\n\n Map.prototype._createControlElement = function _createControlElement (options, defaultPosition) {\n var pos = options.position || defaultPosition;\n var posSelector = '.' + renderPos(pos).replace(' ', '.');\n var wrap = this.element.querySelector('.k-map-controls' + posSelector) || [];\n\n if (wrap.length === 0) {\n var div$1 = document.createElement(\"div\");\n addClass(div$1, 'k-map-controls ' + renderPos(pos));\n wrap = div$1;\n this.element.appendChild(wrap);\n }\n\n var div = document.createElement(\"div\");\n\n wrap.appendChild(div);\n\n return div;\n };\n\n Map.prototype._createAttribution = function _createAttribution (options) {\n var element = this._createControlElement(options, 'bottomRight');\n this.attribution = new Attribution(element, options);\n };\n\n Map.prototype._createNavigator = function _createNavigator (options) {\n var element = this._createControlElement(options, 'topLeft');\n var navigator = this.navigator = new Navigator(element, deepExtend({}, options, { icons: this.options.icons }));\n\n this._navigatorPan = this._navigatorPan.bind(this);\n navigator.bind('pan', this._navigatorPan);\n\n this._navigatorCenter = this._navigatorCenter.bind(this);\n navigator.bind('center', this._navigatorCenter);\n };\n\n Map.prototype._navigatorPan = function _navigatorPan (e) {\n var scroller = this.scroller;\n var x = scroller.scrollLeft + e.x;\n var y = scroller.scrollTop - e.y;\n var bounds = this._virtualSize;\n var width = this.element.clientWidth;\n var height = this.element.clientHeight;\n\n // TODO: Move limits to scroller\n x = limitValue(x, bounds.x.min, bounds.x.max - width);\n y = limitValue(y, bounds.y.min, bounds.y.max - height);\n\n this.scroller.one('scroll', proxy(this._scrollEnd, this));\n\n this.scroller.scrollTo(-x, -y);\n };\n\n Map.prototype._navigatorCenter = function _navigatorCenter () {\n this.center(this.options.center);\n };\n\n Map.prototype._createZoomControl = function _createZoomControl (options) {\n var element = this._createControlElement(options, 'topLeft');\n var zoomControl = this.zoomControl = new ZoomControl(element, options, this.options.icons);\n\n this._zoomControlChange = this._zoomControlChange.bind(this);\n zoomControl.bind('change', this._zoomControlChange);\n };\n\n Map.prototype._zoomControlChange = function _zoomControlChange (e) {\n if (!this.trigger('zoomStart', { originalEvent: e })) {\n this.zoom(this.zoom() + e.delta);\n\n this.trigger('zoomEnd', {\n originalEvent: e\n });\n }\n };\n\n Map.prototype._initScroller = function _initScroller () {\n var friction = this.support.mobileOS ? FRICTION_MOBILE : FRICTION;\n var zoomable = this.options.zoomable !== false;\n var scroller = this.scroller = new Scroller(this.element.children[0], {\n friction: friction,\n velocityMultiplier: VELOCITY_MULTIPLIER,\n zoom: zoomable,\n mousewheelScrolling: false,\n supportDoubleTap: true\n });\n\n scroller.bind('scroll', proxy(this._scroll, this));\n scroller.bind('scrollEnd', proxy(this._scrollEnd, this));\n\n scroller.userEvents.bind('gesturestart', proxy(this._scaleStart, this));\n scroller.userEvents.bind('gestureend', proxy(this._scale, this));\n scroller.userEvents.bind('doubleTap', proxy(this._doubleTap, this));\n scroller.userEvents.bind('tap', proxy(this._tap, this));\n\n this.scrollElement = scroller.scrollElement;\n };\n\n Map.prototype._initLayers = function _initLayers () {\n var this$1 = this;\n\n var defs = this.options.layers,\n layers = this.layers = [];\n\n for (var i = 0; i < defs.length; i++) {\n var options = defs[i];\n\n var layer = this$1._createLayer(options);\n layers.push(layer);\n }\n };\n\n Map.prototype._createLayer = function _createLayer (options) {\n var type = options.type || 'shape';\n var layerDefaults = this.options.layerDefaults[type];\n var layerOptions = type === MARKER ?\n deepExtend({}, this.options.markerDefaults, options, { icons: this.options.icons }) :\n deepExtend({}, layerDefaults, options);\n\n var layerConstructor = layersMap[type];\n var layer = new layerConstructor(this, layerOptions);\n\n if (type === MARKER) {\n this.markers = layer;\n }\n\n return layer;\n };\n\n Map.prototype._createTooltip = function _createTooltip () {\n return new Tooltip(this.widgetService, this.options.tooltip);\n };\n\n /* eslint-disable arrow-body-style */\n Map.prototype._initMarkers = function _initMarkers () {\n var markerLayers = (this.options.layers || []).filter(function (x) {\n return x && x.type === MARKER;\n });\n\n if (markerLayers.length > 0) {\n // render the markers from options.layers\n // instead of options.markers\n return;\n }\n\n this.markers = new MarkerLayer(this, deepExtend({}, this.options.markerDefaults, { icons: this.options.icons }));\n this.markers.add(this.options.markers);\n };\n /* eslint-enable arrow-body-style */\n\n Map.prototype._scroll = function _scroll (e) {\n var origin = this.locationToLayer(this._viewOrigin).round();\n var movable = e.sender.movable;\n var offset = new g.Point(movable.x, movable.y).scale(-1).scale(1 / movable.scale);\n\n origin.x += offset.x;\n origin.y += offset.y;\n this._scrollOffset = offset;\n\n this._tooltip.offset = offset;\n this.hideTooltip();\n\n this._setOrigin(this.layerToLocation(origin));\n\n this.trigger('pan', {\n originalEvent: e,\n origin: this._getOrigin(),\n center: this.center()\n });\n };\n\n Map.prototype._scrollEnd = function _scrollEnd (e) {\n if (!this._scrollOffset || !this._panComplete()) {\n return;\n }\n\n this._scrollOffset = null;\n this._panEndTimestamp = now();\n\n this.trigger('panEnd', {\n originalEvent: e,\n origin: this._getOrigin(),\n center: this.center()\n });\n };\n\n Map.prototype._panComplete = function _panComplete () {\n return now() - (this._panEndTimestamp || 0) > 50;\n };\n\n Map.prototype._scaleStart = function _scaleStart (e) {\n if (this.trigger('zoomStart', { originalEvent: e })) {\n var touch = e.touches[1];\n\n if (touch) {\n touch.cancel();\n }\n }\n };\n\n Map.prototype._scale = function _scale (e) {\n var scale = this.scroller.movable.scale;\n var zoom = this._scaleToZoom(scale);\n var gestureCenter = new g.Point(e.center.x, e.center.y);\n var centerLocation = this.viewToLocation(gestureCenter, zoom);\n var centerPoint = this.locationToLayer(centerLocation, zoom);\n var originPoint = centerPoint.translate(-gestureCenter.x, -gestureCenter.y);\n\n this._zoomAround(originPoint, zoom);\n\n this.trigger('zoomEnd', {\n originalEvent: e\n });\n };\n\n Map.prototype._scaleToZoom = function _scaleToZoom (scaleDelta) {\n var scale = this._layerSize() * scaleDelta;\n var tiles = scale / this.options.minSize;\n var zoom = math.log(tiles) / math.log(2);\n\n return math.round(zoom);\n };\n\n Map.prototype._reset = function _reset () {\n if (this.attribution) {\n this.attribution.filter(this.center(), this.zoom());\n }\n\n this._viewOrigin = this._getOrigin(true);\n\n this._resetScroller();\n this.hideTooltip();\n\n this.trigger('beforeReset');\n this.trigger('reset');\n };\n\n Map.prototype._resetScroller = function _resetScroller () {\n var scroller = this.scroller;\n var x = scroller.dimensions.x;\n var y = scroller.dimensions.y;\n var scale = this._layerSize();\n var nw = this.extent().nw;\n var topLeft = this.locationToLayer(nw).round();\n\n scroller.movable.round = true;\n scroller.reset();\n scroller.userEvents.cancel();\n\n var zoom = this.zoom();\n\n scroller.dimensions.forcedMinScale = pow(2, this.options.minZoom - zoom);\n scroller.dimensions.maxScale = pow(2, this.options.maxZoom - zoom);\n\n var xBounds = {\n min: -topLeft.x,\n max: scale - topLeft.x\n };\n\n var yBounds = {\n min: -topLeft.y,\n max: scale - topLeft.y\n };\n\n if (this.options.wraparound) {\n xBounds.max = 20 * scale;\n xBounds.min = -xBounds.max;\n }\n\n if (this.options.pannable === false) {\n var viewSize = this.viewSize();\n xBounds.min = yBounds.min = 0;\n xBounds.max = viewSize.width;\n yBounds.max = viewSize.height;\n }\n\n x.makeVirtual();\n y.makeVirtual();\n\n x.virtualSize(xBounds.min, xBounds.max);\n y.virtualSize(yBounds.min, yBounds.max);\n\n this._virtualSize = {\n x: xBounds,\n y: yBounds\n };\n };\n\n // kept for API compatibility, not used\n Map.prototype._renderLayers = function _renderLayers () {\n };\n\n Map.prototype._layerSize = function _layerSize (zoom) {\n var newZoom = valueOrDefault(zoom, this.options.zoom);\n return this.options.minSize * pow(2, newZoom);\n };\n\n Map.prototype._tap = function _tap (e) {\n if (!this._panComplete()) {\n return;\n }\n\n var cursor = this.eventOffset(e);\n this.hideTooltip();\n\n this.trigger('click', {\n originalEvent: e,\n location: this.viewToLocation(cursor)\n });\n };\n\n Map.prototype._doubleTap = function _doubleTap (e) {\n var options = this.options;\n\n if (options.zoomable !== false) {\n if (!this.trigger('zoomStart', { originalEvent: e })) {\n var toZoom = this.zoom() + DEFAULT_ZOOM_RATE;\n var cursor = this.eventOffset(e);\n var location = this.viewToLocation(cursor);\n var postZoom = this.locationToLayer(location, toZoom);\n var origin = postZoom.translate(-cursor.x, -cursor.y);\n\n this._zoomAround(origin, toZoom);\n\n this.trigger('zoomEnd', {\n originalEvent: e\n });\n }\n }\n };\n\n Map.prototype._mousewheel = function _mousewheel (e) {\n var delta = mousewheelDelta(e) > 0 ? -1 : 1;\n var options = this.options;\n var fromZoom = this.zoom();\n var toZoom = limitValue(fromZoom + delta, options.minZoom, options.maxZoom);\n\n if (options.zoomable !== false && toZoom !== fromZoom) {\n if (!this.trigger('zoomStart', { originalEvent: e })) {\n var cursor = this.eventOffset(e);\n var location = this.viewToLocation(cursor);\n var postZoom = this.locationToLayer(location, toZoom);\n var origin = postZoom.translate(-cursor.x, -cursor.y);\n\n this._zoomAround(origin, toZoom);\n\n this.trigger('zoomEnd', {\n originalEvent: e\n });\n }\n }\n };\n\n Map.prototype._toDocumentCoordinates = function _toDocumentCoordinates (point) {\n var offset = elementOffset(this.element);\n\n return {\n left: round(point.x + offset.left),\n top: round(point.y + offset.top)\n };\n };\n\n return Map;\n}(Observable));\n\nsetDefaultOptions(Map, {\n name: 'Map',\n controls: {\n attribution: true,\n navigator: {\n panStep: 100\n },\n zoom: true\n },\n layers: [],\n layerDefaults: {\n shape: {\n style: {\n fill: {\n color: '#fff'\n },\n stroke: {\n color: '#aaa',\n width: 0.5\n }\n }\n },\n bubble: {\n style: {\n fill: {\n color: '#fff',\n opacity: 0.5\n },\n stroke: {\n color: '#aaa',\n width: 0.5\n }\n }\n },\n marker: {\n shape: 'pinTarget',\n tooltip: {\n position: 'top'\n }\n }\n },\n center: [\n 0,\n 0\n ],\n icons: {\n type: \"font\",\n svgIcons: {}\n },\n zoom: 3,\n minSize: 256,\n minZoom: 1,\n maxZoom: 19,\n markers: [],\n markerDefaults: {\n shape: 'pinTarget',\n tooltip: {\n position: 'top'\n }\n },\n wraparound: true,\n // If set to true, GeoJSON layer \"Point\" features will be rendered as markers.\n // Otherwise, the points will be rendered as circles.\n // Defaults to `true` for KUI/jQuery, `false` everywhere else.\n renderPointsAsMarkers: false\n});\n\nsetDefaultEvents(Map, [\n 'beforeReset',\n 'click',\n 'markerActivate',\n 'markerClick',\n 'markerCreated',\n\n // Events for implementing custom tooltips.\n 'markerMouseEnter',\n 'markerMouseLeave',\n\n 'pan',\n 'panEnd',\n 'reset',\n 'shapeClick',\n 'shapeCreated',\n 'shapeFeatureCreated',\n 'shapeMouseEnter',\n 'shapeMouseLeave',\n 'zoomEnd',\n 'zoomStart'\n]);\n\nexport default Map;\n","import { deepExtend } from '../common';\n\nvar max = function (array, mapFn) { return Math.max.apply(null, array.map(mapFn)); };\nvar min = function (array, mapFn) { return Math.min.apply(null, array.map(mapFn)); };\nvar sum = function (array, mapFn) { return array.map(mapFn).reduce(function (acc, curr) { return (acc + curr); }, 0); };\nvar sortAsc = function (a, b) { return (a.y0 === b.y0 ? a.index - b.index : a.y0 + a.y1 - b.y0 - b.y1); };\nvar sortSource = function (a, b) { return sortAsc(a.source, b.source); };\nvar sortTarget = function (a, b) { return sortAsc(a.target, b.target); };\nvar value = function (node) { return node.value; };\n\nfunction sortLinks(nodes) {\n nodes.forEach(function (node) {\n node.targetLinks.forEach(function (link) {\n link.source.sourceLinks.sort(sortTarget);\n });\n node.sourceLinks.forEach(function (link) {\n link.target.targetLinks.sort(sortSource);\n });\n });\n}\n\nvar calcLayer = function (node, maxDepth) {\n if (node.align === 'left') {\n return node.depth;\n }\n\n if (node.align === 'right') {\n return maxDepth - node.height;\n }\n\n return node.sourceLinks.length ? node.depth : maxDepth;\n};\n\nvar Sankey = function Sankey(options) {\n var ref = options.nodesOptions;\n var offset = ref.offset; if ( offset === void 0 ) offset = {};\n var align = ref.align;\n this.data = {\n nodes: options.nodes.map(function (node) { return deepExtend({}, { offset: offset, align: align }, node); }),\n links: options.links.map(function (link) { return deepExtend({}, link); })\n };\n\n this.width = options.width;\n this.height = options.height;\n this.offsetX = options.offsetX || 0;\n this.offsetY = options.offsetY || 0;\n this.nodeWidth = options.nodesOptions.width;\n this.nodePadding = options.nodesOptions.padding;\n this.reverse = options.reverse;\n this.targetColumnIndex = options.targetColumnIndex;\n this.loops = options.loops;\n this.autoLayout = options.autoLayout;\n};\n\nSankey.prototype.calculate = function calculate () {\n var ref = this.data;\n var nodes = ref.nodes;\n var links = ref.links;\n this.connectLinksToNodes(nodes, links);\n this.calculateNodeValues(nodes);\n\n var circularLinks = this.calculateNodeHeights(nodes);\n\n if (circularLinks) {\n return { nodes: [], links: [], columns: [], circularLinks: circularLinks };\n }\n\n this.calculateNodeDepths(nodes);\n var columns = this.calculateNodeColumns(nodes);\n this.calculateNodeBreadths(columns);\n this.applyNodesOffset(nodes);\n this.calculateLinkBreadths(nodes);\n\n return Object.assign({}, this.data, {columns: columns});\n};\n\nSankey.prototype.connectLinksToNodes = function connectLinksToNodes (nodes, links) {\n var nodesMap = new Map();\n\n nodes.forEach(function (node, i) {\n node.index = i;\n node.sourceLinks = [];\n node.targetLinks = [];\n node.id = node.id !== undefined ? node.id : node.label.text;\n nodesMap.set(node.id, node);\n });\n\n links.forEach(function (link) {\n link.source = nodesMap.get(link.sourceId);\n link.target = nodesMap.get(link.targetId);\n link.source.sourceLinks.push(link);\n link.target.targetLinks.push(link);\n });\n};\n\nSankey.prototype.calculateNodeValues = function calculateNodeValues (nodes) {\n nodes.forEach(function (node) {\n node.value = Math.max(\n sum(node.sourceLinks, value),\n sum(node.targetLinks, value)\n );\n });\n};\n\nSankey.prototype.calculateNodeDepths = function calculateNodeDepths (nodes) {\n var current = new Set(nodes);\n var next = new Set();\n var currDepth = 0;\n while (current.size) {\n var currentNodes = Array.from(current);\n for (var n = 0; n < currentNodes.length; n++) {\n var node = currentNodes[n];\n node.depth = currDepth;\n for (var l = 0; l < node.sourceLinks.length; l++) {\n var link = node.sourceLinks[l];\n next.add(link.target);\n }\n }\n currDepth++;\n current = next;\n next = new Set();\n }\n};\n\nSankey.prototype.calculateNodeHeights = function calculateNodeHeights (nodes) {\n var nodesLength = nodes.length;\n var current = new Set(nodes);\n var next = new Set;\n var currentHeight = 0;\n var eachNode = function (node) {\n node.height = currentHeight;\n node.targetLinks.forEach(function (link) {\n next.add(link.source);\n });\n };\n while (current.size) {\n current.forEach(eachNode);\n currentHeight++;\n if (currentHeight > nodesLength) {\n return true;\n }\n current = next;\n next = new Set;\n }\n return false;\n};\n\nSankey.prototype.calculateNodeColumns = function calculateNodeColumns (nodes) {\n var this$1 = this;\n\n var maxDepth = max(nodes, function (d) { return d.depth; });\n var columnWidth = (this.width - this.offsetX - this.nodeWidth) / maxDepth;\n var columns = new Array(maxDepth + 1);\n for (var i = 0; i < nodes.length; i++) {\n var node = nodes[i];\n var layer = Math.max(0, Math.min(maxDepth, calcLayer(node, maxDepth)));\n node.x0 = this$1.offsetX + layer * columnWidth;\n node.x1 = node.x0 + this$1.nodeWidth;\n node.layer = layer;\n columns[layer] = columns[layer] || [];\n columns[layer].push(node);\n }\n\n return columns;\n};\n\nSankey.prototype.calculateNodeBreadths = function calculateNodeBreadths (columns) {\n var this$1 = this;\n\n var kSize = min(columns, function (c) { return (this$1.height - this$1.offsetY - (c.length - 1) * this$1.nodePadding) / sum(c, value); });\n\n columns.forEach(function (nodes) {\n var y = this$1.offsetY;\n nodes.forEach(function (node) {\n node.y0 = y;\n node.y1 = y + node.value * kSize;\n y = node.y1 + this$1.nodePadding;\n node.sourceLinks.forEach(function (link) {\n link.width = link.value * kSize;\n });\n });\n y = (this$1.height - y + this$1.nodePadding) / (nodes.length + 1);\n nodes.forEach(function (node, i) {\n node.y0 += y * (i + 1);\n node.y1 += y * (i + 1);\n });\n });\n\n if (this.autoLayout !== false) {\n var loops = this.loops !== undefined ? this.loops : columns.length - 1;\n var targetColumnIndex = this.targetColumnIndex || 1;\n\n for (var i = 0; i < loops; i++) {\n if (!this$1.reverse) {\n this$1.uncurlLinksToLeft(columns, targetColumnIndex);\n this$1.uncurlLinksToRight(columns, targetColumnIndex);\n } else {\n this$1.uncurlLinksToRight(columns, targetColumnIndex);\n this$1.uncurlLinksToLeft(columns, targetColumnIndex);\n }\n }\n }\n\n columns.forEach(sortLinks);\n};\n\nSankey.prototype.applyNodesOffset = function applyNodesOffset (nodes) {\n nodes.forEach(function (node) {\n var offsetX = (node.offset ? node.offset.left : 0) || 0;\n var offsetY = (node.offset ? node.offset.top : 0) || 0;\n node.x0 += offsetX;\n node.x1 += offsetX;\n node.y0 += offsetY;\n node.y1 += offsetY;\n });\n};\n\nSankey.prototype.calculateLinkBreadths = function calculateLinkBreadths (nodes) {\n nodes.forEach(function (node) {\n var sourceLinks = node.sourceLinks;\n var targetLinks = node.targetLinks;\n var y = node.y0;\n var y1 = y;\n sourceLinks.forEach(function (link) {\n link.x0 = link.source.x1;\n link.y0 = y + link.width / 2;\n y += link.width;\n });\n targetLinks.forEach(function (link) {\n link.x1 = link.target.x0;\n link.y1 = y1 + link.width / 2;\n y1 += link.width;\n });\n });\n};\n\nSankey.prototype.uncurlLinksToRight = function uncurlLinksToRight (columns, targetColumnIndex) {\n var this$1 = this;\n\n var n = columns.length;\n for (var i = targetColumnIndex; i < n; i++) {\n var column = columns[i];\n column.forEach(function (target) {\n var y = 0;\n var sum = 0;\n target.targetLinks.forEach(function (link) {\n var kValue = link.value * (target.layer - link.source.layer);\n y += this$1.targetTopPos(link.source, target) * kValue;\n sum += kValue;\n });\n\n var dy = y === 0 ? 0 : (y / sum - target.y0);\n target.y0 += dy;\n target.y1 += dy;\n sortLinks([target]);\n });\n column.sort(sortAsc);\n this$1.arrangeNodesVertically(column);\n }\n};\n\nSankey.prototype.uncurlLinksToLeft = function uncurlLinksToLeft (columns, targetColumnIndex) {\n var this$1 = this;\n\n var l = columns.length;\n var startIndex = l - 1 - targetColumnIndex;\n for (var i = startIndex; i >= 0; i--) {\n var column = columns[i];\n var loop = function ( j ) {\n var source = column[j];\n var y = 0;\n var sum = 0;\n source.sourceLinks.forEach(function (link) {\n var kValue = link.value * (link.target.layer - source.layer);\n y += this$1.sourceTopPos(source, link.target) * kValue;\n sum += kValue;\n });\n var dy = y === 0 ? 0 : (y / sum - source.y0);\n source.y0 += dy;\n source.y1 += dy;\n sortLinks([source]);\n };\n\n for (var j = 0; j < column.length; j++) loop( j );\n\n column.sort(sortAsc);\n this$1.arrangeNodesVertically(column);\n }\n};\n\nSankey.prototype.arrangeNodesVertically = function arrangeNodesVertically (nodes) {\n var startIndex = 0;\n var endIndex = nodes.length - 1;\n\n this.arrangeUp(nodes, this.height, endIndex);\n this.arrangeDown(nodes, this.offsetY, startIndex);\n};\n\nSankey.prototype.arrangeDown = function arrangeDown (nodes, yPos, index) {\n var this$1 = this;\n\n var currentY = yPos;\n\n for (var i = index; i < nodes.length; i++) {\n var node = nodes[i];\n var dy = Math.max(0, currentY - node.y0);\n node.y0 += dy;\n node.y1 += dy;\n currentY = node.y1 + this$1.nodePadding;\n }\n};\n\nSankey.prototype.arrangeUp = function arrangeUp (nodes, yPos, index) {\n var this$1 = this;\n\n var currentY = yPos;\n for (var i = index; i >= 0; --i) {\n var node = nodes[i];\n var dy = Math.max(0, node.y1 - currentY);\n node.y0 -= dy;\n node.y1 -= dy;\n currentY = node.y0 - this$1.nodePadding;\n }\n};\n\nSankey.prototype.sourceTopPos = function sourceTopPos (source, target) {\n var this$1 = this;\n\n var y = target.y0 - ((target.targetLinks.length - 1) * this.nodePadding) / 2;\n for (var i = 0; i < target.targetLinks.length; i++) {\n var link = target.targetLinks[i];\n if (link.source === source) {\n break;\n }\n y += link.width + this$1.nodePadding;\n }\n for (var i$1 = 0; i$1 < source.sourceLinks.length; i$1++) {\n var link$1 = source.sourceLinks[i$1];\n if (link$1.target === target) {\n break;\n }\n y -= link$1.width;\n }\n return y;\n};\n\nSankey.prototype.targetTopPos = function targetTopPos (source, target) {\n var this$1 = this;\n\n var y = source.y0 - ((source.sourceLinks.length - 1) * this.nodePadding) / 2;\n for (var i = 0; i < source.sourceLinks.length; i++) {\n var link = source.sourceLinks[i];\n if (link.target === target) {\n break;\n }\n y += link.width + this$1.nodePadding;\n }\n for (var i$1 = 0; i$1 < target.targetLinks.length; i$1++) {\n var link$1 = target.targetLinks[i$1];\n if (link$1.source === source) {\n break;\n }\n y -= link$1.width;\n }\n return y;\n};\n\nexport var calculateSankey = function (options) { return new Sankey(options).calculate(); };\n\nexport var crossesValue = function (links) {\n var value = 0;\n var linksLength = links.length;\n\n for (var i = 0; i < linksLength; i++) {\n var link = links[i];\n\n for (var lNext = i + 1; lNext < linksLength; lNext++) {\n var nextLink = links[lNext];\n\n if (intersect(link, nextLink)) {\n value += Math.min(link.value, nextLink.value);\n }\n }\n }\n\n return value;\n};\n\nfunction rotationDirection(p1x, p1y, p2x, p2y, p3x, p3y) {\n var expression1 = (p3y - p1y) * (p2x - p1x);\n var expression2 = (p2y - p1y) * (p3x - p1x);\n\n if (expression1 > expression2) {\n return 1;\n } else if (expression1 === expression2) {\n return 0;\n }\n\n return -1;\n}\n\nfunction intersect(link1, link2) {\n var f1 = rotationDirection(link1.x0, link1.y0, link1.x1, link1.y1, link2.x1, link2.y1);\n var f2 = rotationDirection(link1.x0, link1.y0, link1.x1, link1.y1, link2.x0, link2.y0);\n var f3 = rotationDirection(link1.x0, link1.y0, link2.x0, link2.y0, link2.x1, link2.y1);\n var f4 = rotationDirection(link1.x1, link1.y1, link2.x0, link2.y0, link2.x1, link2.y1);\n\n return f1 !== f2 && f3 !== f4;\n}\n","import {\n Class,\n deepExtend\n} from '../common';\n\nexport var SankeyElement = (function (Class) {\n function SankeyElement(options) {\n Class.call(this);\n this.options = deepExtend({}, this.options, options);\n this.createVisual();\n }\n\n if ( Class ) SankeyElement.__proto__ = Class;\n SankeyElement.prototype = Object.create( Class && Class.prototype );\n SankeyElement.prototype.constructor = SankeyElement;\n\n SankeyElement.prototype.createVisual = function createVisual () {\n this.visual = this.createElement();\n };\n\n SankeyElement.prototype.exportVisual = function exportVisual () {\n return this.visual;\n };\n\n SankeyElement.prototype.createElement = function createElement () {\n var this$1 = this;\n\n var customVisual = this.options.visual;\n var visual;\n\n if (customVisual) {\n visual = customVisual({\n sender: this.getSender(),\n options: this.visualOptions(),\n createVisual: function () { return this$1.getElement(); }\n });\n } else {\n visual = this.getElement();\n }\n\n return visual;\n };\n\n SankeyElement.prototype.getSender = function getSender () {\n return this;\n };\n\n return SankeyElement;\n}(Class));\n","import { geometry, drawing } from '@progress/kendo-drawing';\nimport { SankeyElement } from './element';\nimport { deepExtend } from '../common';\nimport { ARIA_ACTIVE_DESCENDANT } from '../common/constants';\n\nexport var Node = (function (SankeyElement) {\n function Node () {\n SankeyElement.apply(this, arguments);\n }\n\n if ( SankeyElement ) Node.__proto__ = SankeyElement;\n Node.prototype = Object.create( SankeyElement && SankeyElement.prototype );\n Node.prototype.constructor = Node;\n\n Node.prototype.getElement = function getElement () {\n return drawing.Path.fromRect(this.getRect(), this.visualOptions());\n };\n\n Node.prototype.getRect = function getRect () {\n var node = this.options.node;\n return new geometry.Rect([node.x0, node.y0], [node.x1 - node.x0, node.y1 - node.y0]);\n };\n\n Node.prototype.getLabelText = function getLabelText (options) {\n var labelTemplate = options.labels.ariaTemplate;\n\n if (labelTemplate) {\n return labelTemplate({ node: options.node });\n }\n };\n\n Node.prototype.visualOptions = function visualOptions () {\n var options = deepExtend({}, this.options, this.options.node);\n var ariaLabel = this.getLabelText(options);\n\n return {\n fill: {\n color: options.color,\n opacity: options.opacity\n },\n stroke: { width: 0 },\n className: 'k-sankey-node',\n role: 'graphics-symbol',\n ariaRoleDescription: 'Node',\n ariaLabel: ariaLabel\n };\n };\n\n Node.prototype.createFocusHighlight = function createFocusHighlight () {\n if (!this.options.navigatable) {\n return;\n }\n\n this._highlight = drawing.Path.fromRect(this.getRect(), {\n stroke: this.options.focusHighlight,\n visible: false\n });\n\n return this._highlight;\n };\n\n Node.prototype.focus = function focus (options) {\n if (this._highlight) {\n var ref = options || {};\n var highlight = ref.highlight; if ( highlight === void 0 ) highlight = true;\n if (highlight) {\n this._highlight.options.set('visible', true);\n }\n var id = this.options.node.id;\n this.visual.options.set('id', id);\n\n if (this.options.root()) {\n this.options.root().setAttribute(ARIA_ACTIVE_DESCENDANT, id);\n }\n }\n };\n\n Node.prototype.blur = function blur () {\n if (this._highlight) {\n this._highlight.options.set('visible', false);\n this.visual.options.set('id', '');\n\n if (this.options.root()) {\n this.options.root().removeAttribute(ARIA_ACTIVE_DESCENDANT);\n }\n }\n };\n\n return Node;\n}(SankeyElement));\n\nvar nodeColor = function (node, nodeColors, index) { return node.color || nodeColors[index % nodeColors.length]; };\n\nexport var resolveNodeOptions = function (node, options, nodeColors, index) {\n var nodeOptions = deepExtend({}, options, options.node);\n return deepExtend({},\n { color: nodeColor(node, nodeColors, index) },\n nodeOptions,\n { node: node },\n {\n visual: node.visual,\n opacity: node.opacity,\n offset: node.offset,\n color: node.color\n }\n );\n};\n","import { drawing } from '@progress/kendo-drawing';\nimport { SankeyElement } from './element';\nimport { deepExtend } from '../common';\nimport { defined } from '../drawing-utils';\nimport { ARIA_ACTIVE_DESCENDANT } from '../common/constants';\n\nvar distanceToLine = function (line, point) {\n var ref = line[0];\n var x1 = ref[0];\n var y1 = ref[1];\n var ref$1 = line[1];\n var x2 = ref$1[0];\n var y2 = ref$1[1];\n var x3 = point[0];\n var y3 = point[1];\n\n return Math.abs((x2 - x1) * (y3 - y1) - (x3 - x1) * (y2 - y1)) / Math.sqrt(Math.pow( (x2 - x1), 2 ) + Math.pow( (y2 - y1), 2 ));\n};\n\nvar bezierPoint = function (p1, p2, p3, p4, t) {\n var t1 = 1 - t;\n var t1t1 = t1 * t1;\n var tt = t * t;\n return (p1 * t1t1 * t1) + (3 * p2 * t * t1t1) + (3 * p3 * tt * t1) + (p4 * tt * t);\n};\n\nvar angelBetweenTwoLines = function (line1, line2) {\n var ref = line1[0];\n var x1 = ref[0];\n var y1 = ref[1];\n var ref$1 = line1[1];\n var x2 = ref$1[0];\n var y2 = ref$1[1];\n var ref$2 = line2[0];\n var x3 = ref$2[0];\n var y3 = ref$2[1];\n var ref$3 = line2[1];\n var x4 = ref$3[0];\n var y4 = ref$3[1];\n\n var a1 = Math.atan2(y2 - y1, x2 - x1);\n var a2 = Math.atan2(y4 - y3, x4 - x3);\n\n return Math.abs(a1 - a2);\n};\n\nvar calculateControlPointsOffsetX = function (link, rtl) {\n var x0 = link.x0;\n var x1 = link.x1;\n var y0 = link.y0;\n var y1 = link.y1;\n var xC = (x0 + x1) / 2;\n\n var width = link.width;\n var halfWidth = width / 2;\n\n // upper curve, t = 0.5\n var upperCurveMiddleLine = [[(x0 + xC) / 2, y0 - halfWidth], [(x1 + xC) / 2, y1 - halfWidth]];\n\n // for lower curve, bezier-point at t = 0.5\n // for the case t = 0.5, the bezier-point is the middle point of the curve. => ((y0 + halfWidth) + (y1 + halfWidth)) / 2\n var lowerCurveMiddlePoint = [xC, bezierPoint(y0 + halfWidth, y0 + halfWidth, y1 + halfWidth, y1 + halfWidth, 0.5)];\n\n // The actual width of the link at its middle point as can be seen on the screen.\n var actualWidth = distanceToLine(upperCurveMiddleLine, lowerCurveMiddlePoint);\n\n var upperNarrowness = (width - actualWidth) / 2;\n\n // The line `upperCurveMiddleLine` shows the upper border of the link.\n // Assumption 1: Translated to the left to the desired link width and the translate value will be the `offset`.\n // Assumption 2: The translate value is a hypotenuse of a triangle.\n var alpha = angelBetweenTwoLines(upperCurveMiddleLine, [[x0, y0 - halfWidth], [xC, y0 - halfWidth]]);\n var a = upperNarrowness;\n var b = Math.sin(alpha) * a;\n var offset = Math.sqrt(a * a + b * b);\n // Another option is to assume the triangle is isosceles\n // => offset = Math.sqrt(2) * upperNarrowness;\n\n var sign = y0 - y1 > 0 ? (-1) : 1;\n if (rtl) {\n sign = -sign;\n }\n\n return sign * offset;\n};\n\nexport var Link = (function (SankeyElement) {\n function Link () {\n SankeyElement.apply(this, arguments);\n }\n\n if ( SankeyElement ) Link.__proto__ = SankeyElement;\n Link.prototype = Object.create( SankeyElement && SankeyElement.prototype );\n Link.prototype.constructor = Link;\n\n Link.prototype.getElement = function getElement () {\n var link = this.options.link;\n var x0 = link.x0;\n var x1 = link.x1;\n var y0 = link.y0;\n var y1 = link.y1;\n var xC = (x0 + x1) / 2;\n\n return new drawing.Path(this.visualOptions())\n .moveTo(x0, y0).curveTo([xC, y0], [xC, y1], [x1, y1]);\n };\n\n Link.prototype.getLabelText = function getLabelText (options) {\n var labelTemplate = options.labels.ariaTemplate;\n\n if (labelTemplate) {\n return labelTemplate({ link: options.link });\n }\n };\n\n Link.prototype.visualOptions = function visualOptions () {\n var options = this.options;\n var link = this.options.link;\n var ariaLabel = this.getLabelText(options);\n\n return {\n stroke: {\n width: options.link.width,\n color: link.color || options.color,\n opacity: defined(link.opacity) ? link.opacity : options.opacity\n },\n role: 'graphics-symbol',\n ariaRoleDescription: 'Link',\n ariaLabel: ariaLabel\n };\n };\n\n Link.prototype.createFocusHighlight = function createFocusHighlight () {\n if (!this.options.navigatable) {\n return;\n }\n var ref = this.options;\n var link = ref.link;\n var rtl = ref.rtl;\n var x0 = link.x0;\n var x1 = link.x1;\n var y0 = link.y0;\n var y1 = link.y1;\n var xC = (x0 + x1) / 2;\n var halfWidth = link.width / 2;\n\n var offset = calculateControlPointsOffsetX(link, rtl);\n\n this._highlight = new drawing.Path({ stroke: this.options.focusHighlight, visible: false })\n .moveTo(x0, y0 + halfWidth)\n .lineTo(x0, y0 - halfWidth)\n .curveTo([xC + offset, y0 - halfWidth], [xC + offset, y1 - halfWidth], [x1, y1 - halfWidth])\n .lineTo(x1, y1 + halfWidth)\n .curveTo([xC - offset, y1 + halfWidth], [xC - offset, y0 + halfWidth], [x0, y0 + halfWidth]);\n };\n\n Link.prototype.focus = function focus (options) {\n if (this._highlight) {\n var ref = options || {};\n var highlight = ref.highlight; if ( highlight === void 0 ) highlight = true;\n if (highlight) {\n this._highlight.options.set('visible', true);\n }\n var id = (this.options.link.sourceId) + \"->\" + (this.options.link.targetId);\n this.visual.options.set('id', id);\n\n if (this.options.root()) {\n this.options.root().setAttribute(ARIA_ACTIVE_DESCENDANT, id);\n }\n }\n };\n\n Link.prototype.blur = function blur () {\n if (this._highlight) {\n this._highlight.options.set('visible', false);\n this.visual.options.set('id', '');\n\n if (this.options.root()) {\n this.options.root().removeAttribute(ARIA_ACTIVE_DESCENDANT);\n }\n }\n };\n\n return Link;\n}(SankeyElement));\n\nexport var resolveLinkOptions = function (link, options, sourceNode, targetNode) {\n var linkOptions = deepExtend({},\n options,\n {\n link: link,\n opacity: link.opacity,\n color: link.color,\n colorType: link.colorType,\n visual: link.visual,\n highlight: link.highlight\n }\n );\n\n if (linkOptions.colorType === 'source') {\n linkOptions.color = sourceNode.options.fill.color;\n } else if (linkOptions.colorType === 'target') {\n linkOptions.color = targetNode.options.fill.color;\n }\n\n return linkOptions;\n};\n","import { setDefaultOptions, deepExtend } from '../common';\nimport { SankeyElement } from './element';\nimport { Box, TextBox } from '../core';\nvar INSIDE = 'inside';\nvar BEFORE = 'before';\nvar AFTER = 'after';\n\nexport var Label = (function (SankeyElement) {\n function Label () {\n SankeyElement.apply(this, arguments);\n }\n\n if ( SankeyElement ) Label.__proto__ = SankeyElement;\n Label.prototype = Object.create( SankeyElement && SankeyElement.prototype );\n Label.prototype.constructor = Label;\n\n Label.prototype.getElement = function getElement () {\n var options = deepExtend({}, this.options, this.options.node.label);\n var node = options.node;\n var diagramMinX = options.diagramMinX;\n var diagramMaxX = options.diagramMaxX;\n var text = options.text;\n var offset = options.offset;\n var rtl = options.rtl;\n var position = options.position;\n if (rtl && position !== INSIDE) {\n position = position === BEFORE ? AFTER : BEFORE;\n }\n\n if (!options.visible || !text) {\n return null;\n }\n\n var nodeBox = new Box(node.x0, node.y0, node.x1, node.y1);\n var visualOptions = this.visualOptions();\n if (rtl && !visualOptions.align) {\n visualOptions.align = 'right';\n }\n var textbox = new TextBox(text, visualOptions);\n textbox.reflow(new Box());\n var textSizeBox = textbox.box;\n var textY = nodeBox.center().y - (textSizeBox.height() / 2);\n\n var labelAfterLastNode = node.x1 + textSizeBox.width() > diagramMaxX;\n var labelBeforeFirstNode = node.x0 - textSizeBox.width() < diagramMinX;\n var side = position === BEFORE || (position === INSIDE && labelAfterLastNode) ? BEFORE : AFTER;\n if (rtl) {\n side = position === AFTER || (position === INSIDE && labelBeforeFirstNode) ? AFTER : BEFORE;\n }\n var textOrigin = [side === BEFORE ? node.x0 - textSizeBox.width() : node.x1, textY];\n\n var textRect = new Box(textOrigin[0], textOrigin[1], textOrigin[0] + textSizeBox.width(), textOrigin[1] + textSizeBox.height());\n textRect.translate(offset.left || 0, offset.top || 0);\n textbox.reflow(textRect);\n\n textbox.renderVisual();\n\n return textbox.visual;\n };\n\n Label.prototype.visualOptions = function visualOptions () {\n var options = deepExtend({}, this.options, this.options.node.label);\n return {\n color: options.color,\n font: options.font,\n border: options.border,\n margin: options.margin,\n padding: options.padding,\n align: options.align,\n paintOrder: options.paintOrder,\n stroke: options.stroke,\n };\n };\n\n return Label;\n}(SankeyElement));\n\nsetDefaultOptions(Label, {\n position: INSIDE, // inside, before, after\n});\n\nexport var resolveLabelOptions = function (node, options, rtl, diagramMinX, diagramMaxX) { return deepExtend({},\n options,\n {\n node: node,\n diagramMinX: diagramMinX,\n diagramMaxX: diagramMaxX,\n rtl: rtl,\n visual: node.label.visual,\n visible: node.label.visible,\n margin: node.label.margin,\n padding: node.label.padding,\n border: node.label.border,\n align: node.label.align,\n offset: node.label.offset\n }\n); };\n","import { Title as ChartTitle } from \"../core\";\nimport { SankeyElement } from \"./element\";\nimport { setDefaultOptions, getSpacing } from '../common';\nimport { CENTER } from \"../common/constants\";\n\nexport var Title = (function (SankeyElement) {\n function Title () {\n SankeyElement.apply(this, arguments);\n }\n\n if ( SankeyElement ) Title.__proto__ = SankeyElement;\n Title.prototype = Object.create( SankeyElement && SankeyElement.prototype );\n Title.prototype.constructor = Title;\n\n Title.prototype.getElement = function getElement () {\n var options = this.options;\n var drawingRect = options.drawingRect;\n var text = options.text;\n\n if (options.visible === false || !text) {\n return null;\n }\n\n var title = ChartTitle.buildTitle(text, options);\n\n title.reflow(drawingRect);\n\n title.renderVisual();\n return title.visual;\n };\n\n Title.prototype.createElement = function createElement () {\n return this.getElement();\n };\n\n return Title;\n}(SankeyElement));\n\nsetDefaultOptions(Title, {\n align: CENTER, // 'left', 'right', 'center'\n border: {\n width: 0\n },\n margin: getSpacing(5),\n padding: getSpacing(5)\n});\n","import { default as ChartLegend } from \"../chart/legend/legend\";\nimport { SankeyElement } from \"./element\";\nimport { setDefaultOptions } from '../common';\nimport { BOTTOM, CENTER, LEFT, POINTER, RIGHT } from \"../common/constants\";\nimport { AREA } from \"../chart/constants\";\n\nvar sortData = function (a, b) {\n if (a.node.x0 - b.node.x0 !== 0) {\n return a.node.x0 - b.node.x0;\n }\n return a.node.y0 - b.node.y0;\n};\n\nvar sortDataRTL = function (a, b) {\n if (a.node.x1 - b.node.x1 !== 0) {\n return a.node.x1 - b.node.x1;\n }\n return b.node.y0 - a.node.y0;\n};\n\nvar sort = function (rtl) { return (rtl ? sortDataRTL : sortData); };\n\nexport var Legend = (function (SankeyElement) {\n function Legend () {\n SankeyElement.apply(this, arguments);\n }\n\n if ( SankeyElement ) Legend.__proto__ = SankeyElement;\n Legend.prototype = Object.create( SankeyElement && SankeyElement.prototype );\n Legend.prototype.constructor = Legend;\n\n Legend.prototype.getElement = function getElement () {\n var options = this.options;\n var drawingRect = options.drawingRect;\n var rtl = options.rtl;\n var nodes = options.nodes; if ( nodes === void 0 ) nodes = [];\n var item = options.item;\n var position = options.position;\n\n if (options.visible === false || !nodes.length) {\n return null;\n }\n\n var data = nodes.map(function (node) { return ({\n text: (node.label && node.label.text) || '',\n area: {\n background: item.areaBackground !== undefined ? item.areaBackground : node.color,\n opacity: item.areaOpacity !== undefined ? item.areaOpacity : node.opacity\n },\n node: node\n }); });\n\n data.sort(sort(rtl));\n\n var reverse = rtl && position !== LEFT && position !== RIGHT;\n var legend = new ChartLegend(Object.assign({}, options, {data: data, reverse: reverse}), { rtl: rtl });\n legend.reflow(drawingRect);\n\n legend.renderVisual();\n return legend.visual;\n };\n\n Legend.prototype.createElement = function createElement () {\n return this.getElement();\n };\n\n return Legend;\n}(SankeyElement));\n\nsetDefaultOptions(Legend, {\n markers: { visible: false },\n item: {\n type: AREA,\n cursor: POINTER,\n opacity: 1\n },\n position: BOTTOM,\n align: CENTER,\n accessibility: {\n role: 'presentation',\n ariaLabel: null,\n ariaRoleDescription: null\n },\n border: {\n width: 0\n }\n});\n","import { geometry, drawing } from '@progress/kendo-drawing';\nimport { deepExtend, addClass, Observable, setDefaultOptions } from '../common';\nimport { calculateSankey, crossesValue } from './calculation';\nimport { Node, resolveNodeOptions } from './node';\nimport { Link, resolveLinkOptions } from './link';\nimport { Label, resolveLabelOptions } from './label';\nimport { Title } from './title';\nimport { BLACK, BOTTOM, LEFT, RIGHT, TOP } from '../common/constants';\nimport { Box, rectToBox } from '../core';\nimport { Legend } from './legend';\nimport { defined } from '../drawing-utils';\n\nvar LINK = 'link';\nvar NODE = 'node';\n\nvar toRtl = function (sankey) {\n var nodes = sankey.nodes;\n var links = sankey.links;\n var startX = Math.min.apply(Math, nodes.map(function (node) { return node.x0; }));\n var endX = Math.max.apply(Math, nodes.map(function (node) { return node.x1; }));\n var width = endX - startX;\n\n nodes.forEach(function (node) {\n var x0 = width - (node.x1 - 2 * startX);\n var x1 = width - (node.x0 - 2 * startX);\n node.x0 = x0;\n node.x1 = x1;\n });\n\n links.forEach(function (link) {\n var x0 = width - (link.x1 - 2 * startX);\n var x1 = width - (link.x0 - 2 * startX);\n link.x1 = x0;\n link.x0 = x1;\n });\n};\n\nexport var Sankey = (function (Observable) {\n function Sankey(element, options, theme) {\n Observable.call(this);\n\n this._initTheme(theme);\n this._setOptions(options);\n this._initElement(element);\n this._initSurface();\n\n if (options && options.data) {\n this._redraw();\n this._initResizeObserver();\n this._initNavigation(element);\n }\n }\n\n if ( Observable ) Sankey.__proto__ = Observable;\n Sankey.prototype = Object.create( Observable && Observable.prototype );\n Sankey.prototype.constructor = Sankey;\n\n Sankey.prototype.destroy = function destroy () {\n this.unbind();\n this._destroySurface();\n this._destroyResizeObserver();\n\n if (this.element) {\n this.element.removeEventListener('keydown', this._keydownHandler);\n this.element.removeEventListener('focus', this._focusHandler);\n this.element.removeEventListener('mousedown', this._onDownHandler);\n this.element.removeEventListener('touchstart', this._onDownHandler);\n this.element.removeEventListener('pointerdown', this._onDownHandler);\n }\n\n this._focusState = null;\n\n this.element = null;\n };\n\n Sankey.prototype._initElement = function _initElement (element) {\n this.element = element;\n addClass(element, [ \"k-chart\", \"k-sankey\" ]);\n element.setAttribute('role', 'graphics-document');\n\n var ref = this.options;\n var title = ref.title;\n\n if (title.text) {\n element.setAttribute('aria-label', title.text);\n }\n\n if (title.description) {\n element.setAttribute(\"aria-roledescription\", title.description);\n }\n };\n\n Sankey.prototype._initSurface = function _initSurface () {\n if (!this.surface) {\n this._destroySurface();\n this._initSurfaceElement();\n this.surface = this._createSurface();\n }\n };\n\n Sankey.prototype._initNavigation = function _initNavigation (element) {\n element.tabIndex = element.getAttribute(\"tabindex\") || 0;\n\n if (this.options.disableKeyboardNavigation) {\n return;\n }\n\n this._keydownHandler = this._keydown.bind(this);\n this._focusHandler = this._focus.bind(this);\n this._blurHandler = this._blur.bind(this);\n this._onDownHandler = this._onDown.bind(this);\n\n element.addEventListener('keydown', this._keydownHandler);\n element.addEventListener('focus', this._focusHandler);\n element.addEventListener('blur', this._blurHandler);\n element.addEventListener('mousedown', this._onDownHandler);\n element.addEventListener('touchstart', this._onDownHandler);\n element.addEventListener('pointerdown', this._onDownHandler);\n\n this._focusState = {\n node: this.firstFocusableNode(),\n link: null\n };\n };\n\n Sankey.prototype.firstFocusableNode = function firstFocusableNode () {\n return this.columns[0][0];\n };\n\n Sankey.prototype._initResizeObserver = function _initResizeObserver () {\n var this$1 = this;\n\n var observer = new ResizeObserver(function (entries) {\n entries.forEach(function (entry) {\n var ref = entry.contentRect;\n var width = ref.width;\n var height = ref.height;\n if (entry.target !== this$1.element ||\n (this$1.size && this$1.size.width === width && this$1.size.height === height)) {\n return;\n }\n this$1.size = { width: width, height: height };\n this$1.surface.setSize(this$1.size);\n this$1.resize = true;\n this$1._redraw();\n });\n });\n this._resizeObserver = observer;\n observer.observe(this.element);\n };\n\n Sankey.prototype._createSurface = function _createSurface () {\n return drawing.Surface.create(this.surfaceElement, {\n mouseenter: this._mouseenter.bind(this),\n mouseleave: this._mouseleave.bind(this),\n mousemove: this._mousemove.bind(this),\n click: this._click.bind(this)\n });\n };\n\n Sankey.prototype._initTheme = function _initTheme (theme) {\n var currentTheme = theme || this.theme || {};\n this.theme = currentTheme;\n this.options = deepExtend({}, currentTheme, this.options);\n };\n\n Sankey.prototype.setLinksOpacity = function setLinksOpacity (opacity) {\n var this$1 = this;\n\n this.linksVisuals.forEach(function (link) {\n this$1.setOpacity(link, opacity, link.linkOptions.opacity);\n });\n };\n\n Sankey.prototype.setLinksInactivityOpacity = function setLinksInactivityOpacity (inactiveOpacity) {\n var this$1 = this;\n\n this.linksVisuals.forEach(function (link) {\n this$1.setOpacity(link, inactiveOpacity, link.linkOptions.highlight.inactiveOpacity);\n });\n };\n\n Sankey.prototype.setOpacity = function setOpacity (link, opacity, linkValue) {\n link.options.set('stroke', Object.assign({}, link.options.stroke,\n {opacity: defined(linkValue) ? linkValue : opacity}));\n };\n\n Sankey.prototype.trigger = function trigger (name, ev) {\n var dataItem = ev.element.dataItem;\n var targetType = ev.element.type;\n\n var event = Object.assign({}, ev,\n {type: name,\n targetType: targetType,\n dataItem: dataItem});\n\n return Observable.prototype.trigger.call(this, name, event);\n };\n\n Sankey.prototype._mouseenter = function _mouseenter (ev) {\n var element = ev.element;\n var isLink = element.type === LINK;\n var isNode = element.type === NODE;\n var isLegendItem = Boolean(element.chartElement && element.chartElement.options.node);\n\n if ((isLink && this.trigger('linkEnter', ev)) ||\n (isNode && this.trigger('nodeEnter', ev))) {\n return;\n }\n\n var ref = this.options.links;\n var highlight = ref.highlight;\n if (isLink) {\n this.setLinksInactivityOpacity(highlight.inactiveOpacity);\n this.setOpacity(element, highlight.opacity, element.linkOptions.highlight.opacity);\n } else if (isNode) {\n this.highlightLinks(element, highlight);\n } else if (isLegendItem) {\n var nodeVisual = this.nodesVisuals.get(element.chartElement.options.node.id);\n this.highlightLinks(nodeVisual, highlight);\n }\n };\n\n Sankey.prototype._mouseleave = function _mouseleave (ev) {\n var this$1 = this;\n\n var element = ev.element;\n var isLink = element.type === LINK;\n var isNode = element.type === NODE;\n var isLegendItem = Boolean(element.chartElement && element.chartElement.options.node);\n var target = ev.originalEvent.relatedTarget;\n\n if (isLink && target && target.nodeName === 'text') {\n return;\n }\n\n if (isLink || isNode) {\n if (this.tooltipTimeOut) {\n clearTimeout(this.tooltipTimeOut);\n this.tooltipTimeOut = null;\n }\n this.tooltipShown = false;\n this.trigger('tooltipHide', ev);\n }\n\n if ((isLink && this.trigger('linkLeave', ev)) ||\n (isNode && this.trigger('nodeLeave', ev))) {\n return;\n }\n\n if (isLink || isNode || isLegendItem) {\n this.linksVisuals.forEach(function (link) {\n this$1.setOpacity(link, this$1.options.links.opacity, link.linkOptions.opacity);\n });\n }\n };\n\n Sankey.prototype._mousemove = function _mousemove (ev) {\n var this$1 = this;\n\n var ref = this.options.tooltip;\n var followPointer = ref.followPointer;\n var delay = ref.delay;\n var element = ev.element;\n var tooltipElType = element.type;\n\n if ((tooltipElType !== LINK && tooltipElType !== NODE) || (this.tooltipShown && !followPointer)) {\n return;\n }\n\n var mouseEvent = ev.originalEvent;\n var rect = this.element.getBoundingClientRect();\n var isLeft = mouseEvent.clientX - rect.left < rect.width / 2;\n var isTop = mouseEvent.clientY - rect.top < rect.height / 2;\n\n ev.tooltipData = {\n popupOffset: {\n left: mouseEvent.pageX,\n top: mouseEvent.pageY\n },\n popupAlign: {\n horizontal: isLeft ? 'left' : 'right',\n vertical: isTop ? 'top' : 'bottom'\n }\n };\n\n if (tooltipElType === NODE) {\n var ref$1 = element.dataItem;\n var sourceLinks = ref$1.sourceLinks;\n var targetLinks = ref$1.targetLinks;\n var links = targetLinks.length ? targetLinks : sourceLinks;\n ev.nodeValue = links.reduce(function (acc, link) { return acc + link.value; }, 0);\n }\n\n if (this.tooltipTimeOut) {\n clearTimeout(this.tooltipTimeOut);\n this.tooltipTimeOut = null;\n }\n\n var nextDelay = followPointer && this.tooltipShown ? 0 : delay;\n\n this.tooltipTimeOut = setTimeout(function () {\n this$1.trigger('tooltipShow', ev);\n this$1.tooltipShown = true;\n this$1.tooltipTimeOut = null;\n }, nextDelay);\n };\n\n Sankey.prototype._click = function _click (ev) {\n var element = ev.element;\n var dataItem = element.dataItem;\n var isLink = element.type === LINK;\n var isNode = element.type === NODE;\n var focusState = this._focusState || {};\n\n if (isNode) {\n var focusedNodeClicked = !focusState.link && this.sameNode(focusState.node, dataItem);\n\n if (!focusedNodeClicked) {\n this._focusState = { node: dataItem, link: null };\n this._focusNode({ highlight: false });\n }\n\n this.trigger('nodeClick', ev);\n } else if (isLink) {\n var link = {\n sourceId: dataItem.source.id,\n targetId: dataItem.target.id,\n value: dataItem.value\n };\n var focusedLinkClicked = this.sameLink(focusState.link, link);\n\n if (!focusedLinkClicked) {\n this._focusState = { node: dataItem.source, link: link };\n this._focusLink({ highlight: false });\n }\n\n this.trigger('linkClick', ev);\n }\n };\n\n Sankey.prototype.sameNode = function sameNode (node1, node2) {\n return node1 && node2 && node1.id === node2.id;\n };\n\n Sankey.prototype.sameLink = function sameLink (link1, link2) {\n return link1 && link2 && link1.sourceId === link2.sourceId && link1.targetId === link2.targetId;\n };\n\n Sankey.prototype._focusNode = function _focusNode (options) {\n this._cleanFocusHighlight();\n\n var nodeData = this._focusState.node;\n var node = this.models.map.get(nodeData.id);\n node.focus(options);\n };\n\n Sankey.prototype._focusLink = function _focusLink (options) {\n this._cleanFocusHighlight();\n\n var linkData = this._focusState.link;\n var link = this.models.map.get(((linkData.sourceId) + \"-\" + (linkData.targetId)));\n link.focus(options);\n };\n\n Sankey.prototype._focusNextNode = function _focusNextNode (direction) {\n if ( direction === void 0 ) direction = 1;\n\n var current = this._focusState.node;\n\n var columnIndex = this.columns.findIndex(function (column) { return column.find(function (n) { return n.id === current.id; }); });\n var columnNodes = this.columns[columnIndex];\n var nodeIndex = columnNodes.findIndex(function (n) { return n.id === current.id; });\n\n var nextNode = columnNodes[nodeIndex + direction];\n if (nextNode) {\n this._focusState.node = nextNode;\n this._focusNode();\n }\n };\n\n Sankey.prototype._focusNextLink = function _focusNextLink (direction) {\n if ( direction === void 0 ) direction = 1;\n\n var node = this._focusState.node;\n var link = this._focusState.link;\n\n var sourceLinkIndex = node.sourceLinks.findIndex(function (l) { return l.sourceId === link.sourceId && l.targetId === link.targetId; });\n var targetLinkIndex = node.targetLinks.findIndex(function (l) { return l.sourceId === link.sourceId && l.targetId === link.targetId; });\n\n if (sourceLinkIndex !== -1) {\n var nextLink = node.sourceLinks[sourceLinkIndex + direction];\n\n if (nextLink) {\n this._focusState.link = nextLink;\n this._focusLink();\n }\n } else if (targetLinkIndex !== -1) {\n var nextLink$1 = node.targetLinks[targetLinkIndex + direction];\n\n if (nextLink$1) {\n this._focusState.link = nextLink$1;\n this._focusLink();\n }\n }\n };\n\n Sankey.prototype._focusSourceNode = function _focusSourceNode () {\n var linkData = this._focusState.link;\n var sourceNode = this.models.map.get(linkData.sourceId);\n this._focusState = { node: sourceNode.options.node, link: null };\n this._focusNode();\n };\n\n Sankey.prototype._focusTargetNode = function _focusTargetNode () {\n var linkData = this._focusState.link;\n var targetNode = this.models.map.get(linkData.targetId);\n this._focusState = { node: targetNode.options.node, link: null };\n this._focusNode();\n };\n\n Sankey.prototype._focusSourceLink = function _focusSourceLink () {\n var nodeData = this._focusState.node;\n var sourceLinks = nodeData.sourceLinks;\n var linkData = sourceLinks[0];\n if (linkData) {\n this._focusState.link = linkData;\n this._focusLink();\n }\n };\n\n Sankey.prototype._focusTargetLink = function _focusTargetLink () {\n var nodeData = this._focusState.node;\n var targetLinks = nodeData.targetLinks;\n var linkData = targetLinks[0];\n if (linkData) {\n this._focusState.link = linkData;\n this._focusLink();\n }\n };\n\n Sankey.prototype._focus = function _focus () {\n if (!this._skipFocusHighlight) {\n if (this._focusState.link) {\n this._focusLink();\n } else {\n this._focusNode();\n }\n }\n\n this._skipFocusHighlight = false;\n };\n\n Sankey.prototype._blur = function _blur () {\n this._cleanFocusHighlight();\n };\n\n Sankey.prototype._onDown = function _onDown () {\n if (!this._hasFocus()) {\n this._skipFocusHighlight = true;\n }\n };\n\n Sankey.prototype._hasFocus = function _hasFocus () {\n return this.element.ownerDocument.activeElement === this.element;\n };\n\n Sankey.prototype._cleanFocusHighlight = function _cleanFocusHighlight () {\n this.models.nodes.forEach(function (node) { return node.blur(); });\n this.models.links.forEach(function (link) { return link.blur(); });\n };\n\n Sankey.prototype._keydown = function _keydown (ev) {\n var handler = this['on' + ev.key];\n var rtl = this.options.rtl;\n\n if (rtl && ev.key === 'ArrowLeft') {\n handler = this.onArrowRight;\n } else if (rtl && ev.key === 'ArrowRight') {\n handler = this.onArrowLeft;\n }\n\n if (handler) {\n handler.call(this, ev);\n }\n };\n\n Sankey.prototype.onEscape = function onEscape (ev) {\n ev.preventDefault();\n\n this._focusState = { node: this.firstFocusableNode(), link: null };\n this._focusNode();\n };\n\n Sankey.prototype.onArrowDown = function onArrowDown (ev) {\n ev.preventDefault();\n\n if (this._focusState.link) {\n this._focusNextLink(1);\n } else {\n this._focusNextNode(1);\n }\n };\n\n Sankey.prototype.onArrowUp = function onArrowUp (ev) {\n ev.preventDefault();\n\n if (this._focusState.link) {\n this._focusNextLink(-1);\n } else {\n this._focusNextNode(-1);\n }\n };\n\n Sankey.prototype.onArrowLeft = function onArrowLeft (ev) {\n ev.preventDefault();\n\n if (this._focusState.link) {\n this._focusSourceNode();\n } else {\n this._focusTargetLink();\n }\n };\n\n Sankey.prototype.onArrowRight = function onArrowRight (ev) {\n ev.preventDefault();\n\n if (this._focusState.link) {\n this._focusTargetNode();\n } else {\n this._focusSourceLink();\n }\n };\n\n Sankey.prototype.highlightLinks = function highlightLinks (node, highlight) {\n var this$1 = this;\n\n if (node) {\n this.setLinksInactivityOpacity(highlight.inactiveOpacity);\n node.links.forEach(function (link) {\n this$1.setOpacity(link, highlight.opacity, link.linkOptions.highlight.opacity);\n });\n }\n };\n\n Sankey.prototype._destroySurface = function _destroySurface () {\n if (this.surface) {\n this.surface.destroy();\n this.surface = null;\n this._destroySurfaceElement();\n }\n };\n\n Sankey.prototype._destroyResizeObserver = function _destroyResizeObserver () {\n if (this._resizeObserver) {\n this._resizeObserver.disconnect();\n this._resizeObserver = null;\n }\n };\n\n Sankey.prototype._initSurfaceElement = function _initSurfaceElement () {\n if (!this.surfaceElement) {\n this.surfaceElement = document.createElement('div');\n this.element.appendChild(this.surfaceElement);\n }\n };\n\n Sankey.prototype._destroySurfaceElement = function _destroySurfaceElement () {\n if (this.surfaceElement && this.surfaceElement.parentNode) {\n this.surfaceElement.parentNode.removeChild(this.surfaceElement);\n this.surfaceElement = null;\n }\n };\n\n Sankey.prototype.setOptions = function setOptions (options, theme) {\n this._setOptions(options);\n this._initTheme(theme);\n this._initSurface();\n this._redraw();\n };\n\n Sankey.prototype._redraw = function _redraw () {\n this.surface.clear();\n\n var ref = this._getSize();\n var width = ref.width;\n var height = ref.height;\n this.size = { width: width, height: height };\n this.surface.setSize(this.size);\n\n this.createVisual();\n\n this.surface.draw(this.visual);\n };\n\n Sankey.prototype._getSize = function _getSize () {\n return this.element.getBoundingClientRect();\n };\n\n Sankey.prototype.createVisual = function createVisual () {\n this.visual = this._render();\n };\n\n Sankey.prototype.titleBox = function titleBox (title, drawingRect) {\n if (!title || title.visible === false || !title.text) {\n return null;\n }\n\n var titleElement = new Title(Object.assign({}, {drawingRect: drawingRect}, title));\n var titleVisual = titleElement.exportVisual();\n return titleVisual.chartElement.box;\n };\n\n Sankey.prototype.legendBox = function legendBox (options, nodes, drawingRect) {\n if (!options || options.visible === false) {\n return null;\n }\n\n var legend = new Legend(Object.assign({}, {nodes: nodes}, options, {drawingRect: drawingRect}));\n var legendVisual = legend.exportVisual();\n\n return legendVisual.chartElement.box;\n };\n\n Sankey.prototype.calculateSankey = function calculateSankey$1 (calcOptions, sankeyOptions) {\n var title = sankeyOptions.title;\n var legend = sankeyOptions.legend;\n var data = sankeyOptions.data;\n var nodes = sankeyOptions.nodes;\n var labels = sankeyOptions.labels;\n var nodeColors = sankeyOptions.nodeColors;\n var disableAutoLayout = sankeyOptions.disableAutoLayout;\n var disableKeyboardNavigation = sankeyOptions.disableKeyboardNavigation;\n var rtl = sankeyOptions.rtl;\n var autoLayout = !disableAutoLayout;\n var padding = disableKeyboardNavigation ? 0 : highlightOptions.width / 2;\n\n var sankeyBox = new Box(0, 0, calcOptions.width, calcOptions.height);\n sankeyBox.unpad(padding);\n\n var titleBox = this.titleBox(title, sankeyBox);\n\n var legendArea = sankeyBox.clone();\n\n if (titleBox) {\n var titleHeight = titleBox.height();\n if (title.position === TOP) {\n sankeyBox.unpad({ top: titleHeight });\n legendArea = new Box(0, titleHeight, calcOptions.width, calcOptions.height);\n } else {\n sankeyBox.shrink(0, titleHeight);\n legendArea = new Box(0, 0, calcOptions.width, calcOptions.height - titleHeight);\n }\n }\n\n var legendBox = this.legendBox(legend, data.nodes, legendArea);\n var legendPosition = (legend && legend.position) || Legend.prototype.options.position;\n\n if (legendBox) {\n if (legendPosition === LEFT) {\n sankeyBox.unpad({ left: legendBox.width() });\n }\n\n if (legendPosition === RIGHT) {\n sankeyBox.shrink(legendBox.width(), 0);\n }\n\n if (legendPosition === TOP) {\n sankeyBox.unpad({ top: legendBox.height() });\n }\n\n if (legendPosition === BOTTOM) {\n sankeyBox.shrink(0, legendBox.height());\n }\n }\n\n var ref = calculateSankey(Object.assign({}, calcOptions, {offsetX: 0, offsetY: 0, width: sankeyBox.width(), height: sankeyBox.height()}));\n var calculatedNodes = ref.nodes;\n var circularLinks = ref.circularLinks;\n if (circularLinks) {\n console.warn('Circular links detected. Kendo Sankey diagram does not support circular links.');\n return { sankey: { nodes: [], links: [], columns: [[]], circularLinks: circularLinks }, legendBox: legendBox, titleBox: titleBox };\n }\n\n var box = new Box();\n\n var diagramMinX = calculatedNodes.reduce(function (acc, node) { return Math.min(acc, node.x0); }, Infinity);\n var diagramMaxX = calculatedNodes.reduce(function (acc, node) { return Math.max(acc, node.x1); }, 0);\n\n calculatedNodes.forEach(function (nodeEl, i) {\n if (rtl) {\n var x0 = nodeEl.x0;\n var x1 = nodeEl.x1;\n nodeEl.x0 = diagramMaxX - x1;\n nodeEl.x1 = diagramMaxX - x0;\n }\n var nodeOps = resolveNodeOptions(nodeEl, nodes, nodeColors, i);\n var nodeInstance = new Node(nodeOps);\n box.wrap(rectToBox(nodeInstance.exportVisual().rawBBox()));\n\n var labelInstance = new Label(resolveLabelOptions(nodeEl, labels, rtl, diagramMinX, diagramMaxX));\n var labelVisual = labelInstance.exportVisual();\n if (labelVisual) {\n box.wrap(rectToBox(labelVisual.rawBBox()));\n }\n });\n\n var offsetX = sankeyBox.x1;\n var offsetY = sankeyBox.y1;\n\n var width = sankeyBox.width() + offsetX;\n var height = sankeyBox.height() + offsetY;\n\n width -= box.x2 > sankeyBox.width() ? box.x2 - sankeyBox.width() : 0;\n height -= box.y2 > sankeyBox.height() ? box.y2 - sankeyBox.height() : 0;\n\n offsetX += box.x1 < 0 ? -box.x1 : 0;\n offsetY += box.y1 < 0 ? -box.y1 : 0;\n\n if (autoLayout === false) {\n return {\n sankey: calculateSankey(Object.assign({}, calcOptions, {offsetX: offsetX, offsetY: offsetY, width: width, height: height, autoLayout: false})),\n legendBox: legendBox,\n titleBox: titleBox\n };\n }\n\n if (this.resize && autoLayout && this.permutation) {\n this.resize = false;\n return {\n sankey: calculateSankey(Object.assign({}, calcOptions, {offsetX: offsetX, offsetY: offsetY, width: width, height: height}, this.permutation)),\n legendBox: legendBox,\n titleBox: titleBox\n };\n }\n\n var startColumn = 1;\n var loops = 2;\n var columnsLength = calculateSankey(Object.assign({}, calcOptions, {offsetX: offsetX, offsetY: offsetY, width: width, height: height, autoLayout: false})).columns.length;\n var results = [];\n\n var permutation = function (targetColumnIndex, reverse) {\n var currPerm = calculateSankey(Object.assign({}, calcOptions, {offsetX: offsetX, offsetY: offsetY, width: width, height: height, loops: loops, targetColumnIndex: targetColumnIndex, reverse: reverse}));\n var crosses = crossesValue(currPerm.links);\n results.push({\n crosses: crosses,\n reverse: reverse,\n targetColumnIndex: targetColumnIndex\n });\n return crosses === 0;\n };\n\n for (var index = startColumn; index <= columnsLength - 1; index++) {\n if (permutation(index, false) || permutation(index, true)) {\n break;\n }\n }\n\n var minCrosses = Math.min.apply(null, results.map(function (r) { return r.crosses; }));\n var bestResult = results.find(function (r) { return r.crosses === minCrosses; });\n this.permutation = { targetColumnIndex: bestResult.targetColumnIndex, reverse: bestResult.reverse };\n var result = calculateSankey(Object.assign({}, calcOptions, {offsetX: offsetX, offsetY: offsetY, width: width, height: height}, this.permutation));\n\n return {\n sankey: result,\n legendBox: legendBox,\n titleBox: titleBox\n };\n };\n\n Sankey.prototype._render = function _render (options, context) {\n var sankeyOptions = options || this.options;\n var sankeyContext = context || this;\n\n var labelOptions = sankeyOptions.labels;\n var nodesOptions = sankeyOptions.nodes;\n var linkOptions = sankeyOptions.links;\n var nodeColors = sankeyOptions.nodeColors;\n var title = sankeyOptions.title;\n var legend = sankeyOptions.legend;\n var rtl = sankeyOptions.rtl;\n var disableKeyboardNavigation = sankeyOptions.disableKeyboardNavigation;\n var data = sankeyOptions.data;\n var ref = sankeyContext.size;\n var width = ref.width;\n var height = ref.height;\n\n var calcOptions = Object.assign({}, data, {width: width, height: height, nodesOptions: nodesOptions, title: title, legend: legend});\n var ref$1 = this.calculateSankey(calcOptions, sankeyOptions);\n var sankey = ref$1.sankey;\n var titleBox = ref$1.titleBox;\n var legendBox = ref$1.legendBox;\n if (rtl) {\n toRtl(sankey);\n }\n var nodes = sankey.nodes;\n var links = sankey.links;\n var columns = sankey.columns;\n\n sankeyContext.columns = columns.map(function (column) {\n var newColumn = column.slice();\n newColumn.sort(function (a, b) { return a.y0 - b.y0; });\n return newColumn;\n });\n\n var visual = new drawing.Group({\n clip: drawing.Path.fromRect(new geometry.Rect([0, 0], [width, height]))\n });\n\n if (titleBox) {\n var titleElement = new Title(Object.assign({}, title, {drawingRect: titleBox}));\n var titleVisual = titleElement.exportVisual();\n visual.append(titleVisual);\n }\n\n if (sankey.circularLinks) {\n return visual;\n }\n\n var visualNodes = new Map();\n sankeyContext.nodesVisuals = visualNodes;\n\n var models = {\n nodes: [],\n links: [],\n map: new Map()\n };\n sankeyContext.models = models;\n\n var focusHighlights = [];\n\n nodes.forEach(function (node, i) {\n var nodeOps = resolveNodeOptions(node, nodesOptions, nodeColors, i);\n nodeOps.root = function () { return sankeyContext.element; };\n nodeOps.navigatable = disableKeyboardNavigation !== true;\n\n var nodeInstance = new Node(nodeOps);\n var nodeVisual = nodeInstance.exportVisual();\n nodeVisual.links = [];\n nodeVisual.type = NODE;\n\n node.color = nodeOps.color;\n node.opacity = nodeOps.opacity;\n\n nodeVisual.dataItem = Object.assign({}, data.nodes[i],\n {color: nodeOps.color,\n opacity: nodeOps.opacity,\n sourceLinks: node.sourceLinks.map(function (link) { return ({ sourceId: link.sourceId, targetId: link.targetId, value: link.value }); }),\n targetLinks: node.targetLinks.map(function (link) { return ({ sourceId: link.sourceId, targetId: link.targetId, value: link.value }); })});\n visualNodes.set(node.id, nodeVisual);\n\n models.nodes.push(nodeInstance);\n models.map.set(node.id, nodeInstance);\n\n visual.append(nodeVisual);\n\n nodeInstance.createFocusHighlight();\n\n if (nodeInstance._highlight) {\n focusHighlights.push(nodeInstance._highlight);\n }\n });\n\n var sortedLinks = links.slice().sort(function (a, b) { return b.value - a.value; });\n\n var linksVisuals = [];\n sankeyContext.linksVisuals = linksVisuals;\n\n sortedLinks.forEach(function (link) {\n var source = link.source;\n var target = link.target;\n var sourceNode = visualNodes.get(source.id);\n var targetNode = visualNodes.get(target.id);\n var resolvedOptions = resolveLinkOptions(link, linkOptions, sourceNode, targetNode);\n resolvedOptions.root = function () { return sankeyContext.element; };\n resolvedOptions.navigatable = disableKeyboardNavigation !== true;\n resolvedOptions.rtl = rtl;\n var linkInstance = new Link(resolvedOptions);\n var linkVisual = linkInstance.exportVisual();\n\n linkVisual.type = LINK;\n linkVisual.dataItem = {\n source: Object.assign({}, sourceNode.dataItem),\n target: Object.assign({}, targetNode.dataItem),\n value: link.value\n };\n linkVisual.linkOptions = resolvedOptions;\n linksVisuals.push(linkVisual);\n\n sourceNode.links.push(linkVisual);\n targetNode.links.push(linkVisual);\n\n models.links.push(linkInstance);\n models.map.set(((source.id) + \"-\" + (target.id)), linkInstance);\n\n linkInstance.createFocusHighlight();\n\n if (linkInstance._highlight) {\n focusHighlights.push(linkInstance._highlight);\n }\n\n visual.append(linkVisual);\n });\n\n var diagramMinX = nodes.reduce(function (acc, node) { return Math.min(acc, node.x0); }, Infinity);\n var diagramMaxX = nodes.reduce(function (acc, node) { return Math.max(acc, node.x1); }, 0);\n\n nodes.forEach(function (node) {\n var textOps = resolveLabelOptions(node, labelOptions, rtl, diagramMinX, diagramMaxX);\n var labelInstance = new Label(textOps);\n var labelVisual = labelInstance.exportVisual();\n\n if (labelVisual) {\n visual.append(labelVisual);\n }\n });\n\n if (legendBox) {\n var legendElement = new Legend(Object.assign({}, legend, {rtl: rtl, drawingRect: legendBox, nodes: nodes}));\n var legendVisual = legendElement.exportVisual();\n visual.append(legendVisual);\n }\n\n if (focusHighlights.length !== 0) {\n var focusHighlight = new drawing.Group();\n focusHighlight.append.apply(focusHighlight, focusHighlights);\n visual.append(focusHighlight);\n }\n\n return visual;\n };\n\n Sankey.prototype.exportVisual = function exportVisual (exportOptions) {\n var options = (exportOptions && exportOptions.options) ?\n deepExtend({}, this.options, exportOptions.options) : this.options;\n\n var context = {\n size: {\n width: defined(exportOptions && exportOptions.width) ? exportOptions.width : this.size.width,\n height: defined(exportOptions && exportOptions.height) ? exportOptions.height : this.size.height\n }\n };\n\n return this._render(options, context);\n };\n\n Sankey.prototype._setOptions = function _setOptions (options) {\n this.options = deepExtend({}, this.options, options);\n };\n\n return Sankey;\n}(Observable));\n\nvar highlightOptions = {\n opacity: 1,\n width: 2,\n color: BLACK\n};\n\nsetDefaultOptions(Sankey, {\n title: {\n position: TOP, // 'top', 'bottom'\n },\n labels: {\n visible: true,\n margin: {\n left: 8,\n right: 8\n },\n padding: 0,\n border: {\n width: 0\n },\n paintOrder: 'stroke',\n stroke: {\n lineJoin: \"round\",\n width: 1\n },\n offset: { left: 0, top: 0 }\n },\n nodes: {\n width: 24,\n padding: 16,\n opacity: 1,\n align: 'stretch', // 'left', 'right', 'stretch'\n offset: { left: 0, top: 0 },\n focusHighlight: Object.assign({}, highlightOptions),\n labels: {\n ariaTemplate: function (ref) {\n var node = ref.node;\n\n return node.label.text;\n}\n }\n },\n links: {\n colorType: 'static', // 'source', 'target', 'static'\n opacity: 0.4,\n highlight: {\n opacity: 0.8,\n inactiveOpacity: 0.2\n },\n focusHighlight: Object.assign({}, highlightOptions),\n labels: {\n ariaTemplate: function (ref) {\n var link = ref.link;\n\n return ((link.source.label.text) + \" to \" + (link.target.label.text));\n}\n }\n },\n tooltip: {\n followPointer: false,\n delay: 200\n }\n});\n","var ActionTypes = Object.freeze({\n seriesType: 0,\n stacked: 1,\n\n categoryAxisX: 2,\n valueAxisY: 3,\n\n seriesChange: 4,\n\n areaMarginLeft: 5,\n areaMarginRight: 6,\n areaMarginTop: 7,\n areaMarginBottom: 8,\n areaBackground: 9,\n\n titleText: 10,\n titleFontName: 11,\n titleFontSize: 12,\n titleColor: 13,\n\n subtitleText: 14,\n subtitleFontName: 15,\n subtitleFontSize: 16,\n subtitleColor: 17,\n\n seriesColor: 18,\n seriesLabel: 19,\n\n legendVisible: 20,\n legendFontName: 21,\n legendFontSize: 22,\n legendColor: 23,\n legendPosition: 24,\n\n categoryAxisTitleText: 25,\n categoryAxisTitleFontName: 26,\n categoryAxisTitleFontSize: 27,\n categoryAxisTitleColor: 28,\n categoryAxisLabelsFontName: 29,\n categoryAxisLabelsFontSize: 30,\n categoryAxisLabelsColor: 31,\n categoryAxisLabelsRotation: 32,\n categoryAxisReverseOrder: 33,\n\n valueAxisTitleText: 34,\n valueAxisTitleFontName: 35,\n valueAxisTitleFontSize: 36,\n valueAxisTitleColor: 37,\n valueAxisLabelsFormat: 38,\n valueAxisLabelsFontName: 39,\n valueAxisLabelsFontSize: 40,\n valueAxisLabelsColor: 41,\n valueAxisLabelsRotation: 42,\n});\n\nvar fontSizes = [\n { text: \"10\", value: \"10px\" },\n { text: \"12\", value: \"12px\" },\n { text: \"14\", value: \"14px\" },\n { text: \"16\", value: \"16px\" },\n { text: \"20\", value: \"20px\" },\n { text: \"28\", value: \"28px\" },\n { text: \"42\", value: \"42px\" },\n { text: \"56\", value: \"56px\" }\n];\n\nvar titleSizeDefault = '20px';\nvar subtitleSizeDefault = '16px';\nvar labelSizeDefault = '12px';\nvar axisTitleSizeDefault = '16px';\n\nvar fontNames = [\n {\n text: \"Arial\",\n value: \"Arial, Helvetica, sans-serif\",\n style: { fontFamily: \"Arial, Helvetica, sans-serif\" },\n },\n {\n text: \"Courier New\",\n value: \"'Courier New', Courier, monospace\",\n style: { fontFamily: \"'Courier New', Courier, monospace\" },\n },\n {\n text: \"Georgia\",\n value: \"Georgia, serif\",\n style: { fontFamily: \"Georgia, serif\" },\n },\n {\n text: \"Impact\",\n value: \"Impact, Charcoal, sans-serif\",\n style: { fontFamily: \"Impact, Charcoal, sans-serif\" },\n },\n {\n text: \"Lucida Console\",\n value: \"'Lucida Console', Monaco, monospace\",\n style: { fontFamily: \"'Lucida Console', Monaco, monospace\" },\n },\n {\n text: \"Tahoma\",\n value: \"Tahoma, Geneva, sans-serif\",\n style: { fontFamily: \"Tahoma, Geneva, sans-serif\" },\n },\n {\n text: \"Times New Roman\",\n value: \"'Times New Roman', Times,serif\",\n style: { fontFamily: \"'Times New Roman', Times,serif\" },\n },\n {\n text: \"Trebuchet MS\",\n value: \"'Trebuchet MS', Helvetica, sans-serif\",\n style: { fontFamily: \"'Trebuchet MS', Helvetica, sans-serif\" },\n },\n {\n text: \"Verdana\",\n value: \"Verdana, Geneva, sans-serif\",\n style: { fontFamily: \"Verdana, Geneva, sans-serif\" },\n } ];\n\nvar fontNameDefault = fontNames[0].value;\n\nvar columnType = \"column\";\nvar barType = \"bar\";\nvar lineType = \"line\";\nvar pieType = \"pie\";\nvar scatterType = \"scatter\";\nvar categoricalTypes = [columnType, barType, lineType, scatterType];\n\nvar scatterSeries = {\n type: lineType,\n width: 0,\n};\n\nfunction isCategorical(type) {\n return type && categoricalTypes.includes(type);\n}\n\nvar categoryTypes = [\"string\", \"date\", \"number\"];\nvar valueTypes = [\"number\"];\n\nvar axesDefinitions = {\n bar: [\n { axisType: \"category\", types: categoryTypes },\n { axisType: \"value\", types: valueTypes } ],\n column: [\n { axisType: \"category\", types: categoryTypes },\n { axisType: \"value\", types: valueTypes } ],\n line: [\n { axisType: \"category\", types: categoryTypes },\n { axisType: \"value\", types: valueTypes } ],\n pie: [\n { axisType: \"category\", types: categoryTypes },\n { axisType: \"value\", types: valueTypes, count: 1 } ],\n scatter: [\n { axisType: \"category\", types: categoryTypes },\n { axisType: \"value\", types: valueTypes } ],\n};\n\nfunction getFont(font, size) {\n return ((size || \"\") + \" \" + (font || \"\")).trim();\n}\n\nfunction parseFont(font) {\n var spaceIndex = (font || \"\").indexOf(\" \");\n var size = font && font.substring(0, spaceIndex);\n var name = font && font.substring(spaceIndex + 1);\n return { size: size, name: name };\n}\n\nvar updateFontName = function (fontName, defaultSize, currentFont) {\n var ref = parseFont(currentFont);\n var size = ref.size;\n return fontName ? getFont(fontName, size || defaultSize) : \"\";\n};\n\nvar updateFontSize = function (fontSize, defaultFontName, currentFont) {\n var ref = parseFont(currentFont);\n var name = ref.name;\n return fontSize ? getFont(name || defaultFontName, fontSize) : \"\";\n};\n\nvar hasValue = function (value) { return value !== undefined && value !== null; };\n\nvar recordWithValues = function (data) {\n var result = structuredClone(data[0]);\n result.forEach(function (item, i) {\n if (!hasValue(item.value)) {\n for (var index = 0; index < data.length; index++) {\n var value = data[index][i].value;\n if (hasValue(value)) {\n item.value = value;\n break;\n }\n }\n }\n });\n\n return result;\n};\n\nvar getCategoryColumnIndex = function (data, categoryDef) {\n var candidates = [];\n var sampleRecord = recordWithValues(data);\n\n categoryDef.types.forEach(function (type) {\n sampleRecord.forEach(function (item, i) {\n if (typeof item.value === type) {\n candidates.push(i);\n }\n });\n });\n\n var result = candidates.findIndex(function (index) {\n var values = data.map(function (record) { return record[index].value; });\n return new Set(values).size === values.length;\n });\n\n return Math.max(result, 0);\n};\n\nvar getValueColumnIndexes = function (data, valuesDef) {\n var candidates = [];\n var sampleRecord = recordWithValues(data);\n\n valuesDef.forEach(function (def) {\n def.types.forEach(function (type) {\n sampleRecord.forEach(function (item, i) {\n if (typeof item.value === type) {\n candidates.push(i);\n }\n });\n });\n });\n\n return candidates;\n};\n\nvar emptyState = function () { return structuredClone({\n columns: [],\n data: [],\n series: [],\n initialSeries: [],\n categoryAxis: [ { categories: [], labels: { visible: true, rotation: \"auto\" }, title: { text: '' } } ],\n valueAxis: [{ labels: { visible: true, rotation: 'auto' } }],\n area: {\n margin: {\n left: undefined,\n right: undefined,\n top: undefined,\n bottom: undefined,\n },\n },\n title: { text: '' },\n subtitle: { text: '' },\n stack: false,\n }); };\n\nvar categoryValueChartState = function (data, seriesType, options) {\n var state = emptyState();\n state.seriesType = seriesType;\n state.data = data || [];\n state.legend = { visible: true, position: \"bottom\" };\n var chartDef = axesDefinitions[seriesType];\n\n if (!chartDef || !data.length) {\n return state;\n }\n\n var firstRecord = data[0].slice();\n state.columns = data[0].map(function (i) { return String(i.field); });\n\n var categoryDef = chartDef.find(function (def) { return def.axisType === \"category\"; });\n var catIndex = -1;\n if (categoryDef) {\n catIndex =\n options && options.categoryAxis\n ? state.columns.indexOf(options.categoryAxis)\n : getCategoryColumnIndex(data, categoryDef);\n }\n\n var valuesDef = chartDef.filter(function (def) { return def.axisType === \"value\"; });\n var valuesIndexes = getValueColumnIndexes(data, valuesDef);\n\n if (valuesIndexes.includes(catIndex)) {\n if (valuesIndexes.length > 1) {\n valuesIndexes = valuesIndexes.filter(function (index) { return index !== catIndex; });\n } else {\n catIndex = -1;\n }\n }\n\n var series = [];\n valuesIndexes.forEach(function (index) {\n var valuesColumn = firstRecord[index];\n var valuesResult = [];\n data.forEach(function (record) {\n valuesResult.push(record[index].value);\n });\n series.push(Object.assign({}, {name: valuesColumn.field,\n type: seriesType,\n data: valuesResult,\n stack: false,\n labels: { visible: false }},\n (seriesType === scatterType ? scatterSeries : {})));\n });\n\n var categories =\n catIndex > -1\n ? data.map(function (item) { return String(\n hasValue(item[catIndex].value)\n ? item[catIndex].value\n : \" \"\n ); }\n )\n : [];\n\n if (series.length) {\n state.series = series.map(function (s, i) { return (Object.assign({}, s, {id: i})); });\n state.initialSeries = structuredClone(state.series);\n }\n\n state.categoryAxis = [\n { categories: categories, labels: { visible: true, rotation: \"auto\" } } ];\n state.categoryField = state.columns[catIndex];\n\n return state;\n};\n\nvar pieChartState = function (data, seriesType, options) {\n var state = emptyState();\n state.seriesType = seriesType;\n state.data = data || [];\n\n var chartDef = axesDefinitions[seriesType];\n\n if (!chartDef || !data.length) {\n return state;\n }\n\n var categoriesAxis = data[0].map(function (i) { return i.field; });\n var categoryDef = chartDef.find(function (def) { return def.axisType === \"category\"; });\n var catIndex = -1;\n if (categoryDef) {\n catIndex =\n options && options.categoryAxis\n ? categoriesAxis.indexOf(options.categoryAxis)\n : getCategoryColumnIndex(data, categoryDef);\n }\n\n var valuesDef = chartDef.filter(function (def) { return def.axisType === \"value\"; });\n\n var valuesIndexes = [];\n if (options && options.valueAxis) {\n valuesIndexes = [categoriesAxis.indexOf(options.valueAxis)];\n } else {\n valuesIndexes = getValueColumnIndexes(data, valuesDef);\n }\n\n if (valuesIndexes.includes(catIndex) && valuesIndexes.length > 1) {\n valuesIndexes = valuesIndexes.filter(function (index) { return index !== catIndex; });\n }\n\n if (typeof valuesDef[0].count === \"number\") {\n valuesIndexes = valuesIndexes.slice(0, valuesDef[0].count);\n }\n\n var categories =\n catIndex > -1 ? data.map(function (item) { return String(item[catIndex].value); }) : [];\n\n var flatData = [];\n\n data.forEach(function (item) {\n var record = {};\n valuesIndexes.forEach(function (index) {\n var col = item[index];\n record[col.field] = col.value || 0;\n record[item[catIndex].field] = item[catIndex].value || \" \";\n });\n flatData.push(record);\n });\n\n state.columns = categoriesAxis;\n state.categoryAxis = [{ categories: categories, title: { text: \"\" } }];\n\n state.series = [\n {\n id: 0,\n data: flatData,\n type: seriesType,\n name: categoriesAxis[catIndex],\n labels: { visible: true },\n categoryField: categoriesAxis[catIndex],\n field: categoriesAxis[valuesIndexes[0]],\n } ];\n\n state.categoryField = categoriesAxis[catIndex];\n state.valueField = categoriesAxis[valuesIndexes[0]];\n\n state.initialSeries = structuredClone(state.series);\n\n return state;\n};\n\nfunction createInitialState(data, seriesType, defaultState) {\n var state = createState(\n data,\n (defaultState && defaultState.seriesType) || seriesType\n );\n\n return typeof (defaultState && defaultState.stack) !== \"undefined\"\n ? updateState(state, ActionTypes.stacked, defaultState.stack)\n : state;\n}\n\nfunction createState(data, seriesType) {\n return (isCategorical(seriesType) ? categoryValueChartState : pieChartState)(\n data,\n seriesType\n );\n}\n\nfunction mergeStates(source, target) {\n var newState = structuredClone(target);\n newState.legend = source.legend;\n newState.area = source.area;\n newState.title = source.title;\n newState.subtitle = source.subtitle;\n if (newState.series.length === source.series.length) {\n for (var i = 0; i < newState.series.length; i++) {\n newState.series[i].color = source.series[i].color;\n newState.series[i].labels = source.series[i].labels;\n }\n }\n\n if (\n source.series.every(function (s) { return s.labels && s.labels.visible; }) &&\n isCategorical(newState.seriesType) &&\n isCategorical(source.seriesType)\n ) {\n newState.series.forEach(function (s) {\n s.labels = s.labels || {};\n s.labels.visible = true;\n });\n }\n\n return newState;\n}\n\n/* eslint-disable complexity */\nfunction updateState(currentState, action, value) {\n var state = Object.assign({}, currentState);\n\n switch (action) {\n case ActionTypes.seriesType:\n return createState(state.data, value);\n\n case ActionTypes.stacked:\n state.series = state.series.map(function (s) { return (Object.assign({}, s, {stack: value})); });\n state.stack = value;\n return state;\n\n case ActionTypes.categoryAxisX: {\n if (state.seriesType && isCategorical(state.seriesType)) {\n var newState = categoryValueChartState(\n state.data,\n state.seriesType,\n { categoryAxis: value }\n );\n return mergeStates(state, newState);\n } else if (state.seriesType === pieType) {\n var newState$1 = pieChartState(state.data, state.seriesType, {\n categoryAxis: value,\n });\n return mergeStates(state, newState$1);\n }\n\n return state;\n }\n\n case ActionTypes.valueAxisY: {\n if (state.seriesType === pieType) {\n var newState$2 = pieChartState(state.data, state.seriesType, {\n categoryAxis: state.categoryField,\n valueAxis: value,\n });\n return mergeStates(state, newState$2);\n }\n\n return state;\n }\n\n case ActionTypes.seriesChange:\n state.series = value;\n return state;\n\n case ActionTypes.areaMarginLeft:\n state.area = Object.assign({}, state.area,\n {margin: Object.assign({}, ((state.area && state.area.margin) || {}),\n {left: value})});\n return state;\n\n case ActionTypes.areaMarginRight:\n state.area = Object.assign({}, state.area,\n {margin: Object.assign({}, ((state.area && state.area.margin) || {}),\n {right: value})});\n return state;\n\n case ActionTypes.areaMarginTop:\n state.area = Object.assign({}, state.area,\n {margin: Object.assign({}, ((state.area && state.area.margin) || {}),\n {top: value})});\n return state;\n\n case ActionTypes.areaMarginBottom:\n state.area = Object.assign({}, state.area,\n {margin: Object.assign({}, ((state.area && state.area.margin) || {}),\n {bottom: value})});\n return state;\n\n case ActionTypes.areaBackground:\n state.area = Object.assign({}, state.area, {background: value});\n return state;\n\n case ActionTypes.titleText:\n state.title = Object.assign({}, state.title, {text: value});\n return state;\n\n case ActionTypes.titleFontName: {\n state.title = Object.assign({}, state.title,\n {font: updateFontName(\n value,\n titleSizeDefault,\n state.title && state.title.font\n )});\n return state;\n }\n case ActionTypes.titleFontSize:\n state.title = Object.assign({}, state.title,\n {font: updateFontSize(\n value,\n fontNameDefault,\n state.title && state.title.font\n )});\n return state;\n\n case ActionTypes.titleColor:\n state.title = Object.assign({}, state.title, {color: value});\n return state;\n\n case ActionTypes.subtitleText:\n state.subtitle = Object.assign({}, state.subtitle, {text: value});\n return state;\n\n case ActionTypes.subtitleFontName:\n state.subtitle = Object.assign({}, state.subtitle,\n {font: updateFontName(\n value,\n subtitleSizeDefault,\n state.subtitle && state.subtitle.font\n )});\n return state;\n\n case ActionTypes.subtitleFontSize:\n state.subtitle = Object.assign({}, state.subtitle,\n {font: updateFontSize(\n value,\n fontNameDefault,\n state.subtitle && state.subtitle.font\n )});\n return state;\n\n case ActionTypes.subtitleColor:\n state.subtitle = Object.assign({}, state.subtitle, {color: value});\n return state;\n\n case ActionTypes.seriesColor:\n state.series = state.series.map(function (s) { return (Object.assign({}, s,\n {color: value.seriesName === s.name ? value.color : s.color})); });\n return state;\n\n case ActionTypes.seriesLabel:\n state.series = state.series.map(function (s) {\n if (value.all || value.seriesName === s.name) {\n return Object.assign({}, s, {labels: { visible: value.visible }});\n }\n return s;\n });\n return state;\n\n case ActionTypes.legendVisible:\n state.legend = Object.assign({}, state.legend, {visible: value});\n return state;\n\n case ActionTypes.legendFontName: {\n var legend = state.legend || {};\n state.legend = Object.assign({}, legend,\n {labels: Object.assign({}, legend.labels,\n {font: updateFontName(\n value,\n labelSizeDefault,\n legend.labels && legend.labels.font\n )})});\n return state;\n }\n case ActionTypes.legendFontSize: {\n var legend$1 = state.legend || {};\n state.legend = Object.assign({}, legend$1,\n {labels: Object.assign({}, legend$1.labels,\n {font: updateFontSize(\n value,\n fontNameDefault,\n legend$1.labels && legend$1.labels.font\n )})});\n return state;\n }\n case ActionTypes.legendColor: {\n var legend$2 = state.legend || {};\n state.legend = Object.assign({}, legend$2,\n {labels: Object.assign({}, legend$2.labels, {color: value})});\n return state;\n }\n case ActionTypes.legendPosition:\n state.legend = Object.assign({}, state.legend, {position: value});\n return state;\n\n case ActionTypes.categoryAxisTitleText:\n state.categoryAxis = (state.categoryAxis || []).map(function (axis) { return (Object.assign({}, axis, {title: Object.assign({}, axis.title, {text: value})})); });\n return state;\n\n case ActionTypes.categoryAxisTitleFontName: {\n state.categoryAxis = (state.categoryAxis || []).map(function (axis) { return (Object.assign({}, axis, {title: Object.assign({}, axis.title, {font: updateFontName(value, axisTitleSizeDefault, axis.title && axis.title.font)})})); });\n return state;\n }\n case ActionTypes.categoryAxisTitleFontSize:\n state.categoryAxis = (state.categoryAxis || []).map(function (axis) { return (Object.assign({}, axis, {title: Object.assign({}, axis.title, {font: updateFontSize(value, fontNameDefault, axis.title && axis.title.font)})})); });\n return state;\n\n case ActionTypes.categoryAxisTitleColor:\n state.categoryAxis = (state.categoryAxis || []).map(function (axis) { return (Object.assign({}, axis, {title: Object.assign({}, axis.title, {color: value})})); });\n return state;\n\n case ActionTypes.categoryAxisLabelsFontName: {\n state.categoryAxis = (state.categoryAxis || []).map(function (axis) { return (Object.assign({}, axis, {labels: Object.assign({}, axis.labels, {font: updateFontName(value, labelSizeDefault, axis.labels && axis.labels.font)})})); });\n return state;\n }\n\n case ActionTypes.categoryAxisLabelsFontSize:\n state.categoryAxis = (state.categoryAxis || []).map(function (axis) { return (Object.assign({}, axis, {labels: Object.assign({}, axis.labels, {font: updateFontSize(value, fontNameDefault, axis.labels && axis.labels.font)})})); });\n return state;\n\n case ActionTypes.categoryAxisLabelsColor:\n state.categoryAxis = (state.categoryAxis || []).map(function (axis) { return (Object.assign({}, axis, {labels: Object.assign({}, axis.labels, {color: value})})); });\n return state;\n\n case ActionTypes.categoryAxisLabelsRotation: {\n var rotation = hasValue(value) ? value : 'auto';\n state.categoryAxis = (state.categoryAxis || []).map(function (axis) { return (Object.assign({}, axis, {labels: Object.assign({}, axis.labels, {rotation: rotation})})); });\n return state;\n }\n case ActionTypes.categoryAxisReverseOrder:\n state.categoryAxis = (state.categoryAxis || []).map(function (axis) { return (Object.assign({}, axis, {reverse: value})); });\n return state;\n\n case ActionTypes.valueAxisTitleText: {\n if (!state.valueAxis || state.valueAxis.length === 0) {\n state.valueAxis = [{ title: { text: value } }];\n } else {\n state.valueAxis = (state.valueAxis || []).map(function (axis) { return (Object.assign({}, axis, {title: Object.assign({}, axis.title, {text: value})})); });\n }\n return state;\n }\n case ActionTypes.valueAxisTitleFontName: {\n state.valueAxis = (state.valueAxis || []).map(function (axis) { return (Object.assign({}, axis, {title: Object.assign({}, axis.title, {font: updateFontName(value, axisTitleSizeDefault, axis.title && axis.title.font)})})); });\n return state;\n }\n case ActionTypes.valueAxisTitleFontSize:\n state.valueAxis = (state.valueAxis || []).map(function (axis) { return (Object.assign({}, axis, {title: Object.assign({}, axis.title, {font: updateFontSize(value, fontNameDefault, axis.title && axis.title.font)})})); });\n return state;\n case ActionTypes.valueAxisTitleColor:\n state.valueAxis = (state.valueAxis || []).map(function (axis) { return (Object.assign({}, axis, {title: Object.assign({}, axis.title, {color: value})})); });\n return state;\n\n case ActionTypes.valueAxisLabelsFormat:\n state.valueAxis = (state.valueAxis || []).map(function (axis) { return (Object.assign({}, axis, {labels: Object.assign({}, axis.labels, {format: value})})); });\n return state;\n\n case ActionTypes.valueAxisLabelsFontName: {\n state.valueAxis = (state.valueAxis || []).map(function (axis) { return (Object.assign({}, axis, {labels: Object.assign({}, axis.labels, {font: updateFontName(value, labelSizeDefault, axis.labels && axis.labels.font)})})); });\n return state;\n }\n case ActionTypes.valueAxisLabelsFontSize:\n state.valueAxis = (state.valueAxis || []).map(function (axis) { return (Object.assign({}, axis, {labels: Object.assign({}, axis.labels, {font: updateFontSize(value, fontNameDefault, axis.labels && axis.labels.font)})})); });\n return state;\n case ActionTypes.valueAxisLabelsColor:\n state.valueAxis = (state.valueAxis || []).map(function (axis) { return (Object.assign({}, axis, {labels: Object.assign({}, axis.labels, {color: value})})); });\n return state;\n\n case ActionTypes.valueAxisLabelsRotation: {\n var rotation$1 = hasValue(value) ? value : 'auto';\n state.valueAxis = (state.valueAxis || []).map(function (axis) { return (Object.assign({}, axis, {labels: Object.assign({}, axis.labels, {rotation: rotation$1})})); });\n return state;\n }\n\n default:\n return state;\n }\n}\n\nexport {\n ActionTypes,\n fontSizes,\n fontNames,\n isCategorical,\n parseFont,\n createInitialState,\n createState,\n mergeStates,\n updateState\n};\n","export var messages = Object.freeze({\n windowTitle: 'Chart Preview',\n exportButton: 'Export',\n exportPDFButton: 'PDF File',\n exportSVGButton: 'SVG File',\n exportPNGButton: 'PNG File',\n tabChart: 'Chart',\n tabData: 'Data',\n tabFormat: 'Format',\n barChart: 'Bar Chart',\n barChartBar: 'Bar',\n barChartStackedBar: 'Stacked Bar',\n barChart100StackedBar: '100% Stacked Bar',\n pieChart: 'Pie Chart',\n pieChartPie: 'Pie',\n columnChart: 'Column Chart',\n columnChartColumn: 'Column',\n columnChartStackedColumn: 'Stacked Column',\n columnChart100StackedColumn: '100% Stacked Column',\n lineChart: 'Line Chart',\n lineChartLine: 'Line',\n lineChartStackedLine: 'Stacked Line',\n lineChart100StackedLine: '100% Stacked Line',\n scatterChart: 'Scatter Chart',\n scatterChartScatter: 'Scatter',\n configuration: 'Configuration',\n configurationCategoryAxis: 'Category Axis',\n configurationXAxis: 'X Axis',\n configurationValueAxis: 'Value Axis',\n configurationSeries: 'Series',\n configurationSeriesAdd: 'Add',\n formatChartArea: 'Chart Area',\n formatChartAreaMargins: 'Margins',\n formatChartAreaMarginsAuto: 'Auto',\n formatChartAreaMarginsLeft: 'Left',\n formatChartAreaMarginsRight: 'Right',\n formatChartAreaMarginsTop: 'Top',\n formatChartAreaMarginsBottom: 'Bottom',\n formatChartAreaBackground: 'Background',\n formatChartAreaBackgroundColor: 'Color',\n formatTitle: 'Title',\n formatTitleApplyTo: 'Apply to',\n formatTitleChartTitle: 'Chart Title',\n formatTitleChartSubtitle: 'Chart Subtitle',\n formatTitleLabel: 'Title',\n formatTitleFont: 'Font',\n formatTitleFontPlaceholder: '(inherited font)',\n formatTitleSize: 'Size',\n formatTitleSizePlaceholder: 'px',\n formatTitleColor: 'Color',\n formatSeries: 'Series',\n formatSeriesApplyTo: 'Apply to',\n formatSeriesAllSeries: 'All Series',\n formatSeriesColor: 'Color',\n formatSeriesShowLabels: 'Show Labels',\n formatLegend: 'Legend',\n formatLegendShowLegend: 'Show Legend',\n formatLegendFont: 'Font',\n formatLegendFontPlaceholder: '(inherited font)',\n formatLegendSize: 'Size',\n formatLegendSizePlaceholder: 'px',\n formatLegendColor: 'Color',\n formatLegendPosition: 'Position',\n formatLegendPositionTop: 'Top',\n formatLegendPositionBottom: 'Bottom',\n formatLegendPositionLeft: 'Left',\n formatLegendPositionRight: 'Right',\n formatCategoryAxis: 'Category Axis',\n formatXAxis: 'X Axis',\n formatCategoryAxisTitle: 'Title',\n formatCategoryAxisTitlePlaceholder: 'Axis Title',\n formatCategoryAxisTitleFont: 'Font',\n formatCategoryAxisTitleFontPlaceholder: '(inherited font)',\n formatCategoryAxisTitleSize: 'Size',\n formatCategoryAxisTitleSizePlaceholder: 'px',\n formatCategoryAxisTitleColor: 'Color',\n formatCategoryAxisLabels: 'Labels',\n formatCategoryAxisLabelsFont: 'Font',\n formatCategoryAxisLabelsFontPlaceholder: '(inherited font)',\n formatCategoryAxisLabelsSize: 'Size',\n formatCategoryAxisLabelsSizePlaceholder: 'px',\n formatCategoryAxisLabelsColor: 'Color',\n formatCategoryAxisLabelsRotation: 'Rotation',\n formatCategoryAxisLabelsRotationAuto: 'Auto',\n formatCategoryAxisLabelsReverseOrder: 'Reverse Order',\n formatValueAxis: 'Value Axis',\n formatYAxis: 'Y Axis',\n formatValueAxisTitle: 'Title',\n formatValueAxisTitlePlaceholder: 'Axis Title',\n formatValueAxisTitleFont: 'Font',\n formatValueAxisTitleFontPlaceholder: '(inherited font)',\n formatValueAxisTitleSize: 'Size',\n formatValueAxisTitleSizePlaceholder: 'px',\n formatValueAxisTitleColor: 'Color',\n formatValueAxisLabels: 'Labels',\n formatValueAxisLabelsFormat: 'Label Format',\n formatValueAxisLabelsFormatText: 'Text',\n formatValueAxisLabelsFormatNumber: 'Number',\n formatValueAxisLabelsFormatCurrency: 'Currency',\n formatValueAxisLabelsFormatPercent: 'Percent',\n formatValueAxisLabelsFont: 'Font',\n formatValueAxisLabelsFontPlaceholder: '(inherited font)',\n formatValueAxisLabelsSize: 'Size',\n formatValueAxisLabelsSizePlaceholder: 'px',\n formatValueAxisLabelsColor: 'Color',\n formatValueAxisLabelsRotation: 'Rotation',\n formatValueAxisLabelsRotationAuto: 'Auto'\n});\n","import { AREA, LINE } from './constants';\nimport { INHERIT } from '../common/constants';\n\nvar BAR_GAP = 1.5;\nvar BAR_SPACING = 0.4;\nvar BLACK = '#000';\nvar SANS = 'Arial, Helvetica, sans-serif';\nvar SANS11 = \"11px \" + SANS;\nvar SANS12 = '12px ' + SANS;\nvar SANS16 = '16px ' + SANS;\nvar TRANSPARENT = 'transparent';\nvar WHITE = '#fff';\n\nvar lineSeriesLegendItem = {\n type: LINE\n};\n\nvar areaSeriesLegendItem = {\n type: AREA\n};\n\nvar areaNoMarkersSeriesLegendItem = Object.assign({}, areaSeriesLegendItem,\n {markers: {\n visible: false\n },\n highlight: {\n visible: false\n }});\n\nvar notes = function () { return ({\n icon: {\n border: {\n width: 1\n }\n },\n label: {\n font: SANS12,\n padding: 3\n },\n line: {\n length: 10,\n width: 2\n },\n legendItem: areaNoMarkersSeriesLegendItem,\n visible: true\n}); };\n\nvar axisDefaults = function () { return ({\n labels: {\n font: SANS12\n },\n notes: notes(),\n title: {\n font: SANS16,\n margin: 5\n }\n}); };\n\nvar areaSeries = function () { return ({\n highlight: {\n markers: {\n border: {}\n }\n },\n line: {\n opacity: 1,\n width: 0\n },\n markers: {\n size: 6,\n visible: false\n },\n legendItem: areaSeriesLegendItem,\n opacity: 0.4\n}); };\n\nvar rangeAreaSeries = function () { return ({\n highlight: {\n markers: {\n border: {}\n }\n },\n line: {\n opacity: 1,\n width: 0\n },\n markers: {\n size: 6,\n visible: false\n },\n legendItem: areaSeriesLegendItem,\n opacity: 0.4\n}); };\n\nvar barSeries = function () { return ({\n gap: BAR_GAP,\n spacing: BAR_SPACING,\n legendItem: areaNoMarkersSeriesLegendItem,\n}); };\n\nvar boxPlotSeries = function () { return ({\n outliersField: \"\",\n meanField: \"\",\n border: {\n _brightness: 0.8,\n width: 1\n },\n downColor: WHITE,\n gap: 1,\n highlight: {\n border: {\n opacity: 1,\n width: 2\n },\n whiskers: {\n width: 3\n },\n mean: {\n width: 2\n },\n median: {\n width: 2\n }\n },\n mean: {\n width: 2\n },\n median: {\n width: 2\n },\n spacing: 0.3,\n whiskers: {\n width: 2\n },\n legendItem: areaNoMarkersSeriesLegendItem,\n}); };\n\nvar bubbleSeries = function () { return ({\n border: {\n width: 0\n },\n labels: {\n background: TRANSPARENT\n },\n legendItem: areaNoMarkersSeriesLegendItem,\n opacity: 0.6\n}); };\n\nvar bulletSeries = function () { return ({\n gap: BAR_GAP,\n spacing: BAR_SPACING,\n target: {\n color: \"#ff0000\"\n },\n legendItem: areaNoMarkersSeriesLegendItem\n}); };\n\nvar candlestickSeries = function () { return ({\n border: {\n _brightness: 0.8,\n width: 1\n },\n downColor: WHITE,\n gap: 1,\n highlight: {\n border: {\n opacity: 1,\n width: 2\n },\n line: {\n width: 2\n }\n },\n line: {\n color: BLACK,\n width: 1\n },\n legendItem: areaNoMarkersSeriesLegendItem,\n spacing: 0.3\n}); };\n\nvar columnSeries = function () { return ({\n gap: BAR_GAP,\n spacing: BAR_SPACING,\n legendItem: areaNoMarkersSeriesLegendItem\n}); };\n\nvar radarColumnSeries = function () { return ({\n legendItem: areaNoMarkersSeriesLegendItem\n}); };\n\nvar polarScatterSeries = function () { return ({\n legendItem: lineSeriesLegendItem\n}); };\n\nvar scatterSeries = function () { return ({\n legendItem: lineSeriesLegendItem\n}); };\n\nvar donutSeries = function () { return ({\n margin: 1,\n legendItem: areaNoMarkersSeriesLegendItem\n}); };\n\nvar lineSeries = function () { return ({\n width: 2,\n legendItem: lineSeriesLegendItem\n}); };\n\nvar ohlcSeries = function () { return ({\n gap: 1,\n highlight: {\n line: {\n opacity: 1,\n width: 3\n }\n },\n line: {\n width: 1\n },\n legendItem: areaNoMarkersSeriesLegendItem,\n spacing: 0.3\n}); };\n\nvar radarAreaSeries = function () { return ({\n line: {\n opacity: 1,\n width: 0\n },\n markers: {\n size: 6,\n visible: false\n },\n legendItem: areaSeriesLegendItem,\n opacity: 0.5\n}); };\n\nvar radarLineSeries = function () { return ({\n markers: {\n visible: false\n },\n legendItem: lineSeriesLegendItem,\n width: 2\n}); };\n\nvar rangeBarSeries = function () { return ({\n gap: BAR_GAP,\n spacing: BAR_SPACING,\n legendItem: areaNoMarkersSeriesLegendItem\n}); };\n\nvar rangeColumnSeries = function () { return ({\n gap: BAR_GAP,\n spacing: BAR_SPACING,\n legendItem: areaNoMarkersSeriesLegendItem\n}); };\n\nvar scatterLineSeries = function () { return ({\n width: 1,\n legendItem: lineSeriesLegendItem\n}); };\n\nvar waterfallSeries = function () { return ({\n gap: 0.5,\n line: {\n color: BLACK,\n width: 1\n },\n legendItem: areaNoMarkersSeriesLegendItem,\n spacing: BAR_SPACING\n}); };\n\nvar pieSeries = function () { return ({\n labels: {\n background: '',\n color: '',\n padding: {\n top: 5,\n bottom: 5,\n left: 7,\n right: 7\n }\n },\n legendItem: areaNoMarkersSeriesLegendItem\n}); };\n\nvar funnelSeries = function () { return ({\n labels: {\n background: '',\n color: '',\n padding: {\n top: 5,\n bottom: 5,\n left: 7,\n right: 7\n }\n },\n legendItem: areaNoMarkersSeriesLegendItem\n}); };\n\nvar pyramidSeries = funnelSeries;\n\nvar heatmapSeries = function () { return ({\n labels: {\n color: '',\n background: TRANSPARENT,\n visible: true\n },\n highlight: {\n border: {\n width: 0\n }\n },\n legendItem: areaNoMarkersSeriesLegendItem\n}); };\n\nvar trendlineSeriesDefaults = function (options) { return Object.assign({\n color: INHERIT,\n trendline: {},\n markers: {\n visible: false\n },\n width: 1,\n dashType: 'longDash',\n legendItem: lineSeriesLegendItem\n}, options); };\n\nvar seriesDefaults = function (options) { return ({\n visible: true,\n labels: {\n font: SANS11\n },\n overlay: options.gradients ? {} : {\n gradient: \"none\"\n },\n area: areaSeries(),\n rangeArea: rangeAreaSeries(),\n verticalRangeArea: rangeAreaSeries(),\n bar: barSeries(),\n boxPlot: boxPlotSeries(),\n bubble: bubbleSeries(),\n bullet: bulletSeries(),\n candlestick: candlestickSeries(),\n column: columnSeries(),\n heatmap: heatmapSeries(),\n pie: pieSeries(),\n donut: donutSeries(),\n funnel: funnelSeries(),\n pyramid: pyramidSeries(),\n horizontalWaterfall: waterfallSeries(),\n line: lineSeries(),\n notes: notes(),\n ohlc: ohlcSeries(),\n radarArea: radarAreaSeries(),\n radarLine: radarLineSeries(),\n radarColumn: radarColumnSeries(),\n polarArea: radarAreaSeries(),\n polarLine: radarLineSeries(),\n polarScatter: polarScatterSeries(),\n rangeBar: rangeBarSeries(),\n rangeColumn: rangeColumnSeries(),\n scatter: scatterSeries(),\n scatterLine: scatterLineSeries(),\n verticalArea: areaSeries(),\n verticalBoxPlot: boxPlotSeries(),\n verticalBullet: bulletSeries(),\n verticalLine: lineSeries(),\n waterfall: waterfallSeries(),\n linearTrendline: trendlineSeriesDefaults(),\n exponentialTrendline: trendlineSeriesDefaults({ style: 'smooth' }),\n logarithmicTrendline: trendlineSeriesDefaults({ style: 'smooth' }),\n polynomialTrendline: trendlineSeriesDefaults({ style: 'smooth' }),\n powerTrendline: trendlineSeriesDefaults({ style: 'smooth' }),\n movingAverageTrendline: trendlineSeriesDefaults()\n}); };\n\nvar title = function () { return ({\n font: SANS16\n}); };\n\nvar subtitle = function () { return ({\n font: SANS12\n}); };\n\nvar legend = function () { return ({\n labels: {\n font: SANS12\n }\n}); };\n\nexport var baseTheme = function (options) {\n if ( options === void 0 ) options = {};\n\n return ({\n axisDefaults: axisDefaults(),\n categoryAxis: {\n majorGridLines: {\n visible: true\n }\n },\n navigator: {\n pane: {\n height: 90,\n margin: {\n top: 10\n }\n }\n },\n seriesDefaults: seriesDefaults(options),\n title: title(),\n subtitle: subtitle(),\n legend: legend()\n});\n};\n\n","import { getWizardDataFromDataRows } from './chart-wizard/get-wizard-data-from-data-rows';\nimport { ActionTypes, createInitialState, createState, fontNames, fontSizes, isCategorical, mergeStates, parseFont, updateState } from './chart-wizard/state';\nimport {\n messages\n} from './chart-wizard/messages';\n\nexport var ChartWizardCommon = Object.freeze({\n getWizardDataFromDataRows: getWizardDataFromDataRows,\n ActionTypes: ActionTypes,\n createInitialState: createInitialState,\n createState: createState,\n fontNames: fontNames,\n fontSizes: fontSizes,\n isCategorical: isCategorical,\n mergeStates: mergeStates,\n parseFont: parseFont,\n updateState: updateState,\n messages: messages\n});\n","import getter from './../common/getter';\n\nexport function getWizardDataFromDataRows(dataRows) {\n var result = [];\n\n dataRows.forEach(function (item) {\n var dataItem = item.dataItem;\n var dataColumns = item.dataColumns;\n\n var row = [];\n dataColumns.forEach(function (column) {\n row.push({\n field: column.title || column.field,\n value: getter(column.field)(dataItem)\n });\n });\n\n result.push(row);\n });\n\n return result;\n}\n","/**\n * @license\n *-------------------------------------------------------------------------------------------\n * Copyright © 2024 Progress Software Corporation. All rights reserved.\n * Licensed under commercial license. See LICENSE.md in the package root for more information\n *-------------------------------------------------------------------------------------------\n */\n\"use client\";\nfunction a(r, t) {\n let e = r;\n for (; e && e !== t; )\n e = e.parentNode;\n return !!e;\n}\nfunction i(r, t, e, o) {\n const n = r[t];\n if (n && Array.isArray(n)) {\n for (let l of n)\n if (!l.type || l.type !== o)\n return new Error(\n `${e} children should be Array of type ${o.displayName}.`\n );\n }\n return null;\n}\nconst u = (r) => r === void 0 ? !1 : !r;\nexport {\n a as hasParent,\n u as toggle,\n i as validateChildren\n};\n","/**\n * @license\n *-------------------------------------------------------------------------------------------\n * Copyright © 2024 Progress Software Corporation. All rights reserved.\n * Licensed under commercial license. See LICENSE.md in the package root for more information\n *-------------------------------------------------------------------------------------------\n */\n\"use client\";\nclass s {\n /**\n * @hidden\n */\n constructor(t) {\n this.target = t;\n }\n}\nexport {\n s as BaseEvent\n};\n","/**\n * @license\n *-------------------------------------------------------------------------------------------\n * Copyright © 2024 Progress Software Corporation. All rights reserved.\n * Licensed under commercial license. See LICENSE.md in the package root for more information\n *-------------------------------------------------------------------------------------------\n */\n\"use client\";\nimport { BaseEvent as e } from \"./base-event.mjs\";\nclass n extends e {\n constructor() {\n super(...arguments), this.prevented = !1;\n }\n /* eslint-disable max-len */\n /**\n * Prevents the default action for a specified event. In this way, the source component suppresses the built-in behavior that follows the event.\n */\n preventDefault() {\n this.prevented = !0;\n }\n /**\n * Returns `true` if the event was prevented by any of its subscribers.\n *\n * @returns `true` if the default action was prevented.\n * Otherwise, returns `false`.\n */\n isDefaultPrevented() {\n return this.prevented;\n }\n}\nexport {\n n as PreventableEvent\n};\n","/**\n * @license\n *-------------------------------------------------------------------------------------------\n * Copyright © 2024 Progress Software Corporation. All rights reserved.\n * Licensed under commercial license. See LICENSE.md in the package root for more information\n *-------------------------------------------------------------------------------------------\n */\n\"use client\";\nimport { BaseEvent as s } from \"./base-event.mjs\";\nclass n extends s {\n /**\n * @hidden\n */\n constructor(t, e) {\n super(e), this.value = t.value, this.point = t.point, this.series = t.series, this.currentState = t.currentState, this.nextState = t.nextState;\n }\n}\nexport {\n n as DrilldownEvent\n};\n","/**\n * @license\n *-------------------------------------------------------------------------------------------\n * Copyright © 2024 Progress Software Corporation. All rights reserved.\n * Licensed under commercial license. See LICENSE.md in the package root for more information\n *-------------------------------------------------------------------------------------------\n */\n\"use client\";\nimport { AxisLabelClickEvent as m } from \"./axis-label-click-event.mjs\";\nimport { DragEvent as i } from \"./drag-event.mjs\";\nimport { DragEndEvent as n } from \"./drag-end-event.mjs\";\nimport { DragStartEvent as v } from \"./drag-start-event.mjs\";\nimport { DrilldownEvent as l } from \"./drilldown-event.mjs\";\nimport { LegendItemHoverEvent as E } from \"./legend-item-hover-event.mjs\";\nimport { LegendItemClickEvent as a } from \"./legend-item-click-event.mjs\";\nimport { LegendItemLeaveEvent as p } from \"./legend-item-leave-event.mjs\";\nimport { NavigatorFilterEvent as f } from \"./navigator-filter-event.mjs\";\nimport { NoteClickEvent as c } from \"./note-click-event.mjs\";\nimport { NoteHoverEvent as d } from \"./note-hover-event.mjs\";\nimport { PlotAreaClickEvent as g } from \"./plot-area-click-event.mjs\";\nimport { PlotAreaHoverEvent as s } from \"./plot-area-hover-event.mjs\";\nimport { RenderEvent as S } from \"./render-event.mjs\";\nimport { SelectEvent as k } from \"./select-event.mjs\";\nimport { SelectEndEvent as C } from \"./select-end-event.mjs\";\nimport { SelectStartEvent as H } from \"./select-start-event.mjs\";\nimport { SeriesClickEvent as L } from \"./series-click-event.mjs\";\nimport { SeriesHoverEvent as A } from \"./series-hover-event.mjs\";\nimport { ZoomEvent as I } from \"./zoom-event.mjs\";\nimport { ZoomEndEvent as D } from \"./zoom-end-event.mjs\";\nimport { ZoomStartEvent as N } from \"./zoom-start-event.mjs\";\nconst t = {\n axisLabelClick: m,\n drag: i,\n dragEnd: n,\n dragStart: v,\n drilldownEvent: l,\n legendItemHover: E,\n legendItemClick: a,\n legendItemLeave: p,\n navigatorFilter: f,\n noteClick: c,\n noteHover: d,\n plotAreaClick: g,\n plotAreaHover: s,\n render: S,\n select: k,\n selectEnd: C,\n selectStart: H,\n seriesClick: L,\n seriesHover: A,\n zoom: I,\n zoomEnd: D,\n zoomStart: N\n};\nfunction Q(e, r, o) {\n if (t[e])\n return new t[e](r, o);\n}\nexport {\n Q as create\n};\n","/**\n * @license\n *-------------------------------------------------------------------------------------------\n * Copyright © 2024 Progress Software Corporation. All rights reserved.\n * Licensed under commercial license. See LICENSE.md in the package root for more information\n *-------------------------------------------------------------------------------------------\n */\n\"use client\";\nimport { BaseEvent as e } from \"./base-event.mjs\";\nclass x extends e {\n /**\n * @hidden\n */\n constructor(t, s) {\n super(s), this.axis = t.axis, this.dataItem = t.dataItem, this.index = t.index, this.text = t.text, this.value = t.value;\n }\n}\nexport {\n x as AxisLabelClickEvent\n};\n","/**\n * @license\n *-------------------------------------------------------------------------------------------\n * Copyright © 2024 Progress Software Corporation. All rights reserved.\n * Licensed under commercial license. See LICENSE.md in the package root for more information\n *-------------------------------------------------------------------------------------------\n */\n\"use client\";\nimport { PreventableEvent as n } from \"./preventable-event.mjs\";\nclass i extends n {\n /**\n * @hidden\n */\n constructor(e, t) {\n super(t), this.axisRanges = e.axisRanges, this.nativeEvent = e.originalEvent;\n }\n}\nexport {\n i as DragEvent\n};\n","/**\n * @license\n *-------------------------------------------------------------------------------------------\n * Copyright © 2024 Progress Software Corporation. All rights reserved.\n * Licensed under commercial license. See LICENSE.md in the package root for more information\n *-------------------------------------------------------------------------------------------\n */\n\"use client\";\nimport { BaseEvent as t } from \"./base-event.mjs\";\nclass i extends t {\n /**\n * @hidden\n */\n constructor(e, s) {\n super(s), this.axisRanges = e.axisRanges, this.nativeEvent = e.originalEvent;\n }\n}\nexport {\n i as DragEndEvent\n};\n","/**\n * @license\n *-------------------------------------------------------------------------------------------\n * Copyright © 2024 Progress Software Corporation. All rights reserved.\n * Licensed under commercial license. See LICENSE.md in the package root for more information\n *-------------------------------------------------------------------------------------------\n */\n\"use client\";\nimport { PreventableEvent as n } from \"./preventable-event.mjs\";\nclass r extends n {\n /**\n * @hidden\n */\n constructor(t, e) {\n super(e), this.axisRanges = t.axisRanges, this.nativeEvent = t.originalEvent;\n }\n}\nexport {\n r as DragStartEvent\n};\n","/**\n * @license\n *-------------------------------------------------------------------------------------------\n * Copyright © 2024 Progress Software Corporation. All rights reserved.\n * Licensed under commercial license. See LICENSE.md in the package root for more information\n *-------------------------------------------------------------------------------------------\n */\n\"use client\";\nimport { PreventableEvent as s } from \"./preventable-event.mjs\";\nclass i extends s {\n /**\n * @hidden\n */\n constructor(e, t) {\n super(t), this.series = e.series, this.seriesIndex = e.seriesIndex, this.pointIndex = e.pointIndex, this.text = e.text;\n }\n /**\n * If called, the series highlight is not shown as a result of hovering over the legend item.\n */\n preventDefault() {\n super.preventDefault();\n }\n}\nexport {\n i as LegendItemHoverEvent\n};\n","/**\n * @license\n *-------------------------------------------------------------------------------------------\n * Copyright © 2024 Progress Software Corporation. All rights reserved.\n * Licensed under commercial license. See LICENSE.md in the package root for more information\n *-------------------------------------------------------------------------------------------\n */\n\"use client\";\nimport { PreventableEvent as s } from \"./preventable-event.mjs\";\nclass i extends s {\n /**\n * @hidden\n */\n constructor(e, t) {\n super(t), this.series = e.series, this.seriesIndex = e.seriesIndex, this.pointIndex = e.pointIndex, this.text = e.text;\n }\n /**\n * If called, the series visibility is not toggled as a result of clicking the legend item.\n */\n preventDefault() {\n super.preventDefault();\n }\n}\nexport {\n i as LegendItemClickEvent\n};\n","/**\n * @license\n *-------------------------------------------------------------------------------------------\n * Copyright © 2024 Progress Software Corporation. All rights reserved.\n * Licensed under commercial license. See LICENSE.md in the package root for more information\n *-------------------------------------------------------------------------------------------\n */\n\"use client\";\nimport { PreventableEvent as s } from \"./preventable-event.mjs\";\nclass i extends s {\n /**\n * @hidden\n */\n constructor(e, t) {\n super(t), this.series = e.series, this.seriesIndex = e.seriesIndex, this.pointIndex = e.pointIndex, this.text = e.text;\n }\n /**\n * @hidden\n */\n preventDefault() {\n super.preventDefault();\n }\n}\nexport {\n i as LegendItemLeaveEvent\n};\n","/**\n * @license\n *-------------------------------------------------------------------------------------------\n * Copyright © 2024 Progress Software Corporation. All rights reserved.\n * Licensed under commercial license. See LICENSE.md in the package root for more information\n *-------------------------------------------------------------------------------------------\n */\n\"use client\";\nimport { BaseEvent as r } from \"./base-event.mjs\";\nclass i extends r {\n /**\n * Constructs the event arguments from a raw object.\n */\n constructor(t, o) {\n super(o), this.from = t.from, this.to = t.to;\n }\n}\nexport {\n i as NavigatorFilterEvent\n};\n","/**\n * @license\n *-------------------------------------------------------------------------------------------\n * Copyright © 2024 Progress Software Corporation. All rights reserved.\n * Licensed under commercial license. See LICENSE.md in the package root for more information\n *-------------------------------------------------------------------------------------------\n */\n\"use client\";\nimport { BaseEvent as e } from \"./base-event.mjs\";\nclass r extends e {\n /**\n * @hidden\n */\n constructor(t, s) {\n super(s), this.category = t.category, this.dataItem = t.dataItem, this.series = t.series, this.value = t.value, this.visual = t.visual;\n }\n}\nexport {\n r as NoteClickEvent\n};\n","/**\n * @license\n *-------------------------------------------------------------------------------------------\n * Copyright © 2024 Progress Software Corporation. All rights reserved.\n * Licensed under commercial license. See LICENSE.md in the package root for more information\n *-------------------------------------------------------------------------------------------\n */\n\"use client\";\nimport { BaseEvent as e } from \"./base-event.mjs\";\nclass r extends e {\n /**\n * @hidden\n */\n constructor(t, s) {\n super(s), this.category = t.category, this.dataItem = t.dataItem, this.series = t.series, this.value = t.value, this.visual = t.visual;\n }\n}\nexport {\n r as NoteHoverEvent\n};\n","/**\n * @license\n *-------------------------------------------------------------------------------------------\n * Copyright © 2024 Progress Software Corporation. All rights reserved.\n * Licensed under commercial license. See LICENSE.md in the package root for more information\n *-------------------------------------------------------------------------------------------\n */\n\"use client\";\nimport { BaseEvent as s } from \"./base-event.mjs\";\nclass a extends s {\n /**\n * @hidden\n */\n constructor(t, e) {\n super(e), this.category = t.category, this.nativeEvent = t.originalEvent, this.value = t.value, this.x = t.x, this.y = t.y;\n }\n}\nexport {\n a as PlotAreaClickEvent\n};\n","/**\n * @license\n *-------------------------------------------------------------------------------------------\n * Copyright © 2024 Progress Software Corporation. All rights reserved.\n * Licensed under commercial license. See LICENSE.md in the package root for more information\n *-------------------------------------------------------------------------------------------\n */\n\"use client\";\nimport { BaseEvent as s } from \"./base-event.mjs\";\nclass o extends s {\n /**\n * @hidden\n */\n constructor(t, e) {\n super(e), this.category = t.category, this.nativeEvent = t.originalEvent, this.value = t.value, this.x = t.x, this.y = t.y;\n }\n}\nexport {\n o as PlotAreaHoverEvent\n};\n","/**\n * @license\n *-------------------------------------------------------------------------------------------\n * Copyright © 2024 Progress Software Corporation. All rights reserved.\n * Licensed under commercial license. See LICENSE.md in the package root for more information\n *-------------------------------------------------------------------------------------------\n */\n\"use client\";\nimport { BaseEvent as t } from \"./base-event.mjs\";\nclass o extends t {\n /**\n * @hidden\n */\n constructor(s, e) {\n super(e);\n }\n}\nexport {\n o as RenderEvent\n};\n","/**\n * @license\n *-------------------------------------------------------------------------------------------\n * Copyright © 2024 Progress Software Corporation. All rights reserved.\n * Licensed under commercial license. See LICENSE.md in the package root for more information\n *-------------------------------------------------------------------------------------------\n */\n\"use client\";\nimport { PreventableEvent as s } from \"./preventable-event.mjs\";\nclass i extends s {\n /**\n * @hidden\n */\n constructor(t, e) {\n super(e), this.axis = t.axis, this.from = t.from, this.to = t.to;\n }\n}\nexport {\n i as SelectEvent\n};\n","/**\n * @license\n *-------------------------------------------------------------------------------------------\n * Copyright © 2024 Progress Software Corporation. All rights reserved.\n * Licensed under commercial license. See LICENSE.md in the package root for more information\n *-------------------------------------------------------------------------------------------\n */\n\"use client\";\nimport { BaseEvent as e } from \"./base-event.mjs\";\nclass i extends e {\n /**\n * @hidden\n */\n constructor(t, s) {\n super(s), this.axis = t.axis, this.from = t.from, this.to = t.to;\n }\n}\nexport {\n i as SelectEndEvent\n};\n","/**\n * @license\n *-------------------------------------------------------------------------------------------\n * Copyright © 2024 Progress Software Corporation. All rights reserved.\n * Licensed under commercial license. See LICENSE.md in the package root for more information\n *-------------------------------------------------------------------------------------------\n */\n\"use client\";\nimport { PreventableEvent as s } from \"./preventable-event.mjs\";\nclass i extends s {\n /**\n * @hidden\n */\n constructor(t, e) {\n super(e), this.axis = t.axis, this.from = t.from, this.to = t.to;\n }\n}\nexport {\n i as SelectStartEvent\n};\n","/**\n * @license\n *-------------------------------------------------------------------------------------------\n * Copyright © 2024 Progress Software Corporation. All rights reserved.\n * Licensed under commercial license. See LICENSE.md in the package root for more information\n *-------------------------------------------------------------------------------------------\n */\n\"use client\";\nimport { BaseEvent as s } from \"./base-event.mjs\";\nclass r extends s {\n // tslint:enable:max-line-length\n /**\n * @hidden\n */\n constructor(t, e) {\n super(e), this.category = t.category, this.dataItem = t.dataItem, this.nativeEvent = t.originalEvent, this.percentage = t.percentage, this.point = t.point, this.series = t.series, this.stackValue = t.stackValue, this.value = t.value;\n }\n}\nexport {\n r as SeriesClickEvent\n};\n","/**\n * @license\n *-------------------------------------------------------------------------------------------\n * Copyright © 2024 Progress Software Corporation. All rights reserved.\n * Licensed under commercial license. See LICENSE.md in the package root for more information\n *-------------------------------------------------------------------------------------------\n */\n\"use client\";\nimport { PreventableEvent as s } from \"./preventable-event.mjs\";\nclass r extends s {\n /**\n * @hidden\n */\n constructor(t, e) {\n super(e), this.category = t.category, this.categoryPoints = t.categoryPoints, this.dataItem = t.dataItem, this.nativeEvent = t.originalEvent, this.percentage = t.percentage, this.point = t.point, this.series = t.series, this.stackValue = t.stackValue, this.value = t.value;\n }\n}\nexport {\n r as SeriesHoverEvent\n};\n","/**\n * @license\n *-------------------------------------------------------------------------------------------\n * Copyright © 2024 Progress Software Corporation. All rights reserved.\n * Licensed under commercial license. See LICENSE.md in the package root for more information\n *-------------------------------------------------------------------------------------------\n */\n\"use client\";\nimport { PreventableEvent as s } from \"./preventable-event.mjs\";\nclass i extends s {\n // tslint:enable:max-line-length\n /**\n * @hidden\n */\n constructor(t, e) {\n super(e), this.axisRanges = t.axisRanges, this.delta = t.delta, this.nativeEvent = t.originalEvent;\n }\n}\nexport {\n i as ZoomEvent\n};\n","/**\n * @license\n *-------------------------------------------------------------------------------------------\n * Copyright © 2024 Progress Software Corporation. All rights reserved.\n * Licensed under commercial license. See LICENSE.md in the package root for more information\n *-------------------------------------------------------------------------------------------\n */\n\"use client\";\nimport { BaseEvent as t } from \"./base-event.mjs\";\nclass a extends t {\n // tslint:enable:max-line-length\n /**\n * @hidden\n */\n constructor(e, s) {\n super(s), this.axisRanges = e.axisRanges, this.nativeEvent = e.originalEvent;\n }\n}\nexport {\n a as ZoomEndEvent\n};\n","/**\n * @license\n *-------------------------------------------------------------------------------------------\n * Copyright © 2024 Progress Software Corporation. All rights reserved.\n * Licensed under commercial license. See LICENSE.md in the package root for more information\n *-------------------------------------------------------------------------------------------\n */\n\"use client\";\nimport { PreventableEvent as n } from \"./preventable-event.mjs\";\nclass i extends n {\n // tslint:enable:max-line-length\n /**\n * @hidden\n */\n constructor(t, e) {\n super(e), this.axisRanges = t.axisRanges, this.nativeEvent = t.originalEvent;\n }\n}\nexport {\n i as ZoomStartEvent\n};\n","/**\n * @license\n *-------------------------------------------------------------------------------------------\n * Copyright © 2024 Progress Software Corporation. All rights reserved.\n * Licensed under commercial license. See LICENSE.md in the package root for more information\n *-------------------------------------------------------------------------------------------\n */\n\"use client\";\nclass s {\n /**\n * @hidden\n */\n constructor(t, n) {\n this.sender = t, this.syntheticEvent = n;\n }\n}\nfunction o(e, t) {\n return new s(e, t);\n}\nexport {\n s as DomEvent,\n o as toDomEvent\n};\n","/**\n * @license\n *-------------------------------------------------------------------------------------------\n * Copyright © 2024 Progress Software Corporation. All rights reserved.\n * Licensed under commercial license. See LICENSE.md in the package root for more information\n *-------------------------------------------------------------------------------------------\n */\n\"use client\";\nimport { chartBaseTheme as n } from \"@progress/kendo-charts\";\nconst r = (t) => `${t.fontWeight} ${t.fontSize} ${t.fontFamily}`, d = (t) => window.getComputedStyle(t).backgroundColor, v = (t) => t.toLowerCase().charCodeAt(0) - 97, u = (t) => {\n const e = t.match(/series-([a-z])$/);\n if (e !== null)\n return v(e[1]);\n const s = t.split(\"--series-\")[1];\n return parseInt(s, 10) - 1;\n}, m = 30, p = () => {\n let t = `\n
\n
\n
\n
\n
\n
\n`;\n for (let e = 0; e < m; e++)\n t += `\n
`;\n return t;\n}, f = `\n
\n
\n
\n\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n\n
\n
\n
\n
\n
\n
\n\n
\n
\n
\n
\n
\n
\n\n
\n
\n ${p()}\n
\n`;\nclass y {\n constructor(e) {\n this.store = e;\n }\n setStyle(e, s) {\n this.store.dispatch({ type: \"set\", payload: { field: e, value: s } });\n }\n setColors() {\n this.mapColor(\"axisDefaults.crosshair.color\", \"chart-crosshair-background\"), this.mapColor(\"axisDefaults.labels.color\", \"normal-text-color\"), this.mapColor(\"axisDefaults.line.color\", \"chart-major-lines\"), this.mapColor(\"axisDefaults.majorGridLines.color\", \"chart-major-lines\"), this.mapColor(\"axisDefaults.minorGridLines.color\", \"chart-minor-lines\"), this.mapColor(\"axisDefaults.notes.icon.background\", \"chart-notes-background\"), this.mapColor(\"axisDefaults.notes.icon.border.color\", \"chart-notes-border\"), this.mapColor(\"axisDefaults.notes.line.color\", \"chart-notes-lines\"), this.mapColor(\"axisDefaults.title.color\", \"normal-text-color\"), this.mapColor(\"chartArea.background\", \"background\"), this.mapColor(\"legend.inactiveItems.labels.color\", \"chart-inactive\"), this.mapColor(\"legend.inactiveItems.markers.color\", \"chart-inactive\"), this.mapColor(\"legend.labels.color\", \"normal-text-color\"), this.mapColor(\"seriesDefaults.boxPlot.downColor\", \"chart-major-lines\"), this.mapColor(\"seriesDefaults.boxPlot.mean.color\", \"base\"), this.mapColor(\"seriesDefaults.boxPlot.median.color\", \"base\"), this.mapColor(\"seriesDefaults.boxPlot.whiskers.color\", \"primary\"), this.mapColor(\"seriesDefaults.bullet.target.color\", \"normal-text-color\"), this.mapColor(\"seriesDefaults.candlestick.downColor\", \"normal-text-color\"), this.mapColor(\"seriesDefaults.candlestick.line.color\", \"normal-text-color\"), this.mapColor(\"seriesDefaults.errorBars.color\", \"chart-error-bars-background\"), this.mapColor(\"seriesDefaults.horizontalWaterfall.line.color\", \"chart-major-lines\"), this.mapColor(\"seriesDefaults.icon.border.color\", \"chart-major-lines\"), this.mapColor(\"seriesDefaults.labels.background\", \"background\"), this.mapColor(\"seriesDefaults.labels.color\", \"normal-text-color\"), this.mapColor(\"seriesDefaults.notes.icon.background\", \"chart-notes-background\"), this.mapColor(\"seriesDefaults.notes.icon.border.color\", \"chart-notes-border\"), this.mapColor(\"seriesDefaults.notes.line.color\", \"chart-notes-lines\"), this.mapColor(\"seriesDefaults.verticalBoxPlot.downColor\", \"chart-major-lines\"), this.mapColor(\"seriesDefaults.verticalBoxPlot.mean.color\", \"base\"), this.mapColor(\"seriesDefaults.verticalBoxPlot.median.color\", \"base\"), this.mapColor(\"seriesDefaults.verticalBoxPlot.whiskers.color\", \"primary\"), this.mapColor(\"seriesDefaults.verticalBullet.target.color\", \"normal-text-color\"), this.mapColor(\"seriesDefaults.waterfall.line.color\", \"chart-major-lines\"), this.mapColor(\"title.color\", \"normal-text-color\"), this.mapColor(\"subtitle.color\", \"normal-text-color\");\n const e = parseFloat(this.queryStyle(\"chart-area-opacity\").opacity);\n isNaN(e) || (this.setStyle(\"seriesDefaults.area.opacity\", e), this.setStyle(\"seriesDefaults.radarArea.opacity\", e), this.setStyle(\"seriesDefaults.verticalArea.opacity\", e), this.setStyle(\"seriesDefaults.labels.opacity\", e)), this.setInactiveOpacity([\"area\", \"verticalArea\"], \"chart-area-inactive-opacity\"), this.setInactiveOpacity([\"line\", \"verticalLine\"], \"chart-line-inactive-opacity\");\n }\n setFonts() {\n const e = r(this.queryStyle(\"chart-font\")), s = r(this.queryStyle(\"chart-title-font\")), a = r(this.queryStyle(\"chart-pane-title-font\")), o = r(this.queryStyle(\"chart-label-font\"));\n this.setStyle(\"axisDefaults.labels.font\", o), this.setStyle(\"axisDefaults.notes.label.font\", e), this.setStyle(\"axisDefaults.title.font\", e), this.setStyle(\"legend.labels.font\", e), this.setStyle(\"seriesDefaults.labels.font\", o), this.setStyle(\"seriesDefaults.notes.label.font\", e), this.setStyle(\"title.font\", s), this.setStyle(\"subtitle.font\", a), this.setStyle(\"paneDefaults.title.font\", a);\n }\n setSeriesColors() {\n const e = this.element, s = [].slice.call(e.querySelectorAll(\".k-var--series div\")), a = d(e.querySelector(\".k-var--series-unset\")), o = s.reduce(\n (l, i) => {\n const h = u(i.className), c = d(i);\n return c !== a && (l[h] = c), l;\n },\n []\n // Will populate the series colors in this array\n );\n this.setStyle(\"seriesColors\", o);\n }\n mapColor(e, s) {\n this.setStyle(e, this.queryStyle(s).backgroundColor);\n }\n queryStyle(e) {\n const s = this.element;\n return window.getComputedStyle(s.querySelector(`.k-var--${e}`));\n }\n setInactiveOpacity(e, s) {\n const a = parseFloat(this.queryStyle(s).opacity);\n !isNaN(a) && a < 1 && e.forEach(\n (o) => this.setStyle(`seriesDefaults.${o}.highlight.inactiveOpacity`, a)\n );\n }\n}\nconst C = (t, e, s) => {\n const a = new y(t);\n if (typeof s == \"undefined\") {\n t.dispatch({ type: \"push\", payload: n() });\n return;\n }\n const o = a.element = s.createElement(\"div\");\n o.style.display = \"none\", o.innerHTML = f, s.body.appendChild(o);\n try {\n t.dispatch({ type: \"push\", payload: n() }), a.setColors(), a.setFonts(), a.setSeriesColors();\n } finally {\n s.body.removeChild(a.element), delete a.element, e();\n }\n};\nexport {\n C as loadTheme\n};\n","/**\n * @license\n *-------------------------------------------------------------------------------------------\n * Copyright © 2024 Progress Software Corporation. All rights reserved.\n * Licensed under commercial license. See LICENSE.md in the package root for more information\n *-------------------------------------------------------------------------------------------\n */\n\"use client\";\nimport { canUseDOM as u } from \"@progress/kendo-react-common\";\nconst l = 1e3 / 60, T = (i) => {\n let o, s, t = [];\n const n = () => o, c = (e) => {\n o = i(o, e), u && (window.clearTimeout(s), s = window.setTimeout(() => t.forEach((r) => r()), l));\n }, a = (e) => (t.push(e), () => t = t.filter((r) => r !== e));\n return c({}), { getState: n, dispatch: c, subscribe: a };\n};\nexport {\n l as THROTTLE_MS,\n T as createStore\n};\n","/**\n * @license\n *-------------------------------------------------------------------------------------------\n * Copyright © 2024 Progress Software Corporation. All rights reserved.\n * Licensed under commercial license. See LICENSE.md in the package root for more information\n *-------------------------------------------------------------------------------------------\n */\n\"use client\";\nconst u = (t, e) => e.chartCollectionIdxKey ? c.collectionConfigurationItem(t, e) : e.chartKey ? c.configurationItem(t, e) : {}, a = (t, e) => {\n if (e.type)\n switch (e.type) {\n case \"set\":\n return c.themeItem(t, e);\n case \"push\":\n return Object.assign(t, e.payload);\n default:\n return t;\n }\n else\n return {};\n}, p = (t, e) => {\n if (e.type)\n switch (e.type) {\n case \"add\":\n return [...t, e.payload];\n case \"remove\":\n return t.filter((l) => l !== e.payload);\n default:\n return t;\n }\n else\n return [];\n}, c = {\n configurationItem(t, e) {\n return Object.assign(t, {\n [e.chartKey]: e.payload\n });\n },\n collectionConfigurationItem(t, e) {\n let l = !1;\n const [o, n] = e.chartCollectionIdxKey.split(\"_\"), i = t[o].map((s, r) => parseInt(n, 10) === r ? (l = !0, e.payload) : s);\n return l === !1 && i.splice(parseInt(n, 10), 0, e.payload), Object.assign(t, {\n [o]: i\n });\n },\n themeItem(t, e) {\n let l = {}, o = Object.assign(l, t);\n const { field: n, value: i } = e.payload, s = n.split(\".\");\n let r = s.shift();\n for (; s.length > 0; )\n l = l[r] = l[r] || {}, r = s.shift();\n return l[r] = i, o;\n }\n};\nexport {\n p as observersReducer,\n u as optionsReducer,\n a as themeReducer\n};\n","/**\n * @license\n *-------------------------------------------------------------------------------------------\n * Copyright © 2024 Progress Software Corporation. All rights reserved.\n * Licensed under commercial license. See LICENSE.md in the package root for more information\n *-------------------------------------------------------------------------------------------\n */\n\"use client\";\nclass h {\n /**\n * @hidden\n */\n constructor(t, s) {\n this.value = t.value, this.category = t.category, this.categoryIndex = t.categoryIx, this.series = t.series, this.dataItem = t.dataItem, this.percentage = t.percentage, this.runningTotal = t.runningTotal, this.total = t.total, this.low = t.low, this.high = t.high, this.xLow = t.xLow, this.xHigh = t.xHigh, this.yLow = t.yLow, this.yHigh = t.yHigh, this.point = t, this.format = ((t.options || {}).tooltip || {}).format || s;\n }\n get formattedValue() {\n return this.format ? this.point.formatValue(this.format) : String(this.value);\n }\n}\nexport {\n h as TooltipPoint\n};\n","/**\n * @license\n *-------------------------------------------------------------------------------------------\n * Copyright © 2024 Progress Software Corporation. All rights reserved.\n * Licensed under commercial license. See LICENSE.md in the package root for more information\n *-------------------------------------------------------------------------------------------\n */\n\"use client\";\nimport * as e from \"react\";\nconst u = \"k-chart-shared-tooltip-marker\", E = (l) => {\n const { categoryText: r, colorMarker: n, colspan: a, nameColumn: o, points: c } = l, m = (t, s) => /* @__PURE__ */ e.createElement(\"tr\", { key: s }, n && /* @__PURE__ */ e.createElement(\"td\", null, /* @__PURE__ */ e.createElement(\n \"span\",\n {\n className: u,\n style: { backgroundColor: t.series.color }\n }\n )), o && /* @__PURE__ */ e.createElement(\"td\", null, t.series.name), /* @__PURE__ */ e.createElement(\"td\", { dangerouslySetInnerHTML: { __html: t.formattedValue } }));\n return /* @__PURE__ */ e.createElement(\"table\", null, /* @__PURE__ */ e.createElement(\"thead\", null, /* @__PURE__ */ e.createElement(\"tr\", null, /* @__PURE__ */ e.createElement(\"th\", { colSpan: a }, r))), /* @__PURE__ */ e.createElement(\"tbody\", null, c.map(m)));\n};\nexport {\n E as SharedTooltipContent\n};\n","/**\n * @license\n *-------------------------------------------------------------------------------------------\n * Copyright © 2024 Progress Software Corporation. All rights reserved.\n * Licensed under commercial license. See LICENSE.md in the package root for more information\n *-------------------------------------------------------------------------------------------\n */\n\"use client\";\nimport * as t from \"react\";\nconst e = t.createContext(null);\ne.displayName = \"ChartContext\";\nexport {\n e as ChartContext\n};\n","/**\n * @license\n *-------------------------------------------------------------------------------------------\n * Copyright © 2024 Progress Software Corporation. All rights reserved.\n * Licensed under commercial license. See LICENSE.md in the package root for more information\n *-------------------------------------------------------------------------------------------\n */\n\"use client\";\nimport * as n from \"react\";\nimport { InstanceObserver as h } from \"@progress/kendo-charts\";\nimport { toDomEvent as l } from \"../events/dom-event.mjs\";\nimport { hasParent as m } from \"../utils/index.mjs\";\nimport { Popup as u } from \"@progress/kendo-react-popup\";\nimport { ChartContext as f } from \"../ChartContext.mjs\";\nconst v = { horizontal: \"fit\", vertical: \"fit\" }, d = \"k-chart-tooltip\", C = \"k-chart-tooltip-wrapper\", r = class r extends n.Component {\n constructor(s, o) {\n super(s, o), this.context = null, this.element = null, this.onChartMouseLeave = (e) => {\n const { syntheticEvent: t } = e;\n return !!m(t.relatedTarget, this.element);\n }, this.onMouseLeave = (e) => {\n const t = l(this, e);\n this.context.childrenObserver.trigger(\"onMouseLeave\", t) && e.preventDefault();\n }, this.popupRef = (e) => {\n this.element = e;\n const t = e && e.closest(\".k-animation-container\");\n t && (t.style.transition = \"initial\");\n }, this.chartObserver = new h(this, {\n onMouseLeave: \"onChartMouseLeave\"\n }), o.observersStore.dispatch({\n type: \"add\",\n payload: this.chartObserver\n });\n }\n render() {\n const { popupShown: s, popupAlign: o, popupOffset: e, popupStyles: t, popupContent: a, className: p } = this.props, c = [d, p].join(\" \").trim();\n return /* @__PURE__ */ n.createElement(\n u,\n {\n animate: !1,\n popupAlign: o,\n offset: e,\n show: s,\n collision: v,\n className: C\n },\n /* @__PURE__ */ n.createElement(\n \"div\",\n {\n className: c,\n style: t,\n onMouseLeave: this.onMouseLeave,\n ref: this.popupRef\n },\n a()\n )\n );\n }\n componentWillUnmount() {\n this.context.observersStore.dispatch({\n type: \"remove\",\n payload: this.chartObserver\n });\n }\n};\nr.contextType = f;\nlet i = r;\nexport {\n i as TooltipPopup\n};\n","/**\n * @license\n *-------------------------------------------------------------------------------------------\n * Copyright © 2024 Progress Software Corporation. All rights reserved.\n * Licensed under commercial license. See LICENSE.md in the package root for more information\n *-------------------------------------------------------------------------------------------\n */\n\"use client\";\nimport * as p from \"react\";\nimport { classNames as d } from \"@progress/kendo-react-common\";\nimport { InstanceObserver as m } from \"@progress/kendo-charts\";\nimport { TooltipPoint as c } from \"./Point.mjs\";\nimport { SharedTooltipContent as f } from \"./SharedTooltipContent.mjs\";\nimport { TooltipPopup as S } from \"./Popup.mjs\";\nimport { ChartContext as y } from \"../ChartContext.mjs\";\nconst T = \"k-chart-shared-tooltip\", x = \"k-chart-tooltip-inverse\", a = class a extends p.Component {\n constructor() {\n super(...arguments), this.context = null, this.state = {\n popupShown: !1\n }, this.chartObserver = null;\n }\n componentDidMount() {\n this.chartObserver = new m(this, {\n showTooltip: \"onShowTooltip\",\n hideTooltip: \"onHideTooltip\"\n }), this.context.observersStore.dispatch({\n type: \"add\",\n payload: this.chartObserver\n });\n }\n render() {\n const { popupContext: t, shared: e, className: n, ...r } = this.state, i = this.state.popupShown ? () => {\n const o = this.findRenderFunction();\n if (e)\n return o !== null ? o(t) : /* @__PURE__ */ p.createElement(f, { ...t });\n {\n const u = t.point, l = this.findRenderFunctionByIndex(u.series.index);\n return l !== null ? l(t) : o !== null ? o(t) : /* @__PURE__ */ p.createElement(\n \"span\",\n {\n dangerouslySetInnerHTML: { __html: t.point.formattedValue }\n }\n );\n }\n } : Function.prototype, s = d({\n [T]: e,\n [x]: !!n\n });\n return /* @__PURE__ */ p.createElement(\n S,\n {\n ...r,\n popupContent: i,\n className: s\n }\n );\n }\n componentWillUnmount() {\n this.context.observersStore.dispatch({\n type: \"remove\",\n payload: this.chartObserver\n });\n }\n onShowTooltip(t) {\n const { anchor: e, style: n, shared: r, className: i, crosshair: s } = t;\n let o;\n s || (r ? o = this.createSharedTooltipContext(t) : o = this.createTooltipContext(t), this.setState({\n popupShown: !0,\n popupAlign: e.align,\n popupOffset: e.point,\n popupContext: o,\n popupStyles: n,\n className: i,\n shared: r\n }));\n }\n onHideTooltip() {\n this.setState({\n popupShown: !1,\n popupStyles: {},\n className: void 0\n });\n }\n createSharedTooltipContext(t) {\n const { points: e, categoryText: n } = t, r = e.filter((o) => typeof o.series.name != \"undefined\").length > 0, i = t.series.length > 1;\n let s = 1;\n return r && s++, i && s++, {\n categoryText: n,\n colorMarker: i,\n colspan: s,\n nameColumn: r,\n points: t.points.map((o) => new c(o, t.format))\n };\n }\n createTooltipContext(t) {\n const { point: e, format: n } = t;\n return { point: new c(e, n) };\n }\n findRenderFunctionByIndex(t) {\n const e = this.context.optionsStore.getState().series;\n return e !== void 0 && Array.isArray(e) && e[t] !== void 0 && e[t].hasOwnProperty(\"tooltip\") && e[t].tooltip.hasOwnProperty(\"render\") ? e[t].tooltip.render : null;\n }\n findRenderFunction() {\n const t = this.context.optionsStore.getState().tooltip;\n return t !== void 0 && t.hasOwnProperty(\"render\") ? t.render : null;\n }\n};\na.contextType = y;\nlet h = a;\nexport {\n h as SeriesTooltip\n};\n","/**\n * @license\n *-------------------------------------------------------------------------------------------\n * Copyright © 2024 Progress Software Corporation. All rights reserved.\n * Licensed under commercial license. See LICENSE.md in the package root for more information\n *-------------------------------------------------------------------------------------------\n */\n\"use client\";\nconst n = (e) => e.children;\nn.displayName = \"Container\";\nexport {\n n as Container\n};\n","/**\n * @license\n *-------------------------------------------------------------------------------------------\n * Copyright © 2024 Progress Software Corporation. All rights reserved.\n * Licensed under commercial license. See LICENSE.md in the package root for more information\n *-------------------------------------------------------------------------------------------\n */\n\"use client\";\nimport * as r from \"react\";\nimport { classNames as m } from \"@progress/kendo-react-common\";\nimport { InstanceObserver as S } from \"@progress/kendo-charts\";\nimport { TooltipPopup as d } from \"./Popup.mjs\";\nimport { ChartContext as f } from \"../ChartContext.mjs\";\nconst v = \"k-chart-crosshair-tooltip\", C = \"k-chart-tooltip-inverse\", n = class n extends r.Component {\n constructor(t, o) {\n super(t, o), this.context = null, this.state = {\n popupShown: !1\n }, this.chartObserver = new S(this, {\n showTooltip: \"onShowTooltip\",\n hideTooltip: \"onHideTooltip\"\n }), o.observersStore.dispatch({\n type: \"add\",\n payload: this.chartObserver\n });\n }\n render() {\n const { popupContend: t, className: o, ...e } = this.state, p = this.state.popupShown ? () => t : Function.prototype, s = m({\n [v]: !0,\n [C]: !!o\n });\n return /* @__PURE__ */ r.createElement(\n d,\n {\n ...e,\n popupContent: p,\n className: s\n }\n );\n }\n componentWillUnmount() {\n var t;\n (t = this.context) == null || t.observersStore.dispatch({\n type: \"remove\",\n payload: this.chartObserver\n });\n }\n onShowTooltip(t) {\n const { anchor: o, style: e, className: p, crosshair: s, axisName: a, axisIndex: c, value: l } = t, { name: h, index: u } = this.props;\n s && a === h && c === u && this.setState({\n popupShown: !0,\n popupAlign: o.align,\n popupOffset: o.point,\n popupContend: l,\n popupStyles: e,\n className: p\n });\n }\n onHideTooltip() {\n this.setState({\n popupShown: !1,\n popupStyles: {},\n className: void 0\n });\n }\n};\nn.contextType = f;\nlet i = n;\nexport {\n i as CrosshairTooltip\n};\n","/**\n * @license\n *-------------------------------------------------------------------------------------------\n * Copyright © 2024 Progress Software Corporation. All rights reserved.\n * Licensed under commercial license. See LICENSE.md in the package root for more information\n *-------------------------------------------------------------------------------------------\n */\n\"use client\";\nimport * as r from \"react\";\nimport { Container as u } from \"../Container.mjs\";\nimport { CrosshairTooltip as a } from \"./Crosshair.mjs\";\nimport { ChartContext as h } from \"../ChartContext.mjs\";\nconst l = [\"categoryAxis\", \"valueAxis\", \"xAxis\", \"yAxis\"];\nfunction x(n) {\n const t = {};\n for (let o = 0; o < l.length; o++) {\n const s = m(n, l[o]);\n for (let e = 0; e < s.length; e++) {\n const i = s[e];\n t[i.name + i.index] = i;\n }\n }\n return t;\n}\nfunction m(n, t) {\n const o = [];\n if (n[t]) {\n const s = [].concat(n[t]);\n for (let e = 0; e < s.length; e++) {\n const i = (s[e].crosshair || {}).tooltip;\n i && i.visible && o.push({\n index: e,\n name: t\n });\n }\n }\n return o;\n}\nconst c = class c extends r.Component {\n constructor() {\n super(...arguments), this.context = null, this.state = {\n tooltips: {}\n }, this.storeUnsubscriber = Function.prototype, this.subscriber = () => {\n var t;\n this.setState({\n tooltips: x((t = this.context) == null ? void 0 : t.optionsStore.getState())\n });\n };\n }\n componentDidMount() {\n this.storeUnsubscriber = this.context.optionsStore.subscribe(this.subscriber);\n }\n render() {\n const { tooltips: t } = this.state, o = Object.keys(t).map((s) => /* @__PURE__ */ r.createElement(a, { ...t[s], key: s }));\n return /* @__PURE__ */ r.createElement(u, null, o);\n }\n componentWillUnmount() {\n this.storeUnsubscriber();\n }\n};\nc.contextType = h;\nlet p = c;\nexport {\n p as CrosshairTooltipContainer\n};\n","/**\n * @license\n *-------------------------------------------------------------------------------------------\n * Copyright © 2024 Progress Software Corporation. All rights reserved.\n * Licensed under commercial license. See LICENSE.md in the package root for more information\n *-------------------------------------------------------------------------------------------\n */\n\"use client\";\nconst e = {\n name: \"@progress/kendo-react-charts\",\n productName: \"KendoReact\",\n productCodes: [\"KENDOUIREACT\", \"KENDOUICOMPLETE\"],\n publishDate: 1728906733,\n version: \"\",\n licensingDocsUrl: \"https://www.telerik.com/kendo-react-ui/components/my-license/\"\n};\nexport {\n e as packageMetadata\n};\n","/**\n * @license\n *-------------------------------------------------------------------------------------------\n * Copyright © 2024 Progress Software Corporation. All rights reserved.\n * Licensed under commercial license. See LICENSE.md in the package root for more information\n *-------------------------------------------------------------------------------------------\n */\n\"use client\";\nimport * as l from \"react\";\nimport f from \"prop-types\";\nimport { provideIntlService as v, registerForIntl as w } from \"@progress/kendo-react-intl\";\nimport { InstanceObserver as g } from \"@progress/kendo-charts\";\nimport { validatePackage as I, shouldShowValidationUI as D, WatermarkOverlay as O, canUseDOM as C } from \"@progress/kendo-react-common\";\nimport { toggle as S, hasParent as y } from \"./utils/index.mjs\";\nimport { create as E } from \"./events/chart-event-builder.mjs\";\nimport { toDomEvent as P } from \"./events/dom-event.mjs\";\nimport { loadTheme as T } from \"./theming/theme-service.mjs\";\nimport { createStore as m } from \"./store/store.mjs\";\nimport { optionsReducer as k, observersReducer as L, themeReducer as x } from \"./store/reducer.mjs\";\nimport { SeriesTooltip as U } from \"./tooltip/Series.mjs\";\nimport { CrosshairTooltipContainer as R } from \"./tooltip/CrosshairContainer.mjs\";\nimport { ChartContext as M } from \"./ChartContext.mjs\";\nimport { packageMetadata as b } from \"./package-metadata.mjs\";\nimport { DrilldownEvent as W } from \"./events/drilldown-event.mjs\";\nconst d = class d extends l.Component {\n constructor(t) {\n super(t), this.chartInstance = null, this.surface = null, this._element = null, this.optionsStore = {}, this.optionsUnsubscriber = Function.prototype, this.themeStore = {}, this.themeUnsubscriber = Function.prototype, this.observersStore = {}, this.suppressTransitions = !1, this.showLicenseWatermark = !1, this.onRender = (e) => {\n this.chartInstance !== null && (this.surface = e.sender.surface, this.trigger(\"render\", e));\n }, this.onDrilldown = (e) => {\n var a;\n const { series: s } = this.optionsStore.getState(), r = s.find((n) => n.name === e.series.name);\n if (!r.drilldownSeriesFactory)\n return !0;\n const i = \"onDrilldown\";\n if (this.props.hasOwnProperty(i)) {\n const n = { seriesName: r.name, drilldownValue: e.value }, h = [...((a = this.props.drilldownState) == null ? void 0 : a.steps) || [], n], c = this.props.getTarget(), p = {\n ...e,\n currentState: this.props.drilldownState,\n nextState: { steps: h }\n }, o = new W(p, c);\n this.props[i].call(void 0, o);\n }\n return !0;\n }, this.onLegendItemClick = (e) => {\n if (this.chartInstance !== null)\n if (this.props.onLegendItemClick)\n this.trigger(\"legendItemClick\", e);\n else {\n const { series: s } = this.optionsStore.getState();\n if (!s)\n return;\n let r = {};\n const { seriesIndex: i, pointIndex: a } = e, n = s[i];\n if (a === void 0)\n r = Object.assign({}, n, { visible: S(n.visible) });\n else {\n const h = n.pointVisibility = n.pointVisibility || [];\n h[a] = S(h[a]), r = Object.assign({}, n);\n }\n this.optionsStore.dispatch({\n chartCollectionIdxKey: `series_${i}`,\n payload: r\n }), this.suppressTransitions = !0;\n }\n }, this.onWindowResize = () => {\n this.chartInstance !== null && this.chartInstance.resize();\n }, this.onChartMouseLeave = (e) => {\n const s = P(this, e);\n this.triggerDomEvent(\"onMouseLeave\", s) ? e.preventDefault() : this.chartInstance !== null && this.chartInstance.hideElements();\n }, this.onChildMouseLeave = (e) => {\n const { syntheticEvent: s } = e;\n return this.chartInstance && !y(s.relatedTarget, this.element) && this.chartInstance.hideElements(), !1;\n }, I(b), this.showLicenseWatermark = D(b), this.optionsStore = m(k), this.observersStore = m(L), this.childrenObserver = new g(this, { onMouseLeave: \"onChildMouseLeave\" }), this.state = {\n optionsStore: this.optionsStore,\n observersStore: this.observersStore,\n childrenObserver: this.childrenObserver,\n drilldownState: { steps: [] }\n }, this.themeStore = m(x), this.chartObserver = new g(this, {\n render: \"onRender\",\n legendItemClick: \"onLegendItemClick\",\n drilldown: \"onDrilldown\"\n });\n }\n /**\n * @hidden\n */\n get element() {\n return this._element;\n }\n /**\n * @hidden\n */\n static getDerivedStateFromProps(t, e) {\n return {\n ...e,\n drilldownState: t.drilldownState || []\n };\n }\n /**\n * @hidden\n */\n componentDidMount() {\n var e;\n const t = ((e = this._element) == null ? void 0 : e.ownerDocument) || document;\n T(this.themeStore, this.instantiateCoreChart.bind(this), t), this.optionsUnsubscriber = this.optionsStore.subscribe(this.refresh.bind(this)), this.themeUnsubscriber = this.themeStore.subscribe(this.refresh.bind(this)), window.addEventListener(\"resize\", this.onWindowResize);\n }\n /**\n * @hidden\n */\n componentWillUnmount() {\n this.optionsUnsubscriber(), this.themeUnsubscriber(), this.chartInstance !== null && (this.chartInstance.destroy(), this.chartInstance = null), window.removeEventListener(\"resize\", this.onWindowResize);\n }\n /**\n * @hidden\n */\n componentDidUpdate(t) {\n const { dir: e, children: s, ...r } = this.props;\n if (this.chartInstance !== null) {\n const i = v(this), a = this.chartInstance.chartService, n = i.locale !== a._intlService.locale, h = Object.entries(t).filter((c) => c[0] !== \"dir\" && c[0] !== \"children\").some((c) => {\n const [p, o] = c;\n return !(r.hasOwnProperty(p) && r[p] === o);\n });\n n && (this.chartInstance.chartService._intlService = i, this.chartInstance.chartService.format._intlService = i, h || this.chartInstance.noTransitionsRedraw()), h && this.refresh(), t.dir !== e && this.chartInstance.setDirection(this.getDirection(e));\n }\n }\n /**\n * @hidden\n */\n render() {\n const { style: t = {}, className: e, wrapper: s, children: r } = this.props, i = Object.assign({}, t, { position: \"relative\" }), a = l.createElement(\n s,\n {\n className: e,\n style: i,\n key: \"chartElement\"\n },\n /* @__PURE__ */ l.createElement(\"div\", { onMouseLeave: this.onChartMouseLeave, ref: (n) => this._element = n, className: \"k-chart-surface\" }, r),\n /* @__PURE__ */ l.createElement(l.Fragment, null, this.showLicenseWatermark && /* @__PURE__ */ l.createElement(O, null))\n );\n return /* @__PURE__ */ l.createElement(M.Provider, { value: this.state }, /* @__PURE__ */ l.createElement(U, { key: \"seriesTooltip\" }), /* @__PURE__ */ l.createElement(R, { key: \"crosshairTooltips\" }), a);\n }\n /**\n * @hidden\n */\n getDirection(t) {\n return (t !== void 0 ? t : C && window.getComputedStyle(this.element).direction || \"ltr\") === \"rtl\";\n }\n /**\n * @hidden\n */\n getChartOptions() {\n const {\n renderAs: t,\n pannable: e,\n zoomable: s,\n paneDefaults: r,\n panes: i,\n transitions: a,\n seriesColors: n,\n seriesDefaults: h,\n axisDefaults: c,\n deriveOptionsFromParent: p\n } = this.props;\n let o = {};\n return t !== void 0 && (o.renderAs = t), e !== void 0 && (o.pannable = e), s !== void 0 && (o.zoomable = s), r !== void 0 && (o.paneDefaults = r), i !== void 0 && (o.panes = i), a !== void 0 && (o.transitions = a), n !== void 0 && (o.seriesColors = n), h !== void 0 && (o.seriesDefaults = h), c !== void 0 && (o.axisDefaults = c), o = Object.assign(o, this.optionsStore.getState()), p && (o = p(o)), o;\n }\n /**\n * @hidden\n */\n refresh() {\n if (this.chartInstance !== null) {\n const t = this.themeStore.getState(), e = this.getChartOptions(), s = e.transitions;\n this.suppressTransitions && (e.transitions = !1), this.props.onRefresh ? this.props.onRefresh.call(void 0, e, t, this.chartInstance) : this.chartInstance.setOptions(e, t), this.suppressTransitions && (e.transitions = s, this.suppressTransitions = !1);\n }\n }\n /**\n * @hidden\n */\n instantiateCoreChart() {\n const { dir: t, chartConstructor: e } = this.props, s = this.getChartOptions();\n this.chartInstance = new e(this.element, s, this.themeStore.getState(), {\n rtl: this.getDirection(t),\n intlService: v(this),\n observer: this.chartObserver,\n sender: this\n });\n }\n /* Triggers public dom event handlers */\n /**\n * @hidden\n */\n trigger(t, e) {\n const s = this.props.getTarget(), r = E(t, e, s), i = \"on\" + t.charAt(0).toUpperCase() + t.slice(1), a = this.observersStore.getState();\n let n = !1;\n for (let h = 0; h < a.length; h++)\n a[h].trigger(t, e) && (n = !0);\n return n === !1 && r && this.props.hasOwnProperty(i) ? (this.props[i].call(void 0, r), r.isDefaultPrevented && r.isDefaultPrevented()) : n;\n }\n /* Used by (event)InstanceObserver to check the wrapper for supported events */\n /**\n * @hidden\n */\n requiresHandlers(t) {\n for (let e = 0; e < t.length; e++) {\n const s = t[e], r = \"on\" + s.charAt(0).toUpperCase() + s.slice(1);\n if (this.props.hasOwnProperty(r))\n return !0;\n }\n return !1;\n }\n /* Triggers private dom event handlers */\n /**\n * @hidden\n */\n triggerDomEvent(t, e) {\n const s = this.observersStore.getState();\n let r = !1;\n for (let i = 0; i < s.length; i++)\n s[i].trigger(t, e) && (r = !0);\n return r;\n }\n};\nd.propTypes = {\n dir: f.string,\n renderAs: f.oneOf([\"svg\", \"canvas\"])\n}, d.defaultProps = {\n renderAs: \"svg\"\n};\nlet u = d;\nw(u);\nexport {\n u as BaseChart\n};\n","/**\n * @license\n *-------------------------------------------------------------------------------------------\n * Copyright © 2024 Progress Software Corporation. All rights reserved.\n * Licensed under commercial license. See LICENSE.md in the package root for more information\n *-------------------------------------------------------------------------------------------\n */\n\"use client\";\nimport * as o from \"react\";\nimport { InstanceObserver as u } from \"@progress/kendo-charts\";\nimport { ChartContext as m } from \"./ChartContext.mjs\";\nconst c = class c extends o.Component {\n constructor(e, t) {\n super(e, t), this.context = null, this.state = {\n donutCenterStyles: null\n }, this.chartObserver = new u(this, {\n render: \"onRender\"\n }), t.observersStore.dispatch({\n type: \"add\",\n payload: this.chartObserver\n });\n }\n render() {\n const { render: e } = this.props, { donutCenterStyles: t } = this.state;\n let r = null;\n return e && t && (r = /* @__PURE__ */ o.createElement(\"div\", { className: \"k-chart-donut-center\", style: t }, /* @__PURE__ */ o.createElement(e, null))), r;\n }\n onRender(e) {\n var l;\n const t = (l = this.context) == null ? void 0 : l.optionsStore.getState().series, r = Array.isArray(t) ? t[0] : null, i = e.sender._plotArea.charts;\n if (!r || r.type !== \"donut\" || i[0].points.length === 0)\n return;\n const s = i[0].points[0].sector, n = s.innerRadius, h = s.center.y - n, p = s.center.x - n, a = n * 2;\n this.setState({\n donutCenterStyles: {\n height: a,\n left: p,\n top: h,\n width: a\n }\n });\n }\n};\nc.contextType = m;\nlet d = c;\nexport {\n d as DonutCenter\n};\n","/**\n * @license\n *-------------------------------------------------------------------------------------------\n * Copyright © 2024 Progress Software Corporation. All rights reserved.\n * Licensed under commercial license. See LICENSE.md in the package root for more information\n *-------------------------------------------------------------------------------------------\n */\n\"use client\";\nimport * as t from \"react\";\nimport { BaseChart as h } from \"./BaseChart.mjs\";\nimport { DonutCenter as i } from \"./DonutCenter.mjs\";\nimport { Chart as l } from \"@progress/kendo-charts\";\nimport { classNames as u } from \"@progress/kendo-react-common\";\nclass f extends t.Component {\n constructor() {\n super(...arguments), this._baseChart = null, this.getTarget = () => this;\n }\n /**\n * @hidden\n */\n get chartInstance() {\n return this._baseChart !== null ? this._baseChart.chartInstance : null;\n }\n /**\n * The Drawing `Surface` of the Chart.\n */\n get surface() {\n return this._baseChart !== null ? this._baseChart.surface : null;\n }\n /**\n * The DOM element of the Chart.\n */\n get element() {\n return this._baseChart !== null ? this._baseChart.element : null;\n }\n /**\n * @hidden\n */\n render() {\n const { donutCenterRender: e, children: r, className: a, ...s } = this.props;\n return /* @__PURE__ */ t.createElement(\n h,\n {\n ...s,\n ref: (n) => this._baseChart = n,\n chartConstructor: l,\n getTarget: this.getTarget,\n wrapper: \"div\",\n className: u(\"k-chart k-widget\", a)\n },\n r,\n /* @__PURE__ */ t.createElement(i, { render: e })\n );\n }\n}\nexport {\n f as Chart\n};\n","/**\n * @license\n *-------------------------------------------------------------------------------------------\n * Copyright © 2024 Progress Software Corporation. All rights reserved.\n * Licensed under commercial license. See LICENSE.md in the package root for more information\n *-------------------------------------------------------------------------------------------\n */\n\"use client\";\nimport * as r from \"react\";\nimport { createStore as p } from \"../../store/store.mjs\";\nimport { optionsReducer as c } from \"../../store/reducer.mjs\";\nimport { ChartContext as h } from \"../../ChartContext.mjs\";\nconst s = class s extends r.Component {\n constructor(t, e) {\n super(t, e), this.optionsStore = e.optionsStore, this.childStore = p(c);\n }\n render() {\n const { children: t } = this.props;\n return t !== void 0 ? r.Children.map(t, (e) => r.isValidElement(e) ? this.renderChildren(e) : e) : null;\n }\n componentDidMount() {\n this.dispatch();\n }\n componentDidUpdate() {\n this.dispatch();\n }\n dispatch() {\n const { _chartKey: t, _chartCollectionIdxKey: e, _parentStore: o, children: a, ...n } = this.props;\n (o || this.optionsStore).dispatch({\n chartKey: t,\n chartCollectionIdxKey: e,\n payload: Object.assign({}, n, this.childStore.getState())\n });\n }\n renderChildren(t) {\n const { children: e } = t.props, o = {\n ...t.props,\n _parentStore: this.childStore\n };\n return r.cloneElement(t, o, e);\n }\n};\ns.contextType = h;\nlet i = s;\nexport {\n i as ConfigurationComponent\n};\n","/**\n * @license\n *-------------------------------------------------------------------------------------------\n * Copyright © 2024 Progress Software Corporation. All rights reserved.\n * Licensed under commercial license. See LICENSE.md in the package root for more information\n *-------------------------------------------------------------------------------------------\n */\n\"use client\";\nimport * as t from \"react\";\nimport { ConfigurationComponent as r } from \"./base/ConfigurationComponent.mjs\";\nconst n = (e) => /* @__PURE__ */ t.createElement(r, { visible: !0, ...e, _chartKey: \"legend\" });\nn.displayName = \"ChartLegend\";\nexport {\n n as ChartLegend\n};\n","/**\n * @license\n *-------------------------------------------------------------------------------------------\n * Copyright © 2024 Progress Software Corporation. All rights reserved.\n * Licensed under commercial license. See LICENSE.md in the package root for more information\n *-------------------------------------------------------------------------------------------\n */\n\"use client\";\nimport * as s from \"react\";\nimport { ChartContext as i } from \"../../ChartContext.mjs\";\nconst p = class p extends s.Component {\n constructor(t, r) {\n super(t, r), this.optionsStore = r.optionsStore;\n }\n renderChildren(t, r) {\n const { children: o } = t.props, { _chartKey: c, _parentStore: e } = this.props, n = {\n ...t.props,\n _chartCollectionIdxKey: `${c}_${r}`,\n _parentStore: e\n };\n return s.cloneElement(t, n, o);\n }\n render() {\n const { _chartKey: t, _parentStore: r, children: o } = this.props;\n return (r || this.optionsStore).dispatch({\n chartKey: t,\n payload: []\n }), s.Children.map(o, (e, n) => s.isValidElement(e) ? this.renderChildren(e, n) : e);\n }\n};\np.contextType = i;\nlet a = p;\nexport {\n a as CollectionConfigurationComponent\n};\n","/**\n * @license\n *-------------------------------------------------------------------------------------------\n * Copyright © 2024 Progress Software Corporation. All rights reserved.\n * Licensed under commercial license. See LICENSE.md in the package root for more information\n *-------------------------------------------------------------------------------------------\n */\n\"use client\";\nimport * as r from \"react\";\nimport { ConfigurationComponent as m } from \"./base/ConfigurationComponent.mjs\";\nimport { ChartContext as d } from \"../ChartContext.mjs\";\nconst c = (t) => {\n let l = (e) => /* @__PURE__ */ r.createElement(r.Fragment, null);\n t.drilldownSeriesFactory && (l = t.drilldownSeriesFactory);\n const n = (e) => {\n var a, o;\n return e && ((o = (a = e.drilldownState) == null ? void 0 : a.steps) == null ? void 0 : o.find(({ seriesName: i }) => i === t.name));\n };\n return /* @__PURE__ */ r.createElement(d.Consumer, null, (e) => n(e) ? /* @__PURE__ */ r.createElement(\n l,\n {\n _chartCollectionIdxKey: t._chartCollectionIdxKey,\n drilldownValue: n(e).drilldownValue\n }\n ) : /* @__PURE__ */ r.createElement(m, { ...t }));\n};\nc.displayName = \"ChartSeriesItem\";\nexport {\n c as ChartSeriesItem\n};\n","/**\n * @license\n *-------------------------------------------------------------------------------------------\n * Copyright © 2024 Progress Software Corporation. All rights reserved.\n * Licensed under commercial license. See LICENSE.md in the package root for more information\n *-------------------------------------------------------------------------------------------\n */\n\"use client\";\nimport * as i from \"react\";\nimport { CollectionConfigurationComponent as n } from \"./base/CollectionConfigurationComponent.mjs\";\nimport { ChartSeriesItem as a } from \"./SeriesItem.mjs\";\nimport { validateChildren as m } from \"../utils/index.mjs\";\nconst r = (e) => /* @__PURE__ */ i.createElement(n, { ...e, _chartKey: \"series\" });\nr.propTypes = {\n children: function(e, t, o) {\n return m(e, t, o, a);\n }\n};\nr.displayName = \"ChartSeries\";\nexport {\n r as ChartSeries\n};\n","// framework\r\nimport { Link } from \"react-router-dom\";\r\n\r\nexport default function OpggsApplicationLinkView(props: { applicationId: string; applicationName: string | undefined }) {\r\n return (\r\n \r\n {props.applicationName}\r\n \r\n );\r\n}\r\n","// extracted by mini-css-extract-plugin\nexport default {\"helpView\":\"HelpView_helpView__erM8o\"};","import React, { useEffect, useState } from \"react\";\r\nimport { QuestionIcon } from \"@primer/octicons-react\";\r\nimport { Collapse } from \"react-bootstrap\";\r\nimport { uniqueId } from \"lodash\";\r\n\r\nimport styles from \"./HelpView.module.css\";\r\n\r\n// NOTE: Help control is not opinionated about layout and provides a (inline) button and (block) div only with no container\r\nfunction HelpView(props: { id?: string; title: string; children: React.ReactNode }) {\r\n const [show, setShow] = useState(false);\r\n const [id] = useState(props.id ? props.id : uniqueId(\"helpView_\"));\r\n\r\n useEffect(() => {\r\n setShow(false);\r\n }, [props.children]);\r\n\r\n return (\r\n <>\r\n \r\n \r\n
\r\n {props.children}\r\n
\r\n
\r\n \r\n );\r\n}\r\n\r\nexport default HelpView;\r\n","// framework\r\nimport { useState } from \"react\";\r\n// kendo\r\nimport { DropDownList } from \"@progress/kendo-react-dropdowns\";\r\nimport { Grid, GridColumn } from \"@progress/kendo-react-grid\";\r\nimport { process, orderBy, State } from \"@progress/kendo-data-query\";\r\nimport { Chart, ChartSeries, ChartSeriesItem, ChartLegend } from \"@progress/kendo-react-charts\";\r\n// api\r\nimport * as Client from \"../../../../api/Client\";\r\n// common\r\nimport ApplicationLink from \"../../../../common/links/OpggsApplicationLinkView\";\r\nimport Help from \"../../../../common/help/HelpView\";\r\n// other\r\nimport * as GlobalHelpers from \"../../../../common/GlobalHelpers\";\r\nimport CustomGridCell from \"../../../../common/kendoGrid/CustomGridCell\";\r\nimport { createGridColumnFilterMenu } from \"../../../../common/kendoGrid/GridColumnFilterMenu\";\r\nimport { createGridColumnCheckboxFilterMenu } from \"../../../../common/kendoGrid/GridColumnCheckboxFilterMenu\";\r\n\r\nfunction OpggsApplicationTrackingListView(props: {\r\n isCompleted: boolean;\r\n applicationTrackingType: Client.OpggsApplicationTrackingTypeEnum | undefined;\r\n applicationTrackingTypes: Client.GetPublicApplicationsTrackingTrackingTypeDto[];\r\n typeSummaryItems: Client.GetPublicApplicationsTrackingTrackingTypeSummaryItemDto[];\r\n statusSummaryItems: Client.GetPublicApplicationsTrackingTrackingStatusSummaryItemDto[];\r\n listItems: Client.GetPublicApplicationsTrackingApplicationListItemDto[];\r\n onFormSubmit: (isCompleted: boolean, applicationTrackingType: Client.OpggsApplicationTrackingTypeEnum | undefined) => void;\r\n}) {\r\n // grid state\r\n const initialGridState = {\r\n sort: [\r\n { field: \"implementedDate\", dir: \"desc\" },\r\n { field: \"lodgedDate\", dir: \"desc\" },\r\n ],\r\n skip: 0,\r\n take: 10,\r\n } as State;\r\n const [gridState, setGridState] = useState(initialGridState);\r\n\r\n // constants\r\n const inProgressRadioValue = \"inProgress\";\r\n const completedRadioValue = \"completed\";\r\n const defaultApplicationTrackingType = new Client.GetPublicApplicationsTrackingTrackingTypeDto({ name: \"All OPGGS Applications\" });\r\n\r\n // use state\r\n const [isCompleted, setIsCompleted] = useState(props.isCompleted);\r\n const [selectedRadioValue, setSelectedRadioValue] = useState(GlobalHelpers.convertBooleanToRadioValue(props.isCompleted, completedRadioValue, inProgressRadioValue));\r\n const [applicationTrackingType, setApplicationTrackingType] = useState(props.applicationTrackingType);\r\n const [selectedApplicationTrackingType, setSelectedApplicationTrackingType] = useState(props.applicationTrackingTypes.find((t) => t.id === props.applicationTrackingType));\r\n\r\n // sort application types by name ascending and insert 'All' option (no type selected)\r\n const sortedApplicationTrackingTypes = orderBy(props.applicationTrackingTypes, [{ field: \"name\", dir: \"asc\" }]);\r\n // sort application type summary items by name ascending\r\n const sortedTypeSummaryItems = orderBy(props.typeSummaryItems, [{ field: \"applicationTrackingTypeName\", dir: \"asc\" }]);\r\n // sort application status summary items by public status display order\r\n const sortedStatusSummaryItems = orderBy(props.statusSummaryItems, [{ field: \"displayOrder\", dir: \"asc\" }]);\r\n\r\n // local handlers\r\n function onRadioValueChanged(e: React.ChangeEvent) {\r\n setSelectedRadioValue(e.target.value);\r\n\r\n if (e.target.value === inProgressRadioValue) setIsCompleted(false);\r\n if (e.target.value === completedRadioValue) setIsCompleted(true);\r\n }\r\n\r\n function onApplicationTrackingTypeChanged(e: any) {\r\n setSelectedApplicationTrackingType(e.target.value);\r\n setApplicationTrackingType(e.target.value?.id);\r\n }\r\n\r\n function onFormSubmit(e: any) {\r\n e.preventDefault(); // stops posting\r\n props.onFormSubmit(isCompleted, applicationTrackingType);\r\n setGridState(initialGridState);\r\n }\r\n\r\n function onResetClicked() {\r\n // reset tracking type\r\n setSelectedApplicationTrackingType(defaultApplicationTrackingType);\r\n setApplicationTrackingType(undefined);\r\n // reset completed\r\n setSelectedRadioValue(inProgressRadioValue);\r\n setIsCompleted(false);\r\n\r\n props.onFormSubmit(false, undefined);\r\n setGridState(initialGridState);\r\n }\r\n\r\n function onSeriesClick(e: any) {\r\n let typeClicked = e.dataItem.applicationTrackingType;\r\n setSelectedApplicationTrackingType(props.applicationTrackingTypes.find((t) => t.id === typeClicked));\r\n setApplicationTrackingType(typeClicked);\r\n props.onFormSubmit(isCompleted, typeClicked);\r\n setGridState(initialGridState);\r\n }\r\n\r\n function labelContent(e: any): string {\r\n if (!e || !e.value || e.value === 0) return \"\";\r\n return `${e.category}: ${e.value}`;\r\n }\r\n\r\n function legendLabelContent(e: any): string {\r\n return `${e.text}: ${e.value}`;\r\n }\r\n\r\n function getTypeSummaryChartDescription(): string {\r\n const baseDescription =\r\n \"A pie chart displaying counts of \" + (props.isCompleted ? \"Applications completed within the last 12 months\" : \"in progress Applications\") + \", grouped by Application Type.\";\r\n if (sortedTypeSummaryItems.length === 0) return baseDescription;\r\n\r\n const typeSummaryResults = sortedTypeSummaryItems.map((i) => `${i.applicationTrackingTypeName}: ${i.total}`).join(\"; \");\r\n return baseDescription + \" The results are: \" + typeSummaryResults + \".\";\r\n }\r\n\r\n function getTypeSummaryChart(legendPosition: \"bottom\" | \"right\") {\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n }\r\n\r\n function getStatusSummaryChartDescription(): string {\r\n const type = props.applicationTrackingTypes.find((t) => t.id === props.applicationTrackingType);\r\n const baseDescription =\r\n (props.isCompleted\r\n ? `A pie chart displaying counts of ${type?.name} Applications completed within the last 12 months`\r\n : `A bar chart displaying counts of in progress ${type?.name} Applications`) + \", grouped by Application Status.\";\r\n if (sortedStatusSummaryItems.length === 0) return baseDescription;\r\n\r\n const statusSummaryResults = sortedStatusSummaryItems.map((i) => `${i.applicationStatusName}: ${i.total}`).join(\"; \");\r\n return baseDescription + \" The results are: \" + statusSummaryResults + \".\";\r\n }\r\n\r\n function getInProgressStatusSummaryChart() {\r\n return (\r\n \r\n {/* - there is no legend for this chart */}\r\n \r\n \r\n \r\n \r\n );\r\n }\r\n\r\n function getCompletedStatusSummaryChart(legendPosition: \"bottom\" | \"right\") {\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n }\r\n\r\n // view\r\n return (\r\n <>\r\n {/* filters */}\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n {/* chart heading */}\r\n
\r\n

\r\n {props.isCompleted ? \"Completed Applications (Last 12 Months)\" : \"Applications in Progress\"}\r\n

\r\n \r\n {props.applicationTrackingType ? getStatusSummaryChartDescription() : getTypeSummaryChartDescription()}\r\n \r\n
\r\n\r\n {/* note on responsiveness - pie charts render better when moving the legend, where-as the bar charts render better by setting a minwidth + x-scroll */}\r\n\r\n {/* type summary chart */}\r\n {!props.applicationTrackingType && (\r\n <>\r\n
\r\n {getTypeSummaryChart(\"bottom\")}\r\n
\r\n
\r\n {getTypeSummaryChart(\"right\")}\r\n
\r\n \r\n )}\r\n\r\n {/* in progress status summary chart */}\r\n {props.applicationTrackingType && !props.isCompleted && (\r\n <>\r\n
\r\n {getInProgressStatusSummaryChart()}\r\n
\r\n

Not all Application Statuses are relevant to all Applications.

\r\n \r\n )}\r\n\r\n {/* completed status summary chart */}\r\n {props.applicationTrackingType && props.isCompleted && (\r\n <>\r\n
\r\n {getCompletedStatusSummaryChart(\"bottom\")}\r\n
\r\n
\r\n {getCompletedStatusSummaryChart(\"right\")}\r\n
\r\n \r\n )}\r\n\r\n {(props.applicationTrackingType === Client.OpggsApplicationTrackingTypeEnum.AcreageReleasePetroleum ||\r\n props.applicationTrackingType === Client.OpggsApplicationTrackingTypeEnum.AcreageReleaseGhg) && (\r\n

\r\n Details of individual Acreage Release Area Applications are not visible in the Public Portal. The number of Acreage Release Area Applications at different Application Statuses can\r\n be viewed in the above chart.\r\n

\r\n )}\r\n {props.applicationTrackingType === Client.OpggsApplicationTrackingTypeEnum.ChangeInControl && (\r\n

\r\n Details of individual Change in Control Applications are not visible in the Public Portal. The number of Change in Control Applications at different Application Statuses can be\r\n viewed in the above chart.\r\n

\r\n )}\r\n\r\n {/* results grid */}\r\n {\r\n setGridState(e.dataState);\r\n }}\r\n >\r\n (\r\n \r\n {props.dataItem.titleNumber && props.dataItem.applicationId && (\r\n \r\n )}\r\n \r\n )}\r\n width={150}\r\n />\r\n \r\n \r\n createGridColumnCheckboxFilterMenu(p, props.listItems)} />\r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n}\r\n\r\nexport default OpggsApplicationTrackingListView;\r\n","// framework\r\nimport { useEffect } from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport { setLayout } from \"../../../../shell/redux/shellActions\";\r\n// api\r\nimport { getOpggsApplicationTrackingRequestAction } from \"../redux/opggsApplicationTrackingActions\";\r\n// children\r\nimport OpggsApplicationTrackingListView from \"./OpggsApplicationTrackingListView\";\r\nimport { IApplicationTrackingState } from \"../redux/opggsApplicationTrackingReducers\";\r\nimport * as Client from \"../../../../api/Client\";\r\n\r\nfunction OpggsApplicationTrackingController(props: any) {\r\n const { setLayout, getOpggsApplicationTrackingRequestAction } = props;\r\n\r\n const state: IApplicationTrackingState = props.state;\r\n const isCompleted = state.isCompleted ?? false;\r\n const applicationTrackingType = state.applicationTrackingType;\r\n // Application Tracking\r\n const response = state.response;\r\n const applicationTrackingTypes = response?.applicationTrackingTypes ?? new Array();\r\n const typeSummaryItems = response?.applicationTrackingTypeSummary ?? new Array();\r\n const statusSummaryItems = response?.applicationTrackingStatusSummary ?? new Array();\r\n const listItems = response?.applicationList ?? new Array();\r\n\r\n // initial load\r\n useEffect(() => {\r\n setLayout(\"OPGGS Application Tracking\");\r\n getOpggsApplicationTrackingRequestAction(isCompleted, applicationTrackingType);\r\n }, [setLayout, getOpggsApplicationTrackingRequestAction, isCompleted, applicationTrackingType]);\r\n\r\n // change\r\n function onFormSubmit(isCompleted: boolean, applicationTrackingType: Client.OpggsApplicationTrackingTypeEnum | undefined) {\r\n getOpggsApplicationTrackingRequestAction(isCompleted, applicationTrackingType);\r\n }\r\n\r\n // return\r\n return (\r\n \r\n );\r\n}\r\n\r\n// connect redux\r\nexport default connect((state: any) => ({ state: state.applicationTracking }), { setLayout, getOpggsApplicationTrackingRequestAction })(OpggsApplicationTrackingController);\r\n","// kendo\r\nimport { orderBy } from \"@progress/kendo-data-query\";\r\nimport { Chart, ChartSeries, ChartSeriesItem, ChartLegend } from \"@progress/kendo-react-charts\";\r\n// api\r\nimport * as Client from \"../../../../api/Client\";\r\n// common\r\nimport TitleLink from \"../../../../common/links/TitleLinkView\";\r\nimport Help from \"../../../../common/help/HelpView\";\r\nimport * as Forms from \"../../../../common/forms/BootstrapForms\";\r\n// other\r\nimport * as GlobalHelpers from \"../../../../common/GlobalHelpers\";\r\n\r\nfunction OpggsApplicationTrackingDetailsView(props: { response: Client.GetPublicOpggsApplicationsTrackingDetailsResponseDto | undefined }) {\r\n const response = props.response;\r\n const approvalTrackingItems = response?.approvalTracking ?? new Array();\r\n // sort approval tracking items by public status display order\r\n const sortedApprovalTrackingItems = orderBy(approvalTrackingItems, [{ field: \"displayOrder\", dir: \"asc\" }]);\r\n\r\n function getStatusChartDescription(): string {\r\n const baseDescription = \"A bar chart displaying counts of Weekdays at each Status for the Application, grouped by Application Status.\";\r\n if (sortedApprovalTrackingItems.length === 0) return baseDescription;\r\n const statusResults = sortedApprovalTrackingItems.map((i) => `${i.applicationStatusName}: ${i.weekdaysAtStatus}`).join(\"; \");\r\n return baseDescription + \" The results are: \" + statusResults + \".\";\r\n }\r\n\r\n return (\r\n <>\r\n
\r\n
\r\n \r\n \r\n {response?.titleId ? (\r\n <>\r\n Title Number\r\n
\r\n \r\n
\r\n \r\n ) : (\r\n \r\n )}\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n Application Progress\r\n

\r\n \r\n {getStatusChartDescription()}\r\n \r\n
\r\n {/* approval tracking chart */}\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

Not all Application Statuses are relevant to all Applications.

\r\n
\r\n
\r\n \r\n );\r\n}\r\n\r\nexport default OpggsApplicationTrackingDetailsView;\r\n","// framework\r\nimport { useEffect } from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport { useParams } from \"react-router-dom\";\r\n// shell\r\nimport { setLayout } from \"../../../../shell/redux/shellActions\";\r\n// api\r\nimport { clearOpggsApplicationTrackingDetailsAction, getOpggsApplicationTrackingDetailsRequestAction } from \"../redux/opggsApplicationTrackingDetailsActions\";\r\n// children views\r\nimport OpggsApplicationTrackingDetailsView from \"./OpggsApplicationTrackingDetailsView\";\r\nimport { IApplicationTrackingDetailsState } from \"../redux/opggsApplicationTrackingDetailsReducers\";\r\n\r\ninterface IRouteParameters {\r\n applicationId: string;\r\n}\r\n\r\nfunction OpggsApplicationTrackingDetailsController(props: any) {\r\n const { applicationId } = useParams();\r\n const { setLayout, getOpggsApplicationTrackingDetailsRequestAction, clearOpggsApplicationTrackingDetailsAction } = props;\r\n const state: IApplicationTrackingDetailsState = props.state;\r\n\r\n // Application Tracking Details\r\n const response = state.response;\r\n\r\n // - initial load\r\n useEffect(() => {\r\n getOpggsApplicationTrackingDetailsRequestAction(applicationId);\r\n\r\n return function onUnmount() {\r\n clearOpggsApplicationTrackingDetailsAction();\r\n };\r\n }, [getOpggsApplicationTrackingDetailsRequestAction, clearOpggsApplicationTrackingDetailsAction, applicationId]);\r\n\r\n // - set page header when response received\r\n useEffect(() => {\r\n if (!response) {\r\n setLayout(\"\");\r\n return;\r\n }\r\n\r\n setLayout(response.titleNumber + \" - \" + response.applicationTypeName);\r\n }, [setLayout, response]);\r\n\r\n // return\r\n return ;\r\n}\r\n\r\n// connect redux\r\nexport default connect((state: any) => ({ state: state.applicationTrackingDetails }), { setLayout, getOpggsApplicationTrackingDetailsRequestAction, clearOpggsApplicationTrackingDetailsAction })(\r\n OpggsApplicationTrackingDetailsController\r\n);\r\n","// framework\r\nimport { Link } from \"react-router-dom\";\r\n\r\nexport default function LicenceLinkView(props: { licenceId: number | undefined; licenceNumber: string | undefined }) {\r\n if (props.licenceId) {\r\n return (\r\n \r\n {props.licenceNumber}\r\n \r\n );\r\n }\r\n return <>{props.licenceNumber};\r\n}\r\n","// framework\r\nimport { useState } from \"react\";\r\n// kendo\r\nimport { Grid, GridColumn } from \"@progress/kendo-react-grid\";\r\nimport { process, State } from \"@progress/kendo-data-query\";\r\n// api\r\nimport * as Client from \"../../../../api/Client\";\r\n// common\r\nimport LicenceLink from \"../../../../common/links/LicenceLinkView\";\r\n// other\r\nimport * as GlobalHelpers from \"../../../../common/GlobalHelpers\";\r\nimport CustomGridCell from \"../../../../common/kendoGrid/CustomGridCell\";\r\nimport { createGridColumnFilterMenu } from \"../../../../common/kendoGrid/GridColumnFilterMenu\";\r\nimport { createGridColumnCheckboxFilterMenu } from \"../../../../common/kendoGrid/GridColumnCheckboxFilterMenu\";\r\n\r\nfunction LicenceSearchListView(props: { searchText: string; licences: Client.GetPublicLicencesListItemDto[]; onSearchTextChanged: (value: string) => void }) {\r\n const initialGridState = {\r\n sort: [{ field: \"comesIntoForceDate\", dir: \"asc\" }],\r\n skip: 0,\r\n take: 10,\r\n } as State;\r\n const [gridState, setGridState] = useState(initialGridState);\r\n\r\n const [lastSearchText, setLastSearchText] = useState(props.searchText);\r\n const [searchText, setSearchText] = useState(props.searchText);\r\n\r\n if (lastSearchText !== props.searchText) {\r\n // keep the local search text in sync with what's passed in, it can be changed external to this page\r\n // if the filter that is passed in differs from the local state, reset the local state\r\n setLastSearchText(props.searchText);\r\n\r\n // only change the search text control once! if you try to change it all the time the user cannot type!\r\n setSearchText(props.searchText);\r\n }\r\n\r\n // local handlers\r\n function onSearchTextChanged(e: any) {\r\n setSearchText(e.target.value);\r\n }\r\n\r\n function onSearchSubmit(e: any) {\r\n e.preventDefault(); // stops posting\r\n props.onSearchTextChanged(searchText);\r\n setGridState(initialGridState);\r\n }\r\n\r\n function onResetSearchTextClicked() {\r\n setSearchText(\"\");\r\n props.onSearchTextChanged(\"\");\r\n setGridState(initialGridState);\r\n }\r\n\r\n // view\r\n return (\r\n <>\r\n {/* search box */}\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n\r\n {/* results grid */}\r\n {\r\n setGridState(e.dataState);\r\n }}\r\n >\r\n createGridColumnCheckboxFilterMenu(p, props.licences)}\r\n cell={(props) => (\r\n \r\n \r\n \r\n )}\r\n />\r\n createGridColumnCheckboxFilterMenu(p, props.licences)} />\r\n createGridColumnCheckboxFilterMenu(p, props.licences)} />\r\n createGridColumnCheckboxFilterMenu(p, props.licences)} />\r\n \r\n \r\n \r\n \r\n \r\n );\r\n}\r\n\r\nexport default LicenceSearchListView;\r\n","// framework\r\nimport { useEffect } from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport { setLayout } from \"../../../../shell/redux/shellActions\";\r\n// api\r\nimport { searchLicenceRequestAction } from \"../redux/licenceSearchActions\";\r\n// children\r\nimport LicenceSearchListView from \"./LicenceSearchListView\";\r\nimport { ILicenceSearchState } from \"../redux/licenceSearchReducers\";\r\nimport * as Client from \"../../../../api/Client\";\r\n\r\nfunction LicenceSearchController(props: any) {\r\n const { setLayout, searchLicenceRequestAction } = props;\r\n\r\n const state: ILicenceSearchState = props.state;\r\n const filter = state.filter ?? \"\";\r\n const licences = state.licences ?? new Array();\r\n\r\n // initial load\r\n useEffect(() => {\r\n setLayout(\"Licence Search\");\r\n searchLicenceRequestAction(filter);\r\n }, [setLayout, searchLicenceRequestAction, filter]);\r\n\r\n // change\r\n function searchTextChanged(value: string) {\r\n searchLicenceRequestAction(value);\r\n }\r\n\r\n return ;\r\n}\r\n\r\n// connect redux\r\nexport default connect((state: any) => ({ state: state.licenceSearch }), { setLayout, searchLicenceRequestAction })(LicenceSearchController);\r\n","// kendo\r\nimport { orderBy } from \"@progress/kendo-data-query\";\r\n// api\r\nimport * as Client from \"../../../../../api/Client\";\r\n// common\r\nimport LicenceLink from \"../../../../../common/links/LicenceLinkView\";\r\nimport * as Forms from \"../../../../../common/forms/BootstrapForms\";\r\n\r\nfunction LicenceSummaryRelatedLicencesField(props: { label: string; relatedLicences: Client.GetPublicLicenceDetailsRelatedLicenceDto[] | undefined }) {\r\n const relatedLicences = props.relatedLicences ?? new Array();\r\n const sortedLicences = orderBy(relatedLicences, [{ field: \"licenceNumber\", dir: \"asc\" }]);\r\n\r\n return (\r\n <>\r\n Related Licences\r\n {sortedLicences.length === 0 &&
No Related Licences found.
}\r\n {sortedLicences.length !== 0 && (\r\n
\r\n {sortedLicences.map((l: Client.GetPublicLicenceDetailsRelatedLicenceDto, i: number) => (\r\n <>\r\n \r\n {i === sortedLicences.length - 1 ? <> : \", \"}\r\n \r\n ))}\r\n
\r\n )}\r\n \r\n );\r\n}\r\n\r\nexport default LicenceSummaryRelatedLicencesField;\r\n","// api\r\nimport * as Client from \"../../../../../api/Client\";\r\n// common\r\nimport * as Forms from \"../../../../../common/forms/BootstrapForms\";\r\nimport * as GlobalHelpers from \"../../../../../common/GlobalHelpers\";\r\n// views\r\nimport LicenceSummaryRelatedLicencesField from \"./LicenceSummaryRelatedLicencesField\";\r\n\r\nexport default function LicenceSummaryView(props: { vm: Client.GetPublicLicenceDetailsResponseDto | undefined }) {\r\n const vm = props.vm;\r\n const summary = vm?.summary;\r\n\r\n return (\r\n <>\r\n
\r\n
\r\n

Licence Summary

\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n

Key Dates

\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n

Project Characteristics

\r\n \r\n \r\n \r\n Licence Area km2\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n );\r\n}\r\n","// api\r\nimport * as Client from \"../../../../../api/Client\";\r\n// common\r\nimport * as Forms from \"../../../../../common/forms/BootstrapForms\";\r\n\r\nexport default function LicenceHolderView(props: { vm: Client.GetPublicLicenceDetailsResponseDto | undefined }) {\r\n const vm = props.vm;\r\n const licenceHolder = vm?.licenceHolder;\r\n\r\n return (\r\n <>\r\n
\r\n
\r\n

Licence Holder

\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n );\r\n}\r\n","import * as LicenceDetailsHelper from \"../../oei/licence/details/licenceDetailsHelper\";\r\n\r\n// *** Get Details\r\nenum OpenLicenceActions {\r\n openLicence,\r\n downloadMemorialDocument,\r\n}\r\n\r\ninterface IOpenLicenceDetails {\r\n action: OpenLicenceActions;\r\n licenceNumber: string;\r\n}\r\n\r\ninterface IDownloadMemorialDocumentDetails extends IOpenLicenceDetails {\r\n applicationId: string;\r\n}\r\n\r\n// *** Generate URLs\r\nexport function generateOpenLicenceUrl(licenceNumber: string): string {\r\n const hostName = window.location.origin;\r\n return `${hostName}/Open/Licence?licenceNumber=${licenceNumber}&action=${OpenLicenceActions[OpenLicenceActions.openLicence]}`;\r\n}\r\n\r\nexport function generateDownloadMemorialDocumentUrl(licenceNumber: string, applicationId: string): string {\r\n const hostName = window.location.origin;\r\n return `${hostName}/Open/Licence?licenceNumber=${licenceNumber}&action=${OpenLicenceActions[OpenLicenceActions.downloadMemorialDocument]}&applicationId=${applicationId}`;\r\n}\r\n\r\nexport function tryGetDetails(params: URLSearchParams): IOpenLicenceDetails | null {\r\n const action = resolveAction(params);\r\n\r\n try {\r\n switch (action) {\r\n case null:\r\n return null;\r\n case OpenLicenceActions.openLicence:\r\n return getOpenLicenceActionDetails(params);\r\n case OpenLicenceActions.downloadMemorialDocument:\r\n return getDownloadMemorialDocumentActionDetails(params);\r\n }\r\n } catch (e) {\r\n return null;\r\n }\r\n}\r\n\r\nfunction resolveAction(params: URLSearchParams): OpenLicenceActions | null {\r\n const action = params.get(\"action\");\r\n\r\n if (!action) return OpenLicenceActions.openLicence; // default to Open Licence\r\n\r\n if (stringCaseInsensitiveEquals(action!, OpenLicenceActions[OpenLicenceActions.openLicence])) return OpenLicenceActions.openLicence;\r\n if (stringCaseInsensitiveEquals(action!, OpenLicenceActions[OpenLicenceActions.downloadMemorialDocument])) return OpenLicenceActions.downloadMemorialDocument;\r\n\r\n return null;\r\n}\r\n\r\nfunction stringCaseInsensitiveEquals(a: string, b: string) {\r\n return a.localeCompare(b, undefined, { sensitivity: \"base\" }) === 0;\r\n}\r\n\r\nfunction getOpenLicenceActionDetails(params: URLSearchParams): IOpenLicenceDetails {\r\n const licenceNumber = params.get(\"licenceNumber\");\r\n\r\n if (!licenceNumber) throw new Error(\"Unable to resolve Licence Number!\");\r\n\r\n return {\r\n action: OpenLicenceActions.openLicence,\r\n licenceNumber: licenceNumber,\r\n };\r\n}\r\n\r\nfunction getDownloadMemorialDocumentActionDetails(params: URLSearchParams): IDownloadMemorialDocumentDetails {\r\n const licenceNumber = params.get(\"licenceNumber\");\r\n const applicationId = params.get(\"applicationId\");\r\n\r\n if (!licenceNumber) throw new Error(\"Unable to resolve Licence Number!\");\r\n if (!applicationId) throw new Error(\"Unable to resolve Application ID!\");\r\n\r\n return {\r\n action: OpenLicenceActions.downloadMemorialDocument,\r\n licenceNumber: licenceNumber,\r\n applicationId: applicationId,\r\n };\r\n}\r\n\r\n// *** Redirect URI\r\n\r\nexport function getRedirectUri(details: IOpenLicenceDetails, licenceId: number): string {\r\n switch (details.action) {\r\n case OpenLicenceActions.openLicence:\r\n return LicenceDetailsHelper.getOpenLicenceRedirectUri(licenceId);\r\n case OpenLicenceActions.downloadMemorialDocument:\r\n const d = details as IDownloadMemorialDocumentDetails;\r\n return LicenceDetailsHelper.getDownloadMemorialDocumentUri(licenceId, d.applicationId);\r\n default:\r\n throw new Error(\"Unsupported action!\");\r\n }\r\n}\r\n","import { LicenceDetailsTabsEnum } from \"./components/views/LicenceDetailsView\";\r\nimport { ILicenceDetailsState } from \"./redux/licenceDetailsReducers\";\r\nimport { Client } from \"../../../common/secureFileDownload/client\";\r\nimport * as uriHelper from \"../../../api/uriHelper\";\r\n\r\nenum AutomationEnum {\r\n downloadMemorialDocument,\r\n}\r\n\r\nexport function tryGetPreferredTab(params: URLSearchParams): LicenceDetailsTabsEnum {\r\n const action = params.get(\"action\");\r\n if (!action) return LicenceDetailsTabsEnum.summary;\r\n\r\n if (action === AutomationEnum[AutomationEnum.downloadMemorialDocument]) return LicenceDetailsTabsEnum.memorial;\r\n\r\n throw new Error(\"Unable to resolve action!\");\r\n}\r\n\r\nexport function getOpenLicenceRedirectUri(licenceId: number) {\r\n return `/Oei/Licence/${licenceId}`;\r\n}\r\n\r\nexport function getDownloadMemorialDocumentUri(licenceId: number, applicationId: string) {\r\n return `/Oei/Licence/${licenceId}?action=${AutomationEnum[AutomationEnum.downloadMemorialDocument]}&applicationId=${applicationId}`;\r\n}\r\n\r\nexport function tryOpenLicenceMemorialDocument(vm: ILicenceDetailsState, params: URLSearchParams): void {\r\n // determine if there is a relevant automation action\r\n const action = params.get(\"action\");\r\n if (!action) return;\r\n if (action !== AutomationEnum[AutomationEnum.downloadMemorialDocument]) return;\r\n\r\n // get the application id from the action\r\n // if it is malformed then just return\r\n const applicationId = params.get(\"applicationId\");\r\n if (!applicationId) return;\r\n\r\n // get the URL and open\r\n // - note, need to use window.location.href instead of window.open\r\n // window.open gets blocked by the browser\r\n // window.location.href would normally navigate the page but it seems to do what we want\r\n const url = getLicenceMemorialDocumentUrl(vm, applicationId!);\r\n window.location.href = url;\r\n}\r\n\r\nfunction getLicenceMemorialDocumentUrl(vm: ILicenceDetailsState, applicationId: string): string {\r\n // licence hasn't been loaded - we shouldn't be here, it's a coding error\r\n if (!vm.response) throw new Error(\"Licence has not been loaded.\");\r\n\r\n // if we can't find it then return the not found page\r\n // - this isn't the best experience, but it's only going to happen if a link is broken\r\n const notFoundUrl = uriHelper.getServicesUri() + \"/NotFound\";\r\n\r\n // try to find the application\r\n const applications = vm.response!.memorial?.filter((a) => a.applicationId === applicationId);\r\n if (!applications) return notFoundUrl;\r\n if (applications.length === 0) return notFoundUrl;\r\n // The application will be there twice if it has a correction to the register. The document is the same, take the first one\r\n const application = applications[0];\r\n\r\n // try to find the file\r\n const fileId = application.fileId;\r\n if (!fileId) return notFoundUrl;\r\n\r\n // return the file url\r\n var client = new Client();\r\n client.initialise(fileId!);\r\n return client.getUrl();\r\n}\r\n","// framework\r\nimport { useState } from \"react\";\r\n// kendo\r\nimport { Grid, GridColumn } from \"@progress/kendo-react-grid\";\r\nimport { process, State } from \"@progress/kendo-data-query\";\r\n// api\r\nimport * as Client from \"../../../../../api/Client\";\r\n// common\r\nimport * as GlobalHelpers from \"../../../../../common/GlobalHelpers\";\r\nimport * as OpenLicenceHelper from \"../../../../../open/licence/openLicenceHelper\";\r\nimport CopyLink from \"../../../../../common/links/CopyLinkView\";\r\nimport { DashIcon } from \"@primer/octicons-react\";\r\nimport CustomGridCell from \"../../../../../common/kendoGrid/CustomGridCell\";\r\nimport { createGridColumnCheckboxFilterMenu } from \"../../../../../common/kendoGrid/GridColumnCheckboxFilterMenu\";\r\nimport * as SecureFileDownloadLinkControl from \"../../../../../common/secureFileDownload/SecureFileDownloadLinkControl\";\r\n\r\nfunction MemorialView(props: { response: Client.GetPublicLicenceDetailsResponseDto | undefined }) {\r\n const response = props.response;\r\n const licenceNumber = response?.summary?.licenceNumber;\r\n const applications = response?.memorial ?? new Array(); // applications are sorted in the service\r\n\r\n const [gridState, setGridState] = useState({\r\n skip: 0,\r\n take: 10,\r\n } as State);\r\n\r\n function documentDownload(fileId: number | undefined, applicationId: string) {\r\n if (!fileId) {\r\n return ;\r\n }\r\n\r\n // licenceNumber will have a value when there is a file associated\r\n const uri = OpenLicenceHelper.generateDownloadMemorialDocumentUrl(licenceNumber!, applicationId);\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n );\r\n }\r\n\r\n return (\r\n <>\r\n
\r\n
\r\n

Register

\r\n {\r\n setGridState(e.dataState);\r\n }}\r\n >\r\n createGridColumnCheckboxFilterMenu(p, applications)} />\r\n \r\n \r\n \r\n \r\n \r\n {documentDownload(props.dataItem.fileId, props.dataItem.applicationId)}}\r\n />\r\n \r\n
\r\n
\r\n \r\n );\r\n}\r\n\r\nexport default MemorialView;\r\n","// framework\r\nimport Tabs from \"react-bootstrap/Tabs\";\r\nimport Tab from \"react-bootstrap/Tab\";\r\n// api\r\nimport * as Client from \"../../../../../api/Client\";\r\n// children views\r\nimport LicenceSummaryView from \"./LicenceSummaryView\";\r\nimport LicenceHolderView from \"./LicenceHolderView\";\r\nimport MemorialView from \"./MemorialView\";\r\n\r\nexport enum LicenceDetailsTabsEnum {\r\n summary,\r\n licenceHolder,\r\n memorial,\r\n}\r\n\r\nfunction LicenceDetailsView(props: { response: Client.GetPublicLicenceDetailsResponseDto | undefined; preferredTab?: LicenceDetailsTabsEnum }) {\r\n const response = props.response;\r\n const preferredTab = props.preferredTab ?? LicenceDetailsTabsEnum.summary;\r\n\r\n return (\r\n \r\n {/* Summary Tab */}\r\n \r\n \r\n \r\n\r\n {/* Licenceholders Tab */}\r\n \r\n \r\n \r\n\r\n {/* Memorial Tab */}\r\n \r\n \r\n \r\n \r\n );\r\n}\r\n\r\nexport default LicenceDetailsView;\r\n","// framework\r\nimport { useEffect, useState } from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport { useParams, useLocation } from \"react-router-dom\";\r\n// shell\r\nimport { setLayout } from \"../../../../shell/redux/shellActions\";\r\n// api\r\nimport { getLicenceDetailsRequestAction, clearLicenceDetailsAction } from \"../redux/licenceDetailsActions\";\r\n// helpers\r\nimport * as LicenceDetailsHelper from \"../licenceDetailsHelper\";\r\n// children views\r\nimport LicenceDetailsView from \"./views/LicenceDetailsView\";\r\nimport { ILicenceDetailsState } from \"../redux/licenceDetailsReducers\";\r\n\r\ninterface IRouteParameters {\r\n licenceId: string;\r\n}\r\n\r\nfunction LicenceDetailsController(props: any) {\r\n const { licenceId } = useParams();\r\n\r\n const { setLayout, getLicenceDetailsRequestAction, clearLicenceDetailsAction } = props;\r\n const state: ILicenceDetailsState = props.state;\r\n\r\n // Licence Details\r\n const response = state.response;\r\n\r\n // - initial licence load\r\n useEffect(() => {\r\n getLicenceDetailsRequestAction(licenceId);\r\n\r\n return function onUnmount() {\r\n clearLicenceDetailsAction();\r\n };\r\n }, [getLicenceDetailsRequestAction, clearLicenceDetailsAction, licenceId]);\r\n\r\n // - set page header when response received\r\n useEffect(() => {\r\n if (!response) {\r\n setLayout(\"\");\r\n return;\r\n }\r\n\r\n setLayout(response.summary.licenceTypeDescription + \" \" + response.summary.licenceNumber);\r\n }, [setLayout, response]);\r\n\r\n // automation requests\r\n const [hasAutomationRun, setHasAutomationRun] = useState(false);\r\n const location = useLocation();\r\n const params = new URLSearchParams(location.search);\r\n const tab = LicenceDetailsHelper.tryGetPreferredTab(params);\r\n useEffect(() => {\r\n if (!response) return; // only allow automation to run after the page has initialised\r\n if (hasAutomationRun) return; // only run automation once\r\n\r\n LicenceDetailsHelper.tryOpenLicenceMemorialDocument(state, params);\r\n\r\n setHasAutomationRun(true);\r\n }, [response, hasAutomationRun]); // eslint-disable-line react-hooks/exhaustive-deps\r\n\r\n // return\r\n return ;\r\n}\r\n\r\n// connect redux\r\nexport default connect((state: any) => ({ state: state.licenceDetails }), {\r\n setLayout,\r\n getLicenceDetailsRequestAction,\r\n clearLicenceDetailsAction,\r\n})(LicenceDetailsController);\r\n","// framework\r\nimport { useEffect } from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport { setLayout } from \"../../shell/redux/shellActions\";\r\n\r\nfunction MapController(props: any) {\r\n const { setLayout } = props;\r\n\r\n // initial load\r\n useEffect(() => {\r\n setLayout(\"Interactive Map\");\r\n }, [setLayout]);\r\n\r\n // return\r\n const url = process.env.REACT_APP_MAP_OPGGS_AND_OEI;\r\n return (\r\n <>\r\n \r\n \r\n );\r\n}\r\n\r\n// connect redux\r\nexport default connect((state: any) => ({}), { setLayout })(MapController);\r\n","// framework\r\nimport { useEffect } from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport { useLocation, Redirect } from \"react-router-dom\";\r\nimport { setLayout } from \"../../../shell/redux/shellActions\";\r\nimport NotFoundPage from \"../../../shell/components/error/NotFoundPage\";\r\n// api\r\nimport * as Actions from \"../redux/openTitleActions\";\r\nimport { getTitleIdRequest } from \"../redux/openTitleActions\";\r\nimport * as Reducers from \"../redux/openTitleReducers\";\r\n// other\r\nimport * as OpenTitleHelper from \"../openTitleHelper\";\r\n\r\ninterface IOpenTitleControllerProps {\r\n state: Reducers.IOpenTitleState;\r\n getTitleIdRequest(titleNumber: string): Actions.IOpenTitleActions;\r\n setLayout(pageTitle: string, showPageHeader: boolean, includePadding: boolean): void;\r\n}\r\n\r\nfunction OpenTitleController(props: IOpenTitleControllerProps) {\r\n // using query string - /Open/Title?titleNumber=xxx\r\n // this allows for non URL encoded content to be passed through, as we can't assume callers are always able to url encode\r\n const location = useLocation();\r\n const params = new URLSearchParams(location.search);\r\n const details = OpenTitleHelper.tryGetDetails(params);\r\n\r\n // intial load\r\n useEffect(() => {\r\n props.setLayout(\"Redirecting...\", true, true);\r\n if (details) props.getTitleIdRequest(details.titleNumber);\r\n }, []); // eslint-disable-line react-hooks/exhaustive-deps\r\n\r\n // invalid details supplied, just redirect to the not-found page\r\n if (!details) return ;\r\n\r\n // resolved\r\n if (props.state.isResolved) {\r\n // doesn't exist\r\n if (props.state.titleId === undefined) return ;\r\n\r\n // exists\r\n const url = OpenTitleHelper.getRedirectUri(details, props.state.titleId!);\r\n return ;\r\n }\r\n\r\n // wait\r\n return <>;\r\n}\r\n\r\nexport default connect((state: any) => ({ state: state.openTitle }), { setLayout, getTitleIdRequest })(OpenTitleController);\r\n","// framework\r\nimport { useEffect } from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport { useLocation, Redirect } from \"react-router-dom\";\r\nimport { setLayout } from \"../../../shell/redux/shellActions\";\r\nimport NotFoundPage from \"../../../shell/components/error/NotFoundPage\";\r\n// api\r\nimport * as Actions from \"../redux/openLicenceActions\";\r\nimport { getLicenceIdRequest } from \"../redux/openLicenceActions\";\r\nimport * as Reducers from \"../redux/openLicenceReducers\";\r\n// other\r\nimport * as OpenLicenceHelper from \"../openLicenceHelper\";\r\n\r\ninterface IOpenLicenceControllerProps {\r\n state: Reducers.IOpenLicenceState;\r\n getLicenceIdRequest(licenceNumber: string): Actions.IOpenLicenceActions;\r\n setLayout(pageLicence: string, showPageHeader: boolean, includePadding: boolean): void;\r\n}\r\n\r\nfunction OpenLicenceController(props: IOpenLicenceControllerProps) {\r\n // using query string - /Open/Licence?licenceNumber=xxx\r\n // this allows for non URL encoded content to be passed through, as we can't assume callers are always able to url encode\r\n const location = useLocation();\r\n const params = new URLSearchParams(location.search);\r\n const details = OpenLicenceHelper.tryGetDetails(params);\r\n\r\n // intial load\r\n useEffect(() => {\r\n props.setLayout(\"Redirecting...\", true, true);\r\n if (details) props.getLicenceIdRequest(details.licenceNumber);\r\n }, []); // eslint-disable-line react-hooks/exhaustive-deps\r\n\r\n // invalid details supplied, just redirect to the not-found page\r\n if (!details) return ;\r\n\r\n // resolved\r\n if (props.state.isResolved) {\r\n // doesn't exist\r\n if (props.state.licenceId === undefined) return ;\r\n\r\n // exists\r\n const url = OpenLicenceHelper.getRedirectUri(details, props.state.licenceId!);\r\n return ;\r\n }\r\n\r\n // wait\r\n return <>;\r\n}\r\n\r\nexport default connect((state: any) => ({ state: state.openLicence }), { setLayout, getLicenceIdRequest })(OpenLicenceController);\r\n","// framework\r\nimport { Link } from \"react-router-dom\";\r\n\r\nexport default function OeiApplicationLinkView(props: { applicationId: string; applicationName: string | undefined }) {\r\n return (\r\n \r\n {props.applicationName}\r\n \r\n );\r\n}\r\n","// framework\r\nimport { useState } from \"react\";\r\n// kendo\r\nimport { DropDownList } from \"@progress/kendo-react-dropdowns\";\r\nimport { Grid, GridColumn } from \"@progress/kendo-react-grid\";\r\nimport { process, orderBy, State } from \"@progress/kendo-data-query\";\r\nimport { Chart, ChartSeries, ChartSeriesItem, ChartLegend } from \"@progress/kendo-react-charts\";\r\n// api\r\nimport * as Client from \"../../../../api/Client\";\r\n// common\r\nimport ApplicationLink from \"../../../../common/links/OeiApplicationLinkView\";\r\nimport Help from \"../../../../common/help/HelpView\";\r\n// other\r\nimport * as GlobalHelpers from \"../../../../common/GlobalHelpers\";\r\nimport CustomGridCell from \"../../../../common/kendoGrid/CustomGridCell\";\r\nimport { createGridColumnFilterMenu } from \"../../../../common/kendoGrid/GridColumnFilterMenu\";\r\nimport { createGridColumnCheckboxFilterMenu } from \"../../../../common/kendoGrid/GridColumnCheckboxFilterMenu\";\r\n\r\nfunction OeiApplicationTrackingListView(props: {\r\n isCompleted: boolean;\r\n applicationTrackingType: Client.OeiApplicationTrackingTypeEnum | undefined;\r\n applicationTrackingTypes: Client.GetPublicOeiApplicationsTrackingTrackingTypeDto[];\r\n typeSummaryItems: Client.GetPublicOeiApplicationsTrackingTrackingTypeSummaryItemDto[];\r\n statusSummaryItems: Client.GetPublicOeiApplicationsTrackingTrackingStatusSummaryItemDto[];\r\n listItems: Client.GetPublicOeiApplicationsTrackingApplicationListItemDto[];\r\n onFormSubmit: (isCompleted: boolean, applicationTrackingType: Client.OeiApplicationTrackingTypeEnum | undefined) => void;\r\n}) {\r\n // grid state\r\n const initialGridState = {\r\n sort: [\r\n { field: \"implementedDate\", dir: \"desc\" },\r\n { field: \"lodgedDate\", dir: \"desc\" },\r\n ],\r\n skip: 0,\r\n take: 10,\r\n } as State;\r\n const [gridState, setGridState] = useState(initialGridState);\r\n\r\n // constants\r\n const inProgressRadioValue = \"inProgress\";\r\n const completedRadioValue = \"completed\";\r\n const defaultApplicationTrackingType = new Client.GetPublicOeiApplicationsTrackingTrackingTypeDto({ name: \"All OEI Applications\" });\r\n\r\n // use state\r\n const [isCompleted, setIsCompleted] = useState(props.isCompleted);\r\n const [selectedRadioValue, setSelectedRadioValue] = useState(GlobalHelpers.convertBooleanToRadioValue(props.isCompleted, completedRadioValue, inProgressRadioValue));\r\n const [applicationTrackingType, setApplicationTrackingType] = useState(props.applicationTrackingType);\r\n const [selectedApplicationTrackingType, setSelectedApplicationTrackingType] = useState(props.applicationTrackingTypes.find((t) => t.id === props.applicationTrackingType));\r\n\r\n // sort application types by name ascending and insert 'All' option (no type selected)\r\n const sortedApplicationTrackingTypes = orderBy(props.applicationTrackingTypes, [{ field: \"name\", dir: \"asc\" }]);\r\n // sort application type summary items by name ascending\r\n const sortedTypeSummaryItems = orderBy(props.typeSummaryItems, [{ field: \"applicationTrackingTypeName\", dir: \"asc\" }]);\r\n // sort application status summary items by public status display order\r\n const sortedStatusSummaryItems = orderBy(props.statusSummaryItems, [{ field: \"displayOrder\", dir: \"asc\" }]);\r\n\r\n // local handlers\r\n function onRadioValueChanged(e: React.ChangeEvent) {\r\n setSelectedRadioValue(e.target.value);\r\n\r\n if (e.target.value === inProgressRadioValue) setIsCompleted(false);\r\n if (e.target.value === completedRadioValue) setIsCompleted(true);\r\n }\r\n\r\n function onApplicationTrackingTypeChanged(e: any) {\r\n setSelectedApplicationTrackingType(e.target.value);\r\n setApplicationTrackingType(e.target.value?.id);\r\n }\r\n\r\n function onFormSubmit(e: any) {\r\n e.preventDefault(); // stops posting\r\n props.onFormSubmit(isCompleted, applicationTrackingType);\r\n setGridState(initialGridState);\r\n }\r\n\r\n function onResetClicked() {\r\n // reset tracking type\r\n setSelectedApplicationTrackingType(defaultApplicationTrackingType);\r\n setApplicationTrackingType(undefined);\r\n // reset completed\r\n setSelectedRadioValue(inProgressRadioValue);\r\n setIsCompleted(false);\r\n\r\n props.onFormSubmit(false, undefined);\r\n setGridState(initialGridState);\r\n }\r\n\r\n function onSeriesClick(e: any) {\r\n let typeClicked = e.dataItem.applicationTrackingType;\r\n setSelectedApplicationTrackingType(props.applicationTrackingTypes.find((t) => t.id === typeClicked));\r\n setApplicationTrackingType(typeClicked);\r\n props.onFormSubmit(isCompleted, typeClicked);\r\n setGridState(initialGridState);\r\n }\r\n\r\n function labelContent(e: any): string {\r\n if (!e || !e.value || e.value === 0) return \"\";\r\n return `${e.category}: ${e.value}`;\r\n }\r\n\r\n function legendLabelContent(e: any): string {\r\n return `${e.text}: ${e.value}`;\r\n }\r\n\r\n function getTypeSummaryChartDescription(): string {\r\n const baseDescription =\r\n \"A pie chart displaying counts of \" + (props.isCompleted ? \"Applications completed within the last 12 months\" : \"in progress Applications\") + \", grouped by Application Type.\";\r\n if (sortedTypeSummaryItems.length === 0) return baseDescription;\r\n\r\n const typeSummaryResults = sortedTypeSummaryItems.map((i) => `${i.applicationTrackingTypeName}: ${i.total}`).join(\"; \");\r\n return baseDescription + \" The results are: \" + typeSummaryResults + \".\";\r\n }\r\n\r\n function getTypeSummaryChart(legendPosition: \"bottom\" | \"right\") {\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n }\r\n\r\n function getStatusSummaryChartDescription(): string {\r\n const type = props.applicationTrackingTypes.find((t) => t.id === props.applicationTrackingType);\r\n const baseDescription =\r\n (props.isCompleted\r\n ? `A pie chart displaying counts of ${type?.name} Applications completed within the last 12 months`\r\n : `A bar chart displaying counts of in progress ${type?.name} Applications`) + \", grouped by Application Status.\";\r\n if (sortedStatusSummaryItems.length === 0) return baseDescription;\r\n\r\n const statusSummaryResults = sortedStatusSummaryItems.map((i) => `${i.applicationStatusName}: ${i.total}`).join(\"; \");\r\n return baseDescription + \" The results are: \" + statusSummaryResults + \".\";\r\n }\r\n\r\n function getInProgressStatusSummaryChart() {\r\n return (\r\n \r\n {/* - there is no legend for this chart */}\r\n \r\n \r\n \r\n \r\n );\r\n }\r\n\r\n function getCompletedStatusSummaryChart(legendPosition: \"bottom\" | \"right\") {\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n }\r\n\r\n // view\r\n return (\r\n <>\r\n {/* filters */}\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n {/* chart heading */}\r\n
\r\n

\r\n {props.isCompleted ? \"Completed Applications (Last 12 Months)\" : \"Applications in Progress\"}\r\n

\r\n \r\n {props.applicationTrackingType ? getStatusSummaryChartDescription() : getTypeSummaryChartDescription()}\r\n \r\n
\r\n\r\n {/* note on responsiveness - pie charts render better when moving the legend, where-as the bar charts render better by setting a minwidth + x-scroll */}\r\n\r\n {/* type summary chart */}\r\n {!props.applicationTrackingType && (\r\n <>\r\n
\r\n {getTypeSummaryChart(\"bottom\")}\r\n
\r\n
\r\n {getTypeSummaryChart(\"right\")}\r\n
\r\n \r\n )}\r\n\r\n {/* in progress status summary chart */}\r\n {props.applicationTrackingType && !props.isCompleted && (\r\n <>\r\n
\r\n {getInProgressStatusSummaryChart()}\r\n
\r\n

Not all Application Statuses are relevant to all Applications.

\r\n \r\n )}\r\n\r\n {/* completed status summary chart */}\r\n {props.applicationTrackingType && props.isCompleted && (\r\n <>\r\n
\r\n {getCompletedStatusSummaryChart(\"bottom\")}\r\n
\r\n
\r\n {getCompletedStatusSummaryChart(\"right\")}\r\n
\r\n \r\n )}\r\n\r\n {props.applicationTrackingType === Client.OeiApplicationTrackingTypeEnum.InitialApplicationFeasibilityLicence && (\r\n

\r\n {props.isCompleted ? <> : \"Details of individual Feasibility Licence Applications are not visible in the Public Portal. \"} The number of Feasibility Licence Applications at\r\n different application statuses can be viewed in the above chart.\r\n

\r\n )}\r\n\r\n {/* results grid */}\r\n {\r\n setGridState(e.dataState);\r\n }}\r\n >\r\n (\r\n \r\n {props.dataItem.licenceNumber && props.dataItem.applicationId && (\r\n \r\n )}\r\n \r\n )}\r\n width={150}\r\n />\r\n \r\n \r\n createGridColumnCheckboxFilterMenu(p, props.listItems)} />\r\n \r\n \r\n \r\n \r\n \r\n );\r\n}\r\n\r\nexport default OeiApplicationTrackingListView;\r\n","// framework\r\nimport { useEffect } from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport { setLayout } from \"../../../../shell/redux/shellActions\";\r\n// api\r\nimport { getOeiApplicationTrackingRequestAction } from \"../redux/oeiApplicationTrackingActions\";\r\n// children\r\nimport OeiApplicationTrackingListView from \"./OeiApplicationTrackingListView\";\r\nimport { IOeiApplicationTrackingState } from \"../redux/oeiApplicationTrackingReducers\";\r\nimport * as Client from \"../../../../api/Client\";\r\n\r\nfunction OeiApplicationTrackingController(props: any) {\r\n const { setLayout, getOeiApplicationTrackingRequestAction } = props;\r\n\r\n const state: IOeiApplicationTrackingState = props.state;\r\n const isCompleted = state.isCompleted ?? false;\r\n const applicationTrackingType = state.applicationTrackingType;\r\n // Application Tracking\r\n const response = state.response;\r\n const applicationTrackingTypes = response?.applicationTrackingTypes ?? new Array();\r\n const typeSummaryItems = response?.applicationTrackingTypeSummary ?? new Array();\r\n const statusSummaryItems = response?.applicationTrackingStatusSummary ?? new Array();\r\n const listItems = response?.applicationList ?? new Array();\r\n\r\n // initial load\r\n useEffect(() => {\r\n setLayout(\"OEI Application Tracking\");\r\n getOeiApplicationTrackingRequestAction(isCompleted, applicationTrackingType);\r\n }, [setLayout, getOeiApplicationTrackingRequestAction, isCompleted, applicationTrackingType]);\r\n\r\n // change\r\n function onFormSubmit(isCompleted: boolean, applicationTrackingType: Client.OeiApplicationTrackingTypeEnum | undefined) {\r\n getOeiApplicationTrackingRequestAction(isCompleted, applicationTrackingType);\r\n }\r\n\r\n // return\r\n return (\r\n \r\n );\r\n}\r\n\r\n// connect redux\r\nexport default connect((state: any) => ({ state: state.oeiApplicationTracking }), { setLayout, getOeiApplicationTrackingRequestAction })(OeiApplicationTrackingController);\r\n","// kendo\r\nimport { orderBy } from \"@progress/kendo-data-query\";\r\nimport { Chart, ChartSeries, ChartSeriesItem, ChartLegend } from \"@progress/kendo-react-charts\";\r\n// api\r\nimport * as Client from \"../../../../api/Client\";\r\n// common\r\nimport LicenceLink from \"../../../../common/links/LicenceLinkView\";\r\nimport Help from \"../../../../common/help/HelpView\";\r\nimport * as Forms from \"../../../../common/forms/BootstrapForms\";\r\n// other\r\nimport * as GlobalHelpers from \"../../../../common/GlobalHelpers\";\r\n\r\nfunction ApplicationTrackingDetailsView(props: { response: Client.GetPublicOeiApplicationsTrackingDetailsResponseDto | undefined }) {\r\n const response = props.response;\r\n const approvalTrackingItems = response?.approvalTracking ?? new Array();\r\n // sort approval tracking items by public status display order\r\n const sortedApprovalTrackingItems = orderBy(approvalTrackingItems, [{ field: \"displayOrder\", dir: \"asc\" }]);\r\n\r\n function getStatusChartDescription(): string {\r\n const baseDescription = \"A bar chart displaying counts of Weekdays at each Status for the Application, grouped by Application Status.\";\r\n if (sortedApprovalTrackingItems.length === 0) return baseDescription;\r\n const statusResults = sortedApprovalTrackingItems.map((i) => `${i.applicationStatusName}: ${i.weekdaysAtStatus}`).join(\"; \");\r\n return baseDescription + \" The results are: \" + statusResults + \".\";\r\n }\r\n\r\n return (\r\n <>\r\n
\r\n
\r\n \r\n \r\n Licence / Name\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

\r\n Application Progress\r\n

\r\n \r\n {getStatusChartDescription()}\r\n \r\n
\r\n {/* approval tracking chart */}\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

Not all Application Statuses are relevant to all Applications.

\r\n
\r\n
\r\n \r\n );\r\n}\r\n\r\nexport default ApplicationTrackingDetailsView;\r\n","// framework\r\nimport { useEffect } from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport { useParams } from \"react-router-dom\";\r\n// shell\r\nimport { setLayout } from \"../../../../shell/redux/shellActions\";\r\n// api\r\nimport { clearOeiApplicationTrackingDetailsAction, getOeiApplicationTrackingDetailsRequestAction } from \"../redux/oeiApplicationTrackingDetailsActions\";\r\n// children views\r\nimport OeiApplicationTrackingDetailsView from \"./OeiApplicationTrackingDetailsView\";\r\nimport { IOeiApplicationTrackingDetailsState } from \"../redux/oeiApplicationTrackingDetailsReducers\";\r\n\r\ninterface IRouteParameters {\r\n applicationId: string;\r\n}\r\n\r\nfunction OeiApplicationTrackingDetailsController(props: any) {\r\n const { applicationId } = useParams();\r\n const { setLayout, getOeiApplicationTrackingDetailsRequestAction, clearOeiApplicationTrackingDetailsAction } = props;\r\n const state: IOeiApplicationTrackingDetailsState = props.state;\r\n\r\n // Application Tracking Details\r\n const response = state.response;\r\n\r\n // - initial load\r\n useEffect(() => {\r\n getOeiApplicationTrackingDetailsRequestAction(applicationId);\r\n\r\n return function onUnmount() {\r\n clearOeiApplicationTrackingDetailsAction();\r\n };\r\n }, [getOeiApplicationTrackingDetailsRequestAction, clearOeiApplicationTrackingDetailsAction, applicationId]);\r\n\r\n // - set page header when response received\r\n useEffect(() => {\r\n if (!response) {\r\n setLayout(\"\");\r\n return;\r\n }\r\n\r\n setLayout(response.licenceNumber + \" - \" + response.applicationTypeName);\r\n }, [setLayout, response]);\r\n\r\n // return\r\n return ;\r\n}\r\n\r\n// connect redux\r\nexport default connect((state: any) => ({ state: state.oeiApplicationTrackingDetails }), { setLayout, getOeiApplicationTrackingDetailsRequestAction, clearOeiApplicationTrackingDetailsAction })(\r\n OeiApplicationTrackingDetailsController\r\n);\r\n","// framework\r\nimport { useState } from \"react\";\r\nimport { DashIcon } from \"@primer/octicons-react\";\r\n// kendo\r\nimport { Grid, GridColumn } from \"@progress/kendo-react-grid\";\r\nimport { process, State } from \"@progress/kendo-data-query\";\r\n// api\r\nimport * as Client from \"../../../../api/Client\";\r\n// common\r\nimport TitleLink from \"../../../../common/links/TitleLinkView\";\r\nimport * as GlobalHelpers from \"../../../../common/GlobalHelpers\";\r\nimport CustomGridCell from \"../../../../common/kendoGrid/CustomGridCell\";\r\nimport { createGridColumnFilterMenu } from \"../../../../common/kendoGrid/GridColumnFilterMenu\";\r\nimport { createGridColumnCheckboxFilterMenu } from \"../../../../common/kendoGrid/GridColumnCheckboxFilterMenu\";\r\nimport * as OpenTitleHelper from \"../../../../open/title/openTitleHelper\";\r\nimport CopyLink from \"../../../../common/links/CopyLinkView\";\r\nimport * as SecureFileDownloadLinkControl from \"../../../../common/secureFileDownload/SecureFileDownloadLinkControl\";\r\n\r\nfunction StorageFormationsListView(props: { storageFormations: Client.GetPublicStorageFormationListItemDto[] }) {\r\n const initialGridState = {\r\n sort: [{ field: \"registeredDate\", dir: \"desc\" }],\r\n skip: 0,\r\n take: 10,\r\n } as State;\r\n const [gridState, setGridState] = useState(initialGridState);\r\n\r\n function documentDownload(fileId: number | undefined, titleNumber: string, applicationId: string) {\r\n if (!fileId) {\r\n return ;\r\n }\r\n\r\n // titleNumber will have a value when there is a file associated\r\n const uri = OpenTitleHelper.generateDownloadMemorialDocumentUrl(titleNumber!, applicationId);\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n );\r\n }\r\n\r\n // view\r\n return (\r\n <>\r\n
\r\n In accordance with section 315 of the OPGGS Act, the responsible Commonwealth Minister is to maintain a Register of Identified Greenhouse Gas Storage Formations.\r\n
\r\n\r\n {\r\n setGridState(e.dataState);\r\n }}\r\n >\r\n createGridColumnCheckboxFilterMenu(p, props.storageFormations)}\r\n cell={(props) => (\r\n \r\n \r\n \r\n )}\r\n />\r\n createGridColumnCheckboxFilterMenu(p, props.storageFormations)} />\r\n \r\n \r\n createGridColumnCheckboxFilterMenu(p, props.storageFormations)} />\r\n \r\n \r\n \r\n \r\n {documentDownload(props.dataItem.fileId, props.dataItem.titleNumber, props.dataItem.applicationId)}}\r\n />\r\n \r\n \r\n );\r\n}\r\n\r\nexport default StorageFormationsListView;\r\n","// framework\r\nimport { useEffect } from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport { setLayout } from \"../../../../shell/redux/shellActions\";\r\n// api\r\nimport * as Client from \"../../../../api/Client\";\r\n// other\r\nimport StorageFormationListView from \"./StorageFormationsListView\";\r\nimport { storageFormationsListRequestAction } from \"../redux/storageFormationsListActions\";\r\nimport { IStorageFormationsListState } from \"../redux/storageFormationsListReducers\";\r\n\r\nfunction StorageFormationsListController(props: any) {\r\n const { setLayout, storageFormationsListRequestAction } = props;\r\n\r\n const state: IStorageFormationsListState = props.state;\r\n const storageFormations = state.storageFormations ?? new Array();\r\n\r\n // initial load\r\n useEffect(() => {\r\n setLayout(\"The Register of Identified Greenhouse Gas Storage Formations\");\r\n storageFormationsListRequestAction();\r\n }, [setLayout, storageFormationsListRequestAction]);\r\n\r\n // return\r\n return ;\r\n}\r\n\r\n// connect redux\r\nexport default connect((state: any) => ({ state: state.storageFormationsList }), { setLayout, storageFormationsListRequestAction })(StorageFormationsListController);\r\n","import React, { useEffect } from \"react\";\r\nimport { setLayout } from \"../../shell/redux/shellActions\";\r\nimport { useDispatch } from \"react-redux\";\r\n\r\ninterface IProps {\r\n title: (string | undefined)[];\r\n titleReactNode?: React.ReactNode | undefined;\r\n navbar?: React.ReactNode | undefined;\r\n children: React.ReactNode;\r\n helpUrl?: string | undefined;\r\n}\r\n\r\nexport default function PageLayout(props: IProps): JSX.Element {\r\n const dispatch = useDispatch();\r\n\r\n let titleDisplay = props.title.filter((t) => t !== undefined && t !== \"\").join(\" - \");\r\n if (titleDisplay.length > 100) titleDisplay = titleDisplay.substring(0, 97) + \"...\";\r\n\r\n useEffect(() => {\r\n // titleDisplay: pass through the browser tab header\r\n // includePadding: true\r\n // showPageHeader: false - we provide a page header solution here\r\n dispatch(setLayout(titleDisplay, false, true, props.helpUrl));\r\n }, [titleDisplay]); // eslint-disable-line react-hooks/exhaustive-deps\r\n\r\n return (\r\n
\r\n {props.titleReactNode ? props.titleReactNode :

{titleDisplay}

}\r\n {props.navbar}\r\n {props.children}\r\n
\r\n );\r\n}\r\n","/**\n * @license\n *-------------------------------------------------------------------------------------------\n * Copyright © 2024 Progress Software Corporation. All rights reserved.\n * Licensed under commercial license. See LICENSE.md in the package root for more information\n *-------------------------------------------------------------------------------------------\n */\n\"use client\";\nimport * as n from \"react\";\nimport t from \"prop-types\";\nimport { svgIconPropType as P, classNames as p, IconWrap as y } from \"@progress/kendo-react-common\";\nimport { chevronUpIcon as q, chevronDownIcon as D } from \"@progress/kendo-svg-icons\";\nimport { Reveal as F } from \"@progress/kendo-react-animation\";\nfunction K({ imageUrl: d, icon: r, svgIcon: e, iconClass: o }) {\n return d ? /* @__PURE__ */ n.createElement(\"img\", { role: \"presentation\", className: \"k-panelbar-item-icon k-image\", src: d }) : r || e ? /* @__PURE__ */ n.createElement(y, { className: \"k-panelbar-item-icon\", name: r, icon: e }) : o ? /* @__PURE__ */ n.createElement(\"span\", { role: \"presentation\", className: \"k-panelbar-item-icon \" + o }) : null;\n}\nconst l = class l extends n.PureComponent {\n constructor(r) {\n super(r), this.handleItemClick = () => {\n const { onSelect: e, disabled: o, id: c } = this.props;\n e && !o && e.call(void 0, {\n uniquePrivateKey: this.props.uniquePrivateKey,\n id: c,\n target: this\n });\n }, this.childFactory = (e) => this.props.keepItemsMounted ? n.cloneElement(e, {\n ...e.props,\n in: this.props.expanded\n }) : e, this.state = {\n show: r.expanded || !1\n };\n }\n /**\n * @hidden\n */\n render() {\n const {\n id: r,\n children: e,\n title: o,\n uniquePrivateKey: c,\n disabled: a,\n selected: m,\n focused: E,\n expanded: s,\n className: g,\n level: u,\n headerClassName: v,\n animation: h,\n keepItemsMounted: i\n } = this.props, x = {\n role: \"treeitem\",\n \"aria-disabled\": a,\n \"aria-hidden\": !a && !s,\n \"aria-selected\": !a && m,\n \"aria-expanded\": !a && s && !!e\n }, N = p(\n \"k-panelbar-item\",\n {\n \"k-panelbar-header\": u === 0,\n \"k-expanded\": s && !!e,\n \"k-disabled\": a\n },\n `k-level-${u}`,\n g\n ), C = p(\n \"k-link\",\n {\n \"k-selected\": !a && m,\n \"k-focus\": E\n },\n v\n ), I = { display: \"block\" }, w = K(this.props), A = !a && e ? /* @__PURE__ */ n.createElement(\n y,\n {\n name: s ? \"chevron-up\" : \"chevron-down\",\n icon: s ? q : D,\n className: p(\"k-panelbar-toggle\", s ? \"k-panelbar-collapse\" : \"k-panelbar-expand\")\n }\n ) : null;\n let k = !1;\n e && e[0] && Array.isArray(e) && (k = e[0].type === l);\n const S = k ? /* @__PURE__ */ n.createElement(\n \"ul\",\n {\n role: \"group\",\n \"aria-expanded\": s,\n \"aria-hidden\": !s,\n className: \"k-panelbar-group\",\n style: { display: i ? this.state.show ? \"block\" : \"none\" : \"block\" }\n },\n e\n ) : e, b = !a && s || i ? S : null, T = (h === void 0 || h) && !a && e ? /* @__PURE__ */ n.createElement(\n F,\n {\n transitionEnterDuration: 200,\n transitionExitDuration: 200,\n key: c + \"_animation\",\n style: I,\n children: b,\n childFactory: i && this.childFactory,\n unmountOnExit: !i,\n onBeforeEnter: () => i && this.setState({ show: !0 }),\n onAfterExited: () => i && this.setState({ show: !1 })\n }\n ) : b;\n return /* @__PURE__ */ n.createElement(\"li\", { id: r, className: N, ...x }, /* @__PURE__ */ n.createElement(\"span\", { className: C, onClick: this.handleItemClick }, w, /* @__PURE__ */ n.createElement(\"span\", { className: \"k-panelbar-item-text\" }, o), A), T);\n }\n};\nl.propTypes = {\n animation: t.bool,\n children: t.any,\n className: t.string,\n icon: t.string,\n iconClass: t.string,\n imageUrl: t.string,\n svgIcon: P,\n expanded: t.bool,\n disabled: t.bool,\n onSelect: t.func,\n selected: t.bool,\n level: t.number,\n title: t.oneOfType([t.string, t.element]),\n id: t.oneOfType([t.string, t.number]),\n focused: t.bool,\n keepItemsMounted: t.bool\n}, l.defaultProps = {\n title: \"Untitled\"\n};\nlet f = l;\nexport {\n f as PanelBarItem\n};\n","/**\n * @license\n *-------------------------------------------------------------------------------------------\n * Copyright © 2024 Progress Software Corporation. All rights reserved.\n * Licensed under commercial license. See LICENSE.md in the package root for more information\n *-------------------------------------------------------------------------------------------\n */\n\"use client\";\nvar r = /* @__PURE__ */ ((e) => (e[e.Toggle = 0] = \"Toggle\", e[e.Next = 1] = \"Next\", e[e.Previous = 2] = \"Previous\", e[e.First = 3] = \"First\", e[e.Last = 4] = \"Last\", e[e.Left = 5] = \"Left\", e[e.Right = 6] = \"Right\", e))(r || {});\nexport {\n r as NavigationAction\n};\n","/**\n * @license\n *-------------------------------------------------------------------------------------------\n * Copyright © 2024 Progress Software Corporation. All rights reserved.\n * Licensed under commercial license. See LICENSE.md in the package root for more information\n *-------------------------------------------------------------------------------------------\n */\n\"use client\";\nimport * as u from \"react\";\nimport { PanelBarItem as g } from \"./PanelBarItem.mjs\";\nimport { NavigationAction as d } from \"./interfaces/NavigationAction.mjs\";\nconst I = (r) => typeof r != \"object\" || !(\"type\" in r) || r.type !== g, F = ({\n animation: r = !0,\n keepItemsMounted: n = !1,\n state: e,\n expanded: p,\n handleSelect: t,\n children: o,\n parentExpanded: i = !0,\n level: s = 0,\n parentPrivateKey: c = []\n}) => {\n const m = u.Children.toArray(o).filter(I), b = m.length ? m : o;\n return u.Children.map(b, (a, x) => {\n if (a && a.type === g) {\n let y;\n const f = l(a, c, x);\n if (a.props.children) {\n const v = {\n animation: r,\n keepItemsMounted: n,\n state: e,\n expanded: p,\n handleSelect: t,\n children: a.props.children,\n parentExpanded: (p || []).indexOf(f) > -1,\n level: s + 1,\n parentPrivateKey: [...c, f]\n };\n y = F(v);\n }\n return u.cloneElement(\n a,\n {\n ...a.props,\n animation: a.props.animation !== void 0 ? a.props.animation : r,\n keepItemsMounted: n,\n id: a.props.id || `k-panelbar-item-default-${f}`,\n uniquePrivateKey: f,\n parentUniquePrivateKey: c,\n parentExpanded: i,\n level: s,\n expanded: (p || []).indexOf(f) > -1,\n focused: e.focused === f && e.wrapperFocused,\n selected: e.selected === f,\n children: y,\n onSelect: t\n }\n );\n } else\n return /* @__PURE__ */ u.createElement(\"div\", { className: \"k-panelbar-content\" }, a);\n });\n}, $ = (r) => {\n const n = u.Children.toArray(r.children)[0];\n return n ? l(n, [], 0) : \"\";\n}, q = (r, n, e = {\n expanded: r.expanded || [],\n selected: r.selected || \"\",\n focused: r.focused || \"\",\n wrapperFocused: !1\n}, p = !0, t = []) => (u.Children.map(r.children, (o, i) => {\n if (o && o.type === g) {\n const s = l(o, t, i);\n !o.props.disabled && p && (o.props.selected && (e.selected = s), o.props.focused && (e.focused = s), o.props.expanded && (n === \"multiple\" ? e.expanded.push(s) : n === \"single\" && (e.expanded = [s])), o.props.children && (e = q(\n o.props,\n n,\n e,\n !!o.props.expanded,\n [...t, s]\n )));\n }\n}), e), l = (r, n, e) => r && r.props && r.props.id ? r.props.id : n.length ? n[n.length - 1] + `.${e}` : `.${e}`;\nfunction C(r, n = []) {\n return (r || []).forEach((e) => {\n e.disabled || (n.push(e), e.expanded && e.children && C(e.children, n));\n }), n;\n}\nfunction k(r, n = []) {\n return u.Children.forEach(r, (e) => {\n e && e.props && !e.props.disabled && (n.push(e), e.props.children && k(e.props.children, n));\n }), n;\n}\nfunction P(r, n = []) {\n return u.Children.forEach(r, (e) => {\n e && e.props && (e.props.expanded || e.props.parentExpanded) && (n.push(e), e.props.children && P(e.props.children, n));\n }), n;\n}\nconst B = (r) => r != null;\nvar E;\n((r) => {\n function n(e) {\n return e.map((p, t) => {\n let o;\n return p.content && (o = p.content), p.children && (o = n(p.children)), /* @__PURE__ */ u.createElement(\n g,\n {\n ...p,\n children: o,\n key: p.id || t\n }\n );\n });\n }\n r.mapItemsToComponents = n;\n})(E || (E = {}));\nconst K = (r, n) => r.length !== n.length ? !1 : r.every((e, p) => e === n[p]), L = (r, n, e, p, t) => {\n let o;\n if (t === d.First || t === d.Last)\n switch (t) {\n case d.First:\n o = r[0];\n break;\n case d.Last:\n o = r[r.length - 1];\n break;\n }\n else\n r.forEach((i, s) => {\n if (i.props.uniquePrivateKey === (e.uniquePrivateKey || p)) {\n const c = s + n < 0 ? r.length - 1 : s + n > r.length - 1 ? 0 : s + n;\n o = r[c];\n }\n });\n return o;\n};\nexport {\n E as PanelBarUtils,\n k as flatChildren,\n P as flatVisibleChildren,\n C as flatVisibleItems,\n $ as getFirstId,\n L as getFocusedChild,\n q as getInitialState,\n K as isArrayEqual,\n B as isPresent,\n F as renderChildren\n};\n","/**\n * @license\n *-------------------------------------------------------------------------------------------\n * Copyright © 2024 Progress Software Corporation. All rights reserved.\n * Licensed under commercial license. See LICENSE.md in the package root for more information\n *-------------------------------------------------------------------------------------------\n */\n\"use client\";\nimport * as c from \"react\";\nimport o from \"prop-types\";\nimport { PanelBarItem as m } from \"./PanelBarItem.mjs\";\nimport { flatChildren as k, isArrayEqual as P, flatVisibleChildren as b, getFocusedChild as I, getInitialState as S, getFirstId as K, renderChildren as v } from \"./util.mjs\";\nimport { Keys as l, validatePackage as w, shouldShowValidationUI as F, classNames as q, WatermarkOverlay as C } from \"@progress/kendo-react-common\";\nimport { packageMetadata as y } from \"../package-metadata.mjs\";\nimport { NavigationAction as r } from \"./interfaces/NavigationAction.mjs\";\nconst h = class h extends c.Component {\n constructor(a) {\n super(a), this._element = null, this.showLicenseWatermark = !1, this.handleSelect = (t) => {\n this.onSelect(t), this.onFocus(t);\n }, this.onSelect = (t) => {\n const n = k(c.Children.toArray(this.children));\n let s, i;\n switch (n.forEach((e) => {\n e.props.uniquePrivateKey === (t.uniquePrivateKey || this.state.focused) && (s = e);\n }), this.expandMode) {\n case \"single\":\n i = [...s.props.parentUniquePrivateKey, s.props.uniquePrivateKey], P(this.expandedItems, i) && (s.props.parentUniquePrivateKey ? i = [...s.props.parentUniquePrivateKey] : i = []);\n break;\n case \"multiple\": {\n i = this.expandedItems.slice();\n const e = i.indexOf(s.props.uniquePrivateKey);\n e === -1 ? i.push(s.props.uniquePrivateKey) : i.splice(e, 1);\n break;\n }\n default:\n i = this.expandedItems.slice();\n break;\n }\n this.setState({ selected: s.props.uniquePrivateKey, expanded: i }), this.props.onSelect && this.props.onSelect.call(void 0, {\n target: s,\n expandedItems: i\n });\n }, this.onFocus = (t, n = 0, s) => {\n const i = b(c.Children.toArray(this.children)), e = I(i, n, t, this.state.focused, s);\n if (e) {\n const d = this.expandedItems.slice();\n if (s === r.Right && e && e.props && e.props.children && e.props.children.length > 0) {\n if (d.push(e.props.uniquePrivateKey), this.setState({ expanded: [...new Set(d)] }), e.props.expanded) {\n const u = e.props.children[0].props.uniquePrivateKey;\n this.setState({ focused: u });\n }\n } else if (s === r.Left && (e && e.props && e.props.parentUniquePrivateKey && e.props.parentUniquePrivateKey.length > 0 || e && e.props && !e.props.disabled && e.props.children && e.props.children.length > 0)) {\n const u = e.props.parentUniquePrivateKey;\n if (e.props.expanded) {\n const f = e.props.uniquePrivateKey, g = d.indexOf(f);\n d.splice(g, 1), this.setState({ expanded: d });\n } else if (e.props.level > 0) {\n const f = e.props.parentUniquePrivateKey[u.length - 1];\n this.setState({ focused: f });\n }\n } else\n this.activeDescendant = e.props.id, this.setState({ focused: e.props.uniquePrivateKey });\n }\n }, this.onNavigate = (t, n) => {\n let s;\n switch (n) {\n case r.First:\n this.onFocus(t, s, r.First);\n break;\n case r.Last:\n this.onFocus(t, s, r.Last);\n break;\n case r.Left:\n this.onFocus(t, s, r.Left);\n break;\n case r.Right:\n this.onFocus(t, s, r.Right);\n break;\n case r.Previous:\n s = -1, this.onFocus(t, s);\n break;\n case r.Next:\n s = 1, this.onFocus(t, s);\n break;\n case r.Toggle:\n this.onSelect(t);\n break;\n }\n }, this.handleWrapperFocus = () => {\n clearTimeout(this.nextTickId), this.state.wrapperFocused || this.setState({ wrapperFocused: !0 });\n }, this.handleWrapperBlur = () => {\n this.nextTick(() => {\n this.setState({ wrapperFocused: !1 });\n });\n }, this.handleKeyDown = (t) => {\n const n = this._element && getComputedStyle(this._element).direction === \"rtl\" || !1;\n if (t.target === t.currentTarget) {\n const s = t.keyCode;\n let i;\n switch (s) {\n case l.left:\n i = n ? r.Right : r.Left;\n break;\n case l.up:\n i = r.Previous;\n break;\n case l.right:\n i = n ? r.Left : r.Right;\n break;\n case l.down:\n i = r.Next;\n break;\n case l.home:\n i = r.First;\n break;\n case l.end:\n i = r.Last;\n break;\n case l.space:\n case l.enter:\n i = r.Toggle;\n break;\n default:\n i = null;\n break;\n }\n i !== null && (t.preventDefault(), this.onNavigate(t, i));\n }\n }, w(y), this.showLicenseWatermark = F(y);\n const p = S(a, this.expandMode);\n p.focused || (p.focused = K(a)), this.state = p;\n }\n get expandMode() {\n return this.props.expandMode || \"multiple\";\n }\n get selectedItem() {\n const { selected: a = this.state.selected } = this.props;\n return a;\n }\n get expandedItems() {\n return this.props.isControlled ? this.props.expanded || [] : this.state.expanded;\n }\n get children() {\n const a = { ...this.state, selected: this.selectedItem }, p = {\n animation: this.props.animation,\n keepItemsMounted: this.props.keepItemsMounted,\n state: a,\n expanded: this.expandedItems,\n handleSelect: this.handleSelect,\n children: this.props.children\n };\n return v(p);\n }\n /**\n * @hidden\n */\n render() {\n const a = {\n \"aria-activedescendant\": this.activeDescendant\n }, p = q(\n \"k-panelbar\",\n this.props.className\n );\n return /* @__PURE__ */ c.createElement(\n \"ul\",\n {\n ref: (t) => {\n this._element = t;\n },\n dir: this.props.dir,\n role: \"tree\",\n tabIndex: 0,\n onKeyDown: this.handleKeyDown,\n onFocus: this.handleWrapperFocus,\n onBlur: this.handleWrapperBlur,\n className: p,\n style: this.props.style,\n ...a\n },\n this.children,\n this.showLicenseWatermark && /* @__PURE__ */ c.createElement(C, null)\n );\n }\n nextTick(a) {\n this.nextTickId = window.setTimeout(() => a());\n }\n};\nh.propTypes = {\n animation: o.bool,\n children: function(a, p) {\n const t = a[p];\n if (t) {\n if (Array.isArray(t)) {\n for (const n of t)\n if (!n.type || n.type !== m)\n return new Error(\n \"PanelBar children should be either PanelBarItem or Array of PanelBarItem.\"\n );\n } else if (t.type !== m)\n return new Error(\n \"PanelBar child should be either PanelBarItem or Array of PanelBarItem.\"\n );\n return null;\n }\n return null;\n },\n dir: o.string,\n selected: o.string,\n expanded: o.arrayOf(o.string),\n focused: o.string,\n expandMode: o.oneOf([\"single\", \"multiple\"]),\n className: o.string,\n keepItemsMounted: o.bool,\n onSelect: o.func,\n style: o.object\n}, h.defaultProps = {\n expandMode: \"multiple\",\n animation: !0,\n keepItemsMounted: !1\n};\nlet x = h;\nexport {\n x as PanelBar\n};\n","import React from \"react\";\r\nimport { PanelBar, PanelBarSelectEventArguments, PanelBarUtils } from \"@progress/kendo-react-layout\";\r\nimport { useHistory } from \"react-router-dom\";\r\nimport * as RouteHelper from \"../routeHelper\";\r\n\r\nexport enum nopimsLhsNavItemEnum {\r\n Home = \"Home\",\r\n Wells = \"Wells\",\r\n Surveys = \"Surveys\",\r\n Reprocessing = \"Reprocessing\",\r\n ReleasedDocuments = \"ReleasedDocuments\",\r\n CoreLibrary = \"CoreLibrary\",\r\n CoreLibrary_Search = \"CoreLibrary_Search\",\r\n CoreLibrary_CoresAndCuttingsRequest = \"CoreLibrary_CoresAndCuttingsRequest\",\r\n GisMap = \"GisMap\",\r\n Feedback = \"Feedback\",\r\n ShoppingCart = \"ShoppingCart\",\r\n}\r\n\r\ninterface IItem {\r\n id: string;\r\n title: string;\r\n children?: Array | undefined;\r\n}\r\n\r\ninterface IProps {\r\n item: nopimsLhsNavItemEnum | undefined;\r\n}\r\n\r\nexport default function NopimsLhsNav(props: IProps) {\r\n const history = useHistory();\r\n\r\n const items: Array = [\r\n { id: nopimsLhsNavItemEnum.Home, title: \"NOPIMS Home\" },\r\n { id: nopimsLhsNavItemEnum.Wells, title: \"Wells\" },\r\n { id: nopimsLhsNavItemEnum.Surveys, title: \"Surveys\" },\r\n { id: nopimsLhsNavItemEnum.Reprocessing, title: \"Reprocessing\" },\r\n { id: nopimsLhsNavItemEnum.ReleasedDocuments, title: \"Released Documents\" },\r\n {\r\n id: nopimsLhsNavItemEnum.CoreLibrary,\r\n title: \"Core Library\",\r\n children: [\r\n { id: nopimsLhsNavItemEnum.CoreLibrary_Search, title: \"Core Library\" },\r\n { id: nopimsLhsNavItemEnum.CoreLibrary_CoresAndCuttingsRequest, title: \"Core Request\" },\r\n ],\r\n },\r\n { id: nopimsLhsNavItemEnum.GisMap, title: \"GIS Map\" },\r\n { id: nopimsLhsNavItemEnum.Feedback, title: \"Feedback\" },\r\n ];\r\n let itemComponents: any = PanelBarUtils.mapItemsToComponents(items as Array);\r\n\r\n function onSelect(e: PanelBarSelectEventArguments) {\r\n if (!e.target.props.id) return;\r\n if (e.expandedItems) setExpanded(e.expandedItems);\r\n\r\n const route = getRoute(e.target.props.id);\r\n if (route) history.push(route);\r\n }\r\n\r\n const id = props.item?.toString();\r\n const expandedIds = id ? getExpandedItemIds(items, id) : [];\r\n const [expanded, setExpanded] = React.useState(expandedIds);\r\n\r\n return ;\r\n}\r\n\r\nfunction getExpandedItemIds(items: Array, id: string): Array {\r\n // and a big thanks to kendo for not supplying this solution\r\n let result: Array = [];\r\n for (let i = 0; i < items.length; i++) {\r\n // id found in this collection: return early\r\n if (items[i].id === id) {\r\n result = [...result, id];\r\n break;\r\n }\r\n // id found in a child: add this node and return early\r\n if (items[i].children) {\r\n const children = getExpandedItemIds(items[i].children!, id);\r\n if (children.length > 0) {\r\n result = [...result, items[i].id, ...children];\r\n break;\r\n }\r\n }\r\n }\r\n return result;\r\n}\r\n\r\nfunction getRoute(id: string): string | undefined {\r\n // TODO need a routeHelper setup for PEPI!\r\n\r\n switch (id) {\r\n case nopimsLhsNavItemEnum.Home:\r\n return RouteHelper.home();\r\n case nopimsLhsNavItemEnum.Wells:\r\n return RouteHelper.wells();\r\n case nopimsLhsNavItemEnum.Surveys:\r\n return RouteHelper.surveys();\r\n case nopimsLhsNavItemEnum.Reprocessing:\r\n return RouteHelper.reprocessing();\r\n case nopimsLhsNavItemEnum.ReleasedDocuments:\r\n return RouteHelper.releasedDocuments();\r\n case nopimsLhsNavItemEnum.CoreLibrary:\r\n return undefined;\r\n case nopimsLhsNavItemEnum.GisMap:\r\n return RouteHelper.gisMap();\r\n case nopimsLhsNavItemEnum.Feedback:\r\n return RouteHelper.formsFeedback();\r\n case nopimsLhsNavItemEnum.CoreLibrary_Search:\r\n return RouteHelper.coreLibrary();\r\n case nopimsLhsNavItemEnum.CoreLibrary_CoresAndCuttingsRequest:\r\n return RouteHelper.formsCoreCuttingsRequest();\r\n default:\r\n throw new Error();\r\n }\r\n}\r\n","export var IconsManifest = [\n {\n \"id\": \"ci\",\n \"name\": \"Circum Icons\",\n \"projectUrl\": \"https://circumicons.com/\",\n \"license\": \"MPL-2.0 license\",\n \"licenseUrl\": \"https://github.com/Klarr-Agency/Circum-Icons/blob/main/LICENSE\"\n },\n {\n \"id\": \"fa\",\n \"name\": \"Font Awesome 5\",\n \"projectUrl\": \"https://fontawesome.com/\",\n \"license\": \"CC BY 4.0 License\",\n \"licenseUrl\": \"https://creativecommons.org/licenses/by/4.0/\"\n },\n {\n \"id\": \"fa6\",\n \"name\": \"Font Awesome 6\",\n \"projectUrl\": \"https://fontawesome.com/\",\n \"license\": \"CC BY 4.0 License\",\n \"licenseUrl\": \"https://creativecommons.org/licenses/by/4.0/\"\n },\n {\n \"id\": \"io\",\n \"name\": \"Ionicons 4\",\n \"projectUrl\": \"https://ionicons.com/\",\n \"license\": \"MIT\",\n \"licenseUrl\": \"https://github.com/ionic-team/ionicons/blob/master/LICENSE\"\n },\n {\n \"id\": \"io5\",\n \"name\": \"Ionicons 5\",\n \"projectUrl\": \"https://ionicons.com/\",\n \"license\": \"MIT\",\n \"licenseUrl\": \"https://github.com/ionic-team/ionicons/blob/master/LICENSE\"\n },\n {\n \"id\": \"md\",\n \"name\": \"Material Design icons\",\n \"projectUrl\": \"http://google.github.io/material-design-icons/\",\n \"license\": \"Apache License Version 2.0\",\n \"licenseUrl\": \"https://github.com/google/material-design-icons/blob/master/LICENSE\"\n },\n {\n \"id\": \"ti\",\n \"name\": \"Typicons\",\n \"projectUrl\": \"http://s-ings.com/typicons/\",\n \"license\": \"CC BY-SA 3.0\",\n \"licenseUrl\": \"https://creativecommons.org/licenses/by-sa/3.0/\"\n },\n {\n \"id\": \"go\",\n \"name\": \"Github Octicons icons\",\n \"projectUrl\": \"https://octicons.github.com/\",\n \"license\": \"MIT\",\n \"licenseUrl\": \"https://github.com/primer/octicons/blob/master/LICENSE\"\n },\n {\n \"id\": \"fi\",\n \"name\": \"Feather\",\n \"projectUrl\": \"https://feathericons.com/\",\n \"license\": \"MIT\",\n \"licenseUrl\": \"https://github.com/feathericons/feather/blob/master/LICENSE\"\n },\n {\n \"id\": \"lu\",\n \"name\": \"Lucide\",\n \"projectUrl\": \"https://lucide.dev/\",\n \"license\": \"ISC\",\n \"licenseUrl\": \"https://github.com/lucide-icons/lucide/blob/main/LICENSE\"\n },\n {\n \"id\": \"gi\",\n \"name\": \"Game Icons\",\n \"projectUrl\": \"https://game-icons.net/\",\n \"license\": \"CC BY 3.0\",\n \"licenseUrl\": \"https://creativecommons.org/licenses/by/3.0/\"\n },\n {\n \"id\": \"wi\",\n \"name\": \"Weather Icons\",\n \"projectUrl\": \"https://erikflowers.github.io/weather-icons/\",\n \"license\": \"SIL OFL 1.1\",\n \"licenseUrl\": \"http://scripts.sil.org/OFL\"\n },\n {\n \"id\": \"di\",\n \"name\": \"Devicons\",\n \"projectUrl\": \"https://vorillaz.github.io/devicons/\",\n \"license\": \"MIT\",\n \"licenseUrl\": \"https://opensource.org/licenses/MIT\"\n },\n {\n \"id\": \"ai\",\n \"name\": \"Ant Design Icons\",\n \"projectUrl\": \"https://github.com/ant-design/ant-design-icons\",\n \"license\": \"MIT\",\n \"licenseUrl\": \"https://opensource.org/licenses/MIT\"\n },\n {\n \"id\": \"bs\",\n \"name\": \"Bootstrap Icons\",\n \"projectUrl\": \"https://github.com/twbs/icons\",\n \"license\": \"MIT\",\n \"licenseUrl\": \"https://opensource.org/licenses/MIT\"\n },\n {\n \"id\": \"ri\",\n \"name\": \"Remix Icon\",\n \"projectUrl\": \"https://github.com/Remix-Design/RemixIcon\",\n \"license\": \"Apache License Version 2.0\",\n \"licenseUrl\": \"http://www.apache.org/licenses/\"\n },\n {\n \"id\": \"fc\",\n \"name\": \"Flat Color Icons\",\n \"projectUrl\": \"https://github.com/icons8/flat-color-icons\",\n \"license\": \"MIT\",\n \"licenseUrl\": \"https://opensource.org/licenses/MIT\"\n },\n {\n \"id\": \"gr\",\n \"name\": \"Grommet-Icons\",\n \"projectUrl\": \"https://github.com/grommet/grommet-icons\",\n \"license\": \"Apache License Version 2.0\",\n \"licenseUrl\": \"http://www.apache.org/licenses/\"\n },\n {\n \"id\": \"hi\",\n \"name\": \"Heroicons\",\n \"projectUrl\": \"https://github.com/tailwindlabs/heroicons\",\n \"license\": \"MIT\",\n \"licenseUrl\": \"https://opensource.org/licenses/MIT\"\n },\n {\n \"id\": \"hi2\",\n \"name\": \"Heroicons 2\",\n \"projectUrl\": \"https://github.com/tailwindlabs/heroicons\",\n \"license\": \"MIT\",\n \"licenseUrl\": \"https://opensource.org/licenses/MIT\"\n },\n {\n \"id\": \"si\",\n \"name\": \"Simple Icons\",\n \"projectUrl\": \"https://simpleicons.org/\",\n \"license\": \"CC0 1.0 Universal\",\n \"licenseUrl\": \"https://creativecommons.org/publicdomain/zero/1.0/\"\n },\n {\n \"id\": \"sl\",\n \"name\": \"Simple Line Icons\",\n \"projectUrl\": \"https://thesabbir.github.io/simple-line-icons/\",\n \"license\": \"MIT\",\n \"licenseUrl\": \"https://opensource.org/licenses/MIT\"\n },\n {\n \"id\": \"im\",\n \"name\": \"IcoMoon Free\",\n \"projectUrl\": \"https://github.com/Keyamoon/IcoMoon-Free\",\n \"license\": \"CC BY 4.0 License\",\n \"licenseUrl\": \"https://github.com/Keyamoon/IcoMoon-Free/blob/master/License.txt\"\n },\n {\n \"id\": \"bi\",\n \"name\": \"BoxIcons\",\n \"projectUrl\": \"https://github.com/atisawd/boxicons\",\n \"license\": \"MIT\",\n \"licenseUrl\": \"https://github.com/atisawd/boxicons/blob/master/LICENSE\"\n },\n {\n \"id\": \"cg\",\n \"name\": \"css.gg\",\n \"projectUrl\": \"https://github.com/astrit/css.gg\",\n \"license\": \"MIT\",\n \"licenseUrl\": \"https://opensource.org/licenses/MIT\"\n },\n {\n \"id\": \"vsc\",\n \"name\": \"VS Code Icons\",\n \"projectUrl\": \"https://github.com/microsoft/vscode-codicons\",\n \"license\": \"CC BY 4.0\",\n \"licenseUrl\": \"https://creativecommons.org/licenses/by/4.0/\"\n },\n {\n \"id\": \"tb\",\n \"name\": \"Tabler Icons\",\n \"projectUrl\": \"https://github.com/tabler/tabler-icons\",\n \"license\": \"MIT\",\n \"licenseUrl\": \"https://opensource.org/licenses/MIT\"\n },\n {\n \"id\": \"tfi\",\n \"name\": \"Themify Icons\",\n \"projectUrl\": \"https://github.com/lykmapipo/themify-icons\",\n \"license\": \"MIT\",\n \"licenseUrl\": \"https://github.com/thecreation/standard-icons/blob/master/modules/themify-icons/LICENSE\"\n },\n {\n \"id\": \"rx\",\n \"name\": \"Radix Icons\",\n \"projectUrl\": \"https://icons.radix-ui.com\",\n \"license\": \"MIT\",\n \"licenseUrl\": \"https://github.com/radix-ui/icons/blob/master/LICENSE\"\n },\n {\n \"id\": \"pi\",\n \"name\": \"Phosphor Icons\",\n \"projectUrl\": \"https://github.com/phosphor-icons/core\",\n \"license\": \"MIT\",\n \"licenseUrl\": \"https://github.com/phosphor-icons/core/blob/main/LICENSE\"\n },\n {\n \"id\": \"lia\",\n \"name\": \"Icons8 Line Awesome\",\n \"projectUrl\": \"https://icons8.com/line-awesome\",\n \"license\": \"MIT\",\n \"licenseUrl\": \"https://github.com/icons8/line-awesome/blob/master/LICENSE.md\"\n }\n]","import React from \"react\";\nexport var DefaultContext = {\n color: undefined,\n size: undefined,\n className: undefined,\n style: undefined,\n attr: undefined\n};\nexport var IconContext = React.createContext && /*#__PURE__*/React.createContext(DefaultContext);","var _excluded = [\"attr\", \"size\", \"title\"];\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } } return target; }\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nfunction ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nimport React from \"react\";\nimport { IconContext, DefaultContext } from \"./iconContext.mjs\";\nfunction Tree2Element(tree) {\n return tree && tree.map((node, i) => /*#__PURE__*/React.createElement(node.tag, _objectSpread({\n key: i\n }, node.attr), Tree2Element(node.child)));\n}\nexport function GenIcon(data) {\n return props => /*#__PURE__*/React.createElement(IconBase, _extends({\n attr: _objectSpread({}, data.attr)\n }, props), Tree2Element(data.child));\n}\nexport function IconBase(props) {\n var elem = conf => {\n var {\n attr,\n size,\n title\n } = props,\n svgProps = _objectWithoutProperties(props, _excluded);\n var computedSize = size || conf.size || \"1em\";\n var className;\n if (conf.className) className = conf.className;\n if (props.className) className = (className ? className + \" \" : \"\") + props.className;\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n stroke: \"currentColor\",\n fill: \"currentColor\",\n strokeWidth: \"0\"\n }, conf.attr, attr, svgProps, {\n className: className,\n style: _objectSpread(_objectSpread({\n color: props.color || conf.color\n }, conf.style), props.style),\n height: computedSize,\n width: computedSize,\n xmlns: \"http://www.w3.org/2000/svg\"\n }), title && /*#__PURE__*/React.createElement(\"title\", null, title), props.children);\n };\n return IconContext !== undefined ? /*#__PURE__*/React.createElement(IconContext.Consumer, null, conf => elem(conf)) : elem(DefaultContext);\n}","// THIS FILE IS AUTO GENERATED\nimport { GenIcon } from '../lib/index.mjs';\nexport function BsFill0CircleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 4.951c-1.008 0-1.629 1.09-1.629 2.895v.31c0 1.81.627 2.895 1.629 2.895s1.623-1.09 1.623-2.895v-.31c0-1.8-.621-2.895-1.623-2.895\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0m-8.012 4.158c1.858 0 2.96-1.582 2.96-3.99V7.84c0-2.426-1.079-3.996-2.936-3.996-1.864 0-2.965 1.588-2.965 3.996v.328c0 2.42 1.09 3.99 2.941 3.99\"},\"child\":[]}]})(props);\n};\nexport function BsFill0SquareFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 4.951c-1.008 0-1.629 1.09-1.629 2.895v.31c0 1.81.627 2.895 1.629 2.895s1.623-1.09 1.623-2.895v-.31c0-1.8-.621-2.895-1.623-2.895\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm5.988 12.158c-1.851 0-2.941-1.57-2.941-3.99V7.84c0-2.408 1.101-3.996 2.965-3.996 1.857 0 2.935 1.57 2.935 3.996v.328c0 2.408-1.101 3.99-2.959 3.99\"},\"child\":[]}]})(props);\n};\nexport function BsFill1CircleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0M9.283 4.002H7.971L6.072 5.385v1.271l1.834-1.318h.065V12h1.312z\"},\"child\":[]}]})(props);\n};\nexport function BsFill1SquareFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm7.283 4.002V12H7.971V5.338h-.065L6.072 6.656V5.385l1.899-1.383z\"},\"child\":[]}]})(props);\n};\nexport function BsFill2CircleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0M6.646 6.24c0-.691.493-1.306 1.336-1.306.756 0 1.313.492 1.313 1.236 0 .697-.469 1.23-.902 1.705l-2.971 3.293V12h5.344v-1.107H7.268v-.077l1.974-2.22.096-.107c.688-.763 1.287-1.428 1.287-2.43 0-1.266-1.031-2.215-2.613-2.215-1.758 0-2.637 1.19-2.637 2.402v.065h1.271v-.07Z\"},\"child\":[]}]})(props);\n};\nexport function BsFill2SquareFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm4.646 6.24v.07H5.375v-.064c0-1.213.879-2.402 2.637-2.402 1.582 0 2.613.949 2.613 2.215 0 1.002-.6 1.667-1.287 2.43l-.096.107-1.974 2.22v.077h3.498V12H5.422v-.832l2.97-3.293c.434-.475.903-1.008.903-1.705 0-.744-.557-1.236-1.313-1.236-.843 0-1.336.615-1.336 1.306\"},\"child\":[]}]})(props);\n};\nexport function BsFill3CircleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0m-8.082.414c.92 0 1.535.54 1.541 1.318.012.791-.615 1.36-1.588 1.354-.861-.006-1.482-.469-1.54-1.066H5.104c.047 1.177 1.05 2.144 2.754 2.144 1.653 0 2.954-.937 2.93-2.396-.023-1.278-1.031-1.846-1.734-1.916v-.07c.597-.1 1.505-.739 1.482-1.876-.03-1.177-1.043-2.074-2.637-2.062-1.675.006-2.59.984-2.625 2.12h1.248c.036-.556.557-1.054 1.348-1.054.785 0 1.348.486 1.348 1.195.006.715-.563 1.237-1.342 1.237h-.838v1.072h.879Z\"},\"child\":[]}]})(props);\n};\nexport function BsFill3SquareFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm5.918 8.414h-.879V7.342h.838c.78 0 1.348-.522 1.342-1.237 0-.709-.563-1.195-1.348-1.195-.79 0-1.312.498-1.348 1.055H5.275c.036-1.137.95-2.115 2.625-2.121 1.594-.012 2.608.885 2.637 2.062.023 1.137-.885 1.776-1.482 1.875v.07c.703.07 1.71.64 1.734 1.917.024 1.459-1.277 2.396-2.93 2.396-1.705 0-2.707-.967-2.754-2.144H6.33c.059.597.68 1.06 1.541 1.066.973.006 1.6-.563 1.588-1.354-.006-.779-.621-1.318-1.541-1.318\"},\"child\":[]}]})(props);\n};\nexport function BsFill4CircleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0M7.519 5.057c-.886 1.418-1.772 2.838-2.542 4.265v1.12H8.85V12h1.26v-1.559h1.007V9.334H10.11V4.002H8.176zM6.225 9.281v.053H8.85V5.063h-.065c-.867 1.33-1.787 2.806-2.56 4.218\"},\"child\":[]}]})(props);\n};\nexport function BsFill4SquareFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.225 9.281v.053H8.85V5.063h-.065c-.867 1.33-1.787 2.806-2.56 4.218\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm5.519 5.057q.33-.527.657-1.055h1.933v5.332h1.008v1.107H10.11V12H8.85v-1.559H4.978V9.322c.77-1.427 1.656-2.847 2.542-4.265Z\"},\"child\":[]}]})(props);\n};\nexport function BsFill5CircleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0m-8.006 4.158c1.74 0 2.924-1.119 2.924-2.806 0-1.641-1.178-2.584-2.56-2.584-.897 0-1.442.421-1.612.68h-.064l.193-2.344h3.621V4.002H5.791L5.445 8.63h1.149c.193-.358.668-.809 1.435-.809.85 0 1.582.604 1.582 1.57 0 1.085-.779 1.682-1.57 1.682-.697 0-1.389-.31-1.53-1.031H5.276c.065 1.213 1.149 2.115 2.72 2.115Z\"},\"child\":[]}]})(props);\n};\nexport function BsFill5SquareFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm5.994 12.158c-1.57 0-2.654-.902-2.719-2.115h1.237c.14.72.832 1.031 1.529 1.031.791 0 1.57-.597 1.57-1.681 0-.967-.732-1.57-1.582-1.57-.767 0-1.242.45-1.435.808H5.445L5.791 4h4.705v1.103H6.875l-.193 2.343h.064c.17-.258.715-.68 1.611-.68 1.383 0 2.561.944 2.561 2.585 0 1.687-1.184 2.806-2.924 2.806Z\"},\"child\":[]}]})(props);\n};\nexport function BsFill6CircleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0M8.21 3.855c-1.868 0-3.116 1.395-3.116 4.407 0 1.183.228 2.039.597 2.642.569.926 1.477 1.254 2.409 1.254 1.629 0 2.847-1.013 2.847-2.783 0-1.676-1.254-2.555-2.508-2.555-1.125 0-1.752.61-1.98 1.155h-.082c-.012-1.946.727-3.036 1.805-3.036.802 0 1.213.457 1.312.815h1.29c-.06-.908-.962-1.899-2.573-1.899Zm-.099 4.008c-.92 0-1.564.65-1.564 1.576 0 1.032.703 1.635 1.558 1.635.868 0 1.553-.533 1.553-1.629 0-1.06-.744-1.582-1.547-1.582\"},\"child\":[]}]})(props);\n};\nexport function BsFill6SquareFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.111 7.863c-.92 0-1.564.65-1.564 1.576 0 1.032.703 1.635 1.558 1.635.868 0 1.553-.533 1.553-1.629 0-1.06-.744-1.582-1.547-1.582\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm6.21 3.855c1.612 0 2.515.99 2.573 1.899H9.494c-.1-.358-.51-.815-1.312-.815-1.078 0-1.817 1.09-1.805 3.036h.082c.229-.545.855-1.155 1.98-1.155 1.254 0 2.508.88 2.508 2.555 0 1.77-1.218 2.783-2.847 2.783-.932 0-1.84-.328-2.409-1.254-.369-.603-.597-1.459-.597-2.642 0-3.012 1.248-4.407 3.117-4.407Z\"},\"child\":[]}]})(props);\n};\nexport function BsFill7CircleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0M5.37 5.11h3.972v.07L6.025 12H7.42l3.258-6.85V4.002H5.369v1.107Z\"},\"child\":[]}]})(props);\n};\nexport function BsFill7SquareFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm3.37 5.11V4.001h5.308V5.15L7.42 12H6.025l3.317-6.82v-.07H5.369Z\"},\"child\":[]}]})(props);\n};\nexport function BsFill8CircleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0m-5.03 1.803c0-1.248-.943-1.84-1.646-1.992v-.065c.598-.187 1.336-.72 1.336-1.781 0-1.225-1.084-2.121-2.654-2.121s-2.66.896-2.66 2.12c0 1.044.709 1.589 1.33 1.782v.065c-.697.152-1.647.732-1.647 2.003 0 1.39 1.19 2.344 2.953 2.344 1.77 0 2.989-.96 2.989-2.355Zm-4.347-3.71c0 .739.586 1.255 1.383 1.255s1.377-.516 1.377-1.254c0-.733-.58-1.23-1.377-1.23s-1.383.497-1.383 1.23Zm-.281 3.645c0 .838.72 1.412 1.664 1.412.943 0 1.658-.574 1.658-1.412 0-.843-.715-1.424-1.658-1.424-.944 0-1.664.58-1.664 1.424\"},\"child\":[]}]})(props);\n};\nexport function BsFill8SquareFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.623 6.094c0 .738.586 1.254 1.383 1.254s1.377-.516 1.377-1.254c0-.733-.58-1.23-1.377-1.23s-1.383.497-1.383 1.23m-.281 3.644c0 .838.72 1.412 1.664 1.412.943 0 1.658-.574 1.658-1.412 0-.843-.715-1.424-1.658-1.424-.944 0-1.664.58-1.664 1.424\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm8.97 9.803c0 1.394-1.218 2.355-2.988 2.355-1.763 0-2.953-.955-2.953-2.344 0-1.271.95-1.851 1.647-2.003v-.065c-.621-.193-1.33-.738-1.33-1.781 0-1.225 1.09-2.121 2.66-2.121s2.654.896 2.654 2.12c0 1.061-.738 1.595-1.336 1.782v.065c.703.152 1.647.744 1.647 1.992Z\"},\"child\":[]}]})(props);\n};\nexport function BsFill9CircleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0m-8.223 4.146c2.104 0 3.123-1.464 3.123-4.3 0-3.147-1.459-4.014-2.97-4.014-1.63 0-2.871 1.02-2.871 2.73 0 1.706 1.171 2.667 2.566 2.667 1.06 0 1.7-.557 1.934-1.184h.076c.047 1.67-.475 3.023-1.834 3.023-.71 0-1.149-.363-1.248-.72H5.258c.094.908.926 1.798 2.52 1.798Zm.118-3.972c.808 0 1.535-.528 1.535-1.594s-.668-1.676-1.56-1.676c-.838 0-1.517.616-1.517 1.659 0 1.072.708 1.61 1.54 1.61Z\"},\"child\":[]}]})(props);\n};\nexport function BsFill9SquareFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.895 8.174c.808 0 1.535-.528 1.535-1.594s-.668-1.676-1.56-1.676c-.838 0-1.517.616-1.517 1.659 0 1.072.708 1.61 1.54 1.61Z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm5.777 12.146c-1.593 0-2.425-.89-2.52-1.798h1.296c.1.357.539.72 1.248.72 1.36 0 1.88-1.353 1.834-3.023h-.076c-.235.627-.873 1.184-1.934 1.184-1.395 0-2.566-.961-2.566-2.666 0-1.711 1.242-2.731 2.87-2.731 1.512 0 2.971.867 2.971 4.014 0 2.836-1.02 4.3-3.123 4.3\"},\"child\":[]}]})(props);\n};\nexport function BsFillAirplaneEnginesFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 0c-.787 0-1.292.592-1.572 1.151A4.35 4.35 0 0 0 6 3v3.691l-2 1V7.5a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5v1.191l-1.17.585A1.5 1.5 0 0 0 0 10.618V12a.5.5 0 0 0 .582.493l1.631-.272.313.937a.5.5 0 0 0 .948 0l.405-1.214 2.21-.369.375 2.253-1.318 1.318A.5.5 0 0 0 5.5 16h5a.5.5 0 0 0 .354-.854l-1.318-1.318.375-2.253 2.21.369.405 1.214a.5.5 0 0 0 .948 0l.313-.937 1.63.272A.5.5 0 0 0 16 12v-1.382a1.5 1.5 0 0 0-.83-1.342L14 8.691V7.5a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5v.191l-2-1V3c0-.568-.14-1.271-.428-1.849C9.292.591 8.787 0 8 0\"},\"child\":[]}]})(props);\n};\nexport function BsFillAirplaneFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.428 1.151C6.708.591 7.213 0 8 0s1.292.592 1.572 1.151C9.861 1.73 10 2.431 10 3v3.691l5.17 2.585a1.5 1.5 0 0 1 .83 1.342V12a.5.5 0 0 1-.582.493l-5.507-.918-.375 2.253 1.318 1.318A.5.5 0 0 1 10.5 16h-5a.5.5 0 0 1-.354-.854l1.319-1.318-.376-2.253-5.507.918A.5.5 0 0 1 0 12v-1.382a1.5 1.5 0 0 1 .83-1.342L6 6.691V3c0-.568.14-1.271.428-1.849\"},\"child\":[]}]})(props);\n};\nexport function BsFillAlarmFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6 .5a.5.5 0 0 1 .5-.5h3a.5.5 0 0 1 0 1H9v1.07a7.001 7.001 0 0 1 3.274 12.474l.601.602a.5.5 0 0 1-.707.708l-.746-.746A6.97 6.97 0 0 1 8 16a6.97 6.97 0 0 1-3.422-.892l-.746.746a.5.5 0 0 1-.707-.708l.602-.602A7.001 7.001 0 0 1 7 2.07V1h-.5A.5.5 0 0 1 6 .5m2.5 5a.5.5 0 0 0-1 0v3.362l-1.429 2.38a.5.5 0 1 0 .858.515l1.5-2.5A.5.5 0 0 0 8.5 9zM.86 5.387A2.5 2.5 0 1 1 4.387 1.86 8.04 8.04 0 0 0 .86 5.387M11.613 1.86a2.5 2.5 0 1 1 3.527 3.527 8.04 8.04 0 0 0-3.527-3.527\"},\"child\":[]}]})(props);\n};\nexport function BsFillArchiveFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12.643 15C13.979 15 15 13.845 15 12.5V5H1v7.5C1 13.845 2.021 15 3.357 15zM5.5 7h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1 0-1M.8 1a.8.8 0 0 0-.8.8V3a.8.8 0 0 0 .8.8h14.4A.8.8 0 0 0 16 3V1.8a.8.8 0 0 0-.8-.8z\"},\"child\":[]}]})(props);\n};\nexport function BsFillArrowDownCircleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0M8.5 4.5a.5.5 0 0 0-1 0v5.793L5.354 8.146a.5.5 0 1 0-.708.708l3 3a.5.5 0 0 0 .708 0l3-3a.5.5 0 0 0-.708-.708L8.5 10.293z\"},\"child\":[]}]})(props);\n};\nexport function BsFillArrowDownLeftCircleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 0 0 8a8 8 0 0 0 16 0m-5.904-2.803a.5.5 0 1 1 .707.707L6.707 10h2.768a.5.5 0 0 1 0 1H5.5a.5.5 0 0 1-.5-.5V6.525a.5.5 0 0 1 1 0v2.768z\"},\"child\":[]}]})(props);\n};\nexport function BsFillArrowDownLeftSquareFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 16a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2zm8.096-10.803L6 9.293V6.525a.5.5 0 0 0-1 0V10.5a.5.5 0 0 0 .5.5h3.975a.5.5 0 0 0 0-1H6.707l4.096-4.096a.5.5 0 1 0-.707-.707\"},\"child\":[]}]})(props);\n};\nexport function BsFillArrowDownRightCircleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 8a8 8 0 1 1 16 0A8 8 0 0 1 0 8m5.904-2.803a.5.5 0 1 0-.707.707L9.293 10H6.525a.5.5 0 0 0 0 1H10.5a.5.5 0 0 0 .5-.5V6.525a.5.5 0 0 0-1 0v2.768z\"},\"child\":[]}]})(props);\n};\nexport function BsFillArrowDownRightSquareFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M14 16a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2zM5.904 5.197 10 9.293V6.525a.5.5 0 0 1 1 0V10.5a.5.5 0 0 1-.5.5H6.525a.5.5 0 0 1 0-1h2.768L5.197 5.904a.5.5 0 0 1 .707-.707\"},\"child\":[]}]})(props);\n};\nexport function BsFillArrowDownSquareFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm6.5 4.5v5.793l2.146-2.147a.5.5 0 0 1 .708.708l-3 3a.5.5 0 0 1-.708 0l-3-3a.5.5 0 1 1 .708-.708L7.5 10.293V4.5a.5.5 0 0 1 1 0\"},\"child\":[]}]})(props);\n};\nexport function BsFillArrowLeftCircleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 0a8 8 0 1 0 0 16A8 8 0 0 0 8 0m3.5 7.5a.5.5 0 0 1 0 1H5.707l2.147 2.146a.5.5 0 0 1-.708.708l-3-3a.5.5 0 0 1 0-.708l3-3a.5.5 0 1 1 .708.708L5.707 7.5z\"},\"child\":[]}]})(props);\n};\nexport function BsFillArrowLeftSquareFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 14a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2zm-4.5-6.5H5.707l2.147-2.146a.5.5 0 1 0-.708-.708l-3 3a.5.5 0 0 0 0 .708l3 3a.5.5 0 0 0 .708-.708L5.707 8.5H11.5a.5.5 0 0 0 0-1\"},\"child\":[]}]})(props);\n};\nexport function BsFillArrowRightCircleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 0a8 8 0 1 1 0 16A8 8 0 0 1 8 0M4.5 7.5a.5.5 0 0 0 0 1h5.793l-2.147 2.146a.5.5 0 0 0 .708.708l3-3a.5.5 0 0 0 0-.708l-3-3a.5.5 0 1 0-.708.708L10.293 7.5z\"},\"child\":[]}]})(props);\n};\nexport function BsFillArrowRightSquareFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 14a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2a2 2 0 0 0-2 2zm4.5-6.5h5.793L8.146 5.354a.5.5 0 1 1 .708-.708l3 3a.5.5 0 0 1 0 .708l-3 3a.5.5 0 0 1-.708-.708L10.293 8.5H4.5a.5.5 0 0 1 0-1\"},\"child\":[]}]})(props);\n};\nexport function BsFillArrowThroughHeartFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M2.854 15.854A.5.5 0 0 1 2 15.5V14H.5a.5.5 0 0 1-.354-.854l1.5-1.5A.5.5 0 0 1 2 11.5h1.793l3.103-3.104a.5.5 0 1 1 .708.708L4.5 12.207V14a.5.5 0 0 1-.146.354zM16 3.5a.5.5 0 0 1-.854.354L14 2.707l-1.006 1.006c.236.248.44.531.6.845.562 1.096.585 2.517-.213 4.092-.793 1.563-2.395 3.288-5.105 5.08L8 13.912l-.276-.182A24 24 0 0 1 5.8 12.323L8.31 9.81a1.5 1.5 0 0 0-2.122-2.122L3.657 10.22a9 9 0 0 1-1.039-1.57c-.798-1.576-.775-2.997-.213-4.093C3.426 2.565 6.18 1.809 8 3.233c1.25-.98 2.944-.928 4.212-.152L13.292 2 12.147.854A.5.5 0 0 1 12.5 0h3a.5.5 0 0 1 .5.5z\"},\"child\":[]}]})(props);\n};\nexport function BsFillArrowUpCircleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 0 0 8a8 8 0 0 0 16 0m-7.5 3.5a.5.5 0 0 1-1 0V5.707L5.354 7.854a.5.5 0 1 1-.708-.708l3-3a.5.5 0 0 1 .708 0l3 3a.5.5 0 0 1-.708.708L8.5 5.707z\"},\"child\":[]}]})(props);\n};\nexport function BsFillArrowUpLeftCircleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0m-5.904 2.803a.5.5 0 1 0 .707-.707L6.707 6h2.768a.5.5 0 1 0 0-1H5.5a.5.5 0 0 0-.5.5v3.975a.5.5 0 0 0 1 0V6.707z\"},\"child\":[]}]})(props);\n};\nexport function BsFillArrowUpLeftSquareFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm8.096 10.803L6 6.707v2.768a.5.5 0 0 1-1 0V5.5a.5.5 0 0 1 .5-.5h3.975a.5.5 0 1 1 0 1H6.707l4.096 4.096a.5.5 0 1 1-.707.707\"},\"child\":[]}]})(props);\n};\nexport function BsFillArrowUpRightCircleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 8a8 8 0 1 0 16 0A8 8 0 0 0 0 8m5.904 2.803a.5.5 0 1 1-.707-.707L9.293 6H6.525a.5.5 0 1 1 0-1H10.5a.5.5 0 0 1 .5.5v3.975a.5.5 0 0 1-1 0V6.707z\"},\"child\":[]}]})(props);\n};\nexport function BsFillArrowUpRightSquareFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M14 0a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2zM5.904 10.803 10 6.707v2.768a.5.5 0 0 0 1 0V5.5a.5.5 0 0 0-.5-.5H6.525a.5.5 0 1 0 0 1h2.768l-4.096 4.096a.5.5 0 0 0 .707.707\"},\"child\":[]}]})(props);\n};\nexport function BsFillArrowUpSquareFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 16a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2zm6.5-4.5V5.707l2.146 2.147a.5.5 0 0 0 .708-.708l-3-3a.5.5 0 0 0-.708 0l-3 3a.5.5 0 1 0 .708.708L7.5 5.707V11.5a.5.5 0 0 0 1 0\"},\"child\":[]}]})(props);\n};\nexport function BsFillAspectRatioFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 12.5v-9A1.5 1.5 0 0 1 1.5 2h13A1.5 1.5 0 0 1 16 3.5v9a1.5 1.5 0 0 1-1.5 1.5h-13A1.5 1.5 0 0 1 0 12.5M2.5 4a.5.5 0 0 0-.5.5v3a.5.5 0 0 0 1 0V5h2.5a.5.5 0 0 0 0-1zm11 8a.5.5 0 0 0 .5-.5v-3a.5.5 0 0 0-1 0V11h-2.5a.5.5 0 0 0 0 1z\"},\"child\":[]}]})(props);\n};\nexport function BsFillAwardFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m8 0 1.669.864 1.858.282.842 1.68 1.337 1.32L13.4 6l.306 1.854-1.337 1.32-.842 1.68-1.858.282L8 12l-1.669-.864-1.858-.282-.842-1.68-1.337-1.32L2.6 6l-.306-1.854 1.337-1.32.842-1.68L6.331.864z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4 11.794V16l4-1 4 1v-4.206l-2.018.306L8 13.126 6.018 12.1z\"},\"child\":[]}]})(props);\n};\nexport function BsFillBackpackFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5 13v-3h4v.5a.5.5 0 0 0 1 0V10h1v3z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M6 2v.341C3.67 3.165 2 5.388 2 8v5.5A2.5 2.5 0 0 0 4.5 16h7a2.5 2.5 0 0 0 2.5-2.5V8a6 6 0 0 0-4-5.659V2a2 2 0 1 0-4 0m2-1a1 1 0 0 1 1 1v.083a6 6 0 0 0-2 0V2a1 1 0 0 1 1-1m0 3a4 4 0 0 1 3.96 3.43.5.5 0 1 1-.99.14 3 3 0 0 0-5.94 0 .5.5 0 1 1-.99-.14A4 4 0 0 1 8 4M4.5 9h7a.5.5 0 0 1 .5.5v4a.5.5 0 0 1-.5.5h-7a.5.5 0 0 1-.5-.5v-4a.5.5 0 0 1 .5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsFillBackpack2Fill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5 13h6v-3h-1v.5a.5.5 0 0 1-1 0V10H5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M6 2v.341C3.67 3.165 2 5.388 2 8v1.191l-1.17.585A1.5 1.5 0 0 0 0 11.118V13.5A1.5 1.5 0 0 0 1.5 15h1c.456.607 1.182 1 2 1h7c.818 0 1.544-.393 2-1h1a1.5 1.5 0 0 0 1.5-1.5v-2.382a1.5 1.5 0 0 0-.83-1.342L14 9.191V8a6 6 0 0 0-4-5.659V2a2 2 0 1 0-4 0m2-1a1 1 0 0 1 1 1v.083a6 6 0 0 0-2 0V2a1 1 0 0 1 1-1m0 3a4 4 0 0 1 3.96 3.43.5.5 0 1 1-.99.14 3 3 0 0 0-5.94 0 .5.5 0 1 1-.99-.14A4 4 0 0 1 8 4M4.5 9h7a.5.5 0 0 1 .5.5v4a.5.5 0 0 1-.5.5h-7a.5.5 0 0 1-.5-.5v-4a.5.5 0 0 1 .5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsFillBackpack3Fill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5 10v3h6v-3h-1v.5a.5.5 0 0 1-1 0V10z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M6 2v.341a6 6 0 0 0-1.308.653l-.416-1.247a1 1 0 0 0-1.749-.284l-.77 1.027a1 1 0 0 0-.149.917l.803 2.407A6 6 0 0 0 2 8v5.5A2.5 2.5 0 0 0 4.5 16h7a2.5 2.5 0 0 0 2.5-2.5V8c0-.771-.146-1.509-.41-2.186l.801-2.407a1 1 0 0 0-.148-.917l-.77-1.027a1 1 0 0 0-1.75.284l-.415 1.247A6 6 0 0 0 10 2.34V2a2 2 0 1 0-4 0m1 0a1 1 0 0 1 2 0v.083a6 6 0 0 0-2 0zm5.941 2.595a6 6 0 0 0-.8-.937l.531-1.595.77 1.027zM3.86 3.658a6 6 0 0 0-.8.937L2.557 3.09l.77-1.027zm.18 3.772a4 4 0 0 1 7.92 0 .5.5 0 1 1-.99.142 3 3 0 0 0-5.94 0 .5.5 0 1 1-.99-.142M4 9.5a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 .5.5v4a.5.5 0 0 1-.5.5h-7a.5.5 0 0 1-.5-.5z\"},\"child\":[]}]})(props);\n};\nexport function BsFillBackpack4Fill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 0a2 2 0 0 0-2 2H3.5a2 2 0 0 0-2 2v1a2 2 0 0 0 2 2h4v.5a.5.5 0 0 0 1 0V7h4a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2H10a2 2 0 0 0-2-2m1 2a1 1 0 0 0-2 0zm-4 9v2h6v-2h-1v.5a.5.5 0 0 1-1 0V11z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M14 7.599A3 3 0 0 1 12.5 8H9.415a1.5 1.5 0 0 1-2.83 0H3.5A3 3 0 0 1 2 7.599V14a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2zM4 10.5a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 .5.5v3a.5.5 0 0 1-.5.5h-7a.5.5 0 0 1-.5-.5z\"},\"child\":[]}]})(props);\n};\nexport function BsFillBackspaceFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M15.683 3a2 2 0 0 0-2-2h-7.08a2 2 0 0 0-1.519.698L.241 7.35a1 1 0 0 0 0 1.302l4.843 5.65A2 2 0 0 0 6.603 15h7.08a2 2 0 0 0 2-2zM5.829 5.854a.5.5 0 1 1 .707-.708l2.147 2.147 2.146-2.147a.5.5 0 1 1 .707.708L9.39 8l2.146 2.146a.5.5 0 0 1-.707.708L8.683 8.707l-2.147 2.147a.5.5 0 0 1-.707-.708L7.976 8z\"},\"child\":[]}]})(props);\n};\nexport function BsFillBackspaceReverseFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 3a2 2 0 0 1 2-2h7.08a2 2 0 0 1 1.519.698l4.843 5.651a1 1 0 0 1 0 1.302L10.6 14.3a2 2 0 0 1-1.52.7H2a2 2 0 0 1-2-2zm9.854 2.854a.5.5 0 0 0-.708-.708L7 7.293 4.854 5.146a.5.5 0 1 0-.708.708L6.293 8l-2.147 2.146a.5.5 0 0 0 .708.708L7 8.707l2.146 2.147a.5.5 0 0 0 .708-.708L7.707 8z\"},\"child\":[]}]})(props);\n};\nexport function BsFillBadge3dFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M10.157 5.968h-.844v4.06h.844c1.116 0 1.621-.667 1.621-2.02 0-1.354-.51-2.04-1.621-2.04\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M0 4a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm5.184 4.368c.646 0 1.055.378 1.06.9.008.537-.427.919-1.086.919-.598-.004-1.037-.325-1.068-.756H3c.03.914.791 1.688 2.153 1.688 1.24 0 2.285-.66 2.272-1.798-.013-.953-.747-1.38-1.292-1.432v-.062c.44-.07 1.125-.527 1.108-1.375-.013-.906-.8-1.57-2.053-1.565-1.31.005-2.043.734-2.074 1.67h1.103c.022-.391.383-.751.936-.751.532 0 .928.33.928.813.004.479-.383.835-.928.835h-.632v.914zM8.126 11h2.189C12.125 11 13 9.893 13 7.985c0-1.894-.861-2.984-2.685-2.984H8.126z\"},\"child\":[]}]})(props);\n};\nexport function BsFillBadge4kFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3.577 8.9v.03h1.828V5.898h-.062a47 47 0 0 0-1.766 3.001z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 2a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2zm2.372 3.715.435-.714h1.71v3.93h.733v.957h-.733V11H5.405V9.888H2.5v-.971c.574-1.077 1.225-2.142 1.872-3.202m7.73-.714h1.306l-2.14 2.584L13.5 11h-1.428l-1.679-2.624-.615.7V11H8.59V5.001h1.187v2.686h.057L12.102 5z\"},\"child\":[]}]})(props);\n};\nexport function BsFillBadge8kFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3.9 6.605c0 .51.405.866.95.866s.945-.356.945-.866-.4-.852-.945-.852-.95.343-.95.852m-.192 2.668c0 .589.492.984 1.142.984.646 0 1.143-.395 1.143-.984S5.496 8.28 4.85 8.28c-.65 0-1.142.404-1.142.993\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 2a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2zm5.17 7.348c0 1.041-.927 1.766-2.333 1.766s-2.312-.72-2.312-1.762c0-.954.712-1.384 1.257-1.494v-.053c-.51-.154-1.02-.558-1.02-1.331 0-.914.831-1.587 2.088-1.587 1.253 0 2.083.673 2.083 1.587 0 .782-.523 1.182-1.02 1.331v.053c.545.11 1.257.545 1.257 1.49M12.102 5h1.306l-2.14 2.584 2.232 3.415h-1.428l-1.679-2.624-.615.699v1.925H8.59V5h1.187v2.685h.057z\"},\"child\":[]}]})(props);\n};\nexport function BsFillBadgeAdFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M11.35 8.337c0-.699-.42-1.138-1.001-1.138-.584 0-.954.444-.954 1.239v.453c0 .8.374 1.248.972 1.248.588 0 .984-.44.984-1.2zm-5.413.237-.734-2.426H5.15l-.734 2.426h1.52z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 2a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2zm6.209 6.32c0-1.28.694-2.044 1.753-2.044.655 0 1.156.294 1.336.769h.053v-2.36h1.16V11h-1.138v-.747h-.057c-.145.474-.69.804-1.367.804-1.055 0-1.74-.764-1.74-2.043v-.695zm-4.04 1.138L3.7 11H2.5l2.013-5.999H5.9L7.905 11H6.644l-.47-1.542H4.17z\"},\"child\":[]}]})(props);\n};\nexport function BsFillBadgeArFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m6.031 8.574-.734-2.426h-.052L4.51 8.574h1.52zm3.642-2.641v1.938h1.033c.66 0 1.068-.316 1.068-.95 0-.64-.422-.988-1.05-.988z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M0 4a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm4.265 5.458h2.004L6.739 11H8L5.996 5.001H4.607L2.595 11h1.2zM8.5 5v6h1.173V8.763h1.064L11.787 11h1.327L11.91 8.583C12.455 8.373 13 7.779 13 6.9c0-1.147-.773-1.9-2.105-1.9z\"},\"child\":[]}]})(props);\n};\nexport function BsFillBadgeCcFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 2a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2zm3.027 4.002c-.83 0-1.319.642-1.319 1.753v.743c0 1.107.48 1.727 1.319 1.727.69 0 1.138-.435 1.186-1.05H7.36v.114c-.057 1.147-1.028 1.938-2.342 1.938-1.613 0-2.518-1.028-2.518-2.729v-.747C2.5 6.051 3.414 5 5.018 5c1.318 0 2.29.813 2.342 2v.11H6.213c-.048-.638-.505-1.108-1.186-1.108m6.14 0c-.831 0-1.319.642-1.319 1.753v.743c0 1.107.48 1.727 1.318 1.727.69 0 1.139-.435 1.187-1.05H13.5v.114c-.057 1.147-1.028 1.938-2.342 1.938-1.613 0-2.518-1.028-2.518-2.729v-.747c0-1.7.914-2.751 2.518-2.751 1.318 0 2.29.813 2.342 2v.11h-1.147c-.048-.638-.505-1.108-1.187-1.108z\"},\"child\":[]}]})(props);\n};\nexport function BsFillBadgeHdFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M10.53 5.968h-.843v4.06h.843c1.117 0 1.622-.667 1.622-2.02 0-1.354-.51-2.04-1.622-2.04\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 2a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2zm5.396 3.001V11H6.209V8.43H3.687V11H2.5V5.001h1.187v2.44h2.522V5h1.187zM8.5 11V5.001h2.188c1.824 0 2.685 1.09 2.685 2.984C13.373 9.893 12.5 11 10.69 11z\"},\"child\":[]}]})(props);\n};\nexport function BsFillBadgeSdFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M10.338 5.968h-.844v4.06h.844c1.116 0 1.622-.667 1.622-2.02 0-1.354-.51-2.04-1.622-2.04\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M0 4a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm5.077 7.114c1.521 0 2.378-.764 2.378-1.88 0-1.007-.642-1.473-1.613-1.692l-.932-.216c-.527-.114-.821-.351-.821-.712 0-.466.39-.804 1.046-.804.637 0 1.028.33 1.103.76h1.125c-.058-.923-.849-1.692-2.22-1.692-1.322 0-2.24.717-2.24 1.815 0 .91.588 1.446 1.52 1.657l.927.215c.624.145.923.36.923.778 0 .492-.391.83-1.13.83-.707 0-1.155-.342-1.234-.808H2.762c.052.95.79 1.75 2.315 1.75ZM8.307 11h2.19c1.81 0 2.684-1.107 2.684-3.015 0-1.894-.861-2.984-2.685-2.984H8.308z\"},\"child\":[]}]})(props);\n};\nexport function BsFillBadgeTmFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 2a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2zm3.295 3.995V11H4.104V5.995h-1.7V5H7v.994H5.295zM8.692 7.01V11H7.633V5.001h1.209l1.71 3.894h.039l1.71-3.894H13.5V11h-1.072V7.01h-.057l-1.42 3.239h-.773L8.75 7.008h-.058z\"},\"child\":[]}]})(props);\n};\nexport function BsFillBadgeVoFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12.296 8.394v-.782c0-1.156-.571-1.736-1.362-1.736-.796 0-1.363.58-1.363 1.736v.782c0 1.156.567 1.732 1.363 1.732.79 0 1.362-.576 1.362-1.732\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 2a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2zm11.5 5.62v.77c0 1.691-.962 2.724-2.566 2.724S8.363 10.081 8.363 8.39v-.77c0-1.704.967-2.733 2.57-2.733 1.605 0 2.567 1.037 2.567 2.734zM5.937 11H4.508L2.5 5.001h1.375L5.22 9.708h.057L6.61 5.001h1.318z\"},\"child\":[]}]})(props);\n};\nexport function BsFillBadgeVrFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.673 5.933v1.938h1.033c.66 0 1.068-.316 1.068-.95 0-.64-.422-.988-1.05-.988z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M0 4a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm5.937 7 1.99-5.999H6.61L5.277 9.708H5.22L3.875 5.001H2.5L4.508 11zM8.5 5.001V11h1.173V8.763h1.064L11.787 11h1.327L11.91 8.583C12.455 8.373 13 7.779 13 6.9c0-1.147-.773-1.9-2.105-1.9H8.5z\"},\"child\":[]}]})(props);\n};\nexport function BsFillBadgeWcFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 4a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm11.666 1.89c.682 0 1.139.47 1.187 1.107H14v-.11c-.053-1.187-1.024-2-2.342-2-1.604 0-2.518 1.05-2.518 2.751v.747c0 1.7.905 2.73 2.518 2.73 1.314 0 2.285-.792 2.342-1.939v-.114h-1.147c-.048.615-.497 1.05-1.187 1.05-.839 0-1.318-.62-1.318-1.727v-.742c0-1.112.488-1.754 1.318-1.754zm-6.188.926h.044L6.542 11h1.006L9 5.001H7.818l-.82 4.355h-.056L5.97 5.001h-.94l-.972 4.355h-.053l-.827-4.355H2L3.452 11h1.005z\"},\"child\":[]}]})(props);\n};\nexport function BsFillBagCheckFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M10.5 3.5a2.5 2.5 0 0 0-5 0V4h5zm1 0V4H15v10a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2V4h3.5v-.5a3.5 3.5 0 1 1 7 0m-.646 5.354a.5.5 0 0 0-.708-.708L7.5 10.793 6.354 9.646a.5.5 0 1 0-.708.708l1.5 1.5a.5.5 0 0 0 .708 0z\"},\"child\":[]}]})(props);\n};\nexport function BsFillBagDashFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M10.5 3.5a2.5 2.5 0 0 0-5 0V4h5zm1 0V4H15v10a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2V4h3.5v-.5a3.5 3.5 0 1 1 7 0M6 9.5a.5.5 0 0 0 0 1h4a.5.5 0 0 0 0-1z\"},\"child\":[]}]})(props);\n};\nexport function BsFillBagFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 1a2.5 2.5 0 0 1 2.5 2.5V4h-5v-.5A2.5 2.5 0 0 1 8 1m3.5 3v-.5a3.5 3.5 0 1 0-7 0V4H1v10a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V4z\"},\"child\":[]}]})(props);\n};\nexport function BsFillBagHeartFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M11.5 4v-.5a3.5 3.5 0 1 0-7 0V4H1v10a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V4zM8 1a2.5 2.5 0 0 1 2.5 2.5V4h-5v-.5A2.5 2.5 0 0 1 8 1m0 6.993c1.664-1.711 5.825 1.283 0 5.132-5.825-3.85-1.664-6.843 0-5.132\"},\"child\":[]}]})(props);\n};\nexport function BsFillBagPlusFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M10.5 3.5a2.5 2.5 0 0 0-5 0V4h5zm1 0V4H15v10a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2V4h3.5v-.5a3.5 3.5 0 1 1 7 0M8.5 8a.5.5 0 0 0-1 0v1.5H6a.5.5 0 0 0 0 1h1.5V12a.5.5 0 0 0 1 0v-1.5H10a.5.5 0 0 0 0-1H8.5z\"},\"child\":[]}]})(props);\n};\nexport function BsFillBagXFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M10.5 3.5a2.5 2.5 0 0 0-5 0V4h5zm1 0V4H15v10a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2V4h3.5v-.5a3.5 3.5 0 1 1 7 0M6.854 8.146a.5.5 0 1 0-.708.708L7.293 10l-1.147 1.146a.5.5 0 0 0 .708.708L8 10.707l1.146 1.147a.5.5 0 0 0 .708-.708L8.707 10l1.147-1.146a.5.5 0 0 0-.708-.708L8 9.293z\"},\"child\":[]}]})(props);\n};\nexport function BsFillBalloonFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M8.48 10.901C11.211 10.227 13 7.837 13 5A5 5 0 0 0 3 5c0 2.837 1.789 5.227 4.52 5.901l-.244.487a.25.25 0 1 0 .448.224l.04-.08c.009.17.024.315.051.45.068.344.208.622.448 1.102l.013.028c.212.422.182.85.05 1.246-.135.402-.366.751-.534 1.003a.25.25 0 0 0 .416.278l.004-.007c.166-.248.431-.646.588-1.115.16-.479.212-1.051-.076-1.629-.258-.515-.365-.732-.419-1.004a2 2 0 0 1-.037-.289l.008.017a.25.25 0 1 0 .448-.224zM4.352 3.356a4 4 0 0 1 3.15-2.325C7.774.997 8 1.224 8 1.5s-.226.496-.498.542c-.95.162-1.749.78-2.173 1.617a.6.6 0 0 1-.52.341c-.346 0-.599-.329-.457-.644\"},\"child\":[]}]})(props);\n};\nexport function BsFillBalloonHeartFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M8.49 10.92C19.412 3.382 11.28-2.387 8 .986 4.719-2.387-3.413 3.382 7.51 10.92l-.234.468a.25.25 0 1 0 .448.224l.04-.08c.009.17.024.315.051.45.068.344.208.622.448 1.102l.013.028c.212.422.182.85.05 1.246-.135.402-.366.751-.534 1.003a.25.25 0 0 0 .416.278l.004-.007c.166-.248.431-.646.588-1.115.16-.479.212-1.051-.076-1.629-.258-.515-.365-.732-.419-1.004a2 2 0 0 1-.037-.289l.008.017a.25.25 0 1 0 .448-.224l-.235-.468ZM6.726 1.269c-1.167-.61-2.8-.142-3.454 1.135-.237.463-.36 1.08-.202 1.85.055.27.467.197.527-.071.285-1.256 1.177-2.462 2.989-2.528.234-.008.348-.278.14-.386\"},\"child\":[]}]})(props);\n};\nexport function BsFillBanFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0M2.71 12.584q.328.378.706.707l9.875-9.875a7 7 0 0 0-.707-.707l-9.875 9.875Z\"},\"child\":[]}]})(props);\n};\nexport function BsFillBandaidFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m2.68 7.676 6.49-6.504a4 4 0 0 1 5.66 5.653l-1.477 1.529-5.006 5.006-1.523 1.472a4 4 0 0 1-5.653-5.66l.001-.002 1.505-1.492.001-.002Zm5.71-2.858a.5.5 0 1 0-.708.707.5.5 0 0 0 .707-.707ZM6.974 6.939a.5.5 0 1 0-.707-.707.5.5 0 0 0 .707.707M5.56 8.354a.5.5 0 1 0-.707-.708.5.5 0 0 0 .707.708m2.828 2.828a.5.5 0 1 0-.707-.707.5.5 0 0 0 .707.707m1.414-2.121a.5.5 0 1 0-.707.707.5.5 0 0 0 .707-.707m1.414-.707a.5.5 0 1 0-.706-.708.5.5 0 0 0 .707.708Zm-4.242.707a.5.5 0 1 0-.707.707.5.5 0 0 0 .707-.707m1.414-.707a.5.5 0 1 0-.707-.708.5.5 0 0 0 .707.708m1.414-2.122a.5.5 0 1 0-.707.707.5.5 0 0 0 .707-.707M8.646 3.354l4 4 .708-.708-4-4zm-1.292 9.292-4-4-.708.708 4 4z\"},\"child\":[]}]})(props);\n};\nexport function BsFillBarChartFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M1 11a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v3a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1zm5-4a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v7a1 1 0 0 1-1 1H7a1 1 0 0 1-1-1zm5-5a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1h-2a1 1 0 0 1-1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsFillBarChartLineFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M11 2a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v12h.5a.5.5 0 0 1 0 1H.5a.5.5 0 0 1 0-1H1v-3a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v3h1V7a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v7h1z\"},\"child\":[]}]})(props);\n};\nexport function BsFillBasketFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5.071 1.243a.5.5 0 0 1 .858.514L3.383 6h9.234L10.07 1.757a.5.5 0 1 1 .858-.514L13.783 6H15.5a.5.5 0 0 1 .5.5v2a.5.5 0 0 1-.5.5H15v5a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2V9H.5a.5.5 0 0 1-.5-.5v-2A.5.5 0 0 1 .5 6h1.717zM3.5 10.5a.5.5 0 1 0-1 0v3a.5.5 0 0 0 1 0zm2.5 0a.5.5 0 1 0-1 0v3a.5.5 0 0 0 1 0zm2.5 0a.5.5 0 1 0-1 0v3a.5.5 0 0 0 1 0zm2.5 0a.5.5 0 1 0-1 0v3a.5.5 0 0 0 1 0zm2.5 0a.5.5 0 1 0-1 0v3a.5.5 0 0 0 1 0z\"},\"child\":[]}]})(props);\n};\nexport function BsFillBasket2Fill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5.929 1.757a.5.5 0 1 0-.858-.514L2.217 6H.5a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h.623l1.844 6.456A.75.75 0 0 0 3.69 15h8.622a.75.75 0 0 0 .722-.544L14.877 8h.623a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1.717L10.93 1.243a.5.5 0 1 0-.858.514L12.617 6H3.383zM4 10a1 1 0 0 1 2 0v2a1 1 0 1 1-2 0zm3 0a1 1 0 0 1 2 0v2a1 1 0 1 1-2 0zm4-1a1 1 0 0 1 1 1v2a1 1 0 1 1-2 0v-2a1 1 0 0 1 1-1\"},\"child\":[]}]})(props);\n};\nexport function BsFillBasket3Fill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5.757 1.071a.5.5 0 0 1 .172.686L3.383 6h9.234L10.07 1.757a.5.5 0 1 1 .858-.514L13.783 6H15.5a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5H.5a.5.5 0 0 1-.5-.5v-1A.5.5 0 0 1 .5 6h1.717L5.07 1.243a.5.5 0 0 1 .686-.172zM2.468 15.426.943 9h14.114l-1.525 6.426a.75.75 0 0 1-.729.574H3.197a.75.75 0 0 1-.73-.574z\"},\"child\":[]}]})(props);\n};\nexport function BsFillBellFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 16a2 2 0 0 0 2-2H6a2 2 0 0 0 2 2m.995-14.901a1 1 0 1 0-1.99 0A5 5 0 0 0 3 6c0 1.098-.5 6-2 7h14c-1.5-1-2-5.902-2-7 0-2.42-1.72-4.44-4.005-4.901\"},\"child\":[]}]})(props);\n};\nexport function BsFillBellSlashFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5.164 14H15c-1.5-1-2-5.902-2-7q0-.396-.06-.776zm6.288-10.617A5 5 0 0 0 8.995 2.1a1 1 0 1 0-1.99 0A5 5 0 0 0 3 7c0 .898-.335 4.342-1.278 6.113zM10 15a2 2 0 1 1-4 0zm-9.375.625a.53.53 0 0 0 .75.75l14.75-14.75a.53.53 0 0 0-.75-.75z\"},\"child\":[]}]})(props);\n};\nexport function BsFillBinocularsFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4.5 1A1.5 1.5 0 0 0 3 2.5V3h4v-.5A1.5 1.5 0 0 0 5.5 1zM7 4v1h2V4h4v.882a.5.5 0 0 0 .276.447l.895.447A1.5 1.5 0 0 1 15 7.118V13H9v-1.5a.5.5 0 0 1 .146-.354l.854-.853V9.5a.5.5 0 0 0-.5-.5h-3a.5.5 0 0 0-.5.5v.793l.854.853A.5.5 0 0 1 7 11.5V13H1V7.118a1.5 1.5 0 0 1 .83-1.342l.894-.447A.5.5 0 0 0 3 4.882V4zM1 14v.5A1.5 1.5 0 0 0 2.5 16h3A1.5 1.5 0 0 0 7 14.5V14zm8 0v.5a1.5 1.5 0 0 0 1.5 1.5h3a1.5 1.5 0 0 0 1.5-1.5V14zm4-11H9v-.5A1.5 1.5 0 0 1 10.5 1h1A1.5 1.5 0 0 1 13 2.5z\"},\"child\":[]}]})(props);\n};\nexport function BsFillBookFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 1.783C7.015.936 5.587.81 4.287.94c-1.514.153-3.042.672-3.994 1.105A.5.5 0 0 0 0 2.5v11a.5.5 0 0 0 .707.455c.882-.4 2.303-.881 3.68-1.02 1.409-.142 2.59.087 3.223.877a.5.5 0 0 0 .78 0c.633-.79 1.814-1.019 3.222-.877 1.378.139 2.8.62 3.681 1.02A.5.5 0 0 0 16 13.5v-11a.5.5 0 0 0-.293-.455c-.952-.433-2.48-.952-3.994-1.105C10.413.809 8.985.936 8 1.783\"},\"child\":[]}]})(props);\n};\nexport function BsFillBookmarkCheckFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M2 15.5V2a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v13.5a.5.5 0 0 1-.74.439L8 13.069l-5.26 2.87A.5.5 0 0 1 2 15.5m8.854-9.646a.5.5 0 0 0-.708-.708L7.5 7.793 6.354 6.646a.5.5 0 1 0-.708.708l1.5 1.5a.5.5 0 0 0 .708 0z\"},\"child\":[]}]})(props);\n};\nexport function BsFillBookmarkDashFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M2 15.5V2a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v13.5a.5.5 0 0 1-.74.439L8 13.069l-5.26 2.87A.5.5 0 0 1 2 15.5M6 6a.5.5 0 0 0 0 1h4a.5.5 0 0 0 0-1z\"},\"child\":[]}]})(props);\n};\nexport function BsFillBookmarkFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 2v13.5a.5.5 0 0 0 .74.439L8 13.069l5.26 2.87A.5.5 0 0 0 14 15.5V2a2 2 0 0 0-2-2H4a2 2 0 0 0-2 2\"},\"child\":[]}]})(props);\n};\nexport function BsFillBookmarkHeartFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 15.5a.5.5 0 0 0 .74.439L8 13.069l5.26 2.87A.5.5 0 0 0 14 15.5V2a2 2 0 0 0-2-2H4a2 2 0 0 0-2 2zM8 4.41c1.387-1.425 4.854 1.07 0 4.277C3.146 5.48 6.613 2.986 8 4.412z\"},\"child\":[]}]})(props);\n};\nexport function BsFillBookmarkPlusFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M2 15.5V2a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v13.5a.5.5 0 0 1-.74.439L8 13.069l-5.26 2.87A.5.5 0 0 1 2 15.5m6.5-11a.5.5 0 0 0-1 0V6H6a.5.5 0 0 0 0 1h1.5v1.5a.5.5 0 0 0 1 0V7H10a.5.5 0 0 0 0-1H8.5z\"},\"child\":[]}]})(props);\n};\nexport function BsFillBookmarkStarFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M2 15.5V2a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v13.5a.5.5 0 0 1-.74.439L8 13.069l-5.26 2.87A.5.5 0 0 1 2 15.5M8.16 4.1a.178.178 0 0 0-.32 0l-.634 1.285a.18.18 0 0 1-.134.098l-1.42.206a.178.178 0 0 0-.098.303L6.58 6.993c.042.041.061.1.051.158L6.39 8.565a.178.178 0 0 0 .258.187l1.27-.668a.18.18 0 0 1 .165 0l1.27.668a.178.178 0 0 0 .257-.187L9.368 7.15a.18.18 0 0 1 .05-.158l1.028-1.001a.178.178 0 0 0-.098-.303l-1.42-.206a.18.18 0 0 1-.134-.098z\"},\"child\":[]}]})(props);\n};\nexport function BsFillBookmarkXFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M2 15.5V2a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v13.5a.5.5 0 0 1-.74.439L8 13.069l-5.26 2.87A.5.5 0 0 1 2 15.5M6.854 5.146a.5.5 0 1 0-.708.708L7.293 7 6.146 8.146a.5.5 0 1 0 .708.708L8 7.707l1.146 1.147a.5.5 0 1 0 .708-.708L8.707 7l1.147-1.146a.5.5 0 0 0-.708-.708L8 6.293z\"},\"child\":[]}]})(props);\n};\nexport function BsFillBookmarksFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 4a2 2 0 0 1 2-2h6a2 2 0 0 1 2 2v11.5a.5.5 0 0 1-.777.416L7 13.101l-4.223 2.815A.5.5 0 0 1 2 15.5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4.268 1A2 2 0 0 1 6 0h6a2 2 0 0 1 2 2v11.5a.5.5 0 0 1-.777.416L13 13.768V2a1 1 0 0 0-1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsFillBoomboxFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M14 0a.5.5 0 0 1 .5.5V2h.5a1 1 0 0 1 1 1v2H0V3a1 1 0 0 1 1-1h12.5V.5A.5.5 0 0 1 14 0M2 3.5a.5.5 0 1 0 1 0 .5.5 0 0 0-1 0m2 0a.5.5 0 1 0 1 0 .5.5 0 0 0-1 0m7.5.5a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1m1.5-.5a.5.5 0 1 0 1 0 .5.5 0 0 0-1 0M9.5 3h-3a.5.5 0 0 0 0 1h3a.5.5 0 0 0 0-1M6 10.5a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0m-1.5.5a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1m7 1a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3m.5-1.5a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M0 6h16v8a1 1 0 0 1-1 1H1a1 1 0 0 1-1-1zm2 4.5a2.5 2.5 0 1 0 5 0 2.5 2.5 0 0 0-5 0m7 0a2.5 2.5 0 1 0 5 0 2.5 2.5 0 0 0-5 0\"},\"child\":[]}]})(props);\n};\nexport function BsFillBootstrapFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.375 7.125V4.658h1.78c.973 0 1.542.457 1.542 1.237 0 .802-.604 1.23-1.764 1.23zm0 3.762h1.898c1.184 0 1.81-.48 1.81-1.377 0-.885-.65-1.348-1.886-1.348H6.375z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4.002 0a4 4 0 0 0-4 4v8a4 4 0 0 0 4 4h8a4 4 0 0 0 4-4V4a4 4 0 0 0-4-4zm1.06 12V3.545h3.399c1.587 0 2.543.809 2.543 2.11 0 .884-.65 1.675-1.483 1.816v.1c1.143.117 1.904.931 1.904 2.033 0 1.488-1.084 2.396-2.888 2.396z\"},\"child\":[]}]})(props);\n};\nexport function BsFillBoxFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M15.528 2.973a.75.75 0 0 1 .472.696v8.662a.75.75 0 0 1-.472.696l-7.25 2.9a.75.75 0 0 1-.557 0l-7.25-2.9A.75.75 0 0 1 0 12.331V3.669a.75.75 0 0 1 .471-.696L7.443.184l.004-.001.274-.11a.75.75 0 0 1 .558 0l.274.11.004.001zm-1.374.527L8 5.962 1.846 3.5 1 3.839v.4l6.5 2.6v7.922l.5.2.5-.2V6.84l6.5-2.6v-.4l-.846-.339Z\"},\"child\":[]}]})(props);\n};\nexport function BsFillBoxSeamFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M15.528 2.973a.75.75 0 0 1 .472.696v8.662a.75.75 0 0 1-.472.696l-7.25 2.9a.75.75 0 0 1-.557 0l-7.25-2.9A.75.75 0 0 1 0 12.331V3.669a.75.75 0 0 1 .471-.696L7.443.184l.01-.003.268-.108a.75.75 0 0 1 .558 0l.269.108.01.003zM10.404 2 4.25 4.461 1.846 3.5 1 3.839v.4l6.5 2.6v7.922l.5.2.5-.2V6.84l6.5-2.6v-.4l-.846-.339L8 5.961 5.596 5l6.154-2.461z\"},\"child\":[]}]})(props);\n};\nexport function BsFillBox2Fill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3.75 0a1 1 0 0 0-.8.4L.1 4.2a.5.5 0 0 0-.1.3V15a1 1 0 0 0 1 1h14a1 1 0 0 0 1-1V4.5a.5.5 0 0 0-.1-.3L13.05.4a1 1 0 0 0-.8-.4zM15 4.667V5H1v-.333L1.5 4h6V1h1v3h6z\"},\"child\":[]}]})(props);\n};\nexport function BsFillBox2HeartFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3.75 0a1 1 0 0 0-.8.4L.1 4.2a.5.5 0 0 0-.1.3V15a1 1 0 0 0 1 1h14a1 1 0 0 0 1-1V4.5a.5.5 0 0 0-.1-.3L13.05.4a1 1 0 0 0-.8-.4zM8.5 4h6l.5.667V5H1v-.333L1.5 4h6V1h1zM8 7.993c1.664-1.711 5.825 1.283 0 5.132-5.825-3.85-1.664-6.843 0-5.132\"},\"child\":[]}]})(props);\n};\nexport function BsFillBriefcaseFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.5 1A1.5 1.5 0 0 0 5 2.5V3H1.5A1.5 1.5 0 0 0 0 4.5v1.384l7.614 2.03a1.5 1.5 0 0 0 .772 0L16 5.884V4.5A1.5 1.5 0 0 0 14.5 3H11v-.5A1.5 1.5 0 0 0 9.5 1zm0 1h3a.5.5 0 0 1 .5.5V3H6v-.5a.5.5 0 0 1 .5-.5\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M0 12.5A1.5 1.5 0 0 0 1.5 14h13a1.5 1.5 0 0 0 1.5-1.5V6.85L8.129 8.947a.5.5 0 0 1-.258 0L0 6.85z\"},\"child\":[]}]})(props);\n};\nexport function BsFillBrightnessAltHighFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 3a.5.5 0 0 1 .5.5v2a.5.5 0 0 1-1 0v-2A.5.5 0 0 1 8 3m8 8a.5.5 0 0 1-.5.5h-2a.5.5 0 0 1 0-1h2a.5.5 0 0 1 .5.5m-13.5.5a.5.5 0 0 0 0-1h-2a.5.5 0 0 0 0 1zm11.157-6.157a.5.5 0 0 1 0 .707l-1.414 1.414a.5.5 0 1 1-.707-.707l1.414-1.414a.5.5 0 0 1 .707 0m-9.9 2.121a.5.5 0 0 0 .707-.707L3.05 5.343a.5.5 0 1 0-.707.707zM8 7a4 4 0 0 0-4 4 .5.5 0 0 0 .5.5h7a.5.5 0 0 0 .5-.5 4 4 0 0 0-4-4\"},\"child\":[]}]})(props);\n};\nexport function BsFillBrightnessAltLowFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.5 5.5a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0m5 6a.5.5 0 1 1 0-1 .5.5 0 0 1 0 1M2 11a.5.5 0 1 0 1 0 .5.5 0 0 0-1 0m10.243-3.536a.5.5 0 1 1-.707-.707.5.5 0 0 1 .707.707m-8.486-.707a.5.5 0 1 0 .707.707.5.5 0 0 0-.707-.707M8 7a4 4 0 0 0-4 4 .5.5 0 0 0 .5.5h7a.5.5 0 0 0 .5-.5 4 4 0 0 0-4-4\"},\"child\":[]}]})(props);\n};\nexport function BsFillBrightnessHighFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12 8a4 4 0 1 1-8 0 4 4 0 0 1 8 0M8 0a.5.5 0 0 1 .5.5v2a.5.5 0 0 1-1 0v-2A.5.5 0 0 1 8 0m0 13a.5.5 0 0 1 .5.5v2a.5.5 0 0 1-1 0v-2A.5.5 0 0 1 8 13m8-5a.5.5 0 0 1-.5.5h-2a.5.5 0 0 1 0-1h2a.5.5 0 0 1 .5.5M3 8a.5.5 0 0 1-.5.5h-2a.5.5 0 0 1 0-1h2A.5.5 0 0 1 3 8m10.657-5.657a.5.5 0 0 1 0 .707l-1.414 1.415a.5.5 0 1 1-.707-.708l1.414-1.414a.5.5 0 0 1 .707 0m-9.193 9.193a.5.5 0 0 1 0 .707L3.05 13.657a.5.5 0 0 1-.707-.707l1.414-1.414a.5.5 0 0 1 .707 0m9.193 2.121a.5.5 0 0 1-.707 0l-1.414-1.414a.5.5 0 0 1 .707-.707l1.414 1.414a.5.5 0 0 1 0 .707M4.464 4.465a.5.5 0 0 1-.707 0L2.343 3.05a.5.5 0 1 1 .707-.707l1.414 1.414a.5.5 0 0 1 0 .708\"},\"child\":[]}]})(props);\n};\nexport function BsFillBrightnessLowFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12 8a4 4 0 1 1-8 0 4 4 0 0 1 8 0M8.5 2.5a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0m0 11a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0m5-5a.5.5 0 1 1 0-1 .5.5 0 0 1 0 1m-11 0a.5.5 0 1 1 0-1 .5.5 0 0 1 0 1m9.743-4.036a.5.5 0 1 1-.707-.707.5.5 0 0 1 .707.707m-7.779 7.779a.5.5 0 1 1-.707-.707.5.5 0 0 1 .707.707m7.072 0a.5.5 0 1 1 .707-.707.5.5 0 0 1-.707.707M3.757 4.464a.5.5 0 1 1 .707-.707.5.5 0 0 1-.707.707\"},\"child\":[]}]})(props);\n};\nexport function BsFillBrushFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M15.825.12a.5.5 0 0 1 .132.584c-1.53 3.43-4.743 8.17-7.095 10.64a6.1 6.1 0 0 1-2.373 1.534c-.018.227-.06.538-.16.868-.201.659-.667 1.479-1.708 1.74a8.1 8.1 0 0 1-3.078.132 4 4 0 0 1-.562-.135 1.4 1.4 0 0 1-.466-.247.7.7 0 0 1-.204-.288.62.62 0 0 1 .004-.443c.095-.245.316-.38.461-.452.394-.197.625-.453.867-.826.095-.144.184-.297.287-.472l.117-.198c.151-.255.326-.54.546-.848.528-.739 1.201-.925 1.746-.896q.19.012.348.048c.062-.172.142-.38.238-.608.261-.619.658-1.419 1.187-2.069 2.176-2.67 6.18-6.206 9.117-8.104a.5.5 0 0 1 .596.04\"},\"child\":[]}]})(props);\n};\nexport function BsFillBucketFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2.522 5H2a.5.5 0 0 0-.494.574l1.372 9.149A1.5 1.5 0 0 0 4.36 16h7.278a1.5 1.5 0 0 0 1.483-1.277l1.373-9.149A.5.5 0 0 0 14 5h-.522A5.5 5.5 0 0 0 2.522 5m1.005 0a4.5 4.5 0 0 1 8.945 0z\"},\"child\":[]}]})(props);\n};\nexport function BsFillBugFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4.978.855a.5.5 0 1 0-.956.29l.41 1.352A5 5 0 0 0 3 6h10a5 5 0 0 0-1.432-3.503l.41-1.352a.5.5 0 1 0-.956-.29l-.291.956A5 5 0 0 0 8 1a5 5 0 0 0-2.731.811l-.29-.956z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M13 6v1H8.5v8.975A5 5 0 0 0 13 11h.5a.5.5 0 0 1 .5.5v.5a.5.5 0 1 0 1 0v-.5a1.5 1.5 0 0 0-1.5-1.5H13V9h1.5a.5.5 0 0 0 0-1H13V7h.5A1.5 1.5 0 0 0 15 5.5V5a.5.5 0 0 0-1 0v.5a.5.5 0 0 1-.5.5zm-5.5 9.975V7H3V6h-.5a.5.5 0 0 1-.5-.5V5a.5.5 0 0 0-1 0v.5A1.5 1.5 0 0 0 2.5 7H3v1H1.5a.5.5 0 0 0 0 1H3v1h-.5A1.5 1.5 0 0 0 1 11.5v.5a.5.5 0 1 0 1 0v-.5a.5.5 0 0 1 .5-.5H3a5 5 0 0 0 4.5 4.975\"},\"child\":[]}]})(props);\n};\nexport function BsFillBuildingFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3 0a1 1 0 0 0-1 1v14a1 1 0 0 0 1 1h3v-3.5a.5.5 0 0 1 .5-.5h3a.5.5 0 0 1 .5.5V16h3a1 1 0 0 0 1-1V1a1 1 0 0 0-1-1zm1 2.5a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5zm3 0a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5zm3.5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5M4 5.5a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5zM7.5 5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5m2.5.5a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5zM4.5 8h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5m2.5.5a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5zm3.5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsFillBuildingsFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M15 .5a.5.5 0 0 0-.724-.447l-8 4A.5.5 0 0 0 6 4.5v3.14L.342 9.526A.5.5 0 0 0 0 10v5.5a.5.5 0 0 0 .5.5h9a.5.5 0 0 0 .5-.5V14h1v1.5a.5.5 0 0 0 .5.5h3a.5.5 0 0 0 .5-.5zM2 11h1v1H2zm2 0h1v1H4zm-1 2v1H2v-1zm1 0h1v1H4zm9-10v1h-1V3zM8 5h1v1H8zm1 2v1H8V7zM8 9h1v1H8zm2 0h1v1h-1zm-1 2v1H8v-1zm1 0h1v1h-1zm3-2v1h-1V9zm-1 2h1v1h-1zm-2-4h1v1h-1zm3 0v1h-1V7zm-2-2v1h-1V5zm1 0h1v1h-1z\"},\"child\":[]}]})(props);\n};\nexport function BsFillBusFrontFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 7a1 1 0 0 1-1 1v3.5c0 .818-.393 1.544-1 2v2a.5.5 0 0 1-.5.5h-2a.5.5 0 0 1-.5-.5V14H5v1.5a.5.5 0 0 1-.5.5h-2a.5.5 0 0 1-.5-.5v-2a2.5 2.5 0 0 1-1-2V8a1 1 0 0 1-1-1V5a1 1 0 0 1 1-1V2.64C1 1.452 1.845.408 3.064.268A44 44 0 0 1 8 0c2.1 0 3.792.136 4.936.268C14.155.408 15 1.452 15 2.64V4a1 1 0 0 1 1 1zM3.552 3.22A43 43 0 0 1 8 3c1.837 0 3.353.107 4.448.22a.5.5 0 0 0 .104-.994A44 44 0 0 0 8 2c-1.876 0-3.426.109-4.552.226a.5.5 0 1 0 .104.994M8 4c-1.876 0-3.426.109-4.552.226A.5.5 0 0 0 3 4.723v3.554a.5.5 0 0 0 .448.497C4.574 8.891 6.124 9 8 9s3.426-.109 4.552-.226A.5.5 0 0 0 13 8.277V4.723a.5.5 0 0 0-.448-.497A44 44 0 0 0 8 4m-3 7a1 1 0 1 0-2 0 1 1 0 0 0 2 0m8 0a1 1 0 1 0-2 0 1 1 0 0 0 2 0m-7 0a1 1 0 0 0 1 1h2a1 1 0 1 0 0-2H7a1 1 0 0 0-1 1\"},\"child\":[]}]})(props);\n};\nexport function BsFillCCircleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0M8.146 4.992c.961 0 1.641.633 1.729 1.512h1.295v-.088c-.094-1.518-1.348-2.572-3.03-2.572-2.068 0-3.269 1.377-3.269 3.638v1.073c0 2.267 1.178 3.603 3.27 3.603 1.675 0 2.93-1.02 3.029-2.467v-.093H9.875c-.088.832-.75 1.418-1.729 1.418-1.224 0-1.927-.891-1.927-2.461v-1.06c0-1.583.715-2.503 1.927-2.503\"},\"child\":[]}]})(props);\n};\nexport function BsFillCSquareFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm6.146 4.992c-1.212 0-1.927.92-1.927 2.502v1.06c0 1.571.703 2.462 1.927 2.462.979 0 1.641-.586 1.729-1.418h1.295v.093c-.1 1.448-1.354 2.467-3.03 2.467-2.091 0-3.269-1.336-3.269-3.603V7.482c0-2.261 1.201-3.638 3.27-3.638 1.681 0 2.935 1.054 3.029 2.572v.088H9.875c-.088-.879-.768-1.512-1.729-1.512\"},\"child\":[]}]})(props);\n};\nexport function BsFillCakeFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m7.399.804.595-.792.598.79A.747.747 0 0 1 8.5 1.806V4H11a2 2 0 0 1 2 2v3h1a2 2 0 0 1 2 2v4a1 1 0 0 1-1 1H1a1 1 0 0 1-1-1v-4a2 2 0 0 1 2-2h1V6a2 2 0 0 1 2-2h2.5V1.813a.747.747 0 0 1-.101-1.01ZM12 6.414a.9.9 0 0 1-.646-.268 1.914 1.914 0 0 0-2.708 0 .914.914 0 0 1-1.292 0 1.914 1.914 0 0 0-2.708 0A.9.9 0 0 1 4 6.414v1c.49 0 .98-.187 1.354-.56a.914.914 0 0 1 1.292 0c.748.747 1.96.747 2.708 0a.914.914 0 0 1 1.292 0c.374.373.864.56 1.354.56zm2.646 5.732a.914.914 0 0 1-1.293 0 1.914 1.914 0 0 0-2.707 0 .914.914 0 0 1-1.292 0 1.914 1.914 0 0 0-2.708 0 .914.914 0 0 1-1.292 0 1.914 1.914 0 0 0-2.708 0 .914.914 0 0 1-1.292 0L1 11.793v1.34c.737.452 1.715.36 2.354-.28a.914.914 0 0 1 1.292 0c.748.748 1.96.748 2.708 0a.914.914 0 0 1 1.292 0c.748.748 1.96.748 2.707 0a.914.914 0 0 1 1.293 0 1.915 1.915 0 0 0 2.354.28v-1.34z\"},\"child\":[]}]})(props);\n};\nexport function BsFillCake2Fill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m2.899.804.595-.792.598.79A.747.747 0 0 1 4 1.806v4.886q-.532-.09-1-.201V1.813a.747.747 0 0 1-.1-1.01ZM13 1.806v4.685a15 15 0 0 1-1 .201v-4.88a.747.747 0 0 1-.1-1.007l.595-.792.598.79A.746.746 0 0 1 13 1.806m-3 0a.746.746 0 0 0 .092-1.004l-.598-.79-.595.792A.747.747 0 0 0 9 1.813v5.17q.512-.02 1-.055zm-3 0v5.176q-.512-.018-1-.054V1.813a.747.747 0 0 1-.1-1.01l.595-.79.598.789A.747.747 0 0 1 7 1.806\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4.5 6.988V4.226a23 23 0 0 1 1-.114V7.16c0 .131.101.24.232.25l.231.017q.498.037 1.02.055l.258.01a.25.25 0 0 0 .26-.25V4.003a29 29 0 0 1 1 0V7.24a.25.25 0 0 0 .258.25l.259-.009q.52-.018 1.019-.055l.231-.017a.25.25 0 0 0 .232-.25V4.112q.518.047 1 .114v2.762a.25.25 0 0 0 .292.246l.291-.049q.547-.091 1.033-.208l.192-.046a.25.25 0 0 0 .192-.243V4.621c.672.184 1.251.409 1.677.678.415.261.823.655.823 1.2V13.5c0 .546-.408.94-.823 1.201-.44.278-1.043.51-1.745.696-1.41.376-3.33.603-5.432.603s-4.022-.227-5.432-.603c-.702-.187-1.305-.418-1.745-.696C.408 14.44 0 14.046 0 13.5v-7c0-.546.408-.94.823-1.201.426-.269 1.005-.494 1.677-.678v2.067c0 .116.08.216.192.243l.192.046q.486.116 1.033.208l.292.05a.25.25 0 0 0 .291-.247M1 8.82v1.659a1.935 1.935 0 0 0 2.298.43.935.935 0 0 1 1.08.175l.348.349a2 2 0 0 0 2.615.185l.059-.044a1 1 0 0 1 1.2 0l.06.044a2 2 0 0 0 2.613-.185l.348-.348a.94.94 0 0 1 1.082-.175c.781.39 1.718.208 2.297-.426V8.833l-.68.907a.94.94 0 0 1-1.17.276 1.94 1.94 0 0 0-2.236.363l-.348.348a1 1 0 0 1-1.307.092l-.06-.044a2 2 0 0 0-2.399 0l-.06.044a1 1 0 0 1-1.306-.092l-.35-.35a1.935 1.935 0 0 0-2.233-.362.935.935 0 0 1-1.168-.277z\"},\"child\":[]}]})(props);\n};\nexport function BsFillCalculatorFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 2a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2zm2 .5v2a.5.5 0 0 0 .5.5h7a.5.5 0 0 0 .5-.5v-2a.5.5 0 0 0-.5-.5h-7a.5.5 0 0 0-.5.5m0 4v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5M4.5 9a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zM4 12.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5M7.5 6a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zM7 9.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5m.5 2.5a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zM10 6.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5m.5 2.5a.5.5 0 0 0-.5.5v4a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-4a.5.5 0 0 0-.5-.5z\"},\"child\":[]}]})(props);\n};\nexport function BsFillCalendarCheckFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4 .5a.5.5 0 0 0-1 0V1H2a2 2 0 0 0-2 2v1h16V3a2 2 0 0 0-2-2h-1V.5a.5.5 0 0 0-1 0V1H4zM16 14V5H0v9a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2m-5.146-5.146-3 3a.5.5 0 0 1-.708 0l-1.5-1.5a.5.5 0 0 1 .708-.708L7.5 10.793l2.646-2.647a.5.5 0 0 1 .708.708\"},\"child\":[]}]})(props);\n};\nexport function BsFillCalendarDateFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4 .5a.5.5 0 0 0-1 0V1H2a2 2 0 0 0-2 2v1h16V3a2 2 0 0 0-2-2h-1V.5a.5.5 0 0 0-1 0V1H4zm5.402 9.746c.625 0 1.184-.484 1.184-1.18 0-.832-.527-1.23-1.16-1.23-.586 0-1.168.387-1.168 1.21 0 .817.543 1.2 1.144 1.2\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M16 14V5H0v9a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2m-6.664-1.21c-1.11 0-1.656-.767-1.703-1.407h.683c.043.37.387.82 1.051.82.844 0 1.301-.848 1.305-2.164h-.027c-.153.414-.637.79-1.383.79-.852 0-1.676-.61-1.676-1.77 0-1.137.871-1.809 1.797-1.809 1.172 0 1.953.734 1.953 2.668 0 1.805-.742 2.871-2 2.871zm-2.89-5.435v5.332H5.77V8.079h-.012c-.29.156-.883.52-1.258.777V8.16a13 13 0 0 1 1.313-.805h.632z\"},\"child\":[]}]})(props);\n};\nexport function BsFillCalendarDayFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4 .5a.5.5 0 0 0-1 0V1H2a2 2 0 0 0-2 2v1h16V3a2 2 0 0 0-2-2h-1V.5a.5.5 0 0 0-1 0V1H4zM16 14a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V5h16zm-4.785-6.145a.428.428 0 1 0 0-.855.426.426 0 0 0-.43.43c0 .238.192.425.43.425m.336.563h-.672v4.105h.672zm-6.867 4.105v-2.3h2.261v-.61H4.684V7.801h2.464v-.61H4v5.332zm3.296 0h.676V9.98c0-.554.227-1.007.953-1.007.125 0 .258.004.329.015v-.613a2 2 0 0 0-.254-.02c-.582 0-.891.32-1.012.567h-.02v-.504H7.98z\"},\"child\":[]}]})(props);\n};\nexport function BsFillCalendarEventFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4 .5a.5.5 0 0 0-1 0V1H2a2 2 0 0 0-2 2v1h16V3a2 2 0 0 0-2-2h-1V.5a.5.5 0 0 0-1 0V1H4zM16 14V5H0v9a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2m-3.5-7h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsFillCalendarFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V5h16V4H0V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsFillCalendarHeartFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4 .5a.5.5 0 0 0-1 0V1H2a2 2 0 0 0-2 2v1h16V3a2 2 0 0 0-2-2h-1V.5a.5.5 0 0 0-1 0V1H4zM16 14V5H0v9a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2M8 7.993c1.664-1.711 5.825 1.283 0 5.132-5.825-3.85-1.664-6.843 0-5.132\"},\"child\":[]}]})(props);\n};\nexport function BsFillCalendarMinusFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4 .5a.5.5 0 0 0-1 0V1H2a2 2 0 0 0-2 2v1h16V3a2 2 0 0 0-2-2h-1V.5a.5.5 0 0 0-1 0V1H4zM16 14V5H0v9a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2M6 10h4a.5.5 0 0 1 0 1H6a.5.5 0 0 1 0-1\"},\"child\":[]}]})(props);\n};\nexport function BsFillCalendarMonthFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4 .5a.5.5 0 0 0-1 0V1H2a2 2 0 0 0-2 2v1h16V3a2 2 0 0 0-2-2h-1V.5a.5.5 0 0 0-1 0V1H4zm.104 7.305L4.9 10.18H3.284l.8-2.375zm9.074 2.297c0-.832-.414-1.36-1.062-1.36-.692 0-1.098.492-1.098 1.36v.253c0 .852.406 1.364 1.098 1.364.671 0 1.062-.516 1.062-1.364z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M16 14V5H0v9a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2M2.56 12.332h-.71L3.748 7h.696l1.898 5.332h-.719l-.539-1.602H3.1zm7.29-4.105v4.105h-.668v-.539h-.027c-.145.324-.532.605-1.188.605-.847 0-1.453-.484-1.453-1.425V8.227h.676v2.554c0 .766.441 1.012.98 1.012.59 0 1.004-.371 1.004-1.023V8.227zm1.273 4.41c.075.332.422.636.985.636.648 0 1.07-.378 1.07-1.023v-.605h-.02c-.163.355-.613.648-1.171.648-.957 0-1.64-.672-1.64-1.902v-.34c0-1.207.675-1.887 1.64-1.887.558 0 1.004.293 1.195.64h.02v-.577h.648v4.03c0 1.052-.816 1.579-1.746 1.579-1.043 0-1.574-.516-1.668-1.2z\"},\"child\":[]}]})(props);\n};\nexport function BsFillCalendarPlusFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4 .5a.5.5 0 0 0-1 0V1H2a2 2 0 0 0-2 2v1h16V3a2 2 0 0 0-2-2h-1V.5a.5.5 0 0 0-1 0V1H4zM16 14V5H0v9a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2M8.5 8.5V10H10a.5.5 0 0 1 0 1H8.5v1.5a.5.5 0 0 1-1 0V11H6a.5.5 0 0 1 0-1h1.5V8.5a.5.5 0 0 1 1 0\"},\"child\":[]}]})(props);\n};\nexport function BsFillCalendarRangeFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4 .5a.5.5 0 0 0-1 0V1H2a2 2 0 0 0-2 2v1h16V3a2 2 0 0 0-2-2h-1V.5a.5.5 0 0 0-1 0V1H4zM16 7V5H0v5h5a1 1 0 1 1 0 2H0v2a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V9h-6a1 1 0 1 1 0-2z\"},\"child\":[]}]})(props);\n};\nexport function BsFillCalendarWeekFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4 .5a.5.5 0 0 0-1 0V1H2a2 2 0 0 0-2 2v1h16V3a2 2 0 0 0-2-2h-1V.5a.5.5 0 0 0-1 0V1H4zM16 14V5H0v9a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2M9.5 7h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5m3 0h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5M2 10.5a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5zm3.5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsFillCalendarXFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4 .5a.5.5 0 0 0-1 0V1H2a2 2 0 0 0-2 2v1h16V3a2 2 0 0 0-2-2h-1V.5a.5.5 0 0 0-1 0V1H4zM16 14V5H0v9a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2M6.854 8.146 8 9.293l1.146-1.147a.5.5 0 1 1 .708.708L8.707 10l1.147 1.146a.5.5 0 0 1-.708.708L8 10.707l-1.146 1.147a.5.5 0 0 1-.708-.708L7.293 10 6.146 8.854a.5.5 0 1 1 .708-.708\"},\"child\":[]}]})(props);\n};\nexport function BsFillCalendar2CheckFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5m9.954 3H2.545c-.3 0-.545.224-.545.5v1c0 .276.244.5.545.5h10.91c.3 0 .545-.224.545-.5v-1c0-.276-.244-.5-.546-.5m-2.6 5.854a.5.5 0 0 0-.708-.708L7.5 10.793 6.354 9.646a.5.5 0 1 0-.708.708l1.5 1.5a.5.5 0 0 0 .708 0z\"},\"child\":[]}]})(props);\n};\nexport function BsFillCalendar2DateFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.402 10.246c.625 0 1.184-.484 1.184-1.18 0-.832-.527-1.23-1.16-1.23-.586 0-1.168.387-1.168 1.21 0 .817.543 1.2 1.144 1.2\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5m9.954 3H2.545c-.3 0-.545.224-.545.5v1c0 .276.244.5.545.5h10.91c.3 0 .545-.224.545-.5v-1c0-.276-.244-.5-.546-.5m-4.118 9.79c1.258 0 2-1.067 2-2.872 0-1.934-.781-2.668-1.953-2.668-.926 0-1.797.672-1.797 1.809 0 1.16.824 1.77 1.676 1.77.746 0 1.23-.376 1.383-.79h.027c-.004 1.316-.461 2.164-1.305 2.164-.664 0-1.008-.45-1.05-.82h-.684c.047.64.594 1.406 1.703 1.406zm-2.89-5.435h-.633A13 13 0 0 0 4.5 8.16v.695c.375-.257.969-.62 1.258-.777h.012v4.61h.675V7.354z\"},\"child\":[]}]})(props);\n};\nexport function BsFillCalendar2DayFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5m9.954 3H2.545c-.3 0-.545.224-.545.5v1c0 .276.244.5.545.5h10.91c.3 0 .545-.224.545-.5v-1c0-.276-.244-.5-.546-.5m-2.24 4.855a.428.428 0 1 0 0-.855.426.426 0 0 0-.429.43c0 .238.192.425.43.425zm.337.563h-.672v4.105h.672zm-6.867 4.105v-2.3h2.261v-.61H4.684V7.801h2.464v-.61H4v5.332zm3.296 0h.676V9.98c0-.554.227-1.007.953-1.007.125 0 .258.004.329.015v-.613a2 2 0 0 0-.254-.02c-.582 0-.891.32-1.012.567h-.02v-.504H7.98z\"},\"child\":[]}]})(props);\n};\nexport function BsFillCalendar2EventFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5m9.954 3H2.545c-.3 0-.545.224-.545.5v1c0 .276.244.5.545.5h10.91c.3 0 .545-.224.545-.5v-1c0-.276-.244-.5-.546-.5M11.5 7a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5z\"},\"child\":[]}]})(props);\n};\nexport function BsFillCalendar2Fill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4 .5a.5.5 0 0 0-1 0V1H2a2 2 0 0 0-2 2v11a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V3a2 2 0 0 0-2-2h-1V.5a.5.5 0 0 0-1 0V1H4zM2.545 3h10.91c.3 0 .545.224.545.5v1c0 .276-.244.5-.546.5H2.545C2.245 5 2 4.776 2 4.5v-1c0-.276.244-.5.545-.5\"},\"child\":[]}]})(props);\n};\nexport function BsFillCalendar2HeartFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4 .5a.5.5 0 0 0-1 0V1H2a2 2 0 0 0-2 2v11a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V3a2 2 0 0 0-2-2h-1V.5a.5.5 0 0 0-1 0V1H4zm-2 4v-1c0-.276.244-.5.545-.5h10.91c.3 0 .545.224.545.5v1c0 .276-.244.5-.546.5H2.545C2.245 5 2 4.776 2 4.5m6 3.493c1.664-1.711 5.825 1.283 0 5.132-5.825-3.85-1.664-6.843 0-5.132\"},\"child\":[]}]})(props);\n};\nexport function BsFillCalendar2MinusFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5m9.954 3H2.545c-.3 0-.545.224-.545.5v1c0 .276.244.5.545.5h10.91c.3 0 .545-.224.545-.5v-1c0-.276-.244-.5-.546-.5M6 10a.5.5 0 0 0 0 1h4a.5.5 0 0 0 0-1z\"},\"child\":[]}]})(props);\n};\nexport function BsFillCalendar2MonthFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4.104 7.805 4.9 10.18H3.284l.8-2.375zm9.074 2.297c0-.832-.414-1.36-1.062-1.36-.692 0-1.098.492-1.098 1.36v.253c0 .852.406 1.364 1.098 1.364.671 0 1.062-.516 1.062-1.364z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5m9.954 3H2.545c-.3 0-.545.224-.545.5v1c0 .276.244.5.545.5h10.91c.3 0 .545-.224.545-.5v-1c0-.276-.244-.5-.546-.5M2.561 12.332 3.1 10.73h1.984l.54 1.602h.718L4.444 7h-.696L1.85 12.332zM9.85 8.227h-.676v2.543c0 .652-.414 1.023-1.004 1.023-.539 0-.98-.246-.98-1.012V8.227h-.676v2.746c0 .941.606 1.425 1.453 1.425.656 0 1.043-.28 1.188-.605h.027v.539h.668zm1.273 4.41h-.687c.094.683.625 1.199 1.668 1.199.93 0 1.746-.527 1.746-1.578V8.227h-.649v.578h-.019c-.191-.348-.637-.64-1.195-.64-.965 0-1.64.679-1.64 1.886v.34c0 1.23.683 1.902 1.64 1.902.558 0 1.008-.293 1.172-.648h.02v.605c0 .645-.423 1.023-1.071 1.023-.563 0-.91-.304-.985-.636\"},\"child\":[]}]})(props);\n};\nexport function BsFillCalendar2PlusFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5M2 3.5v1c0 .276.244.5.545.5h10.91c.3 0 .545-.224.545-.5v-1c0-.276-.244-.5-.546-.5H2.545c-.3 0-.545.224-.545.5m6.5 5a.5.5 0 0 0-1 0V10H6a.5.5 0 0 0 0 1h1.5v1.5a.5.5 0 0 0 1 0V11H10a.5.5 0 0 0 0-1H8.5z\"},\"child\":[]}]})(props);\n};\nexport function BsFillCalendar2RangeFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5m9.954 3H2.545c-.3 0-.545.224-.545.5v1c0 .276.244.5.545.5h10.91c.3 0 .545-.224.545-.5v-1c0-.276-.244-.5-.546-.5M10 7a1 1 0 0 0 0 2h5V7zm-4 4a1 1 0 0 0-1-1H1v2h4a1 1 0 0 0 1-1\"},\"child\":[]}]})(props);\n};\nexport function BsFillCalendar2WeekFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5m9.954 3H2.545c-.3 0-.545.224-.545.5v1c0 .276.244.5.545.5h10.91c.3 0 .545-.224.545-.5v-1c0-.276-.244-.5-.546-.5M8.5 7a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm3 0a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zM3 10.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5m3.5-.5a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5z\"},\"child\":[]}]})(props);\n};\nexport function BsFillCalendar2XFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5m9.954 3H2.545c-.3 0-.545.224-.545.5v1c0 .276.244.5.545.5h10.91c.3 0 .545-.224.545-.5v-1c0-.276-.244-.5-.546-.5m-6.6 5.146a.5.5 0 1 0-.708.708L7.293 10l-1.147 1.146a.5.5 0 0 0 .708.708L8 10.707l1.146 1.147a.5.5 0 0 0 .708-.708L8.707 10l1.147-1.146a.5.5 0 0 0-.708-.708L8 9.293z\"},\"child\":[]}]})(props);\n};\nexport function BsFillCalendar3EventFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M2 0a2 2 0 0 0-2 2h16a2 2 0 0 0-2-2zM0 14V3h16v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2m12-8a1 1 0 1 0 2 0 1 1 0 0 0-2 0\"},\"child\":[]}]})(props);\n};\nexport function BsFillCalendar3Fill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 2a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2zm0 1v11a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V3z\"},\"child\":[]}]})(props);\n};\nexport function BsFillCalendar3RangeFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M2 0a2 2 0 0 0-2 2h16a2 2 0 0 0-2-2zM0 8V3h16v2h-6a1 1 0 1 0 0 2h6v7a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2v-4h6a1 1 0 1 0 0-2z\"},\"child\":[]}]})(props);\n};\nexport function BsFillCalendar3WeekFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M2 0a2 2 0 0 0-2 2h16a2 2 0 0 0-2-2zM0 14V3h16v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2m12-8a1 1 0 1 0 2 0 1 1 0 0 0-2 0M5 9a1 1 0 1 0 2 0 1 1 0 0 0-2 0m5-2a1 1 0 1 1 0-2 1 1 0 0 1 0 2M2 9a1 1 0 1 0 2 0 1 1 0 0 0-2 0\"},\"child\":[]}]})(props);\n};\nexport function BsFillCameraFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M10.5 8.5a2.5 2.5 0 1 1-5 0 2.5 2.5 0 0 1 5 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 4a2 2 0 0 0-2 2v6a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2h-1.172a2 2 0 0 1-1.414-.586l-.828-.828A2 2 0 0 0 9.172 2H6.828a2 2 0 0 0-1.414.586l-.828.828A2 2 0 0 1 3.172 4zm.5 2a.5.5 0 1 1 0-1 .5.5 0 0 1 0 1m9 2.5a3.5 3.5 0 1 1-7 0 3.5 3.5 0 0 1 7 0\"},\"child\":[]}]})(props);\n};\nexport function BsFillCameraReelsFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6 3a3 3 0 1 1-6 0 3 3 0 0 1 6 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M9 6a3 3 0 1 1 0-6 3 3 0 0 1 0 6\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M9 6h.5a2 2 0 0 1 1.983 1.738l3.11-1.382A1 1 0 0 1 16 7.269v7.462a1 1 0 0 1-1.406.913l-3.111-1.382A2 2 0 0 1 9.5 16H2a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2z\"},\"child\":[]}]})(props);\n};\nexport function BsFillCameraVideoFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M0 5a2 2 0 0 1 2-2h7.5a2 2 0 0 1 1.983 1.738l3.11-1.382A1 1 0 0 1 16 4.269v7.462a1 1 0 0 1-1.406.913l-3.111-1.382A2 2 0 0 1 9.5 13H2a2 2 0 0 1-2-2z\"},\"child\":[]}]})(props);\n};\nexport function BsFillCameraVideoOffFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M10.961 12.365a2 2 0 0 0 .522-1.103l3.11 1.382A1 1 0 0 0 16 11.731V4.269a1 1 0 0 0-1.406-.913l-3.111 1.382A2 2 0 0 0 9.5 3H4.272zm-10.114-9A2 2 0 0 0 0 5v6a2 2 0 0 0 2 2h5.728zm9.746 11.925-10-14 .814-.58 10 14z\"},\"child\":[]}]})(props);\n};\nexport function BsFillCapslockFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.27 1.047a1 1 0 0 1 1.46 0l6.345 6.77c.6.638.146 1.683-.73 1.683H11.5v1a1 1 0 0 1-1 1h-5a1 1 0 0 1-1-1v-1H1.654C.78 9.5.326 8.455.924 7.816zM4.5 13.5a1 1 0 0 1 1-1h5a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1h-5a1 1 0 0 1-1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsFillCarFrontFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2.52 3.515A2.5 2.5 0 0 1 4.82 2h6.362c1 0 1.904.596 2.298 1.515l.792 1.848c.075.175.21.319.38.404.5.25.855.715.965 1.262l.335 1.679q.05.242.049.49v.413c0 .814-.39 1.543-1 1.997V13.5a.5.5 0 0 1-.5.5h-2a.5.5 0 0 1-.5-.5v-1.338c-1.292.048-2.745.088-4 .088s-2.708-.04-4-.088V13.5a.5.5 0 0 1-.5.5h-2a.5.5 0 0 1-.5-.5v-1.892c-.61-.454-1-1.183-1-1.997v-.413a2.5 2.5 0 0 1 .049-.49l.335-1.68c.11-.546.465-1.012.964-1.261a.8.8 0 0 0 .381-.404l.792-1.848ZM3 10a1 1 0 1 0 0-2 1 1 0 0 0 0 2m10 0a1 1 0 1 0 0-2 1 1 0 0 0 0 2M6 8a1 1 0 0 0 0 2h4a1 1 0 1 0 0-2zM2.906 5.189a.51.51 0 0 0 .497.731c.91-.073 3.35-.17 4.597-.17s3.688.097 4.597.17a.51.51 0 0 0 .497-.731l-.956-1.913A.5.5 0 0 0 11.691 3H4.309a.5.5 0 0 0-.447.276L2.906 5.19Z\"},\"child\":[]}]})(props);\n};\nexport function BsFillCaretDownFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.247 11.14 2.451 5.658C1.885 5.013 2.345 4 3.204 4h9.592a1 1 0 0 1 .753 1.659l-4.796 5.48a1 1 0 0 1-1.506 0z\"},\"child\":[]}]})(props);\n};\nexport function BsFillCaretDownSquareFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 2a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm4 4a.5.5 0 0 0-.374.832l4 4.5a.5.5 0 0 0 .748 0l4-4.5A.5.5 0 0 0 12 6z\"},\"child\":[]}]})(props);\n};\nexport function BsFillCaretLeftFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m3.86 8.753 5.482 4.796c.646.566 1.658.106 1.658-.753V3.204a1 1 0 0 0-1.659-.753l-5.48 4.796a1 1 0 0 0 0 1.506z\"},\"child\":[]}]})(props);\n};\nexport function BsFillCaretLeftSquareFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 2a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm10.5 10V4a.5.5 0 0 0-.832-.374l-4.5 4a.5.5 0 0 0 0 .748l4.5 4A.5.5 0 0 0 10.5 12\"},\"child\":[]}]})(props);\n};\nexport function BsFillCaretRightFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m12.14 8.753-5.482 4.796c-.646.566-1.658.106-1.658-.753V3.204a1 1 0 0 1 1.659-.753l5.48 4.796a1 1 0 0 1 0 1.506z\"},\"child\":[]}]})(props);\n};\nexport function BsFillCaretRightSquareFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 2a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm5.5 10a.5.5 0 0 0 .832.374l4.5-4a.5.5 0 0 0 0-.748l-4.5-4A.5.5 0 0 0 5.5 4z\"},\"child\":[]}]})(props);\n};\nexport function BsFillCaretUpFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m7.247 4.86-4.796 5.481c-.566.647-.106 1.659.753 1.659h9.592a1 1 0 0 0 .753-1.659l-4.796-5.48a1 1 0 0 0-1.506 0z\"},\"child\":[]}]})(props);\n};\nexport function BsFillCaretUpSquareFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 2a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm4 9h8a.5.5 0 0 0 .374-.832l-4-4.5a.5.5 0 0 0-.748 0l-4 4.5A.5.5 0 0 0 4 11\"},\"child\":[]}]})(props);\n};\nexport function BsFillCartCheckFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M.5 1a.5.5 0 0 0 0 1h1.11l.401 1.607 1.498 7.985A.5.5 0 0 0 4 12h1a2 2 0 1 0 0 4 2 2 0 0 0 0-4h7a2 2 0 1 0 0 4 2 2 0 0 0 0-4h1a.5.5 0 0 0 .491-.408l1.5-8A.5.5 0 0 0 14.5 3H2.89l-.405-1.621A.5.5 0 0 0 2 1zM6 14a1 1 0 1 1-2 0 1 1 0 0 1 2 0m7 0a1 1 0 1 1-2 0 1 1 0 0 1 2 0m-1.646-7.646-3 3a.5.5 0 0 1-.708 0l-1.5-1.5a.5.5 0 1 1 .708-.708L8 8.293l2.646-2.647a.5.5 0 0 1 .708.708\"},\"child\":[]}]})(props);\n};\nexport function BsFillCartDashFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M.5 1a.5.5 0 0 0 0 1h1.11l.401 1.607 1.498 7.985A.5.5 0 0 0 4 12h1a2 2 0 1 0 0 4 2 2 0 0 0 0-4h7a2 2 0 1 0 0 4 2 2 0 0 0 0-4h1a.5.5 0 0 0 .491-.408l1.5-8A.5.5 0 0 0 14.5 3H2.89l-.405-1.621A.5.5 0 0 0 2 1zM6 14a1 1 0 1 1-2 0 1 1 0 0 1 2 0m7 0a1 1 0 1 1-2 0 1 1 0 0 1 2 0M6.5 7h4a.5.5 0 0 1 0 1h-4a.5.5 0 0 1 0-1\"},\"child\":[]}]})(props);\n};\nexport function BsFillCartFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 1.5A.5.5 0 0 1 .5 1H2a.5.5 0 0 1 .485.379L2.89 3H14.5a.5.5 0 0 1 .491.592l-1.5 8A.5.5 0 0 1 13 12H4a.5.5 0 0 1-.491-.408L2.01 3.607 1.61 2H.5a.5.5 0 0 1-.5-.5M5 12a2 2 0 1 0 0 4 2 2 0 0 0 0-4m7 0a2 2 0 1 0 0 4 2 2 0 0 0 0-4m-7 1a1 1 0 1 1 0 2 1 1 0 0 1 0-2m7 0a1 1 0 1 1 0 2 1 1 0 0 1 0-2\"},\"child\":[]}]})(props);\n};\nexport function BsFillCartPlusFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M.5 1a.5.5 0 0 0 0 1h1.11l.401 1.607 1.498 7.985A.5.5 0 0 0 4 12h1a2 2 0 1 0 0 4 2 2 0 0 0 0-4h7a2 2 0 1 0 0 4 2 2 0 0 0 0-4h1a.5.5 0 0 0 .491-.408l1.5-8A.5.5 0 0 0 14.5 3H2.89l-.405-1.621A.5.5 0 0 0 2 1zM6 14a1 1 0 1 1-2 0 1 1 0 0 1 2 0m7 0a1 1 0 1 1-2 0 1 1 0 0 1 2 0M9 5.5V7h1.5a.5.5 0 0 1 0 1H9v1.5a.5.5 0 0 1-1 0V8H6.5a.5.5 0 0 1 0-1H8V5.5a.5.5 0 0 1 1 0\"},\"child\":[]}]})(props);\n};\nexport function BsFillCartXFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M.5 1a.5.5 0 0 0 0 1h1.11l.401 1.607 1.498 7.985A.5.5 0 0 0 4 12h1a2 2 0 1 0 0 4 2 2 0 0 0 0-4h7a2 2 0 1 0 0 4 2 2 0 0 0 0-4h1a.5.5 0 0 0 .491-.408l1.5-8A.5.5 0 0 0 14.5 3H2.89l-.405-1.621A.5.5 0 0 0 2 1zM6 14a1 1 0 1 1-2 0 1 1 0 0 1 2 0m7 0a1 1 0 1 1-2 0 1 1 0 0 1 2 0M7.354 5.646 8.5 6.793l1.146-1.147a.5.5 0 0 1 .708.708L9.207 7.5l1.147 1.146a.5.5 0 0 1-.708.708L8.5 8.207 7.354 9.354a.5.5 0 1 1-.708-.708L7.793 7.5 6.646 6.354a.5.5 0 1 1 .708-.708\"},\"child\":[]}]})(props);\n};\nexport function BsFillCassetteFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M1.5 2A1.5 1.5 0 0 0 0 3.5v9A1.5 1.5 0 0 0 1.5 14h.191l1.862-3.724A.5.5 0 0 1 4 10h8a.5.5 0 0 1 .447.276L14.31 14h.191a1.5 1.5 0 0 0 1.5-1.5v-9A1.5 1.5 0 0 0 14.5 2zM4 7a1 1 0 1 1 0-2 1 1 0 0 1 0 2m8 0a1 1 0 1 1 0-2 1 1 0 0 1 0 2M6 6a1 1 0 0 1 1-1h2a1 1 0 0 1 0 2H7a1 1 0 0 1-1-1\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m13.191 14-1.5-3H4.309l-1.5 3z\"},\"child\":[]}]})(props);\n};\nexport function BsFillCcCircleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0M5.408 5.89c.681 0 1.138.47 1.187 1.107h1.147v-.11c-.053-1.187-1.024-2-2.343-2-1.604 0-2.518 1.05-2.518 2.751v.747c0 1.7.906 2.73 2.518 2.73 1.314 0 2.285-.792 2.343-1.939v-.114H6.595c-.049.615-.497 1.05-1.187 1.05-.84 0-1.318-.62-1.318-1.727v-.742c0-1.112.488-1.754 1.318-1.754Zm5.404 0c.68 0 1.138.47 1.186 1.107h1.147v-.11c-.053-1.187-1.024-2-2.342-2-1.604 0-2.518 1.05-2.518 2.751v.747c0 1.7.905 2.73 2.518 2.73 1.314 0 2.285-.792 2.342-1.939v-.114h-1.147c-.048.615-.496 1.05-1.186 1.05-.84 0-1.319-.62-1.319-1.727v-.742c0-1.112.488-1.754 1.319-1.754Z\"},\"child\":[]}]})(props);\n};\nexport function BsFillCcSquareFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm3.408 5.89c-.83 0-1.318.64-1.318 1.753v.742c0 1.108.479 1.727 1.318 1.727.69 0 1.138-.435 1.187-1.05h1.147v.114c-.058 1.147-1.029 1.938-2.343 1.938-1.612 0-2.518-1.028-2.518-2.729v-.747c0-1.7.914-2.75 2.518-2.75 1.319 0 2.29.812 2.343 1.999v.11H6.595c-.049-.638-.506-1.108-1.187-1.108Zm5.404 0c-.831 0-1.319.64-1.319 1.753v.742c0 1.108.48 1.727 1.319 1.727.69 0 1.138-.435 1.186-1.05h1.147v.114c-.057 1.147-1.028 1.938-2.342 1.938-1.613 0-2.518-1.028-2.518-2.729v-.747c0-1.7.914-2.75 2.518-2.75 1.318 0 2.29.812 2.342 1.999v.11h-1.147c-.048-.638-.505-1.108-1.186-1.108Z\"},\"child\":[]}]})(props);\n};\nexport function BsFillChatDotsFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8c0 3.866-3.582 7-8 7a9 9 0 0 1-2.347-.306c-.584.296-1.925.864-4.181 1.234-.2.032-.352-.176-.273-.362.354-.836.674-1.95.77-2.966C.744 11.37 0 9.76 0 8c0-3.866 3.582-7 8-7s8 3.134 8 7M5 8a1 1 0 1 0-2 0 1 1 0 0 0 2 0m4 0a1 1 0 1 0-2 0 1 1 0 0 0 2 0m3 1a1 1 0 1 0 0-2 1 1 0 0 0 0 2\"},\"child\":[]}]})(props);\n};\nexport function BsFillChatFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 15c4.418 0 8-3.134 8-7s-3.582-7-8-7-8 3.134-8 7c0 1.76.743 3.37 1.97 4.6-.097 1.016-.417 2.13-.771 2.966-.079.186.074.394.273.362 2.256-.37 3.597-.938 4.18-1.234A9 9 0 0 0 8 15\"},\"child\":[]}]})(props);\n};\nexport function BsFillChatHeartFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 15c4.418 0 8-3.134 8-7s-3.582-7-8-7-8 3.134-8 7c0 1.76.743 3.37 1.97 4.6-.097 1.016-.417 2.13-.771 2.966-.079.186.074.394.273.362 2.256-.37 3.597-.938 4.18-1.234A9 9 0 0 0 8 15m0-9.007c1.664-1.711 5.825 1.283 0 5.132-5.825-3.85-1.664-6.843 0-5.132\"},\"child\":[]}]})(props);\n};\nexport function BsFillChatLeftDotsFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 2a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H4.414a1 1 0 0 0-.707.293L.854 15.146A.5.5 0 0 1 0 14.793zm5 4a1 1 0 1 0-2 0 1 1 0 0 0 2 0m4 0a1 1 0 1 0-2 0 1 1 0 0 0 2 0m3 1a1 1 0 1 0 0-2 1 1 0 0 0 0 2\"},\"child\":[]}]})(props);\n};\nexport function BsFillChatLeftFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 0a2 2 0 0 0-2 2v12.793a.5.5 0 0 0 .854.353l2.853-2.853A1 1 0 0 1 4.414 12H14a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2z\"},\"child\":[]}]})(props);\n};\nexport function BsFillChatLeftHeartFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 0a2 2 0 0 0-2 2v12.793a.5.5 0 0 0 .854.353l2.853-2.853A1 1 0 0 1 4.414 12H14a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm6 3.993c1.664-1.711 5.825 1.283 0 5.132-5.825-3.85-1.664-6.843 0-5.132\"},\"child\":[]}]})(props);\n};\nexport function BsFillChatLeftQuoteFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 2a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H4.414a1 1 0 0 0-.707.293L.854 15.146A.5.5 0 0 1 0 14.793zm7.194 2.766a1.7 1.7 0 0 0-.227-.272 1.5 1.5 0 0 0-.469-.324l-.008-.004A1.8 1.8 0 0 0 5.734 4C4.776 4 4 4.746 4 5.667c0 .92.776 1.666 1.734 1.666.343 0 .662-.095.931-.26-.137.389-.39.804-.81 1.22a.405.405 0 0 0 .011.59c.173.16.447.155.614-.01 1.334-1.329 1.37-2.758.941-3.706a2.5 2.5 0 0 0-.227-.4zM11 7.073c-.136.389-.39.804-.81 1.22a.405.405 0 0 0 .012.59c.172.16.446.155.613-.01 1.334-1.329 1.37-2.758.942-3.706a2.5 2.5 0 0 0-.228-.4 1.7 1.7 0 0 0-.227-.273 1.5 1.5 0 0 0-.469-.324l-.008-.004A1.8 1.8 0 0 0 10.07 4c-.957 0-1.734.746-1.734 1.667 0 .92.777 1.666 1.734 1.666.343 0 .662-.095.931-.26z\"},\"child\":[]}]})(props);\n};\nexport function BsFillChatLeftTextFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 2a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H4.414a1 1 0 0 0-.707.293L.854 15.146A.5.5 0 0 1 0 14.793zm3.5 1a.5.5 0 0 0 0 1h9a.5.5 0 0 0 0-1zm0 2.5a.5.5 0 0 0 0 1h9a.5.5 0 0 0 0-1zm0 2.5a.5.5 0 0 0 0 1h5a.5.5 0 0 0 0-1z\"},\"child\":[]}]})(props);\n};\nexport function BsFillChatQuoteFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8c0 3.866-3.582 7-8 7a9 9 0 0 1-2.347-.306c-.584.296-1.925.864-4.181 1.234-.2.032-.352-.176-.273-.362.354-.836.674-1.95.77-2.966C.744 11.37 0 9.76 0 8c0-3.866 3.582-7 8-7s8 3.134 8 7M7.194 6.766a1.7 1.7 0 0 0-.227-.272 1.5 1.5 0 0 0-.469-.324l-.008-.004A1.8 1.8 0 0 0 5.734 6C4.776 6 4 6.746 4 7.667c0 .92.776 1.666 1.734 1.666.343 0 .662-.095.931-.26-.137.389-.39.804-.81 1.22a.405.405 0 0 0 .011.59c.173.16.447.155.614-.01 1.334-1.329 1.37-2.758.941-3.706a2.5 2.5 0 0 0-.227-.4zM11 9.073c-.136.389-.39.804-.81 1.22a.405.405 0 0 0 .012.59c.172.16.446.155.613-.01 1.334-1.329 1.37-2.758.942-3.706a2.5 2.5 0 0 0-.228-.4 1.7 1.7 0 0 0-.227-.273 1.5 1.5 0 0 0-.469-.324l-.008-.004A1.8 1.8 0 0 0 10.07 6c-.957 0-1.734.746-1.734 1.667 0 .92.777 1.666 1.734 1.666.343 0 .662-.095.931-.26z\"},\"child\":[]}]})(props);\n};\nexport function BsFillChatRightDotsFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 2a2 2 0 0 0-2-2H2a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h9.586a1 1 0 0 1 .707.293l2.853 2.853a.5.5 0 0 0 .854-.353zM5 6a1 1 0 1 1-2 0 1 1 0 0 1 2 0m4 0a1 1 0 1 1-2 0 1 1 0 0 1 2 0m3 1a1 1 0 1 1 0-2 1 1 0 0 1 0 2\"},\"child\":[]}]})(props);\n};\nexport function BsFillChatRightFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M14 0a2 2 0 0 1 2 2v12.793a.5.5 0 0 1-.854.353l-2.853-2.853a1 1 0 0 0-.707-.293H2a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2z\"},\"child\":[]}]})(props);\n};\nexport function BsFillChatRightHeartFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 2a2 2 0 0 0-2-2H2a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h9.586a1 1 0 0 1 .707.293l2.853 2.853a.5.5 0 0 0 .854-.353zM8 3.993c1.664-1.711 5.825 1.283 0 5.132-5.825-3.85-1.664-6.843 0-5.132\"},\"child\":[]}]})(props);\n};\nexport function BsFillChatRightQuoteFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 2a2 2 0 0 0-2-2H2a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h9.586a1 1 0 0 1 .707.293l2.853 2.853a.5.5 0 0 0 .854-.353zM7.194 4.766q.13.188.227.401c.428.948.393 2.377-.942 3.706a.446.446 0 0 1-.612.01.405.405 0 0 1-.011-.59c.419-.416.672-.831.809-1.22-.269.165-.588.26-.93.26C4.775 7.333 4 6.587 4 5.667S4.776 4 5.734 4c.271 0 .528.06.756.166l.008.004c.169.07.327.182.469.324q.128.125.227.272M11 7.073c-.269.165-.588.26-.93.26-.958 0-1.735-.746-1.735-1.666S9.112 4 10.069 4c.271 0 .528.06.756.166l.008.004c.17.07.327.182.469.324q.128.125.227.272.131.188.228.401c.428.948.392 2.377-.942 3.706a.446.446 0 0 1-.613.01.405.405 0 0 1-.011-.59c.42-.416.672-.831.81-1.22z\"},\"child\":[]}]})(props);\n};\nexport function BsFillChatRightTextFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 2a2 2 0 0 0-2-2H2a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h9.586a1 1 0 0 1 .707.293l2.853 2.853a.5.5 0 0 0 .854-.353zM3.5 3h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1 0-1m0 2.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1 0-1m0 2.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1 0-1\"},\"child\":[]}]})(props);\n};\nexport function BsFillChatSquareDotsFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 2a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2h-2.5a1 1 0 0 0-.8.4l-1.9 2.533a1 1 0 0 1-1.6 0L5.3 12.4a1 1 0 0 0-.8-.4H2a2 2 0 0 1-2-2zm5 4a1 1 0 1 0-2 0 1 1 0 0 0 2 0m4 0a1 1 0 1 0-2 0 1 1 0 0 0 2 0m3 1a1 1 0 1 0 0-2 1 1 0 0 0 0 2\"},\"child\":[]}]})(props);\n};\nexport function BsFillChatSquareFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 0a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h2.5a1 1 0 0 1 .8.4l1.9 2.533a1 1 0 0 0 1.6 0l1.9-2.533a1 1 0 0 1 .8-.4H14a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2z\"},\"child\":[]}]})(props);\n};\nexport function BsFillChatSquareHeartFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 0a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h2.5a1 1 0 0 1 .8.4l1.9 2.533a1 1 0 0 0 1.6 0l1.9-2.533a1 1 0 0 1 .8-.4H14a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm6 3.993c1.664-1.711 5.825 1.283 0 5.132-5.825-3.85-1.664-6.843 0-5.132\"},\"child\":[]}]})(props);\n};\nexport function BsFillChatSquareQuoteFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 2a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2h-2.5a1 1 0 0 0-.8.4l-1.9 2.533a1 1 0 0 1-1.6 0L5.3 12.4a1 1 0 0 0-.8-.4H2a2 2 0 0 1-2-2zm7.194 2.766a1.7 1.7 0 0 0-.227-.272 1.5 1.5 0 0 0-.469-.324l-.008-.004A1.8 1.8 0 0 0 5.734 4C4.776 4 4 4.746 4 5.667c0 .92.776 1.666 1.734 1.666.343 0 .662-.095.931-.26-.137.389-.39.804-.81 1.22a.405.405 0 0 0 .011.59c.173.16.447.155.614-.01 1.334-1.329 1.37-2.758.941-3.706a2.5 2.5 0 0 0-.227-.4zM11 7.073c-.136.389-.39.804-.81 1.22a.405.405 0 0 0 .012.59c.172.16.446.155.613-.01 1.334-1.329 1.37-2.758.942-3.706a2.5 2.5 0 0 0-.228-.4 1.7 1.7 0 0 0-.227-.273 1.5 1.5 0 0 0-.469-.324l-.008-.004A1.8 1.8 0 0 0 10.07 4c-.957 0-1.734.746-1.734 1.667 0 .92.777 1.666 1.734 1.666.343 0 .662-.095.931-.26z\"},\"child\":[]}]})(props);\n};\nexport function BsFillChatSquareTextFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 2a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2h-2.5a1 1 0 0 0-.8.4l-1.9 2.533a1 1 0 0 1-1.6 0L5.3 12.4a1 1 0 0 0-.8-.4H2a2 2 0 0 1-2-2zm3.5 1a.5.5 0 0 0 0 1h9a.5.5 0 0 0 0-1zm0 2.5a.5.5 0 0 0 0 1h9a.5.5 0 0 0 0-1zm0 2.5a.5.5 0 0 0 0 1h5a.5.5 0 0 0 0-1z\"},\"child\":[]}]})(props);\n};\nexport function BsFillChatTextFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8c0 3.866-3.582 7-8 7a9 9 0 0 1-2.347-.306c-.584.296-1.925.864-4.181 1.234-.2.032-.352-.176-.273-.362.354-.836.674-1.95.77-2.966C.744 11.37 0 9.76 0 8c0-3.866 3.582-7 8-7s8 3.134 8 7M4.5 5a.5.5 0 0 0 0 1h7a.5.5 0 0 0 0-1zm0 2.5a.5.5 0 0 0 0 1h7a.5.5 0 0 0 0-1zm0 2.5a.5.5 0 0 0 0 1h4a.5.5 0 0 0 0-1z\"},\"child\":[]}]})(props);\n};\nexport function BsFillCheckCircleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0m-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z\"},\"child\":[]}]})(props);\n};\nexport function BsFillCheckSquareFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm10.03 4.97a.75.75 0 0 1 .011 1.05l-3.992 4.99a.75.75 0 0 1-1.08.02L4.324 8.384a.75.75 0 1 1 1.06-1.06l2.094 2.093 3.473-4.425a.75.75 0 0 1 1.08-.022z\"},\"child\":[]}]})(props);\n};\nexport function BsFillCircleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"circle\",\"attr\":{\"cx\":\"8\",\"cy\":\"8\",\"r\":\"8\"},\"child\":[]}]})(props);\n};\nexport function BsFillClipboardCheckFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.5 0A1.5 1.5 0 0 0 5 1.5v1A1.5 1.5 0 0 0 6.5 4h3A1.5 1.5 0 0 0 11 2.5v-1A1.5 1.5 0 0 0 9.5 0zm3 1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4 1.5H3a2 2 0 0 0-2 2V14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3.5a2 2 0 0 0-2-2h-1v1A2.5 2.5 0 0 1 9.5 5h-3A2.5 2.5 0 0 1 4 2.5zm6.854 7.354-3 3a.5.5 0 0 1-.708 0l-1.5-1.5a.5.5 0 0 1 .708-.708L7.5 10.793l2.646-2.647a.5.5 0 0 1 .708.708\"},\"child\":[]}]})(props);\n};\nexport function BsFillClipboardDataFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.5 0A1.5 1.5 0 0 0 5 1.5v1A1.5 1.5 0 0 0 6.5 4h3A1.5 1.5 0 0 0 11 2.5v-1A1.5 1.5 0 0 0 9.5 0zm3 1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4 1.5H3a2 2 0 0 0-2 2V14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3.5a2 2 0 0 0-2-2h-1v1A2.5 2.5 0 0 1 9.5 5h-3A2.5 2.5 0 0 1 4 2.5zM10 8a1 1 0 1 1 2 0v5a1 1 0 1 1-2 0zm-6 4a1 1 0 1 1 2 0v1a1 1 0 1 1-2 0zm4-3a1 1 0 0 1 1 1v3a1 1 0 1 1-2 0v-3a1 1 0 0 1 1-1\"},\"child\":[]}]})(props);\n};\nexport function BsFillClipboardFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M10 1.5a.5.5 0 0 0-.5-.5h-3a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h3a.5.5 0 0 0 .5-.5zm-5 0A1.5 1.5 0 0 1 6.5 0h3A1.5 1.5 0 0 1 11 1.5v1A1.5 1.5 0 0 1 9.5 4h-3A1.5 1.5 0 0 1 5 2.5zm-2 0h1v1A2.5 2.5 0 0 0 6.5 5h3A2.5 2.5 0 0 0 12 2.5v-1h1a2 2 0 0 1 2 2V14a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2V3.5a2 2 0 0 1 2-2\"},\"child\":[]}]})(props);\n};\nexport function BsFillClipboardHeartFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M6.5 0A1.5 1.5 0 0 0 5 1.5v1A1.5 1.5 0 0 0 6.5 4h3A1.5 1.5 0 0 0 11 2.5v-1A1.5 1.5 0 0 0 9.5 0zm3 1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M4 1.5H3a2 2 0 0 0-2 2V14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3.5a2 2 0 0 0-2-2h-1v1A2.5 2.5 0 0 1 9.5 5h-3A2.5 2.5 0 0 1 4 2.5zm4 5.982c1.664-1.673 5.825 1.254 0 5.018-5.825-3.764-1.664-6.69 0-5.018\"},\"child\":[]}]})(props);\n};\nexport function BsFillClipboardMinusFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.5 0A1.5 1.5 0 0 0 5 1.5v1A1.5 1.5 0 0 0 6.5 4h3A1.5 1.5 0 0 0 11 2.5v-1A1.5 1.5 0 0 0 9.5 0zm3 1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4 1.5H3a2 2 0 0 0-2 2V14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3.5a2 2 0 0 0-2-2h-1v1A2.5 2.5 0 0 1 9.5 5h-3A2.5 2.5 0 0 1 4 2.5zM6 9h4a.5.5 0 0 1 0 1H6a.5.5 0 0 1 0-1\"},\"child\":[]}]})(props);\n};\nexport function BsFillClipboardPlusFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.5 0A1.5 1.5 0 0 0 5 1.5v1A1.5 1.5 0 0 0 6.5 4h3A1.5 1.5 0 0 0 11 2.5v-1A1.5 1.5 0 0 0 9.5 0zm3 1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4 1.5H3a2 2 0 0 0-2 2V14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3.5a2 2 0 0 0-2-2h-1v1A2.5 2.5 0 0 1 9.5 5h-3A2.5 2.5 0 0 1 4 2.5zm4.5 6V9H10a.5.5 0 0 1 0 1H8.5v1.5a.5.5 0 0 1-1 0V10H6a.5.5 0 0 1 0-1h1.5V7.5a.5.5 0 0 1 1 0\"},\"child\":[]}]})(props);\n};\nexport function BsFillClipboardXFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.5 0A1.5 1.5 0 0 0 5 1.5v1A1.5 1.5 0 0 0 6.5 4h3A1.5 1.5 0 0 0 11 2.5v-1A1.5 1.5 0 0 0 9.5 0zm3 1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4 1.5H3a2 2 0 0 0-2 2V14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3.5a2 2 0 0 0-2-2h-1v1A2.5 2.5 0 0 1 9.5 5h-3A2.5 2.5 0 0 1 4 2.5zm4 7.793 1.146-1.147a.5.5 0 1 1 .708.708L8.707 10l1.147 1.146a.5.5 0 0 1-.708.708L8 10.707l-1.146 1.147a.5.5 0 0 1-.708-.708L7.293 10 6.146 8.854a.5.5 0 1 1 .708-.708z\"},\"child\":[]}]})(props);\n};\nexport function BsFillClipboard2CheckFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M10 .5a.5.5 0 0 0-.5-.5h-3a.5.5 0 0 0-.5.5.5.5 0 0 1-.5.5.5.5 0 0 0-.5.5V2a.5.5 0 0 0 .5.5h5A.5.5 0 0 0 11 2v-.5a.5.5 0 0 0-.5-.5.5.5 0 0 1-.5-.5\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4.085 1H3.5A1.5 1.5 0 0 0 2 2.5v12A1.5 1.5 0 0 0 3.5 16h9a1.5 1.5 0 0 0 1.5-1.5v-12A1.5 1.5 0 0 0 12.5 1h-.585q.084.236.085.5V2a1.5 1.5 0 0 1-1.5 1.5h-5A1.5 1.5 0 0 1 4 2v-.5q.001-.264.085-.5m6.769 6.854-3 3a.5.5 0 0 1-.708 0l-1.5-1.5a.5.5 0 1 1 .708-.708L7.5 9.793l2.646-2.647a.5.5 0 0 1 .708.708\"},\"child\":[]}]})(props);\n};\nexport function BsFillClipboard2DataFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M10 .5a.5.5 0 0 0-.5-.5h-3a.5.5 0 0 0-.5.5.5.5 0 0 1-.5.5.5.5 0 0 0-.5.5V2a.5.5 0 0 0 .5.5h5A.5.5 0 0 0 11 2v-.5a.5.5 0 0 0-.5-.5.5.5 0 0 1-.5-.5\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4.085 1H3.5A1.5 1.5 0 0 0 2 2.5v12A1.5 1.5 0 0 0 3.5 16h9a1.5 1.5 0 0 0 1.5-1.5v-12A1.5 1.5 0 0 0 12.5 1h-.585q.084.236.085.5V2a1.5 1.5 0 0 1-1.5 1.5h-5A1.5 1.5 0 0 1 4 2v-.5q.001-.264.085-.5M10 7a1 1 0 1 1 2 0v5a1 1 0 1 1-2 0zm-6 4a1 1 0 1 1 2 0v1a1 1 0 1 1-2 0zm4-3a1 1 0 0 1 1 1v3a1 1 0 1 1-2 0V9a1 1 0 0 1 1-1\"},\"child\":[]}]})(props);\n};\nexport function BsFillClipboard2Fill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.5 0a.5.5 0 0 1 .5.5.5.5 0 0 0 .5.5.5.5 0 0 1 .5.5V2a.5.5 0 0 1-.5.5h-5A.5.5 0 0 1 5 2v-.5a.5.5 0 0 1 .5-.5.5.5 0 0 0 .5-.5.5.5 0 0 1 .5-.5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3.5 1h.585A1.5 1.5 0 0 0 4 1.5V2a1.5 1.5 0 0 0 1.5 1.5h5A1.5 1.5 0 0 0 12 2v-.5q-.001-.264-.085-.5h.585A1.5 1.5 0 0 1 14 2.5v12a1.5 1.5 0 0 1-1.5 1.5h-9A1.5 1.5 0 0 1 2 14.5v-12A1.5 1.5 0 0 1 3.5 1\"},\"child\":[]}]})(props);\n};\nexport function BsFillClipboard2HeartFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M10.058.501a.5.5 0 0 0-.5-.501h-2.98c-.276 0-.5.225-.5.501A.5.5 0 0 1 5.582 1a.497.497 0 0 0-.497.497V2a.5.5 0 0 0 .5.5h4.968a.5.5 0 0 0 .5-.5v-.503A.497.497 0 0 0 10.555 1a.5.5 0 0 1-.497-.499\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M4.174 1h-.57a1.5 1.5 0 0 0-1.5 1.5v12a1.5 1.5 0 0 0 1.5 1.5h9a1.5 1.5 0 0 0 1.5-1.5v-12a1.5 1.5 0 0 0-1.5-1.5h-.642q.084.236.085.5V2c0 .828-.668 1.5-1.492 1.5H5.581A1.496 1.496 0 0 1 4.09 2v-.5q.001-.264.085-.5Zm3.894 5.482c1.656-1.673 5.795 1.254 0 5.018-5.795-3.764-1.656-6.69 0-5.018\"},\"child\":[]}]})(props);\n};\nexport function BsFillClipboard2MinusFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M10 .5a.5.5 0 0 0-.5-.5h-3a.5.5 0 0 0-.5.5.5.5 0 0 1-.5.5.5.5 0 0 0-.5.5V2a.5.5 0 0 0 .5.5h5A.5.5 0 0 0 11 2v-.5a.5.5 0 0 0-.5-.5.5.5 0 0 1-.5-.5\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4.085 1H3.5A1.5 1.5 0 0 0 2 2.5v12A1.5 1.5 0 0 0 3.5 16h9a1.5 1.5 0 0 0 1.5-1.5v-12A1.5 1.5 0 0 0 12.5 1h-.585q.084.236.085.5V2a1.5 1.5 0 0 1-1.5 1.5h-5A1.5 1.5 0 0 1 4 2v-.5q.001-.264.085-.5M6 8h4a.5.5 0 0 1 0 1H6a.5.5 0 0 1 0-1\"},\"child\":[]}]})(props);\n};\nexport function BsFillClipboard2PlusFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M10 .5a.5.5 0 0 0-.5-.5h-3a.5.5 0 0 0-.5.5.5.5 0 0 1-.5.5.5.5 0 0 0-.5.5V2a.5.5 0 0 0 .5.5h5A.5.5 0 0 0 11 2v-.5a.5.5 0 0 0-.5-.5.5.5 0 0 1-.5-.5\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4.085 1H3.5A1.5 1.5 0 0 0 2 2.5v12A1.5 1.5 0 0 0 3.5 16h9a1.5 1.5 0 0 0 1.5-1.5v-12A1.5 1.5 0 0 0 12.5 1h-.585q.084.236.085.5V2a1.5 1.5 0 0 1-1.5 1.5h-5A1.5 1.5 0 0 1 4 2v-.5q.001-.264.085-.5M8.5 6.5V8H10a.5.5 0 0 1 0 1H8.5v1.5a.5.5 0 0 1-1 0V9H6a.5.5 0 0 1 0-1h1.5V6.5a.5.5 0 0 1 1 0\"},\"child\":[]}]})(props);\n};\nexport function BsFillClipboard2PulseFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M10 .5a.5.5 0 0 0-.5-.5h-3a.5.5 0 0 0-.5.5.5.5 0 0 1-.5.5.5.5 0 0 0-.5.5V2a.5.5 0 0 0 .5.5h5A.5.5 0 0 0 11 2v-.5a.5.5 0 0 0-.5-.5.5.5 0 0 1-.5-.5\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4.085 1H3.5A1.5 1.5 0 0 0 2 2.5v12A1.5 1.5 0 0 0 3.5 16h9a1.5 1.5 0 0 0 1.5-1.5v-12A1.5 1.5 0 0 0 12.5 1h-.585q.084.236.085.5V2a1.5 1.5 0 0 1-1.5 1.5h-5A1.5 1.5 0 0 1 4 2v-.5q.001-.264.085-.5M9.98 5.356 11.372 10h.128a.5.5 0 0 1 0 1H11a.5.5 0 0 1-.479-.356l-.94-3.135-1.092 5.096a.5.5 0 0 1-.968.039L6.383 8.85l-.936 1.873A.5.5 0 0 1 5 11h-.5a.5.5 0 0 1 0-1h.191l1.362-2.724a.5.5 0 0 1 .926.08l.94 3.135 1.092-5.096a.5.5 0 0 1 .968-.039Z\"},\"child\":[]}]})(props);\n};\nexport function BsFillClipboard2XFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M10 .5a.5.5 0 0 0-.5-.5h-3a.5.5 0 0 0-.5.5.5.5 0 0 1-.5.5.5.5 0 0 0-.5.5V2a.5.5 0 0 0 .5.5h5A.5.5 0 0 0 11 2v-.5a.5.5 0 0 0-.5-.5.5.5 0 0 1-.5-.5\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4.085 1H3.5A1.5 1.5 0 0 0 2 2.5v12A1.5 1.5 0 0 0 3.5 16h9a1.5 1.5 0 0 0 1.5-1.5v-12A1.5 1.5 0 0 0 12.5 1h-.585q.084.236.085.5V2a1.5 1.5 0 0 1-1.5 1.5h-5A1.5 1.5 0 0 1 4 2v-.5q.001-.264.085-.5M8 8.293l1.146-1.147a.5.5 0 1 1 .708.708L8.707 9l1.147 1.146a.5.5 0 0 1-.708.708L8 9.707l-1.146 1.147a.5.5 0 0 1-.708-.708L7.293 9 6.146 7.854a.5.5 0 1 1 .708-.708z\"},\"child\":[]}]})(props);\n};\nexport function BsFillClockFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0M8 3.5a.5.5 0 0 0-1 0V9a.5.5 0 0 0 .252.434l3.5 2a.5.5 0 0 0 .496-.868L8 8.71z\"},\"child\":[]}]})(props);\n};\nexport function BsFillCloudArrowDownFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 2a5.53 5.53 0 0 0-3.594 1.342c-.766.66-1.321 1.52-1.464 2.383C1.266 6.095 0 7.555 0 9.318 0 11.366 1.708 13 3.781 13h8.906C14.502 13 16 11.57 16 9.773c0-1.636-1.242-2.969-2.834-3.194C12.923 3.999 10.69 2 8 2m2.354 6.854-2 2a.5.5 0 0 1-.708 0l-2-2a.5.5 0 1 1 .708-.708L7.5 9.293V5.5a.5.5 0 0 1 1 0v3.793l1.146-1.147a.5.5 0 0 1 .708.708\"},\"child\":[]}]})(props);\n};\nexport function BsFillCloudArrowUpFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 2a5.53 5.53 0 0 0-3.594 1.342c-.766.66-1.321 1.52-1.464 2.383C1.266 6.095 0 7.555 0 9.318 0 11.366 1.708 13 3.781 13h8.906C14.502 13 16 11.57 16 9.773c0-1.636-1.242-2.969-2.834-3.194C12.923 3.999 10.69 2 8 2m2.354 5.146a.5.5 0 0 1-.708.708L8.5 6.707V10.5a.5.5 0 0 1-1 0V6.707L6.354 7.854a.5.5 0 1 1-.708-.708l2-2a.5.5 0 0 1 .708 0z\"},\"child\":[]}]})(props);\n};\nexport function BsFillCloudCheckFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 2a5.53 5.53 0 0 0-3.594 1.342c-.766.66-1.321 1.52-1.464 2.383C1.266 6.095 0 7.555 0 9.318 0 11.366 1.708 13 3.781 13h8.906C14.502 13 16 11.57 16 9.773c0-1.636-1.242-2.969-2.834-3.194C12.923 3.999 10.69 2 8 2m2.354 4.854-3 3a.5.5 0 0 1-.708 0l-1.5-1.5a.5.5 0 1 1 .708-.708L7 8.793l2.646-2.647a.5.5 0 0 1 .708.708\"},\"child\":[]}]})(props);\n};\nexport function BsFillCloudDownloadFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M8 0a5.53 5.53 0 0 0-3.594 1.342c-.766.66-1.321 1.52-1.464 2.383C1.266 4.095 0 5.555 0 7.318 0 9.366 1.708 11 3.781 11H7.5V5.5a.5.5 0 0 1 1 0V11h4.188C14.502 11 16 9.57 16 7.773c0-1.636-1.242-2.969-2.834-3.194C12.923 1.999 10.69 0 8 0m-.354 15.854a.5.5 0 0 0 .708 0l3-3a.5.5 0 0 0-.708-.708L8.5 14.293V11h-1v3.293l-2.146-2.147a.5.5 0 0 0-.708.708z\"},\"child\":[]}]})(props);\n};\nexport function BsFillCloudDrizzleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4.158 12.025a.5.5 0 0 1 .316.633l-.5 1.5a.5.5 0 0 1-.948-.316l.5-1.5a.5.5 0 0 1 .632-.317m6 0a.5.5 0 0 1 .316.633l-.5 1.5a.5.5 0 0 1-.948-.316l.5-1.5a.5.5 0 0 1 .632-.317m-3.5 1.5a.5.5 0 0 1 .316.633l-.5 1.5a.5.5 0 0 1-.948-.316l.5-1.5a.5.5 0 0 1 .632-.317m6 0a.5.5 0 0 1 .316.633l-.5 1.5a.5.5 0 1 1-.948-.316l.5-1.5a.5.5 0 0 1 .632-.317m.747-8.498a5.001 5.001 0 0 0-9.499-1.004A3.5 3.5 0 1 0 3.5 11H13a3 3 0 0 0 .405-5.973\"},\"child\":[]}]})(props);\n};\nexport function BsFillCloudFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4.406 3.342A5.53 5.53 0 0 1 8 2c2.69 0 4.923 2 5.166 4.579C14.758 6.804 16 8.137 16 9.773 16 11.569 14.502 13 12.687 13H3.781C1.708 13 0 11.366 0 9.318c0-1.763 1.266-3.223 2.942-3.593.143-.863.698-1.723 1.464-2.383\"},\"child\":[]}]})(props);\n};\nexport function BsFillCloudFogFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3 13.5a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5m0 2a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5m10.405-9.473a5.001 5.001 0 0 0-9.499-1.004A3.5 3.5 0 1 0 3.5 12H13a3 3 0 0 0 .405-5.973\"},\"child\":[]}]})(props);\n};\nexport function BsFillCloudFog2Fill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.5 3a5 5 0 0 1 4.905 4.027A3 3 0 0 1 13 13h-1.5a.5.5 0 0 0 0-1H1.05a3.5 3.5 0 0 1-.713-1H9.5a.5.5 0 0 0 0-1H.035a3.5 3.5 0 0 1 0-1H7.5a.5.5 0 0 0 0-1H.337a3.5 3.5 0 0 1 3.57-1.977A5 5 0 0 1 8.5 3\"},\"child\":[]}]})(props);\n};\nexport function BsFillCloudHailFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3.75 15.25a.75.75 0 1 1-1.5 0 .75.75 0 0 1 1.5 0m.408-3.724a.5.5 0 0 1 .316.632l-.5 1.5a.5.5 0 1 1-.948-.316l.5-1.5a.5.5 0 0 1 .632-.316M7.75 15.25a.75.75 0 1 1-1.5 0 .75.75 0 0 1 1.5 0m.408-3.724a.5.5 0 0 1 .316.632l-.5 1.5a.5.5 0 1 1-.948-.316l.5-1.5a.5.5 0 0 1 .632-.316m3.592 3.724a.75.75 0 1 1-1.5 0 .75.75 0 0 1 1.5 0m.408-3.724a.5.5 0 0 1 .316.632l-.5 1.5a.5.5 0 1 1-.948-.316l.5-1.5a.5.5 0 0 1 .632-.316m1.247-6.999a5.001 5.001 0 0 0-9.499-1.004A3.5 3.5 0 1 0 3.5 10.5H13a3 3 0 0 0 .405-5.973\"},\"child\":[]}]})(props);\n};\nexport function BsFillCloudHazeFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4 11.5a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5m-3 2a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5m2 2a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5M13.405 4.027a5.001 5.001 0 0 0-9.499-1.004A3.5 3.5 0 1 0 3.5 10H13a3 3 0 0 0 .405-5.973\"},\"child\":[]}]})(props);\n};\nexport function BsFillCloudHaze2Fill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.5 2a5 5 0 0 1 4.905 4.027A3 3 0 0 1 13 12H3.5A3.5 3.5 0 0 1 .035 9H5.5a.5.5 0 0 0 0-1H.035a3.5 3.5 0 0 1 3.871-2.977A5 5 0 0 1 8.5 2m-6 8a.5.5 0 0 0 0 1h9a.5.5 0 0 0 0-1zM0 13.5a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsFillCloudLightningFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.053 11.276A.5.5 0 0 1 7.5 11h1a.5.5 0 0 1 .474.658l-.28.842H9.5a.5.5 0 0 1 .39.812l-2 2.5a.5.5 0 0 1-.875-.433L7.36 14H6.5a.5.5 0 0 1-.447-.724zm6.352-7.249a5.001 5.001 0 0 0-9.499-1.004A3.5 3.5 0 1 0 3.5 10H13a3 3 0 0 0 .405-5.973\"},\"child\":[]}]})(props);\n};\nexport function BsFillCloudLightningRainFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2.658 11.026a.5.5 0 0 1 .316.632l-.5 1.5a.5.5 0 1 1-.948-.316l.5-1.5a.5.5 0 0 1 .632-.316m9.5 0a.5.5 0 0 1 .316.632l-.5 1.5a.5.5 0 0 1-.948-.316l.5-1.5a.5.5 0 0 1 .632-.316m-7.5 1.5a.5.5 0 0 1 .316.632l-.5 1.5a.5.5 0 1 1-.948-.316l.5-1.5a.5.5 0 0 1 .632-.316m9.5 0a.5.5 0 0 1 .316.632l-.5 1.5a.5.5 0 0 1-.948-.316l.5-1.5a.5.5 0 0 1 .632-.316m-7.105-1.25A.5.5 0 0 1 7.5 11h1a.5.5 0 0 1 .474.658l-.28.842H9.5a.5.5 0 0 1 .39.812l-2 2.5a.5.5 0 0 1-.875-.433L7.36 14H6.5a.5.5 0 0 1-.447-.724zm6.352-7.249a5.001 5.001 0 0 0-9.499-1.004A3.5 3.5 0 1 0 3.5 10H13a3 3 0 0 0 .405-5.973\"},\"child\":[]}]})(props);\n};\nexport function BsFillCloudMinusFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 2a5.53 5.53 0 0 0-3.594 1.342c-.766.66-1.321 1.52-1.464 2.383C1.266 6.095 0 7.555 0 9.318 0 11.366 1.708 13 3.781 13h8.906C14.502 13 16 11.57 16 9.773c0-1.636-1.242-2.969-2.834-3.194C12.923 3.999 10.69 2 8 2M6 7.5h4a.5.5 0 0 1 0 1H6a.5.5 0 0 1 0-1\"},\"child\":[]}]})(props);\n};\nexport function BsFillCloudMoonFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M11.473 11a4.5 4.5 0 0 0-8.72-.99A3 3 0 0 0 3 16h8.5a2.5 2.5 0 0 0 0-5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M11.286 1.778a.5.5 0 0 0-.565-.755 4.595 4.595 0 0 0-3.18 5.003 5.5 5.5 0 0 1 1.055.209A3.6 3.6 0 0 1 9.83 2.617a4.593 4.593 0 0 0 4.31 5.744 3.58 3.58 0 0 1-2.241.634q.244.477.394 1a4.59 4.59 0 0 0 3.624-2.04.5.5 0 0 0-.565-.755 3.593 3.593 0 0 1-4.065-5.422z\"},\"child\":[]}]})(props);\n};\nexport function BsFillCloudPlusFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 2a5.53 5.53 0 0 0-3.594 1.342c-.766.66-1.321 1.52-1.464 2.383C1.266 6.095 0 7.555 0 9.318 0 11.366 1.708 13 3.781 13h8.906C14.502 13 16 11.57 16 9.773c0-1.636-1.242-2.969-2.834-3.194C12.923 3.999 10.69 2 8 2m.5 4v1.5H10a.5.5 0 0 1 0 1H8.5V10a.5.5 0 0 1-1 0V8.5H6a.5.5 0 0 1 0-1h1.5V6a.5.5 0 0 1 1 0\"},\"child\":[]}]})(props);\n};\nexport function BsFillCloudRainFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4.158 12.025a.5.5 0 0 1 .316.633l-.5 1.5a.5.5 0 1 1-.948-.316l.5-1.5a.5.5 0 0 1 .632-.317m3 0a.5.5 0 0 1 .316.633l-1 3a.5.5 0 1 1-.948-.316l1-3a.5.5 0 0 1 .632-.317m3 0a.5.5 0 0 1 .316.633l-.5 1.5a.5.5 0 1 1-.948-.316l.5-1.5a.5.5 0 0 1 .632-.317m3 0a.5.5 0 0 1 .316.633l-1 3a.5.5 0 1 1-.948-.316l1-3a.5.5 0 0 1 .632-.317m.247-6.998a5.001 5.001 0 0 0-9.499-1.004A3.5 3.5 0 1 0 3.5 11H13a3 3 0 0 0 .405-5.973\"},\"child\":[]}]})(props);\n};\nexport function BsFillCloudRainHeavyFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4.176 11.032a.5.5 0 0 1 .292.643l-1.5 4a.5.5 0 0 1-.936-.35l1.5-4a.5.5 0 0 1 .644-.293m3 0a.5.5 0 0 1 .292.643l-1.5 4a.5.5 0 0 1-.936-.35l1.5-4a.5.5 0 0 1 .644-.293m3 0a.5.5 0 0 1 .292.643l-1.5 4a.5.5 0 0 1-.936-.35l1.5-4a.5.5 0 0 1 .644-.293m3 0a.5.5 0 0 1 .292.643l-1.5 4a.5.5 0 0 1-.936-.35l1.5-4a.5.5 0 0 1 .644-.293m.229-7.005a5.001 5.001 0 0 0-9.499-1.004A3.5 3.5 0 1 0 3.5 10H13a3 3 0 0 0 .405-5.973\"},\"child\":[]}]})(props);\n};\nexport function BsFillCloudSlashFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M3.112 5.112a3 3 0 0 0-.17.613C1.266 6.095 0 7.555 0 9.318 0 11.366 1.708 13 3.781 13H11zm11.372 7.372L4.937 2.937A5.5 5.5 0 0 1 8 2c2.69 0 4.923 2 5.166 4.579C14.758 6.804 16 8.137 16 9.773a3.2 3.2 0 0 1-1.516 2.711m-.838 1.87-12-12 .708-.708 12 12z\"},\"child\":[]}]})(props);\n};\nexport function BsFillCloudSleetFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2.375 13.5a.25.25 0 0 1 .25.25v.57l.501-.287a.25.25 0 0 1 .248.434l-.495.283.495.283a.25.25 0 1 1-.248.434l-.501-.286v.569a.25.25 0 1 1-.5 0v-.57l-.501.287a.25.25 0 1 1-.248-.434l.495-.283-.495-.283a.25.25 0 1 1 .248-.434l.501.286v-.569a.25.25 0 0 1 .25-.25m1.849-2.447a.5.5 0 0 1 .223.67l-.5 1a.5.5 0 0 1-.894-.447l.5-1a.5.5 0 0 1 .67-.223zM6.375 13.5a.25.25 0 0 1 .25.25v.57l.5-.287a.25.25 0 0 1 .249.434l-.495.283.495.283a.25.25 0 1 1-.248.434l-.501-.286v.569a.25.25 0 1 1-.5 0v-.57l-.501.287a.25.25 0 1 1-.248-.434l.495-.283-.495-.283a.25.25 0 1 1 .248-.434l.501.286v-.569a.25.25 0 0 1 .25-.25m1.849-2.447a.5.5 0 0 1 .223.67l-.5 1a.5.5 0 0 1-.894-.447l.5-1a.5.5 0 0 1 .67-.223zm2.151 2.447a.25.25 0 0 1 .25.25v.57l.5-.287a.25.25 0 0 1 .249.434l-.495.283.495.283a.25.25 0 1 1-.248.434l-.501-.286v.569a.25.25 0 0 1-.5 0v-.57l-.501.287a.25.25 0 1 1-.248-.434l.495-.283-.495-.283a.25.25 0 1 1 .248-.434l.501.286v-.569a.25.25 0 0 1 .25-.25m1.849-2.447a.5.5 0 0 1 .223.67l-.5 1a.5.5 0 1 1-.894-.447l.5-1a.5.5 0 0 1 .67-.223zm1.181-7.026a5.001 5.001 0 0 0-9.499-1.004A3.5 3.5 0 1 0 3.5 10H13a3 3 0 0 0 .405-5.973\"},\"child\":[]}]})(props);\n};\nexport function BsFillCloudSnowFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2.625 11.5a.25.25 0 0 1 .25.25v.57l.501-.287a.25.25 0 0 1 .248.434l-.495.283.495.283a.25.25 0 0 1-.248.434l-.501-.286v.569a.25.25 0 1 1-.5 0v-.57l-.501.287a.25.25 0 0 1-.248-.434l.495-.283-.495-.283a.25.25 0 0 1 .248-.434l.501.286v-.569a.25.25 0 0 1 .25-.25m2.75 2a.25.25 0 0 1 .25.25v.57l.5-.287a.25.25 0 0 1 .249.434l-.495.283.495.283a.25.25 0 0 1-.248.434l-.501-.286v.569a.25.25 0 1 1-.5 0v-.57l-.501.287a.25.25 0 0 1-.248-.434l.495-.283-.495-.283a.25.25 0 0 1 .248-.434l.501.286v-.569a.25.25 0 0 1 .25-.25m5.5 0a.25.25 0 0 1 .25.25v.57l.5-.287a.25.25 0 0 1 .249.434l-.495.283.495.283a.25.25 0 0 1-.248.434l-.501-.286v.569a.25.25 0 0 1-.5 0v-.57l-.501.287a.25.25 0 0 1-.248-.434l.495-.283-.495-.283a.25.25 0 0 1 .248-.434l.501.286v-.569a.25.25 0 0 1 .25-.25m-2.75-2a.25.25 0 0 1 .25.25v.57l.5-.287a.25.25 0 0 1 .249.434l-.495.283.495.283a.25.25 0 0 1-.248.434l-.501-.286v.569a.25.25 0 1 1-.5 0v-.57l-.501.287a.25.25 0 0 1-.248-.434l.495-.283-.495-.283a.25.25 0 0 1 .248-.434l.501.286v-.569a.25.25 0 0 1 .25-.25m5.5 0a.25.25 0 0 1 .25.25v.57l.5-.287a.25.25 0 0 1 .249.434l-.495.283.495.283a.25.25 0 0 1-.248.434l-.501-.286v.569a.25.25 0 0 1-.5 0v-.57l-.501.287a.25.25 0 1 1-.248-.434l.495-.283-.495-.283a.25.25 0 0 1 .248-.434l.501.286v-.569a.25.25 0 0 1 .25-.25m-.22-7.223a5.001 5.001 0 0 0-9.499-1.004A3.5 3.5 0 1 0 3.5 10.25H13a3 3 0 0 0 .405-5.973\"},\"child\":[]}]})(props);\n};\nexport function BsFillCloudSunFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M11.473 11a4.5 4.5 0 0 0-8.72-.99A3 3 0 0 0 3 16h8.5a2.5 2.5 0 0 0 0-5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M10.5 1.5a.5.5 0 0 0-1 0v1a.5.5 0 0 0 1 0zm3.743 1.964a.5.5 0 1 0-.707-.707l-.708.707a.5.5 0 0 0 .708.708zm-7.779-.707a.5.5 0 0 0-.707.707l.707.708a.5.5 0 1 0 .708-.708zm1.734 3.374a2 2 0 1 1 3.296 2.198q.3.423.516.898a3 3 0 1 0-4.84-3.225q.529.017 1.028.129m4.484 4.074c.6.215 1.125.59 1.522 1.072a.5.5 0 0 0 .039-.742l-.707-.707a.5.5 0 0 0-.854.377M14.5 6.5a.5.5 0 0 0 0 1h1a.5.5 0 0 0 0-1z\"},\"child\":[]}]})(props);\n};\nexport function BsFillCloudUploadFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M8 0a5.53 5.53 0 0 0-3.594 1.342c-.766.66-1.321 1.52-1.464 2.383C1.266 4.095 0 5.555 0 7.318 0 9.366 1.708 11 3.781 11H7.5V5.707L5.354 7.854a.5.5 0 1 1-.708-.708l3-3a.5.5 0 0 1 .708 0l3 3a.5.5 0 0 1-.708.708L8.5 5.707V11h4.188C14.502 11 16 9.57 16 7.773c0-1.636-1.242-2.969-2.834-3.194C12.923 1.999 10.69 0 8 0m-.5 14.5V11h1v3.5a.5.5 0 0 1-1 0\"},\"child\":[]}]})(props);\n};\nexport function BsFillCloudsFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M11.473 9a4.5 4.5 0 0 0-8.72-.99A3 3 0 0 0 3 14h8.5a2.5 2.5 0 1 0-.027-5\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M14.544 9.772a3.5 3.5 0 0 0-2.225-1.676 5.5 5.5 0 0 0-6.337-4.002 4.002 4.002 0 0 1 7.392.91 2.5 2.5 0 0 1 1.17 4.769z\"},\"child\":[]}]})(props);\n};\nexport function BsFillCloudyFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M13.405 7.027a5.001 5.001 0 0 0-9.499-1.004A3.5 3.5 0 1 0 3.5 13H13a3 3 0 0 0 .405-5.973\"},\"child\":[]}]})(props);\n};\nexport function BsFillCollectionFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 13a1.5 1.5 0 0 0 1.5 1.5h13A1.5 1.5 0 0 0 16 13V6a1.5 1.5 0 0 0-1.5-1.5h-13A1.5 1.5 0 0 0 0 6zM2 3a.5.5 0 0 0 .5.5h11a.5.5 0 0 0 0-1h-11A.5.5 0 0 0 2 3m2-2a.5.5 0 0 0 .5.5h7a.5.5 0 0 0 0-1h-7A.5.5 0 0 0 4 1\"},\"child\":[]}]})(props);\n};\nexport function BsFillCollectionPlayFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2.5 3.5a.5.5 0 0 1 0-1h11a.5.5 0 0 1 0 1zm2-2a.5.5 0 0 1 0-1h7a.5.5 0 0 1 0 1zM0 13a1.5 1.5 0 0 0 1.5 1.5h13A1.5 1.5 0 0 0 16 13V6a1.5 1.5 0 0 0-1.5-1.5h-13A1.5 1.5 0 0 0 0 6zm6.258-6.437a.5.5 0 0 1 .507.013l4 2.5a.5.5 0 0 1 0 .848l-4 2.5A.5.5 0 0 1 6 12V7a.5.5 0 0 1 .258-.437\"},\"child\":[]}]})(props);\n};\nexport function BsFillCompassFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M15.5 8.516a7.5 7.5 0 1 1-9.462-7.24A1 1 0 0 1 7 0h2a1 1 0 0 1 .962 1.276 7.5 7.5 0 0 1 5.538 7.24m-3.61-3.905L6.94 7.439 4.11 12.39l4.95-2.828 2.828-4.95z\"},\"child\":[]}]})(props);\n};\nexport function BsFillCpuFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.5 6a.5.5 0 0 0-.5.5v3a.5.5 0 0 0 .5.5h3a.5.5 0 0 0 .5-.5v-3a.5.5 0 0 0-.5-.5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M5.5.5a.5.5 0 0 0-1 0V2A2.5 2.5 0 0 0 2 4.5H.5a.5.5 0 0 0 0 1H2v1H.5a.5.5 0 0 0 0 1H2v1H.5a.5.5 0 0 0 0 1H2v1H.5a.5.5 0 0 0 0 1H2A2.5 2.5 0 0 0 4.5 14v1.5a.5.5 0 0 0 1 0V14h1v1.5a.5.5 0 0 0 1 0V14h1v1.5a.5.5 0 0 0 1 0V14h1v1.5a.5.5 0 0 0 1 0V14a2.5 2.5 0 0 0 2.5-2.5h1.5a.5.5 0 0 0 0-1H14v-1h1.5a.5.5 0 0 0 0-1H14v-1h1.5a.5.5 0 0 0 0-1H14v-1h1.5a.5.5 0 0 0 0-1H14A2.5 2.5 0 0 0 11.5 2V.5a.5.5 0 0 0-1 0V2h-1V.5a.5.5 0 0 0-1 0V2h-1V.5a.5.5 0 0 0-1 0V2h-1zm1 4.5h3A1.5 1.5 0 0 1 11 6.5v3A1.5 1.5 0 0 1 9.5 11h-3A1.5 1.5 0 0 1 5 9.5v-3A1.5 1.5 0 0 1 6.5 5\"},\"child\":[]}]})(props);\n};\nexport function BsFillCreditCard2BackFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 4a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v5H0zm11.5 1a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h2a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zM0 11v1a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-1z\"},\"child\":[]}]})(props);\n};\nexport function BsFillCreditCard2FrontFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 4a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm2.5 1a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h2a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm0 3a.5.5 0 0 0 0 1h5a.5.5 0 0 0 0-1zm0 2a.5.5 0 0 0 0 1h1a.5.5 0 0 0 0-1zm3 0a.5.5 0 0 0 0 1h1a.5.5 0 0 0 0-1zm3 0a.5.5 0 0 0 0 1h1a.5.5 0 0 0 0-1zm3 0a.5.5 0 0 0 0 1h1a.5.5 0 0 0 0-1z\"},\"child\":[]}]})(props);\n};\nexport function BsFillCreditCardFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 4a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v1H0zm0 3v5a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7zm3 2h1a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1v-1a1 1 0 0 1 1-1\"},\"child\":[]}]})(props);\n};\nexport function BsFillCupFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M.11 3.187A.5.5 0 0 1 .5 3h13a.5.5 0 0 1 .488.608l-.22.991a3.001 3.001 0 0 1-1.3 5.854l-.132.59A2.5 2.5 0 0 1 9.896 13H4.104a2.5 2.5 0 0 1-2.44-1.958L.012 3.608a.5.5 0 0 1 .098-.42Zm12.574 6.288a2 2 0 0 0 .866-3.899z\"},\"child\":[]}]})(props);\n};\nexport function BsFillCupHotFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M.5 6a.5.5 0 0 0-.488.608l1.652 7.434A2.5 2.5 0 0 0 4.104 16h5.792a2.5 2.5 0 0 0 2.44-1.958l.131-.59a3 3 0 0 0 1.3-5.854l.221-.99A.5.5 0 0 0 13.5 6zM13 12.5a2 2 0 0 1-.316-.025l.867-3.898A2.001 2.001 0 0 1 13 12.5\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m4.4.8-.003.004-.014.019a4 4 0 0 0-.204.31 2 2 0 0 0-.141.267c-.026.06-.034.092-.037.103v.004a.6.6 0 0 0 .091.248c.075.133.178.272.308.445l.01.012c.118.158.26.347.37.543.112.2.22.455.22.745 0 .188-.065.368-.119.494a3 3 0 0 1-.202.388 5 5 0 0 1-.253.382l-.018.025-.005.008-.002.002A.5.5 0 0 1 3.6 4.2l.003-.004.014-.019a4 4 0 0 0 .204-.31 2 2 0 0 0 .141-.267c.026-.06.034-.092.037-.103a.6.6 0 0 0-.09-.252A4 4 0 0 0 3.6 2.8l-.01-.012a5 5 0 0 1-.37-.543A1.53 1.53 0 0 1 3 1.5c0-.188.065-.368.119-.494.059-.138.134-.274.202-.388a6 6 0 0 1 .253-.382l.025-.035A.5.5 0 0 1 4.4.8m3 0-.003.004-.014.019a4 4 0 0 0-.204.31 2 2 0 0 0-.141.267c-.026.06-.034.092-.037.103v.004a.6.6 0 0 0 .091.248c.075.133.178.272.308.445l.01.012c.118.158.26.347.37.543.112.2.22.455.22.745 0 .188-.065.368-.119.494a3 3 0 0 1-.202.388 5 5 0 0 1-.253.382l-.018.025-.005.008-.002.002A.5.5 0 0 1 6.6 4.2l.003-.004.014-.019a4 4 0 0 0 .204-.31 2 2 0 0 0 .141-.267c.026-.06.034-.092.037-.103a.6.6 0 0 0-.09-.252A4 4 0 0 0 6.6 2.8l-.01-.012a5 5 0 0 1-.37-.543A1.53 1.53 0 0 1 6 1.5c0-.188.065-.368.119-.494.059-.138.134-.274.202-.388a6 6 0 0 1 .253-.382l.025-.035A.5.5 0 0 1 7.4.8m3 0-.003.004-.014.019a4 4 0 0 0-.204.31 2 2 0 0 0-.141.267c-.026.06-.034.092-.037.103v.004a.6.6 0 0 0 .091.248c.075.133.178.272.308.445l.01.012c.118.158.26.347.37.543.112.2.22.455.22.745 0 .188-.065.368-.119.494a3 3 0 0 1-.202.388 5 5 0 0 1-.252.382l-.019.025-.005.008-.002.002A.5.5 0 0 1 9.6 4.2l.003-.004.014-.019a4 4 0 0 0 .204-.31 2 2 0 0 0 .141-.267c.026-.06.034-.092.037-.103a.6.6 0 0 0-.09-.252A4 4 0 0 0 9.6 2.8l-.01-.012a5 5 0 0 1-.37-.543A1.53 1.53 0 0 1 9 1.5c0-.188.065-.368.119-.494.059-.138.134-.274.202-.388a6 6 0 0 1 .253-.382l.025-.035A.5.5 0 0 1 10.4.8\"},\"child\":[]}]})(props);\n};\nexport function BsFillCursorFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M14.082 2.182a.5.5 0 0 1 .103.557L8.528 15.467a.5.5 0 0 1-.917-.007L5.57 10.694.803 8.652a.5.5 0 0 1-.006-.916l12.728-5.657a.5.5 0 0 1 .556.103z\"},\"child\":[]}]})(props);\n};\nexport function BsFillDashCircleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0M4.5 7.5a.5.5 0 0 0 0 1h7a.5.5 0 0 0 0-1z\"},\"child\":[]}]})(props);\n};\nexport function BsFillDashSquareFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm2.5 7.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1 0-1\"},\"child\":[]}]})(props);\n};\nexport function BsFillDatabaseFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3.904 1.777C4.978 1.289 6.427 1 8 1s3.022.289 4.096.777C13.125 2.245 14 2.993 14 4s-.875 1.755-1.904 2.223C11.022 6.711 9.573 7 8 7s-3.022-.289-4.096-.777C2.875 5.755 2 5.007 2 4s.875-1.755 1.904-2.223\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 6.161V7c0 1.007.875 1.755 1.904 2.223C4.978 9.71 6.427 10 8 10s3.022-.289 4.096-.777C13.125 8.755 14 8.007 14 7v-.839c-.457.432-1.004.751-1.49.972C11.278 7.693 9.682 8 8 8s-3.278-.307-4.51-.867c-.486-.22-1.033-.54-1.49-.972\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 9.161V10c0 1.007.875 1.755 1.904 2.223C4.978 12.711 6.427 13 8 13s3.022-.289 4.096-.777C13.125 11.755 14 11.007 14 10v-.839c-.457.432-1.004.751-1.49.972-1.232.56-2.828.867-4.51.867s-3.278-.307-4.51-.867c-.486-.22-1.033-.54-1.49-.972\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 12.161V13c0 1.007.875 1.755 1.904 2.223C4.978 15.711 6.427 16 8 16s3.022-.289 4.096-.777C13.125 14.755 14 14.007 14 13v-.839c-.457.432-1.004.751-1.49.972-1.232.56-2.828.867-4.51.867s-3.278-.307-4.51-.867c-.486-.22-1.033-.54-1.49-.972\"},\"child\":[]}]})(props);\n};\nexport function BsFillDeviceHddFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.785 9.896A3.001 3.001 0 0 0 8 4a3 3 0 0 0-.891 5.865c.667-.44 1.396-.91 1.955-1.268.224-.144.483.115.34.34zM9 7a1 1 0 1 1-2 0 1 1 0 0 1 2 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm9 1.5a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0m0 13a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0m-9.5.5a.5.5 0 1 1 0-1 .5.5 0 0 1 0 1M4 1.5a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0m2.882 11.177a1.102 1.102 0 0 1-1.56-1.559c.1-.098.396-.314.795-.588a4 4 0 1 1 1.946.47c-.537.813-1.02 1.515-1.181 1.677\"},\"child\":[]}]})(props);\n};\nexport function BsFillDeviceSsdFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5 8V4h6v4z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm0 1.5a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0m9 0a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0M3.5 11a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1m9.5-.5a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0M4.75 3h6.5a.75.75 0 0 1 .75.75v4.5a.75.75 0 0 1-.75.75h-6.5A.75.75 0 0 1 4 8.25v-4.5A.75.75 0 0 1 4.75 3M5 12h6a1 1 0 0 1 1 1v2h-1v-2h-.75v2h-1v-2H8.5v2h-1v-2h-.75v2h-1v-2H5v2H4v-2a1 1 0 0 1 1-1\"},\"child\":[]}]})(props);\n};\nexport function BsFillDiagram2Fill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M6 3.5A1.5 1.5 0 0 1 7.5 2h1A1.5 1.5 0 0 1 10 3.5v1A1.5 1.5 0 0 1 8.5 6v1H11a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-1 0V8h-5v.5a.5.5 0 0 1-1 0v-1A.5.5 0 0 1 5 7h2.5V6A1.5 1.5 0 0 1 6 4.5zm-3 8A1.5 1.5 0 0 1 4.5 10h1A1.5 1.5 0 0 1 7 11.5v1A1.5 1.5 0 0 1 5.5 14h-1A1.5 1.5 0 0 1 3 12.5zm6 0a1.5 1.5 0 0 1 1.5-1.5h1a1.5 1.5 0 0 1 1.5 1.5v1a1.5 1.5 0 0 1-1.5 1.5h-1A1.5 1.5 0 0 1 9 12.5z\"},\"child\":[]}]})(props);\n};\nexport function BsFillDiagram3Fill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M6 3.5A1.5 1.5 0 0 1 7.5 2h1A1.5 1.5 0 0 1 10 3.5v1A1.5 1.5 0 0 1 8.5 6v1H14a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-1 0V8h-5v.5a.5.5 0 0 1-1 0V8h-5v.5a.5.5 0 0 1-1 0v-1A.5.5 0 0 1 2 7h5.5V6A1.5 1.5 0 0 1 6 4.5zm-6 8A1.5 1.5 0 0 1 1.5 10h1A1.5 1.5 0 0 1 4 11.5v1A1.5 1.5 0 0 1 2.5 14h-1A1.5 1.5 0 0 1 0 12.5zm6 0A1.5 1.5 0 0 1 7.5 10h1a1.5 1.5 0 0 1 1.5 1.5v1A1.5 1.5 0 0 1 8.5 14h-1A1.5 1.5 0 0 1 6 12.5zm6 0a1.5 1.5 0 0 1 1.5-1.5h1a1.5 1.5 0 0 1 1.5 1.5v1a1.5 1.5 0 0 1-1.5 1.5h-1a1.5 1.5 0 0 1-1.5-1.5z\"},\"child\":[]}]})(props);\n};\nexport function BsFillDiamondFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M6.95.435c.58-.58 1.52-.58 2.1 0l6.515 6.516c.58.58.58 1.519 0 2.098L9.05 15.565c-.58.58-1.519.58-2.098 0L.435 9.05a1.48 1.48 0 0 1 0-2.098z\"},\"child\":[]}]})(props);\n};\nexport function BsFillDice1Fill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3 0a3 3 0 0 0-3 3v10a3 3 0 0 0 3 3h10a3 3 0 0 0 3-3V3a3 3 0 0 0-3-3zm5 9.5a1.5 1.5 0 1 1 0-3 1.5 1.5 0 0 1 0 3\"},\"child\":[]}]})(props);\n};\nexport function BsFillDice2Fill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 3a3 3 0 0 1 3-3h10a3 3 0 0 1 3 3v10a3 3 0 0 1-3 3H3a3 3 0 0 1-3-3zm5.5 1a1.5 1.5 0 1 0-3 0 1.5 1.5 0 0 0 3 0m6.5 9.5a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3\"},\"child\":[]}]})(props);\n};\nexport function BsFillDice3Fill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3 0a3 3 0 0 0-3 3v10a3 3 0 0 0 3 3h10a3 3 0 0 0 3-3V3a3 3 0 0 0-3-3zm2.5 4a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0m8 8a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0M8 9.5a1.5 1.5 0 1 1 0-3 1.5 1.5 0 0 1 0 3\"},\"child\":[]}]})(props);\n};\nexport function BsFillDice4Fill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3 0a3 3 0 0 0-3 3v10a3 3 0 0 0 3 3h10a3 3 0 0 0 3-3V3a3 3 0 0 0-3-3zm1 5.5a1.5 1.5 0 1 1 0-3 1.5 1.5 0 0 1 0 3m8 0a1.5 1.5 0 1 1 0-3 1.5 1.5 0 0 1 0 3m1.5 6.5a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0M4 13.5a1.5 1.5 0 1 1 0-3 1.5 1.5 0 0 1 0 3\"},\"child\":[]}]})(props);\n};\nexport function BsFillDice5Fill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3 0a3 3 0 0 0-3 3v10a3 3 0 0 0 3 3h10a3 3 0 0 0 3-3V3a3 3 0 0 0-3-3zm2.5 4a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0m8 0a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0M12 13.5a1.5 1.5 0 1 1 0-3 1.5 1.5 0 0 1 0 3M5.5 12a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0M8 9.5a1.5 1.5 0 1 1 0-3 1.5 1.5 0 0 1 0 3\"},\"child\":[]}]})(props);\n};\nexport function BsFillDice6Fill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3 0a3 3 0 0 0-3 3v10a3 3 0 0 0 3 3h10a3 3 0 0 0 3-3V3a3 3 0 0 0-3-3zm1 5.5a1.5 1.5 0 1 1 0-3 1.5 1.5 0 0 1 0 3m8 0a1.5 1.5 0 1 1 0-3 1.5 1.5 0 0 1 0 3m1.5 6.5a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0M12 9.5a1.5 1.5 0 1 1 0-3 1.5 1.5 0 0 1 0 3M5.5 12a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0M4 9.5a1.5 1.5 0 1 1 0-3 1.5 1.5 0 0 1 0 3\"},\"child\":[]}]})(props);\n};\nexport function BsFillDiscFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0m-6 0a2 2 0 1 0-4 0 2 2 0 0 0 4 0M4 8a4 4 0 0 1 4-4 .5.5 0 0 0 0-1 5 5 0 0 0-5 5 .5.5 0 0 0 1 0m9 0a.5.5 0 1 0-1 0 4 4 0 0 1-4 4 .5.5 0 0 0 0 1 5 5 0 0 0 5-5\"},\"child\":[]}]})(props);\n};\nexport function BsFillDisplayFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6 12q0 1-.25 1.5H5a.5.5 0 0 0 0 1h6a.5.5 0 0 0 0-1h-.75Q10 13 10 12h4c2 0 2-2 2-2V4c0-2-2-2-2-2H2C0 2 0 4 0 4v6c0 2 2 2 2 2z\"},\"child\":[]}]})(props);\n};\nexport function BsFillDisplayportFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M1 5a1 1 0 0 0-1 1v3.191a1 1 0 0 0 .553.894l1.618.81a1 1 0 0 0 .447.105H15a1 1 0 0 0 1-1V6a1 1 0 0 0-1-1zm1.5 2h11a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-1 0V8H3v.5a.5.5 0 0 1-1 0v-1a.5.5 0 0 1 .5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsFillDoorClosedFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12 1a1 1 0 0 1 1 1v13h1.5a.5.5 0 0 1 0 1h-13a.5.5 0 0 1 0-1H3V2a1 1 0 0 1 1-1zm-2 9a1 1 0 1 0 0-2 1 1 0 0 0 0 2\"},\"child\":[]}]})(props);\n};\nexport function BsFillDoorOpenFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M1.5 15a.5.5 0 0 0 0 1h13a.5.5 0 0 0 0-1H13V2.5A1.5 1.5 0 0 0 11.5 1H11V.5a.5.5 0 0 0-.57-.495l-7 1A.5.5 0 0 0 3 1.5V15zM11 2h.5a.5.5 0 0 1 .5.5V15h-1zm-2.5 8c-.276 0-.5-.448-.5-1s.224-1 .5-1 .5.448.5 1-.224 1-.5 1\"},\"child\":[]}]})(props);\n};\nexport function BsFillDpadFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.5 0A1.5 1.5 0 0 0 5 1.5v3a.5.5 0 0 1-.5.5h-3A1.5 1.5 0 0 0 0 6.5v3A1.5 1.5 0 0 0 1.5 11h3a.5.5 0 0 1 .5.5v3A1.5 1.5 0 0 0 6.5 16h3a1.5 1.5 0 0 0 1.5-1.5v-3a.5.5 0 0 1 .5-.5h3A1.5 1.5 0 0 0 16 9.5v-3A1.5 1.5 0 0 0 14.5 5h-3a.5.5 0 0 1-.5-.5v-3A1.5 1.5 0 0 0 9.5 0zm1.288 2.34a.25.25 0 0 1 .424 0l.799 1.278A.25.25 0 0 1 8.799 4H7.201a.25.25 0 0 1-.212-.382zm0 11.32-.799-1.277A.25.25 0 0 1 7.201 12H8.8a.25.25 0 0 1 .212.383l-.799 1.278a.25.25 0 0 1-.424 0Zm-4.17-4.65-1.279-.798a.25.25 0 0 1 0-.424l1.279-.799A.25.25 0 0 1 4 7.201V8.8a.25.25 0 0 1-.382.212Zm10.043-.798-1.278.799A.25.25 0 0 1 12 8.799V7.2a.25.25 0 0 1 .383-.212l1.278.799a.25.25 0 0 1 0 .424Z\"},\"child\":[]}]})(props);\n};\nexport function BsFillDropletFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 16a6 6 0 0 0 6-6c0-1.655-1.122-2.904-2.432-4.362C10.254 4.176 8.75 2.503 8 0c0 0-6 5.686-6 10a6 6 0 0 0 6 6M6.646 4.646l.708.708c-.29.29-1.128 1.311-1.907 2.87l-.894-.448c.82-1.641 1.717-2.753 2.093-3.13\"},\"child\":[]}]})(props);\n};\nexport function BsFillDuffleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5.007 4.097q.011-.146.027-.298c.05-.464.141-.979.313-1.45.169-.465.432-.933.853-1.249 1.115-.836 2.485-.836 3.6 0 .42.316.684.784.853 1.25.171.47.263.985.313 1.449q.016.15.027.298c1.401.194 2.65.531 3.525 1.012 2.126 1.169 1.446 6.095 1.089 8.018a.954.954 0 0 1-.95.772H1.343a.954.954 0 0 1-.95-.772c-.357-1.923-1.037-6.85 1.09-8.018.873-.48 2.123-.818 3.524-1.012M4.05 5.633a22 22 0 0 0-1.565.352l-.091.026-.034.01a.5.5 0 0 0 .282.959l.005-.002.02-.005.08-.023a21 21 0 0 1 1.486-.334A21 21 0 0 1 8 6.25c1.439 0 2.781.183 3.767.367a21 21 0 0 1 1.567.356l.02.005.004.001a.5.5 0 0 0 .283-.959h-.003l-.006-.002-.025-.007a15 15 0 0 0-.43-.113 22 22 0 0 0-1.226-.265A22 22 0 0 0 8 5.25c-1.518 0-2.926.192-3.95.383M6.8 1.9c-.203.153-.377.42-.513.791a5.3 5.3 0 0 0-.265 1.292 35 35 0 0 1 1.374-.076c.866-.022 1.742.003 2.584.076a5.3 5.3 0 0 0-.266-1.292c-.135-.372-.309-.638-.513-.791-.76-.57-1.64-.57-2.4 0Z\"},\"child\":[]}]})(props);\n};\nexport function BsFillEarFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.5 0A5.5 5.5 0 0 0 3 5.5v7.047a3.453 3.453 0 0 0 6.687 1.212l.51-1.363a4.6 4.6 0 0 1 .67-1.197l2.008-2.581A5.34 5.34 0 0 0 8.66 0zM7 5.5v2.695q.168-.09.332-.192c.327-.208.577-.44.72-.727a.5.5 0 1 1 .895.448c-.256.513-.673.865-1.079 1.123A9 9 0 0 1 7 9.313V11.5a.5.5 0 0 1-1 0v-6a2.5 2.5 0 0 1 5 0V6a.5.5 0 0 1-1 0v-.5a1.5 1.5 0 1 0-3 0\"},\"child\":[]}]})(props);\n};\nexport function BsFillEaselFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.473.337a.5.5 0 0 0-.946 0L6.954 2H2a1 1 0 0 0-1 1v7a1 1 0 0 0 1 1h1.85l-1.323 3.837a.5.5 0 1 0 .946.326L4.908 11H7.5v2.5a.5.5 0 0 0 1 0V11h2.592l1.435 4.163a.5.5 0 0 0 .946-.326L12.15 11H14a1 1 0 0 0 1-1V3a1 1 0 0 0-1-1H9.046z\"},\"child\":[]}]})(props);\n};\nexport function BsFillEasel2Fill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.447.276a.5.5 0 0 0-.894 0L7.19 1H2.5A1.5 1.5 0 0 0 1 2.5V10h14V2.5A1.5 1.5 0 0 0 13.5 1H8.809z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M.5 11a.5.5 0 0 0 0 1h2.86l-.845 3.379a.5.5 0 0 0 .97.242L3.89 14h8.22l.405 1.621a.5.5 0 0 0 .97-.242L12.64 12h2.86a.5.5 0 0 0 0-1zm3.64 2 .25-1h7.22l.25 1z\"},\"child\":[]}]})(props);\n};\nexport function BsFillEasel3Fill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.5 12v1.134a1 1 0 1 1-1 0V12h-5A1.5 1.5 0 0 1 1 10.5V3h14v7.5a1.5 1.5 0 0 1-1.5 1.5zm7-10a.5.5 0 0 0 0-1H.5a.5.5 0 0 0 0 1z\"},\"child\":[]}]})(props);\n};\nexport function BsFillEggFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M14 10a6 6 0 0 1-12 0C2 5.686 5 0 8 0s6 5.686 6 10\"},\"child\":[]}]})(props);\n};\nexport function BsFillEjectFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.27 1.047a1 1 0 0 1 1.46 0l6.345 6.77c.6.638.146 1.683-.73 1.683H1.656C.78 9.5.326 8.455.926 7.816zM.5 11.5a1 1 0 0 1 1-1h13a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1h-13a1 1 0 0 1-1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsFillEmojiAngryFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 16A8 8 0 1 0 8 0a8 8 0 0 0 0 16M4.053 4.276a.5.5 0 0 1 .67-.223l2 1a.5.5 0 0 1 .166.76c.071.206.111.44.111.687C7 7.328 6.552 8 6 8s-1-.672-1-1.5c0-.408.109-.778.285-1.049l-1.009-.504a.5.5 0 0 1-.223-.67zm.232 8.157a.5.5 0 0 1-.183-.683A4.5 4.5 0 0 1 8 9.5a4.5 4.5 0 0 1 3.898 2.25.5.5 0 1 1-.866.5A3.5 3.5 0 0 0 8 10.5a3.5 3.5 0 0 0-3.032 1.75.5.5 0 0 1-.683.183M10 8c-.552 0-1-.672-1-1.5 0-.247.04-.48.11-.686a.502.502 0 0 1 .166-.761l2-1a.5.5 0 1 1 .448.894l-1.009.504c.176.27.285.64.285 1.049 0 .828-.448 1.5-1 1.5\"},\"child\":[]}]})(props);\n};\nexport function BsFillEmojiAstonishedFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0m-4.884-3.978a2.1 2.1 0 0 1 .53.332.5.5 0 0 0 .708-.708h-.001v-.001a2 2 0 0 0-.237-.197 3 3 0 0 0-.606-.345 3 3 0 0 0-2.168-.077.5.5 0 1 0 .316.948 2 2 0 0 1 1.458.048m-4.774-.048a.5.5 0 0 0 .316-.948 3 3 0 0 0-2.167.077 3.1 3.1 0 0 0-.773.478q-.036.03-.07.064l-.002.001a.5.5 0 1 0 .728.689 2 2 0 0 1 .51-.313 2 2 0 0 1 1.458-.048M7 6.5C7 5.672 6.552 5 6 5s-1 .672-1 1.5S5.448 8 6 8s1-.672 1-1.5m4 0c0-.828-.448-1.5-1-1.5s-1 .672-1 1.5S9.448 8 10 8s1-.672 1-1.5m-5.247 4.746c-.383.478.08 1.06.687.98q1.56-.202 3.12 0c.606.08 1.07-.502.687-.98C9.747 10.623 8.998 10 8 10s-1.747.623-2.247 1.246\"},\"child\":[]}]})(props);\n};\nexport function BsFillEmojiDizzyFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 16A8 8 0 1 0 8 0a8 8 0 0 0 0 16M4.146 5.146a.5.5 0 0 1 .708 0l.646.647.646-.647a.5.5 0 1 1 .708.708l-.647.646.647.646a.5.5 0 1 1-.708.708L5.5 7.207l-.646.647a.5.5 0 1 1-.708-.708l.647-.646-.647-.646a.5.5 0 0 1 0-.708m5 0a.5.5 0 0 1 .708 0l.646.647.646-.647a.5.5 0 0 1 .708.708l-.647.646.647.646a.5.5 0 0 1-.708.708l-.646-.647-.646.647a.5.5 0 1 1-.708-.708l.647-.646-.647-.646a.5.5 0 0 1 0-.708M8 13a2 2 0 1 1 0-4 2 2 0 0 1 0 4\"},\"child\":[]}]})(props);\n};\nexport function BsFillEmojiExpressionlessFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 16A8 8 0 1 0 8 0a8 8 0 0 0 0 16M4.5 6h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1m5 0h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1m-5 4h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1 0-1\"},\"child\":[]}]})(props);\n};\nexport function BsFillEmojiFrownFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 16A8 8 0 1 0 8 0a8 8 0 0 0 0 16M7 6.5C7 7.328 6.552 8 6 8s-1-.672-1-1.5S5.448 5 6 5s1 .672 1 1.5m-2.715 5.933a.5.5 0 0 1-.183-.683A4.5 4.5 0 0 1 8 9.5a4.5 4.5 0 0 1 3.898 2.25.5.5 0 0 1-.866.5A3.5 3.5 0 0 0 8 10.5a3.5 3.5 0 0 0-3.032 1.75.5.5 0 0 1-.683.183M10 8c-.552 0-1-.672-1-1.5S9.448 5 10 5s1 .672 1 1.5S10.552 8 10 8\"},\"child\":[]}]})(props);\n};\nexport function BsFillEmojiGrimaceFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0M7 6.25C7 5.56 6.552 5 6 5s-1 .56-1 1.25.448 1.25 1 1.25 1-.56 1-1.25m3 1.25c.552 0 1-.56 1-1.25S10.552 5 10 5s-1 .56-1 1.25.448 1.25 1 1.25m1.5 4.5a1.5 1.5 0 0 0 1.48-1.25v-.003a1.5 1.5 0 0 0 0-.497A1.5 1.5 0 0 0 11.5 9h-7a1.5 1.5 0 0 0-1.48 1.25v.003a1.5 1.5 0 0 0 0 .497A1.5 1.5 0 0 0 4.5 12zm-7.969-1.25a1 1 0 0 0 .969.75h.25v-.75zm8.938 0a1 1 0 0 1-.969.75h-.25v-.75zM11.5 9.5a1 1 0 0 1 .969.75H11.25V9.5zm-7.969.75A1 1 0 0 1 4.5 9.5h.25v.75zM5.25 11.5h1v-.75h-1zm2.5 0h-1v-.75h1zm1.5 0h-1v-.75h1zm1.5 0h-1v-.75h1zm-1-2h1v.75h-1zm-1.5 0h1v.75h-1zm-1.5 0h1v.75h-1zm-1.5 0h1v.75h-1z\"},\"child\":[]}]})(props);\n};\nexport function BsFillEmojiGrinFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 16A8 8 0 1 0 8 0a8 8 0 0 0 0 16M6.488 7c-.23-.598-.661-1-1.155-1-.493 0-.924.402-1.155 1A2.8 2.8 0 0 1 4 6c0-1.105.597-2 1.333-2 .737 0 1.334.895 1.334 2 0 .364-.065.706-.179 1m5.334 0c-.23-.598-.662-1-1.155-1-.494 0-.925.402-1.155 1a2.8 2.8 0 0 1-.179-1c0-1.105.597-2 1.334-2C11.403 4 12 4.895 12 6c0 .364-.065.706-.178 1M2.696 8.756a.48.48 0 0 1 .382-.118C4.348 8.786 6.448 9 8 9c1.553 0 3.653-.214 4.922-.362a.48.48 0 0 1 .383.118.3.3 0 0 1 .096.29c-.09.47-.242.921-.445 1.342-.263.035-.576.075-.929.115A37 37 0 0 1 8 10.75c-1.475 0-2.934-.123-4.027-.247-.353-.04-.666-.08-.93-.115A5.5 5.5 0 0 1 2.6 9.045a.3.3 0 0 1 .097-.29ZM8 13.5a5.49 5.49 0 0 1-4.256-2.017l.116.014c1.115.126 2.615.253 4.14.253s3.025-.127 4.14-.253l.117-.014A5.49 5.49 0 0 1 8 13.5\"},\"child\":[]}]})(props);\n};\nexport function BsFillEmojiHeartEyesFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 0a8 8 0 1 0 0 16A8 8 0 0 0 8 0M4.756 4.566c.763-1.424 4.02-.12.952 3.434-4.496-1.596-2.35-4.298-.952-3.434m6.559 5.448a.5.5 0 0 1 .548.736A4.5 4.5 0 0 1 7.965 13a4.5 4.5 0 0 1-3.898-2.25.5.5 0 0 1 .548-.736h.005l.017.005.067.015.252.055c.215.046.515.108.857.169.693.124 1.522.242 2.152.242s1.46-.118 2.152-.242a27 27 0 0 0 1.109-.224l.067-.015.017-.004.005-.002zm-.07-5.448c1.397-.864 3.543 1.838-.953 3.434-3.067-3.554.19-4.858.952-3.434z\"},\"child\":[]}]})(props);\n};\nexport function BsFillEmojiKissFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M16 8a8 8 0 1 0-2.697 5.99c-.972-.665-1.632-1.356-1.99-2.062-.388-.766-.419-1.561-.075-2.23.496-.97 1.73-1.466 2.762-1.05.65-.262 1.38-.162 1.957.19Q16 8.425 16 8M7 6.5C7 7.328 6.552 8 6 8s-1-.672-1-1.5S5.448 5 6 5s1 .672 1 1.5m1.512 3.647c-.347.08-.737.198-1.107.319a.5.5 0 1 1-.31-.95c.38-.125.802-.254 1.192-.343.37-.086.78-.153 1.103-.108.16.022.394.085.561.286.188.226.187.497.131.705a1.9 1.9 0 0 1-.31.593q-.115.16-.275.343.16.186.276.347c.142.197.256.397.31.595.055.208.056.479-.132.706-.168.2-.404.262-.563.284-.323.043-.733-.027-1.102-.113a15 15 0 0 1-1.191-.345.5.5 0 1 1 .31-.95c.371.12.761.24 1.109.321q.264.062.446.084a6 6 0 0 0-.502-.584.5.5 0 0 1 .002-.695 5.5 5.5 0 0 0 .5-.577 5 5 0 0 0-.448.082m.766-.086-.006-.002zm.002 1.867-.005.001.006-.002Zm.157-4.685a.5.5 0 0 1-.874-.486A1.93 1.93 0 0 1 10.25 5.75c.73 0 1.356.412 1.687 1.007a.5.5 0 1 1-.874.486.93.93 0 0 0-.813-.493.93.93 0 0 0-.813.493M14 9.828c1.11-1.14 3.884.856 0 3.422-3.884-2.566-1.11-4.562 0-3.421Z\"},\"child\":[]}]})(props);\n};\nexport function BsFillEmojiLaughingFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 16A8 8 0 1 0 8 0a8 8 0 0 0 0 16M7 6.5c0 .501-.164.396-.415.235C6.42 6.629 6.218 6.5 6 6.5s-.42.13-.585.235C5.164 6.896 5 7 5 6.5 5 5.672 5.448 5 6 5s1 .672 1 1.5m5.331 3a1 1 0 0 1 0 1A5 5 0 0 1 8 13a5 5 0 0 1-4.33-2.5A1 1 0 0 1 4.535 9h6.93a1 1 0 0 1 .866.5m-1.746-2.765C10.42 6.629 10.218 6.5 10 6.5s-.42.13-.585.235C9.164 6.896 9 7 9 6.5c0-.828.448-1.5 1-1.5s1 .672 1 1.5c0 .501-.164.396-.415.235\"},\"child\":[]}]})(props);\n};\nexport function BsFillEmojiNeutralFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 16A8 8 0 1 0 8 0a8 8 0 0 0 0 16M7 6.5C7 7.328 6.552 8 6 8s-1-.672-1-1.5S5.448 5 6 5s1 .672 1 1.5m-3 4a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5M10 8c-.552 0-1-.672-1-1.5S9.448 5 10 5s1 .672 1 1.5S10.552 8 10 8\"},\"child\":[]}]})(props);\n};\nexport function BsFillEmojiSmileFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 16A8 8 0 1 0 8 0a8 8 0 0 0 0 16M7 6.5C7 7.328 6.552 8 6 8s-1-.672-1-1.5S5.448 5 6 5s1 .672 1 1.5M4.285 9.567a.5.5 0 0 1 .683.183A3.5 3.5 0 0 0 8 11.5a3.5 3.5 0 0 0 3.032-1.75.5.5 0 1 1 .866.5A4.5 4.5 0 0 1 8 12.5a4.5 4.5 0 0 1-3.898-2.25.5.5 0 0 1 .183-.683M10 8c-.552 0-1-.672-1-1.5S9.448 5 10 5s1 .672 1 1.5S10.552 8 10 8\"},\"child\":[]}]})(props);\n};\nexport function BsFillEmojiSmileUpsideDownFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 0a8 8 0 1 1 0 16A8 8 0 0 1 8 0M7 9.5C7 8.672 6.552 8 6 8s-1 .672-1 1.5.448 1.5 1 1.5 1-.672 1-1.5M4.285 6.433a.5.5 0 0 0 .683-.183A3.5 3.5 0 0 1 8 4.5c1.295 0 2.426.703 3.032 1.75a.5.5 0 0 0 .866-.5A4.5 4.5 0 0 0 8 3.5a4.5 4.5 0 0 0-3.898 2.25.5.5 0 0 0 .183.683M10 8c-.552 0-1 .672-1 1.5s.448 1.5 1 1.5 1-.672 1-1.5S10.552 8 10 8\"},\"child\":[]}]})(props);\n};\nexport function BsFillEmojiSunglassesFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 16A8 8 0 1 0 8 0a8 8 0 0 0 0 16M2.31 5.243A1 1 0 0 1 3.28 4H6a1 1 0 0 1 1 1v.116A4.2 4.2 0 0 1 8 5c.35 0 .69.04 1 .116V5a1 1 0 0 1 1-1h2.72a1 1 0 0 1 .97 1.243l-.311 1.242A2 2 0 0 1 11.439 8H11a2 2 0 0 1-1.994-1.839A3 3 0 0 0 8 6c-.393 0-.74.064-1.006.161A2 2 0 0 1 5 8h-.438a2 2 0 0 1-1.94-1.515zM4.969 9.75A3.5 3.5 0 0 0 8 11.5a3.5 3.5 0 0 0 3.032-1.75.5.5 0 1 1 .866.5A4.5 4.5 0 0 1 8 12.5a4.5 4.5 0 0 1-3.898-2.25.5.5 0 0 1 .866-.5z\"},\"child\":[]}]})(props);\n};\nexport function BsFillEmojiSurpriseFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0M7 5.5C7 4.672 6.552 4 6 4s-1 .672-1 1.5S5.448 7 6 7s1-.672 1-1.5m4 0c0-.828-.448-1.5-1-1.5s-1 .672-1 1.5S9.448 7 10 7s1-.672 1-1.5M8 13a2 2 0 1 0 0-4 2 2 0 0 0 0 4\"},\"child\":[]}]})(props);\n};\nexport function BsFillEmojiTearFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0M9.5 3.5a.5.5 0 0 0 .5.5c.838 0 1.65.416 2.053 1.224a.5.5 0 1 0 .894-.448C12.351 3.584 11.162 3 10 3a.5.5 0 0 0-.5.5M7 6.5C7 5.672 6.552 5 6 5s-1 .672-1 1.5S5.448 8 6 8s1-.672 1-1.5M4.5 13c.828 0 1.5-.746 1.5-1.667 0-.706-.882-2.29-1.294-2.99a.238.238 0 0 0-.412 0C3.882 9.044 3 10.628 3 11.334 3 12.253 3.672 13 4.5 13M8 11.197c.916 0 1.607.408 2.25.826.212.138.424-.069.282-.277-.564-.83-1.558-2.049-2.532-2.049-.53 0-1.066.361-1.536.824q.126.27.232.535.069.174.135.373A3.1 3.1 0 0 1 8 11.197M10 8c.552 0 1-.672 1-1.5S10.552 5 10 5s-1 .672-1 1.5S9.448 8 10 8M6.5 3c-1.162 0-2.35.584-2.947 1.776a.5.5 0 1 0 .894.448C4.851 4.416 5.662 4 6.5 4a.5.5 0 0 0 0-1\"},\"child\":[]}]})(props);\n};\nexport function BsFillEmojiWinkFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 0a8 8 0 1 1 0 16A8 8 0 0 1 8 0M7 6.5C7 5.672 6.552 5 6 5s-1 .672-1 1.5S5.448 8 6 8s1-.672 1-1.5M4.285 9.567a.5.5 0 0 0-.183.683A4.5 4.5 0 0 0 8 12.5a4.5 4.5 0 0 0 3.898-2.25.5.5 0 1 0-.866-.5A3.5 3.5 0 0 1 8 11.5a3.5 3.5 0 0 1-3.032-1.75.5.5 0 0 0-.683-.183m5.152-3.31a.5.5 0 0 0-.874.486c.33.595.958 1.007 1.687 1.007s1.356-.412 1.687-1.007a.5.5 0 0 0-.874-.486.93.93 0 0 1-.813.493.93.93 0 0 1-.813-.493\"},\"child\":[]}]})(props);\n};\nexport function BsFillEnvelopeArrowDownFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M.05 3.555A2 2 0 0 1 2 2h12a2 2 0 0 1 1.95 1.555L8 8.414zM0 4.697v7.104l5.803-3.558zm.192 8.159 6.57-4.027L8 9.586l1.239-.757.367.225A4.49 4.49 0 0 0 8 12.5c0 .526.09 1.03.256 1.5H2a2 2 0 0 1-1.808-1.144M16 4.697v4.974A4.5 4.5 0 0 0 12.5 8a4.5 4.5 0 0 0-1.965.45l-.338-.207z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M12.5 16a3.5 3.5 0 1 0 0-7 3.5 3.5 0 0 0 0 7m.354-1.646a.5.5 0 0 1-.722-.016l-1.149-1.25a.5.5 0 1 1 .737-.676l.28.305V11a.5.5 0 0 1 1 0v1.793l.396-.397a.5.5 0 0 1 .708.708z\"},\"child\":[]}]})(props);\n};\nexport function BsFillEnvelopeArrowUpFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M.05 3.555A2 2 0 0 1 2 2h12a2 2 0 0 1 1.95 1.555L8 8.414zM0 4.697v7.104l5.803-3.558zm.192 8.159 6.57-4.027L8 9.586l1.239-.757.367.225A4.49 4.49 0 0 0 8 12.5c0 .526.09 1.03.256 1.5H2a2 2 0 0 1-1.808-1.144M16 4.697v4.974A4.5 4.5 0 0 0 12.5 8a4.5 4.5 0 0 0-1.965.45l-.338-.207z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M12.5 16a3.5 3.5 0 1 0 0-7 3.5 3.5 0 0 0 0 7m.354-5.354 1.25 1.25a.5.5 0 0 1-.708.708L13 12.207V14a.5.5 0 0 1-1 0v-1.717l-.28.305a.5.5 0 0 1-.737-.676l1.149-1.25a.5.5 0 0 1 .722-.016\"},\"child\":[]}]})(props);\n};\nexport function BsFillEnvelopeAtFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 2A2 2 0 0 0 .05 3.555L8 8.414l7.95-4.859A2 2 0 0 0 14 2zm-2 9.8V4.698l5.803 3.546zm6.761-2.97-6.57 4.026A2 2 0 0 0 2 14h6.256A4.5 4.5 0 0 1 8 12.5a4.49 4.49 0 0 1 1.606-3.446l-.367-.225L8 9.586zM16 9.671V4.697l-5.803 3.546.338.208A4.5 4.5 0 0 1 12.5 8c1.414 0 2.675.652 3.5 1.671\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M15.834 12.244c0 1.168-.577 2.025-1.587 2.025-.503 0-1.002-.228-1.12-.648h-.043c-.118.416-.543.643-1.015.643-.77 0-1.259-.542-1.259-1.434v-.529c0-.844.481-1.4 1.26-1.4.585 0 .87.333.953.63h.03v-.568h.905v2.19c0 .272.18.42.411.42.315 0 .639-.415.639-1.39v-.118c0-1.277-.95-2.326-2.484-2.326h-.04c-1.582 0-2.64 1.067-2.64 2.724v.157c0 1.867 1.237 2.654 2.57 2.654h.045c.507 0 .935-.07 1.18-.18v.731c-.219.1-.643.175-1.237.175h-.044C10.438 16 9 14.82 9 12.646v-.214C9 10.36 10.421 9 12.485 9h.035c2.12 0 3.314 1.43 3.314 3.034zm-4.04.21v.227c0 .586.227.8.581.8.31 0 .564-.17.564-.743v-.367c0-.516-.275-.708-.572-.708-.346 0-.573.245-.573.791\"},\"child\":[]}]})(props);\n};\nexport function BsFillEnvelopeCheckFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M.05 3.555A2 2 0 0 1 2 2h12a2 2 0 0 1 1.95 1.555L8 8.414zM0 4.697v7.104l5.803-3.558zM6.761 8.83l-6.57 4.026A2 2 0 0 0 2 14h6.256A4.5 4.5 0 0 1 8 12.5a4.49 4.49 0 0 1 1.606-3.446l-.367-.225L8 9.586zM16 4.697v4.974A4.5 4.5 0 0 0 12.5 8a4.5 4.5 0 0 0-1.965.45l-.338-.207z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M16 12.5a3.5 3.5 0 1 1-7 0 3.5 3.5 0 0 1 7 0m-1.993-1.679a.5.5 0 0 0-.686.172l-1.17 1.95-.547-.547a.5.5 0 0 0-.708.708l.774.773a.75.75 0 0 0 1.174-.144l1.335-2.226a.5.5 0 0 0-.172-.686\"},\"child\":[]}]})(props);\n};\nexport function BsFillEnvelopeDashFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M.05 3.555A2 2 0 0 1 2 2h12a2 2 0 0 1 1.95 1.555L8 8.414zM0 4.697v7.104l5.803-3.558zM6.761 8.83l-6.57 4.026A2 2 0 0 0 2 14h6.256A4.5 4.5 0 0 1 8 12.5a4.49 4.49 0 0 1 1.606-3.446l-.367-.225L8 9.586zM16 4.697v4.974A4.5 4.5 0 0 0 12.5 8a4.5 4.5 0 0 0-1.965.45l-.338-.207z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M16 12.5a3.5 3.5 0 1 1-7 0 3.5 3.5 0 0 1 7 0m-5.5 0a.5.5 0 0 0 .5.5h3a.5.5 0 0 0 0-1h-3a.5.5 0 0 0-.5.5\"},\"child\":[]}]})(props);\n};\nexport function BsFillEnvelopeExclamationFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M.05 3.555A2 2 0 0 1 2 2h12a2 2 0 0 1 1.95 1.555L8 8.414zM0 4.697v7.104l5.803-3.558zM6.761 8.83l-6.57 4.026A2 2 0 0 0 2 14h6.256A4.5 4.5 0 0 1 8 12.5a4.49 4.49 0 0 1 1.606-3.446l-.367-.225L8 9.586zM16 4.697v4.974A4.5 4.5 0 0 0 12.5 8a4.5 4.5 0 0 0-1.965.45l-.338-.207z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M12.5 16a3.5 3.5 0 1 0 0-7 3.5 3.5 0 0 0 0 7m.5-5v1.5a.5.5 0 0 1-1 0V11a.5.5 0 0 1 1 0m0 3a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0\"},\"child\":[]}]})(props);\n};\nexport function BsFillEnvelopeFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M.05 3.555A2 2 0 0 1 2 2h12a2 2 0 0 1 1.95 1.555L8 8.414zM0 4.697v7.104l5.803-3.558zM6.761 8.83l-6.57 4.027A2 2 0 0 0 2 14h12a2 2 0 0 0 1.808-1.144l-6.57-4.027L8 9.586zm3.436-.586L16 11.801V4.697z\"},\"child\":[]}]})(props);\n};\nexport function BsFillEnvelopeHeartFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M.05 3.555A2 2 0 0 1 2 2h12a2 2 0 0 1 1.95 1.555l-4.2 2.568-.051-.105c-.666-1.3-2.363-1.917-3.699-1.25-1.336-.667-3.033-.05-3.699 1.25l-.05.105zM11.584 8.91l-.073.139L16 11.8V4.697l-4.003 2.447c.027.562-.107 1.163-.413 1.767Zm-4.135 3.05c-1.048-.693-1.84-1.39-2.398-2.082L.19 12.856A2 2 0 0 0 2 14h12a2 2 0 0 0 1.808-1.144L10.95 9.878c-.559.692-1.35 1.389-2.398 2.081L8 12.324l-.551-.365ZM4.416 8.91c-.306-.603-.44-1.204-.413-1.766L0 4.697v7.104l4.49-2.752z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8 5.993c1.664-1.711 5.825 1.283 0 5.132-5.825-3.85-1.664-6.843 0-5.132\"},\"child\":[]}]})(props);\n};\nexport function BsFillEnvelopeOpenFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.941.435a2 2 0 0 0-1.882 0l-6 3.2A2 2 0 0 0 0 5.4v.314l6.709 3.932L8 8.928l1.291.718L16 5.714V5.4a2 2 0 0 0-1.059-1.765zM16 6.873l-5.693 3.337L16 13.372v-6.5Zm-.059 7.611L8 10.072.059 14.484A2 2 0 0 0 2 16h12a2 2 0 0 0 1.941-1.516M0 13.373l5.693-3.163L0 6.873z\"},\"child\":[]}]})(props);\n};\nexport function BsFillEnvelopeOpenHeartFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.941.435a2 2 0 0 0-1.882 0l-6 3.2A2 2 0 0 0 0 5.4v.313l4.222 2.475q.035-.087.08-.17c.665-1.3 2.362-1.917 3.698-1.25 1.336-.667 3.033-.05 3.699 1.25a3 3 0 0 1 .08.17L16 5.713V5.4a2 2 0 0 0-1.059-1.765zM0 6.873l4 2.344c-.012.542.124 1.117.416 1.694l.004.006L0 13.372v-6.5Zm.059 7.611 4.9-2.723c.563.73 1.383 1.467 2.49 2.198l.551.365.551-.365c1.107-.73 1.927-1.467 2.49-2.198l4.9 2.723A2 2 0 0 1 14 16H2a2 2 0 0 1-1.941-1.516M16 13.372l-4.42-2.455.004-.006c.292-.577.428-1.152.415-1.694L16 6.873v6.5Z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8 7.993c1.664-1.711 5.825 1.283 0 5.132-5.825-3.85-1.664-6.843 0-5.132\"},\"child\":[]}]})(props);\n};\nexport function BsFillEnvelopePaperFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M6.5 9.5 3 7.5v-6A1.5 1.5 0 0 1 4.5 0h7A1.5 1.5 0 0 1 13 1.5v6l-3.5 2L8 8.75zM1.059 3.635 2 3.133v3.753L0 5.713V5.4a2 2 0 0 1 1.059-1.765M16 5.713l-2 1.173V3.133l.941.502A2 2 0 0 1 16 5.4zm0 1.16-5.693 3.337L16 13.372v-6.5Zm-8 3.199 7.941 4.412A2 2 0 0 1 14 16H2a2 2 0 0 1-1.941-1.516zm-8 3.3 5.693-3.162L0 6.873v6.5Z\"},\"child\":[]}]})(props);\n};\nexport function BsFillEnvelopePaperHeartFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"m3 7.5 3.5 2L8 8.75l1.5.75 3.5-2v-6A1.5 1.5 0 0 0 11.5 0h-7A1.5 1.5 0 0 0 3 1.5zM2 3.133l-.941.502A2 2 0 0 0 0 5.4v.313l2 1.173zm12 3.753 2-1.173V5.4a2 2 0 0 0-1.059-1.765L14 3.133zm-3.693 3.324L16 6.873v6.5zm5.634 4.274L8 10.072.059 14.484A2 2 0 0 0 2 16h12a2 2 0 0 0 1.941-1.516M5.693 10.21 0 13.372v-6.5zM8 1.982C9.664.309 13.825 3.236 8 7 2.175 3.236 6.336.31 8 1.982\"},\"child\":[]}]})(props);\n};\nexport function BsFillEnvelopePlusFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M.05 3.555A2 2 0 0 1 2 2h12a2 2 0 0 1 1.95 1.555L8 8.414zM0 4.697v7.104l5.803-3.558zM6.761 8.83l-6.57 4.026A2 2 0 0 0 2 14h6.256A4.5 4.5 0 0 1 8 12.5a4.49 4.49 0 0 1 1.606-3.446l-.367-.225L8 9.586zM16 4.697v4.974A4.5 4.5 0 0 0 12.5 8a4.5 4.5 0 0 0-1.965.45l-.338-.207z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M16 12.5a3.5 3.5 0 1 1-7 0 3.5 3.5 0 0 1 7 0m-3.5-2a.5.5 0 0 0-.5.5v1h-1a.5.5 0 0 0 0 1h1v1a.5.5 0 0 0 1 0v-1h1a.5.5 0 0 0 0-1h-1v-1a.5.5 0 0 0-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsFillEnvelopeSlashFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M.05 3.555A2 2 0 0 1 2 2h12a2 2 0 0 1 1.95 1.555L8 8.414zM0 4.697v7.104l5.803-3.558zM6.761 8.83l-6.57 4.026A2 2 0 0 0 2 14h6.256A4.5 4.5 0 0 1 8 12.5a4.49 4.49 0 0 1 1.606-3.446l-.367-.225L8 9.586zM16 4.697v4.974A4.5 4.5 0 0 0 12.5 8a4.5 4.5 0 0 0-1.965.45l-.338-.207z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M14.975 10.025a3.5 3.5 0 1 0-4.95 4.95 3.5 3.5 0 0 0 4.95-4.95m-4.243.707a2.5 2.5 0 0 1 3.147-.318l-3.465 3.465a2.5 2.5 0 0 1 .318-3.147m.39 3.854 3.464-3.465a2.501 2.501 0 0 1-3.465 3.465Z\"},\"child\":[]}]})(props);\n};\nexport function BsFillEnvelopeXFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M.05 3.555A2 2 0 0 1 2 2h12a2 2 0 0 1 1.95 1.555L8 8.414zM0 4.697v7.104l5.803-3.558zM6.761 8.83l-6.57 4.026A2 2 0 0 0 2 14h6.256A4.5 4.5 0 0 1 8 12.5a4.49 4.49 0 0 1 1.606-3.446l-.367-.225L8 9.586zM16 4.697v4.974A4.5 4.5 0 0 0 12.5 8a4.5 4.5 0 0 0-1.965.45l-.338-.207z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M16 12.5a3.5 3.5 0 1 1-7 0 3.5 3.5 0 0 1 7 0m-4.854-1.354a.5.5 0 0 0 0 .708l.647.646-.647.646a.5.5 0 0 0 .708.708l.646-.647.646.647a.5.5 0 0 0 .708-.708l-.647-.646.647-.646a.5.5 0 0 0-.708-.708l-.646.647-.646-.647a.5.5 0 0 0-.708 0\"},\"child\":[]}]})(props);\n};\nexport function BsFillEraserFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.086 2.207a2 2 0 0 1 2.828 0l3.879 3.879a2 2 0 0 1 0 2.828l-5.5 5.5A2 2 0 0 1 7.879 15H5.12a2 2 0 0 1-1.414-.586l-2.5-2.5a2 2 0 0 1 0-2.828zm.66 11.34L3.453 8.254 1.914 9.793a1 1 0 0 0 0 1.414l2.5 2.5a1 1 0 0 0 .707.293H7.88a1 1 0 0 0 .707-.293z\"},\"child\":[]}]})(props);\n};\nexport function BsFillEvFrontFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2.52 3.515A2.5 2.5 0 0 1 4.82 2h6.362c1 0 1.904.596 2.298 1.515l.792 1.848c.075.175.21.319.38.404.5.25.855.715.965 1.262l.335 1.679q.05.242.049.49v.413c0 .814-.39 1.543-1 1.997V13.5a.5.5 0 0 1-.5.5h-2a.5.5 0 0 1-.5-.5v-1.338c-1.292.048-2.745.088-4 .088s-2.708-.04-4-.088V13.5a.5.5 0 0 1-.5.5h-2a.5.5 0 0 1-.5-.5v-1.892c-.61-.454-1-1.183-1-1.997v-.413a2.5 2.5 0 0 1 .049-.49l.335-1.68c.11-.546.465-1.012.964-1.261a.8.8 0 0 0 .381-.404l.792-1.848Zm6.75.51a.186.186 0 0 0-.23.034L6.05 7.246a.188.188 0 0 0 .137.316h1.241l-.673 2.195a.19.19 0 0 0 .085.218c.075.043.17.03.23-.034l2.88-3.187a.188.188 0 0 0-.137-.316H8.572l.782-2.195a.19.19 0 0 0-.085-.218Z\"},\"child\":[]}]})(props);\n};\nexport function BsFillEvStationFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M1 2a2 2 0 0 1 2-2h6a2 2 0 0 1 2 2v8a2 2 0 0 1 2 2v.5a.5.5 0 0 0 1 0V9c0-.258-.104-.377-.357-.635l-.007-.008C13.379 8.096 13 7.71 13 7V4a.5.5 0 0 1 .146-.354l.5-.5a.5.5 0 0 1 .708 0l.5.5A.5.5 0 0 1 15 4v8.5a1.5 1.5 0 1 1-3 0V12a1 1 0 0 0-1-1v4h.5a.5.5 0 0 1 0 1H.5a.5.5 0 0 1 0-1H1zm2 .5v5a.5.5 0 0 0 .5.5h5a.5.5 0 0 0 .5-.5v-5a.5.5 0 0 0-.5-.5h-5a.5.5 0 0 0-.5.5m2.631 9.96H4.14v-.893h1.403v-.505H4.14v-.855h1.49v-.54H3.485V13h2.146zm1.316.54h.794l1.106-3.333h-.733l-.74 2.615h-.031l-.747-2.615h-.764z\"},\"child\":[]}]})(props);\n};\nexport function BsFillExclamationCircleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0M8 4a.905.905 0 0 0-.9.995l.35 3.507a.552.552 0 0 0 1.1 0l.35-3.507A.905.905 0 0 0 8 4m.002 6a1 1 0 1 0 0 2 1 1 0 0 0 0-2\"},\"child\":[]}]})(props);\n};\nexport function BsFillExclamationDiamondFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.05.435c-.58-.58-1.52-.58-2.1 0L.436 6.95c-.58.58-.58 1.519 0 2.098l6.516 6.516c.58.58 1.519.58 2.098 0l6.516-6.516c.58-.58.58-1.519 0-2.098zM8 4c.535 0 .954.462.9.995l-.35 3.507a.552.552 0 0 1-1.1 0L7.1 4.995A.905.905 0 0 1 8 4m.002 6a1 1 0 1 1 0 2 1 1 0 0 1 0-2\"},\"child\":[]}]})(props);\n};\nexport function BsFillExclamationOctagonFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M11.46.146A.5.5 0 0 0 11.107 0H4.893a.5.5 0 0 0-.353.146L.146 4.54A.5.5 0 0 0 0 4.893v6.214a.5.5 0 0 0 .146.353l4.394 4.394a.5.5 0 0 0 .353.146h6.214a.5.5 0 0 0 .353-.146l4.394-4.394a.5.5 0 0 0 .146-.353V4.893a.5.5 0 0 0-.146-.353zM8 4c.535 0 .954.462.9.995l-.35 3.507a.552.552 0 0 1-1.1 0L7.1 4.995A.905.905 0 0 1 8 4m.002 6a1 1 0 1 1 0 2 1 1 0 0 1 0-2\"},\"child\":[]}]})(props);\n};\nexport function BsFillExclamationSquareFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm6 4c.535 0 .954.462.9.995l-.35 3.507a.552.552 0 0 1-1.1 0L7.1 4.995A.905.905 0 0 1 8 4m.002 6a1 1 0 1 1 0 2 1 1 0 0 1 0-2\"},\"child\":[]}]})(props);\n};\nexport function BsFillExclamationTriangleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.982 1.566a1.13 1.13 0 0 0-1.96 0L.165 13.233c-.457.778.091 1.767.98 1.767h13.713c.889 0 1.438-.99.98-1.767zM8 5c.535 0 .954.462.9.995l-.35 3.507a.552.552 0 0 1-1.1 0L7.1 5.995A.905.905 0 0 1 8 5m.002 6a1 1 0 1 1 0 2 1 1 0 0 1 0-2\"},\"child\":[]}]})(props);\n};\nexport function BsFillExplicitFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2.5 0A2.5 2.5 0 0 0 0 2.5v11A2.5 2.5 0 0 0 2.5 16h11a2.5 2.5 0 0 0 2.5-2.5v-11A2.5 2.5 0 0 0 13.5 0zm4.326 10.88H10.5V12h-5V4.002h5v1.12H6.826V7.4h3.457v1.073H6.826z\"},\"child\":[]}]})(props);\n};\nexport function BsFillEyeFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M10.5 8a2.5 2.5 0 1 1-5 0 2.5 2.5 0 0 1 5 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M0 8s3-5.5 8-5.5S16 8 16 8s-3 5.5-8 5.5S0 8 0 8m8 3.5a3.5 3.5 0 1 0 0-7 3.5 3.5 0 0 0 0 7\"},\"child\":[]}]})(props);\n};\nexport function BsFillEyeSlashFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m10.79 12.912-1.614-1.615a3.5 3.5 0 0 1-4.474-4.474l-2.06-2.06C.938 6.278 0 8 0 8s3 5.5 8 5.5a7 7 0 0 0 2.79-.588M5.21 3.088A7 7 0 0 1 8 2.5c5 0 8 5.5 8 5.5s-.939 1.721-2.641 3.238l-2.062-2.062a3.5 3.5 0 0 0-4.474-4.474z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M5.525 7.646a2.5 2.5 0 0 0 2.829 2.829zm4.95.708-2.829-2.83a2.5 2.5 0 0 1 2.829 2.829zm3.171 6-12-12 .708-.708 12 12z\"},\"child\":[]}]})(props);\n};\nexport function BsFillFastForwardBtnFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 4v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2H2a2 2 0 0 0-2 2m4.271 1.055a.5.5 0 0 1 .52.038L8 7.386V5.5a.5.5 0 0 1 .79-.407l3.5 2.5a.5.5 0 0 1 0 .814l-3.5 2.5A.5.5 0 0 1 8 10.5V8.614l-3.21 2.293A.5.5 0 0 1 4 10.5v-5a.5.5 0 0 1 .271-.445\"},\"child\":[]}]})(props);\n};\nexport function BsFillFastForwardCircleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 16A8 8 0 1 0 8 0a8 8 0 0 0 0 16M4.79 5.093 8 7.386V5.5a.5.5 0 0 1 .79-.407l3.5 2.5a.5.5 0 0 1 0 .814l-3.5 2.5A.5.5 0 0 1 8 10.5V8.614l-3.21 2.293A.5.5 0 0 1 4 10.5v-5a.5.5 0 0 1 .79-.407\"},\"child\":[]}]})(props);\n};\nexport function BsFillFastForwardFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.596 7.304a.802.802 0 0 1 0 1.392l-6.363 3.692C.713 12.69 0 12.345 0 11.692V4.308c0-.653.713-.998 1.233-.696z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M15.596 7.304a.802.802 0 0 1 0 1.392l-6.363 3.692C8.713 12.69 8 12.345 8 11.692V4.308c0-.653.713-.998 1.233-.696z\"},\"child\":[]}]})(props);\n};\nexport function BsFillFileArrowDownFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2M8 5a.5.5 0 0 1 .5.5v3.793l1.146-1.147a.5.5 0 0 1 .708.708l-2 2a.5.5 0 0 1-.708 0l-2-2a.5.5 0 1 1 .708-.708L7.5 9.293V5.5A.5.5 0 0 1 8 5\"},\"child\":[]}]})(props);\n};\nexport function BsFillFileArrowUpFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2M7.5 6.707 6.354 7.854a.5.5 0 1 1-.708-.708l2-2a.5.5 0 0 1 .708 0l2 2a.5.5 0 0 1-.708.708L8.5 6.707V10.5a.5.5 0 0 1-1 0z\"},\"child\":[]}]})(props);\n};\nexport function BsFillFileBarGraphFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2m-2 11.5v-6a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v6a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5m-2.5.5a.5.5 0 0 1-.5-.5v-4a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v4a.5.5 0 0 1-.5.5zm-3 0a.5.5 0 0 1-.5-.5v-2a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v2a.5.5 0 0 1-.5.5z\"},\"child\":[]}]})(props);\n};\nexport function BsFillFileBinaryFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5.526 9.273c-.542 0-.832.563-.832 1.612q0 .133.006.252l1.56-1.143c-.126-.474-.375-.72-.733-.72zm-.732 2.508c.126.472.372.718.732.718.54 0 .83-.563.83-1.614q0-.129-.006-.25z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M12 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2M7.05 10.885c0 1.415-.548 2.206-1.524 2.206C4.548 13.09 4 12.3 4 10.885c0-1.412.548-2.203 1.526-2.203.976 0 1.524.79 1.524 2.203m3.805 1.52V13h-3v-.595h1.181V9.5h-.05l-1.136.747v-.688l1.19-.786h.69v3.633z\"},\"child\":[]}]})(props);\n};\nexport function BsFillFileBreakFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4 0h8a2 2 0 0 1 2 2v7H2V2a2 2 0 0 1 2-2M2 12h12v2a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2zM.5 10a.5.5 0 0 0 0 1h15a.5.5 0 0 0 0-1z\"},\"child\":[]}]})(props);\n};\nexport function BsFillFileCheckFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2m-1.146 6.854-3 3a.5.5 0 0 1-.708 0l-1.5-1.5a.5.5 0 1 1 .708-.708L7.5 8.793l2.646-2.647a.5.5 0 0 1 .708.708\"},\"child\":[]}]})(props);\n};\nexport function BsFillFileCodeFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2M6.646 5.646a.5.5 0 1 1 .708.708L5.707 8l1.647 1.646a.5.5 0 0 1-.708.708l-2-2a.5.5 0 0 1 0-.708zm2.708 0 2 2a.5.5 0 0 1 0 .708l-2 2a.5.5 0 0 1-.708-.708L10.293 8 8.646 6.354a.5.5 0 1 1 .708-.708\"},\"child\":[]}]})(props);\n};\nexport function BsFillFileDiffFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2M8.5 4.5V6H10a.5.5 0 0 1 0 1H8.5v1.5a.5.5 0 0 1-1 0V7H6a.5.5 0 0 1 0-1h1.5V4.5a.5.5 0 0 1 1 0M6 10h4a.5.5 0 0 1 0 1H6a.5.5 0 0 1 0-1\"},\"child\":[]}]})(props);\n};\nexport function BsFillFileEarmarkArrowDownFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.293 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V4.707A1 1 0 0 0 13.707 4L10 .293A1 1 0 0 0 9.293 0M9.5 3.5v-2l3 3h-2a1 1 0 0 1-1-1m-1 4v3.793l1.146-1.147a.5.5 0 0 1 .708.708l-2 2a.5.5 0 0 1-.708 0l-2-2a.5.5 0 0 1 .708-.708L7.5 11.293V7.5a.5.5 0 0 1 1 0\"},\"child\":[]}]})(props);\n};\nexport function BsFillFileEarmarkArrowUpFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.293 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V4.707A1 1 0 0 0 13.707 4L10 .293A1 1 0 0 0 9.293 0M9.5 3.5v-2l3 3h-2a1 1 0 0 1-1-1M6.354 9.854a.5.5 0 0 1-.708-.708l2-2a.5.5 0 0 1 .708 0l2 2a.5.5 0 0 1-.708.708L8.5 8.707V12.5a.5.5 0 0 1-1 0V8.707z\"},\"child\":[]}]})(props);\n};\nexport function BsFillFileEarmarkBarGraphFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.293 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V4.707A1 1 0 0 0 13.707 4L10 .293A1 1 0 0 0 9.293 0M9.5 3.5v-2l3 3h-2a1 1 0 0 1-1-1m.5 10v-6a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v6a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5m-2.5.5a.5.5 0 0 1-.5-.5v-4a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v4a.5.5 0 0 1-.5.5zm-3 0a.5.5 0 0 1-.5-.5v-2a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v2a.5.5 0 0 1-.5.5z\"},\"child\":[]}]})(props);\n};\nexport function BsFillFileEarmarkBinaryFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5.526 10.273c-.542 0-.832.563-.832 1.612q0 .133.006.252l1.559-1.143c-.126-.474-.375-.72-.733-.72zm-.732 2.508c.126.472.372.718.732.718.54 0 .83-.563.83-1.614q0-.129-.006-.25z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M9.293 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V4.707A1 1 0 0 0 13.707 4L10 .293A1 1 0 0 0 9.293 0M9.5 3.5v-2l3 3h-2a1 1 0 0 1-1-1m-2.45 8.385c0 1.415-.548 2.206-1.524 2.206C4.548 14.09 4 13.3 4 11.885c0-1.412.548-2.203 1.526-2.203.976 0 1.524.79 1.524 2.203m3.805 1.52V14h-3v-.595h1.181V10.5h-.05l-1.136.747v-.688l1.19-.786h.69v3.633z\"},\"child\":[]}]})(props);\n};\nexport function BsFillFileEarmarkBreakFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4 0h5.293A1 1 0 0 1 10 .293L13.707 4a1 1 0 0 1 .293.707V9H2V2a2 2 0 0 1 2-2m5.5 1.5v2a1 1 0 0 0 1 1h2zM2 12h12v2a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2zM.5 10a.5.5 0 0 0 0 1h15a.5.5 0 0 0 0-1z\"},\"child\":[]}]})(props);\n};\nexport function BsFillFileEarmarkCheckFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.293 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V4.707A1 1 0 0 0 13.707 4L10 .293A1 1 0 0 0 9.293 0M9.5 3.5v-2l3 3h-2a1 1 0 0 1-1-1m1.354 4.354-3 3a.5.5 0 0 1-.708 0l-1.5-1.5a.5.5 0 1 1 .708-.708L7.5 9.793l2.646-2.647a.5.5 0 0 1 .708.708\"},\"child\":[]}]})(props);\n};\nexport function BsFillFileEarmarkCodeFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.293 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V4.707A1 1 0 0 0 13.707 4L10 .293A1 1 0 0 0 9.293 0M9.5 3.5v-2l3 3h-2a1 1 0 0 1-1-1M6.646 7.646a.5.5 0 1 1 .708.708L5.707 10l1.647 1.646a.5.5 0 0 1-.708.708l-2-2a.5.5 0 0 1 0-.708zm2.708 0 2 2a.5.5 0 0 1 0 .708l-2 2a.5.5 0 0 1-.708-.708L10.293 10 8.646 8.354a.5.5 0 1 1 .708-.708\"},\"child\":[]}]})(props);\n};\nexport function BsFillFileEarmarkDiffFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.293 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V4.707A1 1 0 0 0 13.707 4L10 .293A1 1 0 0 0 9.293 0M9.5 3.5v-2l3 3h-2a1 1 0 0 1-1-1M8 6a.5.5 0 0 1 .5.5V8H10a.5.5 0 0 1 0 1H8.5v1.5a.5.5 0 0 1-1 0V9H6a.5.5 0 0 1 0-1h1.5V6.5A.5.5 0 0 1 8 6m-2.5 6.5A.5.5 0 0 1 6 12h4a.5.5 0 0 1 0 1H6a.5.5 0 0 1-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsFillFileEarmarkEaselFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5 7.5a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 .5.5v2a.5.5 0 0 1-.5.5h-5a.5.5 0 0 1-.5-.5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M9.293 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V4.707A1 1 0 0 0 13.707 4L10 .293A1 1 0 0 0 9.293 0M9.5 3.5v-2l3 3h-2a1 1 0 0 1-1-1M8.5 6h2A1.5 1.5 0 0 1 12 7.5v2a1.5 1.5 0 0 1-1.5 1.5h-.473l.447 1.342a.5.5 0 0 1-.948.316L8.973 11H8.5v1a.5.5 0 0 1-1 0v-1h-.473l-.553 1.658a.5.5 0 1 1-.948-.316L5.973 11H5.5A1.5 1.5 0 0 1 4 9.5v-2A1.5 1.5 0 0 1 5.5 6h2a.5.5 0 0 1 1 0\"},\"child\":[]}]})(props);\n};\nexport function BsFillFileEarmarkExcelFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.293 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V4.707A1 1 0 0 0 13.707 4L10 .293A1 1 0 0 0 9.293 0M9.5 3.5v-2l3 3h-2a1 1 0 0 1-1-1M5.884 6.68 8 9.219l2.116-2.54a.5.5 0 1 1 .768.641L8.651 10l2.233 2.68a.5.5 0 0 1-.768.64L8 10.781l-2.116 2.54a.5.5 0 0 1-.768-.641L7.349 10 5.116 7.32a.5.5 0 1 1 .768-.64\"},\"child\":[]}]})(props);\n};\nexport function BsFillFileEarmarkFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4 0h5.293A1 1 0 0 1 10 .293L13.707 4a1 1 0 0 1 .293.707V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2m5.5 1.5v2a1 1 0 0 0 1 1h2z\"},\"child\":[]}]})(props);\n};\nexport function BsFillFileEarmarkFontFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.293 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V4.707A1 1 0 0 0 13.707 4L10 .293A1 1 0 0 0 9.293 0M9.5 3.5v-2l3 3h-2a1 1 0 0 1-1-1M5.057 6h5.886L11 8h-.5c-.18-1.096-.356-1.192-1.694-1.235l-.298-.01v5.09c0 .47.1.582.903.655v.5H6.59v-.5c.799-.073.898-.184.898-.654V6.755l-.293.01C5.856 6.808 5.68 6.905 5.5 8H5z\"},\"child\":[]}]})(props);\n};\nexport function BsFillFileEarmarkImageFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4 0h5.293A1 1 0 0 1 10 .293L13.707 4a1 1 0 0 1 .293.707v5.586l-2.73-2.73a1 1 0 0 0-1.52.127l-1.889 2.644-1.769-1.062a1 1 0 0 0-1.222.15L2 12.292V2a2 2 0 0 1 2-2m5.5 1.5v2a1 1 0 0 0 1 1h2zm-1.498 4a1.5 1.5 0 1 0-3 0 1.5 1.5 0 0 0 3 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M10.564 8.27 14 11.708V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2v-.293l3.578-3.577 2.56 1.536 2.426-3.395z\"},\"child\":[]}]})(props);\n};\nexport function BsFillFileEarmarkLockFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7 7a1 1 0 0 1 2 0v1H7zM6 9.3c0-.042.02-.107.105-.175A.64.64 0 0 1 6.5 9h3a.64.64 0 0 1 .395.125c.085.068.105.133.105.175v2.4c0 .042-.02.107-.105.175A.64.64 0 0 1 9.5 12h-3a.64.64 0 0 1-.395-.125C6.02 11.807 6 11.742 6 11.7z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M9.293 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V4.707A1 1 0 0 0 13.707 4L10 .293A1 1 0 0 0 9.293 0M9.5 3.5v-2l3 3h-2a1 1 0 0 1-1-1M10 7v1.076c.54.166 1 .597 1 1.224v2.4c0 .816-.781 1.3-1.5 1.3h-3c-.719 0-1.5-.484-1.5-1.3V9.3c0-.627.46-1.058 1-1.224V7a2 2 0 1 1 4 0\"},\"child\":[]}]})(props);\n};\nexport function BsFillFileEarmarkLock2Fill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7 7a1 1 0 0 1 2 0v1H7z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M9.293 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V4.707A1 1 0 0 0 13.707 4L10 .293A1 1 0 0 0 9.293 0M9.5 3.5v-2l3 3h-2a1 1 0 0 1-1-1M10 7v1.076c.54.166 1 .597 1 1.224v2.4c0 .816-.781 1.3-1.5 1.3h-3c-.719 0-1.5-.484-1.5-1.3V9.3c0-.627.46-1.058 1-1.224V7a2 2 0 1 1 4 0\"},\"child\":[]}]})(props);\n};\nexport function BsFillFileEarmarkMedicalFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.293 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V4.707A1 1 0 0 0 13.707 4L10 .293A1 1 0 0 0 9.293 0M9.5 3.5v-2l3 3h-2a1 1 0 0 1-1-1m-3 2v.634l.549-.317a.5.5 0 1 1 .5.866L7 7l.549.317a.5.5 0 1 1-.5.866L6.5 7.866V8.5a.5.5 0 0 1-1 0v-.634l-.549.317a.5.5 0 1 1-.5-.866L5 7l-.549-.317a.5.5 0 0 1 .5-.866l.549.317V5.5a.5.5 0 1 1 1 0m-2 4.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1 0-1m0 2h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1 0-1\"},\"child\":[]}]})(props);\n};\nexport function BsFillFileEarmarkMinusFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.293 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V4.707A1 1 0 0 0 13.707 4L10 .293A1 1 0 0 0 9.293 0M9.5 3.5v-2l3 3h-2a1 1 0 0 1-1-1M6 8.5h4a.5.5 0 0 1 0 1H6a.5.5 0 0 1 0-1\"},\"child\":[]}]})(props);\n};\nexport function BsFillFileEarmarkMusicFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.293 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V4.707A1 1 0 0 0 13.707 4L10 .293A1 1 0 0 0 9.293 0M9.5 3.5v-2l3 3h-2a1 1 0 0 1-1-1M11 6.64v1.75l-2 .5v3.61c0 .495-.301.883-.662 1.123C7.974 13.866 7.499 14 7 14s-.974-.134-1.338-.377C5.302 13.383 5 12.995 5 12.5s.301-.883.662-1.123C6.026 11.134 6.501 11 7 11c.356 0 .7.068 1 .196V6.89a1 1 0 0 1 .757-.97l1-.25A1 1 0 0 1 11 6.64\"},\"child\":[]}]})(props);\n};\nexport function BsFillFileEarmarkPdfFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5.523 12.424q.21-.124.459-.238a8 8 0 0 1-.45.606c-.28.337-.498.516-.635.572l-.035.012a.3.3 0 0 1-.026-.044c-.056-.11-.054-.216.04-.36.106-.165.319-.354.647-.548m2.455-1.647q-.178.037-.356.078a21 21 0 0 0 .5-1.05 12 12 0 0 0 .51.858q-.326.048-.654.114m2.525.939a4 4 0 0 1-.435-.41q.344.007.612.054c.317.057.466.147.518.209a.1.1 0 0 1 .026.064.44.44 0 0 1-.06.2.3.3 0 0 1-.094.124.1.1 0 0 1-.069.015c-.09-.003-.258-.066-.498-.256M8.278 6.97c-.04.244-.108.524-.2.829a5 5 0 0 1-.089-.346c-.076-.353-.087-.63-.046-.822.038-.177.11-.248.196-.283a.5.5 0 0 1 .145-.04c.013.03.028.092.032.198q.008.183-.038.465z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M4 0h5.293A1 1 0 0 1 10 .293L13.707 4a1 1 0 0 1 .293.707V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2m5.5 1.5v2a1 1 0 0 0 1 1h2zM4.165 13.668c.09.18.23.343.438.419.207.075.412.04.58-.03.318-.13.635-.436.926-.786.333-.401.683-.927 1.021-1.51a11.7 11.7 0 0 1 1.997-.406c.3.383.61.713.91.95.28.22.603.403.934.417a.86.86 0 0 0 .51-.138c.155-.101.27-.247.354-.416.09-.181.145-.37.138-.563a.84.84 0 0 0-.2-.518c-.226-.27-.596-.4-.96-.465a5.8 5.8 0 0 0-1.335-.05 11 11 0 0 1-.98-1.686c.25-.66.437-1.284.52-1.794.036-.218.055-.426.048-.614a1.24 1.24 0 0 0-.127-.538.7.7 0 0 0-.477-.365c-.202-.043-.41 0-.601.077-.377.15-.576.47-.651.823-.073.34-.04.736.046 1.136.088.406.238.848.43 1.295a20 20 0 0 1-1.062 2.227 7.7 7.7 0 0 0-1.482.645c-.37.22-.699.48-.897.787-.21.326-.275.714-.08 1.103\"},\"child\":[]}]})(props);\n};\nexport function BsFillFileEarmarkPersonFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.293 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V4.707A1 1 0 0 0 13.707 4L10 .293A1 1 0 0 0 9.293 0M9.5 3.5v-2l3 3h-2a1 1 0 0 1-1-1M11 8a3 3 0 1 1-6 0 3 3 0 0 1 6 0m2 5.755V14a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1v-.245S4 12 8 12s5 1.755 5 1.755\"},\"child\":[]}]})(props);\n};\nexport function BsFillFileEarmarkPlayFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.293 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V4.707A1 1 0 0 0 13.707 4L10 .293A1 1 0 0 0 9.293 0M9.5 3.5v-2l3 3h-2a1 1 0 0 1-1-1M6 6.883a.5.5 0 0 1 .757-.429l3.528 2.117a.5.5 0 0 1 0 .858l-3.528 2.117a.5.5 0 0 1-.757-.43V6.884z\"},\"child\":[]}]})(props);\n};\nexport function BsFillFileEarmarkPlusFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.293 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V4.707A1 1 0 0 0 13.707 4L10 .293A1 1 0 0 0 9.293 0M9.5 3.5v-2l3 3h-2a1 1 0 0 1-1-1M8.5 7v1.5H10a.5.5 0 0 1 0 1H8.5V11a.5.5 0 0 1-1 0V9.5H6a.5.5 0 0 1 0-1h1.5V7a.5.5 0 0 1 1 0\"},\"child\":[]}]})(props);\n};\nexport function BsFillFileEarmarkPostFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.293 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V4.707A1 1 0 0 0 13.707 4L10 .293A1 1 0 0 0 9.293 0M9.5 3.5v-2l3 3h-2a1 1 0 0 1-1-1m-5-.5H7a.5.5 0 0 1 0 1H4.5a.5.5 0 0 1 0-1m0 3h7a.5.5 0 0 1 .5.5v7a.5.5 0 0 1-.5.5h-7a.5.5 0 0 1-.5-.5v-7a.5.5 0 0 1 .5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsFillFileEarmarkPptFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.188 10H7V6.5h1.188a1.75 1.75 0 1 1 0 3.5\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4 0h5.293A1 1 0 0 1 10 .293L13.707 4a1 1 0 0 1 .293.707V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2m5.5 1.5v2a1 1 0 0 0 1 1h2zM7 5.5a1 1 0 0 0-1 1V13a.5.5 0 0 0 1 0v-2h1.188a2.75 2.75 0 0 0 0-5.5z\"},\"child\":[]}]})(props);\n};\nexport function BsFillFileEarmarkRichtextFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.293 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V4.707A1 1 0 0 0 13.707 4L10 .293A1 1 0 0 0 9.293 0M9.5 3.5v-2l3 3h-2a1 1 0 0 1-1-1M7 6.25a.75.75 0 1 1-1.5 0 .75.75 0 0 1 1.5 0m-.861 1.542 1.33.886 1.854-1.855a.25.25 0 0 1 .289-.047l1.888.974V9.5a.5.5 0 0 1-.5.5H5a.5.5 0 0 1-.5-.5V9s1.54-1.274 1.639-1.208M5 11h6a.5.5 0 0 1 0 1H5a.5.5 0 0 1 0-1m0 2h3a.5.5 0 0 1 0 1H5a.5.5 0 0 1 0-1\"},\"child\":[]}]})(props);\n};\nexport function BsFillFileEarmarkRuledFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.293 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V4.707A1 1 0 0 0 13.707 4L10 .293A1 1 0 0 0 9.293 0M9.5 3.5v-2l3 3h-2a1 1 0 0 1-1-1M3 9h10v1H6v2h7v1H6v2H5v-2H3v-1h2v-2H3z\"},\"child\":[]}]})(props);\n};\nexport function BsFillFileEarmarkSlidesFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7 9.78V7.22c0-.096.106-.156.19-.106l2.13 1.279a.125.125 0 0 1 0 .214l-2.13 1.28A.125.125 0 0 1 7 9.778z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M9.293 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V4.707A1 1 0 0 0 13.707 4L10 .293A1 1 0 0 0 9.293 0M9.5 3.5v-2l3 3h-2a1 1 0 0 1-1-1M5 6h6a.5.5 0 0 1 .496.438l.5 4A.5.5 0 0 1 11.5 11h-3v2.016c.863.055 1.5.251 1.5.484 0 .276-.895.5-2 .5s-2-.224-2-.5c0-.233.637-.429 1.5-.484V11h-3a.5.5 0 0 1-.496-.562l.5-4A.5.5 0 0 1 5 6\"},\"child\":[]}]})(props);\n};\nexport function BsFillFileEarmarkSpreadsheetFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6 12v-2h3v2z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M9.293 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V4.707A1 1 0 0 0 13.707 4L10 .293A1 1 0 0 0 9.293 0M9.5 3.5v-2l3 3h-2a1 1 0 0 1-1-1M3 9h10v1h-3v2h3v1h-3v2H9v-2H6v2H5v-2H3v-1h2v-2H3z\"},\"child\":[]}]})(props);\n};\nexport function BsFillFileEarmarkTextFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.293 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V4.707A1 1 0 0 0 13.707 4L10 .293A1 1 0 0 0 9.293 0M9.5 3.5v-2l3 3h-2a1 1 0 0 1-1-1M4.5 9a.5.5 0 0 1 0-1h7a.5.5 0 0 1 0 1zM4 10.5a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5m.5 2.5a.5.5 0 0 1 0-1h4a.5.5 0 0 1 0 1z\"},\"child\":[]}]})(props);\n};\nexport function BsFillFileEarmarkWordFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.293 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V4.707A1 1 0 0 0 13.707 4L10 .293A1 1 0 0 0 9.293 0M9.5 3.5v-2l3 3h-2a1 1 0 0 1-1-1M5.485 6.879l1.036 4.144.997-3.655a.5.5 0 0 1 .964 0l.997 3.655 1.036-4.144a.5.5 0 0 1 .97.242l-1.5 6a.5.5 0 0 1-.967.01L8 9.402l-1.018 3.73a.5.5 0 0 1-.967-.01l-1.5-6a.5.5 0 1 1 .97-.242z\"},\"child\":[]}]})(props);\n};\nexport function BsFillFileEarmarkXFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.293 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V4.707A1 1 0 0 0 13.707 4L10 .293A1 1 0 0 0 9.293 0M9.5 3.5v-2l3 3h-2a1 1 0 0 1-1-1M6.854 7.146 8 8.293l1.146-1.147a.5.5 0 1 1 .708.708L8.707 9l1.147 1.146a.5.5 0 0 1-.708.708L8 9.707l-1.146 1.147a.5.5 0 0 1-.708-.708L7.293 9 6.146 7.854a.5.5 0 1 1 .708-.708\"},\"child\":[]}]})(props);\n};\nexport function BsFillFileEarmarkZipFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5.5 9.438V8.5h1v.938a1 1 0 0 0 .03.243l.4 1.598-.93.62-.93-.62.4-1.598a1 1 0 0 0 .03-.243\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M9.293 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V4.707A1 1 0 0 0 13.707 4L10 .293A1 1 0 0 0 9.293 0M9.5 3.5v-2l3 3h-2a1 1 0 0 1-1-1m-4-.5V2h-1V1H6v1h1v1H6v1h1v1H6v1h1v1H5.5V6h-1V5h1V4h-1V3zm0 4.5h1a1 1 0 0 1 1 1v.938l.4 1.599a1 1 0 0 1-.416 1.074l-.93.62a1 1 0 0 1-1.109 0l-.93-.62a1 1 0 0 1-.415-1.074l.4-1.599V8.5a1 1 0 0 1 1-1\"},\"child\":[]}]})(props);\n};\nexport function BsFillFileEaselFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5 6.5a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 .5.5v2a.5.5 0 0 1-.5.5h-5a.5.5 0 0 1-.5-.5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M12 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2M8.5 5h2A1.5 1.5 0 0 1 12 6.5v2a1.5 1.5 0 0 1-1.5 1.5h-.473l.447 1.342a.5.5 0 0 1-.948.316L8.973 10H8.5v1a.5.5 0 0 1-1 0v-1h-.473l-.553 1.658a.5.5 0 1 1-.948-.316L5.973 10H5.5A1.5 1.5 0 0 1 4 8.5v-2A1.5 1.5 0 0 1 5.5 5h2a.5.5 0 0 1 1 0\"},\"child\":[]}]})(props);\n};\nexport function BsFillFileExcelFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2M5.884 4.68 8 7.219l2.116-2.54a.5.5 0 1 1 .768.641L8.651 8l2.233 2.68a.5.5 0 0 1-.768.64L8 8.781l-2.116 2.54a.5.5 0 0 1-.768-.641L7.349 8 5.116 5.32a.5.5 0 1 1 .768-.64\"},\"child\":[]}]})(props);\n};\nexport function BsFillFileFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M4 0h8a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2\"},\"child\":[]}]})(props);\n};\nexport function BsFillFileFontFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2M5.057 4h5.886L11 6h-.5c-.18-1.096-.356-1.192-1.694-1.235l-.298-.01v6.09c0 .47.1.582.903.655v.5H6.59v-.5c.799-.073.898-.184.898-.654V4.755l-.293.01C5.856 4.808 5.68 4.905 5.5 6H5z\"},\"child\":[]}]})(props);\n};\nexport function BsFillFileImageFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4 0h8a2 2 0 0 1 2 2v8.293l-2.73-2.73a1 1 0 0 0-1.52.127l-1.889 2.644-1.769-1.062a1 1 0 0 0-1.222.15L2 12.292V2a2 2 0 0 1 2-2m4.002 5.5a1.5 1.5 0 1 0-3 0 1.5 1.5 0 0 0 3 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M10.564 8.27 14 11.708V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2v-.293l3.578-3.577 2.56 1.536 2.426-3.395z\"},\"child\":[]}]})(props);\n};\nexport function BsFillFileLockFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7 6a1 1 0 0 1 2 0v1H7zM6 8.3c0-.042.02-.107.105-.175A.64.64 0 0 1 6.5 8h3a.64.64 0 0 1 .395.125c.085.068.105.133.105.175v2.4c0 .042-.02.107-.105.175A.64.64 0 0 1 9.5 11h-3a.64.64 0 0 1-.395-.125C6.02 10.807 6 10.742 6 10.7z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M12 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2m-2 6v1.076c.54.166 1 .597 1 1.224v2.4c0 .816-.781 1.3-1.5 1.3h-3c-.719 0-1.5-.484-1.5-1.3V8.3c0-.627.46-1.058 1-1.224V6a2 2 0 1 1 4 0\"},\"child\":[]}]})(props);\n};\nexport function BsFillFileLock2Fill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7 6a1 1 0 0 1 2 0v1H7z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M12 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2m-2 6v1.076c.54.166 1 .597 1 1.224v2.4c0 .816-.781 1.3-1.5 1.3h-3c-.719 0-1.5-.484-1.5-1.3V8.3c0-.627.46-1.058 1-1.224V6a2 2 0 1 1 4 0\"},\"child\":[]}]})(props);\n};\nexport function BsFillFileMedicalFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2M8.5 4.5v.634l.549-.317a.5.5 0 1 1 .5.866L9 6l.549.317a.5.5 0 1 1-.5.866L8.5 6.866V7.5a.5.5 0 0 1-1 0v-.634l-.549.317a.5.5 0 1 1-.5-.866L7 6l-.549-.317a.5.5 0 0 1 .5-.866l.549.317V4.5a.5.5 0 1 1 1 0M5.5 9h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1 0-1m0 2h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1 0-1\"},\"child\":[]}]})(props);\n};\nexport function BsFillFileMinusFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2M6 7.5h4a.5.5 0 0 1 0 1H6a.5.5 0 0 1 0-1\"},\"child\":[]}]})(props);\n};\nexport function BsFillFileMusicFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2m-.5 4.11v1.8l-2.5.5v5.09c0 .495-.301.883-.662 1.123C7.974 12.866 7.499 13 7 13s-.974-.134-1.338-.377C5.302 12.383 5 11.995 5 11.5s.301-.883.662-1.123C6.026 10.134 6.501 10 7 10c.356 0 .7.068 1 .196V4.41a1 1 0 0 1 .804-.98l1.5-.3a1 1 0 0 1 1.196.98\"},\"child\":[]}]})(props);\n};\nexport function BsFillFilePdfFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5.523 10.424q.21-.124.459-.238a8 8 0 0 1-.45.606c-.28.337-.498.516-.635.572l-.035.012a.3.3 0 0 1-.026-.044c-.056-.11-.054-.216.04-.36.106-.165.319-.354.647-.548m2.455-1.647q-.178.037-.356.078a21 21 0 0 0 .5-1.05 12 12 0 0 0 .51.858q-.326.048-.654.114m2.525.939a4 4 0 0 1-.435-.41q.344.007.612.054c.317.057.466.147.518.209a.1.1 0 0 1 .026.064.44.44 0 0 1-.06.2.3.3 0 0 1-.094.124.1.1 0 0 1-.069.015c-.09-.003-.258-.066-.498-.256M8.278 4.97c-.04.244-.108.524-.2.829a5 5 0 0 1-.089-.346c-.076-.353-.087-.63-.046-.822.038-.177.11-.248.196-.283a.5.5 0 0 1 .145-.04c.013.03.028.092.032.198q.008.183-.038.465z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M4 0h8a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2m.165 11.668c.09.18.23.343.438.419.207.075.412.04.58-.03.318-.13.635-.436.926-.786.333-.401.683-.927 1.021-1.51a11.6 11.6 0 0 1 1.997-.406c.3.383.61.713.91.95.28.22.603.403.934.417a.86.86 0 0 0 .51-.138c.155-.101.27-.247.354-.416.09-.181.145-.37.138-.563a.84.84 0 0 0-.2-.518c-.226-.27-.596-.4-.96-.465a5.8 5.8 0 0 0-1.335-.05 11 11 0 0 1-.98-1.686c.25-.66.437-1.284.52-1.794.036-.218.055-.426.048-.614a1.24 1.24 0 0 0-.127-.538.7.7 0 0 0-.477-.365c-.202-.043-.41 0-.601.077-.377.15-.576.47-.651.823-.073.34-.04.736.046 1.136.088.406.238.848.43 1.295a20 20 0 0 1-1.062 2.227 7.7 7.7 0 0 0-1.482.645c-.37.22-.699.48-.897.787-.21.326-.275.714-.08 1.103\"},\"child\":[]}]})(props);\n};\nexport function BsFillFilePersonFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2m-1 7a3 3 0 1 1-6 0 3 3 0 0 1 6 0m-3 4c2.623 0 4.146.826 5 1.755V14a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1v-1.245C3.854 11.825 5.377 11 8 11\"},\"child\":[]}]})(props);\n};\nexport function BsFillFilePlayFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2M6 5.883a.5.5 0 0 1 .757-.429l3.528 2.117a.5.5 0 0 1 0 .858l-3.528 2.117a.5.5 0 0 1-.757-.43V5.884z\"},\"child\":[]}]})(props);\n};\nexport function BsFillFilePlusFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2M8.5 6v1.5H10a.5.5 0 0 1 0 1H8.5V10a.5.5 0 0 1-1 0V8.5H6a.5.5 0 0 1 0-1h1.5V6a.5.5 0 0 1 1 0\"},\"child\":[]}]})(props);\n};\nexport function BsFillFilePostFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2M4.5 3h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1 0-1m0 2h7a.5.5 0 0 1 .5.5v8a.5.5 0 0 1-.5.5h-7a.5.5 0 0 1-.5-.5v-8a.5.5 0 0 1 .5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsFillFilePptFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.188 8.5H7V5h1.188a1.75 1.75 0 1 1 0 3.5\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4 0h8a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2m3 4a1 1 0 0 0-1 1v6.5a.5.5 0 0 0 1 0v-2h1.188a2.75 2.75 0 0 0 0-5.5z\"},\"child\":[]}]})(props);\n};\nexport function BsFillFileRichtextFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2M7 4.25a.75.75 0 1 1-1.5 0 .75.75 0 0 1 1.5 0m-.861 1.542 1.33.886 1.854-1.855a.25.25 0 0 1 .289-.047l1.888.974V7.5a.5.5 0 0 1-.5.5H5a.5.5 0 0 1-.5-.5V7s1.54-1.274 1.639-1.208M5 9h6a.5.5 0 0 1 0 1H5a.5.5 0 0 1 0-1m0 2h3a.5.5 0 0 1 0 1H5a.5.5 0 0 1 0-1\"},\"child\":[]}]})(props);\n};\nexport function BsFillFileRuledFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12 0H4a2 2 0 0 0-2 2v4h12V2a2 2 0 0 0-2-2m2 7H6v2h8zm0 3H6v2h8zm0 3H6v3h6a2 2 0 0 0 2-2zm-9 3v-3H2v1a2 2 0 0 0 2 2zm-3-4h3v-2H2zm0-3h3V7H2z\"},\"child\":[]}]})(props);\n};\nexport function BsFillFileSlidesFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7 7.78V5.22c0-.096.106-.156.19-.106l2.13 1.279a.125.125 0 0 1 0 .214l-2.13 1.28A.125.125 0 0 1 7 7.778z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M12 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2M5 4h6a.5.5 0 0 1 .496.438l.5 4A.5.5 0 0 1 11.5 9h-3v2.016c.863.055 1.5.251 1.5.484 0 .276-.895.5-2 .5s-2-.224-2-.5c0-.233.637-.429 1.5-.484V9h-3a.5.5 0 0 1-.496-.562l.5-4A.5.5 0 0 1 5 4\"},\"child\":[]}]})(props);\n};\nexport function BsFillFileSpreadsheetFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12 0H4a2 2 0 0 0-2 2v4h12V2a2 2 0 0 0-2-2m2 7h-4v2h4zm0 3h-4v2h4zm0 3h-4v3h2a2 2 0 0 0 2-2zm-5 3v-3H6v3zm-4 0v-3H2v1a2 2 0 0 0 2 2zm-3-4h3v-2H2zm0-3h3V7H2zm4 0V7h3v2zm0 1h3v2H6z\"},\"child\":[]}]})(props);\n};\nexport function BsFillFileTextFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2M5 4h6a.5.5 0 0 1 0 1H5a.5.5 0 0 1 0-1m-.5 2.5A.5.5 0 0 1 5 6h6a.5.5 0 0 1 0 1H5a.5.5 0 0 1-.5-.5M5 8h6a.5.5 0 0 1 0 1H5a.5.5 0 0 1 0-1m0 2h3a.5.5 0 0 1 0 1H5a.5.5 0 0 1 0-1\"},\"child\":[]}]})(props);\n};\nexport function BsFillFileWordFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2M5.485 4.879l1.036 4.144.997-3.655a.5.5 0 0 1 .964 0l.997 3.655 1.036-4.144a.5.5 0 0 1 .97.242l-1.5 6a.5.5 0 0 1-.967.01L8 7.402l-1.018 3.73a.5.5 0 0 1-.967-.01l-1.5-6a.5.5 0 1 1 .97-.242z\"},\"child\":[]}]})(props);\n};\nexport function BsFillFileXFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2M6.854 6.146 8 7.293l1.146-1.147a.5.5 0 1 1 .708.708L8.707 8l1.147 1.146a.5.5 0 0 1-.708.708L8 8.707 6.854 9.854a.5.5 0 0 1-.708-.708L7.293 8 6.146 6.854a.5.5 0 1 1 .708-.708\"},\"child\":[]}]})(props);\n};\nexport function BsFillFileZipFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.5 9.438V8.5h-1v.938a1 1 0 0 1-.03.243l-.4 1.598.93.62.93-.62-.4-1.598a1 1 0 0 1-.03-.243\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4 0h8a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2m2.5 8.5v.938l-.4 1.599a1 1 0 0 0 .416 1.074l.93.62a1 1 0 0 0 1.109 0l.93-.62a1 1 0 0 0 .415-1.074l-.4-1.599V8.5a1 1 0 0 0-1-1h-1a1 1 0 0 0-1 1m1-5.5h-1v1h1v1h-1v1h1v1H9V6H8V5h1V4H8V3h1V2H8V1H6.5v1h1z\"},\"child\":[]}]})(props);\n};\nexport function BsFillFilterCircleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 16A8 8 0 1 0 8 0a8 8 0 0 0 0 16M3.5 5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1 0-1M5 8.5a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5m2 3a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 0 1h-1a.5.5 0 0 1-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsFillFilterSquareFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm.5 5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1 0-1M4 8.5a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5m2 3a.5.5 0 0 1 .5-.5h3a.5.5 0 0 1 0 1h-3a.5.5 0 0 1-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsFillFlagFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M14.778.085A.5.5 0 0 1 15 .5V8a.5.5 0 0 1-.314.464L14.5 8l.186.464-.003.001-.006.003-.023.009a12 12 0 0 1-.397.15c-.264.095-.631.223-1.047.35-.816.252-1.879.523-2.71.523-.847 0-1.548-.28-2.158-.525l-.028-.01C7.68 8.71 7.14 8.5 6.5 8.5c-.7 0-1.638.23-2.437.477A20 20 0 0 0 3 9.342V15.5a.5.5 0 0 1-1 0V.5a.5.5 0 0 1 1 0v.282c.226-.079.496-.17.79-.26C4.606.272 5.67 0 6.5 0c.84 0 1.524.277 2.121.519l.043.018C9.286.788 9.828 1 10.5 1c.7 0 1.638-.23 2.437-.477a20 20 0 0 0 1.349-.476l.019-.007.004-.002h.001\"},\"child\":[]}]})(props);\n};\nexport function BsFillFloppyFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 1.5A1.5 1.5 0 0 1 1.5 0H3v5.5A1.5 1.5 0 0 0 4.5 7h7A1.5 1.5 0 0 0 13 5.5V0h.086a1.5 1.5 0 0 1 1.06.44l1.415 1.414A1.5 1.5 0 0 1 16 2.914V14.5a1.5 1.5 0 0 1-1.5 1.5H14v-5.5A1.5 1.5 0 0 0 12.5 9h-9A1.5 1.5 0 0 0 2 10.5V16h-.5A1.5 1.5 0 0 1 0 14.5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3 16h10v-5.5a.5.5 0 0 0-.5-.5h-9a.5.5 0 0 0-.5.5zm9-16H4v5.5a.5.5 0 0 0 .5.5h7a.5.5 0 0 0 .5-.5zM9 1h2v4H9z\"},\"child\":[]}]})(props);\n};\nexport function BsFillFloppy2Fill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12 2h-2v3h2z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M1.5 0A1.5 1.5 0 0 0 0 1.5v13A1.5 1.5 0 0 0 1.5 16h13a1.5 1.5 0 0 0 1.5-1.5V2.914a1.5 1.5 0 0 0-.44-1.06L14.147.439A1.5 1.5 0 0 0 13.086 0zM4 6a1 1 0 0 1-1-1V1h10v4a1 1 0 0 1-1 1zM3 9h10a1 1 0 0 1 1 1v5H2v-5a1 1 0 0 1 1-1\"},\"child\":[]}]})(props);\n};\nexport function BsFillFolderFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.828 3h3.982a2 2 0 0 1 1.992 2.181l-.637 7A2 2 0 0 1 13.174 14H2.825a2 2 0 0 1-1.991-1.819l-.637-7a2 2 0 0 1 .342-1.31L.5 3a2 2 0 0 1 2-2h3.672a2 2 0 0 1 1.414.586l.828.828A2 2 0 0 0 9.828 3m-8.322.12q.322-.119.684-.12h5.396l-.707-.707A1 1 0 0 0 6.172 2H2.5a1 1 0 0 0-1 .981z\"},\"child\":[]}]})(props);\n};\nexport function BsFillFolderSymlinkFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M13.81 3H9.828a2 2 0 0 1-1.414-.586l-.828-.828A2 2 0 0 0 6.172 1H2.5a2 2 0 0 0-2 2l.04.87a2 2 0 0 0-.342 1.311l.637 7A2 2 0 0 0 2.826 14h10.348a2 2 0 0 0 1.991-1.819l.637-7A2 2 0 0 0 13.81 3M2.19 3q-.362.002-.683.12L1.5 2.98a1 1 0 0 1 1-.98h3.672a1 1 0 0 1 .707.293L7.586 3zm9.608 5.271-3.182 1.97c-.27.166-.616-.036-.616-.372V9.1s-2.571-.3-4 2.4c.571-4.8 3.143-4.8 4-4.8v-.769c0-.336.346-.538.616-.371l3.182 1.969c.27.166.27.576 0 .742\"},\"child\":[]}]})(props);\n};\nexport function BsFillForwardFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m9.77 12.11 4.012-2.953a.647.647 0 0 0 0-1.114L9.771 5.09a.644.644 0 0 0-.971.557V6.65H2v3.9h6.8v1.003c0 .505.545.808.97.557\"},\"child\":[]}]})(props);\n};\nexport function BsFillFuelPumpDieselFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4.974 9.806h.692q.459 0 .75.19.297.191.437.568.144.377.144.941 0 .425-.083.74-.08.315-.241.528a1 1 0 0 1-.412.315 1.6 1.6 0 0 1-.595.103h-.692z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M1 2a2 2 0 0 1 2-2h6a2 2 0 0 1 2 2v8a2 2 0 0 1 2 2v.5a.5.5 0 0 0 1 0V8h-.5a.5.5 0 0 1-.5-.5V4.375a.5.5 0 0 1 .5-.5h1.495c-.011-.476-.053-.894-.201-1.222a.97.97 0 0 0-.394-.458c-.184-.11-.464-.195-.9-.195a.5.5 0 0 1 0-1q.846-.002 1.412.336c.383.228.634.551.794.907.295.655.294 1.465.294 2.081V7.5a.5.5 0 0 1-.5.5H15v4.5a1.5 1.5 0 0 1-3 0V12a1 1 0 0 0-1-1v4h.5a.5.5 0 0 1 0 1H.5a.5.5 0 0 1 0-1H1zm2 .5v5a.5.5 0 0 0 .5.5h5a.5.5 0 0 0 .5-.5v-5a.5.5 0 0 0-.5-.5h-5a.5.5 0 0 0-.5.5M4 9v5h1.796q.744 0 1.23-.297.49-.296.732-.86T8 11.487q0-.788-.242-1.344a1.78 1.78 0 0 0-.725-.85Q6.547 9 5.796 9z\"},\"child\":[]}]})(props);\n};\nexport function BsFillFuelPumpFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M1 2a2 2 0 0 1 2-2h6a2 2 0 0 1 2 2v8a2 2 0 0 1 2 2v.5a.5.5 0 0 0 1 0V8h-.5a.5.5 0 0 1-.5-.5V4.375a.5.5 0 0 1 .5-.5h1.495c-.011-.476-.053-.894-.201-1.222a.97.97 0 0 0-.394-.458c-.184-.11-.464-.195-.9-.195a.5.5 0 0 1 0-1q.846-.002 1.412.336c.383.228.634.551.794.907.295.655.294 1.465.294 2.081V7.5a.5.5 0 0 1-.5.5H15v4.5a1.5 1.5 0 0 1-3 0V12a1 1 0 0 0-1-1v4h.5a.5.5 0 0 1 0 1H.5a.5.5 0 0 1 0-1H1zm2.5 0a.5.5 0 0 0-.5.5v5a.5.5 0 0 0 .5.5h5a.5.5 0 0 0 .5-.5v-5a.5.5 0 0 0-.5-.5z\"},\"child\":[]}]})(props);\n};\nexport function BsFillFunnelFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M1.5 1.5A.5.5 0 0 1 2 1h12a.5.5 0 0 1 .5.5v2a.5.5 0 0 1-.128.334L10 8.692V13.5a.5.5 0 0 1-.342.474l-3 1A.5.5 0 0 1 6 14.5V8.692L1.628 3.834A.5.5 0 0 1 1.5 3.5z\"},\"child\":[]}]})(props);\n};\nexport function BsFillGearFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.405 1.05c-.413-1.4-2.397-1.4-2.81 0l-.1.34a1.464 1.464 0 0 1-2.105.872l-.31-.17c-1.283-.698-2.686.705-1.987 1.987l.169.311c.446.82.023 1.841-.872 2.105l-.34.1c-1.4.413-1.4 2.397 0 2.81l.34.1a1.464 1.464 0 0 1 .872 2.105l-.17.31c-.698 1.283.705 2.686 1.987 1.987l.311-.169a1.464 1.464 0 0 1 2.105.872l.1.34c.413 1.4 2.397 1.4 2.81 0l.1-.34a1.464 1.464 0 0 1 2.105-.872l.31.17c1.283.698 2.686-.705 1.987-1.987l-.169-.311a1.464 1.464 0 0 1 .872-2.105l.34-.1c1.4-.413 1.4-2.397 0-2.81l-.34-.1a1.464 1.464 0 0 1-.872-2.105l.17-.31c.698-1.283-.705-2.686-1.987-1.987l-.311.169a1.464 1.464 0 0 1-2.105-.872zM8 10.93a2.929 2.929 0 1 1 0-5.86 2.929 2.929 0 0 1 0 5.858z\"},\"child\":[]}]})(props);\n};\nexport function BsFillGeoAltFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 16s6-5.686 6-10A6 6 0 0 0 2 6c0 4.314 6 10 6 10m0-7a3 3 0 1 1 0-6 3 3 0 0 1 0 6\"},\"child\":[]}]})(props);\n};\nexport function BsFillGeoFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M4 4a4 4 0 1 1 4.5 3.969V13.5a.5.5 0 0 1-1 0V7.97A4 4 0 0 1 4 3.999zm2.493 8.574a.5.5 0 0 1-.411.575c-.712.118-1.28.295-1.655.493a1.3 1.3 0 0 0-.37.265.3.3 0 0 0-.057.09V14l.002.008.016.033a.6.6 0 0 0 .145.15c.165.13.435.27.813.395.751.25 1.82.414 3.024.414s2.273-.163 3.024-.414c.378-.126.648-.265.813-.395a.6.6 0 0 0 .146-.15l.015-.033L12 14v-.004a.3.3 0 0 0-.057-.09 1.3 1.3 0 0 0-.37-.264c-.376-.198-.943-.375-1.655-.493a.5.5 0 1 1 .164-.986c.77.127 1.452.328 1.957.594C12.5 13 13 13.4 13 14c0 .426-.26.752-.544.977-.29.228-.68.413-1.116.558-.878.293-2.059.465-3.34.465s-2.462-.172-3.34-.465c-.436-.145-.826-.33-1.116-.558C3.26 14.752 3 14.426 3 14c0-.599.5-1 .961-1.243.505-.266 1.187-.467 1.957-.594a.5.5 0 0 1 .575.411\"},\"child\":[]}]})(props);\n};\nexport function BsFillGiftFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3 2.5a2.5 2.5 0 0 1 5 0 2.5 2.5 0 0 1 5 0v.006c0 .07 0 .27-.038.494H15a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1H1a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h2.038A3 3 0 0 1 3 2.506zm1.068.5H7v-.5a1.5 1.5 0 1 0-3 0c0 .085.002.274.045.43zM9 3h2.932l.023-.07c.043-.156.045-.345.045-.43a1.5 1.5 0 0 0-3 0zm6 4v7.5a1.5 1.5 0 0 1-1.5 1.5H9V7zM2.5 16A1.5 1.5 0 0 1 1 14.5V7h6v9z\"},\"child\":[]}]})(props);\n};\nexport function BsFillGrid1X2Fill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 1a1 1 0 0 1 1-1h5a1 1 0 0 1 1 1v14a1 1 0 0 1-1 1H1a1 1 0 0 1-1-1zm9 0a1 1 0 0 1 1-1h5a1 1 0 0 1 1 1v5a1 1 0 0 1-1 1h-5a1 1 0 0 1-1-1zm0 9a1 1 0 0 1 1-1h5a1 1 0 0 1 1 1v5a1 1 0 0 1-1 1h-5a1 1 0 0 1-1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsFillGrid3X2GapFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M1 4a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1zm5 0a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1H7a1 1 0 0 1-1-1zm5 0a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1h-2a1 1 0 0 1-1-1zM1 9a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1zm5 0a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1H7a1 1 0 0 1-1-1zm5 0a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1h-2a1 1 0 0 1-1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsFillGrid3X3GapFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M1 2a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1zm5 0a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1H7a1 1 0 0 1-1-1zm5 0a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1h-2a1 1 0 0 1-1-1zM1 7a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1zm5 0a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1H7a1 1 0 0 1-1-1zm5 0a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1h-2a1 1 0 0 1-1-1zM1 12a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1zm5 0a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1H7a1 1 0 0 1-1-1zm5 0a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1h-2a1 1 0 0 1-1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsFillGridFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M1 2.5A1.5 1.5 0 0 1 2.5 1h3A1.5 1.5 0 0 1 7 2.5v3A1.5 1.5 0 0 1 5.5 7h-3A1.5 1.5 0 0 1 1 5.5zm8 0A1.5 1.5 0 0 1 10.5 1h3A1.5 1.5 0 0 1 15 2.5v3A1.5 1.5 0 0 1 13.5 7h-3A1.5 1.5 0 0 1 9 5.5zm-8 8A1.5 1.5 0 0 1 2.5 9h3A1.5 1.5 0 0 1 7 10.5v3A1.5 1.5 0 0 1 5.5 15h-3A1.5 1.5 0 0 1 1 13.5zm8 0A1.5 1.5 0 0 1 10.5 9h3a1.5 1.5 0 0 1 1.5 1.5v3a1.5 1.5 0 0 1-1.5 1.5h-3A1.5 1.5 0 0 1 9 13.5z\"},\"child\":[]}]})(props);\n};\nexport function BsFillHCircleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0m-5-3.998H9.67v3.322H6.33V4.002H5V12h1.33V8.455h3.34V12H11z\"},\"child\":[]}]})(props);\n};\nexport function BsFillHSquareFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm9 4.002V12H9.67V8.455H6.33V12H5V4.002h1.33v3.322h3.34V4.002z\"},\"child\":[]}]})(props);\n};\nexport function BsFillHandIndexFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.5 4.466V1.75a1.75 1.75 0 1 0-3.5 0v5.34l-1.2.24a1.5 1.5 0 0 0-1.196 1.636l.345 3.106a2.5 2.5 0 0 0 .405 1.11l1.433 2.15A1.5 1.5 0 0 0 6.035 16h6.385a1.5 1.5 0 0 0 1.302-.756l1.395-2.441a3.5 3.5 0 0 0 .444-1.389l.271-2.715a2 2 0 0 0-1.99-2.199h-.581a5 5 0 0 0-.195-.248c-.191-.229-.51-.568-.88-.716-.364-.146-.846-.132-1.158-.108l-.132.012a1.26 1.26 0 0 0-.56-.642 2.6 2.6 0 0 0-.738-.288c-.31-.062-.739-.058-1.05-.046z\"},\"child\":[]}]})(props);\n};\nexport function BsFillHandIndexThumbFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.5 1.75v2.716l.047-.002c.312-.012.742-.016 1.051.046.28.056.543.18.738.288.273.152.456.385.56.642l.132-.012c.312-.024.794-.038 1.158.108.37.148.689.487.88.716q.113.137.195.248h.582a2 2 0 0 1 1.99 2.199l-.272 2.715a3.5 3.5 0 0 1-.444 1.389l-1.395 2.441A1.5 1.5 0 0 1 12.42 16H6.118a1.5 1.5 0 0 1-1.342-.83l-1.215-2.43L1.07 8.589a1.517 1.517 0 0 1 2.373-1.852L5 8.293V1.75a1.75 1.75 0 0 1 3.5 0\"},\"child\":[]}]})(props);\n};\nexport function BsFillHandThumbsDownFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.956 14.534c.065.936.952 1.659 1.908 1.42l.261-.065a1.38 1.38 0 0 0 1.012-.965c.22-.816.533-2.512.062-4.51q.205.03.443.051c.713.065 1.669.071 2.516-.211.518-.173.994-.68 1.2-1.272a1.9 1.9 0 0 0-.234-1.734c.058-.118.103-.242.138-.362.077-.27.113-.568.113-.856 0-.29-.036-.586-.113-.857a2 2 0 0 0-.16-.403c.169-.387.107-.82-.003-1.149a3.2 3.2 0 0 0-.488-.9c.054-.153.076-.313.076-.465a1.86 1.86 0 0 0-.253-.912C13.1.757 12.437.28 11.5.28H8c-.605 0-1.07.08-1.466.217a4.8 4.8 0 0 0-.97.485l-.048.029c-.504.308-.999.61-2.068.723C2.682 1.815 2 2.434 2 3.279v4c0 .851.685 1.433 1.357 1.616.849.232 1.574.787 2.132 1.41.56.626.914 1.28 1.039 1.638.199.575.356 1.54.428 2.591\"},\"child\":[]}]})(props);\n};\nexport function BsFillHandThumbsUpFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.956 1.745C7.021.81 7.908.087 8.864.325l.261.066c.463.116.874.456 1.012.965.22.816.533 2.511.062 4.51a10 10 0 0 1 .443-.051c.713-.065 1.669-.072 2.516.21.518.173.994.681 1.2 1.273.184.532.16 1.162-.234 1.733q.086.18.138.363c.077.27.113.567.113.856s-.036.586-.113.856c-.039.135-.09.273-.16.404.169.387.107.819-.003 1.148a3.2 3.2 0 0 1-.488.901c.054.152.076.312.076.465 0 .305-.089.625-.253.912C13.1 15.522 12.437 16 11.5 16H8c-.605 0-1.07-.081-1.466-.218a4.8 4.8 0 0 1-.97-.484l-.048-.03c-.504-.307-.999-.609-2.068-.722C2.682 14.464 2 13.846 2 13V9c0-.85.685-1.432 1.357-1.615.849-.232 1.574-.787 2.132-1.41.56-.627.914-1.28 1.039-1.639.199-.575.356-1.539.428-2.59z\"},\"child\":[]}]})(props);\n};\nexport function BsFillHandbagFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 1a2 2 0 0 0-2 2v2H5V3a3 3 0 1 1 6 0v2h-1V3a2 2 0 0 0-2-2M5 5H3.36a1.5 1.5 0 0 0-1.483 1.277L.85 13.13A2.5 2.5 0 0 0 3.322 16h9.355a2.5 2.5 0 0 0 2.473-2.87l-1.028-6.853A1.5 1.5 0 0 0 12.64 5H11v1.5a.5.5 0 0 1-1 0V5H6v1.5a.5.5 0 0 1-1 0z\"},\"child\":[]}]})(props);\n};\nexport function BsFillHddFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 10a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v1a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm2.5 1a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1m2 0a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1M.91 7.204A3 3 0 0 1 2 7h12c.384 0 .752.072 1.09.204l-1.867-3.422A1.5 1.5 0 0 0 11.906 3H4.094a1.5 1.5 0 0 0-1.317.782z\"},\"child\":[]}]})(props);\n};\nexport function BsFillHddNetworkFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 2a2 2 0 0 0-2 2v1a2 2 0 0 0 2 2h5.5v3A1.5 1.5 0 0 0 6 11.5H.5a.5.5 0 0 0 0 1H6A1.5 1.5 0 0 0 7.5 14h1a1.5 1.5 0 0 0 1.5-1.5h5.5a.5.5 0 0 0 0-1H10A1.5 1.5 0 0 0 8.5 10V7H14a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2zm.5 3a.5.5 0 1 1 0-1 .5.5 0 0 1 0 1m2 0a.5.5 0 1 1 0-1 .5.5 0 0 1 0 1\"},\"child\":[]}]})(props);\n};\nexport function BsFillHddRackFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 2a2 2 0 0 0-2 2v1a2 2 0 0 0 2 2h1v2H2a2 2 0 0 0-2 2v1a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-1a2 2 0 0 0-2-2h-1V7h1a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2zm.5 3a.5.5 0 1 1 0-1 .5.5 0 0 1 0 1m2 0a.5.5 0 1 1 0-1 .5.5 0 0 1 0 1m-2 7a.5.5 0 1 1 0-1 .5.5 0 0 1 0 1m2 0a.5.5 0 1 1 0-1 .5.5 0 0 1 0 1M12 7v2H4V7z\"},\"child\":[]}]})(props);\n};\nexport function BsFillHddStackFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 9a2 2 0 0 0-2 2v1a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-1a2 2 0 0 0-2-2zm.5 3a.5.5 0 1 1 0-1 .5.5 0 0 1 0 1m2 0a.5.5 0 1 1 0-1 .5.5 0 0 1 0 1M2 2a2 2 0 0 0-2 2v1a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2zm.5 3a.5.5 0 1 1 0-1 .5.5 0 0 1 0 1m2 0a.5.5 0 1 1 0-1 .5.5 0 0 1 0 1\"},\"child\":[]}]})(props);\n};\nexport function BsFillHdmiFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M1 5a1 1 0 0 0-1 1v3.293c0 .39.317.707.707.707.188 0 .368.075.5.207l.5.5a1 1 0 0 0 .707.293h11.172a1 1 0 0 0 .707-.293l.5-.5a.7.7 0 0 1 .5-.207c.39 0 .707-.317.707-.707V6a1 1 0 0 0-1-1zm1.5 2h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1 0-1\"},\"child\":[]}]})(props);\n};\nexport function BsFillHeartFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M8 1.314C12.438-3.248 23.534 4.735 8 15-7.534 4.736 3.562-3.248 8 1.314\"},\"child\":[]}]})(props);\n};\nexport function BsFillHeartPulseFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M1.475 9C2.702 10.84 4.779 12.871 8 15c3.221-2.129 5.298-4.16 6.525-6H12a.5.5 0 0 1-.464-.314l-1.457-3.642-1.598 5.593a.5.5 0 0 1-.945.049L5.889 6.568l-1.473 2.21A.5.5 0 0 1 4 9z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M.88 8C-2.427 1.68 4.41-2 7.823 1.143q.09.083.176.171a3 3 0 0 1 .176-.17C11.59-2 18.426 1.68 15.12 8h-2.783l-1.874-4.686a.5.5 0 0 0-.945.049L7.921 8.956 6.464 5.314a.5.5 0 0 0-.88-.091L3.732 8z\"},\"child\":[]}]})(props);\n};\nexport function BsFillHeartbreakFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.931.586 7 3l1.5 4-2 3L8 15C22.534 5.396 13.757-2.21 8.931.586M7.358.77 5.5 3 7 7l-1.5 3 1.815 4.537C-6.533 4.96 2.685-2.467 7.358.77\"},\"child\":[]}]})(props);\n};\nexport function BsFillHeptagonFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M7.779.052a.5.5 0 0 1 .442 0l6.015 2.97a.5.5 0 0 1 .267.34l1.485 6.676a.5.5 0 0 1-.093.415l-4.162 5.354a.5.5 0 0 1-.395.193H4.662a.5.5 0 0 1-.395-.193L.105 10.453a.5.5 0 0 1-.093-.415l1.485-6.676a.5.5 0 0 1 .267-.34z\"},\"child\":[]}]})(props);\n};\nexport function BsFillHexagonFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M8.5.134a1 1 0 0 0-1 0l-6 3.577a1 1 0 0 0-.5.866v6.846a1 1 0 0 0 .5.866l6 3.577a1 1 0 0 0 1 0l6-3.577a1 1 0 0 0 .5-.866V4.577a1 1 0 0 0-.5-.866z\"},\"child\":[]}]})(props);\n};\nexport function BsFillHospitalFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6 0a1 1 0 0 0-1 1v1a1 1 0 0 0-1 1v4H1a1 1 0 0 0-1 1v7a1 1 0 0 0 1 1h6v-2.5a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5V16h6a1 1 0 0 0 1-1V8a1 1 0 0 0-1-1h-3V3a1 1 0 0 0-1-1V1a1 1 0 0 0-1-1zm2.5 5.034v1.1l.953-.55.5.867L9 7l.953.55-.5.866-.953-.55v1.1h-1v-1.1l-.953.55-.5-.866L7 7l-.953-.55.5-.866.953.55v-1.1zM2.25 9h.5a.25.25 0 0 1 .25.25v.5a.25.25 0 0 1-.25.25h-.5A.25.25 0 0 1 2 9.75v-.5A.25.25 0 0 1 2.25 9m0 2h.5a.25.25 0 0 1 .25.25v.5a.25.25 0 0 1-.25.25h-.5a.25.25 0 0 1-.25-.25v-.5a.25.25 0 0 1 .25-.25M2 13.25a.25.25 0 0 1 .25-.25h.5a.25.25 0 0 1 .25.25v.5a.25.25 0 0 1-.25.25h-.5a.25.25 0 0 1-.25-.25zM13.25 9h.5a.25.25 0 0 1 .25.25v.5a.25.25 0 0 1-.25.25h-.5a.25.25 0 0 1-.25-.25v-.5a.25.25 0 0 1 .25-.25M13 11.25a.25.25 0 0 1 .25-.25h.5a.25.25 0 0 1 .25.25v.5a.25.25 0 0 1-.25.25h-.5a.25.25 0 0 1-.25-.25zm.25 1.75h.5a.25.25 0 0 1 .25.25v.5a.25.25 0 0 1-.25.25h-.5a.25.25 0 0 1-.25-.25v-.5a.25.25 0 0 1 .25-.25\"},\"child\":[]}]})(props);\n};\nexport function BsFillHouseAddFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12.5 16a3.5 3.5 0 1 0 0-7 3.5 3.5 0 0 0 0 7m.5-5v1h1a.5.5 0 0 1 0 1h-1v1a.5.5 0 1 1-1 0v-1h-1a.5.5 0 1 1 0-1h1v-1a.5.5 0 0 1 1 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8.707 1.5a1 1 0 0 0-1.414 0L.646 8.146a.5.5 0 0 0 .708.708L8 2.207l6.646 6.647a.5.5 0 0 0 .708-.708L13 5.793V2.5a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5v1.293z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m8 3.293 4.712 4.712A4.5 4.5 0 0 0 8.758 15H3.5A1.5 1.5 0 0 1 2 13.5V9.293z\"},\"child\":[]}]})(props);\n};\nexport function BsFillHouseCheckFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.707 1.5a1 1 0 0 0-1.414 0L.646 8.146a.5.5 0 0 0 .708.708L8 2.207l6.646 6.647a.5.5 0 0 0 .708-.708L13 5.793V2.5a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5v1.293z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m8 3.293 4.712 4.712A4.5 4.5 0 0 0 8.758 15H3.5A1.5 1.5 0 0 1 2 13.5V9.293z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M12.5 16a3.5 3.5 0 1 0 0-7 3.5 3.5 0 0 0 0 7m1.679-4.493-1.335 2.226a.75.75 0 0 1-1.174.144l-.774-.773a.5.5 0 0 1 .708-.707l.547.547 1.17-1.951a.5.5 0 1 1 .858.514\"},\"child\":[]}]})(props);\n};\nexport function BsFillHouseDashFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.707 1.5a1 1 0 0 0-1.414 0L.646 8.146a.5.5 0 0 0 .708.708L8 2.207l6.646 6.647a.5.5 0 0 0 .708-.708L13 5.793V2.5a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5v1.293z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m8 3.293 4.712 4.712A4.5 4.5 0 0 0 8.758 15H3.5A1.5 1.5 0 0 1 2 13.5V9.293z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M12.5 16a3.5 3.5 0 1 0 0-7 3.5 3.5 0 0 0 0 7M11 12h3a.5.5 0 0 1 0 1h-3a.5.5 0 1 1 0-1\"},\"child\":[]}]})(props);\n};\nexport function BsFillHouseDoorFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.5 14.5v-3.505c0-.245.25-.495.5-.495h2c.25 0 .5.25.5.5v3.5a.5.5 0 0 0 .5.5h4a.5.5 0 0 0 .5-.5v-7a.5.5 0 0 0-.146-.354L13 5.793V2.5a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5v1.293L8.354 1.146a.5.5 0 0 0-.708 0l-6 6A.5.5 0 0 0 1.5 7.5v7a.5.5 0 0 0 .5.5h4a.5.5 0 0 0 .5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsFillHouseDownFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12.5 9a3.5 3.5 0 1 1 0 7 3.5 3.5 0 0 1 0-7m.354 5.854 1.5-1.5a.5.5 0 0 0-.708-.707l-.646.646V10.5a.5.5 0 0 0-1 0v2.793l-.646-.646a.5.5 0 0 0-.708.707l1.5 1.5a.5.5 0 0 0 .708 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8.707 1.5a1 1 0 0 0-1.414 0L.646 8.146a.5.5 0 0 0 .708.708L8 2.207l6.646 6.647a.5.5 0 0 0 .708-.708L13 5.793V2.5a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5v1.293z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m8 3.293 4.712 4.712A4.5 4.5 0 0 0 8.758 15H3.5A1.5 1.5 0 0 1 2 13.5V9.293z\"},\"child\":[]}]})(props);\n};\nexport function BsFillHouseExclamationFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.707 1.5a1 1 0 0 0-1.414 0L.646 8.146a.5.5 0 0 0 .708.708L8 2.207l6.646 6.647a.5.5 0 0 0 .708-.708L13 5.793V2.5a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5v1.293z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m8 3.293 4.712 4.712A4.5 4.5 0 0 0 8.758 15H3.5A1.5 1.5 0 0 1 2 13.5V9.293z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M16 12.5a3.5 3.5 0 1 1-7 0 3.5 3.5 0 0 1 7 0m-3.5-2a.5.5 0 0 0-.5.5v1.5a.5.5 0 1 0 1 0V11a.5.5 0 0 0-.5-.5m0 4a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1\"},\"child\":[]}]})(props);\n};\nexport function BsFillHouseFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.707 1.5a1 1 0 0 0-1.414 0L.646 8.146a.5.5 0 0 0 .708.708L8 2.207l6.646 6.647a.5.5 0 0 0 .708-.708L13 5.793V2.5a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5v1.293z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m8 3.293 6 6V13.5a1.5 1.5 0 0 1-1.5 1.5h-9A1.5 1.5 0 0 1 2 13.5V9.293z\"},\"child\":[]}]})(props);\n};\nexport function BsFillHouseGearFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.293 1.5a1 1 0 0 1 1.414 0L11 3.793V2.5a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v3.293l2.354 2.353a.5.5 0 0 1-.708.708L8 2.207 1.354 8.854a.5.5 0 1 1-.708-.708z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M11.07 9.047a1.5 1.5 0 0 0-1.742.26l-.02.021a1.5 1.5 0 0 0-.261 1.742 1.5 1.5 0 0 0 0 2.86 1.5 1.5 0 0 0-.12 1.07H3.5A1.5 1.5 0 0 1 2 13.5V9.293l6-6 4.724 4.724a1.5 1.5 0 0 0-1.654 1.03\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m13.158 9.608-.043-.148c-.181-.613-1.049-.613-1.23 0l-.043.148a.64.64 0 0 1-.921.382l-.136-.074c-.561-.306-1.175.308-.87.869l.075.136a.64.64 0 0 1-.382.92l-.148.045c-.613.18-.613 1.048 0 1.229l.148.043a.64.64 0 0 1 .382.921l-.074.136c-.306.561.308 1.175.869.87l.136-.075a.64.64 0 0 1 .92.382l.045.149c.18.612 1.048.612 1.229 0l.043-.15a.64.64 0 0 1 .921-.38l.136.074c.561.305 1.175-.309.87-.87l-.075-.136a.64.64 0 0 1 .382-.92l.149-.044c.612-.181.612-1.049 0-1.23l-.15-.043a.64.64 0 0 1-.38-.921l.074-.136c.305-.561-.309-1.175-.87-.87l-.136.075a.64.64 0 0 1-.92-.382ZM12.5 14a1.5 1.5 0 1 1 0-3 1.5 1.5 0 0 1 0 3\"},\"child\":[]}]})(props);\n};\nexport function BsFillHouseHeartFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.293 1.5a1 1 0 0 1 1.414 0L11 3.793V2.5a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v3.293l2.354 2.353a.5.5 0 0 1-.708.707L8 2.207 1.354 8.853a.5.5 0 1 1-.708-.707z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m14 9.293-6-6-6 6V13.5A1.5 1.5 0 0 0 3.5 15h9a1.5 1.5 0 0 0 1.5-1.5zm-6-.811c1.664-1.673 5.825 1.254 0 5.018-5.825-3.764-1.664-6.691 0-5.018\"},\"child\":[]}]})(props);\n};\nexport function BsFillHouseLockFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.707 1.5a1 1 0 0 0-1.414 0L.646 8.146a.5.5 0 0 0 .708.708L8 2.207l6.646 6.647a.5.5 0 0 0 .708-.708L13 5.793V2.5a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5v1.293z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m8 3.293 4.72 4.72a3 3 0 0 0-2.709 3.248A2 2 0 0 0 9 13v2H3.5A1.5 1.5 0 0 1 2 13.5V9.293z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M13 9a2 2 0 0 0-2 2v1a1 1 0 0 0-1 1v2a1 1 0 0 0 1 1h4a1 1 0 0 0 1-1v-2a1 1 0 0 0-1-1v-1a2 2 0 0 0-2-2m0 1a1 1 0 0 1 1 1v1h-2v-1a1 1 0 0 1 1-1\"},\"child\":[]}]})(props);\n};\nexport function BsFillHouseSlashFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.707 1.5a1 1 0 0 0-1.414 0L.646 8.146a.5.5 0 0 0 .708.708L8 2.207l6.646 6.647a.5.5 0 0 0 .708-.708L13 5.793V2.5a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5v1.293z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m8 3.293 4.712 4.712A4.5 4.5 0 0 0 8.758 15H3.5A1.5 1.5 0 0 1 2 13.5V9.293z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M13.879 10.414a2.5 2.5 0 0 0-3.465 3.465zm.707.707-3.465 3.465a2.501 2.501 0 0 0 3.465-3.465m-4.56-1.096a3.5 3.5 0 1 1 4.949 4.95 3.5 3.5 0 0 1-4.95-4.95Z\"},\"child\":[]}]})(props);\n};\nexport function BsFillHouseUpFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12.5 16a3.5 3.5 0 1 0 0-7 3.5 3.5 0 0 0 0 7m.354-5.854 1.5 1.5a.5.5 0 0 1-.708.708L13 11.707V14.5a.5.5 0 1 1-1 0v-2.793l-.646.647a.5.5 0 0 1-.708-.707l1.5-1.5a.5.5 0 0 1 .708 0Z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8.707 1.5a1 1 0 0 0-1.414 0L.646 8.146a.5.5 0 0 0 .708.708L8 2.207l6.646 6.647a.5.5 0 0 0 .708-.708L13 5.793V2.5a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5v1.293z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m8 3.293 4.712 4.712A4.5 4.5 0 0 0 8.758 15H3.5A1.5 1.5 0 0 1 2 13.5V9.293z\"},\"child\":[]}]})(props);\n};\nexport function BsFillHouseXFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.707 1.5a1 1 0 0 0-1.414 0L.646 8.146a.5.5 0 0 0 .708.708L8 2.207l6.646 6.647a.5.5 0 0 0 .708-.708L13 5.793V2.5a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5v1.293z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m8 3.293 4.712 4.712A4.5 4.5 0 0 0 8.758 15H3.5A1.5 1.5 0 0 1 2 13.5V9.293z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M12.5 16a3.5 3.5 0 1 0 0-7 3.5 3.5 0 0 0 0 7m-.646-4.854.646.647.646-.646a.5.5 0 0 1 .708.707l-.647.646.647.646a.5.5 0 0 1-.708.708l-.646-.647-.646.647a.5.5 0 0 1-.708-.707l.647-.647-.647-.646a.5.5 0 0 1 .708-.707Z\"},\"child\":[]}]})(props);\n};\nexport function BsFillHousesFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.207 1a1 1 0 0 0-1.414 0L.146 6.646a.5.5 0 0 0 .708.708L1 7.207V12.5A1.5 1.5 0 0 0 2.5 14h.55a2.5 2.5 0 0 1-.05-.5V9.415a1.5 1.5 0 0 1-.56-2.475l5.353-5.354z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8.793 2a1 1 0 0 1 1.414 0L12 3.793V2.5a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v3.293l1.854 1.853a.5.5 0 0 1-.708.708L15 8.207V13.5a1.5 1.5 0 0 1-1.5 1.5h-8A1.5 1.5 0 0 1 4 13.5V8.207l-.146.147a.5.5 0 1 1-.708-.708z\"},\"child\":[]}]})(props);\n};\nexport function BsFillImageFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M.002 3a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v10a2 2 0 0 1-2 2h-12a2 2 0 0 1-2-2zm1 9v1a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V9.5l-3.777-1.947a.5.5 0 0 0-.577.093l-3.71 3.71-2.66-1.772a.5.5 0 0 0-.63.062zm5-6.5a1.5 1.5 0 1 0-3 0 1.5 1.5 0 0 0 3 0\"},\"child\":[]}]})(props);\n};\nexport function BsFillInboxFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4.98 4a.5.5 0 0 0-.39.188L1.54 8H6a.5.5 0 0 1 .5.5 1.5 1.5 0 1 0 3 0A.5.5 0 0 1 10 8h4.46l-3.05-3.812A.5.5 0 0 0 11.02 4zm-1.17-.437A1.5 1.5 0 0 1 4.98 3h6.04a1.5 1.5 0 0 1 1.17.563l3.7 4.625a.5.5 0 0 1 .106.374l-.39 3.124A1.5 1.5 0 0 1 14.117 13H1.883a1.5 1.5 0 0 1-1.489-1.314l-.39-3.124a.5.5 0 0 1 .106-.374z\"},\"child\":[]}]})(props);\n};\nexport function BsFillInboxesFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4.98 1a.5.5 0 0 0-.39.188L1.54 5H6a.5.5 0 0 1 .5.5 1.5 1.5 0 0 0 3 0A.5.5 0 0 1 10 5h4.46l-3.05-3.812A.5.5 0 0 0 11.02 1zM3.81.563A1.5 1.5 0 0 1 4.98 0h6.04a1.5 1.5 0 0 1 1.17.563l3.7 4.625a.5.5 0 0 1 .106.374l-.39 3.124A1.5 1.5 0 0 1 14.117 10H1.883A1.5 1.5 0 0 1 .394 8.686l-.39-3.124a.5.5 0 0 1 .106-.374zM.125 11.17A.5.5 0 0 1 .5 11H6a.5.5 0 0 1 .5.5 1.5 1.5 0 0 0 3 0 .5.5 0 0 1 .5-.5h5.5a.5.5 0 0 1 .496.562l-.39 3.124A1.5 1.5 0 0 1 14.117 16H1.883a1.5 1.5 0 0 1-1.489-1.314l-.39-3.124a.5.5 0 0 1 .121-.393z\"},\"child\":[]}]})(props);\n};\nexport function BsFillInfoCircleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 16A8 8 0 1 0 8 0a8 8 0 0 0 0 16m.93-9.412-1 4.705c-.07.34.029.533.304.533.194 0 .487-.07.686-.246l-.088.416c-.287.346-.92.598-1.465.598-.703 0-1.002-.422-.808-1.319l.738-3.468c.064-.293.006-.399-.287-.47l-.451-.081.082-.381 2.29-.287zM8 5.5a1 1 0 1 1 0-2 1 1 0 0 1 0 2\"},\"child\":[]}]})(props);\n};\nexport function BsFillInfoSquareFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 2a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm8.93 4.588-2.29.287-.082.38.45.083c.294.07.352.176.288.469l-.738 3.468c-.194.897.105 1.319.808 1.319.545 0 1.178-.252 1.465-.598l.088-.416c-.2.176-.492.246-.686.246-.275 0-.375-.193-.304-.533zM8 5.5a1 1 0 1 0 0-2 1 1 0 0 0 0 2\"},\"child\":[]}]})(props);\n};\nexport function BsFillJournalBookmarkFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M6 1h6v7a.5.5 0 0 1-.757.429L9 7.083 6.757 8.43A.5.5 0 0 1 6 8z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3 0h10a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2v-1h1v1a1 1 0 0 0 1 1h10a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H3a1 1 0 0 0-1 1v1H1V2a2 2 0 0 1 2-2\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M1 5v-.5a.5.5 0 0 1 1 0V5h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1zm0 3v-.5a.5.5 0 0 1 1 0V8h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1zm0 3v-.5a.5.5 0 0 1 1 0v.5h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1z\"},\"child\":[]}]})(props);\n};\nexport function BsFillKanbanFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2.5 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h11a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm5 2h1a1 1 0 0 1 1 1v3a1 1 0 0 1-1 1h-1a1 1 0 0 1-1-1V3a1 1 0 0 1 1-1m-5 1a1 1 0 0 1 1-1h1a1 1 0 0 1 1 1v7a1 1 0 0 1-1 1h-1a1 1 0 0 1-1-1zm9-1h1a1 1 0 0 1 1 1v10a1 1 0 0 1-1 1h-1a1 1 0 0 1-1-1V3a1 1 0 0 1 1-1\"},\"child\":[]}]})(props);\n};\nexport function BsFillKeyFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3.5 11.5a3.5 3.5 0 1 1 3.163-5H14L15.5 8 14 9.5l-1-1-1 1-1-1-1 1-1-1-1 1H6.663a3.5 3.5 0 0 1-3.163 2M2.5 9a1 1 0 1 0 0-2 1 1 0 0 0 0 2\"},\"child\":[]}]})(props);\n};\nexport function BsFillKeyboardFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 6a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v5a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm13 .25v.5c0 .138.112.25.25.25h.5a.25.25 0 0 0 .25-.25v-.5a.25.25 0 0 0-.25-.25h-.5a.25.25 0 0 0-.25.25M2.25 8a.25.25 0 0 0-.25.25v.5c0 .138.112.25.25.25h.5A.25.25 0 0 0 3 8.75v-.5A.25.25 0 0 0 2.75 8zM4 8.25v.5c0 .138.112.25.25.25h.5A.25.25 0 0 0 5 8.75v-.5A.25.25 0 0 0 4.75 8h-.5a.25.25 0 0 0-.25.25M6.25 8a.25.25 0 0 0-.25.25v.5c0 .138.112.25.25.25h.5A.25.25 0 0 0 7 8.75v-.5A.25.25 0 0 0 6.75 8zM8 8.25v.5c0 .138.112.25.25.25h.5A.25.25 0 0 0 9 8.75v-.5A.25.25 0 0 0 8.75 8h-.5a.25.25 0 0 0-.25.25M13.25 8a.25.25 0 0 0-.25.25v.5c0 .138.112.25.25.25h.5a.25.25 0 0 0 .25-.25v-.5a.25.25 0 0 0-.25-.25zm0 2a.25.25 0 0 0-.25.25v.5c0 .138.112.25.25.25h.5a.25.25 0 0 0 .25-.25v-.5a.25.25 0 0 0-.25-.25zm-3-2a.25.25 0 0 0-.25.25v.5c0 .138.112.25.25.25h1.5a.25.25 0 0 0 .25-.25v-.5a.25.25 0 0 0-.25-.25zm.75 2.25v.5c0 .138.112.25.25.25h.5a.25.25 0 0 0 .25-.25v-.5a.25.25 0 0 0-.25-.25h-.5a.25.25 0 0 0-.25.25M11.25 6a.25.25 0 0 0-.25.25v.5c0 .138.112.25.25.25h.5a.25.25 0 0 0 .25-.25v-.5a.25.25 0 0 0-.25-.25zM9 6.25v.5c0 .138.112.25.25.25h.5a.25.25 0 0 0 .25-.25v-.5A.25.25 0 0 0 9.75 6h-.5a.25.25 0 0 0-.25.25M7.25 6a.25.25 0 0 0-.25.25v.5c0 .138.112.25.25.25h.5A.25.25 0 0 0 8 6.75v-.5A.25.25 0 0 0 7.75 6zM5 6.25v.5c0 .138.112.25.25.25h.5A.25.25 0 0 0 6 6.75v-.5A.25.25 0 0 0 5.75 6h-.5a.25.25 0 0 0-.25.25M2.25 6a.25.25 0 0 0-.25.25v.5c0 .138.112.25.25.25h1.5A.25.25 0 0 0 4 6.75v-.5A.25.25 0 0 0 3.75 6zM2 10.25v.5c0 .138.112.25.25.25h.5a.25.25 0 0 0 .25-.25v-.5a.25.25 0 0 0-.25-.25h-.5a.25.25 0 0 0-.25.25M4.25 10a.25.25 0 0 0-.25.25v.5c0 .138.112.25.25.25h5.5a.25.25 0 0 0 .25-.25v-.5a.25.25 0 0 0-.25-.25z\"},\"child\":[]}]})(props);\n};\nexport function BsFillLampFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M5.04.303A.5.5 0 0 1 5.5 0h5c.2 0 .38.12.46.303l3 7a.5.5 0 0 1-.363.687h-.002q-.225.044-.45.081a33 33 0 0 1-4.645.425V13.5a.5.5 0 1 1-1 0V8.495a33 33 0 0 1-4.645-.425q-.225-.036-.45-.08h-.003a.5.5 0 0 1-.362-.688l3-7Z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M6.493 12.574a.5.5 0 0 1-.411.575c-.712.118-1.28.295-1.655.493a1.3 1.3 0 0 0-.37.265.3.3 0 0 0-.052.075l-.001.004-.004.01V14l.002.008.016.033a.6.6 0 0 0 .145.15c.165.13.435.27.813.395.751.25 1.82.414 3.024.414s2.273-.163 3.024-.414c.378-.126.648-.265.813-.395a.6.6 0 0 0 .146-.15l.015-.033L12 14v-.004a.3.3 0 0 0-.057-.09 1.3 1.3 0 0 0-.37-.264c-.376-.198-.943-.375-1.655-.493a.5.5 0 1 1 .164-.986c.77.127 1.452.328 1.957.594C12.5 13 13 13.4 13 14c0 .426-.26.752-.544.977-.29.228-.68.413-1.116.558-.878.293-2.059.465-3.34.465s-2.462-.172-3.34-.465c-.436-.145-.826-.33-1.116-.558C3.26 14.752 3 14.426 3 14c0-.599.5-1 .961-1.243.505-.266 1.187-.467 1.957-.594a.5.5 0 0 1 .575.411\"},\"child\":[]}]})(props);\n};\nexport function BsFillLaptopFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2.5 2A1.5 1.5 0 0 0 1 3.5V12h14V3.5A1.5 1.5 0 0 0 13.5 2zM0 12.5h16a1.5 1.5 0 0 1-1.5 1.5h-13A1.5 1.5 0 0 1 0 12.5\"},\"child\":[]}]})(props);\n};\nexport function BsFillLayersFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.765 1.559a.5.5 0 0 1 .47 0l7.5 4a.5.5 0 0 1 0 .882l-7.5 4a.5.5 0 0 1-.47 0l-7.5-4a.5.5 0 0 1 0-.882z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m2.125 8.567-1.86.992a.5.5 0 0 0 0 .882l7.5 4a.5.5 0 0 0 .47 0l7.5-4a.5.5 0 0 0 0-.882l-1.86-.992-5.17 2.756a1.5 1.5 0 0 1-1.41 0z\"},\"child\":[]}]})(props);\n};\nexport function BsFillLightbulbFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 6a6 6 0 1 1 10.174 4.31c-.203.196-.359.4-.453.619l-.762 1.769A.5.5 0 0 1 10.5 13h-5a.5.5 0 0 1-.46-.302l-.761-1.77a2 2 0 0 0-.453-.618A5.98 5.98 0 0 1 2 6m3 8.5a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1l-.224.447a1 1 0 0 1-.894.553H6.618a1 1 0 0 1-.894-.553L5.5 15a.5.5 0 0 1-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsFillLightbulbOffFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 6c0-.572.08-1.125.23-1.65l8.558 8.559A.5.5 0 0 1 10.5 13h-5a.5.5 0 0 1-.46-.302l-.761-1.77a2 2 0 0 0-.453-.618A5.98 5.98 0 0 1 2 6m10.303 4.181L3.818 1.697a6 6 0 0 1 8.484 8.484zM5 14.5a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1l-.224.447a1 1 0 0 1-.894.553H6.618a1 1 0 0 1-.894-.553L5.5 15a.5.5 0 0 1-.5-.5M2.354 1.646a.5.5 0 1 0-.708.708l12 12a.5.5 0 0 0 .708-.708z\"},\"child\":[]}]})(props);\n};\nexport function BsFillLightningChargeFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M11.251.068a.5.5 0 0 1 .227.58L9.677 6.5H13a.5.5 0 0 1 .364.843l-8 8.5a.5.5 0 0 1-.842-.49L6.323 9.5H3a.5.5 0 0 1-.364-.843l8-8.5a.5.5 0 0 1 .615-.09z\"},\"child\":[]}]})(props);\n};\nexport function BsFillLightningFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5.52.359A.5.5 0 0 1 6 0h4a.5.5 0 0 1 .474.658L8.694 6H12.5a.5.5 0 0 1 .395.807l-7 9a.5.5 0 0 1-.873-.454L6.823 9.5H3.5a.5.5 0 0 1-.48-.641z\"},\"child\":[]}]})(props);\n};\nexport function BsFillLockFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 1a2 2 0 0 1 2 2v4H6V3a2 2 0 0 1 2-2m3 6V3a3 3 0 0 0-6 0v4a2 2 0 0 0-2 2v5a2 2 0 0 0 2 2h6a2 2 0 0 0 2-2V9a2 2 0 0 0-2-2\"},\"child\":[]}]})(props);\n};\nexport function BsFillLuggageFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 1.5a.5.5 0 0 1 .5-.5h3a.5.5 0 0 1 .5.5V5h.5A1.5 1.5 0 0 1 8 6.5V7H7v-.5a.5.5 0 0 0-.5-.5h-5a.5.5 0 0 0-.5.5v7a.5.5 0 0 0 .5.5H4v1H2.5v.25a.75.75 0 0 1-1.5 0v-.335A1.5 1.5 0 0 1 0 13.5v-7A1.5 1.5 0 0 1 1.5 5H2zM3 5h2V2H3z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2.5 7a.5.5 0 0 1 .5.5v5a.5.5 0 0 1-1 0v-5a.5.5 0 0 1 .5-.5m10 1v-.5A1.5 1.5 0 0 0 11 6h-1a1.5 1.5 0 0 0-1.5 1.5V8H8v8h5V8zM10 7h1a.5.5 0 0 1 .5.5V8h-2v-.5A.5.5 0 0 1 10 7M5 9.5A1.5 1.5 0 0 1 6.5 8H7v8h-.5A1.5 1.5 0 0 1 5 14.5zm9 6.5V8h.5A1.5 1.5 0 0 1 16 9.5v5a1.5 1.5 0 0 1-1.5 1.5z\"},\"child\":[]}]})(props);\n};\nexport function BsFillLungsFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 1a.5.5 0 0 1 .5.5v5.243L9 7.1V4.72C9 3.77 9.77 3 10.72 3c.524 0 1.023.27 1.443.592.431.332.847.773 1.216 1.229.736.908 1.347 1.946 1.58 2.48.176.405.393 1.16.556 2.011.165.857.283 1.857.24 2.759-.04.867-.232 1.79-.837 2.33-.67.6-1.622.556-2.741-.004l-1.795-.897A2.5 2.5 0 0 1 9 11.264V8.329l-1-.715-1 .715V7.214c-.1 0-.202.03-.29.093l-2.5 1.786a.5.5 0 1 0 .58.814L7 8.329v2.935A2.5 2.5 0 0 1 5.618 13.5l-1.795.897c-1.12.56-2.07.603-2.741.004-.605-.54-.798-1.463-.838-2.33-.042-.902.076-1.902.24-2.759.164-.852.38-1.606.558-2.012.232-.533.843-1.571 1.579-2.479.37-.456.785-.897 1.216-1.229C4.257 3.27 4.756 3 5.28 3 6.23 3 7 3.77 7 4.72V7.1l.5-.357V1.5A.5.5 0 0 1 8 1m3.21 8.907a.5.5 0 1 0 .58-.814l-2.5-1.786A.5.5 0 0 0 9 7.214V8.33z\"},\"child\":[]}]})(props);\n};\nexport function BsFillMagnetFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M15 12h-4v3h4zM5 12H1v3h4zM0 8a8 8 0 1 1 16 0v8h-6V8a2 2 0 1 0-4 0v8H0z\"},\"child\":[]}]})(props);\n};\nexport function BsFillMapFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M16 .5a.5.5 0 0 0-.598-.49L10.5.99 5.598.01a.5.5 0 0 0-.196 0l-5 1A.5.5 0 0 0 0 1.5v14a.5.5 0 0 0 .598.49l4.902-.98 4.902.98a.5.5 0 0 0 .196 0l5-1A.5.5 0 0 0 16 14.5zM5 14.09V1.11l.5-.1.5.1v12.98l-.402-.08a.5.5 0 0 0-.196 0zm5 .8V1.91l.402.08a.5.5 0 0 0 .196 0L11 1.91v12.98l-.5.1z\"},\"child\":[]}]})(props);\n};\nexport function BsFillMarkdownFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 4a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm11.5 1a.5.5 0 0 0-.5.5v3.793L9.854 8.146a.5.5 0 1 0-.708.708l2 2a.5.5 0 0 0 .708 0l2-2a.5.5 0 0 0-.708-.708L12 9.293V5.5a.5.5 0 0 0-.5-.5M3.56 7.01h.056l1.428 3.239h.774l1.42-3.24h.056V11h1.073V5.001h-1.2l-1.71 3.894h-.039l-1.71-3.894H2.5V11h1.06z\"},\"child\":[]}]})(props);\n};\nexport function BsFillMegaphoneFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M13 2.5a1.5 1.5 0 0 1 3 0v11a1.5 1.5 0 0 1-3 0zm-1 .724c-2.067.95-4.539 1.481-7 1.656v6.237a25 25 0 0 1 1.088.085c2.053.204 4.038.668 5.912 1.56zm-8 7.841V4.934c-.68.027-1.399.043-2.008.053A2.02 2.02 0 0 0 0 7v2c0 1.106.896 1.996 1.994 2.009l.496.008a64 64 0 0 1 1.51.048m1.39 1.081q.428.032.85.078l.253 1.69a1 1 0 0 1-.983 1.187h-.548a1 1 0 0 1-.916-.599l-1.314-2.48a66 66 0 0 1 1.692.064q.491.026.966.06\"},\"child\":[]}]})(props);\n};\nexport function BsFillMenuAppFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 1.5A1.5 1.5 0 0 1 1.5 0h2A1.5 1.5 0 0 1 5 1.5v2A1.5 1.5 0 0 1 3.5 5h-2A1.5 1.5 0 0 1 0 3.5zM0 8a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v5a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm1 3v2a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1v-2zm14-1V8a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1v2zM2 8.5a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5m0 4a.5.5 0 0 1 .5-.5h6a.5.5 0 0 1 0 1h-6a.5.5 0 0 1-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsFillMenuButtonFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M1.5 0A1.5 1.5 0 0 0 0 1.5v2A1.5 1.5 0 0 0 1.5 5h8A1.5 1.5 0 0 0 11 3.5v-2A1.5 1.5 0 0 0 9.5 0zm5.927 2.427A.25.25 0 0 1 7.604 2h.792a.25.25 0 0 1 .177.427l-.396.396a.25.25 0 0 1-.354 0zM0 8a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v5a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm1 3v2a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1v-2zm14-1V8a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1v2zM2 8.5a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5m0 4a.5.5 0 0 1 .5-.5h6a.5.5 0 0 1 0 1h-6a.5.5 0 0 1-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsFillMenuButtonWideFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M1.5 0A1.5 1.5 0 0 0 0 1.5v2A1.5 1.5 0 0 0 1.5 5h13A1.5 1.5 0 0 0 16 3.5v-2A1.5 1.5 0 0 0 14.5 0zm1 2h3a.5.5 0 0 1 0 1h-3a.5.5 0 0 1 0-1m9.927.427A.25.25 0 0 1 12.604 2h.792a.25.25 0 0 1 .177.427l-.396.396a.25.25 0 0 1-.354 0zM0 8a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v5a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm1 3v2a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1v-2zm14-1V8a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1v2zM2 8.5a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5m0 4a.5.5 0 0 1 .5-.5h6a.5.5 0 0 1 0 1h-6a.5.5 0 0 1-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsFillMicFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5 3a3 3 0 0 1 6 0v5a3 3 0 0 1-6 0z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3.5 6.5A.5.5 0 0 1 4 7v1a4 4 0 0 0 8 0V7a.5.5 0 0 1 1 0v1a5 5 0 0 1-4.5 4.975V15h3a.5.5 0 0 1 0 1h-7a.5.5 0 0 1 0-1h3v-2.025A5 5 0 0 1 3 8V7a.5.5 0 0 1 .5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsFillMicMuteFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M13 8c0 .564-.094 1.107-.266 1.613l-.814-.814A4 4 0 0 0 12 8V7a.5.5 0 0 1 1 0zm-5 4c.818 0 1.578-.245 2.212-.667l.718.719a5 5 0 0 1-2.43.923V15h3a.5.5 0 0 1 0 1h-7a.5.5 0 0 1 0-1h3v-2.025A5 5 0 0 1 3 8V7a.5.5 0 0 1 1 0v1a4 4 0 0 0 4 4m3-9v4.879L5.158 2.037A3.001 3.001 0 0 1 11 3\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M9.486 10.607 5 6.12V8a3 3 0 0 0 4.486 2.607m-7.84-9.253 12 12 .708-.708-12-12z\"},\"child\":[]}]})(props);\n};\nexport function BsFillModemFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7 0a1.5 1.5 0 0 0-1.5 1.5v11a1.5 1.5 0 0 0 1.404 1.497c-.35.305-.872.678-1.628 1.056A.5.5 0 0 0 5.5 16h5a.5.5 0 0 0 .224-.947c-.756-.378-1.278-.75-1.628-1.056A1.5 1.5 0 0 0 10.5 12.5v-11A1.5 1.5 0 0 0 9 0zm1 3a.5.5 0 1 1 0-1 .5.5 0 0 1 0 1m0 2a.5.5 0 1 1 0-1 .5.5 0 0 1 0 1m.5 1.5a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0M8 9a.5.5 0 1 1 0-1 .5.5 0 0 1 0 1\"},\"child\":[]}]})(props);\n};\nexport function BsFillMoonFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6 .278a.77.77 0 0 1 .08.858 7.2 7.2 0 0 0-.878 3.46c0 4.021 3.278 7.277 7.318 7.277q.792-.001 1.533-.16a.79.79 0 0 1 .81.316.73.73 0 0 1-.031.893A8.35 8.35 0 0 1 8.344 16C3.734 16 0 12.286 0 7.71 0 4.266 2.114 1.312 5.124.06A.75.75 0 0 1 6 .278\"},\"child\":[]}]})(props);\n};\nexport function BsFillMoonStarsFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6 .278a.77.77 0 0 1 .08.858 7.2 7.2 0 0 0-.878 3.46c0 4.021 3.278 7.277 7.318 7.277q.792-.001 1.533-.16a.79.79 0 0 1 .81.316.73.73 0 0 1-.031.893A8.35 8.35 0 0 1 8.344 16C3.734 16 0 12.286 0 7.71 0 4.266 2.114 1.312 5.124.06A.75.75 0 0 1 6 .278\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M10.794 3.148a.217.217 0 0 1 .412 0l.387 1.162c.173.518.579.924 1.097 1.097l1.162.387a.217.217 0 0 1 0 .412l-1.162.387a1.73 1.73 0 0 0-1.097 1.097l-.387 1.162a.217.217 0 0 1-.412 0l-.387-1.162A1.73 1.73 0 0 0 9.31 6.593l-1.162-.387a.217.217 0 0 1 0-.412l1.162-.387a1.73 1.73 0 0 0 1.097-1.097zM13.863.099a.145.145 0 0 1 .274 0l.258.774c.115.346.386.617.732.732l.774.258a.145.145 0 0 1 0 .274l-.774.258a1.16 1.16 0 0 0-.732.732l-.258.774a.145.145 0 0 1-.274 0l-.258-.774a1.16 1.16 0 0 0-.732-.732l-.774-.258a.145.145 0 0 1 0-.274l.774-.258c.346-.115.617-.386.732-.732z\"},\"child\":[]}]})(props);\n};\nexport function BsFillMortarboardFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.211 2.047a.5.5 0 0 0-.422 0l-7.5 3.5a.5.5 0 0 0 .025.917l7.5 3a.5.5 0 0 0 .372 0L14 7.14V13a1 1 0 0 0-1 1v2h3v-2a1 1 0 0 0-1-1V6.739l.686-.275a.5.5 0 0 0 .025-.917z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4.176 9.032a.5.5 0 0 0-.656.327l-.5 1.7a.5.5 0 0 0 .294.605l4.5 1.8a.5.5 0 0 0 .372 0l4.5-1.8a.5.5 0 0 0 .294-.605l-.5-1.7a.5.5 0 0 0-.656-.327L8 10.466z\"},\"child\":[]}]})(props);\n};\nexport function BsFillMotherboardFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5 7h3V4H5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M1 2a2 2 0 0 1 2-2h11a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2v-2H.5a.5.5 0 0 1-.5-.5v-1A.5.5 0 0 1 .5 9H1V8H.5a.5.5 0 0 1-.5-.5v-1A.5.5 0 0 1 .5 6H1V5H.5a.5.5 0 0 1-.5-.5v-2A.5.5 0 0 1 .5 2zm11 .5a.5.5 0 0 0-1 0v7a.5.5 0 0 0 1 0zm2 0a.5.5 0 0 0-1 0v7a.5.5 0 0 0 1 0zM3.5 10a.5.5 0 0 0 0 1h6a.5.5 0 0 0 0-1zm0 2a.5.5 0 0 0 0 1h6a.5.5 0 0 0 0-1zM4 4h-.5a.5.5 0 0 0 0 1H4v1h-.5a.5.5 0 0 0 0 1H4a1 1 0 0 0 1 1v.5a.5.5 0 0 0 1 0V8h1v.5a.5.5 0 0 0 1 0V8a1 1 0 0 0 1-1h.5a.5.5 0 0 0 0-1H9V5h.5a.5.5 0 0 0 0-1H9a1 1 0 0 0-1-1v-.5a.5.5 0 0 0-1 0V3H6v-.5a.5.5 0 0 0-1 0V3a1 1 0 0 0-1 1m7 7.5v1a.5.5 0 0 0 .5.5h2a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-2a.5.5 0 0 0-.5.5\"},\"child\":[]}]})(props);\n};\nexport function BsFillMouseFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3 5a5 5 0 0 1 10 0v6a5 5 0 0 1-10 0zm5.5-1.5a.5.5 0 0 0-1 0v2a.5.5 0 0 0 1 0z\"},\"child\":[]}]})(props);\n};\nexport function BsFillMouse2Fill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.5.026C4.958.286 3 2.515 3 5.188V5.5h4.5zm1 0V5.5H13v-.312C13 2.515 11.042.286 8.5.026M13 6.5H3v4.313C3 13.658 5.22 16 8 16s5-2.342 5-5.188z\"},\"child\":[]}]})(props);\n};\nexport function BsFillMouse3Fill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.5.069A15 15 0 0 0 7 0q-.891.002-1.527.463c-.418.302-.717.726-.93 1.208-.386.873-.522 2.01-.54 3.206l4.497 1zM3.71 5.836 3.381 6A2.5 2.5 0 0 0 2 8.236v2.576C2 13.659 4.22 16 7 16h2c2.78 0 5-2.342 5-5.188V8.123l-9-2v.003l.008.353c.007.3.023.715.053 1.175.063.937.186 2.005.413 2.688a.5.5 0 1 1-.948.316c-.273-.817-.4-2-.462-2.937A30 30 0 0 1 4 6.003q0-.05.01-.1zM14 7.1V5.187c0-1.13-.272-2.044-.748-2.772-.474-.726-1.13-1.235-1.849-1.59A7.5 7.5 0 0 0 9.5.212v5.887l4.5 1z\"},\"child\":[]}]})(props);\n};\nexport function BsFillMusicPlayerFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 12a1 1 0 1 0 0-2 1 1 0 0 0 0 2\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm1 2h6a1 1 0 0 1 1 1v2.5a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1V3a1 1 0 0 1 1-1m3 12a3 3 0 1 1 0-6 3 3 0 0 1 0 6\"},\"child\":[]}]})(props);\n};\nexport function BsFillNodeMinusFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M16 8a5 5 0 0 1-9.975.5H4A1.5 1.5 0 0 1 2.5 10h-1A1.5 1.5 0 0 1 0 8.5v-1A1.5 1.5 0 0 1 1.5 6h1A1.5 1.5 0 0 1 4 7.5h2.025A5 5 0 0 1 16 8m-2 0a.5.5 0 0 0-.5-.5h-5a.5.5 0 0 0 0 1h5A.5.5 0 0 0 14 8\"},\"child\":[]}]})(props);\n};\nexport function BsFillNodePlusFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M11 13a5 5 0 1 0-4.975-5.5H4A1.5 1.5 0 0 0 2.5 6h-1A1.5 1.5 0 0 0 0 7.5v1A1.5 1.5 0 0 0 1.5 10h1A1.5 1.5 0 0 0 4 8.5h2.025A5 5 0 0 0 11 13m.5-7.5v2h2a.5.5 0 0 1 0 1h-2v2a.5.5 0 0 1-1 0v-2h-2a.5.5 0 0 1 0-1h2v-2a.5.5 0 0 1 1 0\"},\"child\":[]}]})(props);\n};\nexport function BsFillNutFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4.58 1a1 1 0 0 0-.868.504l-3.428 6a1 1 0 0 0 0 .992l3.428 6A1 1 0 0 0 4.58 15h6.84a1 1 0 0 0 .868-.504l3.429-6a1 1 0 0 0 0-.992l-3.429-6A1 1 0 0 0 11.42 1zm5.018 9.696a3 3 0 1 1-3-5.196 3 3 0 0 1 3 5.196\"},\"child\":[]}]})(props);\n};\nexport function BsFillNvmeFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6 7H5v2h1zm6 0H9v2h3z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 4a.5.5 0 0 0-.5.5h-1A.5.5 0 0 0 0 5v1a.5.5 0 0 0 .5.5h1a.25.25 0 0 1 0 .5h-1a.5.5 0 0 0-.5.5V11a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5.5h13.5a.5.5 0 0 0 .5-.5V9a.5.5 0 0 0-.5-.5.5.5 0 0 1 0-1A.5.5 0 0 0 16 7V4.5a.5.5 0 0 0-.5-.5zm2 2.5a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 .5.5v3a.5.5 0 0 1-.5.5h-2a.5.5 0 0 1-.5-.5zm4 0a.5.5 0 0 1 .5-.5h4a.5.5 0 0 1 .5.5v3a.5.5 0 0 1-.5.5h-4a.5.5 0 0 1-.5-.5z\"},\"child\":[]}]})(props);\n};\nexport function BsFillOctagonFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M11.107 0a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146A.5.5 0 0 1 4.893 0z\"},\"child\":[]}]})(props);\n};\nexport function BsFillOpticalAudioFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 6a3 3 0 1 1 0 6 3 3 0 0 1 0-6m1 3a1 1 0 1 0-2 0 1 1 0 0 0 2 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2.5 15a.5.5 0 0 1-.5-.5v-3.05a2.5 2.5 0 0 1 0-4.9V4.5a.5.5 0 0 1 .146-.354l2-2A.5.5 0 0 1 4.5 2h7a.5.5 0 0 1 .354.146l2 2A.5.5 0 0 1 14 4.5v2.05a2.5 2.5 0 0 1 0 4.9v3.05a.5.5 0 0 1-.5.5zM8 5a4 4 0 1 0 0 8 4 4 0 0 0 0-8\"},\"child\":[]}]})(props);\n};\nexport function BsFillPCircleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0M5.5 4.002V12h1.283V9.164h1.668C10.033 9.164 11 8.08 11 6.586c0-1.482-.955-2.584-2.538-2.584zm2.77 4.072c.893 0 1.419-.545 1.419-1.488s-.526-1.482-1.42-1.482H6.778v2.97z\"},\"child\":[]}]})(props);\n};\nexport function BsFillPSquareFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.27 8.074c.893 0 1.419-.545 1.419-1.488s-.526-1.482-1.42-1.482H6.778v2.97z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm3.5 4.002h2.962C10.045 4.002 11 5.104 11 6.586c0 1.494-.967 2.578-2.55 2.578H6.784V12H5.5z\"},\"child\":[]}]})(props);\n};\nexport function BsFillPaletteFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12.433 10.07C14.133 10.585 16 11.15 16 8a8 8 0 1 0-8 8c1.996 0 1.826-1.504 1.649-3.08-.124-1.101-.252-2.237.351-2.92.465-.527 1.42-.237 2.433.07M8 5a1.5 1.5 0 1 1 0-3 1.5 1.5 0 0 1 0 3m4.5 3a1.5 1.5 0 1 1 0-3 1.5 1.5 0 0 1 0 3M5 6.5a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0m.5 6.5a1.5 1.5 0 1 1 0-3 1.5 1.5 0 0 1 0 3\"},\"child\":[]}]})(props);\n};\nexport function BsFillPassFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M10 0a2 2 0 1 1-4 0H3.5A1.5 1.5 0 0 0 2 1.5v13A1.5 1.5 0 0 0 3.5 16h9a1.5 1.5 0 0 0 1.5-1.5v-13A1.5 1.5 0 0 0 12.5 0zM4.5 5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1 0-1m0 2h4a.5.5 0 0 1 0 1h-4a.5.5 0 0 1 0-1\"},\"child\":[]}]})(props);\n};\nexport function BsFillPassportFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 6a2 2 0 1 0 0 4 2 2 0 0 0 0-4\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 3.252a1.5 1.5 0 0 1 1.232-1.476l8-1.454A1.5 1.5 0 0 1 13 1.797v.47A2 2 0 0 1 14 4v10a2 2 0 0 1-2 2H4a2 2 0 0 1-1.51-.688 1.5 1.5 0 0 1-.49-1.11V3.253ZM5 8a3 3 0 1 0 6 0 3 3 0 0 0-6 0m0 4.5a.5.5 0 0 0 .5.5h5a.5.5 0 0 0 0-1h-5a.5.5 0 0 0-.5.5\"},\"child\":[]}]})(props);\n};\nexport function BsFillPatchCheckFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M10.067.87a2.89 2.89 0 0 0-4.134 0l-.622.638-.89-.011a2.89 2.89 0 0 0-2.924 2.924l.01.89-.636.622a2.89 2.89 0 0 0 0 4.134l.637.622-.011.89a2.89 2.89 0 0 0 2.924 2.924l.89-.01.622.636a2.89 2.89 0 0 0 4.134 0l.622-.637.89.011a2.89 2.89 0 0 0 2.924-2.924l-.01-.89.636-.622a2.89 2.89 0 0 0 0-4.134l-.637-.622.011-.89a2.89 2.89 0 0 0-2.924-2.924l-.89.01zm.287 5.984-3 3a.5.5 0 0 1-.708 0l-1.5-1.5a.5.5 0 1 1 .708-.708L7 8.793l2.646-2.647a.5.5 0 0 1 .708.708\"},\"child\":[]}]})(props);\n};\nexport function BsFillPatchExclamationFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M10.067.87a2.89 2.89 0 0 0-4.134 0l-.622.638-.89-.011a2.89 2.89 0 0 0-2.924 2.924l.01.89-.636.622a2.89 2.89 0 0 0 0 4.134l.637.622-.011.89a2.89 2.89 0 0 0 2.924 2.924l.89-.01.622.636a2.89 2.89 0 0 0 4.134 0l.622-.637.89.011a2.89 2.89 0 0 0 2.924-2.924l-.01-.89.636-.622a2.89 2.89 0 0 0 0-4.134l-.637-.622.011-.89a2.89 2.89 0 0 0-2.924-2.924l-.89.01zM8 4c.535 0 .954.462.9.995l-.35 3.507a.552.552 0 0 1-1.1 0L7.1 4.995A.905.905 0 0 1 8 4m.002 6a1 1 0 1 1 0 2 1 1 0 0 1 0-2\"},\"child\":[]}]})(props);\n};\nexport function BsFillPatchMinusFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M10.067.87a2.89 2.89 0 0 0-4.134 0l-.622.638-.89-.011a2.89 2.89 0 0 0-2.924 2.924l.01.89-.636.622a2.89 2.89 0 0 0 0 4.134l.637.622-.011.89a2.89 2.89 0 0 0 2.924 2.924l.89-.01.622.636a2.89 2.89 0 0 0 4.134 0l.622-.637.89.011a2.89 2.89 0 0 0 2.924-2.924l-.01-.89.636-.622a2.89 2.89 0 0 0 0-4.134l-.637-.622.011-.89a2.89 2.89 0 0 0-2.924-2.924l-.89.01zM6 7.5h4a.5.5 0 0 1 0 1H6a.5.5 0 0 1 0-1\"},\"child\":[]}]})(props);\n};\nexport function BsFillPatchPlusFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M10.067.87a2.89 2.89 0 0 0-4.134 0l-.622.638-.89-.011a2.89 2.89 0 0 0-2.924 2.924l.01.89-.636.622a2.89 2.89 0 0 0 0 4.134l.637.622-.011.89a2.89 2.89 0 0 0 2.924 2.924l.89-.01.622.636a2.89 2.89 0 0 0 4.134 0l.622-.637.89.011a2.89 2.89 0 0 0 2.924-2.924l-.01-.89.636-.622a2.89 2.89 0 0 0 0-4.134l-.637-.622.011-.89a2.89 2.89 0 0 0-2.924-2.924l-.89.01zM8.5 6v1.5H10a.5.5 0 0 1 0 1H8.5V10a.5.5 0 0 1-1 0V8.5H6a.5.5 0 0 1 0-1h1.5V6a.5.5 0 0 1 1 0\"},\"child\":[]}]})(props);\n};\nexport function BsFillPatchQuestionFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5.933.87a2.89 2.89 0 0 1 4.134 0l.622.638.89-.011a2.89 2.89 0 0 1 2.924 2.924l-.01.89.636.622a2.89 2.89 0 0 1 0 4.134l-.637.622.011.89a2.89 2.89 0 0 1-2.924 2.924l-.89-.01-.622.636a2.89 2.89 0 0 1-4.134 0l-.622-.637-.89.011a2.89 2.89 0 0 1-2.924-2.924l.01-.89-.636-.622a2.89 2.89 0 0 1 0-4.134l.637-.622-.011-.89a2.89 2.89 0 0 1 2.924-2.924l.89.01zM7.002 11a1 1 0 1 0 2 0 1 1 0 0 0-2 0m1.602-2.027c.04-.534.198-.815.846-1.26.674-.475 1.05-1.09 1.05-1.986 0-1.325-.92-2.227-2.262-2.227-1.02 0-1.792.492-2.1 1.29A1.7 1.7 0 0 0 6 5.48c0 .393.203.64.545.64.272 0 .455-.147.564-.51.158-.592.525-.915 1.074-.915.61 0 1.03.446 1.03 1.084 0 .563-.208.885-.822 1.325-.619.433-.926.914-.926 1.64v.111c0 .428.208.745.585.745.336 0 .504-.24.554-.627\"},\"child\":[]}]})(props);\n};\nexport function BsFillPauseBtnFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 12V4a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2m6.25-7C5.56 5 5 5.56 5 6.25v3.5a1.25 1.25 0 1 0 2.5 0v-3.5C7.5 5.56 6.94 5 6.25 5m3.5 0c-.69 0-1.25.56-1.25 1.25v3.5a1.25 1.25 0 1 0 2.5 0v-3.5C11 5.56 10.44 5 9.75 5\"},\"child\":[]}]})(props);\n};\nexport function BsFillPauseCircleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0M6.25 5C5.56 5 5 5.56 5 6.25v3.5a1.25 1.25 0 1 0 2.5 0v-3.5C7.5 5.56 6.94 5 6.25 5m3.5 0c-.69 0-1.25.56-1.25 1.25v3.5a1.25 1.25 0 1 0 2.5 0v-3.5C11 5.56 10.44 5 9.75 5\"},\"child\":[]}]})(props);\n};\nexport function BsFillPauseFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5.5 3.5A1.5 1.5 0 0 1 7 5v6a1.5 1.5 0 0 1-3 0V5a1.5 1.5 0 0 1 1.5-1.5m5 0A1.5 1.5 0 0 1 12 5v6a1.5 1.5 0 0 1-3 0V5a1.5 1.5 0 0 1 1.5-1.5\"},\"child\":[]}]})(props);\n};\nexport function BsFillPeaceFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M14 13.292A8 8 0 0 0 8.5.015v7.778zm-.708.708L8.5 9.206v6.778a7.97 7.97 0 0 0 4.792-1.986zM7.5 15.985V9.207L2.708 14A7.97 7.97 0 0 0 7.5 15.985M2 13.292A8 8 0 0 1 7.5.015v7.778z\"},\"child\":[]}]})(props);\n};\nexport function BsFillPenFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m13.498.795.149-.149a1.207 1.207 0 1 1 1.707 1.708l-.149.148a1.5 1.5 0 0 1-.059 2.059L4.854 14.854a.5.5 0 0 1-.233.131l-4 1a.5.5 0 0 1-.606-.606l1-4a.5.5 0 0 1 .131-.232l9.642-9.642a.5.5 0 0 0-.642.056L6.854 4.854a.5.5 0 1 1-.708-.708L9.44.854A1.5 1.5 0 0 1 11.5.796a1.5 1.5 0 0 1 1.998-.001\"},\"child\":[]}]})(props);\n};\nexport function BsFillPencilFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12.854.146a.5.5 0 0 0-.707 0L10.5 1.793 14.207 5.5l1.647-1.646a.5.5 0 0 0 0-.708zm.646 6.061L9.793 2.5 3.293 9H3.5a.5.5 0 0 1 .5.5v.5h.5a.5.5 0 0 1 .5.5v.5h.5a.5.5 0 0 1 .5.5v.5h.5a.5.5 0 0 1 .5.5v.207zm-7.468 7.468A.5.5 0 0 1 6 13.5V13h-.5a.5.5 0 0 1-.5-.5V12h-.5a.5.5 0 0 1-.5-.5V11h-.5a.5.5 0 0 1-.5-.5V10h-.5a.5.5 0 0 1-.175-.032l-.179.178a.5.5 0 0 0-.11.168l-2 5a.5.5 0 0 0 .65.65l5-2a.5.5 0 0 0 .168-.11z\"},\"child\":[]}]})(props);\n};\nexport function BsFillPentagonFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.685.256a.5.5 0 0 1 .63 0l7.421 6.03a.5.5 0 0 1 .162.538l-2.788 8.827a.5.5 0 0 1-.476.349H3.366a.5.5 0 0 1-.476-.35L.102 6.825a.5.5 0 0 1 .162-.538l7.42-6.03Z\"},\"child\":[]}]})(props);\n};\nexport function BsFillPeopleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7 14s-1 0-1-1 1-4 5-4 5 3 5 4-1 1-1 1zm4-6a3 3 0 1 0 0-6 3 3 0 0 0 0 6m-5.784 6A2.24 2.24 0 0 1 5 13c0-1.355.68-2.75 1.936-3.72A6.3 6.3 0 0 0 5 9c-4 0-5 3-5 4s1 1 1 1zM4.5 8a2.5 2.5 0 1 0 0-5 2.5 2.5 0 0 0 0 5\"},\"child\":[]}]})(props);\n};\nexport function BsFillPersonBadgeFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 2a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2zm4.5 0a.5.5 0 0 0 0 1h3a.5.5 0 0 0 0-1zM8 11a3 3 0 1 0 0-6 3 3 0 0 0 0 6m5 2.755C12.146 12.825 10.623 12 8 12s-4.146.826-5 1.755V14a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsFillPersonCheckFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M15.854 5.146a.5.5 0 0 1 0 .708l-3 3a.5.5 0 0 1-.708 0l-1.5-1.5a.5.5 0 0 1 .708-.708L12.5 7.793l2.646-2.647a.5.5 0 0 1 .708 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M1 14s-1 0-1-1 1-4 6-4 6 3 6 4-1 1-1 1zm5-6a3 3 0 1 0 0-6 3 3 0 0 0 0 6\"},\"child\":[]}]})(props);\n};\nexport function BsFillPersonDashFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M11 7.5a.5.5 0 0 1 .5-.5h4a.5.5 0 0 1 0 1h-4a.5.5 0 0 1-.5-.5\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M1 14s-1 0-1-1 1-4 6-4 6 3 6 4-1 1-1 1zm5-6a3 3 0 1 0 0-6 3 3 0 0 0 0 6\"},\"child\":[]}]})(props);\n};\nexport function BsFillPersonFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3 14s-1 0-1-1 1-4 6-4 6 3 6 4-1 1-1 1zm5-6a3 3 0 1 0 0-6 3 3 0 0 0 0 6\"},\"child\":[]}]})(props);\n};\nexport function BsFillPersonLinesFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6 8a3 3 0 1 0 0-6 3 3 0 0 0 0 6m-5 6s-1 0-1-1 1-4 6-4 6 3 6 4-1 1-1 1zM11 3.5a.5.5 0 0 1 .5-.5h4a.5.5 0 0 1 0 1h-4a.5.5 0 0 1-.5-.5m.5 2.5a.5.5 0 0 0 0 1h4a.5.5 0 0 0 0-1zm2 3a.5.5 0 0 0 0 1h2a.5.5 0 0 0 0-1zm0 3a.5.5 0 0 0 0 1h2a.5.5 0 0 0 0-1z\"},\"child\":[]}]})(props);\n};\nexport function BsFillPersonPlusFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M1 14s-1 0-1-1 1-4 6-4 6 3 6 4-1 1-1 1zm5-6a3 3 0 1 0 0-6 3 3 0 0 0 0 6\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M13.5 5a.5.5 0 0 1 .5.5V7h1.5a.5.5 0 0 1 0 1H14v1.5a.5.5 0 0 1-1 0V8h-1.5a.5.5 0 0 1 0-1H13V5.5a.5.5 0 0 1 .5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsFillPersonVcardFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 4a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm9 1.5a.5.5 0 0 0 .5.5h4a.5.5 0 0 0 0-1h-4a.5.5 0 0 0-.5.5M9 8a.5.5 0 0 0 .5.5h4a.5.5 0 0 0 0-1h-4A.5.5 0 0 0 9 8m1 2.5a.5.5 0 0 0 .5.5h3a.5.5 0 0 0 0-1h-3a.5.5 0 0 0-.5.5m-1 2C9 10.567 7.21 9 5 9c-2.086 0-3.8 1.398-3.984 3.181A1 1 0 0 0 2 13h6.96q.04-.245.04-.5M7 6a2 2 0 1 0-4 0 2 2 0 0 0 4 0\"},\"child\":[]}]})(props);\n};\nexport function BsFillPersonXFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M1 14s-1 0-1-1 1-4 6-4 6 3 6 4-1 1-1 1zm5-6a3 3 0 1 0 0-6 3 3 0 0 0 0 6m6.146-2.854a.5.5 0 0 1 .708 0L14 6.293l1.146-1.147a.5.5 0 0 1 .708.708L14.707 7l1.147 1.146a.5.5 0 0 1-.708.708L14 7.707l-1.146 1.147a.5.5 0 0 1-.708-.708L13.293 7l-1.147-1.146a.5.5 0 0 1 0-.708\"},\"child\":[]}]})(props);\n};\nexport function BsFillPhoneFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3 2a2 2 0 0 1 2-2h6a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2zm6 11a1 1 0 1 0-2 0 1 1 0 0 0 2 0\"},\"child\":[]}]})(props);\n};\nexport function BsFillPhoneLandscapeFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 12.5a2 2 0 0 1-2-2v-6a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v6a2 2 0 0 1-2 2zm11-6a1 1 0 1 0 0 2 1 1 0 0 0 0-2\"},\"child\":[]}]})(props);\n};\nexport function BsFillPhoneVibrateFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4 4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2zm5 7a1 1 0 1 0-2 0 1 1 0 0 0 2 0M1.807 4.734a.5.5 0 1 0-.884-.468A8 8 0 0 0 0 8c0 1.347.334 2.618.923 3.734a.5.5 0 1 0 .884-.468A7 7 0 0 1 1 8c0-1.18.292-2.292.807-3.266m13.27-.468a.5.5 0 0 0-.884.468C14.708 5.708 15 6.819 15 8c0 1.18-.292 2.292-.807 3.266a.5.5 0 0 0 .884.468A8 8 0 0 0 16 8a8 8 0 0 0-.923-3.734M3.34 6.182a.5.5 0 1 0-.93-.364A6 6 0 0 0 2 8c0 .769.145 1.505.41 2.182a.5.5 0 1 0 .93-.364A5 5 0 0 1 3 8c0-.642.12-1.255.34-1.818m10.25-.364a.5.5 0 0 0-.93.364c.22.563.34 1.176.34 1.818s-.12 1.255-.34 1.818a.5.5 0 0 0 .93.364C13.856 9.505 14 8.769 14 8s-.145-1.505-.41-2.182\"},\"child\":[]}]})(props);\n};\nexport function BsFillPieChartFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M15.985 8.5H8.207l-5.5 5.5a8 8 0 0 0 13.277-5.5zM2 13.292A8 8 0 0 1 7.5.015v7.778zM8.5.015V7.5h7.485A8 8 0 0 0 8.5.015\"},\"child\":[]}]})(props);\n};\nexport function BsFillPiggyBankFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.964 1.527c-2.977 0-5.571 1.704-6.32 4.125h-.55A1 1 0 0 0 .11 6.824l.254 1.46a1.5 1.5 0 0 0 1.478 1.243h.263c.3.513.688.978 1.145 1.382l-.729 2.477a.5.5 0 0 0 .48.641h2a.5.5 0 0 0 .471-.332l.482-1.351c.635.173 1.31.267 2.011.267.707 0 1.388-.095 2.028-.272l.543 1.372a.5.5 0 0 0 .465.316h2a.5.5 0 0 0 .478-.645l-.761-2.506C13.81 9.895 14.5 8.559 14.5 7.069q0-.218-.02-.431c.261-.11.508-.266.705-.444.315.306.815.306.815-.417 0 .223-.5.223-.461-.026a1 1 0 0 0 .09-.255.7.7 0 0 0-.202-.645.58.58 0 0 0-.707-.098.74.74 0 0 0-.375.562c-.024.243.082.48.32.654a2 2 0 0 1-.259.153c-.534-2.664-3.284-4.595-6.442-4.595m7.173 3.876a.6.6 0 0 1-.098.21l-.044-.025c-.146-.09-.157-.175-.152-.223a.24.24 0 0 1 .117-.173c.049-.027.08-.021.113.012a.2.2 0 0 1 .064.199m-8.999-.65a.5.5 0 1 1-.276-.96A7.6 7.6 0 0 1 7.964 3.5c.763 0 1.497.11 2.18.315a.5.5 0 1 1-.287.958A6.6 6.6 0 0 0 7.964 4.5c-.64 0-1.255.09-1.826.254ZM5 6.25a.75.75 0 1 1-1.5 0 .75.75 0 0 1 1.5 0\"},\"child\":[]}]})(props);\n};\nexport function BsFillPinAngleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.828.722a.5.5 0 0 1 .354.146l4.95 4.95a.5.5 0 0 1 0 .707c-.48.48-1.072.588-1.503.588-.177 0-.335-.018-.46-.039l-3.134 3.134a6 6 0 0 1 .16 1.013c.046.702-.032 1.687-.72 2.375a.5.5 0 0 1-.707 0l-2.829-2.828-3.182 3.182c-.195.195-1.219.902-1.414.707s.512-1.22.707-1.414l3.182-3.182-2.828-2.829a.5.5 0 0 1 0-.707c.688-.688 1.673-.767 2.375-.72a6 6 0 0 1 1.013.16l3.134-3.133a3 3 0 0 1-.04-.461c0-.43.108-1.022.589-1.503a.5.5 0 0 1 .353-.146\"},\"child\":[]}]})(props);\n};\nexport function BsFillPinFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4.146.146A.5.5 0 0 1 4.5 0h7a.5.5 0 0 1 .5.5c0 .68-.342 1.174-.646 1.479-.126.125-.25.224-.354.298v4.431l.078.048c.203.127.476.314.751.555C12.36 7.775 13 8.527 13 9.5a.5.5 0 0 1-.5.5h-4v4.5c0 .276-.224 1.5-.5 1.5s-.5-1.224-.5-1.5V10h-4a.5.5 0 0 1-.5-.5c0-.973.64-1.725 1.17-2.189A6 6 0 0 1 5 6.708V2.277a3 3 0 0 1-.354-.298C4.342 1.674 4 1.179 4 .5a.5.5 0 0 1 .146-.354\"},\"child\":[]}]})(props);\n};\nexport function BsFillPinMapFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M3.1 11.2a.5.5 0 0 1 .4-.2H6a.5.5 0 0 1 0 1H3.75L1.5 15h13l-2.25-3H10a.5.5 0 0 1 0-1h2.5a.5.5 0 0 1 .4.2l3 4a.5.5 0 0 1-.4.8H.5a.5.5 0 0 1-.4-.8z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M4 4a4 4 0 1 1 4.5 3.969V13.5a.5.5 0 0 1-1 0V7.97A4 4 0 0 1 4 3.999z\"},\"child\":[]}]})(props);\n};\nexport function BsFillPipFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M1.5 2A1.5 1.5 0 0 0 0 3.5v9A1.5 1.5 0 0 0 1.5 14h13a1.5 1.5 0 0 0 1.5-1.5v-9A1.5 1.5 0 0 0 14.5 2zm7 6h5a.5.5 0 0 1 .5.5v3a.5.5 0 0 1-.5.5h-5a.5.5 0 0 1-.5-.5v-3a.5.5 0 0 1 .5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsFillPlayBtnFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 12V4a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2m6.79-6.907A.5.5 0 0 0 6 5.5v5a.5.5 0 0 0 .79.407l3.5-2.5a.5.5 0 0 0 0-.814z\"},\"child\":[]}]})(props);\n};\nexport function BsFillPlayCircleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0M6.79 5.093A.5.5 0 0 0 6 5.5v5a.5.5 0 0 0 .79.407l3.5-2.5a.5.5 0 0 0 0-.814z\"},\"child\":[]}]})(props);\n};\nexport function BsFillPlayFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m11.596 8.697-6.363 3.692c-.54.313-1.233-.066-1.233-.697V4.308c0-.63.692-1.01 1.233-.696l6.363 3.692a.802.802 0 0 1 0 1.393\"},\"child\":[]}]})(props);\n};\nexport function BsFillPlugFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6 0a.5.5 0 0 1 .5.5V3h3V.5a.5.5 0 0 1 1 0V3h1a.5.5 0 0 1 .5.5v3A3.5 3.5 0 0 1 8.5 10c-.002.434-.01.845-.04 1.22-.041.514-.126 1.003-.317 1.424a2.08 2.08 0 0 1-.97 1.028C6.725 13.9 6.169 14 5.5 14c-.998 0-1.61.33-1.974.718A1.92 1.92 0 0 0 3 16H2c0-.616.232-1.367.797-1.968C3.374 13.42 4.261 13 5.5 13c.581 0 .962-.088 1.218-.219.241-.123.4-.3.514-.55.121-.266.193-.621.23-1.09.027-.34.035-.718.037-1.141A3.5 3.5 0 0 1 4 6.5v-3a.5.5 0 0 1 .5-.5h1V.5A.5.5 0 0 1 6 0\"},\"child\":[]}]})(props);\n};\nexport function BsFillPlusCircleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0M8.5 4.5a.5.5 0 0 0-1 0v3h-3a.5.5 0 0 0 0 1h3v3a.5.5 0 0 0 1 0v-3h3a.5.5 0 0 0 0-1h-3z\"},\"child\":[]}]})(props);\n};\nexport function BsFillPlusSquareFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm6.5 4.5v3h3a.5.5 0 0 1 0 1h-3v3a.5.5 0 0 1-1 0v-3h-3a.5.5 0 0 1 0-1h3v-3a.5.5 0 0 1 1 0\"},\"child\":[]}]})(props);\n};\nexport function BsFillPostageFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4.5 3a.5.5 0 0 0-.5.5v9a.5.5 0 0 0 .5.5h7a.5.5 0 0 0 .5-.5v-9a.5.5 0 0 0-.5-.5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3.5 1a1 1 0 0 0 1-1h1a1 1 0 0 0 2 0h1a1 1 0 0 0 2 0h1a1 1 0 1 0 2 0H15v1a1 1 0 1 0 0 2v1a1 1 0 1 0 0 2v1a1 1 0 1 0 0 2v1a1 1 0 1 0 0 2v1a1 1 0 1 0 0 2v1h-1.5a1 1 0 1 0-2 0h-1a1 1 0 1 0-2 0h-1a1 1 0 1 0-2 0h-1a1 1 0 1 0-2 0H1v-1a1 1 0 1 0 0-2v-1a1 1 0 1 0 0-2V9a1 1 0 1 0 0-2V6a1 1 0 0 0 0-2V3a1 1 0 0 0 0-2V0h1.5a1 1 0 0 0 1 1M3 3v10a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V3a1 1 0 0 0-1-1H4a1 1 0 0 0-1 1\"},\"child\":[]}]})(props);\n};\nexport function BsFillPostageHeartFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4.5 3a.5.5 0 0 0-.5.5v9a.5.5 0 0 0 .5.5h7a.5.5 0 0 0 .5-.5v-9a.5.5 0 0 0-.5-.5zM8 11C2.175 7.236 6.336 4.31 8 5.982 9.664 4.309 13.825 7.236 8 11\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4.5 0a1 1 0 0 1-2 0H1v1a1 1 0 0 1 0 2v1a1 1 0 0 1 0 2v1a1 1 0 0 1 0 2v1a1 1 0 1 1 0 2v1a1 1 0 1 1 0 2v1h1.5a1 1 0 1 1 2 0h1a1 1 0 1 1 2 0h1a1 1 0 1 1 2 0h1a1 1 0 1 1 2 0H15v-1a1 1 0 1 1 0-2v-1a1 1 0 1 1 0-2V9a1 1 0 1 1 0-2V6a1 1 0 1 1 0-2V3a1 1 0 1 1 0-2V0h-1.5a1 1 0 1 1-2 0h-1a1 1 0 1 1-2 0h-1a1 1 0 0 1-2 0zM4 14a1 1 0 0 1-1-1V3a1 1 0 0 1 1-1h8a1 1 0 0 1 1 1v10a1 1 0 0 1-1 1z\"},\"child\":[]}]})(props);\n};\nexport function BsFillPostcardFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M11 8h2V6h-2z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M0 4a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm8.5.5a.5.5 0 0 0-1 0v7a.5.5 0 0 0 1 0zM2 5.5a.5.5 0 0 0 .5.5H6a.5.5 0 0 0 0-1H2.5a.5.5 0 0 0-.5.5M2.5 7a.5.5 0 0 0 0 1H6a.5.5 0 0 0 0-1zM2 9.5a.5.5 0 0 0 .5.5H6a.5.5 0 0 0 0-1H2.5a.5.5 0 0 0-.5.5m8-4v3a.5.5 0 0 0 .5.5h3a.5.5 0 0 0 .5-.5v-3a.5.5 0 0 0-.5-.5h-3a.5.5 0 0 0-.5.5\"},\"child\":[]}]})(props);\n};\nexport function BsFillPostcardHeartFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 2a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2zm6 2.5v7a.5.5 0 0 1-1 0v-7a.5.5 0 0 1 1 0m3.5.878c1.482-1.42 4.795 1.392 0 4.622-4.795-3.23-1.482-6.043 0-4.622M2 5.5a.5.5 0 0 1 .5-.5h3a.5.5 0 0 1 0 1h-3a.5.5 0 0 1-.5-.5m0 2a.5.5 0 0 1 .5-.5h3a.5.5 0 0 1 0 1h-3a.5.5 0 0 1-.5-.5m0 2a.5.5 0 0 1 .5-.5h3a.5.5 0 0 1 0 1h-3a.5.5 0 0 1-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsFillPrinterFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5 1a2 2 0 0 0-2 2v1h10V3a2 2 0 0 0-2-2zm6 8H5a1 1 0 0 0-1 1v3a1 1 0 0 0 1 1h6a1 1 0 0 0 1-1v-3a1 1 0 0 0-1-1\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M0 7a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v3a2 2 0 0 1-2 2h-1v-2a2 2 0 0 0-2-2H5a2 2 0 0 0-2 2v2H2a2 2 0 0 1-2-2zm2.5 1a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1\"},\"child\":[]}]})(props);\n};\nexport function BsFillProjectorFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 4a2 2 0 0 0-2 2v3a2 2 0 0 0 2 2 1 1 0 0 0 1 1h1a1 1 0 0 0 1-1h6a1 1 0 0 0 1 1h1a1 1 0 0 0 1-1 2 2 0 0 0 2-2V6a2 2 0 0 0-2-2zm.5 2h4a.5.5 0 0 1 0 1h-4a.5.5 0 0 1 0-1M14 7.5a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0m-12 1a.5.5 0 0 1 .5-.5h4a.5.5 0 0 1 0 1h-4a.5.5 0 0 1-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsFillPuzzleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3.112 3.645A1.5 1.5 0 0 1 4.605 2H7a.5.5 0 0 1 .5.5v.382c0 .696-.497 1.182-.872 1.469a.5.5 0 0 0-.115.118l-.012.025L6.5 4.5v.003l.003.01q.005.015.036.053a.9.9 0 0 0 .27.194C7.09 4.9 7.51 5 8 5c.492 0 .912-.1 1.19-.24a.9.9 0 0 0 .271-.194.2.2 0 0 0 .036-.054l.003-.01v-.008l-.012-.025a.5.5 0 0 0-.115-.118c-.375-.287-.872-.773-.872-1.469V2.5A.5.5 0 0 1 9 2h2.395a1.5 1.5 0 0 1 1.493 1.645L12.645 6.5h.237c.195 0 .42-.147.675-.48.21-.274.528-.52.943-.52.568 0 .947.447 1.154.862C15.877 6.807 16 7.387 16 8s-.123 1.193-.346 1.638c-.207.415-.586.862-1.154.862-.415 0-.733-.246-.943-.52-.255-.333-.48-.48-.675-.48h-.237l.243 2.855A1.5 1.5 0 0 1 11.395 14H9a.5.5 0 0 1-.5-.5v-.382c0-.696.497-1.182.872-1.469a.5.5 0 0 0 .115-.118l.012-.025.001-.006v-.003l-.003-.01a.2.2 0 0 0-.036-.053.9.9 0 0 0-.27-.194C8.91 11.1 8.49 11 8 11s-.912.1-1.19.24a.9.9 0 0 0-.271.194.2.2 0 0 0-.036.054l-.003.01v.002l.001.006.012.025c.016.027.05.068.115.118.375.287.872.773.872 1.469v.382a.5.5 0 0 1-.5.5H4.605a1.5 1.5 0 0 1-1.493-1.645L3.356 9.5h-.238c-.195 0-.42.147-.675.48-.21.274-.528.52-.943.52-.568 0-.947-.447-1.154-.862C.123 9.193 0 8.613 0 8s.123-1.193.346-1.638C.553 5.947.932 5.5 1.5 5.5c.415 0 .733.246.943.52.255.333.48.48.675.48h.238z\"},\"child\":[]}]})(props);\n};\nexport function BsFillQuestionCircleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0M5.496 6.033h.825c.138 0 .248-.113.266-.25.09-.656.54-1.134 1.342-1.134.686 0 1.314.343 1.314 1.168 0 .635-.374.927-.965 1.371-.673.489-1.206 1.06-1.168 1.987l.003.217a.25.25 0 0 0 .25.246h.811a.25.25 0 0 0 .25-.25v-.105c0-.718.273-.927 1.01-1.486.609-.463 1.244-.977 1.244-2.056 0-1.511-1.276-2.241-2.673-2.241-1.267 0-2.655.59-2.75 2.286a.237.237 0 0 0 .241.247m2.325 6.443c.61 0 1.029-.394 1.029-.927 0-.552-.42-.94-1.029-.94-.584 0-1.009.388-1.009.94 0 .533.425.927 1.01.927z\"},\"child\":[]}]})(props);\n};\nexport function BsFillQuestionDiamondFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.05.435c-.58-.58-1.52-.58-2.1 0L.436 6.95c-.58.58-.58 1.519 0 2.098l6.516 6.516c.58.58 1.519.58 2.098 0l6.516-6.516c.58-.58.58-1.519 0-2.098zM5.495 6.033a.237.237 0 0 1-.24-.247C5.35 4.091 6.737 3.5 8.005 3.5c1.396 0 2.672.73 2.672 2.24 0 1.08-.635 1.594-1.244 2.057-.737.559-1.01.768-1.01 1.486v.105a.25.25 0 0 1-.25.25h-.81a.25.25 0 0 1-.25-.246l-.004-.217c-.038-.927.495-1.498 1.168-1.987.59-.444.965-.736.965-1.371 0-.825-.628-1.168-1.314-1.168-.803 0-1.253.478-1.342 1.134-.018.137-.128.25-.266.25zm2.325 6.443c-.584 0-1.009-.394-1.009-.927 0-.552.425-.94 1.01-.94.609 0 1.028.388 1.028.94 0 .533-.42.927-1.029.927\"},\"child\":[]}]})(props);\n};\nexport function BsFillQuestionOctagonFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M11.46.146A.5.5 0 0 0 11.107 0H4.893a.5.5 0 0 0-.353.146L.146 4.54A.5.5 0 0 0 0 4.893v6.214a.5.5 0 0 0 .146.353l4.394 4.394a.5.5 0 0 0 .353.146h6.214a.5.5 0 0 0 .353-.146l4.394-4.394a.5.5 0 0 0 .146-.353V4.893a.5.5 0 0 0-.146-.353zM5.496 6.033a.237.237 0 0 1-.24-.247C5.35 4.091 6.737 3.5 8.005 3.5c1.396 0 2.672.73 2.672 2.24 0 1.08-.635 1.594-1.244 2.057-.737.559-1.01.768-1.01 1.486v.105a.25.25 0 0 1-.25.25h-.81a.25.25 0 0 1-.25-.246l-.004-.217c-.038-.927.495-1.498 1.168-1.987.59-.444.965-.736.965-1.371 0-.825-.628-1.168-1.314-1.168-.803 0-1.253.478-1.342 1.134-.018.137-.128.25-.266.25h-.825zm2.325 6.443c-.584 0-1.009-.394-1.009-.927 0-.552.425-.94 1.01-.94.609 0 1.028.388 1.028.94 0 .533-.42.927-1.029.927\"},\"child\":[]}]})(props);\n};\nexport function BsFillQuestionSquareFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm3.496 6.033a.237.237 0 0 1-.24-.247C5.35 4.091 6.737 3.5 8.005 3.5c1.396 0 2.672.73 2.672 2.24 0 1.08-.635 1.594-1.244 2.057-.737.559-1.01.768-1.01 1.486v.105a.25.25 0 0 1-.25.25h-.81a.25.25 0 0 1-.25-.246l-.004-.217c-.038-.927.495-1.498 1.168-1.987.59-.444.965-.736.965-1.371 0-.825-.628-1.168-1.314-1.168-.803 0-1.253.478-1.342 1.134-.018.137-.128.25-.266.25h-.825zm2.325 6.443c-.584 0-1.009-.394-1.009-.927 0-.552.425-.94 1.01-.94.609 0 1.028.388 1.028.94 0 .533-.42.927-1.029.927\"},\"child\":[]}]})(props);\n};\nexport function BsFillRCircleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0M5.5 4.002V12h1.335V8.924H8.52L9.98 12h1.52L9.856 8.701c.828-.299 1.495-1.101 1.495-2.238 0-1.488-1.03-2.461-2.74-2.461zm1.335 1.09v2.777h1.549c.995 0 1.573-.463 1.573-1.36 0-.913-.596-1.417-1.537-1.417z\"},\"child\":[]}]})(props);\n};\nexport function BsFillRSquareFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.835 5.092v2.777h1.549c.995 0 1.573-.463 1.573-1.36 0-.913-.596-1.417-1.537-1.417z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm3.5 4.002h3.11c1.71 0 2.741.973 2.741 2.46 0 1.138-.667 1.94-1.495 2.24L11.5 12H9.98L8.52 8.924H6.836V12H5.5z\"},\"child\":[]}]})(props);\n};\nexport function BsFillRecordBtnFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 12V4a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2m8-1a3 3 0 1 0 0-6 3 3 0 0 0 0 6\"},\"child\":[]}]})(props);\n};\nexport function BsFillRecordCircleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0m-8 3a3 3 0 1 0 0-6 3 3 0 0 0 0 6\"},\"child\":[]}]})(props);\n};\nexport function BsFillRecordFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M8 13A5 5 0 1 0 8 3a5 5 0 0 0 0 10\"},\"child\":[]}]})(props);\n};\nexport function BsFillRecord2Fill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M10 8a2 2 0 1 1-4 0 2 2 0 0 1 4 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8 13A5 5 0 1 0 8 3a5 5 0 0 0 0 10m0-2a3 3 0 1 1 0-6 3 3 0 0 1 0 6\"},\"child\":[]}]})(props);\n};\nexport function BsFillReplyAllFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.021 11.9 3.453 8.62a.72.72 0 0 1 0-1.238L8.021 4.1a.716.716 0 0 1 1.079.619V6c1.5 0 6 0 7 8-2.5-4.5-7-4-7-4v1.281c0 .56-.606.898-1.079.62z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M5.232 4.293a.5.5 0 0 1-.106.7L1.114 7.945l-.042.028a.147.147 0 0 0 0 .252l.042.028 4.012 2.954a.5.5 0 1 1-.593.805L.539 9.073a1.147 1.147 0 0 1 0-1.946l3.994-2.94a.5.5 0 0 1 .699.106\"},\"child\":[]}]})(props);\n};\nexport function BsFillReplyFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5.921 11.9 1.353 8.62a.72.72 0 0 1 0-1.238L5.921 4.1A.716.716 0 0 1 7 4.719V6c1.5 0 6 0 7 8-2.5-4.5-7-4-7-4v1.281c0 .56-.606.898-1.079.62z\"},\"child\":[]}]})(props);\n};\nexport function BsFillRewindBtnFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 4v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2H2a2 2 0 0 0-2 2m7.729 1.055A.5.5 0 0 1 8 5.5v1.886l3.21-2.293A.5.5 0 0 1 12 5.5v5a.5.5 0 0 1-.79.407L8 8.614V10.5a.5.5 0 0 1-.79.407l-3.5-2.5a.5.5 0 0 1 0-.814l3.5-2.5a.5.5 0 0 1 .519-.038\"},\"child\":[]}]})(props);\n};\nexport function BsFillRewindCircleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 16A8 8 0 1 0 8 0a8 8 0 0 0 0 16M7.729 5.055A.5.5 0 0 1 8 5.5v1.886l3.21-2.293A.5.5 0 0 1 12 5.5v5a.5.5 0 0 1-.79.407L8 8.614V10.5a.5.5 0 0 1-.79.407l-3.5-2.5a.5.5 0 0 1 0-.814l3.5-2.5a.5.5 0 0 1 .519-.038\"},\"child\":[]}]})(props);\n};\nexport function BsFillRewindFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.404 7.304a.802.802 0 0 0 0 1.392l6.363 3.692c.52.302 1.233-.043 1.233-.696V4.308c0-.653-.713-.998-1.233-.696z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M.404 7.304a.802.802 0 0 0 0 1.392l6.363 3.692c.52.302 1.233-.043 1.233-.696V4.308c0-.653-.713-.998-1.233-.696z\"},\"child\":[]}]})(props);\n};\nexport function BsFillRocketFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M10.175 1.991c.81 1.312 1.583 3.43 1.778 6.819l1.5 1.83A2.5 2.5 0 0 1 14 12.202V15.5a.5.5 0 0 1-.9.3l-1.125-1.5c-.166-.222-.42-.4-.752-.57-.214-.108-.414-.192-.627-.282l-.196-.083C9.7 13.793 8.85 14 8 14s-1.7-.207-2.4-.635q-.101.044-.198.084c-.211.089-.411.173-.625.281-.332.17-.586.348-.752.57L2.9 15.8a.5.5 0 0 1-.9-.3v-3.298a2.5 2.5 0 0 1 .548-1.562l.004-.005L4.049 8.81c.197-3.323.969-5.434 1.774-6.756.466-.767.94-1.262 1.31-1.57a3.7 3.7 0 0 1 .601-.41A.55.55 0 0 1 8 0c.101 0 .17.027.25.064q.056.025.145.075c.118.066.277.167.463.315.373.297.85.779 1.317 1.537M9.5 6c0-1.105-.672-2-1.5-2s-1.5.895-1.5 2S7.172 8 8 8s1.5-.895 1.5-2\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8 14.5c.5 0 .999-.046 1.479-.139L8.4 15.8a.5.5 0 0 1-.8 0l-1.079-1.439c.48.093.98.139 1.479.139\"},\"child\":[]}]})(props);\n};\nexport function BsFillRocketTakeoffFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12.17 9.53c2.307-2.592 3.278-4.684 3.641-6.218.21-.887.214-1.58.16-2.065a3.6 3.6 0 0 0-.108-.563 2 2 0 0 0-.078-.23V.453c-.073-.164-.168-.234-.352-.295a2 2 0 0 0-.16-.045 4 4 0 0 0-.57-.093c-.49-.044-1.19-.03-2.08.188-1.536.374-3.618 1.343-6.161 3.604l-2.4.238h-.006a2.55 2.55 0 0 0-1.524.734L.15 7.17a.512.512 0 0 0 .433.868l1.896-.271c.28-.04.592.013.955.132.232.076.437.16.655.248l.203.083c.196.816.66 1.58 1.275 2.195.613.614 1.376 1.08 2.191 1.277l.082.202c.089.218.173.424.249.657.118.363.172.676.132.956l-.271 1.9a.512.512 0 0 0 .867.433l2.382-2.386c.41-.41.668-.949.732-1.526zm.11-3.699c-.797.8-1.93.961-2.528.362-.598-.6-.436-1.733.361-2.532.798-.799 1.93-.96 2.528-.361s.437 1.732-.36 2.531Z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M5.205 10.787a7.6 7.6 0 0 0 1.804 1.352c-1.118 1.007-4.929 2.028-5.054 1.903-.126-.127.737-4.189 1.839-5.18.346.69.837 1.35 1.411 1.925\"},\"child\":[]}]})(props);\n};\nexport function BsFillRouterFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5.525 3.025a3.5 3.5 0 0 1 4.95 0 .5.5 0 1 0 .707-.707 4.5 4.5 0 0 0-6.364 0 .5.5 0 0 0 .707.707\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M6.94 4.44a1.5 1.5 0 0 1 2.12 0 .5.5 0 0 0 .708-.708 2.5 2.5 0 0 0-3.536 0 .5.5 0 0 0 .707.707Z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2.974 2.342a.5.5 0 1 0-.948.316L3.806 8H1.5A1.5 1.5 0 0 0 0 9.5v2A1.5 1.5 0 0 0 1.5 13H2a.5.5 0 0 0 .5.5h2A.5.5 0 0 0 5 13h6a.5.5 0 0 0 .5.5h2a.5.5 0 0 0 .5-.5h.5a1.5 1.5 0 0 0 1.5-1.5v-2A1.5 1.5 0 0 0 14.5 8h-2.306l1.78-5.342a.5.5 0 1 0-.948-.316L11.14 8H4.86zM2.5 11a.5.5 0 1 1 0-1 .5.5 0 0 1 0 1m4.5-.5a.5.5 0 1 1 1 0 .5.5 0 0 1-1 0m2.5.5a.5.5 0 1 1 0-1 .5.5 0 0 1 0 1m1.5-.5a.5.5 0 1 1 1 0 .5.5 0 0 1-1 0m2 0a.5.5 0 1 1 1 0 .5.5 0 0 1-1 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8.5 5.5a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0\"},\"child\":[]}]})(props);\n};\nexport function BsFillRssFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm1.5 2.5c5.523 0 10 4.477 10 10a1 1 0 1 1-2 0 8 8 0 0 0-8-8 1 1 0 0 1 0-2m0 4a6 6 0 0 1 6 6 1 1 0 1 1-2 0 4 4 0 0 0-4-4 1 1 0 0 1 0-2m.5 7a1.5 1.5 0 1 1 0-3 1.5 1.5 0 0 1 0 3\"},\"child\":[]}]})(props);\n};\nexport function BsFillSafeFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.778 9.414A2 2 0 1 1 6.95 6.586a2 2 0 0 1 2.828 2.828\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2.5 0A1.5 1.5 0 0 0 1 1.5V3H.5a.5.5 0 0 0 0 1H1v3.5H.5a.5.5 0 0 0 0 1H1V12H.5a.5.5 0 0 0 0 1H1v1.5A1.5 1.5 0 0 0 2.5 16h12a1.5 1.5 0 0 0 1.5-1.5v-13A1.5 1.5 0 0 0 14.5 0zm3.036 4.464 1.09 1.09a3 3 0 0 1 3.476 0l1.09-1.09a.5.5 0 1 1 .707.708l-1.09 1.09c.74 1.037.74 2.44 0 3.476l1.09 1.09a.5.5 0 1 1-.707.708l-1.09-1.09a3 3 0 0 1-3.476 0l-1.09 1.09a.5.5 0 1 1-.708-.708l1.09-1.09a3 3 0 0 1 0-3.476l-1.09-1.09a.5.5 0 1 1 .708-.708M14 6.5v3a.5.5 0 0 1-1 0v-3a.5.5 0 0 1 1 0\"},\"child\":[]}]})(props);\n};\nexport function BsFillSafe2Fill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.563 8H5.035a3.5 3.5 0 0 1 .662-1.596l1.08 1.08q-.142.24-.214.516m.921-1.223-1.08-1.08A3.5 3.5 0 0 1 8 5.035v1.528q-.277.072-.516.214M9 6.563V5.035a3.5 3.5 0 0 1 1.596.662l-1.08 1.08A2 2 0 0 0 9 6.563m1.223.921 1.08-1.08c.343.458.577 1.003.662 1.596h-1.528a2 2 0 0 0-.214-.516M10.437 9h1.528a3.5 3.5 0 0 1-.662 1.596l-1.08-1.08q.142-.24.214-.516m-.921 1.223 1.08 1.08A3.5 3.5 0 0 1 9 11.965v-1.528q.277-.072.516-.214M8 10.437v1.528a3.5 3.5 0 0 1-1.596-.662l1.08-1.08q.24.142.516.214m-1.223-.921-1.08 1.08A3.5 3.5 0 0 1 5.035 9h1.528q.072.277.214.516M7.5 8.5a1 1 0 1 1 2 0 1 1 0 0 1-2 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2.5 1A1.5 1.5 0 0 0 1 2.5V3H.5a.5.5 0 0 0 0 1H1v4H.5a.5.5 0 0 0 0 1H1v4H.5a.5.5 0 0 0 0 1H1v.5A1.5 1.5 0 0 0 2.5 16h12a1.5 1.5 0 0 0 1.5-1.5v-12A1.5 1.5 0 0 0 14.5 1zm6 3a4.5 4.5 0 1 1 0 9 4.5 4.5 0 0 1 0-9\"},\"child\":[]}]})(props);\n};\nexport function BsFillSaveFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.5 1.5A1.5 1.5 0 0 1 10 0h4a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2h6c-.314.418-.5.937-.5 1.5v7.793L4.854 6.646a.5.5 0 1 0-.708.708l3.5 3.5a.5.5 0 0 0 .708 0l3.5-3.5a.5.5 0 0 0-.708-.708L8.5 9.293z\"},\"child\":[]}]})(props);\n};\nexport function BsFillSave2Fill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.5 1.5A1.5 1.5 0 0 1 10 0h4a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2h6c-.314.418-.5.937-.5 1.5v6h-2a.5.5 0 0 0-.354.854l2.5 2.5a.5.5 0 0 0 .708 0l2.5-2.5A.5.5 0 0 0 10.5 7.5h-2z\"},\"child\":[]}]})(props);\n};\nexport function BsFillSdCardFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12.5 0H5.914a1.5 1.5 0 0 0-1.06.44L2.439 2.853A1.5 1.5 0 0 0 2 3.914V14.5A1.5 1.5 0 0 0 3.5 16h9a1.5 1.5 0 0 0 1.5-1.5v-13A1.5 1.5 0 0 0 12.5 0m-7 2.75a.75.75 0 0 1 .75.75v2a.75.75 0 0 1-1.5 0v-2a.75.75 0 0 1 .75-.75m2 0a.75.75 0 0 1 .75.75v2a.75.75 0 0 1-1.5 0v-2a.75.75 0 0 1 .75-.75m2.75.75v2a.75.75 0 0 1-1.5 0v-2a.75.75 0 0 1 1.5 0m1.25-.75a.75.75 0 0 1 .75.75v2a.75.75 0 0 1-1.5 0v-2a.75.75 0 0 1 .75-.75\"},\"child\":[]}]})(props);\n};\nexport function BsFillSearchHeartFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.5 13a6.47 6.47 0 0 0 3.845-1.258h-.001q.044.06.098.115l3.85 3.85a1 1 0 0 0 1.415-1.414l-3.85-3.85a1 1 0 0 0-.115-.1A6.47 6.47 0 0 0 13 6.5 6.5 6.5 0 0 0 6.5 0a6.5 6.5 0 1 0 0 13m0-8.518c1.664-1.673 5.825 1.254 0 5.018-5.825-3.764-1.664-6.69 0-5.018\"},\"child\":[]}]})(props);\n};\nexport function BsFillSendArrowDownFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M15.854.146a.5.5 0 0 1 .11.54L13.026 8.03A4.5 4.5 0 0 0 8 12.5c0 .5 0 1.5-.773.36l-1.59-2.498L.644 7.184l-.002-.001-.41-.261a.5.5 0 0 1 .083-.886l.452-.18.001-.001L15.314.035a.5.5 0 0 1 .54.111M6.637 10.07l7.494-7.494.471-1.178-1.178.471L5.93 9.363l.338.215a.5.5 0 0 1 .154.154z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M12.5 16a3.5 3.5 0 1 0 0-7 3.5 3.5 0 0 0 0 7m.354-1.646a.5.5 0 0 1-.722-.016l-1.149-1.25a.5.5 0 1 1 .737-.676l.28.305V11a.5.5 0 0 1 1 0v1.793l.396-.397a.5.5 0 0 1 .708.708z\"},\"child\":[]}]})(props);\n};\nexport function BsFillSendArrowUpFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M15.854.146a.5.5 0 0 1 .11.54L13.026 8.03A4.5 4.5 0 0 0 8 12.5c0 .5 0 1.5-.773.36l-1.59-2.498L.644 7.184l-.002-.001-.41-.261a.5.5 0 0 1 .083-.886l.452-.18.001-.001L15.314.035a.5.5 0 0 1 .54.111M6.637 10.07l7.494-7.494.471-1.178-1.178.471L5.93 9.363l.338.215a.5.5 0 0 1 .154.154z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M12.5 16a3.5 3.5 0 1 0 0-7 3.5 3.5 0 0 0 0 7m.354-5.354a.5.5 0 0 0-.722.016l-1.149 1.25a.5.5 0 1 0 .737.676l.28-.305V14a.5.5 0 0 0 1 0v-1.793l.396.397a.5.5 0 0 0 .708-.708z\"},\"child\":[]}]})(props);\n};\nexport function BsFillSendCheckFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M15.964.686a.5.5 0 0 0-.65-.65L.767 5.855H.766l-.452.18a.5.5 0 0 0-.082.887l.41.26.001.002 4.995 3.178 1.59 2.498C8 14 8 13 8 12.5a4.5 4.5 0 0 1 5.026-4.47zm-1.833 1.89L6.637 10.07l-.215-.338a.5.5 0 0 0-.154-.154l-.338-.215 7.494-7.494 1.178-.471z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M16 12.5a3.5 3.5 0 1 1-7 0 3.5 3.5 0 0 1 7 0m-1.993-1.679a.5.5 0 0 0-.686.172l-1.17 1.95-.547-.547a.5.5 0 0 0-.708.708l.774.773a.75.75 0 0 0 1.174-.144l1.335-2.226a.5.5 0 0 0-.172-.686\"},\"child\":[]}]})(props);\n};\nexport function BsFillSendDashFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M15.964.686a.5.5 0 0 0-.65-.65L.767 5.855H.766l-.452.18a.5.5 0 0 0-.082.887l.41.26.001.002 4.995 3.178 1.59 2.498C8 14 8 13 8 12.5a4.5 4.5 0 0 1 5.026-4.47zm-1.833 1.89L6.637 10.07l-.215-.338a.5.5 0 0 0-.154-.154l-.338-.215 7.494-7.494 1.178-.471z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M16 12.5a3.5 3.5 0 1 1-7 0 3.5 3.5 0 0 1 7 0m-5.5 0a.5.5 0 0 0 .5.5h3a.5.5 0 0 0 0-1h-3a.5.5 0 0 0-.5.5\"},\"child\":[]}]})(props);\n};\nexport function BsFillSendExclamationFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M15.964.686a.5.5 0 0 0-.65-.65L.767 5.855H.766l-.452.18a.5.5 0 0 0-.082.887l.41.26.001.002 4.995 3.178 1.59 2.498C8 14 8 13 8 12.5a4.5 4.5 0 0 1 5.026-4.47zm-1.833 1.89L6.637 10.07l-.215-.338a.5.5 0 0 0-.154-.154l-.338-.215 7.494-7.494 1.178-.471z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M12.5 16a3.5 3.5 0 1 0 0-7 3.5 3.5 0 0 0 0 7m.5-5v1.5a.5.5 0 0 1-1 0V11a.5.5 0 0 1 1 0m0 3a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0\"},\"child\":[]}]})(props);\n};\nexport function BsFillSendFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M15.964.686a.5.5 0 0 0-.65-.65L.767 5.855H.766l-.452.18a.5.5 0 0 0-.082.887l.41.26.001.002 4.995 3.178 3.178 4.995.002.002.26.41a.5.5 0 0 0 .886-.083zm-1.833 1.89L6.637 10.07l-.215-.338a.5.5 0 0 0-.154-.154l-.338-.215 7.494-7.494 1.178-.471z\"},\"child\":[]}]})(props);\n};\nexport function BsFillSendPlusFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M15.964.686a.5.5 0 0 0-.65-.65L.767 5.855H.766l-.452.18a.5.5 0 0 0-.082.887l.41.26.001.002 4.995 3.178 1.59 2.498C8 14 8 13 8 12.5a4.5 4.5 0 0 1 5.026-4.47zm-1.833 1.89L6.637 10.07l-.215-.338a.5.5 0 0 0-.154-.154l-.338-.215 7.494-7.494 1.178-.471z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M16 12.5a3.5 3.5 0 1 1-7 0 3.5 3.5 0 0 1 7 0m-3.5-2a.5.5 0 0 0-.5.5v1h-1a.5.5 0 0 0 0 1h1v1a.5.5 0 0 0 1 0v-1h1a.5.5 0 0 0 0-1h-1v-1a.5.5 0 0 0-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsFillSendSlashFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M15.964.686a.5.5 0 0 0-.65-.65L.767 5.855H.766l-.452.18a.5.5 0 0 0-.082.887l.41.26.001.002 4.995 3.178 1.59 2.498C8 14 8 13 8 12.5a4.5 4.5 0 0 1 5.026-4.47zm-1.833 1.89L6.637 10.07l-.215-.338a.5.5 0 0 0-.154-.154l-.338-.215 7.494-7.494 1.178-.471z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M14.975 10.025a3.5 3.5 0 1 0-4.95 4.95 3.5 3.5 0 0 0 4.95-4.95m-4.243.707a2.5 2.5 0 0 1 3.147-.318l-3.465 3.465a2.5 2.5 0 0 1 .318-3.147m.39 3.854 3.464-3.465a2.501 2.501 0 0 1-3.465 3.465Z\"},\"child\":[]}]})(props);\n};\nexport function BsFillSendXFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M15.964.686a.5.5 0 0 0-.65-.65L.767 5.855H.766l-.452.18a.5.5 0 0 0-.082.887l.41.26.001.002 4.995 3.178 1.59 2.498C8 14 8 13 8 12.5a4.5 4.5 0 0 1 5.026-4.47zm-1.833 1.89L6.637 10.07l-.215-.338a.5.5 0 0 0-.154-.154l-.338-.215 7.494-7.494 1.178-.471z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M16 12.5a3.5 3.5 0 1 1-7 0 3.5 3.5 0 0 1 7 0m-4.854-1.354a.5.5 0 0 0 0 .708l.647.646-.647.646a.5.5 0 0 0 .708.708l.646-.647.646.647a.5.5 0 0 0 .708-.708l-.647-.646.647-.646a.5.5 0 0 0-.708-.708l-.646.647-.646-.647a.5.5 0 0 0-.708 0\"},\"child\":[]}]})(props);\n};\nexport function BsFillShareFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M11 2.5a2.5 2.5 0 1 1 .603 1.628l-6.718 3.12a2.5 2.5 0 0 1 0 1.504l6.718 3.12a2.5 2.5 0 1 1-.488.876l-6.718-3.12a2.5 2.5 0 1 1 0-3.256l6.718-3.12A2.5 2.5 0 0 1 11 2.5\"},\"child\":[]}]})(props);\n};\nexport function BsFillShieldFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5.072.56C6.157.265 7.31 0 8 0s1.843.265 2.928.56c1.11.3 2.229.655 2.887.87a1.54 1.54 0 0 1 1.044 1.262c.596 4.477-.787 7.795-2.465 9.99a11.8 11.8 0 0 1-2.517 2.453 7 7 0 0 1-1.048.625c-.28.132-.581.24-.829.24s-.548-.108-.829-.24a7 7 0 0 1-1.048-.625 11.8 11.8 0 0 1-2.517-2.453C1.928 10.487.545 7.169 1.141 2.692A1.54 1.54 0 0 1 2.185 1.43 63 63 0 0 1 5.072.56\"},\"child\":[]}]})(props);\n};\nexport function BsFillShieldLockFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M8 0c-.69 0-1.843.265-2.928.56-1.11.3-2.229.655-2.887.87a1.54 1.54 0 0 0-1.044 1.262c-.596 4.477.787 7.795 2.465 9.99a11.8 11.8 0 0 0 2.517 2.453c.386.273.744.482 1.048.625.28.132.581.24.829.24s.548-.108.829-.24a7 7 0 0 0 1.048-.625 11.8 11.8 0 0 0 2.517-2.453c1.678-2.195 3.061-5.513 2.465-9.99a1.54 1.54 0 0 0-1.044-1.263 63 63 0 0 0-2.887-.87C9.843.266 8.69 0 8 0m0 5a1.5 1.5 0 0 1 .5 2.915l.385 1.99a.5.5 0 0 1-.491.595h-.788a.5.5 0 0 1-.49-.595l.384-1.99A1.5 1.5 0 0 1 8 5\"},\"child\":[]}]})(props);\n};\nexport function BsFillShieldSlashFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M1.093 3.093c-.465 4.275.885 7.46 2.513 9.589a11.8 11.8 0 0 0 2.517 2.453c.386.273.744.482 1.048.625.28.132.581.24.829.24s.548-.108.829-.24a7 7 0 0 0 1.048-.625 11.3 11.3 0 0 0 1.733-1.525zm12.215 8.215L3.128 1.128A61 61 0 0 1 5.073.56C6.157.265 7.31 0 8 0s1.843.265 2.928.56c1.11.3 2.229.655 2.887.87a1.54 1.54 0 0 1 1.044 1.262c.483 3.626-.332 6.491-1.551 8.616m.338 3.046-13-13 .708-.708 13 13z\"},\"child\":[]}]})(props);\n};\nexport function BsFillShiftFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.27 2.047a1 1 0 0 1 1.46 0l6.345 6.77c.6.638.146 1.683-.73 1.683H11.5v3a1 1 0 0 1-1 1h-5a1 1 0 0 1-1-1v-3H1.654C.78 10.5.326 9.455.924 8.816z\"},\"child\":[]}]})(props);\n};\nexport function BsFillSignDeadEndFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5.116 6.28h.32c.395 0 .582.24.582.722 0 .48-.186.718-.581.718h-.321zm3.636.066.268.845h-.552l.27-.845zm1.327-.066h.32c.394 0 .582.24.582.722 0 .48-.186.718-.582.718h-.32zm-.792 3h.32c.395 0 .582.24.582.722 0 .48-.186.718-.581.718h-.32z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M9.05.435c-.58-.58-1.52-.58-2.1 0L.436 6.95c-.58.58-.58 1.519 0 2.098l6.516 6.516c.58.58 1.519.58 2.098 0l6.516-6.516c.58-.58.58-1.519 0-2.098zM4.782 6h.69c.596 0 .886.355.886.998S6.066 8 5.473 8h-.69zM7.82 7.72V8H6.571V6H7.82v.28h-.917v.57h.863v.268h-.863v.602zm.397.28h-.34l.688-2h.371l.689 2h-.352l-.177-.554h-.702L8.216 8Zm1.53-2h.69c.596 0 .886.355.886.998S11.03 8 10.436 8h-.69zm-2.923 4.72V11H5.575V9h1.248v.28h-.917v.57h.863v.268h-.863v.602zm.572.28h-.32V9h.294l.933 1.436h.014V9h.32v2h-.292l-.936-1.44h-.013zm1.56-2h.69c.596 0 .886.355.886.998S10.238 11 9.645 11h-.69z\"},\"child\":[]}]})(props);\n};\nexport function BsFillSignDoNotEnterFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4.237 4.28h-.32v1.44h.32c.396 0 .582-.239.582-.718 0-.481-.188-.722-.582-.722m2.392.859v-.277c0-.413-.211-.617-.494-.617-.285 0-.495.204-.495.617v.277c0 .414.21.618.495.618.283 0 .494-.204.494-.618m4.163 0v-.277c0-.413-.211-.617-.494-.617-.285 0-.495.204-.495.617v.277c0 .414.21.618.495.618.283 0 .494-.204.494-.618m.006 5.828v-.694h.39c.231 0 .378.126.378.354 0 .225-.142.34-.387.34z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8 16A8 8 0 1 0 8 0a8 8 0 0 0 0 16M3.584 6V4h.69c.596 0 .886.355.886.998S4.867 6 4.274 6zm3.382-1.135v.272c0 .566-.318.903-.83.903-.513 0-.833-.337-.833-.903v-.272c0-.569.32-.904.832-.904.513 0 .83.337.83.904Zm1.021-.305V6h-.319V4h.293l.933 1.436h.015V4h.319v2h-.291L8 4.56zm3.142.305v.272c0 .566-.318.903-.83.903-.513 0-.833-.337-.833-.903v-.272c0-.569.32-.904.832-.904.513 0 .83.337.83.904Zm.899-.58V6h-.333V4.285h-.584V4h1.503v.285zM5.413 11.72V12H4.165v-2h1.248v.28h-.917v.57h.862v.268h-.862v.602zm.572.28h-.32v-2h.294l.933 1.436h.014v-1.435h.32V12h-.292l-.936-1.44h-.013zm2.279 0H7.93v-1.715h-.584V10H8.85v.284h-.586zm1.953-.28V12H8.97v-2h1.248v.28H9.3v.57h.863v.268H9.3v.602zM11.235 10c.42 0 .674.244.674.616a.575.575 0 0 1-.368.56l.404.824h-.373l-.36-.769h-.414V12h-.328v-2zM3.5 7h9a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-9a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsFillSignIntersectionFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.05.435c-.58-.58-1.52-.58-2.1 0L.436 6.95c-.58.58-.58 1.519 0 2.098l6.516 6.516c.58.58 1.519.58 2.098 0l6.516-6.516c.58-.58.58-1.519 0-2.098zM7.25 4h1.5v3.25H12v1.5H8.75V12h-1.5V8.75H4v-1.5h3.25z\"},\"child\":[]}]})(props);\n};\nexport function BsFillSignIntersectionSideFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.05.435c-.58-.58-1.52-.58-2.1 0L.436 6.95c-.58.58-.58 1.519 0 2.098l6.516 6.516c.58.58 1.519.58 2.098 0l6.516-6.516c.58-.58.58-1.519 0-2.098zM6.25 4h1.5v3.25H11v1.5H7.75V12h-1.5z\"},\"child\":[]}]})(props);\n};\nexport function BsFillSignIntersectionTFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.05.435c-.58-.58-1.52-.58-2.1 0L.436 6.95c-.58.58-.58 1.519 0 2.098l6.516 6.516c.58.58 1.519.58 2.098 0l6.516-6.516c.58-.58.58-1.519 0-2.098zM5 5h6v1.5H8.75V12h-1.5V6.5H5z\"},\"child\":[]}]})(props);\n};\nexport function BsFillSignIntersectionYFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.05.435c-.58-.58-1.52-.58-2.1 0L.436 6.95c-.58.58-.58 1.519 0 2.098l6.516 6.516c.58.58 1.519.58 2.098 0l6.516-6.516c.58-.58.58-1.519 0-2.098zm1.443 4.762 1.014 1.106L8.75 8.83V12h-1.5V8.83L4.493 6.303l1.014-1.106L8 7.483z\"},\"child\":[]}]})(props);\n};\nexport function BsFillSignMergeLeftFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.05.435c-.58-.58-1.52-.58-2.1 0L.436 6.95c-.58.58-.58 1.519 0 2.098l6.516 6.516c.58.58 1.519.58 2.098 0l6.516-6.516c.58-.58.58-1.519 0-2.098zM7.25 6H6.034a.25.25 0 0 1-.192-.41l1.966-2.36a.25.25 0 0 1 .384 0l1.966 2.36a.25.25 0 0 1-.192.41H8.75v6h-1.5V8.823c-.551.686-1.229 1.363-1.88 2.015l-.016.016-.708-.708c.757-.756 1.48-1.48 2.016-2.196q.377-.499.588-.95z\"},\"child\":[]}]})(props);\n};\nexport function BsFillSignMergeRightFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.05.435c-.58-.58-1.52-.58-2.1 0L.436 6.95c-.58.58-.58 1.519 0 2.098l6.516 6.516c.58.58 1.519.58 2.098 0l6.516-6.516c.58-.58.58-1.519 0-2.098zM8.75 6v1q.211.451.588.95c.537.716 1.259 1.44 2.016 2.196l-.708.708-.015-.016c-.652-.652-1.33-1.33-1.881-2.015V12h-1.5V6H6.034a.25.25 0 0 1-.192-.41l1.966-2.36a.25.25 0 0 1 .384 0l1.966 2.36a.25.25 0 0 1-.192.41z\"},\"child\":[]}]})(props);\n};\nexport function BsFillSignNoLeftTurnFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 13.292A8 8 0 0 1 13.293 2L9.195 6.099A2.5 2.5 0 0 0 8.5 6H7V4.534a.25.25 0 0 0-.41-.192L4.23 6.308a.25.25 0 0 0 0 .384l2.36 1.966.026.02zm.708.708A8 8 0 0 0 14 2.707l-3.885 3.884C10.656 7.05 11 7.735 11 8.5V11h-1V8.5c0-.489-.234-.923-.596-1.197l-6.696 6.696Z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8.293 7 7 8.293V7z\"},\"child\":[]}]})(props);\n};\nexport function BsFillSignNoParkingFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M13.292 14A8 8 0 0 1 2 2.707l3.5 3.5V12h1.283V9.164h1.674zm.708-.708-4.37-4.37C10.5 8.524 11 7.662 11 6.587c0-1.482-.955-2.584-2.538-2.584H5.5v.79L2.708 2.002A8 8 0 0 1 14 13.293Z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M6.777 7.485v.59h.59zm1.949.535L6.777 6.07v-.966H8.27c.893 0 1.419.539 1.419 1.482 0 .769-.35 1.273-.963 1.433Z\"},\"child\":[]}]})(props);\n};\nexport function BsFillSignNoRightTurnFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M14 13.292A8 8 0 0 0 2.707 2l4.097 4.098Q7.137 6.001 7.5 6H9V4.534a.25.25 0 0 1 .41-.192l2.36 1.966c.12.1.12.284 0 .384L9.41 8.658l-.026.02zm-.708.708A8 8 0 0 1 2 2.707l3.885 3.884A2.5 2.5 0 0 0 5 8.5V11h1V8.5c0-.489.234-.923.596-1.197l6.696 6.696Z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M7.707 7 9 8.293V7z\"},\"child\":[]}]})(props);\n};\nexport function BsFillSignRailroadFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.05.435c-.58-.58-1.52-.58-2.1 0L4.224 3.162 8 6.94l3.777-3.777L9.049.435Zm3.274 7.425v-.862h.467c.28 0 .467.154.467.44 0 .28-.182.421-.475.421h-.459Z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M12.838 4.223 9.06 8l3.777 3.777 2.727-2.728c.58-.58.58-1.519 0-2.098zm.03 2.361c.591 0 .935.334.935.844a.79.79 0 0 1-.485.748l.536 1.074h-.59l-.467-.994h-.473v.994h-.521V6.584h1.064Zm-1.091 6.254L8 9.06l-3.777 3.777 2.728 2.727c.58.58 1.519.58 2.098 0zm-8.953-5.84v.861h.46c.292 0 .474-.14.474-.421 0-.286-.188-.44-.467-.44z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3.162 11.777 6.94 8 3.162 4.223.435 6.951c-.58.58-.58 1.519 0 2.098zm-.86-5.193h1.065c.592 0 .936.334.936.844 0 .39-.242.654-.485.748l.536 1.074h-.59l-.467-.994h-.473v.994h-.521V6.584Z\"},\"child\":[]}]})(props);\n};\nexport function BsFillSignStopFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M10.371 8.277v-.553c0-.827-.422-1.234-.987-1.234-.572 0-.99.407-.99 1.234v.553c0 .83.418 1.237.99 1.237.565 0 .987-.408.987-1.237m2.586-.24c.463 0 .735-.272.735-.744s-.272-.741-.735-.741h-.774v1.485z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4.893 0a.5.5 0 0 0-.353.146L.146 4.54A.5.5 0 0 0 0 4.893v6.214a.5.5 0 0 0 .146.353l4.394 4.394a.5.5 0 0 0 .353.146h6.214a.5.5 0 0 0 .353-.146l4.394-4.394a.5.5 0 0 0 .146-.353V4.893a.5.5 0 0 0-.146-.353L11.46.146A.5.5 0 0 0 11.107 0zM3.16 10.08c-.931 0-1.447-.493-1.494-1.132h.653c.065.346.396.583.891.583.524 0 .83-.246.83-.62 0-.303-.203-.467-.637-.572l-.656-.164c-.61-.147-.978-.51-.978-1.078 0-.706.597-1.184 1.444-1.184.853 0 1.386.475 1.436 1.087h-.645c-.064-.32-.352-.542-.797-.542-.472 0-.77.246-.77.6 0 .261.196.437.553.522l.654.161c.673.164 1.06.487 1.06 1.11 0 .736-.574 1.228-1.544 1.228Zm3.427-3.51V10h-.665V6.57H4.753V6h3.006v.568H6.587Zm4.458 1.16v.544c0 1.131-.636 1.805-1.661 1.805-1.026 0-1.664-.674-1.664-1.805V7.73c0-1.136.638-1.807 1.664-1.807s1.66.674 1.66 1.807ZM11.52 6h1.535c.82 0 1.316.55 1.316 1.292 0 .747-.501 1.289-1.321 1.289h-.865V10h-.665V6.001Z\"},\"child\":[]}]})(props);\n};\nexport function BsFillSignStopLightsFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 6a1 1 0 1 0 0-2 1 1 0 0 0 0 2m0 3a1 1 0 1 0 0-2 1 1 0 0 0 0 2m1 2a1 1 0 1 1-2 0 1 1 0 0 1 2 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M9.05.435c-.58-.58-1.52-.58-2.1 0L.436 6.95c-.58.58-.58 1.519 0 2.098l6.516 6.516c.58.58 1.519.58 2.098 0l6.516-6.516c.58-.58.58-1.519 0-2.098zM6 4a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v8a1 1 0 0 1-1 1H7a1 1 0 0 1-1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsFillSignTurnLeftFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.05.435c-.58-.58-1.52-.58-2.1 0L.436 6.95c-.58.58-.58 1.519 0 2.098l6.516 6.516c.58.58 1.519.58 2.098 0l6.516-6.516c.58-.58.58-1.519 0-2.098zM7 8.466a.25.25 0 0 1-.41.192L4.23 6.692a.25.25 0 0 1 0-.384l2.36-1.966a.25.25 0 0 1 .41.192V6h1.5A2.5 2.5 0 0 1 11 8.5V11h-1V8.5A1.5 1.5 0 0 0 8.5 7H7z\"},\"child\":[]}]})(props);\n};\nexport function BsFillSignTurnRightFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.05.435c-.58-.58-1.52-.58-2.1 0L.436 6.95c-.58.58-.58 1.519 0 2.098l6.516 6.516c.58.58 1.519.58 2.098 0l6.516-6.516c.58-.58.58-1.519 0-2.098zM9 8.466V7H7.5A1.5 1.5 0 0 0 6 8.5V11H5V8.5A2.5 2.5 0 0 1 7.5 6H9V4.534a.25.25 0 0 1 .41-.192l2.36 1.966c.12.1.12.284 0 .384L9.41 8.658A.25.25 0 0 1 9 8.466\"},\"child\":[]}]})(props);\n};\nexport function BsFillSignTurnSlightLeftFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.05.435c-.58-.58-1.52-.58-2.1 0L.436 6.95c-.58.58-.58 1.519 0 2.098l6.516 6.516c.58.58 1.519.58 2.098 0l6.516-6.516c.58-.58.58-1.519 0-2.098zM6.864 8.368a.25.25 0 0 1-.451-.039l-1.06-2.882a.25.25 0 0 1 .192-.333l3.026-.523a.25.25 0 0 1 .26.371l-.667 1.154.621.373A2.5 2.5 0 0 1 10 8.632V11H9V8.632a1.5 1.5 0 0 0-.728-1.286l-.607-.364-.8 1.386Z\"},\"child\":[]}]})(props);\n};\nexport function BsFillSignTurnSlightRightFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.95.435c.58-.58 1.52-.58 2.1 0l6.515 6.516c.58.58.58 1.519 0 2.098L9.05 15.565c-.58.58-1.519.58-2.098 0L.435 9.05a1.48 1.48 0 0 1 0-2.098zm1.385 6.547.8 1.386a.25.25 0 0 0 .451-.039l1.06-2.882a.25.25 0 0 0-.192-.333l-3.026-.523a.25.25 0 0 0-.26.371l.667 1.154-.621.373A2.5 2.5 0 0 0 6 8.632V11h1V8.632a1.5 1.5 0 0 1 .728-1.286z\"},\"child\":[]}]})(props);\n};\nexport function BsFillSignYieldFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M10.48 5.323h-.28v1.353h.28c.372 0 .54-.222.54-.674 0-.45-.169-.68-.54-.68Z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M7.022 14.434a1.131 1.131 0 0 0 1.96 0l6.857-11.667c.457-.778-.092-1.767-.98-1.767H1.144c-.889 0-1.437.99-.98 1.767zM5.506 6.232V7H5.11v-.76L4.44 5h.44l.424.849h.016L5.748 5h.428zM6.628 5v2h-.396V5zm.684 1.676h.895V7H6.919V5h1.288v.324h-.895v.513h.842v.303h-.842zm1.521-.013h.848V7H8.437V5h.396zm.97.337V5h.73c.608 0 .895.364.895.995 0 .636-.291 1.005-.895 1.005z\"},\"child\":[]}]})(props);\n};\nexport function BsFillSignpost2Fill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.293.707A1 1 0 0 0 7 1.414V2H2a1 1 0 0 0-1 1v2a1 1 0 0 0 1 1h5v1H2.5a1 1 0 0 0-.8.4L.725 8.7a.5.5 0 0 0 0 .6l.975 1.3a1 1 0 0 0 .8.4H7v5h2v-5h5a1 1 0 0 0 1-1V8a1 1 0 0 0-1-1H9V6h4.5a1 1 0 0 0 .8-.4l.975-1.3a.5.5 0 0 0 0-.6L14.3 2.4a1 1 0 0 0-.8-.4H9v-.586A1 1 0 0 0 7.293.707\"},\"child\":[]}]})(props);\n};\nexport function BsFillSignpostFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.293.707A1 1 0 0 0 7 1.414V4H2a1 1 0 0 0-1 1v4a1 1 0 0 0 1 1h5v6h2v-6h3.532a1 1 0 0 0 .768-.36l1.933-2.32a.5.5 0 0 0 0-.64L13.3 4.36a1 1 0 0 0-.768-.36H9V1.414A1 1 0 0 0 7.293.707\"},\"child\":[]}]})(props);\n};\nexport function BsFillSignpostSplitFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7 16h2V6h5a1 1 0 0 0 .8-.4l.975-1.3a.5.5 0 0 0 0-.6L14.8 2.4A1 1 0 0 0 14 2H9v-.586a1 1 0 0 0-2 0V7H2a1 1 0 0 0-.8.4L.225 8.7a.5.5 0 0 0 0 .6l.975 1.3a1 1 0 0 0 .8.4h5z\"},\"child\":[]}]})(props);\n};\nexport function BsFillSimFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5 4.5a.5.5 0 0 1 .5-.5h2v2H5zM8.5 6V4h2a.5.5 0 0 1 .5.5V6zM5 7h6v2H5zm3.5 3H11v1.5a.5.5 0 0 1-.5.5h-2zm-1 0v2h-2a.5.5 0 0 1-.5-.5V10z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3.5 0A1.5 1.5 0 0 0 2 1.5v13A1.5 1.5 0 0 0 3.5 16h9a1.5 1.5 0 0 0 1.5-1.5V3.414a1.5 1.5 0 0 0-.44-1.06L11.647.439A1.5 1.5 0 0 0 10.586 0zm2 3h5A1.5 1.5 0 0 1 12 4.5v7a1.5 1.5 0 0 1-1.5 1.5h-5A1.5 1.5 0 0 1 4 11.5v-7A1.5 1.5 0 0 1 5.5 3\"},\"child\":[]}]})(props);\n};\nexport function BsFillSimSlashFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m11.646.44.897.896-1.703 1.703A1.5 1.5 0 0 0 10.5 3h-5A1.5 1.5 0 0 0 4 4.5v5.379l-2 2V1.5A1.5 1.5 0 0 1 3.5 0h7.086a1.5 1.5 0 0 1 1.06.44M8.5 5.378 9.879 4H8.5zM5 8.879 6.879 7H5zm6-1.758L9.121 9H11zm-3.5 3.5L6.121 12H7.5zM5.5 13q-.175 0-.34-.039L2.502 15.62c.265.236.615.38.998.38h9a1.5 1.5 0 0 0 1.5-1.5V4.121l-2 2V11.5a1.5 1.5 0 0 1-1.5 1.5zM5 4.5a.5.5 0 0 1 .5-.5h2v2H5zM8.5 10H11v1.5a.5.5 0 0 1-.5.5h-2zm6.354-8.146a.5.5 0 0 0-.708-.708l-13 13a.5.5 0 0 0 .708.708z\"},\"child\":[]}]})(props);\n};\nexport function BsFillSkipBackwardBtnFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 12V4a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2m11.21-6.907L8.5 7.028V5.5a.5.5 0 0 0-.79-.407L5 7.028V5.5a.5.5 0 0 0-1 0v5a.5.5 0 0 0 1 0V8.972l2.71 1.935a.5.5 0 0 0 .79-.407V8.972l2.71 1.935A.5.5 0 0 0 12 10.5v-5a.5.5 0 0 0-.79-.407\"},\"child\":[]}]})(props);\n};\nexport function BsFillSkipBackwardCircleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0m-4.79-2.907L8.5 7.028V5.5a.5.5 0 0 0-.79-.407L5 7.028V5.5a.5.5 0 0 0-1 0v5a.5.5 0 0 0 1 0V8.972l2.71 1.935a.5.5 0 0 0 .79-.407V8.972l2.71 1.935A.5.5 0 0 0 12 10.5v-5a.5.5 0 0 0-.79-.407\"},\"child\":[]}]})(props);\n};\nexport function BsFillSkipBackwardFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M.5 3.5A.5.5 0 0 0 0 4v8a.5.5 0 0 0 1 0V8.753l6.267 3.636c.54.313 1.233-.066 1.233-.697v-2.94l6.267 3.636c.54.314 1.233-.065 1.233-.696V4.308c0-.63-.693-1.01-1.233-.696L8.5 7.248v-2.94c0-.63-.692-1.01-1.233-.696L1 7.248V4a.5.5 0 0 0-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsFillSkipEndBtnFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 12V4a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2m6.79-6.907A.5.5 0 0 0 6 5.5v5a.5.5 0 0 0 .79.407L9.5 8.972V10.5a.5.5 0 0 0 1 0v-5a.5.5 0 0 0-1 0v1.528z\"},\"child\":[]}]})(props);\n};\nexport function BsFillSkipEndCircleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0M6.79 5.093A.5.5 0 0 0 6 5.5v5a.5.5 0 0 0 .79.407L9.5 8.972V10.5a.5.5 0 0 0 1 0v-5a.5.5 0 0 0-1 0v1.528z\"},\"child\":[]}]})(props);\n};\nexport function BsFillSkipEndFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12.5 4a.5.5 0 0 0-1 0v3.248L5.233 3.612C4.693 3.3 4 3.678 4 4.308v7.384c0 .63.692 1.01 1.233.697L11.5 8.753V12a.5.5 0 0 0 1 0z\"},\"child\":[]}]})(props);\n};\nexport function BsFillSkipForwardBtnFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 12V4a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2m4.79-6.907A.5.5 0 0 0 4 5.5v5a.5.5 0 0 0 .79.407L7.5 8.972V10.5a.5.5 0 0 0 .79.407L11 8.972V10.5a.5.5 0 0 0 1 0v-5a.5.5 0 0 0-1 0v1.528L8.29 5.093a.5.5 0 0 0-.79.407v1.528z\"},\"child\":[]}]})(props);\n};\nexport function BsFillSkipForwardCircleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0M4.79 5.093A.5.5 0 0 0 4 5.5v5a.5.5 0 0 0 .79.407L7.5 8.972V10.5a.5.5 0 0 0 .79.407L11 8.972V10.5a.5.5 0 0 0 1 0v-5a.5.5 0 0 0-1 0v1.528L8.29 5.093a.5.5 0 0 0-.79.407v1.528z\"},\"child\":[]}]})(props);\n};\nexport function BsFillSkipForwardFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M15.5 3.5a.5.5 0 0 1 .5.5v8a.5.5 0 0 1-1 0V8.753l-6.267 3.636c-.54.313-1.233-.066-1.233-.697v-2.94l-6.267 3.636C.693 12.703 0 12.324 0 11.693V4.308c0-.63.693-1.01 1.233-.696L7.5 7.248v-2.94c0-.63.693-1.01 1.233-.696L15 7.248V4a.5.5 0 0 1 .5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsFillSkipStartBtnFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 12V4a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2m9.71-6.907L7 7.028V5.5a.5.5 0 0 0-1 0v5a.5.5 0 0 0 1 0V8.972l2.71 1.935a.5.5 0 0 0 .79-.407v-5a.5.5 0 0 0-.79-.407\"},\"child\":[]}]})(props);\n};\nexport function BsFillSkipStartCircleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0M9.71 5.093 7 7.028V5.5a.5.5 0 0 0-1 0v5a.5.5 0 0 0 1 0V8.972l2.71 1.935a.5.5 0 0 0 .79-.407v-5a.5.5 0 0 0-.79-.407\"},\"child\":[]}]})(props);\n};\nexport function BsFillSkipStartFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4 4a.5.5 0 0 1 1 0v3.248l6.267-3.636c.54-.313 1.232.066 1.232.696v7.384c0 .63-.692 1.01-1.232.697L5 8.753V12a.5.5 0 0 1-1 0z\"},\"child\":[]}]})(props);\n};\nexport function BsFillSlashCircleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0m-4.646-2.646a.5.5 0 0 0-.708-.708l-6 6a.5.5 0 0 0 .708.708z\"},\"child\":[]}]})(props);\n};\nexport function BsFillSlashSquareFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm9.354 5.354-6 6a.5.5 0 0 1-.708-.708l6-6a.5.5 0 0 1 .708.708\"},\"child\":[]}]})(props);\n};\nexport function BsFillSpeakerFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9 4a1 1 0 1 1-2 0 1 1 0 0 1 2 0m-2.5 6.5a1.5 1.5 0 1 1 3 0 1.5 1.5 0 0 1-3 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm6 4a2 2 0 1 1-4 0 2 2 0 0 1 4 0M8 7a3.5 3.5 0 1 1 0 7 3.5 3.5 0 0 1 0-7\"},\"child\":[]}]})(props);\n};\nexport function BsFillSquareFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 2a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2z\"},\"child\":[]}]})(props);\n};\nexport function BsFillStarFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3.612 15.443c-.386.198-.824-.149-.746-.592l.83-4.73L.173 6.765c-.329-.314-.158-.888.283-.95l4.898-.696L7.538.792c.197-.39.73-.39.927 0l2.184 4.327 4.898.696c.441.062.612.636.282.95l-3.522 3.356.83 4.73c.078.443-.36.79-.746.592L8 13.187l-4.389 2.256z\"},\"child\":[]}]})(props);\n};\nexport function BsFillStickiesFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 1.5V13a1 1 0 0 0 1 1V1.5a.5.5 0 0 1 .5-.5H14a1 1 0 0 0-1-1H1.5A1.5 1.5 0 0 0 0 1.5\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3.5 2A1.5 1.5 0 0 0 2 3.5v11A1.5 1.5 0 0 0 3.5 16h6.086a1.5 1.5 0 0 0 1.06-.44l4.915-4.914A1.5 1.5 0 0 0 16 9.586V3.5A1.5 1.5 0 0 0 14.5 2zm6 8.5a1 1 0 0 1 1-1h4.396a.25.25 0 0 1 .177.427l-5.146 5.146a.25.25 0 0 1-.427-.177z\"},\"child\":[]}]})(props);\n};\nexport function BsFillStickyFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2.5 1A1.5 1.5 0 0 0 1 2.5v11A1.5 1.5 0 0 0 2.5 15h6.086a1.5 1.5 0 0 0 1.06-.44l4.915-4.914A1.5 1.5 0 0 0 15 8.586V2.5A1.5 1.5 0 0 0 13.5 1zm6 8.5a1 1 0 0 1 1-1h4.396a.25.25 0 0 1 .177.427l-5.146 5.146a.25.25 0 0 1-.427-.177z\"},\"child\":[]}]})(props);\n};\nexport function BsFillStopBtnFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 12V4a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2m6.5-7A1.5 1.5 0 0 0 5 6.5v3A1.5 1.5 0 0 0 6.5 11h3A1.5 1.5 0 0 0 11 9.5v-3A1.5 1.5 0 0 0 9.5 5z\"},\"child\":[]}]})(props);\n};\nexport function BsFillStopCircleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0M6.5 5A1.5 1.5 0 0 0 5 6.5v3A1.5 1.5 0 0 0 6.5 11h3A1.5 1.5 0 0 0 11 9.5v-3A1.5 1.5 0 0 0 9.5 5z\"},\"child\":[]}]})(props);\n};\nexport function BsFillStopFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5 3.5h6A1.5 1.5 0 0 1 12.5 5v6a1.5 1.5 0 0 1-1.5 1.5H5A1.5 1.5 0 0 1 3.5 11V5A1.5 1.5 0 0 1 5 3.5\"},\"child\":[]}]})(props);\n};\nexport function BsFillStoplightsFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M6 0a2 2 0 0 0-2 2H2c.167.5.8 1.6 2 2v2H2c.167.5.8 1.6 2 2v2H2c.167.5.8 1.6 2 2v1a2 2 0 0 0 2 2h4a2 2 0 0 0 2-2v-1c1.2-.4 1.833-1.5 2-2h-2V8c1.2-.4 1.833-1.5 2-2h-2V4c1.2-.4 1.833-1.5 2-2h-2a2 2 0 0 0-2-2zm3.5 3.5a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0m0 4a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0M8 13a1.5 1.5 0 1 1 0-3 1.5 1.5 0 0 1 0 3\"},\"child\":[]}]})(props);\n};\nexport function BsFillStopwatchFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.5 0a.5.5 0 0 0 0 1H7v1.07A7.001 7.001 0 0 0 8 16a7 7 0 0 0 5.29-11.584l.013-.012.354-.354.353.354a.5.5 0 1 0 .707-.707l-1.414-1.415a.5.5 0 1 0-.707.707l.354.354-.354.354-.012.012A6.97 6.97 0 0 0 9 2.071V1h.5a.5.5 0 0 0 0-1zm2 5.6V9a.5.5 0 0 1-.5.5H4.5a.5.5 0 0 1 0-1h3V5.6a.5.5 0 1 1 1 0\"},\"child\":[]}]})(props);\n};\nexport function BsFillSuitClubFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M11.5 12.5a3.5 3.5 0 0 1-2.684-1.254 20 20 0 0 0 1.582 2.907c.231.35-.02.847-.438.847H6.04c-.419 0-.67-.497-.438-.847a20 20 0 0 0 1.582-2.907 3.5 3.5 0 1 1-2.538-5.743 3.5 3.5 0 1 1 6.708 0A3.5 3.5 0 1 1 11.5 12.5\"},\"child\":[]}]})(props);\n};\nexport function BsFillSuitDiamondFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2.45 7.4 7.2 1.067a1 1 0 0 1 1.6 0L13.55 7.4a1 1 0 0 1 0 1.2L8.8 14.933a1 1 0 0 1-1.6 0L2.45 8.6a1 1 0 0 1 0-1.2\"},\"child\":[]}]})(props);\n};\nexport function BsFillSuitHeartFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4 1c2.21 0 4 1.755 4 3.92C8 2.755 9.79 1 12 1s4 1.755 4 3.92c0 3.263-3.234 4.414-7.608 9.608a.513.513 0 0 1-.784 0C3.234 9.334 0 8.183 0 4.92 0 2.755 1.79 1 4 1\"},\"child\":[]}]})(props);\n};\nexport function BsFillSuitSpadeFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.184 11.246A3.5 3.5 0 0 1 1 9c0-1.602 1.14-2.633 2.66-4.008C4.986 3.792 6.602 2.33 8 0c1.398 2.33 3.014 3.792 4.34 4.992C13.86 6.367 15 7.398 15 9a3.5 3.5 0 0 1-6.184 2.246 20 20 0 0 0 1.582 2.907c.231.35-.02.847-.438.847H6.04c-.419 0-.67-.497-.438-.847a20 20 0 0 0 1.582-2.907\"},\"child\":[]}]})(props);\n};\nexport function BsFillSuitcaseFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6 .5a.5.5 0 0 1 .5-.5h3a.5.5 0 0 1 .5.5V3h1.5A1.5 1.5 0 0 1 13 4.5v9a1.5 1.5 0 0 1-1.004 1.416A1 1 0 1 1 10 15H6a1 1 0 1 1-1.997-.084A1.5 1.5 0 0 1 3 13.5v-9A1.5 1.5 0 0 1 4.5 3H6zM9 1H7v2h2zM6 5.5a.5.5 0 0 0-1 0v7a.5.5 0 0 0 1 0zm2.5 0a.5.5 0 0 0-1 0v7a.5.5 0 0 0 1 0zm2.5 0a.5.5 0 0 0-1 0v7a.5.5 0 0 0 1 0z\"},\"child\":[]}]})(props);\n};\nexport function BsFillSuitcaseLgFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7 0a2 2 0 0 0-2 2H1.5A1.5 1.5 0 0 0 0 3.5v9A1.5 1.5 0 0 0 1.5 14H2a.5.5 0 0 0 1 0h10a.5.5 0 0 0 1 0h.5a1.5 1.5 0 0 0 1.5-1.5v-9A1.5 1.5 0 0 0 14.5 2H11a2 2 0 0 0-2-2zM6 2a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1zM3 13V3h1v10zm9 0V3h1v10z\"},\"child\":[]}]})(props);\n};\nexport function BsFillSuitcase2Fill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.5 0a.5.5 0 0 0-.5.5V3H4.5A1.5 1.5 0 0 0 3 4.5v9a1.5 1.5 0 0 0 1.003 1.416A1 1 0 1 0 6 15h4a1 1 0 1 0 1.996-.084A1.5 1.5 0 0 0 13 13.5v-9A1.5 1.5 0 0 0 11.5 3H10V.5a.5.5 0 0 0-.5-.5zM9 3H7V1h2zM4 7V6h8v1z\"},\"child\":[]}]})(props);\n};\nexport function BsFillSunFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 12a4 4 0 1 0 0-8 4 4 0 0 0 0 8M8 0a.5.5 0 0 1 .5.5v2a.5.5 0 0 1-1 0v-2A.5.5 0 0 1 8 0m0 13a.5.5 0 0 1 .5.5v2a.5.5 0 0 1-1 0v-2A.5.5 0 0 1 8 13m8-5a.5.5 0 0 1-.5.5h-2a.5.5 0 0 1 0-1h2a.5.5 0 0 1 .5.5M3 8a.5.5 0 0 1-.5.5h-2a.5.5 0 0 1 0-1h2A.5.5 0 0 1 3 8m10.657-5.657a.5.5 0 0 1 0 .707l-1.414 1.415a.5.5 0 1 1-.707-.708l1.414-1.414a.5.5 0 0 1 .707 0m-9.193 9.193a.5.5 0 0 1 0 .707L3.05 13.657a.5.5 0 0 1-.707-.707l1.414-1.414a.5.5 0 0 1 .707 0m9.193 2.121a.5.5 0 0 1-.707 0l-1.414-1.414a.5.5 0 0 1 .707-.707l1.414 1.414a.5.5 0 0 1 0 .707M4.464 4.465a.5.5 0 0 1-.707 0L2.343 3.05a.5.5 0 1 1 .707-.707l1.414 1.414a.5.5 0 0 1 0 .708\"},\"child\":[]}]})(props);\n};\nexport function BsFillSunriseFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.646 1.146a.5.5 0 0 1 .708 0l1.5 1.5a.5.5 0 0 1-.708.708L8.5 2.707V4.5a.5.5 0 0 1-1 0V2.707l-.646.647a.5.5 0 1 1-.708-.708zM2.343 4.343a.5.5 0 0 1 .707 0l1.414 1.414a.5.5 0 0 1-.707.707L2.343 5.05a.5.5 0 0 1 0-.707m11.314 0a.5.5 0 0 1 0 .707l-1.414 1.414a.5.5 0 1 1-.707-.707l1.414-1.414a.5.5 0 0 1 .707 0M11.709 11.5a4 4 0 1 0-7.418 0H.5a.5.5 0 0 0 0 1h15a.5.5 0 0 0 0-1h-3.79zM0 10a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1h-2A.5.5 0 0 1 0 10m13 0a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsFillSunsetFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.646 4.854a.5.5 0 0 0 .708 0l1.5-1.5a.5.5 0 0 0-.708-.708l-.646.647V1.5a.5.5 0 0 0-1 0v1.793l-.646-.647a.5.5 0 1 0-.708.708zm-5.303-.51a.5.5 0 0 1 .707 0l1.414 1.413a.5.5 0 0 1-.707.707L2.343 5.05a.5.5 0 0 1 0-.707zm11.314 0a.5.5 0 0 1 0 .706l-1.414 1.414a.5.5 0 1 1-.707-.707l1.414-1.414a.5.5 0 0 1 .707 0zM11.709 11.5a4 4 0 1 0-7.418 0H.5a.5.5 0 0 0 0 1h15a.5.5 0 0 0 0-1h-3.79zM0 10a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1h-2A.5.5 0 0 1 0 10m13 0a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsFillTabletFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 2a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2zm7 11a1 1 0 1 0-2 0 1 1 0 0 0 2 0\"},\"child\":[]}]})(props);\n};\nexport function BsFillTabletLandscapeFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 14a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2zm11-7a1 1 0 1 0 0 2 1 1 0 0 0 0-2\"},\"child\":[]}]})(props);\n};\nexport function BsFillTagFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 1a1 1 0 0 0-1 1v4.586a1 1 0 0 0 .293.707l7 7a1 1 0 0 0 1.414 0l4.586-4.586a1 1 0 0 0 0-1.414l-7-7A1 1 0 0 0 6.586 1zm4 3.5a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0\"},\"child\":[]}]})(props);\n};\nexport function BsFillTagsFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 2a1 1 0 0 1 1-1h4.586a1 1 0 0 1 .707.293l7 7a1 1 0 0 1 0 1.414l-4.586 4.586a1 1 0 0 1-1.414 0l-7-7A1 1 0 0 1 2 6.586zm3.5 4a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M1.293 7.793A1 1 0 0 1 1 7.086V2a1 1 0 0 0-1 1v4.586a1 1 0 0 0 .293.707l7 7a1 1 0 0 0 1.414 0l.043-.043z\"},\"child\":[]}]})(props);\n};\nexport function BsFillTaxiFrontFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6 1a1 1 0 0 0-1 1v1h-.181A2.5 2.5 0 0 0 2.52 4.515l-.792 1.848a.8.8 0 0 1-.38.404c-.5.25-.855.715-.965 1.262L.05 9.708a2.5 2.5 0 0 0-.049.49v.413c0 .814.39 1.543 1 1.997V14.5a.5.5 0 0 0 .5.5h2a.5.5 0 0 0 .5-.5v-1.338c1.292.048 2.745.088 4 .088s2.708-.04 4-.088V14.5a.5.5 0 0 0 .5.5h2a.5.5 0 0 0 .5-.5v-1.892c.61-.454 1-1.183 1-1.997v-.413q0-.248-.049-.49l-.335-1.68a1.8 1.8 0 0 0-.964-1.261.8.8 0 0 1-.381-.404l-.792-1.848A2.5 2.5 0 0 0 11.181 3H11V2a1 1 0 0 0-1-1zM4.309 4h7.382a.5.5 0 0 1 .447.276l.956 1.913a.51.51 0 0 1-.497.731c-.91-.073-3.35-.17-4.597-.17s-3.688.097-4.597.17a.51.51 0 0 1-.497-.731l.956-1.913A.5.5 0 0 1 4.309 4M4 10a1 1 0 1 1-2 0 1 1 0 0 1 2 0m10 0a1 1 0 1 1-2 0 1 1 0 0 1 2 0m-9 0a1 1 0 0 1 1-1h4a1 1 0 1 1 0 2H6a1 1 0 0 1-1-1\"},\"child\":[]}]})(props);\n};\nexport function BsFillTelephoneFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M1.885.511a1.745 1.745 0 0 1 2.61.163L6.29 2.98c.329.423.445.974.315 1.494l-.547 2.19a.68.68 0 0 0 .178.643l2.457 2.457a.68.68 0 0 0 .644.178l2.189-.547a1.75 1.75 0 0 1 1.494.315l2.306 1.794c.829.645.905 1.87.163 2.611l-1.034 1.034c-.74.74-1.846 1.065-2.877.702a18.6 18.6 0 0 1-7.01-4.42 18.6 18.6 0 0 1-4.42-7.009c-.362-1.03-.037-2.137.703-2.877z\"},\"child\":[]}]})(props);\n};\nexport function BsFillTelephoneForwardFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M1.885.511a1.745 1.745 0 0 1 2.61.163L6.29 2.98c.329.423.445.974.315 1.494l-.547 2.19a.68.68 0 0 0 .178.643l2.457 2.457a.68.68 0 0 0 .644.178l2.189-.547a1.75 1.75 0 0 1 1.494.315l2.306 1.794c.829.645.905 1.87.163 2.611l-1.034 1.034c-.74.74-1.846 1.065-2.877.702a18.6 18.6 0 0 1-7.01-4.42 18.6 18.6 0 0 1-4.42-7.009c-.362-1.03-.037-2.137.703-2.877zm10.761.135a.5.5 0 0 1 .708 0l2.5 2.5a.5.5 0 0 1 0 .708l-2.5 2.5a.5.5 0 0 1-.708-.708L14.293 4H9.5a.5.5 0 0 1 0-1h4.793l-1.647-1.646a.5.5 0 0 1 0-.708\"},\"child\":[]}]})(props);\n};\nexport function BsFillTelephoneInboundFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M1.885.511a1.745 1.745 0 0 1 2.61.163L6.29 2.98c.329.423.445.974.315 1.494l-.547 2.19a.68.68 0 0 0 .178.643l2.457 2.457a.68.68 0 0 0 .644.178l2.189-.547a1.75 1.75 0 0 1 1.494.315l2.306 1.794c.829.645.905 1.87.163 2.611l-1.034 1.034c-.74.74-1.846 1.065-2.877.702a18.6 18.6 0 0 1-7.01-4.42 18.6 18.6 0 0 1-4.42-7.009c-.362-1.03-.037-2.137.703-2.877zM15.854.146a.5.5 0 0 1 0 .708L11.707 5H14.5a.5.5 0 0 1 0 1h-4a.5.5 0 0 1-.5-.5v-4a.5.5 0 0 1 1 0v2.793L15.146.146a.5.5 0 0 1 .708 0\"},\"child\":[]}]})(props);\n};\nexport function BsFillTelephoneMinusFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M1.885.511a1.745 1.745 0 0 1 2.61.163L6.29 2.98c.329.423.445.974.315 1.494l-.547 2.19a.68.68 0 0 0 .178.643l2.457 2.457a.68.68 0 0 0 .644.178l2.189-.547a1.75 1.75 0 0 1 1.494.315l2.306 1.794c.829.645.905 1.87.163 2.611l-1.034 1.034c-.74.74-1.846 1.065-2.877.702a18.6 18.6 0 0 1-7.01-4.42 18.6 18.6 0 0 1-4.42-7.009c-.362-1.03-.037-2.137.703-2.877zM10 3.5a.5.5 0 0 1 .5-.5h4a.5.5 0 0 1 0 1h-4a.5.5 0 0 1-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsFillTelephoneOutboundFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M1.885.511a1.745 1.745 0 0 1 2.61.163L6.29 2.98c.329.423.445.974.315 1.494l-.547 2.19a.68.68 0 0 0 .178.643l2.457 2.457a.68.68 0 0 0 .644.178l2.189-.547a1.75 1.75 0 0 1 1.494.315l2.306 1.794c.829.645.905 1.87.163 2.611l-1.034 1.034c-.74.74-1.846 1.065-2.877.702a18.6 18.6 0 0 1-7.01-4.42 18.6 18.6 0 0 1-4.42-7.009c-.362-1.03-.037-2.137.703-2.877zM11 .5a.5.5 0 0 1 .5-.5h4a.5.5 0 0 1 .5.5v4a.5.5 0 0 1-1 0V1.707l-4.146 4.147a.5.5 0 0 1-.708-.708L14.293 1H11.5a.5.5 0 0 1-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsFillTelephonePlusFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M1.885.511a1.745 1.745 0 0 1 2.61.163L6.29 2.98c.329.423.445.974.315 1.494l-.547 2.19a.68.68 0 0 0 .178.643l2.457 2.457a.68.68 0 0 0 .644.178l2.189-.547a1.75 1.75 0 0 1 1.494.315l2.306 1.794c.829.645.905 1.87.163 2.611l-1.034 1.034c-.74.74-1.846 1.065-2.877.702a18.6 18.6 0 0 1-7.01-4.42 18.6 18.6 0 0 1-4.42-7.009c-.362-1.03-.037-2.137.703-2.877zM12.5 1a.5.5 0 0 1 .5.5V3h1.5a.5.5 0 0 1 0 1H13v1.5a.5.5 0 0 1-1 0V4h-1.5a.5.5 0 0 1 0-1H12V1.5a.5.5 0 0 1 .5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsFillTelephoneXFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M1.885.511a1.745 1.745 0 0 1 2.61.163L6.29 2.98c.329.423.445.974.315 1.494l-.547 2.19a.68.68 0 0 0 .178.643l2.457 2.457a.68.68 0 0 0 .644.178l2.189-.547a1.75 1.75 0 0 1 1.494.315l2.306 1.794c.829.645.905 1.87.163 2.611l-1.034 1.034c-.74.74-1.846 1.065-2.877.702a18.6 18.6 0 0 1-7.01-4.42 18.6 18.6 0 0 1-4.42-7.009c-.362-1.03-.037-2.137.703-2.877zm9.261 1.135a.5.5 0 0 1 .708 0L13 2.793l1.146-1.147a.5.5 0 0 1 .708.708L13.707 3.5l1.147 1.146a.5.5 0 0 1-.708.708L13 4.207l-1.146 1.147a.5.5 0 0 1-.708-.708L12.293 3.5l-1.147-1.146a.5.5 0 0 1 0-.708\"},\"child\":[]}]})(props);\n};\nexport function BsFillTerminalFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 3a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v10a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm9.5 5.5h-3a.5.5 0 0 0 0 1h3a.5.5 0 0 0 0-1m-6.354-.354a.5.5 0 1 0 .708.708l2-2a.5.5 0 0 0 0-.708l-2-2a.5.5 0 1 0-.708.708L4.793 6.5z\"},\"child\":[]}]})(props);\n};\nexport function BsFillThreadsFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.81 9.204c0-.41.197-1.062 1.727-1.062.469 0 .758.034 1.146.121-.124 1.606-.91 1.818-1.674 1.818-.418 0-1.2-.218-1.2-.877Z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2.59 16h10.82A2.59 2.59 0 0 0 16 13.41V2.59A2.59 2.59 0 0 0 13.41 0H2.59A2.59 2.59 0 0 0 0 2.59v10.82A2.59 2.59 0 0 0 2.59 16M5.866 5.91c.567-.81 1.315-1.126 2.35-1.126.73 0 1.351.246 1.795.711.443.466.696 1.132.754 1.983q.368.154.678.363c.832.559 1.29 1.395 1.29 2.353 0 2.037-1.67 3.806-4.692 3.806-2.595 0-5.291-1.51-5.291-6.004C2.75 3.526 5.361 2 8.033 2c1.234 0 4.129.182 5.217 3.777l-1.02.264c-.842-2.56-2.607-2.968-4.224-2.968-2.675 0-4.187 1.628-4.187 5.093 0 3.107 1.69 4.757 4.222 4.757 2.083 0 3.636-1.082 3.636-2.667 0-1.079-.906-1.595-.953-1.595-.177.925-.651 2.482-2.733 2.482-1.213 0-2.26-.838-2.26-1.936 0-1.568 1.488-2.136 2.663-2.136.44 0 .97.03 1.247.086 0-.478-.404-1.296-1.426-1.296-.911 0-1.16.288-1.45.624l-.024.027c-.202-.135-.875-.601-.875-.601Z\"},\"child\":[]}]})(props);\n};\nexport function BsFillThunderboltFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M1 3a1 1 0 0 0-1 1v7.293A1 1 0 0 0 .293 12L2 13.707a1 1 0 0 0 .707.293h10.586a1 1 0 0 0 .707-.293L15.707 12a1 1 0 0 0 .293-.707V4a1 1 0 0 0-1-1zm2.5 3h9a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-9a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsFillTicketDetailedFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 4.5A1.5 1.5 0 0 1 1.5 3h13A1.5 1.5 0 0 1 16 4.5V6a.5.5 0 0 1-.5.5 1.5 1.5 0 0 0 0 3 .5.5 0 0 1 .5.5v1.5a1.5 1.5 0 0 1-1.5 1.5h-13A1.5 1.5 0 0 1 0 11.5V10a.5.5 0 0 1 .5-.5 1.5 1.5 0 1 0 0-3A.5.5 0 0 1 0 6zm4 1a.5.5 0 0 0 .5.5h7a.5.5 0 0 0 0-1h-7a.5.5 0 0 0-.5.5m0 5a.5.5 0 0 0 .5.5h7a.5.5 0 0 0 0-1h-7a.5.5 0 0 0-.5.5M4 8a1 1 0 0 0 1 1h6a1 1 0 1 0 0-2H5a1 1 0 0 0-1 1\"},\"child\":[]}]})(props);\n};\nexport function BsFillTicketFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M1.5 3A1.5 1.5 0 0 0 0 4.5V6a.5.5 0 0 0 .5.5 1.5 1.5 0 1 1 0 3 .5.5 0 0 0-.5.5v1.5A1.5 1.5 0 0 0 1.5 13h13a1.5 1.5 0 0 0 1.5-1.5V10a.5.5 0 0 0-.5-.5 1.5 1.5 0 0 1 0-3A.5.5 0 0 0 16 6V4.5A1.5 1.5 0 0 0 14.5 3z\"},\"child\":[]}]})(props);\n};\nexport function BsFillTicketPerforatedFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 4.5A1.5 1.5 0 0 1 1.5 3h13A1.5 1.5 0 0 1 16 4.5V6a.5.5 0 0 1-.5.5 1.5 1.5 0 0 0 0 3 .5.5 0 0 1 .5.5v1.5a1.5 1.5 0 0 1-1.5 1.5h-13A1.5 1.5 0 0 1 0 11.5V10a.5.5 0 0 1 .5-.5 1.5 1.5 0 1 0 0-3A.5.5 0 0 1 0 6zm4-1v1h1v-1zm1 3v-1H4v1zm7 0v-1h-1v1zm-1-2h1v-1h-1zm-6 3H4v1h1zm7 1v-1h-1v1zm-7 1H4v1h1zm7 1v-1h-1v1zm-8 1v1h1v-1zm7 1h1v-1h-1z\"},\"child\":[]}]})(props);\n};\nexport function BsFillTrainFreightFrontFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5.736 0a1.5 1.5 0 0 0-.67.158L1.828 1.776A1.5 1.5 0 0 0 1 3.118v5.51l2-.6V5a1 1 0 0 1 1-1h8a1 1 0 0 1 1 1v3.028l2 .6v-5.51a1.5 1.5 0 0 0-.83-1.342L10.936.158A1.5 1.5 0 0 0 10.264 0zM15 9.672l-5.503-1.65A.5.5 0 0 0 9.353 8H8.5v8h4a2.5 2.5 0 0 0 2.5-2.5zM7.5 16V8h-.853a.5.5 0 0 0-.144.021L1 9.672V13.5A2.5 2.5 0 0 0 3.5 16zm-1-14h3a.5.5 0 0 1 0 1h-3a.5.5 0 0 1 0-1M12 5v2.728l-2.216-.665A1.5 1.5 0 0 0 9.354 7H8.5V5zM7.5 5v2h-.853a1.5 1.5 0 0 0-.431.063L4 7.728V5zm-4 5a.5.5 0 1 1 0 1 .5.5 0 0 1 0-1m9 0a.5.5 0 1 1 0 1 .5.5 0 0 1 0-1M5 13a1 1 0 1 1-2 0 1 1 0 0 1 2 0m7 1a1 1 0 1 1 0-2 1 1 0 0 1 0 2\"},\"child\":[]}]})(props);\n};\nexport function BsFillTrainFrontFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M10.621.515C8.647.02 7.353.02 5.38.515c-.924.23-1.982.766-2.78 1.22C1.566 2.322 1 3.432 1 4.582V13.5A2.5 2.5 0 0 0 3.5 16h9a2.5 2.5 0 0 0 2.5-2.5V4.583c0-1.15-.565-2.26-1.6-2.849-.797-.453-1.855-.988-2.779-1.22ZM6.5 2h3a.5.5 0 0 1 0 1h-3a.5.5 0 0 1 0-1m-2 2h7A1.5 1.5 0 0 1 13 5.5v2A1.5 1.5 0 0 1 11.5 9h-7A1.5 1.5 0 0 1 3 7.5v-2A1.5 1.5 0 0 1 4.5 4m.5 9a1 1 0 1 1-2 0 1 1 0 0 1 2 0m0 0a1 1 0 1 1 2 0 1 1 0 0 1-2 0m8 0a1 1 0 1 1-2 0 1 1 0 0 1 2 0m-3-1a1 1 0 1 1 0 2 1 1 0 0 1 0-2M4 5.5a.5.5 0 0 1 .5-.5h3v3h-3a.5.5 0 0 1-.5-.5zM8.5 8V5h3a.5.5 0 0 1 .5.5v2a.5.5 0 0 1-.5.5z\"},\"child\":[]}]})(props);\n};\nexport function BsFillTrainLightrailFrontFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.5 0a.5.5 0 0 0 0 1h1v1.011c-1.525.064-3.346.394-4.588.655C1.775 2.904 1 3.915 1 5.055V13.5A2.5 2.5 0 0 0 3.5 16h9a2.5 2.5 0 0 0 2.5-2.5V5.055c0-1.14-.775-2.15-1.912-2.39-1.242-.26-3.063-.59-4.588-.654V1h1a.5.5 0 0 0 0-1zM8 4c1.136 0 2.645.2 3.604.346.825.126 1.356.9 1.244 1.697q-.034.24-.07.522C12.643 7.596 12.5 8.949 12.5 10c0 .428.024.933.062 1.464.066.93.174 1.92.266 2.682.042.34.08.634.109.854h-1.01a63 63 0 0 1-.327-3H9.354c-.36 0-.704-.143-.958-.396a.35.35 0 0 0-.25-.104h-.292a.35.35 0 0 0-.25.104 1.35 1.35 0 0 1-.958.396H4.4a63 63 0 0 1-.328 3H3.064c.029-.22.067-.514.108-.854.092-.761.2-1.752.266-2.682.038-.531.062-1.036.062-1.464 0-1.051-.143-2.404-.278-3.435l-.07-.522c-.112-.798.42-1.571 1.244-1.697C5.356 4.199 6.864 4 8 4m-1.354 7H4.47c.019-.353.03-.692.03-1 0-.927-.104-2.051-.216-3h7.432c-.112.949-.216 2.073-.216 3 0 .308.011.647.03 1H9.354a.35.35 0 0 1-.25-.104 1.35 1.35 0 0 0-.958-.396h-.292c-.36 0-.704.143-.958.396a.35.35 0 0 1-.25.104m5.199-5h-7.69l-.013-.096a.497.497 0 0 1 .405-.57C5.505 5.188 6.947 5 8 5s2.495.188 3.453.334a.497.497 0 0 1 .405.57zM6 13.5a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0m0 0a.5.5 0 1 1 1 0 .5.5 0 0 1-1 0m4 0a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0m0 0a.5.5 0 1 1 1 0 .5.5 0 0 1-1 0\"},\"child\":[]}]})(props);\n};\nexport function BsFillTrashFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2.5 1a1 1 0 0 0-1 1v1a1 1 0 0 0 1 1H3v9a2 2 0 0 0 2 2h6a2 2 0 0 0 2-2V4h.5a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H10a1 1 0 0 0-1-1H7a1 1 0 0 0-1 1zm3 4a.5.5 0 0 1 .5.5v7a.5.5 0 0 1-1 0v-7a.5.5 0 0 1 .5-.5M8 5a.5.5 0 0 1 .5.5v7a.5.5 0 0 1-1 0v-7A.5.5 0 0 1 8 5m3 .5v7a.5.5 0 0 1-1 0v-7a.5.5 0 0 1 1 0\"},\"child\":[]}]})(props);\n};\nexport function BsFillTrash2Fill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2.037 3.225A.7.7 0 0 1 2 3c0-1.105 2.686-2 6-2s6 .895 6 2a.7.7 0 0 1-.037.225l-1.684 10.104A2 2 0 0 1 10.305 15H5.694a2 2 0 0 1-1.973-1.671zm9.89-.69C10.966 2.214 9.578 2 8 2c-1.58 0-2.968.215-3.926.534-.477.16-.795.327-.975.466.18.14.498.307.975.466C5.032 3.786 6.42 4 8 4s2.967-.215 3.926-.534c.477-.16.795-.327.975-.466-.18-.14-.498-.307-.975-.466z\"},\"child\":[]}]})(props);\n};\nexport function BsFillTrash3Fill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M11 1.5v1h3.5a.5.5 0 0 1 0 1h-.538l-.853 10.66A2 2 0 0 1 11.115 16h-6.23a2 2 0 0 1-1.994-1.84L2.038 3.5H1.5a.5.5 0 0 1 0-1H5v-1A1.5 1.5 0 0 1 6.5 0h3A1.5 1.5 0 0 1 11 1.5m-5 0v1h4v-1a.5.5 0 0 0-.5-.5h-3a.5.5 0 0 0-.5.5M4.5 5.029l.5 8.5a.5.5 0 1 0 .998-.06l-.5-8.5a.5.5 0 1 0-.998.06m6.53-.528a.5.5 0 0 0-.528.47l-.5 8.5a.5.5 0 0 0 .998.058l.5-8.5a.5.5 0 0 0-.47-.528M8 4.5a.5.5 0 0 0-.5.5v8.5a.5.5 0 0 0 1 0V5a.5.5 0 0 0-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsFillTreeFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.416.223a.5.5 0 0 0-.832 0l-3 4.5A.5.5 0 0 0 5 5.5h.098L3.076 8.735A.5.5 0 0 0 3.5 9.5h.191l-1.638 3.276a.5.5 0 0 0 .447.724H7V16h2v-2.5h4.5a.5.5 0 0 0 .447-.724L12.31 9.5h.191a.5.5 0 0 0 .424-.765L10.902 5.5H11a.5.5 0 0 0 .416-.777z\"},\"child\":[]}]})(props);\n};\nexport function BsFillTriangleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M7.022 1.566a1.13 1.13 0 0 1 1.96 0l6.857 11.667c.457.778-.092 1.767-.98 1.767H1.144c-.889 0-1.437-.99-.98-1.767z\"},\"child\":[]}]})(props);\n};\nexport function BsFillTrophyFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2.5.5A.5.5 0 0 1 3 0h10a.5.5 0 0 1 .5.5q0 .807-.034 1.536a3 3 0 1 1-1.133 5.89c-.79 1.865-1.878 2.777-2.833 3.011v2.173l1.425.356c.194.048.377.135.537.255L13.3 15.1a.5.5 0 0 1-.3.9H3a.5.5 0 0 1-.3-.9l1.838-1.379c.16-.12.343-.207.537-.255L6.5 13.11v-2.173c-.955-.234-2.043-1.146-2.833-3.012a3 3 0 1 1-1.132-5.89A33 33 0 0 1 2.5.5m.099 2.54a2 2 0 0 0 .72 3.935c-.333-1.05-.588-2.346-.72-3.935m10.083 3.935a2 2 0 0 0 .72-3.935c-.133 1.59-.388 2.885-.72 3.935\"},\"child\":[]}]})(props);\n};\nexport function BsFillTruckFrontFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3.5 0A2.5 2.5 0 0 0 1 2.5v9c0 .818.393 1.544 1 2v2a.5.5 0 0 0 .5.5h2a.5.5 0 0 0 .5-.5V14h6v1.5a.5.5 0 0 0 .5.5h2a.5.5 0 0 0 .5-.5v-2c.607-.456 1-1.182 1-2v-9A2.5 2.5 0 0 0 12.5 0zM3 3a1 1 0 0 1 1-1h8a1 1 0 0 1 1 1v3.9c0 .625-.562 1.092-1.17.994C10.925 7.747 9.208 7.5 8 7.5s-2.925.247-3.83.394A1.008 1.008 0 0 1 3 6.9zm1 9a1 1 0 1 1 0-2 1 1 0 0 1 0 2m8 0a1 1 0 1 1 0-2 1 1 0 0 1 0 2m-5-2h2a1 1 0 1 1 0 2H7a1 1 0 1 1 0-2\"},\"child\":[]}]})(props);\n};\nexport function BsFillTvFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2.5 13.5A.5.5 0 0 1 3 13h10a.5.5 0 0 1 0 1H3a.5.5 0 0 1-.5-.5M2 2h12s2 0 2 2v6s0 2-2 2H2s-2 0-2-2V4s0-2 2-2\"},\"child\":[]}]})(props);\n};\nexport function BsFillUmbrellaFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M8 0a.5.5 0 0 1 .5.5v.514C12.625 1.238 16 4.22 16 8c0 0 0 .5-.5.5-.149 0-.352-.145-.352-.145l-.004-.004-.025-.023a3.5 3.5 0 0 0-.555-.394A3.17 3.17 0 0 0 13 7.5c-.638 0-1.178.213-1.564.434a3.5 3.5 0 0 0-.555.394l-.025.023-.003.003s-.204.146-.353.146-.352-.145-.352-.145l-.004-.004-.025-.023a3.5 3.5 0 0 0-.555-.394 3.3 3.3 0 0 0-1.064-.39V13.5H8h.5v.039l-.005.083a3 3 0 0 1-.298 1.102 2.26 2.26 0 0 1-.763.88C7.06 15.851 6.587 16 6 16s-1.061-.148-1.434-.396a2.26 2.26 0 0 1-.763-.88 3 3 0 0 1-.302-1.185v-.025l-.001-.009v-.003s0-.002.5-.002h-.5V13a.5.5 0 0 1 1 0v.506l.003.044a2 2 0 0 0 .195.726c.095.191.23.367.423.495.19.127.466.229.879.229s.689-.102.879-.229c.193-.128.328-.304.424-.495a2 2 0 0 0 .197-.77V7.544a3.3 3.3 0 0 0-1.064.39 3.5 3.5 0 0 0-.58.417l-.004.004S5.65 8.5 5.5 8.5s-.352-.145-.352-.145l-.004-.004a3.5 3.5 0 0 0-.58-.417A3.17 3.17 0 0 0 3 7.5c-.638 0-1.177.213-1.564.434a3.5 3.5 0 0 0-.58.417l-.004.004S.65 8.5.5 8.5C0 8.5 0 8 0 8c0-3.78 3.375-6.762 7.5-6.986V.5A.5.5 0 0 1 8 0\"},\"child\":[]}]})(props);\n};\nexport function BsFillUnlockFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M11 1a2 2 0 0 0-2 2v4a2 2 0 0 1 2 2v5a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2V9a2 2 0 0 1 2-2h5V3a3 3 0 0 1 6 0v4a.5.5 0 0 1-1 0V3a2 2 0 0 0-2-2\"},\"child\":[]}]})(props);\n};\nexport function BsFillUsbCFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3 5a3 3 0 0 0 0 6h10a3 3 0 1 0 0-6zm.5 2.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1 0-1\"},\"child\":[]}]})(props);\n};\nexport function BsFillUsbDriveFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6 .5a.5.5 0 0 1 .5-.5h4a.5.5 0 0 1 .5.5v4H6zM7 1v1h1V1zm2 0v1h1V1zM5.5 5a.5.5 0 0 0-.5.5V15a1 1 0 0 0 1 1h5a1 1 0 0 0 1-1V5.5a.5.5 0 0 0-.5-.5z\"},\"child\":[]}]})(props);\n};\nexport function BsFillUsbFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M.5 5a.5.5 0 0 0-.5.5v5a.5.5 0 0 0 .5.5h15a.5.5 0 0 0 .5-.5v-5a.5.5 0 0 0-.5-.5zm1.75 1.5h11.5a.25.25 0 0 1 .25.25v1a.25.25 0 0 1-.25.25H2.25A.25.25 0 0 1 2 7.75v-1a.25.25 0 0 1 .25-.25\"},\"child\":[]}]})(props);\n};\nexport function BsFillUsbMicroFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2.707 4A1 1 0 0 0 2 4.293L.293 6A1 1 0 0 0 0 6.707V11a1 1 0 0 0 1 1h14a1 1 0 0 0 1-1V6.707A1 1 0 0 0 15.707 6L14 4.293A1 1 0 0 0 13.293 4zM4.5 7h7a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-7a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsFillUsbMiniFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3 3a1 1 0 0 0-1 1v1.293L.293 7A1 1 0 0 0 0 7.707V12a1 1 0 0 0 1 1h14a1 1 0 0 0 1-1V7.707A1 1 0 0 0 15.707 7L14 5.293V4a1 1 0 0 0-1-1zm.5 5h9a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-9a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsFillUsbPlugFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6 .5a.5.5 0 0 1 .5-.5h4a.5.5 0 0 1 .5.5v4H6zM7 1v1h1V1zm2 0v1h1V1zM5.5 5a.5.5 0 0 0-.5.5v4.894a2 2 0 0 0 .336 1.11l.83 1.245c.544.816.834 1.774.834 2.754 0 .275.222.497.497.497h2.006a.497.497 0 0 0 .497-.497c0-.98.29-1.938.834-2.754l.83-1.245a2 2 0 0 0 .336-1.11V5.5a.5.5 0 0 0-.5-.5z\"},\"child\":[]}]})(props);\n};\nexport function BsFillVinylFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 6a2 2 0 1 0 0 4 2 2 0 0 0 0-4m0 3a1 1 0 1 1 0-2 1 1 0 0 1 0 2\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0M4 8a4 4 0 1 0 8 0 4 4 0 0 0-8 0\"},\"child\":[]}]})(props);\n};\nexport function BsFillVolumeDownFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9 4a.5.5 0 0 0-.812-.39L5.825 5.5H3.5A.5.5 0 0 0 3 6v4a.5.5 0 0 0 .5.5h2.325l2.363 1.89A.5.5 0 0 0 9 12zm3.025 4a4.5 4.5 0 0 1-1.318 3.182L10 10.475A3.5 3.5 0 0 0 11.025 8 3.5 3.5 0 0 0 10 5.525l.707-.707A4.5 4.5 0 0 1 12.025 8\"},\"child\":[]}]})(props);\n};\nexport function BsFillVolumeMuteFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.717 3.55A.5.5 0 0 1 7 4v8a.5.5 0 0 1-.812.39L3.825 10.5H1.5A.5.5 0 0 1 1 10V6a.5.5 0 0 1 .5-.5h2.325l2.363-1.89a.5.5 0 0 1 .529-.06m7.137 2.096a.5.5 0 0 1 0 .708L12.207 8l1.647 1.646a.5.5 0 0 1-.708.708L11.5 8.707l-1.646 1.647a.5.5 0 0 1-.708-.708L10.793 8 9.146 6.354a.5.5 0 1 1 .708-.708L11.5 7.293l1.646-1.647a.5.5 0 0 1 .708 0\"},\"child\":[]}]})(props);\n};\nexport function BsFillVolumeOffFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M10.717 3.55A.5.5 0 0 1 11 4v8a.5.5 0 0 1-.812.39L7.825 10.5H5.5A.5.5 0 0 1 5 10V6a.5.5 0 0 1 .5-.5h2.325l2.363-1.89a.5.5 0 0 1 .529-.06\"},\"child\":[]}]})(props);\n};\nexport function BsFillVolumeUpFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M11.536 14.01A8.47 8.47 0 0 0 14.026 8a8.47 8.47 0 0 0-2.49-6.01l-.708.707A7.48 7.48 0 0 1 13.025 8c0 2.071-.84 3.946-2.197 5.303z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M10.121 12.596A6.48 6.48 0 0 0 12.025 8a6.48 6.48 0 0 0-1.904-4.596l-.707.707A5.48 5.48 0 0 1 11.025 8a5.48 5.48 0 0 1-1.61 3.89z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8.707 11.182A4.5 4.5 0 0 0 10.025 8a4.5 4.5 0 0 0-1.318-3.182L8 5.525A3.5 3.5 0 0 1 9.025 8 3.5 3.5 0 0 1 8 10.475zM6.717 3.55A.5.5 0 0 1 7 4v8a.5.5 0 0 1-.812.39L3.825 10.5H1.5A.5.5 0 0 1 1 10V6a.5.5 0 0 1 .5-.5h2.325l2.363-1.89a.5.5 0 0 1 .529-.06\"},\"child\":[]}]})(props);\n};\nexport function BsFillWalletFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M1.5 2A1.5 1.5 0 0 0 0 3.5v2h6a.5.5 0 0 1 .5.5c0 .253.08.644.306.958.207.288.557.542 1.194.542s.987-.254 1.194-.542C9.42 6.644 9.5 6.253 9.5 6a.5.5 0 0 1 .5-.5h6v-2A1.5 1.5 0 0 0 14.5 2z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M16 6.5h-5.551a2.7 2.7 0 0 1-.443 1.042C9.613 8.088 8.963 8.5 8 8.5s-1.613-.412-2.006-.958A2.7 2.7 0 0 1 5.551 6.5H0v6A1.5 1.5 0 0 0 1.5 14h13a1.5 1.5 0 0 0 1.5-1.5z\"},\"child\":[]}]})(props);\n};\nexport function BsFillWebcamFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.644 11.094a.5.5 0 0 1 .356-.15h2a.5.5 0 0 1 .356.15c.175.177.39.347.603.496a7 7 0 0 0 .752.456l.01.006h.003A.5.5 0 0 1 10.5 13h-5a.5.5 0 0 1-.224-.947l.002-.001.01-.006a4 4 0 0 0 .214-.116 8 8 0 0 0 .539-.34c.214-.15.428-.319.603-.496M7 6.5a1 1 0 1 1 2 0 1 1 0 0 1-2 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 3a2 2 0 0 0-2 2v3a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V5a2 2 0 0 0-2-2zm6 1.5a2 2 0 1 1 0 4 2 2 0 0 1 0-4M12.5 7a.5.5 0 1 1 0-1 .5.5 0 0 1 0 1\"},\"child\":[]}]})(props);\n};\nexport function BsFillWrenchAdjustableCircleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.705 8.139a.25.25 0 0 0-.288-.376l-1.5.5.159.474.808-.27-.595.894a.25.25 0 0 0 .287.376l.808-.27-.595.894a.25.25 0 0 0 .287.376l1.5-.5-.159-.474-.808.27.596-.894a.25.25 0 0 0-.288-.376l-.808.27z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8 16A8 8 0 1 0 8 0a8 8 0 0 0 0 16m-6.202-4.751 1.988-1.657a4.5 4.5 0 0 1 7.537-4.623L7.497 6.5l1 2.5 1.333 3.11c-.56.251-1.18.39-1.833.39a4.5 4.5 0 0 1-1.592-.29L4.747 14.2a7.03 7.03 0 0 1-2.949-2.951M12.496 8a4.5 4.5 0 0 1-1.703 3.526L9.497 8.5l2.959-1.11q.04.3.04.61\"},\"child\":[]}]})(props);\n};\nexport function BsFillXCircleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0M5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293z\"},\"child\":[]}]})(props);\n};\nexport function BsFillXDiamondFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.05.435c-.58-.58-1.52-.58-2.1 0L4.047 3.339 8 7.293l3.954-3.954L9.049.435zm3.61 3.611L8.708 8l3.954 3.954 2.904-2.905c.58-.58.58-1.519 0-2.098l-2.904-2.905zm-.706 8.614L8 8.708l-3.954 3.954 2.905 2.904c.58.58 1.519.58 2.098 0l2.905-2.904zm-8.614-.706L7.292 8 3.339 4.046.435 6.951c-.58.58-.58 1.519 0 2.098z\"},\"child\":[]}]})(props);\n};\nexport function BsFillXOctagonFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M11.46.146A.5.5 0 0 0 11.107 0H4.893a.5.5 0 0 0-.353.146L.146 4.54A.5.5 0 0 0 0 4.893v6.214a.5.5 0 0 0 .146.353l4.394 4.394a.5.5 0 0 0 .353.146h6.214a.5.5 0 0 0 .353-.146l4.394-4.394a.5.5 0 0 0 .146-.353V4.893a.5.5 0 0 0-.146-.353zm-6.106 4.5L8 7.293l2.646-2.647a.5.5 0 0 1 .708.708L8.707 8l2.647 2.646a.5.5 0 0 1-.708.708L8 8.707l-2.646 2.647a.5.5 0 0 1-.708-.708L7.293 8 4.646 5.354a.5.5 0 1 1 .708-.708\"},\"child\":[]}]})(props);\n};\nexport function BsFillXSquareFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm3.354 4.646L8 7.293l2.646-2.647a.5.5 0 0 1 .708.708L8.707 8l2.647 2.646a.5.5 0 0 1-.708.708L8 8.707l-2.646 2.647a.5.5 0 0 1-.708-.708L7.293 8 4.646 5.354a.5.5 0 1 1 .708-.708\"},\"child\":[]}]})(props);\n};\nexport function BsReverseBackspaceReverse (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.854 5.146a.5.5 0 0 1 0 .708L7.707 8l2.147 2.146a.5.5 0 0 1-.708.708L7 8.707l-2.146 2.147a.5.5 0 0 1-.708-.708L6.293 8 4.146 5.854a.5.5 0 1 1 .708-.708L7 7.293l2.146-2.147a.5.5 0 0 1 .708 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 1a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h7.08a2 2 0 0 0 1.519-.698l4.843-5.651a1 1 0 0 0 0-1.302L10.6 1.7A2 2 0 0 0 9.08 1zm7.08 1a1 1 0 0 1 .76.35L14.682 8l-4.844 5.65a1 1 0 0 1-.759.35H2a1 1 0 0 1-1-1V3a1 1 0 0 1 1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsReverseLayoutSidebarInsetReverse (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 2a1 1 0 0 0-1 1v10a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V3a1 1 0 0 0-1-1zm12-1a2 2 0 0 1 2 2v10a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M13 4a1 1 0 0 0-1-1h-2a1 1 0 0 0-1 1v8a1 1 0 0 0 1 1h2a1 1 0 0 0 1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsReverseLayoutSidebarReverse (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 3a2 2 0 0 0-2-2H2a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2zm-5-1v12H2a1 1 0 0 1-1-1V3a1 1 0 0 1 1-1zm1 0h2a1 1 0 0 1 1 1v10a1 1 0 0 1-1 1h-2z\"},\"child\":[]}]})(props);\n};\nexport function BsReverseLayoutTextSidebarReverse (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12.5 3a.5.5 0 0 1 0 1h-5a.5.5 0 0 1 0-1zm0 3a.5.5 0 0 1 0 1h-5a.5.5 0 0 1 0-1zm.5 3.5a.5.5 0 0 0-.5-.5h-5a.5.5 0 0 0 0 1h5a.5.5 0 0 0 .5-.5m-.5 2.5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1 0-1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M16 2a2 2 0 0 0-2-2H2a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2zM4 1v14H2a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1zm1 0h9a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H5z\"},\"child\":[]}]})(props);\n};\nexport function BsReverseLayoutTextWindowReverse (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M13 6.5a.5.5 0 0 0-.5-.5h-5a.5.5 0 0 0 0 1h5a.5.5 0 0 0 .5-.5m0 3a.5.5 0 0 0-.5-.5h-5a.5.5 0 0 0 0 1h5a.5.5 0 0 0 .5-.5m-.5 2.5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1 0-1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M14 0a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2zM2 1a1 1 0 0 0-1 1v1h14V2a1 1 0 0 0-1-1zM1 4v10a1 1 0 0 0 1 1h2V4zm4 0v11h9a1 1 0 0 0 1-1V4z\"},\"child\":[]}]})(props);\n};\nexport function BsReverseListColumnsReverse (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M0 .5A.5.5 0 0 1 .5 0h2a.5.5 0 0 1 0 1h-2A.5.5 0 0 1 0 .5m4 0a.5.5 0 0 1 .5-.5h10a.5.5 0 0 1 0 1h-10A.5.5 0 0 1 4 .5m-4 2A.5.5 0 0 1 .5 2h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1-.5-.5m4 0a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5m-4 2A.5.5 0 0 1 .5 4h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1-.5-.5m4 0a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5m-4 2A.5.5 0 0 1 .5 6h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1-.5-.5m4 0a.5.5 0 0 1 .5-.5h8a.5.5 0 0 1 0 1h-8a.5.5 0 0 1-.5-.5m-4 2A.5.5 0 0 1 .5 8h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1-.5-.5m4 0a.5.5 0 0 1 .5-.5h8a.5.5 0 0 1 0 1h-8a.5.5 0 0 1-.5-.5m-4 2a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1-.5-.5m4 0a.5.5 0 0 1 .5-.5h10a.5.5 0 0 1 0 1h-10a.5.5 0 0 1-.5-.5m-4 2a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1-.5-.5m4 0a.5.5 0 0 1 .5-.5h6a.5.5 0 0 1 0 1h-6a.5.5 0 0 1-.5-.5m-4 2a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1-.5-.5m4 0a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function Bs0CircleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 4.951c-1.008 0-1.629 1.09-1.629 2.895v.31c0 1.81.627 2.895 1.629 2.895s1.623-1.09 1.623-2.895v-.31c0-1.8-.621-2.895-1.623-2.895\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0m-8.012 4.158c1.858 0 2.96-1.582 2.96-3.99V7.84c0-2.426-1.079-3.996-2.936-3.996-1.864 0-2.965 1.588-2.965 3.996v.328c0 2.42 1.09 3.99 2.941 3.99\"},\"child\":[]}]})(props);\n};\nexport function Bs0Circle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.988 12.158c-1.851 0-2.941-1.57-2.941-3.99V7.84c0-2.408 1.101-3.996 2.965-3.996 1.857 0 2.935 1.57 2.935 3.996v.328c0 2.408-1.101 3.99-2.959 3.99M8 4.951c-1.008 0-1.629 1.09-1.629 2.895v.31c0 1.81.627 2.895 1.629 2.895s1.623-1.09 1.623-2.895v-.31c0-1.8-.621-2.895-1.623-2.895\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0M1 8a7 7 0 1 0 14 0A7 7 0 0 0 1 8\"},\"child\":[]}]})(props);\n};\nexport function Bs0SquareFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 4.951c-1.008 0-1.629 1.09-1.629 2.895v.31c0 1.81.627 2.895 1.629 2.895s1.623-1.09 1.623-2.895v-.31c0-1.8-.621-2.895-1.623-2.895\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm5.988 12.158c-1.851 0-2.941-1.57-2.941-3.99V7.84c0-2.408 1.101-3.996 2.965-3.996 1.857 0 2.935 1.57 2.935 3.996v.328c0 2.408-1.101 3.99-2.959 3.99\"},\"child\":[]}]})(props);\n};\nexport function Bs0Square (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.988 12.158c-1.851 0-2.941-1.57-2.941-3.99V7.84c0-2.408 1.101-3.996 2.965-3.996 1.857 0 2.935 1.57 2.935 3.996v.328c0 2.408-1.101 3.99-2.959 3.99M8 4.951c-1.008 0-1.629 1.09-1.629 2.895v.31c0 1.81.627 2.895 1.629 2.895s1.623-1.09 1.623-2.895v-.31c0-1.8-.621-2.895-1.623-2.895\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M0 2a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm15 0a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1z\"},\"child\":[]}]})(props);\n};\nexport function Bs1CircleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0M9.283 4.002H7.971L6.072 5.385v1.271l1.834-1.318h.065V12h1.312z\"},\"child\":[]}]})(props);\n};\nexport function Bs1Circle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M1 8a7 7 0 1 0 14 0A7 7 0 0 0 1 8m15 0A8 8 0 1 1 0 8a8 8 0 0 1 16 0M9.283 4.002V12H7.971V5.338h-.065L6.072 6.656V5.385l1.899-1.383z\"},\"child\":[]}]})(props);\n};\nexport function Bs1SquareFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm7.283 4.002V12H7.971V5.338h-.065L6.072 6.656V5.385l1.899-1.383z\"},\"child\":[]}]})(props);\n};\nexport function Bs1Square (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.283 4.002V12H7.971V5.338h-.065L6.072 6.656V5.385l1.899-1.383z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M0 2a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm15 0a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1z\"},\"child\":[]}]})(props);\n};\nexport function Bs123 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2.873 11.297V4.142H1.699L0 5.379v1.137l1.64-1.18h.06v5.961zm3.213-5.09v-.063c0-.618.44-1.169 1.196-1.169.676 0 1.174.44 1.174 1.106 0 .624-.42 1.101-.807 1.526L4.99 10.553v.744h4.78v-.99H6.643v-.069L8.41 8.252c.65-.724 1.237-1.332 1.237-2.27C9.646 4.849 8.723 4 7.308 4c-1.573 0-2.36 1.064-2.36 2.15v.057zm6.559 1.883h.786c.823 0 1.374.481 1.379 1.179.01.707-.55 1.216-1.421 1.21-.77-.005-1.326-.419-1.379-.953h-1.095c.042 1.053.938 1.918 2.464 1.918 1.478 0 2.642-.839 2.62-2.144-.02-1.143-.922-1.651-1.551-1.714v-.063c.535-.09 1.347-.66 1.326-1.678-.026-1.053-.933-1.855-2.359-1.845-1.5.005-2.317.88-2.348 1.898h1.116c.032-.498.498-.944 1.206-.944.703 0 1.206.435 1.206 1.07.005.64-.504 1.106-1.2 1.106h-.75z\"},\"child\":[]}]})(props);\n};\nexport function Bs2CircleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0M6.646 6.24c0-.691.493-1.306 1.336-1.306.756 0 1.313.492 1.313 1.236 0 .697-.469 1.23-.902 1.705l-2.971 3.293V12h5.344v-1.107H7.268v-.077l1.974-2.22.096-.107c.688-.763 1.287-1.428 1.287-2.43 0-1.266-1.031-2.215-2.613-2.215-1.758 0-2.637 1.19-2.637 2.402v.065h1.271v-.07Z\"},\"child\":[]}]})(props);\n};\nexport function Bs2Circle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M1 8a7 7 0 1 0 14 0A7 7 0 0 0 1 8m15 0A8 8 0 1 1 0 8a8 8 0 0 1 16 0M6.646 6.24v.07H5.375v-.064c0-1.213.879-2.402 2.637-2.402 1.582 0 2.613.949 2.613 2.215 0 1.002-.6 1.667-1.287 2.43l-.096.107-1.974 2.22v.077h3.498V12H5.422v-.832l2.97-3.293c.434-.475.903-1.008.903-1.705 0-.744-.557-1.236-1.313-1.236-.843 0-1.336.615-1.336 1.306\"},\"child\":[]}]})(props);\n};\nexport function Bs2SquareFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm4.646 6.24v.07H5.375v-.064c0-1.213.879-2.402 2.637-2.402 1.582 0 2.613.949 2.613 2.215 0 1.002-.6 1.667-1.287 2.43l-.096.107-1.974 2.22v.077h3.498V12H5.422v-.832l2.97-3.293c.434-.475.903-1.008.903-1.705 0-.744-.557-1.236-1.313-1.236-.843 0-1.336.615-1.336 1.306\"},\"child\":[]}]})(props);\n};\nexport function Bs2Square (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.646 6.24v.07H5.375v-.064c0-1.213.879-2.402 2.637-2.402 1.582 0 2.613.949 2.613 2.215 0 1.002-.6 1.667-1.287 2.43l-.096.107-1.974 2.22v.077h3.498V12H5.422v-.832l2.97-3.293c.434-.475.903-1.008.903-1.705 0-.744-.557-1.236-1.313-1.236-.843 0-1.336.615-1.336 1.306\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M0 2a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm15 0a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1z\"},\"child\":[]}]})(props);\n};\nexport function Bs3CircleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0m-8.082.414c.92 0 1.535.54 1.541 1.318.012.791-.615 1.36-1.588 1.354-.861-.006-1.482-.469-1.54-1.066H5.104c.047 1.177 1.05 2.144 2.754 2.144 1.653 0 2.954-.937 2.93-2.396-.023-1.278-1.031-1.846-1.734-1.916v-.07c.597-.1 1.505-.739 1.482-1.876-.03-1.177-1.043-2.074-2.637-2.062-1.675.006-2.59.984-2.625 2.12h1.248c.036-.556.557-1.054 1.348-1.054.785 0 1.348.486 1.348 1.195.006.715-.563 1.237-1.342 1.237h-.838v1.072h.879Z\"},\"child\":[]}]})(props);\n};\nexport function Bs3Circle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.918 8.414h-.879V7.342h.838c.78 0 1.348-.522 1.342-1.237 0-.709-.563-1.195-1.348-1.195-.79 0-1.312.498-1.348 1.055H5.275c.036-1.137.95-2.115 2.625-2.121 1.594-.012 2.608.885 2.637 2.062.023 1.137-.885 1.776-1.482 1.875v.07c.703.07 1.71.64 1.734 1.917.024 1.459-1.277 2.396-2.93 2.396-1.705 0-2.707-.967-2.754-2.144H6.33c.059.597.68 1.06 1.541 1.066.973.006 1.6-.563 1.588-1.354-.006-.779-.621-1.318-1.541-1.318\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0M1 8a7 7 0 1 0 14 0A7 7 0 0 0 1 8\"},\"child\":[]}]})(props);\n};\nexport function Bs3SquareFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm5.918 8.414h-.879V7.342h.838c.78 0 1.348-.522 1.342-1.237 0-.709-.563-1.195-1.348-1.195-.79 0-1.312.498-1.348 1.055H5.275c.036-1.137.95-2.115 2.625-2.121 1.594-.012 2.608.885 2.637 2.062.023 1.137-.885 1.776-1.482 1.875v.07c.703.07 1.71.64 1.734 1.917.024 1.459-1.277 2.396-2.93 2.396-1.705 0-2.707-.967-2.754-2.144H6.33c.059.597.68 1.06 1.541 1.066.973.006 1.6-.563 1.588-1.354-.006-.779-.621-1.318-1.541-1.318\"},\"child\":[]}]})(props);\n};\nexport function Bs3Square (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.918 8.414h-.879V7.342h.838c.78 0 1.348-.522 1.342-1.237 0-.709-.563-1.195-1.348-1.195-.79 0-1.312.498-1.348 1.055H5.275c.036-1.137.95-2.115 2.625-2.121 1.594-.012 2.608.885 2.637 2.062.023 1.137-.885 1.776-1.482 1.875v.07c.703.07 1.71.64 1.734 1.917.024 1.459-1.277 2.396-2.93 2.396-1.705 0-2.707-.967-2.754-2.144H6.33c.059.597.68 1.06 1.541 1.066.973.006 1.6-.563 1.588-1.354-.006-.779-.621-1.318-1.541-1.318\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M0 2a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm15 0a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1z\"},\"child\":[]}]})(props);\n};\nexport function Bs4CircleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0M7.519 5.057c-.886 1.418-1.772 2.838-2.542 4.265v1.12H8.85V12h1.26v-1.559h1.007V9.334H10.11V4.002H8.176zM6.225 9.281v.053H8.85V5.063h-.065c-.867 1.33-1.787 2.806-2.56 4.218\"},\"child\":[]}]})(props);\n};\nexport function Bs4Circle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.519 5.057q.33-.527.657-1.055h1.933v5.332h1.008v1.107H10.11V12H8.85v-1.559H4.978V9.322c.77-1.427 1.656-2.847 2.542-4.265ZM6.225 9.281v.053H8.85V5.063h-.065c-.867 1.33-1.787 2.806-2.56 4.218\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0M1 8a7 7 0 1 0 14 0A7 7 0 0 0 1 8\"},\"child\":[]}]})(props);\n};\nexport function Bs4SquareFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.225 9.281v.053H8.85V5.063h-.065c-.867 1.33-1.787 2.806-2.56 4.218\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm5.519 5.057q.33-.527.657-1.055h1.933v5.332h1.008v1.107H10.11V12H8.85v-1.559H4.978V9.322c.77-1.427 1.656-2.847 2.542-4.265Z\"},\"child\":[]}]})(props);\n};\nexport function Bs4Square (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.519 5.057q.33-.527.657-1.055h1.933v5.332h1.008v1.107H10.11V12H8.85v-1.559H4.978V9.322c.77-1.427 1.656-2.847 2.542-4.265ZM6.225 9.281v.053H8.85V5.063h-.065c-.867 1.33-1.787 2.806-2.56 4.218\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M0 2a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm15 0a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1z\"},\"child\":[]}]})(props);\n};\nexport function Bs5CircleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0m-8.006 4.158c1.74 0 2.924-1.119 2.924-2.806 0-1.641-1.178-2.584-2.56-2.584-.897 0-1.442.421-1.612.68h-.064l.193-2.344h3.621V4.002H5.791L5.445 8.63h1.149c.193-.358.668-.809 1.435-.809.85 0 1.582.604 1.582 1.57 0 1.085-.779 1.682-1.57 1.682-.697 0-1.389-.31-1.53-1.031H5.276c.065 1.213 1.149 2.115 2.72 2.115Z\"},\"child\":[]}]})(props);\n};\nexport function Bs5Circle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M1 8a7 7 0 1 1 14 0A7 7 0 0 1 1 8m15 0A8 8 0 1 0 0 8a8 8 0 0 0 16 0m-8.006 4.158c-1.57 0-2.654-.902-2.719-2.115h1.237c.14.72.832 1.031 1.529 1.031.791 0 1.57-.597 1.57-1.681 0-.967-.732-1.57-1.582-1.57-.767 0-1.242.45-1.435.808H5.445L5.791 4h4.705v1.103H6.875l-.193 2.343h.064c.17-.258.715-.68 1.611-.68 1.383 0 2.561.944 2.561 2.585 0 1.687-1.184 2.806-2.924 2.806Z\"},\"child\":[]}]})(props);\n};\nexport function Bs5SquareFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm5.994 12.158c-1.57 0-2.654-.902-2.719-2.115h1.237c.14.72.832 1.031 1.529 1.031.791 0 1.57-.597 1.57-1.681 0-.967-.732-1.57-1.582-1.57-.767 0-1.242.45-1.435.808H5.445L5.791 4h4.705v1.103H6.875l-.193 2.343h.064c.17-.258.715-.68 1.611-.68 1.383 0 2.561.944 2.561 2.585 0 1.687-1.184 2.806-2.924 2.806Z\"},\"child\":[]}]})(props);\n};\nexport function Bs5Square (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.994 12.158c-1.57 0-2.654-.902-2.719-2.115h1.237c.14.72.832 1.031 1.529 1.031.791 0 1.57-.597 1.57-1.681 0-.967-.732-1.57-1.582-1.57-.767 0-1.242.45-1.435.808H5.445L5.791 4h4.705v1.103H6.875l-.193 2.343h.064c.17-.258.715-.68 1.611-.68 1.383 0 2.561.944 2.561 2.585 0 1.687-1.184 2.806-2.924 2.806Z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M0 2a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm15 0a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1z\"},\"child\":[]}]})(props);\n};\nexport function Bs6CircleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0M8.21 3.855c-1.868 0-3.116 1.395-3.116 4.407 0 1.183.228 2.039.597 2.642.569.926 1.477 1.254 2.409 1.254 1.629 0 2.847-1.013 2.847-2.783 0-1.676-1.254-2.555-2.508-2.555-1.125 0-1.752.61-1.98 1.155h-.082c-.012-1.946.727-3.036 1.805-3.036.802 0 1.213.457 1.312.815h1.29c-.06-.908-.962-1.899-2.573-1.899Zm-.099 4.008c-.92 0-1.564.65-1.564 1.576 0 1.032.703 1.635 1.558 1.635.868 0 1.553-.533 1.553-1.629 0-1.06-.744-1.582-1.547-1.582\"},\"child\":[]}]})(props);\n};\nexport function Bs6Circle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M1 8a7 7 0 1 0 14 0A7 7 0 0 0 1 8m15 0A8 8 0 1 1 0 8a8 8 0 0 1 16 0M8.21 3.855c1.612 0 2.515.99 2.573 1.899H9.494c-.1-.358-.51-.815-1.312-.815-1.078 0-1.817 1.09-1.805 3.036h.082c.229-.545.855-1.155 1.98-1.155 1.254 0 2.508.88 2.508 2.555 0 1.77-1.218 2.783-2.847 2.783-.932 0-1.84-.328-2.409-1.254-.369-.603-.597-1.459-.597-2.642 0-3.012 1.248-4.407 3.117-4.407Zm-.099 4.008c-.92 0-1.564.65-1.564 1.576 0 1.032.703 1.635 1.558 1.635.868 0 1.553-.533 1.553-1.629 0-1.06-.744-1.582-1.547-1.582\"},\"child\":[]}]})(props);\n};\nexport function Bs6SquareFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.111 7.863c-.92 0-1.564.65-1.564 1.576 0 1.032.703 1.635 1.558 1.635.868 0 1.553-.533 1.553-1.629 0-1.06-.744-1.582-1.547-1.582\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm6.21 3.855c1.612 0 2.515.99 2.573 1.899H9.494c-.1-.358-.51-.815-1.312-.815-1.078 0-1.817 1.09-1.805 3.036h.082c.229-.545.855-1.155 1.98-1.155 1.254 0 2.508.88 2.508 2.555 0 1.77-1.218 2.783-2.847 2.783-.932 0-1.84-.328-2.409-1.254-.369-.603-.597-1.459-.597-2.642 0-3.012 1.248-4.407 3.117-4.407Z\"},\"child\":[]}]})(props);\n};\nexport function Bs6Square (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.21 3.855c1.612 0 2.515.99 2.573 1.899H9.494c-.1-.358-.51-.815-1.312-.815-1.078 0-1.817 1.09-1.805 3.036h.082c.229-.545.855-1.155 1.98-1.155 1.254 0 2.508.88 2.508 2.555 0 1.77-1.218 2.783-2.847 2.783-.932 0-1.84-.328-2.409-1.254-.369-.603-.597-1.459-.597-2.642 0-3.012 1.248-4.407 3.117-4.407Zm-.099 4.008c-.92 0-1.564.65-1.564 1.576 0 1.032.703 1.635 1.558 1.635.868 0 1.553-.533 1.553-1.629 0-1.06-.744-1.582-1.547-1.582\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M0 2a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm15 0a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1z\"},\"child\":[]}]})(props);\n};\nexport function Bs7CircleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0M5.37 5.11h3.972v.07L6.025 12H7.42l3.258-6.85V4.002H5.369v1.107Z\"},\"child\":[]}]})(props);\n};\nexport function Bs7Circle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M1 8a7 7 0 1 0 14 0A7 7 0 0 0 1 8m15 0A8 8 0 1 1 0 8a8 8 0 0 1 16 0M5.37 5.11V4.001h5.308V5.15L7.42 12H6.025l3.317-6.82v-.07H5.369Z\"},\"child\":[]}]})(props);\n};\nexport function Bs7SquareFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm3.37 5.11V4.001h5.308V5.15L7.42 12H6.025l3.317-6.82v-.07H5.369Z\"},\"child\":[]}]})(props);\n};\nexport function Bs7Square (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5.37 5.11V4.001h5.308V5.15L7.42 12H6.025l3.317-6.82v-.07H5.369Z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M0 2a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm15 0a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1z\"},\"child\":[]}]})(props);\n};\nexport function Bs8CircleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0m-5.03 1.803c0-1.248-.943-1.84-1.646-1.992v-.065c.598-.187 1.336-.72 1.336-1.781 0-1.225-1.084-2.121-2.654-2.121s-2.66.896-2.66 2.12c0 1.044.709 1.589 1.33 1.782v.065c-.697.152-1.647.732-1.647 2.003 0 1.39 1.19 2.344 2.953 2.344 1.77 0 2.989-.96 2.989-2.355Zm-4.347-3.71c0 .739.586 1.255 1.383 1.255s1.377-.516 1.377-1.254c0-.733-.58-1.23-1.377-1.23s-1.383.497-1.383 1.23Zm-.281 3.645c0 .838.72 1.412 1.664 1.412.943 0 1.658-.574 1.658-1.412 0-.843-.715-1.424-1.658-1.424-.944 0-1.664.58-1.664 1.424\"},\"child\":[]}]})(props);\n};\nexport function Bs8Circle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M1 8a7 7 0 1 0 14 0A7 7 0 0 0 1 8m15 0A8 8 0 1 1 0 8a8 8 0 0 1 16 0m-5.03 1.803c0 1.394-1.218 2.355-2.988 2.355-1.763 0-2.953-.955-2.953-2.344 0-1.271.95-1.851 1.647-2.003v-.065c-.621-.193-1.33-.738-1.33-1.781 0-1.225 1.09-2.121 2.66-2.121s2.654.896 2.654 2.12c0 1.061-.738 1.595-1.336 1.782v.065c.703.152 1.647.744 1.647 1.992Zm-4.347-3.71c0 .739.586 1.255 1.383 1.255s1.377-.516 1.377-1.254c0-.733-.58-1.23-1.377-1.23s-1.383.497-1.383 1.23Zm-.281 3.645c0 .838.72 1.412 1.664 1.412.943 0 1.658-.574 1.658-1.412 0-.843-.715-1.424-1.658-1.424-.944 0-1.664.58-1.664 1.424\"},\"child\":[]}]})(props);\n};\nexport function Bs8SquareFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.623 6.094c0 .738.586 1.254 1.383 1.254s1.377-.516 1.377-1.254c0-.733-.58-1.23-1.377-1.23s-1.383.497-1.383 1.23m-.281 3.644c0 .838.72 1.412 1.664 1.412.943 0 1.658-.574 1.658-1.412 0-.843-.715-1.424-1.658-1.424-.944 0-1.664.58-1.664 1.424\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm8.97 9.803c0 1.394-1.218 2.355-2.988 2.355-1.763 0-2.953-.955-2.953-2.344 0-1.271.95-1.851 1.647-2.003v-.065c-.621-.193-1.33-.738-1.33-1.781 0-1.225 1.09-2.121 2.66-2.121s2.654.896 2.654 2.12c0 1.061-.738 1.595-1.336 1.782v.065c.703.152 1.647.744 1.647 1.992Z\"},\"child\":[]}]})(props);\n};\nexport function Bs8Square (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M10.97 9.803c0 1.394-1.218 2.355-2.988 2.355-1.763 0-2.953-.955-2.953-2.344 0-1.271.95-1.851 1.647-2.003v-.065c-.621-.193-1.33-.738-1.33-1.781 0-1.225 1.09-2.121 2.66-2.121s2.654.896 2.654 2.12c0 1.061-.738 1.595-1.336 1.782v.065c.703.152 1.647.744 1.647 1.992Zm-4.347-3.71c0 .739.586 1.255 1.383 1.255s1.377-.516 1.377-1.254c0-.733-.58-1.23-1.377-1.23s-1.383.497-1.383 1.23Zm-.281 3.645c0 .838.72 1.412 1.664 1.412.943 0 1.658-.574 1.658-1.412 0-.843-.715-1.424-1.658-1.424-.944 0-1.664.58-1.664 1.424\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M0 2a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm15 0a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1z\"},\"child\":[]}]})(props);\n};\nexport function Bs9CircleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0m-8.223 4.146c2.104 0 3.123-1.464 3.123-4.3 0-3.147-1.459-4.014-2.97-4.014-1.63 0-2.871 1.02-2.871 2.73 0 1.706 1.171 2.667 2.566 2.667 1.06 0 1.7-.557 1.934-1.184h.076c.047 1.67-.475 3.023-1.834 3.023-.71 0-1.149-.363-1.248-.72H5.258c.094.908.926 1.798 2.52 1.798Zm.118-3.972c.808 0 1.535-.528 1.535-1.594s-.668-1.676-1.56-1.676c-.838 0-1.517.616-1.517 1.659 0 1.072.708 1.61 1.54 1.61Z\"},\"child\":[]}]})(props);\n};\nexport function Bs9Circle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M1 8a7 7 0 1 0 14 0A7 7 0 0 0 1 8m15 0A8 8 0 1 1 0 8a8 8 0 0 1 16 0m-8.223 4.146c-1.593 0-2.425-.89-2.52-1.798h1.296c.1.357.539.72 1.248.72 1.36 0 1.88-1.353 1.834-3.023h-.076c-.235.627-.873 1.184-1.934 1.184-1.395 0-2.566-.961-2.566-2.666 0-1.711 1.242-2.731 2.87-2.731 1.512 0 2.971.867 2.971 4.014 0 2.836-1.02 4.3-3.123 4.3m.118-3.972c.808 0 1.535-.528 1.535-1.594s-.668-1.676-1.56-1.676c-.838 0-1.517.616-1.517 1.659 0 1.072.708 1.61 1.54 1.61Z\"},\"child\":[]}]})(props);\n};\nexport function Bs9SquareFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.895 8.174c.808 0 1.535-.528 1.535-1.594s-.668-1.676-1.56-1.676c-.838 0-1.517.616-1.517 1.659 0 1.072.708 1.61 1.54 1.61Z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm5.777 12.146c-1.593 0-2.425-.89-2.52-1.798h1.296c.1.357.539.72 1.248.72 1.36 0 1.88-1.353 1.834-3.023h-.076c-.235.627-.873 1.184-1.934 1.184-1.395 0-2.566-.961-2.566-2.666 0-1.711 1.242-2.731 2.87-2.731 1.512 0 2.971.867 2.971 4.014 0 2.836-1.02 4.3-3.123 4.3\"},\"child\":[]}]})(props);\n};\nexport function Bs9Square (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.777 12.146c-1.593 0-2.425-.89-2.52-1.798h1.296c.1.357.539.72 1.248.72 1.36 0 1.88-1.353 1.834-3.023h-.076c-.235.627-.873 1.184-1.934 1.184-1.395 0-2.566-.961-2.566-2.666 0-1.711 1.242-2.731 2.87-2.731 1.512 0 2.971.867 2.971 4.014 0 2.836-1.02 4.3-3.123 4.3m.118-3.972c.808 0 1.535-.528 1.535-1.594s-.668-1.676-1.56-1.676c-.838 0-1.517.616-1.517 1.659 0 1.072.708 1.61 1.54 1.61Z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M0 2a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm15 0a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsActivity (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M6 2a.5.5 0 0 1 .47.33L10 12.036l1.53-4.208A.5.5 0 0 1 12 7.5h3.5a.5.5 0 0 1 0 1h-3.15l-1.88 5.17a.5.5 0 0 1-.94 0L6 3.964 4.47 8.171A.5.5 0 0 1 4 8.5H.5a.5.5 0 0 1 0-1h3.15l1.88-5.17A.5.5 0 0 1 6 2\"},\"child\":[]}]})(props);\n};\nexport function BsAirplaneEnginesFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 0c-.787 0-1.292.592-1.572 1.151A4.35 4.35 0 0 0 6 3v3.691l-2 1V7.5a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5v1.191l-1.17.585A1.5 1.5 0 0 0 0 10.618V12a.5.5 0 0 0 .582.493l1.631-.272.313.937a.5.5 0 0 0 .948 0l.405-1.214 2.21-.369.375 2.253-1.318 1.318A.5.5 0 0 0 5.5 16h5a.5.5 0 0 0 .354-.854l-1.318-1.318.375-2.253 2.21.369.405 1.214a.5.5 0 0 0 .948 0l.313-.937 1.63.272A.5.5 0 0 0 16 12v-1.382a1.5 1.5 0 0 0-.83-1.342L14 8.691V7.5a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5v.191l-2-1V3c0-.568-.14-1.271-.428-1.849C9.292.591 8.787 0 8 0\"},\"child\":[]}]})(props);\n};\nexport function BsAirplaneEngines (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 0c-.787 0-1.292.592-1.572 1.151A4.35 4.35 0 0 0 6 3v3.691l-2 1V7.5a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5v1.191l-1.17.585A1.5 1.5 0 0 0 0 10.618V12a.5.5 0 0 0 .582.493l1.631-.272.313.937a.5.5 0 0 0 .948 0l.405-1.214 2.21-.369.375 2.253-1.318 1.318A.5.5 0 0 0 5.5 16h5a.5.5 0 0 0 .354-.854l-1.318-1.318.375-2.253 2.21.369.405 1.214a.5.5 0 0 0 .948 0l.313-.937 1.63.272A.5.5 0 0 0 16 12v-1.382a1.5 1.5 0 0 0-.83-1.342L14 8.691V7.5a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5v.191l-2-1V3c0-.568-.14-1.271-.428-1.849C9.292.591 8.787 0 8 0M7 3c0-.432.11-.979.322-1.401C7.542 1.159 7.787 1 8 1s.458.158.678.599C8.889 2.02 9 2.569 9 3v4a.5.5 0 0 0 .276.447l5.448 2.724a.5.5 0 0 1 .276.447v.792l-5.418-.903a.5.5 0 0 0-.575.41l-.5 3a.5.5 0 0 0 .14.437l.646.646H6.707l.647-.646a.5.5 0 0 0 .14-.436l-.5-3a.5.5 0 0 0-.576-.411L1 11.41v-.792a.5.5 0 0 1 .276-.447l5.448-2.724A.5.5 0 0 0 7 7z\"},\"child\":[]}]})(props);\n};\nexport function BsAirplaneFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.428 1.151C6.708.591 7.213 0 8 0s1.292.592 1.572 1.151C9.861 1.73 10 2.431 10 3v3.691l5.17 2.585a1.5 1.5 0 0 1 .83 1.342V12a.5.5 0 0 1-.582.493l-5.507-.918-.375 2.253 1.318 1.318A.5.5 0 0 1 10.5 16h-5a.5.5 0 0 1-.354-.854l1.319-1.318-.376-2.253-5.507.918A.5.5 0 0 1 0 12v-1.382a1.5 1.5 0 0 1 .83-1.342L6 6.691V3c0-.568.14-1.271.428-1.849\"},\"child\":[]}]})(props);\n};\nexport function BsAirplane (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.428 1.151C6.708.591 7.213 0 8 0s1.292.592 1.572 1.151C9.861 1.73 10 2.431 10 3v3.691l5.17 2.585a1.5 1.5 0 0 1 .83 1.342V12a.5.5 0 0 1-.582.493l-5.507-.918-.375 2.253 1.318 1.318A.5.5 0 0 1 10.5 16h-5a.5.5 0 0 1-.354-.854l1.319-1.318-.376-2.253-5.507.918A.5.5 0 0 1 0 12v-1.382a1.5 1.5 0 0 1 .83-1.342L6 6.691V3c0-.568.14-1.271.428-1.849m.894.448C7.111 2.02 7 2.569 7 3v4a.5.5 0 0 1-.276.447l-5.448 2.724a.5.5 0 0 0-.276.447v.792l5.418-.903a.5.5 0 0 1 .575.41l.5 3a.5.5 0 0 1-.14.437L6.708 15h2.586l-.647-.646a.5.5 0 0 1-.14-.436l.5-3a.5.5 0 0 1 .576-.411L15 11.41v-.792a.5.5 0 0 0-.276-.447L9.276 7.447A.5.5 0 0 1 9 7V3c0-.432-.11-.979-.322-1.401C8.458 1.159 8.213 1 8 1s-.458.158-.678.599\"},\"child\":[]}]})(props);\n};\nexport function BsAlarmFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6 .5a.5.5 0 0 1 .5-.5h3a.5.5 0 0 1 0 1H9v1.07a7.001 7.001 0 0 1 3.274 12.474l.601.602a.5.5 0 0 1-.707.708l-.746-.746A6.97 6.97 0 0 1 8 16a6.97 6.97 0 0 1-3.422-.892l-.746.746a.5.5 0 0 1-.707-.708l.602-.602A7.001 7.001 0 0 1 7 2.07V1h-.5A.5.5 0 0 1 6 .5m2.5 5a.5.5 0 0 0-1 0v3.362l-1.429 2.38a.5.5 0 1 0 .858.515l1.5-2.5A.5.5 0 0 0 8.5 9zM.86 5.387A2.5 2.5 0 1 1 4.387 1.86 8.04 8.04 0 0 0 .86 5.387M11.613 1.86a2.5 2.5 0 1 1 3.527 3.527 8.04 8.04 0 0 0-3.527-3.527\"},\"child\":[]}]})(props);\n};\nexport function BsAlarm (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.5 5.5a.5.5 0 0 0-1 0v3.362l-1.429 2.38a.5.5 0 1 0 .858.515l1.5-2.5A.5.5 0 0 0 8.5 9z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M6.5 0a.5.5 0 0 0 0 1H7v1.07a7.001 7.001 0 0 0-3.273 12.474l-.602.602a.5.5 0 0 0 .707.708l.746-.746A6.97 6.97 0 0 0 8 16a6.97 6.97 0 0 0 3.422-.892l.746.746a.5.5 0 0 0 .707-.708l-.601-.602A7.001 7.001 0 0 0 9 2.07V1h.5a.5.5 0 0 0 0-1zm1.038 3.018a6 6 0 0 1 .924 0 6 6 0 1 1-.924 0M0 3.5c0 .753.333 1.429.86 1.887A8.04 8.04 0 0 1 4.387 1.86 2.5 2.5 0 0 0 0 3.5M13.5 1c-.753 0-1.429.333-1.887.86a8.04 8.04 0 0 1 3.527 3.527A2.5 2.5 0 0 0 13.5 1\"},\"child\":[]}]})(props);\n};\nexport function BsAlexa (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.996 0A8 8 0 0 0 0 8a8 8 0 0 0 6.93 7.93v-1.613a1.06 1.06 0 0 0-.717-1.008A5.6 5.6 0 0 1 2.4 7.865 5.58 5.58 0 0 1 8.054 2.4a5.6 5.6 0 0 1 5.535 5.81l-.002.046-.012.192-.005.061a5 5 0 0 1-.033.284l-.01.068c-.685 4.516-6.564 7.054-6.596 7.068A7.998 7.998 0 0 0 15.992 8 8 8 0 0 0 7.996.001Z\"},\"child\":[]}]})(props);\n};\nexport function BsAlignBottom (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"rect\",\"attr\":{\"width\":\"4\",\"height\":\"12\",\"x\":\"6\",\"y\":\"1\",\"rx\":\"1\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M1.5 14a.5.5 0 0 0 0 1zm13 1a.5.5 0 0 0 0-1zm-13 0h13v-1h-13z\"},\"child\":[]}]})(props);\n};\nexport function BsAlignCenter (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 1a.5.5 0 0 1 .5.5V6h-1V1.5A.5.5 0 0 1 8 1m0 14a.5.5 0 0 1-.5-.5V10h1v4.5a.5.5 0 0 1-.5.5M2 7a1 1 0 0 1 1-1h10a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsAlignEnd (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M14.5 1a.5.5 0 0 0-.5.5v13a.5.5 0 0 0 1 0v-13a.5.5 0 0 0-.5-.5\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M13 7a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1v2a1 1 0 0 0 1 1h10a1 1 0 0 0 1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsAlignMiddle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6 13a1 1 0 0 0 1 1h2a1 1 0 0 0 1-1V3a1 1 0 0 0-1-1H7a1 1 0 0 0-1 1zM1 8a.5.5 0 0 0 .5.5H6v-1H1.5A.5.5 0 0 0 1 8m14 0a.5.5 0 0 1-.5.5H10v-1h4.5a.5.5 0 0 1 .5.5\"},\"child\":[]}]})(props);\n};\nexport function BsAlignStart (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M1.5 1a.5.5 0 0 1 .5.5v13a.5.5 0 0 1-1 0v-13a.5.5 0 0 1 .5-.5\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3 7a1 1 0 0 1 1-1h10a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsAlignTop (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"rect\",\"attr\":{\"width\":\"4\",\"height\":\"12\",\"rx\":\"1\",\"transform\":\"matrix(1 0 0 -1 6 15)\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M1.5 2a.5.5 0 0 1 0-1zm13-1a.5.5 0 0 1 0 1zm-13 0h13v1h-13z\"},\"child\":[]}]})(props);\n};\nexport function BsAlipay (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2.541 0H13.5a2.55 2.55 0 0 1 2.54 2.563v8.297c-.006 0-.531-.046-2.978-.813-.412-.14-.916-.327-1.479-.536q-.456-.17-.957-.353a13 13 0 0 0 1.325-3.373H8.822V4.649h3.831v-.634h-3.83V2.121H7.26c-.274 0-.274.273-.274.273v1.621H3.11v.634h3.875v1.136h-3.2v.634H9.99c-.227.789-.532 1.53-.894 2.202-2.013-.67-4.161-1.212-5.51-.878-.864.214-1.42.597-1.746.998-1.499 1.84-.424 4.633 2.741 4.633 1.872 0 3.675-1.053 5.072-2.787 2.08 1.008 6.37 2.738 6.387 2.745v.105A2.55 2.55 0 0 1 13.5 16H2.541A2.55 2.55 0 0 1 0 13.437V2.563A2.55 2.55 0 0 1 2.541 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2.309 9.27c-1.22 1.073-.49 3.034 1.978 3.034 1.434 0 2.868-.925 3.994-2.406-1.602-.789-2.959-1.353-4.425-1.207-.397.04-1.14.217-1.547.58Z\"},\"child\":[]}]})(props);\n};\nexport function BsAlphabetUppercase (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M1.226 10.88H0l2.056-6.26h1.42l2.047 6.26h-1.29l-.48-1.61H1.707l-.48 1.61ZM2.76 5.818h-.054l-.75 2.532H3.51zm3.217 5.062V4.62h2.56c1.09 0 1.808.582 1.808 1.54 0 .762-.444 1.22-1.05 1.372v.055c.736.074 1.365.587 1.365 1.528 0 1.119-.89 1.766-2.133 1.766zM7.18 5.55v1.675h.8c.812 0 1.171-.308 1.171-.853 0-.51-.328-.822-.898-.822zm0 2.537V9.95h.903c.951 0 1.342-.312 1.342-.909 0-.591-.382-.954-1.095-.954zm5.089-.711v.775c0 1.156.49 1.803 1.347 1.803.705 0 1.163-.454 1.212-1.096H16v.12C15.942 10.173 14.95 11 13.607 11c-1.648 0-2.573-1.073-2.573-2.849v-.78c0-1.775.934-2.871 2.573-2.871 1.347 0 2.34.849 2.393 2.087v.115h-1.172c-.05-.665-.516-1.156-1.212-1.156-.849 0-1.347.67-1.347 1.83\"},\"child\":[]}]})(props);\n};\nexport function BsAlphabet (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2.204 11.078c.767 0 1.201-.356 1.406-.737h.059V11h1.216V7.519c0-1.314-.947-1.783-2.11-1.783C1.355 5.736.75 6.42.69 7.27h1.216c.064-.323.313-.552.84-.552s.864.249.864.771v.464H2.346C1.145 7.953.5 8.568.5 9.496c0 .977.693 1.582 1.704 1.582m.42-.947c-.44 0-.845-.235-.845-.718 0-.395.269-.684.84-.684h.991v.538c0 .503-.444.864-.986.864m5.593.937c1.216 0 1.948-.869 1.948-2.31v-.702c0-1.44-.727-2.305-1.929-2.305-.742 0-1.328.347-1.499.889h-.063V3.983h-1.29V11h1.27v-.791h.064c.21.532.776.86 1.499.86Zm-.43-1.025c-.66 0-1.113-.518-1.113-1.28V8.12c0-.825.42-1.343 1.098-1.343.684 0 1.075.518 1.075 1.416v.45c0 .888-.386 1.401-1.06 1.401Zm2.834-1.328c0 1.47.87 2.378 2.305 2.378 1.416 0 2.139-.777 2.158-1.763h-1.186c-.06.425-.313.732-.933.732-.66 0-1.05-.512-1.05-1.352v-.625c0-.81.371-1.328 1.045-1.328.635 0 .879.425.918.776h1.187c-.02-.986-.787-1.806-2.14-1.806-1.41 0-2.304.918-2.304 2.338z\"},\"child\":[]}]})(props);\n};\nexport function BsAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M1 13.5a.5.5 0 0 0 .5.5h3.797a.5.5 0 0 0 .439-.26L11 3h3.5a.5.5 0 0 0 0-1h-3.797a.5.5 0 0 0-.439.26L5 13H1.5a.5.5 0 0 0-.5.5m10 0a.5.5 0 0 0 .5.5h3a.5.5 0 0 0 0-1h-3a.5.5 0 0 0-.5.5\"},\"child\":[]}]})(props);\n};\nexport function BsAmazon (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M10.813 11.968c.157.083.36.074.5-.05l.005.005a90 90 0 0 1 1.623-1.405c.173-.143.143-.372.006-.563l-.125-.17c-.345-.465-.673-.906-.673-1.791v-3.3l.001-.335c.008-1.265.014-2.421-.933-3.305C10.404.274 9.06 0 8.03 0 6.017 0 3.77.75 3.296 3.24c-.047.264.143.404.316.443l2.054.22c.19-.009.33-.196.366-.387.176-.857.896-1.271 1.703-1.271.435 0 .929.16 1.188.55.264.39.26.91.257 1.376v.432q-.3.033-.621.065c-1.113.114-2.397.246-3.36.67C3.873 5.91 2.94 7.08 2.94 8.798c0 2.2 1.387 3.298 3.168 3.298 1.506 0 2.328-.354 3.489-1.54l.167.246c.274.405.456.675 1.047 1.166ZM6.03 8.431C6.03 6.627 7.647 6.3 9.177 6.3v.57c.001.776.002 1.434-.396 2.133-.336.595-.87.961-1.465.961-.812 0-1.286-.619-1.286-1.533M.435 12.174c2.629 1.603 6.698 4.084 13.183.997.28-.116.475.078.199.431C13.538 13.96 11.312 16 7.57 16 3.832 16 .968 13.446.094 12.386c-.24-.275.036-.4.199-.299z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M13.828 11.943c.567-.07 1.468-.027 1.645.204.135.176-.004.966-.233 1.533-.23.563-.572.961-.762 1.115s-.333.094-.23-.137c.105-.23.684-1.663.455-1.963-.213-.278-1.177-.177-1.625-.13l-.09.009q-.142.013-.233.024c-.193.021-.245.027-.274-.032-.074-.209.779-.556 1.347-.623\"},\"child\":[]}]})(props);\n};\nexport function BsAmd (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m.334 0 4.358 4.359h7.15v7.15l4.358 4.358V0zM.2 9.72l4.487-4.488v6.281h6.28L6.48 16H.2z\"},\"child\":[]}]})(props);\n};\nexport function BsAndroid (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2.76 3.061a.5.5 0 0 1 .679.2l1.283 2.352A8.9 8.9 0 0 1 8 5a8.9 8.9 0 0 1 3.278.613l1.283-2.352a.5.5 0 1 1 .878.478l-1.252 2.295C14.475 7.266 16 9.477 16 12H0c0-2.523 1.525-4.734 3.813-5.966L2.56 3.74a.5.5 0 0 1 .2-.678ZM5 10a1 1 0 1 0 0-2 1 1 0 0 0 0 2m6 0a1 1 0 1 0 0-2 1 1 0 0 0 0 2\"},\"child\":[]}]})(props);\n};\nexport function BsAndroid2 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m10.213 1.471.691-1.26q.069-.124-.048-.192-.128-.057-.195.058l-.7 1.27A4.8 4.8 0 0 0 8.005.941q-1.032 0-1.956.404l-.7-1.27Q5.281-.037 5.154.02q-.117.069-.049.193l.691 1.259a4.25 4.25 0 0 0-1.673 1.476A3.7 3.7 0 0 0 3.5 5.02h9q0-1.125-.623-2.072a4.27 4.27 0 0 0-1.664-1.476ZM6.22 3.303a.37.37 0 0 1-.267.11.35.35 0 0 1-.263-.11.37.37 0 0 1-.107-.264.37.37 0 0 1 .107-.265.35.35 0 0 1 .263-.11q.155 0 .267.11a.36.36 0 0 1 .112.265.36.36 0 0 1-.112.264m4.101 0a.35.35 0 0 1-.262.11.37.37 0 0 1-.268-.11.36.36 0 0 1-.112-.264q0-.154.112-.265a.37.37 0 0 1 .268-.11q.155 0 .262.11a.37.37 0 0 1 .107.265q0 .153-.107.264M3.5 11.77q0 .441.311.75.311.306.76.307h.758l.01 2.182q0 .414.292.703a.96.96 0 0 0 .7.288.97.97 0 0 0 .71-.288.95.95 0 0 0 .292-.703v-2.182h1.343v2.182q0 .414.292.703a.97.97 0 0 0 .71.288.97.97 0 0 0 .71-.288.95.95 0 0 0 .292-.703v-2.182h.76q.436 0 .749-.308.31-.307.311-.75V5.365h-9zm10.495-6.587a.98.98 0 0 0-.702.278.9.9 0 0 0-.293.685v4.063q0 .406.293.69a.97.97 0 0 0 .702.284q.42 0 .712-.284a.92.92 0 0 0 .293-.69V6.146a.9.9 0 0 0-.293-.685 1 1 0 0 0-.712-.278m-12.702.283a1 1 0 0 1 .712-.283q.41 0 .702.283a.9.9 0 0 1 .293.68v4.063a.93.93 0 0 1-.288.69.97.97 0 0 1-.707.284 1 1 0 0 1-.712-.284.92.92 0 0 1-.293-.69V6.146q0-.396.293-.68\"},\"child\":[]}]})(props);\n};\nexport function BsAppIndicator (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5.5 2A3.5 3.5 0 0 0 2 5.5v5A3.5 3.5 0 0 0 5.5 14h5a3.5 3.5 0 0 0 3.5-3.5V8a.5.5 0 0 1 1 0v2.5a4.5 4.5 0 0 1-4.5 4.5h-5A4.5 4.5 0 0 1 1 10.5v-5A4.5 4.5 0 0 1 5.5 1H8a.5.5 0 0 1 0 1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M16 3a3 3 0 1 1-6 0 3 3 0 0 1 6 0\"},\"child\":[]}]})(props);\n};\nexport function BsApp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M11 2a3 3 0 0 1 3 3v6a3 3 0 0 1-3 3H5a3 3 0 0 1-3-3V5a3 3 0 0 1 3-3zM5 1a4 4 0 0 0-4 4v6a4 4 0 0 0 4 4h6a4 4 0 0 0 4-4V5a4 4 0 0 0-4-4z\"},\"child\":[]}]})(props);\n};\nexport function BsApple (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M11.182.008C11.148-.03 9.923.023 8.857 1.18c-1.066 1.156-.902 2.482-.878 2.516s1.52.087 2.475-1.258.762-2.391.728-2.43m3.314 11.733c-.048-.096-2.325-1.234-2.113-3.422s1.675-2.789 1.698-2.854-.597-.79-1.254-1.157a3.7 3.7 0 0 0-1.563-.434c-.108-.003-.483-.095-1.254.116-.508.139-1.653.589-1.968.607-.316.018-1.256-.522-2.267-.665-.647-.125-1.333.131-1.824.328-.49.196-1.422.754-2.074 2.237-.652 1.482-.311 3.83-.067 4.56s.625 1.924 1.273 2.796c.576.984 1.34 1.667 1.659 1.899s1.219.386 1.843.067c.502-.308 1.408-.485 1.766-.472.357.013 1.061.154 1.782.539.571.197 1.111.115 1.652-.105.541-.221 1.324-1.059 2.238-2.758q.52-1.185.473-1.282\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M11.182.008C11.148-.03 9.923.023 8.857 1.18c-1.066 1.156-.902 2.482-.878 2.516s1.52.087 2.475-1.258.762-2.391.728-2.43m3.314 11.733c-.048-.096-2.325-1.234-2.113-3.422s1.675-2.789 1.698-2.854-.597-.79-1.254-1.157a3.7 3.7 0 0 0-1.563-.434c-.108-.003-.483-.095-1.254.116-.508.139-1.653.589-1.968.607-.316.018-1.256-.522-2.267-.665-.647-.125-1.333.131-1.824.328-.49.196-1.422.754-2.074 2.237-.652 1.482-.311 3.83-.067 4.56s.625 1.924 1.273 2.796c.576.984 1.34 1.667 1.659 1.899s1.219.386 1.843.067c.502-.308 1.408-.485 1.766-.472.357.013 1.061.154 1.782.539.571.197 1.111.115 1.652-.105.541-.221 1.324-1.059 2.238-2.758q.52-1.185.473-1.282\"},\"child\":[]}]})(props);\n};\nexport function BsArchiveFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12.643 15C13.979 15 15 13.845 15 12.5V5H1v7.5C1 13.845 2.021 15 3.357 15zM5.5 7h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1 0-1M.8 1a.8.8 0 0 0-.8.8V3a.8.8 0 0 0 .8.8h14.4A.8.8 0 0 0 16 3V1.8a.8.8 0 0 0-.8-.8z\"},\"child\":[]}]})(props);\n};\nexport function BsArchive (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 2a1 1 0 0 1 1-1h14a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1v7.5a2.5 2.5 0 0 1-2.5 2.5h-9A2.5 2.5 0 0 1 1 12.5V5a1 1 0 0 1-1-1zm2 3v7.5A1.5 1.5 0 0 0 3.5 14h9a1.5 1.5 0 0 0 1.5-1.5V5zm13-3H1v2h14zM5 7.5a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsArrow90DegDown (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M4.854 14.854a.5.5 0 0 1-.708 0l-4-4a.5.5 0 0 1 .708-.708L4 13.293V3.5A2.5 2.5 0 0 1 6.5 1h8a.5.5 0 0 1 0 1h-8A1.5 1.5 0 0 0 5 3.5v9.793l3.146-3.147a.5.5 0 0 1 .708.708z\"},\"child\":[]}]})(props);\n};\nexport function BsArrow90DegLeft (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M1.146 4.854a.5.5 0 0 1 0-.708l4-4a.5.5 0 1 1 .708.708L2.707 4H12.5A2.5 2.5 0 0 1 15 6.5v8a.5.5 0 0 1-1 0v-8A1.5 1.5 0 0 0 12.5 5H2.707l3.147 3.146a.5.5 0 1 1-.708.708z\"},\"child\":[]}]})(props);\n};\nexport function BsArrow90DegRight (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M14.854 4.854a.5.5 0 0 0 0-.708l-4-4a.5.5 0 0 0-.708.708L13.293 4H3.5A2.5 2.5 0 0 0 1 6.5v8a.5.5 0 0 0 1 0v-8A1.5 1.5 0 0 1 3.5 5h9.793l-3.147 3.146a.5.5 0 0 0 .708.708z\"},\"child\":[]}]})(props);\n};\nexport function BsArrow90DegUp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M4.854 1.146a.5.5 0 0 0-.708 0l-4 4a.5.5 0 1 0 .708.708L4 2.707V12.5A2.5 2.5 0 0 0 6.5 15h8a.5.5 0 0 0 0-1h-8A1.5 1.5 0 0 1 5 12.5V2.707l3.146 3.147a.5.5 0 1 0 .708-.708z\"},\"child\":[]}]})(props);\n};\nexport function BsArrowBarDown (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M1 3.5a.5.5 0 0 1 .5-.5h13a.5.5 0 0 1 0 1h-13a.5.5 0 0 1-.5-.5M8 6a.5.5 0 0 1 .5.5v5.793l2.146-2.147a.5.5 0 0 1 .708.708l-3 3a.5.5 0 0 1-.708 0l-3-3a.5.5 0 0 1 .708-.708L7.5 12.293V6.5A.5.5 0 0 1 8 6\"},\"child\":[]}]})(props);\n};\nexport function BsArrowBarLeft (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M12.5 15a.5.5 0 0 1-.5-.5v-13a.5.5 0 0 1 1 0v13a.5.5 0 0 1-.5.5M10 8a.5.5 0 0 1-.5.5H3.707l2.147 2.146a.5.5 0 0 1-.708.708l-3-3a.5.5 0 0 1 0-.708l3-3a.5.5 0 1 1 .708.708L3.707 7.5H9.5a.5.5 0 0 1 .5.5\"},\"child\":[]}]})(props);\n};\nexport function BsArrowBarRight (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M6 8a.5.5 0 0 0 .5.5h5.793l-2.147 2.146a.5.5 0 0 0 .708.708l3-3a.5.5 0 0 0 0-.708l-3-3a.5.5 0 0 0-.708.708L12.293 7.5H6.5A.5.5 0 0 0 6 8m-2.5 7a.5.5 0 0 1-.5-.5v-13a.5.5 0 0 1 1 0v13a.5.5 0 0 1-.5.5\"},\"child\":[]}]})(props);\n};\nexport function BsArrowBarUp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M8 10a.5.5 0 0 0 .5-.5V3.707l2.146 2.147a.5.5 0 0 0 .708-.708l-3-3a.5.5 0 0 0-.708 0l-3 3a.5.5 0 1 0 .708.708L7.5 3.707V9.5a.5.5 0 0 0 .5.5m-7 2.5a.5.5 0 0 1 .5-.5h13a.5.5 0 0 1 0 1h-13a.5.5 0 0 1-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsArrowClockwise (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M8 3a5 5 0 1 0 4.546 2.914.5.5 0 0 1 .908-.417A6 6 0 1 1 8 2z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8 4.466V.534a.25.25 0 0 1 .41-.192l2.36 1.966c.12.1.12.284 0 .384L8.41 4.658A.25.25 0 0 1 8 4.466\"},\"child\":[]}]})(props);\n};\nexport function BsArrowCounterclockwise (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M8 3a5 5 0 1 1-4.546 2.914.5.5 0 0 0-.908-.417A6 6 0 1 0 8 2z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8 4.466V.534a.25.25 0 0 0-.41-.192L5.23 2.308a.25.25 0 0 0 0 .384l2.36 1.966A.25.25 0 0 0 8 4.466\"},\"child\":[]}]})(props);\n};\nexport function BsArrowDownCircleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0M8.5 4.5a.5.5 0 0 0-1 0v5.793L5.354 8.146a.5.5 0 1 0-.708.708l3 3a.5.5 0 0 0 .708 0l3-3a.5.5 0 0 0-.708-.708L8.5 10.293z\"},\"child\":[]}]})(props);\n};\nexport function BsArrowDownCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M1 8a7 7 0 1 0 14 0A7 7 0 0 0 1 8m15 0A8 8 0 1 1 0 8a8 8 0 0 1 16 0M8.5 4.5a.5.5 0 0 0-1 0v5.793L5.354 8.146a.5.5 0 1 0-.708.708l3 3a.5.5 0 0 0 .708 0l3-3a.5.5 0 0 0-.708-.708L8.5 10.293z\"},\"child\":[]}]})(props);\n};\nexport function BsArrowDownLeftCircleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 0 0 8a8 8 0 0 0 16 0m-5.904-2.803a.5.5 0 1 1 .707.707L6.707 10h2.768a.5.5 0 0 1 0 1H5.5a.5.5 0 0 1-.5-.5V6.525a.5.5 0 0 1 1 0v2.768z\"},\"child\":[]}]})(props);\n};\nexport function BsArrowDownLeftCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M1 8a7 7 0 1 0 14 0A7 7 0 0 0 1 8m15 0A8 8 0 1 1 0 8a8 8 0 0 1 16 0m-5.904-2.854a.5.5 0 1 1 .707.708L6.707 9.95h2.768a.5.5 0 1 1 0 1H5.5a.5.5 0 0 1-.5-.5V6.475a.5.5 0 1 1 1 0v2.768z\"},\"child\":[]}]})(props);\n};\nexport function BsArrowDownLeftSquareFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 16a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2zm8.096-10.803L6 9.293V6.525a.5.5 0 0 0-1 0V10.5a.5.5 0 0 0 .5.5h3.975a.5.5 0 0 0 0-1H6.707l4.096-4.096a.5.5 0 1 0-.707-.707\"},\"child\":[]}]})(props);\n};\nexport function BsArrowDownLeftSquare (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M15 2a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1zM0 2a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm10.096 3.146a.5.5 0 1 1 .707.708L6.707 9.95h2.768a.5.5 0 1 1 0 1H5.5a.5.5 0 0 1-.5-.5V6.475a.5.5 0 1 1 1 0v2.768z\"},\"child\":[]}]})(props);\n};\nexport function BsArrowDownLeft (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M2 13.5a.5.5 0 0 0 .5.5h6a.5.5 0 0 0 0-1H3.707L13.854 2.854a.5.5 0 0 0-.708-.708L3 12.293V7.5a.5.5 0 0 0-1 0z\"},\"child\":[]}]})(props);\n};\nexport function BsArrowDownRightCircleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 8a8 8 0 1 1 16 0A8 8 0 0 1 0 8m5.904-2.803a.5.5 0 1 0-.707.707L9.293 10H6.525a.5.5 0 0 0 0 1H10.5a.5.5 0 0 0 .5-.5V6.525a.5.5 0 0 0-1 0v2.768z\"},\"child\":[]}]})(props);\n};\nexport function BsArrowDownRightCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M1 8a7 7 0 1 0 14 0A7 7 0 0 0 1 8m15 0A8 8 0 1 1 0 8a8 8 0 0 1 16 0M5.854 5.146a.5.5 0 1 0-.708.708L9.243 9.95H6.475a.5.5 0 1 0 0 1h3.975a.5.5 0 0 0 .5-.5V6.475a.5.5 0 1 0-1 0v2.768z\"},\"child\":[]}]})(props);\n};\nexport function BsArrowDownRightSquareFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M14 16a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2zM5.904 5.197 10 9.293V6.525a.5.5 0 0 1 1 0V10.5a.5.5 0 0 1-.5.5H6.525a.5.5 0 0 1 0-1h2.768L5.197 5.904a.5.5 0 0 1 .707-.707\"},\"child\":[]}]})(props);\n};\nexport function BsArrowDownRightSquare (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M15 2a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1zM0 2a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm5.854 3.146a.5.5 0 1 0-.708.708L9.243 9.95H6.475a.5.5 0 1 0 0 1h3.975a.5.5 0 0 0 .5-.5V6.475a.5.5 0 1 0-1 0v2.768z\"},\"child\":[]}]})(props);\n};\nexport function BsArrowDownRight (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M14 13.5a.5.5 0 0 1-.5.5h-6a.5.5 0 0 1 0-1h4.793L2.146 2.854a.5.5 0 1 1 .708-.708L13 12.293V7.5a.5.5 0 0 1 1 0z\"},\"child\":[]}]})(props);\n};\nexport function BsArrowDownShort (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M8 4a.5.5 0 0 1 .5.5v5.793l2.146-2.147a.5.5 0 0 1 .708.708l-3 3a.5.5 0 0 1-.708 0l-3-3a.5.5 0 1 1 .708-.708L7.5 10.293V4.5A.5.5 0 0 1 8 4\"},\"child\":[]}]})(props);\n};\nexport function BsArrowDownSquareFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm6.5 4.5v5.793l2.146-2.147a.5.5 0 0 1 .708.708l-3 3a.5.5 0 0 1-.708 0l-3-3a.5.5 0 1 1 .708-.708L7.5 10.293V4.5a.5.5 0 0 1 1 0\"},\"child\":[]}]})(props);\n};\nexport function BsArrowDownSquare (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M15 2a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1zM0 2a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm8.5 2.5a.5.5 0 0 0-1 0v5.793L5.354 8.146a.5.5 0 1 0-.708.708l3 3a.5.5 0 0 0 .708 0l3-3a.5.5 0 0 0-.708-.708L8.5 10.293z\"},\"child\":[]}]})(props);\n};\nexport function BsArrowDownUp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M11.5 15a.5.5 0 0 0 .5-.5V2.707l3.146 3.147a.5.5 0 0 0 .708-.708l-4-4a.5.5 0 0 0-.708 0l-4 4a.5.5 0 1 0 .708.708L11 2.707V14.5a.5.5 0 0 0 .5.5m-7-14a.5.5 0 0 1 .5.5v11.793l3.146-3.147a.5.5 0 0 1 .708.708l-4 4a.5.5 0 0 1-.708 0l-4-4a.5.5 0 0 1 .708-.708L4 13.293V1.5a.5.5 0 0 1 .5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsArrowDown (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M8 1a.5.5 0 0 1 .5.5v11.793l3.146-3.147a.5.5 0 0 1 .708.708l-4 4a.5.5 0 0 1-.708 0l-4-4a.5.5 0 0 1 .708-.708L7.5 13.293V1.5A.5.5 0 0 1 8 1\"},\"child\":[]}]})(props);\n};\nexport function BsArrowLeftCircleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 0a8 8 0 1 0 0 16A8 8 0 0 0 8 0m3.5 7.5a.5.5 0 0 1 0 1H5.707l2.147 2.146a.5.5 0 0 1-.708.708l-3-3a.5.5 0 0 1 0-.708l3-3a.5.5 0 1 1 .708.708L5.707 7.5z\"},\"child\":[]}]})(props);\n};\nexport function BsArrowLeftCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M1 8a7 7 0 1 0 14 0A7 7 0 0 0 1 8m15 0A8 8 0 1 1 0 8a8 8 0 0 1 16 0m-4.5-.5a.5.5 0 0 1 0 1H5.707l2.147 2.146a.5.5 0 0 1-.708.708l-3-3a.5.5 0 0 1 0-.708l3-3a.5.5 0 1 1 .708.708L5.707 7.5z\"},\"child\":[]}]})(props);\n};\nexport function BsArrowLeftRight (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M1 11.5a.5.5 0 0 0 .5.5h11.793l-3.147 3.146a.5.5 0 0 0 .708.708l4-4a.5.5 0 0 0 0-.708l-4-4a.5.5 0 0 0-.708.708L13.293 11H1.5a.5.5 0 0 0-.5.5m14-7a.5.5 0 0 1-.5.5H2.707l3.147 3.146a.5.5 0 1 1-.708.708l-4-4a.5.5 0 0 1 0-.708l4-4a.5.5 0 1 1 .708.708L2.707 4H14.5a.5.5 0 0 1 .5.5\"},\"child\":[]}]})(props);\n};\nexport function BsArrowLeftShort (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M12 8a.5.5 0 0 1-.5.5H5.707l2.147 2.146a.5.5 0 0 1-.708.708l-3-3a.5.5 0 0 1 0-.708l3-3a.5.5 0 1 1 .708.708L5.707 7.5H11.5a.5.5 0 0 1 .5.5\"},\"child\":[]}]})(props);\n};\nexport function BsArrowLeftSquareFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 14a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2zm-4.5-6.5H5.707l2.147-2.146a.5.5 0 1 0-.708-.708l-3 3a.5.5 0 0 0 0 .708l3 3a.5.5 0 0 0 .708-.708L5.707 8.5H11.5a.5.5 0 0 0 0-1\"},\"child\":[]}]})(props);\n};\nexport function BsArrowLeftSquare (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M15 2a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1zM0 2a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm11.5 5.5a.5.5 0 0 1 0 1H5.707l2.147 2.146a.5.5 0 0 1-.708.708l-3-3a.5.5 0 0 1 0-.708l3-3a.5.5 0 1 1 .708.708L5.707 7.5z\"},\"child\":[]}]})(props);\n};\nexport function BsArrowLeft (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M15 8a.5.5 0 0 0-.5-.5H2.707l3.147-3.146a.5.5 0 1 0-.708-.708l-4 4a.5.5 0 0 0 0 .708l4 4a.5.5 0 0 0 .708-.708L2.707 8.5H14.5A.5.5 0 0 0 15 8\"},\"child\":[]}]})(props);\n};\nexport function BsArrowRepeat (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M11.534 7h3.932a.25.25 0 0 1 .192.41l-1.966 2.36a.25.25 0 0 1-.384 0l-1.966-2.36a.25.25 0 0 1 .192-.41m-11 2h3.932a.25.25 0 0 0 .192-.41L2.692 6.23a.25.25 0 0 0-.384 0L.342 8.59A.25.25 0 0 0 .534 9\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M8 3c-1.552 0-2.94.707-3.857 1.818a.5.5 0 1 1-.771-.636A6.002 6.002 0 0 1 13.917 7H12.9A5 5 0 0 0 8 3M3.1 9a5.002 5.002 0 0 0 8.757 2.182.5.5 0 1 1 .771.636A6.002 6.002 0 0 1 2.083 9z\"},\"child\":[]}]})(props);\n};\nexport function BsArrowReturnLeft (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M14.5 1.5a.5.5 0 0 1 .5.5v4.8a2.5 2.5 0 0 1-2.5 2.5H2.707l3.347 3.346a.5.5 0 0 1-.708.708l-4.2-4.2a.5.5 0 0 1 0-.708l4-4a.5.5 0 1 1 .708.708L2.707 8.3H12.5A1.5 1.5 0 0 0 14 6.8V2a.5.5 0 0 1 .5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsArrowReturnRight (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M1.5 1.5A.5.5 0 0 0 1 2v4.8a2.5 2.5 0 0 0 2.5 2.5h9.793l-3.347 3.346a.5.5 0 0 0 .708.708l4.2-4.2a.5.5 0 0 0 0-.708l-4-4a.5.5 0 0 0-.708.708L13.293 8.3H3.5A1.5 1.5 0 0 1 2 6.8V2a.5.5 0 0 0-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsArrowRightCircleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 0a8 8 0 1 1 0 16A8 8 0 0 1 8 0M4.5 7.5a.5.5 0 0 0 0 1h5.793l-2.147 2.146a.5.5 0 0 0 .708.708l3-3a.5.5 0 0 0 0-.708l-3-3a.5.5 0 1 0-.708.708L10.293 7.5z\"},\"child\":[]}]})(props);\n};\nexport function BsArrowRightCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M1 8a7 7 0 1 0 14 0A7 7 0 0 0 1 8m15 0A8 8 0 1 1 0 8a8 8 0 0 1 16 0M4.5 7.5a.5.5 0 0 0 0 1h5.793l-2.147 2.146a.5.5 0 0 0 .708.708l3-3a.5.5 0 0 0 0-.708l-3-3a.5.5 0 1 0-.708.708L10.293 7.5z\"},\"child\":[]}]})(props);\n};\nexport function BsArrowRightShort (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M4 8a.5.5 0 0 1 .5-.5h5.793L8.146 5.354a.5.5 0 1 1 .708-.708l3 3a.5.5 0 0 1 0 .708l-3 3a.5.5 0 0 1-.708-.708L10.293 8.5H4.5A.5.5 0 0 1 4 8\"},\"child\":[]}]})(props);\n};\nexport function BsArrowRightSquareFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 14a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2a2 2 0 0 0-2 2zm4.5-6.5h5.793L8.146 5.354a.5.5 0 1 1 .708-.708l3 3a.5.5 0 0 1 0 .708l-3 3a.5.5 0 0 1-.708-.708L10.293 8.5H4.5a.5.5 0 0 1 0-1\"},\"child\":[]}]})(props);\n};\nexport function BsArrowRightSquare (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M15 2a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1zM0 2a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm4.5 5.5a.5.5 0 0 0 0 1h5.793l-2.147 2.146a.5.5 0 0 0 .708.708l3-3a.5.5 0 0 0 0-.708l-3-3a.5.5 0 1 0-.708.708L10.293 7.5z\"},\"child\":[]}]})(props);\n};\nexport function BsArrowRight (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M1 8a.5.5 0 0 1 .5-.5h11.793l-3.147-3.146a.5.5 0 0 1 .708-.708l4 4a.5.5 0 0 1 0 .708l-4 4a.5.5 0 0 1-.708-.708L13.293 8.5H1.5A.5.5 0 0 1 1 8\"},\"child\":[]}]})(props);\n};\nexport function BsArrowThroughHeartFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M2.854 15.854A.5.5 0 0 1 2 15.5V14H.5a.5.5 0 0 1-.354-.854l1.5-1.5A.5.5 0 0 1 2 11.5h1.793l3.103-3.104a.5.5 0 1 1 .708.708L4.5 12.207V14a.5.5 0 0 1-.146.354zM16 3.5a.5.5 0 0 1-.854.354L14 2.707l-1.006 1.006c.236.248.44.531.6.845.562 1.096.585 2.517-.213 4.092-.793 1.563-2.395 3.288-5.105 5.08L8 13.912l-.276-.182A24 24 0 0 1 5.8 12.323L8.31 9.81a1.5 1.5 0 0 0-2.122-2.122L3.657 10.22a9 9 0 0 1-1.039-1.57c-.798-1.576-.775-2.997-.213-4.093C3.426 2.565 6.18 1.809 8 3.233c1.25-.98 2.944-.928 4.212-.152L13.292 2 12.147.854A.5.5 0 0 1 12.5 0h3a.5.5 0 0 1 .5.5z\"},\"child\":[]}]})(props);\n};\nexport function BsArrowThroughHeart (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M2.854 15.854A.5.5 0 0 1 2 15.5V14H.5a.5.5 0 0 1-.354-.854l1.5-1.5A.5.5 0 0 1 2 11.5h1.793l.53-.53c-.771-.802-1.328-1.58-1.704-2.32-.798-1.575-.775-2.996-.213-4.092C3.426 2.565 6.18 1.809 8 3.233c1.25-.98 2.944-.928 4.212-.152L13.292 2 12.147.854A.5.5 0 0 1 12.5 0h3a.5.5 0 0 1 .5.5v3a.5.5 0 0 1-.854.354L14 2.707l-1.006 1.006c.236.248.44.531.6.845.562 1.096.585 2.517-.213 4.092-.793 1.563-2.395 3.288-5.105 5.08L8 13.912l-.276-.182a22 22 0 0 1-2.685-2.062l-.539.54V14a.5.5 0 0 1-.146.354zm2.893-4.894A20.4 20.4 0 0 0 8 12.71c2.456-1.666 3.827-3.207 4.489-4.512.679-1.34.607-2.42.215-3.185-.817-1.595-3.087-2.054-4.346-.761L8 4.62l-.358-.368c-1.259-1.293-3.53-.834-4.346.761-.392.766-.464 1.845.215 3.185.323.636.815 1.33 1.519 2.065l1.866-1.867a.5.5 0 1 1 .708.708z\"},\"child\":[]}]})(props);\n};\nexport function BsArrowUpCircleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 0 0 8a8 8 0 0 0 16 0m-7.5 3.5a.5.5 0 0 1-1 0V5.707L5.354 7.854a.5.5 0 1 1-.708-.708l3-3a.5.5 0 0 1 .708 0l3 3a.5.5 0 0 1-.708.708L8.5 5.707z\"},\"child\":[]}]})(props);\n};\nexport function BsArrowUpCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M1 8a7 7 0 1 0 14 0A7 7 0 0 0 1 8m15 0A8 8 0 1 1 0 8a8 8 0 0 1 16 0m-7.5 3.5a.5.5 0 0 1-1 0V5.707L5.354 7.854a.5.5 0 1 1-.708-.708l3-3a.5.5 0 0 1 .708 0l3 3a.5.5 0 0 1-.708.708L8.5 5.707z\"},\"child\":[]}]})(props);\n};\nexport function BsArrowUpLeftCircleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0m-5.904 2.803a.5.5 0 1 0 .707-.707L6.707 6h2.768a.5.5 0 1 0 0-1H5.5a.5.5 0 0 0-.5.5v3.975a.5.5 0 0 0 1 0V6.707z\"},\"child\":[]}]})(props);\n};\nexport function BsArrowUpLeftCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M1 8a7 7 0 1 0 14 0A7 7 0 0 0 1 8m15 0A8 8 0 1 1 0 8a8 8 0 0 1 16 0m-5.904 2.803a.5.5 0 1 0 .707-.707L6.707 6h2.768a.5.5 0 1 0 0-1H5.5a.5.5 0 0 0-.5.5v3.975a.5.5 0 0 0 1 0V6.707z\"},\"child\":[]}]})(props);\n};\nexport function BsArrowUpLeftSquareFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm8.096 10.803L6 6.707v2.768a.5.5 0 0 1-1 0V5.5a.5.5 0 0 1 .5-.5h3.975a.5.5 0 1 1 0 1H6.707l4.096 4.096a.5.5 0 1 1-.707.707\"},\"child\":[]}]})(props);\n};\nexport function BsArrowUpLeftSquare (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M15 2a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1zM0 2a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm10.096 8.803a.5.5 0 1 0 .707-.707L6.707 6h2.768a.5.5 0 1 0 0-1H5.5a.5.5 0 0 0-.5.5v3.975a.5.5 0 0 0 1 0V6.707z\"},\"child\":[]}]})(props);\n};\nexport function BsArrowUpLeft (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M2 2.5a.5.5 0 0 1 .5-.5h6a.5.5 0 0 1 0 1H3.707l10.147 10.146a.5.5 0 0 1-.708.708L3 3.707V8.5a.5.5 0 0 1-1 0z\"},\"child\":[]}]})(props);\n};\nexport function BsArrowUpRightCircleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 8a8 8 0 1 0 16 0A8 8 0 0 0 0 8m5.904 2.803a.5.5 0 1 1-.707-.707L9.293 6H6.525a.5.5 0 1 1 0-1H10.5a.5.5 0 0 1 .5.5v3.975a.5.5 0 0 1-1 0V6.707z\"},\"child\":[]}]})(props);\n};\nexport function BsArrowUpRightCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M1 8a7 7 0 1 0 14 0A7 7 0 0 0 1 8m15 0A8 8 0 1 1 0 8a8 8 0 0 1 16 0M5.854 10.803a.5.5 0 1 1-.708-.707L9.243 6H6.475a.5.5 0 1 1 0-1h3.975a.5.5 0 0 1 .5.5v3.975a.5.5 0 1 1-1 0V6.707z\"},\"child\":[]}]})(props);\n};\nexport function BsArrowUpRightSquareFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M14 0a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2zM5.904 10.803 10 6.707v2.768a.5.5 0 0 0 1 0V5.5a.5.5 0 0 0-.5-.5H6.525a.5.5 0 1 0 0 1h2.768l-4.096 4.096a.5.5 0 0 0 .707.707\"},\"child\":[]}]})(props);\n};\nexport function BsArrowUpRightSquare (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M15 2a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1zM0 2a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm5.854 8.803a.5.5 0 1 1-.708-.707L9.243 6H6.475a.5.5 0 1 1 0-1h3.975a.5.5 0 0 1 .5.5v3.975a.5.5 0 1 1-1 0V6.707z\"},\"child\":[]}]})(props);\n};\nexport function BsArrowUpRight (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M14 2.5a.5.5 0 0 0-.5-.5h-6a.5.5 0 0 0 0 1h4.793L2.146 13.146a.5.5 0 0 0 .708.708L13 3.707V8.5a.5.5 0 0 0 1 0z\"},\"child\":[]}]})(props);\n};\nexport function BsArrowUpShort (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M8 12a.5.5 0 0 0 .5-.5V5.707l2.146 2.147a.5.5 0 0 0 .708-.708l-3-3a.5.5 0 0 0-.708 0l-3 3a.5.5 0 1 0 .708.708L7.5 5.707V11.5a.5.5 0 0 0 .5.5\"},\"child\":[]}]})(props);\n};\nexport function BsArrowUpSquareFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 16a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2zm6.5-4.5V5.707l2.146 2.147a.5.5 0 0 0 .708-.708l-3-3a.5.5 0 0 0-.708 0l-3 3a.5.5 0 1 0 .708.708L7.5 5.707V11.5a.5.5 0 0 0 1 0\"},\"child\":[]}]})(props);\n};\nexport function BsArrowUpSquare (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M15 2a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1zM0 2a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm8.5 9.5a.5.5 0 0 1-1 0V5.707L5.354 7.854a.5.5 0 1 1-.708-.708l3-3a.5.5 0 0 1 .708 0l3 3a.5.5 0 0 1-.708.708L8.5 5.707z\"},\"child\":[]}]})(props);\n};\nexport function BsArrowUp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M8 15a.5.5 0 0 0 .5-.5V2.707l3.146 3.147a.5.5 0 0 0 .708-.708l-4-4a.5.5 0 0 0-.708 0l-4 4a.5.5 0 1 0 .708.708L7.5 2.707V14.5a.5.5 0 0 0 .5.5\"},\"child\":[]}]})(props);\n};\nexport function BsArrowsAngleContract (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M.172 15.828a.5.5 0 0 0 .707 0l4.096-4.096V14.5a.5.5 0 1 0 1 0v-3.975a.5.5 0 0 0-.5-.5H1.5a.5.5 0 0 0 0 1h2.768L.172 15.121a.5.5 0 0 0 0 .707M15.828.172a.5.5 0 0 0-.707 0l-4.096 4.096V1.5a.5.5 0 1 0-1 0v3.975a.5.5 0 0 0 .5.5H14.5a.5.5 0 0 0 0-1h-2.768L15.828.879a.5.5 0 0 0 0-.707\"},\"child\":[]}]})(props);\n};\nexport function BsArrowsAngleExpand (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M5.828 10.172a.5.5 0 0 0-.707 0l-4.096 4.096V11.5a.5.5 0 0 0-1 0v3.975a.5.5 0 0 0 .5.5H4.5a.5.5 0 0 0 0-1H1.732l4.096-4.096a.5.5 0 0 0 0-.707m4.344-4.344a.5.5 0 0 0 .707 0l4.096-4.096V4.5a.5.5 0 1 0 1 0V.525a.5.5 0 0 0-.5-.5H11.5a.5.5 0 0 0 0 1h2.768l-4.096 4.096a.5.5 0 0 0 0 .707\"},\"child\":[]}]})(props);\n};\nexport function BsArrowsCollapseVertical (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 15a.5.5 0 0 1-.5-.5v-13a.5.5 0 0 1 1 0v13a.5.5 0 0 1-.5.5M0 8a.5.5 0 0 1 .5-.5h3.793L3.146 6.354a.5.5 0 1 1 .708-.708l2 2a.5.5 0 0 1 0 .708l-2 2a.5.5 0 0 1-.708-.708L4.293 8.5H.5A.5.5 0 0 1 0 8m11.707.5 1.147 1.146a.5.5 0 0 1-.708.708l-2-2a.5.5 0 0 1 0-.708l2-2a.5.5 0 0 1 .708.708L11.707 7.5H15.5a.5.5 0 0 1 0 1z\"},\"child\":[]}]})(props);\n};\nexport function BsArrowsCollapse (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M1 8a.5.5 0 0 1 .5-.5h13a.5.5 0 0 1 0 1h-13A.5.5 0 0 1 1 8m7-8a.5.5 0 0 1 .5.5v3.793l1.146-1.147a.5.5 0 0 1 .708.708l-2 2a.5.5 0 0 1-.708 0l-2-2a.5.5 0 1 1 .708-.708L7.5 4.293V.5A.5.5 0 0 1 8 0m-.5 11.707-1.146 1.147a.5.5 0 0 1-.708-.708l2-2a.5.5 0 0 1 .708 0l2 2a.5.5 0 0 1-.708.708L8.5 11.707V15.5a.5.5 0 0 1-1 0z\"},\"child\":[]}]})(props);\n};\nexport function BsArrowsExpandVertical (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 15a.5.5 0 0 1-.5-.5v-13a.5.5 0 0 1 1 0v13a.5.5 0 0 1-.5.5M.146 8.354a.5.5 0 0 1 0-.708l2-2a.5.5 0 1 1 .708.708L1.707 7.5H5.5a.5.5 0 0 1 0 1H1.707l1.147 1.146a.5.5 0 0 1-.708.708zM10 8a.5.5 0 0 1 .5-.5h3.793l-1.147-1.146a.5.5 0 0 1 .708-.708l2 2a.5.5 0 0 1 0 .708l-2 2a.5.5 0 0 1-.708-.708L14.293 8.5H10.5A.5.5 0 0 1 10 8\"},\"child\":[]}]})(props);\n};\nexport function BsArrowsExpand (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M1 8a.5.5 0 0 1 .5-.5h13a.5.5 0 0 1 0 1h-13A.5.5 0 0 1 1 8M7.646.146a.5.5 0 0 1 .708 0l2 2a.5.5 0 0 1-.708.708L8.5 1.707V5.5a.5.5 0 0 1-1 0V1.707L6.354 2.854a.5.5 0 1 1-.708-.708zM8 10a.5.5 0 0 1 .5.5v3.793l1.146-1.147a.5.5 0 0 1 .708.708l-2 2a.5.5 0 0 1-.708 0l-2-2a.5.5 0 0 1 .708-.708L7.5 14.293V10.5A.5.5 0 0 1 8 10\"},\"child\":[]}]})(props);\n};\nexport function BsArrowsFullscreen (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M5.828 10.172a.5.5 0 0 0-.707 0l-4.096 4.096V11.5a.5.5 0 0 0-1 0v3.975a.5.5 0 0 0 .5.5H4.5a.5.5 0 0 0 0-1H1.732l4.096-4.096a.5.5 0 0 0 0-.707m4.344 0a.5.5 0 0 1 .707 0l4.096 4.096V11.5a.5.5 0 1 1 1 0v3.975a.5.5 0 0 1-.5.5H11.5a.5.5 0 0 1 0-1h2.768l-4.096-4.096a.5.5 0 0 1 0-.707m0-4.344a.5.5 0 0 0 .707 0l4.096-4.096V4.5a.5.5 0 1 0 1 0V.525a.5.5 0 0 0-.5-.5H11.5a.5.5 0 0 0 0 1h2.768l-4.096 4.096a.5.5 0 0 0 0 .707m-4.344 0a.5.5 0 0 1-.707 0L1.025 1.732V4.5a.5.5 0 0 1-1 0V.525a.5.5 0 0 1 .5-.5H4.5a.5.5 0 0 1 0 1H1.732l4.096 4.096a.5.5 0 0 1 0 .707\"},\"child\":[]}]})(props);\n};\nexport function BsArrowsMove (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M7.646.146a.5.5 0 0 1 .708 0l2 2a.5.5 0 0 1-.708.708L8.5 1.707V5.5a.5.5 0 0 1-1 0V1.707L6.354 2.854a.5.5 0 1 1-.708-.708zM8 10a.5.5 0 0 1 .5.5v3.793l1.146-1.147a.5.5 0 0 1 .708.708l-2 2a.5.5 0 0 1-.708 0l-2-2a.5.5 0 0 1 .708-.708L7.5 14.293V10.5A.5.5 0 0 1 8 10M.146 8.354a.5.5 0 0 1 0-.708l2-2a.5.5 0 1 1 .708.708L1.707 7.5H5.5a.5.5 0 0 1 0 1H1.707l1.147 1.146a.5.5 0 0 1-.708.708zM10 8a.5.5 0 0 1 .5-.5h3.793l-1.147-1.146a.5.5 0 0 1 .708-.708l2 2a.5.5 0 0 1 0 .708l-2 2a.5.5 0 0 1-.708-.708L14.293 8.5H10.5A.5.5 0 0 1 10 8\"},\"child\":[]}]})(props);\n};\nexport function BsArrowsVertical (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.354 14.854a.5.5 0 0 1-.708 0l-2-2a.5.5 0 0 1 .708-.708L7.5 13.293V2.707L6.354 3.854a.5.5 0 1 1-.708-.708l2-2a.5.5 0 0 1 .708 0l2 2a.5.5 0 0 1-.708.708L8.5 2.707v10.586l1.146-1.147a.5.5 0 0 1 .708.708z\"},\"child\":[]}]})(props);\n};\nexport function BsArrows (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M1.146 8.354a.5.5 0 0 1 0-.708l2-2a.5.5 0 1 1 .708.708L2.707 7.5h10.586l-1.147-1.146a.5.5 0 0 1 .708-.708l2 2a.5.5 0 0 1 0 .708l-2 2a.5.5 0 0 1-.708-.708L13.293 8.5H2.707l1.147 1.146a.5.5 0 0 1-.708.708z\"},\"child\":[]}]})(props);\n};\nexport function BsAspectRatioFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 12.5v-9A1.5 1.5 0 0 1 1.5 2h13A1.5 1.5 0 0 1 16 3.5v9a1.5 1.5 0 0 1-1.5 1.5h-13A1.5 1.5 0 0 1 0 12.5M2.5 4a.5.5 0 0 0-.5.5v3a.5.5 0 0 0 1 0V5h2.5a.5.5 0 0 0 0-1zm11 8a.5.5 0 0 0 .5-.5v-3a.5.5 0 0 0-1 0V11h-2.5a.5.5 0 0 0 0 1z\"},\"child\":[]}]})(props);\n};\nexport function BsAspectRatio (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 3.5A1.5 1.5 0 0 1 1.5 2h13A1.5 1.5 0 0 1 16 3.5v9a1.5 1.5 0 0 1-1.5 1.5h-13A1.5 1.5 0 0 1 0 12.5zM1.5 3a.5.5 0 0 0-.5.5v9a.5.5 0 0 0 .5.5h13a.5.5 0 0 0 .5-.5v-9a.5.5 0 0 0-.5-.5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 4.5a.5.5 0 0 1 .5-.5h3a.5.5 0 0 1 0 1H3v2.5a.5.5 0 0 1-1 0zm12 7a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1 0-1H13V8.5a.5.5 0 0 1 1 0z\"},\"child\":[]}]})(props);\n};\nexport function BsAsterisk (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 0a1 1 0 0 1 1 1v5.268l4.562-2.634a1 1 0 1 1 1 1.732L10 8l4.562 2.634a1 1 0 1 1-1 1.732L9 9.732V15a1 1 0 1 1-2 0V9.732l-4.562 2.634a1 1 0 1 1-1-1.732L6 8 1.438 5.366a1 1 0 0 1 1-1.732L7 6.268V1a1 1 0 0 1 1-1\"},\"child\":[]}]})(props);\n};\nexport function BsAt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M13.106 7.222c0-2.967-2.249-5.032-5.482-5.032-3.35 0-5.646 2.318-5.646 5.702 0 3.493 2.235 5.708 5.762 5.708.862 0 1.689-.123 2.304-.335v-.862c-.43.199-1.354.328-2.29.328-2.926 0-4.813-1.88-4.813-4.798 0-2.844 1.921-4.881 4.594-4.881 2.735 0 4.608 1.688 4.608 4.156 0 1.682-.554 2.769-1.416 2.769-.492 0-.772-.28-.772-.76V5.206H8.923v.834h-.11c-.266-.595-.881-.964-1.6-.964-1.4 0-2.378 1.162-2.378 2.823 0 1.737.957 2.906 2.379 2.906.8 0 1.415-.39 1.709-1.087h.11c.081.67.703 1.148 1.503 1.148 1.572 0 2.57-1.415 2.57-3.643zm-7.177.704c0-1.197.54-1.907 1.456-1.907.93 0 1.524.738 1.524 1.907S8.308 9.84 7.371 9.84c-.895 0-1.442-.725-1.442-1.914\"},\"child\":[]}]})(props);\n};\nexport function BsAwardFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m8 0 1.669.864 1.858.282.842 1.68 1.337 1.32L13.4 6l.306 1.854-1.337 1.32-.842 1.68-1.858.282L8 12l-1.669-.864-1.858-.282-.842-1.68-1.337-1.32L2.6 6l-.306-1.854 1.337-1.32.842-1.68L6.331.864z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4 11.794V16l4-1 4 1v-4.206l-2.018.306L8 13.126 6.018 12.1z\"},\"child\":[]}]})(props);\n};\nexport function BsAward (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.669.864 8 0 6.331.864l-1.858.282-.842 1.68-1.337 1.32L2.6 6l-.306 1.854 1.337 1.32.842 1.68 1.858.282L8 12l1.669-.864 1.858-.282.842-1.68 1.337-1.32L13.4 6l.306-1.854-1.337-1.32-.842-1.68zm1.196 1.193.684 1.365 1.086 1.072L12.387 6l.248 1.506-1.086 1.072-.684 1.365-1.51.229L8 10.874l-1.355-.702-1.51-.229-.684-1.365-1.086-1.072L3.614 6l-.25-1.506 1.087-1.072.684-1.365 1.51-.229L8 1.126l1.356.702z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4 11.794V16l4-1 4 1v-4.206l-2.018.306L8 13.126 6.018 12.1z\"},\"child\":[]}]})(props);\n};\nexport function BsBack (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 2a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v2h2a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2v-2H2a2 2 0 0 1-2-2zm2-1a1 1 0 0 0-1 1v8a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsBackpackFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5 13v-3h4v.5a.5.5 0 0 0 1 0V10h1v3z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M6 2v.341C3.67 3.165 2 5.388 2 8v5.5A2.5 2.5 0 0 0 4.5 16h7a2.5 2.5 0 0 0 2.5-2.5V8a6 6 0 0 0-4-5.659V2a2 2 0 1 0-4 0m2-1a1 1 0 0 1 1 1v.083a6 6 0 0 0-2 0V2a1 1 0 0 1 1-1m0 3a4 4 0 0 1 3.96 3.43.5.5 0 1 1-.99.14 3 3 0 0 0-5.94 0 .5.5 0 1 1-.99-.14A4 4 0 0 1 8 4M4.5 9h7a.5.5 0 0 1 .5.5v4a.5.5 0 0 1-.5.5h-7a.5.5 0 0 1-.5-.5v-4a.5.5 0 0 1 .5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsBackpack (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4.04 7.43a4 4 0 0 1 7.92 0 .5.5 0 1 1-.99.14 3 3 0 0 0-5.94 0 .5.5 0 1 1-.99-.14M4 9.5a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 .5.5v4a.5.5 0 0 1-.5.5h-7a.5.5 0 0 1-.5-.5zm1 .5v3h6v-3h-1v.5a.5.5 0 0 1-1 0V10z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M6 2.341V2a2 2 0 1 1 4 0v.341c2.33.824 4 3.047 4 5.659v5.5a2.5 2.5 0 0 1-2.5 2.5h-7A2.5 2.5 0 0 1 2 13.5V8a6 6 0 0 1 4-5.659M7 2v.083a6 6 0 0 1 2 0V2a1 1 0 0 0-2 0m1 1a5 5 0 0 0-5 5v5.5A1.5 1.5 0 0 0 4.5 15h7a1.5 1.5 0 0 0 1.5-1.5V8a5 5 0 0 0-5-5\"},\"child\":[]}]})(props);\n};\nexport function BsBackpack2Fill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5 13h6v-3h-1v.5a.5.5 0 0 1-1 0V10H5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M6 2v.341C3.67 3.165 2 5.388 2 8v1.191l-1.17.585A1.5 1.5 0 0 0 0 11.118V13.5A1.5 1.5 0 0 0 1.5 15h1c.456.607 1.182 1 2 1h7c.818 0 1.544-.393 2-1h1a1.5 1.5 0 0 0 1.5-1.5v-2.382a1.5 1.5 0 0 0-.83-1.342L14 9.191V8a6 6 0 0 0-4-5.659V2a2 2 0 1 0-4 0m2-1a1 1 0 0 1 1 1v.083a6 6 0 0 0-2 0V2a1 1 0 0 1 1-1m0 3a4 4 0 0 1 3.96 3.43.5.5 0 1 1-.99.14 3 3 0 0 0-5.94 0 .5.5 0 1 1-.99-.14A4 4 0 0 1 8 4M4.5 9h7a.5.5 0 0 1 .5.5v4a.5.5 0 0 1-.5.5h-7a.5.5 0 0 1-.5-.5v-4a.5.5 0 0 1 .5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsBackpack2 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4.04 7.43a4 4 0 0 1 7.92 0 .5.5 0 1 1-.99.14 3 3 0 0 0-5.94 0 .5.5 0 1 1-.99-.14\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M4 9.5a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 .5.5v4a.5.5 0 0 1-.5.5h-7a.5.5 0 0 1-.5-.5zm1 .5v3h6v-3h-1v.5a.5.5 0 0 1-1 0V10z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M6 2.341V2a2 2 0 1 1 4 0v.341c2.33.824 4 3.047 4 5.659v1.191l1.17.585a1.5 1.5 0 0 1 .83 1.342V13.5a1.5 1.5 0 0 1-1.5 1.5h-1c-.456.607-1.182 1-2 1h-7a2.5 2.5 0 0 1-2-1h-1A1.5 1.5 0 0 1 0 13.5v-2.382a1.5 1.5 0 0 1 .83-1.342L2 9.191V8a6 6 0 0 1 4-5.659M7 2v.083a6 6 0 0 1 2 0V2a1 1 0 0 0-2 0M3 13.5A1.5 1.5 0 0 0 4.5 15h7a1.5 1.5 0 0 0 1.5-1.5V8A5 5 0 0 0 3 8zm-1-3.19-.724.362a.5.5 0 0 0-.276.447V13.5a.5.5 0 0 0 .5.5H2zm12 0V14h.5a.5.5 0 0 0 .5-.5v-2.382a.5.5 0 0 0-.276-.447L14 10.309Z\"},\"child\":[]}]})(props);\n};\nexport function BsBackpack3Fill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5 10v3h6v-3h-1v.5a.5.5 0 0 1-1 0V10z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M6 2v.341a6 6 0 0 0-1.308.653l-.416-1.247a1 1 0 0 0-1.749-.284l-.77 1.027a1 1 0 0 0-.149.917l.803 2.407A6 6 0 0 0 2 8v5.5A2.5 2.5 0 0 0 4.5 16h7a2.5 2.5 0 0 0 2.5-2.5V8c0-.771-.146-1.509-.41-2.186l.801-2.407a1 1 0 0 0-.148-.917l-.77-1.027a1 1 0 0 0-1.75.284l-.415 1.247A6 6 0 0 0 10 2.34V2a2 2 0 1 0-4 0m1 0a1 1 0 0 1 2 0v.083a6 6 0 0 0-2 0zm5.941 2.595a6 6 0 0 0-.8-.937l.531-1.595.77 1.027zM3.86 3.658a6 6 0 0 0-.8.937L2.557 3.09l.77-1.027zm.18 3.772a4 4 0 0 1 7.92 0 .5.5 0 1 1-.99.142 3 3 0 0 0-5.94 0 .5.5 0 1 1-.99-.142M4 9.5a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 .5.5v4a.5.5 0 0 1-.5.5h-7a.5.5 0 0 1-.5-.5z\"},\"child\":[]}]})(props);\n};\nexport function BsBackpack3 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4.04 7.43a4 4 0 0 1 7.92 0 .5.5 0 1 1-.99.14 3 3 0 0 0-5.94 0 .5.5 0 1 1-.99-.14M4 9.5a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 .5.5v4a.5.5 0 0 1-.5.5h-7a.5.5 0 0 1-.5-.5zm1 .5v3h6v-3h-1v.5a.5.5 0 0 1-1 0V10z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M6 2.341V2a2 2 0 1 1 4 0v.341c.465.165.904.385 1.308.653l.416-1.247a1 1 0 0 1 1.748-.284l.77 1.027a1 1 0 0 1 .15.917l-.803 2.407C13.854 6.49 14 7.229 14 8v5.5a2.5 2.5 0 0 1-2.5 2.5h-7A2.5 2.5 0 0 1 2 13.5V8c0-.771.146-1.509.41-2.186l-.802-2.407a1 1 0 0 1 .15-.917l.77-1.027a1 1 0 0 1 1.748.284l.416 1.247A6 6 0 0 1 6 2.34ZM7 2v.083a6 6 0 0 1 2 0V2a1 1 0 1 0-2 0m5.941 2.595.502-1.505-.77-1.027-.532 1.595q.447.427.8.937M3.86 3.658l-.532-1.595-.77 1.027.502 1.505q.352-.51.8-.937M8 3a5 5 0 0 0-5 5v5.5A1.5 1.5 0 0 0 4.5 15h7a1.5 1.5 0 0 0 1.5-1.5V8a5 5 0 0 0-5-5\"},\"child\":[]}]})(props);\n};\nexport function BsBackpack4Fill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 0a2 2 0 0 0-2 2H3.5a2 2 0 0 0-2 2v1a2 2 0 0 0 2 2h4v.5a.5.5 0 0 0 1 0V7h4a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2H10a2 2 0 0 0-2-2m1 2a1 1 0 0 0-2 0zm-4 9v2h6v-2h-1v.5a.5.5 0 0 1-1 0V11z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M14 7.599A3 3 0 0 1 12.5 8H9.415a1.5 1.5 0 0 1-2.83 0H3.5A3 3 0 0 1 2 7.599V14a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2zM4 10.5a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 .5.5v3a.5.5 0 0 1-.5.5h-7a.5.5 0 0 1-.5-.5z\"},\"child\":[]}]})(props);\n};\nexport function BsBackpack4 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4 9.5a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 .5.5v4a.5.5 0 0 1-.5.5h-7a.5.5 0 0 1-.5-.5zm1 .5v3h6v-3h-1v.5a.5.5 0 0 1-1 0V10z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8 0a2 2 0 0 0-2 2H3.5a2 2 0 0 0-2 2v1c0 .52.198.993.523 1.349A.5.5 0 0 0 2 6.5V14a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V6.5a.5.5 0 0 0-.023-.151c.325-.356.523-.83.523-1.349V4a2 2 0 0 0-2-2H10a2 2 0 0 0-2-2m0 1a1 1 0 0 0-1 1h2a1 1 0 0 0-1-1M3 14V6.937q.24.062.5.063h4v.5a.5.5 0 0 0 1 0V7h4q.26 0 .5-.063V14a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1m9.5-11a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1h-9a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsBackspaceFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M15.683 3a2 2 0 0 0-2-2h-7.08a2 2 0 0 0-1.519.698L.241 7.35a1 1 0 0 0 0 1.302l4.843 5.65A2 2 0 0 0 6.603 15h7.08a2 2 0 0 0 2-2zM5.829 5.854a.5.5 0 1 1 .707-.708l2.147 2.147 2.146-2.147a.5.5 0 1 1 .707.708L9.39 8l2.146 2.146a.5.5 0 0 1-.707.708L8.683 8.707l-2.147 2.147a.5.5 0 0 1-.707-.708L7.976 8z\"},\"child\":[]}]})(props);\n};\nexport function BsBackspaceReverseFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 3a2 2 0 0 1 2-2h7.08a2 2 0 0 1 1.519.698l4.843 5.651a1 1 0 0 1 0 1.302L10.6 14.3a2 2 0 0 1-1.52.7H2a2 2 0 0 1-2-2zm9.854 2.854a.5.5 0 0 0-.708-.708L7 7.293 4.854 5.146a.5.5 0 1 0-.708.708L6.293 8l-2.147 2.146a.5.5 0 0 0 .708.708L7 8.707l2.146 2.147a.5.5 0 0 0 .708-.708L7.707 8z\"},\"child\":[]}]})(props);\n};\nexport function BsBackspaceReverse (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.854 5.146a.5.5 0 0 1 0 .708L7.707 8l2.147 2.146a.5.5 0 0 1-.708.708L7 8.707l-2.146 2.147a.5.5 0 0 1-.708-.708L6.293 8 4.146 5.854a.5.5 0 1 1 .708-.708L7 7.293l2.146-2.147a.5.5 0 0 1 .708 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 1a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h7.08a2 2 0 0 0 1.519-.698l4.843-5.651a1 1 0 0 0 0-1.302L10.6 1.7A2 2 0 0 0 9.08 1zm7.08 1a1 1 0 0 1 .76.35L14.682 8l-4.844 5.65a1 1 0 0 1-.759.35H2a1 1 0 0 1-1-1V3a1 1 0 0 1 1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsBackspace (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5.83 5.146a.5.5 0 0 0 0 .708L7.975 8l-2.147 2.146a.5.5 0 0 0 .707.708l2.147-2.147 2.146 2.147a.5.5 0 0 0 .707-.708L9.39 8l2.146-2.146a.5.5 0 0 0-.707-.708L8.683 7.293 6.536 5.146a.5.5 0 0 0-.707 0z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M13.683 1a2 2 0 0 1 2 2v10a2 2 0 0 1-2 2h-7.08a2 2 0 0 1-1.519-.698L.241 8.65a1 1 0 0 1 0-1.302L5.084 1.7A2 2 0 0 1 6.603 1zm-7.08 1a1 1 0 0 0-.76.35L1 8l4.844 5.65a1 1 0 0 0 .759.35h7.08a1 1 0 0 0 1-1V3a1 1 0 0 0-1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsBadge3dFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M10.157 5.968h-.844v4.06h.844c1.116 0 1.621-.667 1.621-2.02 0-1.354-.51-2.04-1.621-2.04\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M0 4a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm5.184 4.368c.646 0 1.055.378 1.06.9.008.537-.427.919-1.086.919-.598-.004-1.037-.325-1.068-.756H3c.03.914.791 1.688 2.153 1.688 1.24 0 2.285-.66 2.272-1.798-.013-.953-.747-1.38-1.292-1.432v-.062c.44-.07 1.125-.527 1.108-1.375-.013-.906-.8-1.57-2.053-1.565-1.31.005-2.043.734-2.074 1.67h1.103c.022-.391.383-.751.936-.751.532 0 .928.33.928.813.004.479-.383.835-.928.835h-.632v.914zM8.126 11h2.189C12.125 11 13 9.893 13 7.985c0-1.894-.861-2.984-2.685-2.984H8.126z\"},\"child\":[]}]})(props);\n};\nexport function BsBadge3D (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4.52 8.368h.664c.646 0 1.055.378 1.06.9.008.537-.427.919-1.086.919-.598-.004-1.037-.325-1.068-.756H3c.03.914.791 1.688 2.153 1.688 1.24 0 2.285-.66 2.272-1.798-.013-.953-.747-1.38-1.292-1.432v-.062c.44-.07 1.125-.527 1.108-1.375-.013-.906-.8-1.57-2.053-1.565-1.31.005-2.043.734-2.074 1.67h1.103c.022-.391.383-.751.936-.751.532 0 .928.33.928.813.004.479-.383.835-.928.835h-.632v.914zm3.606-3.367V11h2.189C12.125 11 13 9.893 13 7.985c0-1.894-.861-2.984-2.685-2.984zm1.187.967h.844c1.112 0 1.621.686 1.621 2.04 0 1.353-.505 2.02-1.621 2.02h-.844z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M14 3a1 1 0 0 1 1 1v8a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1zM2 2a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2z\"},\"child\":[]}]})(props);\n};\nexport function BsBadge4kFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3.577 8.9v.03h1.828V5.898h-.062a47 47 0 0 0-1.766 3.001z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 2a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2zm2.372 3.715.435-.714h1.71v3.93h.733v.957h-.733V11H5.405V9.888H2.5v-.971c.574-1.077 1.225-2.142 1.872-3.202m7.73-.714h1.306l-2.14 2.584L13.5 11h-1.428l-1.679-2.624-.615.7V11H8.59V5.001h1.187v2.686h.057L12.102 5z\"},\"child\":[]}]})(props);\n};\nexport function BsBadge4K (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4.807 5.001C4.021 6.298 3.203 7.6 2.5 8.917v.971h2.905V11h1.112V9.888h.733V8.93h-.733V5.001zm-1.23 3.93v-.032a47 47 0 0 1 1.766-3.001h.062V8.93zm9.831-3.93h-1.306L9.835 7.687h-.057V5H8.59v6h1.187V9.075l.615-.699L12.072 11H13.5l-2.232-3.415z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M14 3a1 1 0 0 1 1 1v8a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1zM2 2a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2z\"},\"child\":[]}]})(props);\n};\nexport function BsBadge8kFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3.9 6.605c0 .51.405.866.95.866s.945-.356.945-.866-.4-.852-.945-.852-.95.343-.95.852m-.192 2.668c0 .589.492.984 1.142.984.646 0 1.143-.395 1.143-.984S5.496 8.28 4.85 8.28c-.65 0-1.142.404-1.142.993\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 2a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2zm5.17 7.348c0 1.041-.927 1.766-2.333 1.766s-2.312-.72-2.312-1.762c0-.954.712-1.384 1.257-1.494v-.053c-.51-.154-1.02-.558-1.02-1.331 0-.914.831-1.587 2.088-1.587 1.253 0 2.083.673 2.083 1.587 0 .782-.523 1.182-1.02 1.331v.053c.545.11 1.257.545 1.257 1.49M12.102 5h1.306l-2.14 2.584 2.232 3.415h-1.428l-1.679-2.624-.615.699v1.925H8.59V5h1.187v2.685h.057z\"},\"child\":[]}]})(props);\n};\nexport function BsBadge8K (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4.837 11.114c1.406 0 2.333-.725 2.333-1.766 0-.945-.712-1.38-1.256-1.49v-.053c.496-.15 1.02-.55 1.02-1.331 0-.914-.831-1.587-2.084-1.587-1.257 0-2.087.673-2.087 1.587 0 .773.51 1.177 1.02 1.331v.053c-.546.11-1.258.54-1.258 1.494 0 1.042.906 1.762 2.312 1.762m.013-3.643c-.545 0-.95-.356-.95-.866s.405-.852.95-.852.945.343.945.852c0 .51-.4.866-.945.866m0 2.786c-.65 0-1.142-.395-1.142-.984S4.2 8.28 4.85 8.28c.646 0 1.143.404 1.143.993s-.497.984-1.143.984M13.408 5h-1.306L9.835 7.685h-.057V5H8.59v5.998h1.187V9.075l.615-.699 1.679 2.623H13.5l-2.232-3.414z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M14 3a1 1 0 0 1 1 1v8a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1zM2 2a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2z\"},\"child\":[]}]})(props);\n};\nexport function BsBadgeAdFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M11.35 8.337c0-.699-.42-1.138-1.001-1.138-.584 0-.954.444-.954 1.239v.453c0 .8.374 1.248.972 1.248.588 0 .984-.44.984-1.2zm-5.413.237-.734-2.426H5.15l-.734 2.426h1.52z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 2a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2zm6.209 6.32c0-1.28.694-2.044 1.753-2.044.655 0 1.156.294 1.336.769h.053v-2.36h1.16V11h-1.138v-.747h-.057c-.145.474-.69.804-1.367.804-1.055 0-1.74-.764-1.74-2.043v-.695zm-4.04 1.138L3.7 11H2.5l2.013-5.999H5.9L7.905 11H6.644l-.47-1.542H4.17z\"},\"child\":[]}]})(props);\n};\nexport function BsBadgeAd (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m3.7 11 .47-1.542h2.004L6.644 11h1.261L5.901 5.001H4.513L2.5 11zm1.503-4.852.734 2.426H4.416l.734-2.426zm4.759.128c-1.059 0-1.753.765-1.753 2.043v.695c0 1.279.685 2.043 1.74 2.043.677 0 1.222-.33 1.367-.804h.057V11h1.138V4.685h-1.16v2.36h-.053c-.18-.475-.68-.77-1.336-.77zm.387.923c.58 0 1.002.44 1.002 1.138v.602c0 .76-.396 1.2-.984 1.2-.598 0-.972-.449-.972-1.248v-.453c0-.795.37-1.24.954-1.24z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M14 3a1 1 0 0 1 1 1v8a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1zM2 2a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2z\"},\"child\":[]}]})(props);\n};\nexport function BsBadgeArFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m6.031 8.574-.734-2.426h-.052L4.51 8.574h1.52zm3.642-2.641v1.938h1.033c.66 0 1.068-.316 1.068-.95 0-.64-.422-.988-1.05-.988z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M0 4a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm4.265 5.458h2.004L6.739 11H8L5.996 5.001H4.607L2.595 11h1.2zM8.5 5v6h1.173V8.763h1.064L11.787 11h1.327L11.91 8.583C12.455 8.373 13 7.779 13 6.9c0-1.147-.773-1.9-2.105-1.9z\"},\"child\":[]}]})(props);\n};\nexport function BsBadgeAr (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m3.794 11 .47-1.542H6.27L6.739 11H8L5.996 5.001H4.607L2.595 11zm1.503-4.852.734 2.426h-1.52l.734-2.426zm5.598-1.147H8.5V11h1.173V8.763h1.064L11.787 11h1.327L11.91 8.583C12.455 8.373 13 7.779 13 6.9c0-1.147-.773-1.9-2.105-1.9zm-1.222 2.87V5.933h1.05c.63 0 1.05.347 1.05.989 0 .633-.408.95-1.067.95z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M14 3a1 1 0 0 1 1 1v8a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1zM2 2a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2z\"},\"child\":[]}]})(props);\n};\nexport function BsBadgeCcFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 2a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2zm3.027 4.002c-.83 0-1.319.642-1.319 1.753v.743c0 1.107.48 1.727 1.319 1.727.69 0 1.138-.435 1.186-1.05H7.36v.114c-.057 1.147-1.028 1.938-2.342 1.938-1.613 0-2.518-1.028-2.518-2.729v-.747C2.5 6.051 3.414 5 5.018 5c1.318 0 2.29.813 2.342 2v.11H6.213c-.048-.638-.505-1.108-1.186-1.108m6.14 0c-.831 0-1.319.642-1.319 1.753v.743c0 1.107.48 1.727 1.318 1.727.69 0 1.139-.435 1.187-1.05H13.5v.114c-.057 1.147-1.028 1.938-2.342 1.938-1.613 0-2.518-1.028-2.518-2.729v-.747c0-1.7.914-2.751 2.518-2.751 1.318 0 2.29.813 2.342 2v.11h-1.147c-.048-.638-.505-1.108-1.187-1.108z\"},\"child\":[]}]})(props);\n};\nexport function BsBadgeCc (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3.708 7.755c0-1.111.488-1.753 1.319-1.753.681 0 1.138.47 1.186 1.107H7.36V7c-.052-1.186-1.024-2-2.342-2C3.414 5 2.5 6.05 2.5 7.751v.747c0 1.7.905 2.73 2.518 2.73 1.314 0 2.285-.792 2.342-1.939v-.114H6.213c-.048.615-.496 1.05-1.186 1.05-.84 0-1.319-.62-1.319-1.727zm6.14 0c0-1.111.488-1.753 1.318-1.753.682 0 1.139.47 1.187 1.107H13.5V7c-.053-1.186-1.024-2-2.342-2C9.554 5 8.64 6.05 8.64 7.751v.747c0 1.7.905 2.73 2.518 2.73 1.314 0 2.285-.792 2.342-1.939v-.114h-1.147c-.048.615-.497 1.05-1.187 1.05-.839 0-1.318-.62-1.318-1.727z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M14 3a1 1 0 0 1 1 1v8a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1zM2 2a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2z\"},\"child\":[]}]})(props);\n};\nexport function BsBadgeHdFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M10.53 5.968h-.843v4.06h.843c1.117 0 1.622-.667 1.622-2.02 0-1.354-.51-2.04-1.622-2.04\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 2a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2zm5.396 3.001V11H6.209V8.43H3.687V11H2.5V5.001h1.187v2.44h2.522V5h1.187zM8.5 11V5.001h2.188c1.824 0 2.685 1.09 2.685 2.984C13.373 9.893 12.5 11 10.69 11z\"},\"child\":[]}]})(props);\n};\nexport function BsBadgeHd (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.396 11V5.001H6.209v2.44H3.687V5H2.5v6h1.187V8.43h2.522V11zM8.5 5.001V11h2.188c1.811 0 2.685-1.107 2.685-3.015 0-1.894-.86-2.984-2.684-2.984zm1.187.967h.843c1.112 0 1.622.686 1.622 2.04 0 1.353-.505 2.02-1.622 2.02h-.843z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M14 3a1 1 0 0 1 1 1v8a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1zM2 2a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2z\"},\"child\":[]}]})(props);\n};\nexport function BsBadgeSdFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M10.338 5.968h-.844v4.06h.844c1.116 0 1.622-.667 1.622-2.02 0-1.354-.51-2.04-1.622-2.04\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M0 4a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm5.077 7.114c1.521 0 2.378-.764 2.378-1.88 0-1.007-.642-1.473-1.613-1.692l-.932-.216c-.527-.114-.821-.351-.821-.712 0-.466.39-.804 1.046-.804.637 0 1.028.33 1.103.76h1.125c-.058-.923-.849-1.692-2.22-1.692-1.322 0-2.24.717-2.24 1.815 0 .91.588 1.446 1.52 1.657l.927.215c.624.145.923.36.923.778 0 .492-.391.83-1.13.83-.707 0-1.155-.342-1.234-.808H2.762c.052.95.79 1.75 2.315 1.75ZM8.307 11h2.19c1.81 0 2.684-1.107 2.684-3.015 0-1.894-.861-2.984-2.685-2.984H8.308z\"},\"child\":[]}]})(props);\n};\nexport function BsBadgeSd (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M15 4a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1v8a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1zM0 4a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm5.077 7.114c-1.524 0-2.263-.8-2.315-1.749h1.147c.079.466.527.809 1.234.809.739 0 1.13-.339 1.13-.83 0-.418-.3-.634-.923-.779l-.927-.215c-.932-.21-1.52-.747-1.52-1.657 0-1.098.918-1.815 2.24-1.815 1.371 0 2.162.77 2.22 1.692H6.238c-.075-.43-.466-.76-1.103-.76-.655 0-1.046.338-1.046.804 0 .36.294.598.821.712l.932.216c.971.22 1.613.685 1.613 1.691 0 1.117-.857 1.881-2.378 1.881M8.307 11V5.001h2.19c1.823 0 2.684 1.09 2.684 2.984 0 1.908-.874 3.015-2.685 3.015zm2.031-5.032h-.844v4.06h.844c1.116 0 1.622-.667 1.622-2.02 0-1.354-.51-2.04-1.622-2.04\"},\"child\":[]}]})(props);\n};\nexport function BsBadgeTmFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 2a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2zm3.295 3.995V11H4.104V5.995h-1.7V5H7v.994H5.295zM8.692 7.01V11H7.633V5.001h1.209l1.71 3.894h.039l1.71-3.894H13.5V11h-1.072V7.01h-.057l-1.42 3.239h-.773L8.75 7.008h-.058z\"},\"child\":[]}]})(props);\n};\nexport function BsBadgeTm (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5.295 11V5.995H7V5H2.403v.994h1.701V11zm3.397 0V7.01h.058l1.428 3.239h.773l1.42-3.24h.057V11H13.5V5.001h-1.2l-1.71 3.894h-.039l-1.71-3.894H7.634V11h1.06z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M14 3a1 1 0 0 1 1 1v8a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1zM2 2a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2z\"},\"child\":[]}]})(props);\n};\nexport function BsBadgeVoFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12.296 8.394v-.782c0-1.156-.571-1.736-1.362-1.736-.796 0-1.363.58-1.363 1.736v.782c0 1.156.567 1.732 1.363 1.732.79 0 1.362-.576 1.362-1.732\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 2a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2zm11.5 5.62v.77c0 1.691-.962 2.724-2.566 2.724S8.363 10.081 8.363 8.39v-.77c0-1.704.967-2.733 2.57-2.733 1.605 0 2.567 1.037 2.567 2.734zM5.937 11H4.508L2.5 5.001h1.375L5.22 9.708h.057L6.61 5.001h1.318z\"},\"child\":[]}]})(props);\n};\nexport function BsBadgeVo (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4.508 11h1.429l1.99-5.999H6.61L5.277 9.708H5.22L3.875 5.001H2.5zM13.5 8.39v-.77c0-1.696-.962-2.733-2.566-2.733S8.363 5.916 8.363 7.621v.769c0 1.691.967 2.724 2.57 2.724 1.605 0 2.567-1.033 2.567-2.724m-1.204-.778v.782c0 1.156-.571 1.732-1.362 1.732-.796 0-1.363-.576-1.363-1.732v-.782c0-1.156.567-1.736 1.363-1.736.79 0 1.362.58 1.362 1.736\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M14 3a1 1 0 0 1 1 1v8a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1zM2 2a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2z\"},\"child\":[]}]})(props);\n};\nexport function BsBadgeVrFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.673 5.933v1.938h1.033c.66 0 1.068-.316 1.068-.95 0-.64-.422-.988-1.05-.988z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M0 4a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm5.937 7 1.99-5.999H6.61L5.277 9.708H5.22L3.875 5.001H2.5L4.508 11zM8.5 5.001V11h1.173V8.763h1.064L11.787 11h1.327L11.91 8.583C12.455 8.373 13 7.779 13 6.9c0-1.147-.773-1.9-2.105-1.9H8.5z\"},\"child\":[]}]})(props);\n};\nexport function BsBadgeVr (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M14 3a1 1 0 0 1 1 1v8a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1zM2 2a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4.508 11h1.429l1.99-5.999H6.61L5.277 9.708H5.22L3.875 5.001H2.5zm6.387-5.999H8.5V11h1.173V8.763h1.064L11.787 11h1.327L11.91 8.583C12.455 8.373 13 7.779 13 6.9c0-1.147-.773-1.9-2.105-1.9zm-1.222 2.87V5.933h1.05c.63 0 1.05.347 1.05.989 0 .633-.408.95-1.067.95z\"},\"child\":[]}]})(props);\n};\nexport function BsBadgeWcFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 4a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm11.666 1.89c.682 0 1.139.47 1.187 1.107H14v-.11c-.053-1.187-1.024-2-2.342-2-1.604 0-2.518 1.05-2.518 2.751v.747c0 1.7.905 2.73 2.518 2.73 1.314 0 2.285-.792 2.342-1.939v-.114h-1.147c-.048.615-.497 1.05-1.187 1.05-.839 0-1.318-.62-1.318-1.727v-.742c0-1.112.488-1.754 1.318-1.754zm-6.188.926h.044L6.542 11h1.006L9 5.001H7.818l-.82 4.355h-.056L5.97 5.001h-.94l-.972 4.355h-.053l-.827-4.355H2L3.452 11h1.005z\"},\"child\":[]}]})(props);\n};\nexport function BsBadgeWc (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M10.348 7.643c0-1.112.488-1.754 1.318-1.754.682 0 1.139.47 1.187 1.108H14v-.11c-.053-1.187-1.024-2-2.342-2-1.604 0-2.518 1.05-2.518 2.751v.747c0 1.7.905 2.73 2.518 2.73 1.314 0 2.285-.792 2.342-1.939v-.114h-1.147c-.048.615-.497 1.05-1.187 1.05-.839 0-1.318-.62-1.318-1.727zM4.457 11l1.02-4.184h.045L6.542 11h1.006L9 5.001H7.818l-.82 4.355h-.056L5.97 5.001h-.94l-.972 4.355h-.053l-.827-4.355H2L3.452 11z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M14 3a1 1 0 0 1 1 1v8a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1zM2 2a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2z\"},\"child\":[]}]})(props);\n};\nexport function BsBagCheckFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M10.5 3.5a2.5 2.5 0 0 0-5 0V4h5zm1 0V4H15v10a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2V4h3.5v-.5a3.5 3.5 0 1 1 7 0m-.646 5.354a.5.5 0 0 0-.708-.708L7.5 10.793 6.354 9.646a.5.5 0 1 0-.708.708l1.5 1.5a.5.5 0 0 0 .708 0z\"},\"child\":[]}]})(props);\n};\nexport function BsBagCheck (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M10.854 8.146a.5.5 0 0 1 0 .708l-3 3a.5.5 0 0 1-.708 0l-1.5-1.5a.5.5 0 0 1 .708-.708L7.5 10.793l2.646-2.647a.5.5 0 0 1 .708 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8 1a2.5 2.5 0 0 1 2.5 2.5V4h-5v-.5A2.5 2.5 0 0 1 8 1m3.5 3v-.5a3.5 3.5 0 1 0-7 0V4H1v10a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V4zM2 5h12v9a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsBagDashFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M10.5 3.5a2.5 2.5 0 0 0-5 0V4h5zm1 0V4H15v10a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2V4h3.5v-.5a3.5 3.5 0 1 1 7 0M6 9.5a.5.5 0 0 0 0 1h4a.5.5 0 0 0 0-1z\"},\"child\":[]}]})(props);\n};\nexport function BsBagDash (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M5.5 10a.5.5 0 0 1 .5-.5h4a.5.5 0 0 1 0 1H6a.5.5 0 0 1-.5-.5\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8 1a2.5 2.5 0 0 1 2.5 2.5V4h-5v-.5A2.5 2.5 0 0 1 8 1m3.5 3v-.5a3.5 3.5 0 1 0-7 0V4H1v10a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V4zM2 5h12v9a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsBagFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 1a2.5 2.5 0 0 1 2.5 2.5V4h-5v-.5A2.5 2.5 0 0 1 8 1m3.5 3v-.5a3.5 3.5 0 1 0-7 0V4H1v10a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V4z\"},\"child\":[]}]})(props);\n};\nexport function BsBagHeartFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M11.5 4v-.5a3.5 3.5 0 1 0-7 0V4H1v10a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V4zM8 1a2.5 2.5 0 0 1 2.5 2.5V4h-5v-.5A2.5 2.5 0 0 1 8 1m0 6.993c1.664-1.711 5.825 1.283 0 5.132-5.825-3.85-1.664-6.843 0-5.132\"},\"child\":[]}]})(props);\n};\nexport function BsBagHeart (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M10.5 3.5a2.5 2.5 0 0 0-5 0V4h5zm1 0V4H15v10a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2V4h3.5v-.5a3.5 3.5 0 1 1 7 0M14 14V5H2v9a1 1 0 0 0 1 1h10a1 1 0 0 0 1-1M8 7.993c1.664-1.711 5.825 1.283 0 5.132-5.825-3.85-1.664-6.843 0-5.132\"},\"child\":[]}]})(props);\n};\nexport function BsBagPlusFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M10.5 3.5a2.5 2.5 0 0 0-5 0V4h5zm1 0V4H15v10a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2V4h3.5v-.5a3.5 3.5 0 1 1 7 0M8.5 8a.5.5 0 0 0-1 0v1.5H6a.5.5 0 0 0 0 1h1.5V12a.5.5 0 0 0 1 0v-1.5H10a.5.5 0 0 0 0-1H8.5z\"},\"child\":[]}]})(props);\n};\nexport function BsBagPlus (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M8 7.5a.5.5 0 0 1 .5.5v1.5H10a.5.5 0 0 1 0 1H8.5V12a.5.5 0 0 1-1 0v-1.5H6a.5.5 0 0 1 0-1h1.5V8a.5.5 0 0 1 .5-.5\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8 1a2.5 2.5 0 0 1 2.5 2.5V4h-5v-.5A2.5 2.5 0 0 1 8 1m3.5 3v-.5a3.5 3.5 0 1 0-7 0V4H1v10a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V4zM2 5h12v9a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsBagXFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M10.5 3.5a2.5 2.5 0 0 0-5 0V4h5zm1 0V4H15v10a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2V4h3.5v-.5a3.5 3.5 0 1 1 7 0M6.854 8.146a.5.5 0 1 0-.708.708L7.293 10l-1.147 1.146a.5.5 0 0 0 .708.708L8 10.707l1.146 1.147a.5.5 0 0 0 .708-.708L8.707 10l1.147-1.146a.5.5 0 0 0-.708-.708L8 9.293z\"},\"child\":[]}]})(props);\n};\nexport function BsBagX (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M6.146 8.146a.5.5 0 0 1 .708 0L8 9.293l1.146-1.147a.5.5 0 1 1 .708.708L8.707 10l1.147 1.146a.5.5 0 0 1-.708.708L8 10.707l-1.146 1.147a.5.5 0 0 1-.708-.708L7.293 10 6.146 8.854a.5.5 0 0 1 0-.708\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8 1a2.5 2.5 0 0 1 2.5 2.5V4h-5v-.5A2.5 2.5 0 0 1 8 1m3.5 3v-.5a3.5 3.5 0 1 0-7 0V4H1v10a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V4zM2 5h12v9a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsBag (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 1a2.5 2.5 0 0 1 2.5 2.5V4h-5v-.5A2.5 2.5 0 0 1 8 1m3.5 3v-.5a3.5 3.5 0 1 0-7 0V4H1v10a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V4zM2 5h12v9a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsBalloonFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M8.48 10.901C11.211 10.227 13 7.837 13 5A5 5 0 0 0 3 5c0 2.837 1.789 5.227 4.52 5.901l-.244.487a.25.25 0 1 0 .448.224l.04-.08c.009.17.024.315.051.45.068.344.208.622.448 1.102l.013.028c.212.422.182.85.05 1.246-.135.402-.366.751-.534 1.003a.25.25 0 0 0 .416.278l.004-.007c.166-.248.431-.646.588-1.115.16-.479.212-1.051-.076-1.629-.258-.515-.365-.732-.419-1.004a2 2 0 0 1-.037-.289l.008.017a.25.25 0 1 0 .448-.224zM4.352 3.356a4 4 0 0 1 3.15-2.325C7.774.997 8 1.224 8 1.5s-.226.496-.498.542c-.95.162-1.749.78-2.173 1.617a.6.6 0 0 1-.52.341c-.346 0-.599-.329-.457-.644\"},\"child\":[]}]})(props);\n};\nexport function BsBalloonHeartFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M8.49 10.92C19.412 3.382 11.28-2.387 8 .986 4.719-2.387-3.413 3.382 7.51 10.92l-.234.468a.25.25 0 1 0 .448.224l.04-.08c.009.17.024.315.051.45.068.344.208.622.448 1.102l.013.028c.212.422.182.85.05 1.246-.135.402-.366.751-.534 1.003a.25.25 0 0 0 .416.278l.004-.007c.166-.248.431-.646.588-1.115.16-.479.212-1.051-.076-1.629-.258-.515-.365-.732-.419-1.004a2 2 0 0 1-.037-.289l.008.017a.25.25 0 1 0 .448-.224l-.235-.468ZM6.726 1.269c-1.167-.61-2.8-.142-3.454 1.135-.237.463-.36 1.08-.202 1.85.055.27.467.197.527-.071.285-1.256 1.177-2.462 2.989-2.528.234-.008.348-.278.14-.386\"},\"child\":[]}]})(props);\n};\nexport function BsBalloonHeart (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"m8 2.42-.717-.737c-1.13-1.161-3.243-.777-4.01.72-.35.685-.451 1.707.236 3.062C4.16 6.753 5.52 8.32 8 10.042c2.479-1.723 3.839-3.29 4.491-4.577.687-1.355.587-2.377.236-3.061-.767-1.498-2.88-1.882-4.01-.721zm-.49 8.5c-10.78-7.44-3-13.155.359-10.063q.068.062.132.129.065-.067.132-.129c3.36-3.092 11.137 2.624.357 10.063l.235.468a.25.25 0 1 1-.448.224l-.008-.017c.008.11.02.202.037.29.054.27.161.488.419 1.003.288.578.235 1.15.076 1.629-.157.469-.422.867-.588 1.115l-.004.007a.25.25 0 1 1-.416-.278c.168-.252.4-.6.533-1.003.133-.396.163-.824-.049-1.246l-.013-.028c-.24-.48-.38-.758-.448-1.102a3 3 0 0 1-.052-.45l-.04.08a.25.25 0 1 1-.447-.224l.235-.468ZM6.013 2.06c-.649-.18-1.483.083-1.85.798-.131.258-.245.689-.08 1.335.063.244.414.198.487-.043.21-.697.627-1.447 1.359-1.692.217-.073.304-.337.084-.398\"},\"child\":[]}]})(props);\n};\nexport function BsBalloon (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M8 9.984C10.403 9.506 12 7.48 12 5a4 4 0 0 0-8 0c0 2.48 1.597 4.506 4 4.984M13 5c0 2.837-1.789 5.227-4.52 5.901l.244.487a.25.25 0 1 1-.448.224l-.008-.017c.008.11.02.202.037.29.054.27.161.488.419 1.003.288.578.235 1.15.076 1.629-.157.469-.422.867-.588 1.115l-.004.007a.25.25 0 1 1-.416-.278c.168-.252.4-.6.533-1.003.133-.396.163-.824-.049-1.246l-.013-.028c-.24-.48-.38-.758-.448-1.102a3 3 0 0 1-.052-.45l-.04.08a.25.25 0 1 1-.447-.224l.244-.487C4.789 10.227 3 7.837 3 5a5 5 0 0 1 10 0m-6.938-.495a2 2 0 0 1 1.443-1.443C7.773 2.994 8 2.776 8 2.5s-.226-.504-.498-.459a3 3 0 0 0-2.46 2.461c-.046.272.182.498.458.498s.494-.227.562-.495\"},\"child\":[]}]})(props);\n};\nexport function BsBanFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0M2.71 12.584q.328.378.706.707l9.875-9.875a7 7 0 0 0-.707-.707l-9.875 9.875Z\"},\"child\":[]}]})(props);\n};\nexport function BsBan (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M15 8a6.97 6.97 0 0 0-1.71-4.584l-9.874 9.875A7 7 0 0 0 15 8M2.71 12.584l9.874-9.875a7 7 0 0 0-9.874 9.874ZM16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0\"},\"child\":[]}]})(props);\n};\nexport function BsBandaidFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m2.68 7.676 6.49-6.504a4 4 0 0 1 5.66 5.653l-1.477 1.529-5.006 5.006-1.523 1.472a4 4 0 0 1-5.653-5.66l.001-.002 1.505-1.492.001-.002Zm5.71-2.858a.5.5 0 1 0-.708.707.5.5 0 0 0 .707-.707ZM6.974 6.939a.5.5 0 1 0-.707-.707.5.5 0 0 0 .707.707M5.56 8.354a.5.5 0 1 0-.707-.708.5.5 0 0 0 .707.708m2.828 2.828a.5.5 0 1 0-.707-.707.5.5 0 0 0 .707.707m1.414-2.121a.5.5 0 1 0-.707.707.5.5 0 0 0 .707-.707m1.414-.707a.5.5 0 1 0-.706-.708.5.5 0 0 0 .707.708Zm-4.242.707a.5.5 0 1 0-.707.707.5.5 0 0 0 .707-.707m1.414-.707a.5.5 0 1 0-.707-.708.5.5 0 0 0 .707.708m1.414-2.122a.5.5 0 1 0-.707.707.5.5 0 0 0 .707-.707M8.646 3.354l4 4 .708-.708-4-4zm-1.292 9.292-4-4-.708.708 4 4z\"},\"child\":[]}]})(props);\n};\nexport function BsBandaid (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M14.121 1.879a3 3 0 0 0-4.242 0L8.733 3.026l4.261 4.26 1.127-1.165a3 3 0 0 0 0-4.242M12.293 8 8.027 3.734 3.738 8.031 8 12.293zm-5.006 4.994L3.03 8.737 1.879 9.88a3 3 0 0 0 4.241 4.24l.006-.006 1.16-1.121ZM2.679 7.676l6.492-6.504a4 4 0 0 1 5.66 5.653l-1.477 1.529-5.006 5.006-1.523 1.472a4 4 0 0 1-5.653-5.66l.001-.002 1.505-1.492z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M5.56 7.646a.5.5 0 1 1-.706.708.5.5 0 0 1 .707-.708Zm1.415-1.414a.5.5 0 1 1-.707.707.5.5 0 0 1 .707-.707M8.39 4.818a.5.5 0 1 1-.708.707.5.5 0 0 1 .707-.707Zm0 5.657a.5.5 0 1 1-.708.707.5.5 0 0 1 .707-.707ZM9.803 9.06a.5.5 0 1 1-.707.708.5.5 0 0 1 .707-.707Zm1.414-1.414a.5.5 0 1 1-.706.708.5.5 0 0 1 .707-.708ZM6.975 9.06a.5.5 0 1 1-.707.708.5.5 0 0 1 .707-.707ZM8.39 7.646a.5.5 0 1 1-.708.708.5.5 0 0 1 .707-.708Zm1.413-1.414a.5.5 0 1 1-.707.707.5.5 0 0 1 .707-.707\"},\"child\":[]}]})(props);\n};\nexport function BsBank (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m8 0 6.61 3h.89a.5.5 0 0 1 .5.5v2a.5.5 0 0 1-.5.5H15v7a.5.5 0 0 1 .485.38l.5 2a.498.498 0 0 1-.485.62H.5a.498.498 0 0 1-.485-.62l.5-2A.5.5 0 0 1 1 13V6H.5a.5.5 0 0 1-.5-.5v-2A.5.5 0 0 1 .5 3h.89zM3.777 3h8.447L8 1zM2 6v7h1V6zm2 0v7h2.5V6zm3.5 0v7h1V6zm2 0v7H12V6zM13 6v7h1V6zm2-1V4H1v1zm-.39 9H1.39l-.25 1h13.72z\"},\"child\":[]}]})(props);\n};\nexport function BsBank2 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.277.084a.5.5 0 0 0-.554 0l-7.5 5A.5.5 0 0 0 .5 6h1.875v7H1.5a.5.5 0 0 0 0 1h13a.5.5 0 1 0 0-1h-.875V6H15.5a.5.5 0 0 0 .277-.916zM12.375 6v7h-1.25V6zm-2.5 0v7h-1.25V6zm-2.5 0v7h-1.25V6zm-2.5 0v7h-1.25V6zM8 4a1 1 0 1 1 0-2 1 1 0 0 1 0 2M.5 15a.5.5 0 0 0 0 1h15a.5.5 0 1 0 0-1z\"},\"child\":[]}]})(props);\n};\nexport function BsBarChartFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M1 11a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v3a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1zm5-4a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v7a1 1 0 0 1-1 1H7a1 1 0 0 1-1-1zm5-5a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1h-2a1 1 0 0 1-1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsBarChartLineFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M11 2a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v12h.5a.5.5 0 0 1 0 1H.5a.5.5 0 0 1 0-1H1v-3a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v3h1V7a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v7h1z\"},\"child\":[]}]})(props);\n};\nexport function BsBarChartLine (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M11 2a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v12h.5a.5.5 0 0 1 0 1H.5a.5.5 0 0 1 0-1H1v-3a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v3h1V7a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v7h1zm1 12h2V2h-2zm-3 0V7H7v7zm-5 0v-3H2v3z\"},\"child\":[]}]})(props);\n};\nexport function BsBarChartSteps (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M.5 0a.5.5 0 0 1 .5.5v15a.5.5 0 0 1-1 0V.5A.5.5 0 0 1 .5 0M2 1.5a.5.5 0 0 1 .5-.5h4a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-4a.5.5 0 0 1-.5-.5zm2 4a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-7a.5.5 0 0 1-.5-.5zm2 4a.5.5 0 0 1 .5-.5h6a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-6a.5.5 0 0 1-.5-.5zm2 4a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-7a.5.5 0 0 1-.5-.5z\"},\"child\":[]}]})(props);\n};\nexport function BsBarChart (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4 11H2v3h2zm5-4H7v7h2zm5-5v12h-2V2zm-2-1a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h2a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1zM6 7a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v7a1 1 0 0 1-1 1H7a1 1 0 0 1-1-1zm-5 4a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v3a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsBasketFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5.071 1.243a.5.5 0 0 1 .858.514L3.383 6h9.234L10.07 1.757a.5.5 0 1 1 .858-.514L13.783 6H15.5a.5.5 0 0 1 .5.5v2a.5.5 0 0 1-.5.5H15v5a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2V9H.5a.5.5 0 0 1-.5-.5v-2A.5.5 0 0 1 .5 6h1.717zM3.5 10.5a.5.5 0 1 0-1 0v3a.5.5 0 0 0 1 0zm2.5 0a.5.5 0 1 0-1 0v3a.5.5 0 0 0 1 0zm2.5 0a.5.5 0 1 0-1 0v3a.5.5 0 0 0 1 0zm2.5 0a.5.5 0 1 0-1 0v3a.5.5 0 0 0 1 0zm2.5 0a.5.5 0 1 0-1 0v3a.5.5 0 0 0 1 0z\"},\"child\":[]}]})(props);\n};\nexport function BsBasket (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5.757 1.071a.5.5 0 0 1 .172.686L3.383 6h9.234L10.07 1.757a.5.5 0 1 1 .858-.514L13.783 6H15a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1v4.5a2.5 2.5 0 0 1-2.5 2.5h-9A2.5 2.5 0 0 1 1 13.5V9a1 1 0 0 1-1-1V7a1 1 0 0 1 1-1h1.217L5.07 1.243a.5.5 0 0 1 .686-.172zM2 9v4.5A1.5 1.5 0 0 0 3.5 15h9a1.5 1.5 0 0 0 1.5-1.5V9zM1 7v1h14V7zm3 3a.5.5 0 0 1 .5.5v3a.5.5 0 0 1-1 0v-3A.5.5 0 0 1 4 10m2 0a.5.5 0 0 1 .5.5v3a.5.5 0 0 1-1 0v-3A.5.5 0 0 1 6 10m2 0a.5.5 0 0 1 .5.5v3a.5.5 0 0 1-1 0v-3A.5.5 0 0 1 8 10m2 0a.5.5 0 0 1 .5.5v3a.5.5 0 0 1-1 0v-3a.5.5 0 0 1 .5-.5m2 0a.5.5 0 0 1 .5.5v3a.5.5 0 0 1-1 0v-3a.5.5 0 0 1 .5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsBasket2Fill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5.929 1.757a.5.5 0 1 0-.858-.514L2.217 6H.5a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h.623l1.844 6.456A.75.75 0 0 0 3.69 15h8.622a.75.75 0 0 0 .722-.544L14.877 8h.623a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1.717L10.93 1.243a.5.5 0 1 0-.858.514L12.617 6H3.383zM4 10a1 1 0 0 1 2 0v2a1 1 0 1 1-2 0zm3 0a1 1 0 0 1 2 0v2a1 1 0 1 1-2 0zm4-1a1 1 0 0 1 1 1v2a1 1 0 1 1-2 0v-2a1 1 0 0 1 1-1\"},\"child\":[]}]})(props);\n};\nexport function BsBasket2 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4 10a1 1 0 0 1 2 0v2a1 1 0 0 1-2 0zm3 0a1 1 0 0 1 2 0v2a1 1 0 0 1-2 0zm3 0a1 1 0 1 1 2 0v2a1 1 0 0 1-2 0z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M5.757 1.071a.5.5 0 0 1 .172.686L3.383 6h9.234L10.07 1.757a.5.5 0 1 1 .858-.514L13.783 6H15.5a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-.623l-1.844 6.456a.75.75 0 0 1-.722.544H3.69a.75.75 0 0 1-.722-.544L1.123 8H.5a.5.5 0 0 1-.5-.5v-1A.5.5 0 0 1 .5 6h1.717L5.07 1.243a.5.5 0 0 1 .686-.172zM2.163 8l1.714 6h8.246l1.714-6z\"},\"child\":[]}]})(props);\n};\nexport function BsBasket3Fill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5.757 1.071a.5.5 0 0 1 .172.686L3.383 6h9.234L10.07 1.757a.5.5 0 1 1 .858-.514L13.783 6H15.5a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5H.5a.5.5 0 0 1-.5-.5v-1A.5.5 0 0 1 .5 6h1.717L5.07 1.243a.5.5 0 0 1 .686-.172zM2.468 15.426.943 9h14.114l-1.525 6.426a.75.75 0 0 1-.729.574H3.197a.75.75 0 0 1-.73-.574z\"},\"child\":[]}]})(props);\n};\nexport function BsBasket3 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5.757 1.071a.5.5 0 0 1 .172.686L3.383 6h9.234L10.07 1.757a.5.5 0 1 1 .858-.514L13.783 6H15.5a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5H.5a.5.5 0 0 1-.5-.5v-1A.5.5 0 0 1 .5 6h1.717L5.07 1.243a.5.5 0 0 1 .686-.172zM3.394 15l-1.48-6h-.97l1.525 6.426a.75.75 0 0 0 .729.574h9.606a.75.75 0 0 0 .73-.574L15.056 9h-.972l-1.479 6z\"},\"child\":[]}]})(props);\n};\nexport function BsBatteryCharging (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.585 2.568a.5.5 0 0 1 .226.58L8.677 6.832h1.99a.5.5 0 0 1 .364.843l-5.334 5.667a.5.5 0 0 1-.842-.49L5.99 9.167H4a.5.5 0 0 1-.364-.843l5.333-5.667a.5.5 0 0 1 .616-.09z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 4h4.332l-.94 1H2a1 1 0 0 0-1 1v4a1 1 0 0 0 1 1h2.38l-.308 1H2a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 6h2.45L2.908 7.639A1.5 1.5 0 0 0 3.313 10H2zm8.595-2-.308 1H12a1 1 0 0 1 1 1v4a1 1 0 0 1-1 1H9.276l-.942 1H12a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M12 10h-1.783l1.542-1.639q.146-.156.241-.34zm0-3.354V6h-.646a1.5 1.5 0 0 1 .646.646M16 8a1.5 1.5 0 0 1-1.5 1.5v-3A1.5 1.5 0 0 1 16 8\"},\"child\":[]}]})(props);\n};\nexport function BsBatteryFull (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 6h10v4H2z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 4a2 2 0 0 0-2 2v4a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2zm10 1a1 1 0 0 1 1 1v4a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V6a1 1 0 0 1 1-1zm4 3a1.5 1.5 0 0 1-1.5 1.5v-3A1.5 1.5 0 0 1 16 8\"},\"child\":[]}]})(props);\n};\nexport function BsBatteryHalf (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 6h5v4H2z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 4a2 2 0 0 0-2 2v4a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2zm10 1a1 1 0 0 1 1 1v4a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V6a1 1 0 0 1 1-1zm4 3a1.5 1.5 0 0 1-1.5 1.5v-3A1.5 1.5 0 0 1 16 8\"},\"child\":[]}]})(props);\n};\nexport function BsBattery (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 6a2 2 0 0 1 2-2h10a2 2 0 0 1 2 2v4a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm2-1a1 1 0 0 0-1 1v4a1 1 0 0 0 1 1h10a1 1 0 0 0 1-1V6a1 1 0 0 0-1-1zm14 3a1.5 1.5 0 0 1-1.5 1.5v-3A1.5 1.5 0 0 1 16 8\"},\"child\":[]}]})(props);\n};\nexport function BsBehance (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4.654 3c.461 0 .887.035 1.278.14.39.07.711.216.996.391s.497.426.641.747c.14.32.216.711.216 1.137 0 .496-.106.922-.356 1.242-.215.32-.566.606-.997.817.606.176 1.067.496 1.348.922s.461.957.461 1.563c0 .496-.105.922-.285 1.278a2.3 2.3 0 0 1-.782.887c-.32.215-.711.39-1.137.496a5.3 5.3 0 0 1-1.278.176L0 12.803V3zm-.285 3.978c.39 0 .71-.105.957-.285.246-.18.355-.497.355-.887 0-.216-.035-.426-.105-.567a1 1 0 0 0-.32-.355 1.8 1.8 0 0 0-.461-.176c-.176-.035-.356-.035-.567-.035H2.17v2.31c0-.005 2.2-.005 2.2-.005zm.105 4.193c.215 0 .426-.035.606-.07.176-.035.356-.106.496-.216s.25-.215.356-.39c.07-.176.14-.391.14-.641 0-.496-.14-.852-.426-1.102-.285-.215-.676-.32-1.137-.32H2.17v2.734h2.305zm6.858-.035q.428.427 1.278.426c.39 0 .746-.106 1.032-.286q.426-.32.53-.64h1.74c-.286.851-.712 1.457-1.278 1.848-.566.355-1.243.566-2.06.566a4.1 4.1 0 0 1-1.527-.285 2.8 2.8 0 0 1-1.137-.782 2.85 2.85 0 0 1-.712-1.172c-.175-.461-.25-.957-.25-1.528 0-.531.07-1.032.25-1.493.18-.46.426-.852.747-1.207.32-.32.711-.606 1.137-.782a4 4 0 0 1 1.493-.285c.606 0 1.137.105 1.598.355.46.25.817.532 1.102.958.285.39.496.851.641 1.348.07.496.105.996.07 1.563h-5.15c0 .58.21 1.11.496 1.396m2.24-3.732c-.25-.25-.642-.391-1.103-.391-.32 0-.566.07-.781.176s-.356.25-.496.39a.96.96 0 0 0-.25.497c-.036.175-.07.32-.07.46h3.196c-.07-.526-.25-.882-.497-1.132zm-3.127-3.728h3.978v.957h-3.978z\"},\"child\":[]}]})(props);\n};\nexport function BsBellFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 16a2 2 0 0 0 2-2H6a2 2 0 0 0 2 2m.995-14.901a1 1 0 1 0-1.99 0A5 5 0 0 0 3 6c0 1.098-.5 6-2 7h14c-1.5-1-2-5.902-2-7 0-2.42-1.72-4.44-4.005-4.901\"},\"child\":[]}]})(props);\n};\nexport function BsBellSlashFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5.164 14H15c-1.5-1-2-5.902-2-7q0-.396-.06-.776zm6.288-10.617A5 5 0 0 0 8.995 2.1a1 1 0 1 0-1.99 0A5 5 0 0 0 3 7c0 .898-.335 4.342-1.278 6.113zM10 15a2 2 0 1 1-4 0zm-9.375.625a.53.53 0 0 0 .75.75l14.75-14.75a.53.53 0 0 0-.75-.75z\"},\"child\":[]}]})(props);\n};\nexport function BsBellSlash (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5.164 14H15c-.299-.199-.557-.553-.78-1-.9-1.8-1.22-5.12-1.22-6q0-.396-.06-.776l-.938.938c.02.708.157 2.154.457 3.58.161.767.377 1.566.663 2.258H6.164zm5.581-9.91a4 4 0 0 0-1.948-1.01L8 2.917l-.797.161A4 4 0 0 0 4 7c0 .628-.134 2.197-.459 3.742q-.075.358-.166.718l-1.653 1.653q.03-.055.059-.113C2.679 11.2 3 7.88 3 7c0-2.42 1.72-4.44 4.005-4.901a1 1 0 1 1 1.99 0c.942.19 1.788.645 2.457 1.284zM10 15a2 2 0 1 1-4 0zm-9.375.625a.53.53 0 0 0 .75.75l14.75-14.75a.53.53 0 0 0-.75-.75z\"},\"child\":[]}]})(props);\n};\nexport function BsBell (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 16a2 2 0 0 0 2-2H6a2 2 0 0 0 2 2M8 1.918l-.797.161A4 4 0 0 0 4 6c0 .628-.134 2.197-.459 3.742-.16.767-.376 1.566-.663 2.258h10.244c-.287-.692-.502-1.49-.663-2.258C12.134 8.197 12 6.628 12 6a4 4 0 0 0-3.203-3.92zM14.22 12c.223.447.481.801.78 1H1c.299-.199.557-.553.78-1C2.68 10.2 3 6.88 3 6c0-2.42 1.72-4.44 4.005-4.901a1 1 0 1 1 1.99 0A5 5 0 0 1 13 6c0 .88.32 4.2 1.22 6\"},\"child\":[]}]})(props);\n};\nexport function BsBezier (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M0 10.5A1.5 1.5 0 0 1 1.5 9h1A1.5 1.5 0 0 1 4 10.5v1A1.5 1.5 0 0 1 2.5 13h-1A1.5 1.5 0 0 1 0 11.5zm1.5-.5a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm10.5.5A1.5 1.5 0 0 1 13.5 9h1a1.5 1.5 0 0 1 1.5 1.5v1a1.5 1.5 0 0 1-1.5 1.5h-1a1.5 1.5 0 0 1-1.5-1.5zm1.5-.5a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zM6 4.5A1.5 1.5 0 0 1 7.5 3h1A1.5 1.5 0 0 1 10 4.5v1A1.5 1.5 0 0 1 8.5 7h-1A1.5 1.5 0 0 1 6 5.5zM7.5 4a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M6 4.5H1.866a1 1 0 1 0 0 1h2.668A6.52 6.52 0 0 0 1.814 9H2.5q.186 0 .358.043a5.52 5.52 0 0 1 3.185-3.185A1.5 1.5 0 0 1 6 5.5zm3.957 1.358A1.5 1.5 0 0 0 10 5.5v-1h4.134a1 1 0 1 1 0 1h-2.668a6.52 6.52 0 0 1 2.72 3.5H13.5q-.185 0-.358.043a5.52 5.52 0 0 0-3.185-3.185\"},\"child\":[]}]})(props);\n};\nexport function BsBezier2 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M1 2.5A1.5 1.5 0 0 1 2.5 1h1A1.5 1.5 0 0 1 5 2.5h4.134a1 1 0 1 1 0 1h-2.01q.269.27.484.605C8.246 5.097 8.5 6.459 8.5 8c0 1.993.257 3.092.713 3.7.356.476.895.721 1.787.784A1.5 1.5 0 0 1 12.5 11h1a1.5 1.5 0 0 1 1.5 1.5v1a1.5 1.5 0 0 1-1.5 1.5h-1a1.5 1.5 0 0 1-1.5-1.5H6.866a1 1 0 1 1 0-1h1.711a3 3 0 0 1-.165-.2C7.743 11.407 7.5 10.007 7.5 8c0-1.46-.246-2.597-.733-3.355-.39-.605-.952-1-1.767-1.112A1.5 1.5 0 0 1 3.5 5h-1A1.5 1.5 0 0 1 1 3.5zM2.5 2a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm10 10a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5z\"},\"child\":[]}]})(props);\n};\nexport function BsBicycle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4 4.5a.5.5 0 0 1 .5-.5H6a.5.5 0 0 1 0 1v.5h4.14l.386-1.158A.5.5 0 0 1 11 4h1a.5.5 0 0 1 0 1h-.64l-.311.935.807 1.29a3 3 0 1 1-.848.53l-.508-.812-2.076 3.322A.5.5 0 0 1 8 10.5H5.959a3 3 0 1 1-1.815-3.274L5 5.856V5h-.5a.5.5 0 0 1-.5-.5m1.5 2.443-.508.814c.5.444.85 1.054.967 1.743h1.139zM8 9.057 9.598 6.5H6.402zM4.937 9.5a2 2 0 0 0-.487-.877l-.548.877zM3.603 8.092A2 2 0 1 0 4.937 10.5H3a.5.5 0 0 1-.424-.765zm7.947.53a2 2 0 1 0 .848-.53l1.026 1.643a.5.5 0 1 1-.848.53z\"},\"child\":[]}]})(props);\n};\nexport function BsBing (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.35 5.046a.615.615 0 0 0-.54.575c-.009.13-.006.14.289.899.67 1.727.833 2.142.86 2.2q.101.215.277.395c.089.092.148.141.247.208.176.117.262.15.944.351.664.197 1.026.327 1.338.482.405.201.688.43.866.7.128.195.242.544.291.896.02.137.02.44 0 .564-.041.27-.124.495-.252.684-.067.1-.044.084.055-.039.278-.346.562-.938.707-1.475a4.42 4.42 0 0 0-2.14-5.028 70 70 0 0 0-.888-.465l-.53-.277-.353-.184c-.16-.082-.266-.138-.345-.18-.368-.192-.523-.27-.568-.283a1 1 0 0 0-.194-.03z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M9.152 11.493a3 3 0 0 0-.135.083 320 320 0 0 0-1.513.934l-.8.496c-.012.01-.587.367-.876.543a1.9 1.9 0 0 1-.732.257c-.12.017-.349.017-.47 0a1.9 1.9 0 0 1-.884-.358 2.5 2.5 0 0 1-.365-.364 1.9 1.9 0 0 1-.34-.76 1 1 0 0 0-.027-.121c-.005-.006.004.092.022.22.018.132.057.324.098.489a4.1 4.1 0 0 0 2.487 2.796c.359.142.72.23 1.114.275.147.016.566.023.72.011a4.1 4.1 0 0 0 1.956-.661l.235-.149.394-.248.258-.163 1.164-.736c.51-.32.663-.433.9-.665.099-.097.248-.262.255-.283.002-.005.028-.046.059-.091a1.64 1.64 0 0 0 .25-.682c.02-.124.02-.427 0-.565a3 3 0 0 0-.213-.758c-.15-.314-.47-.6-.928-.83a2 2 0 0 0-.273-.12c-.006 0-.433.26-.948.58l-1.113.687z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m3.004 12.184.03.129c.089.402.245.693.515.963a1.82 1.82 0 0 0 1.312.543c.361 0 .673-.09.994-.287l.472-.29.373-.23V5.334c0-1.537-.003-2.45-.008-2.521a1.82 1.82 0 0 0-.535-1.177c-.097-.096-.18-.16-.427-.33L4.183.24c-.239-.163-.258-.175-.33-.2a.63.63 0 0 0-.842.464c-.009.042-.01.603-.01 3.646l.003 8.035Z\"},\"child\":[]}]})(props);\n};\nexport function BsBinocularsFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4.5 1A1.5 1.5 0 0 0 3 2.5V3h4v-.5A1.5 1.5 0 0 0 5.5 1zM7 4v1h2V4h4v.882a.5.5 0 0 0 .276.447l.895.447A1.5 1.5 0 0 1 15 7.118V13H9v-1.5a.5.5 0 0 1 .146-.354l.854-.853V9.5a.5.5 0 0 0-.5-.5h-3a.5.5 0 0 0-.5.5v.793l.854.853A.5.5 0 0 1 7 11.5V13H1V7.118a1.5 1.5 0 0 1 .83-1.342l.894-.447A.5.5 0 0 0 3 4.882V4zM1 14v.5A1.5 1.5 0 0 0 2.5 16h3A1.5 1.5 0 0 0 7 14.5V14zm8 0v.5a1.5 1.5 0 0 0 1.5 1.5h3a1.5 1.5 0 0 0 1.5-1.5V14zm4-11H9v-.5A1.5 1.5 0 0 1 10.5 1h1A1.5 1.5 0 0 1 13 2.5z\"},\"child\":[]}]})(props);\n};\nexport function BsBinoculars (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3 2.5A1.5 1.5 0 0 1 4.5 1h1A1.5 1.5 0 0 1 7 2.5V5h2V2.5A1.5 1.5 0 0 1 10.5 1h1A1.5 1.5 0 0 1 13 2.5v2.382a.5.5 0 0 0 .276.447l.895.447A1.5 1.5 0 0 1 15 7.118V14.5a1.5 1.5 0 0 1-1.5 1.5h-3A1.5 1.5 0 0 1 9 14.5v-3a.5.5 0 0 1 .146-.354l.854-.853V9.5a.5.5 0 0 0-.5-.5h-3a.5.5 0 0 0-.5.5v.793l.854.853A.5.5 0 0 1 7 11.5v3A1.5 1.5 0 0 1 5.5 16h-3A1.5 1.5 0 0 1 1 14.5V7.118a1.5 1.5 0 0 1 .83-1.342l.894-.447A.5.5 0 0 0 3 4.882zM4.5 2a.5.5 0 0 0-.5.5V3h2v-.5a.5.5 0 0 0-.5-.5zM6 4H4v.882a1.5 1.5 0 0 1-.83 1.342l-.894.447A.5.5 0 0 0 2 7.118V13h4v-1.293l-.854-.853A.5.5 0 0 1 5 10.5v-1A1.5 1.5 0 0 1 6.5 8h3A1.5 1.5 0 0 1 11 9.5v1a.5.5 0 0 1-.146.354l-.854.853V13h4V7.118a.5.5 0 0 0-.276-.447l-.895-.447A1.5 1.5 0 0 1 12 4.882V4h-2v1.5a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5zm4-1h2v-.5a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5zm4 11h-4v.5a.5.5 0 0 0 .5.5h3a.5.5 0 0 0 .5-.5zm-8 0H2v.5a.5.5 0 0 0 .5.5h3a.5.5 0 0 0 .5-.5z\"},\"child\":[]}]})(props);\n};\nexport function BsBlockquoteLeft (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2.5 3a.5.5 0 0 0 0 1h11a.5.5 0 0 0 0-1zm5 3a.5.5 0 0 0 0 1h6a.5.5 0 0 0 0-1zm0 3a.5.5 0 0 0 0 1h6a.5.5 0 0 0 0-1zm-5 3a.5.5 0 0 0 0 1h11a.5.5 0 0 0 0-1zm.79-5.373q.168-.117.444-.275L3.524 6q-.183.111-.452.287-.27.176-.51.428a2.4 2.4 0 0 0-.398.562Q2 7.587 2 7.969q0 .54.217.873.217.328.72.328.322 0 .504-.211a.7.7 0 0 0 .188-.463q0-.345-.211-.521-.205-.182-.568-.182h-.282q.036-.305.123-.498a1.4 1.4 0 0 1 .252-.37 2 2 0 0 1 .346-.298zm2.167 0q.17-.117.445-.275L5.692 6q-.183.111-.452.287-.27.176-.51.428a2.4 2.4 0 0 0-.398.562q-.165.31-.164.692 0 .54.217.873.217.328.72.328.322 0 .504-.211a.7.7 0 0 0 .188-.463q0-.345-.211-.521-.205-.182-.568-.182h-.282a1.8 1.8 0 0 1 .118-.492q.087-.194.257-.375a2 2 0 0 1 .346-.3z\"},\"child\":[]}]})(props);\n};\nexport function BsBlockquoteRight (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2.5 3a.5.5 0 0 0 0 1h11a.5.5 0 0 0 0-1zm0 3a.5.5 0 0 0 0 1h6a.5.5 0 0 0 0-1zm0 3a.5.5 0 0 0 0 1h6a.5.5 0 0 0 0-1zm0 3a.5.5 0 0 0 0 1h11a.5.5 0 0 0 0-1zm10.113-5.373a7 7 0 0 0-.445-.275l.21-.352q.183.111.452.287.27.176.51.428.234.246.398.562.164.31.164.692 0 .54-.216.873-.217.328-.721.328-.322 0-.504-.211a.7.7 0 0 1-.188-.463q0-.345.211-.521.205-.182.569-.182h.281a1.7 1.7 0 0 0-.123-.498 1.4 1.4 0 0 0-.252-.37 2 2 0 0 0-.346-.298m-2.168 0A7 7 0 0 0 10 6.352L10.21 6q.183.111.452.287.27.176.51.428.234.246.398.562.164.31.164.692 0 .54-.216.873-.217.328-.721.328-.322 0-.504-.211a.7.7 0 0 1-.188-.463q0-.345.211-.521.206-.182.569-.182h.281a1.8 1.8 0 0 0-.117-.492 1.4 1.4 0 0 0-.258-.375 2 2 0 0 0-.346-.3z\"},\"child\":[]}]})(props);\n};\nexport function BsBluetooth (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"m8.543 3.948 1.316 1.316L8.543 6.58zm0 8.104 1.316-1.316L8.543 9.42zm-1.41-4.043L4.275 5.133l.827-.827L7.377 6.58V1.128l4.137 4.136L8.787 8.01l2.745 2.745-4.136 4.137V9.42l-2.294 2.274-.827-.827zM7.903 16c3.498 0 5.904-1.655 5.904-8.01 0-6.335-2.406-7.99-5.903-7.99S2 1.655 2 8.01C2 14.344 4.407 16 7.904 16Z\"},\"child\":[]}]})(props);\n};\nexport function BsBodyText (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M0 .5A.5.5 0 0 1 .5 0h4a.5.5 0 0 1 0 1h-4A.5.5 0 0 1 0 .5m0 2A.5.5 0 0 1 .5 2h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5m9 0a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5m-9 2A.5.5 0 0 1 .5 4h3a.5.5 0 0 1 0 1h-3a.5.5 0 0 1-.5-.5m5 0a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5m7 0a.5.5 0 0 1 .5-.5h3a.5.5 0 0 1 0 1h-3a.5.5 0 0 1-.5-.5m-12 2A.5.5 0 0 1 .5 6h6a.5.5 0 0 1 0 1h-6a.5.5 0 0 1-.5-.5m8 0a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5m-8 2A.5.5 0 0 1 .5 8h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5m7 0a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5m-7 2a.5.5 0 0 1 .5-.5h8a.5.5 0 0 1 0 1h-8a.5.5 0 0 1-.5-.5m0 2a.5.5 0 0 1 .5-.5h4a.5.5 0 0 1 0 1h-4a.5.5 0 0 1-.5-.5m0 2a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsBookFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 1.783C7.015.936 5.587.81 4.287.94c-1.514.153-3.042.672-3.994 1.105A.5.5 0 0 0 0 2.5v11a.5.5 0 0 0 .707.455c.882-.4 2.303-.881 3.68-1.02 1.409-.142 2.59.087 3.223.877a.5.5 0 0 0 .78 0c.633-.79 1.814-1.019 3.222-.877 1.378.139 2.8.62 3.681 1.02A.5.5 0 0 0 16 13.5v-11a.5.5 0 0 0-.293-.455c-.952-.433-2.48-.952-3.994-1.105C10.413.809 8.985.936 8 1.783\"},\"child\":[]}]})(props);\n};\nexport function BsBookHalf (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.5 2.687c.654-.689 1.782-.886 3.112-.752 1.234.124 2.503.523 3.388.893v9.923c-.918-.35-2.107-.692-3.287-.81-1.094-.111-2.278-.039-3.213.492zM8 1.783C7.015.936 5.587.81 4.287.94c-1.514.153-3.042.672-3.994 1.105A.5.5 0 0 0 0 2.5v11a.5.5 0 0 0 .707.455c.882-.4 2.303-.881 3.68-1.02 1.409-.142 2.59.087 3.223.877a.5.5 0 0 0 .78 0c.633-.79 1.814-1.019 3.222-.877 1.378.139 2.8.62 3.681 1.02A.5.5 0 0 0 16 13.5v-11a.5.5 0 0 0-.293-.455c-.952-.433-2.48-.952-3.994-1.105C10.413.809 8.985.936 8 1.783\"},\"child\":[]}]})(props);\n};\nexport function BsBook (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M1 2.828c.885-.37 2.154-.769 3.388-.893 1.33-.134 2.458.063 3.112.752v9.746c-.935-.53-2.12-.603-3.213-.493-1.18.12-2.37.461-3.287.811zm7.5-.141c.654-.689 1.782-.886 3.112-.752 1.234.124 2.503.523 3.388.893v9.923c-.918-.35-2.107-.692-3.287-.81-1.094-.111-2.278-.039-3.213.492zM8 1.783C7.015.936 5.587.81 4.287.94c-1.514.153-3.042.672-3.994 1.105A.5.5 0 0 0 0 2.5v11a.5.5 0 0 0 .707.455c.882-.4 2.303-.881 3.68-1.02 1.409-.142 2.59.087 3.223.877a.5.5 0 0 0 .78 0c.633-.79 1.814-1.019 3.222-.877 1.378.139 2.8.62 3.681 1.02A.5.5 0 0 0 16 13.5v-11a.5.5 0 0 0-.293-.455c-.952-.433-2.48-.952-3.994-1.105C10.413.809 8.985.936 8 1.783\"},\"child\":[]}]})(props);\n};\nexport function BsBookmarkCheckFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M2 15.5V2a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v13.5a.5.5 0 0 1-.74.439L8 13.069l-5.26 2.87A.5.5 0 0 1 2 15.5m8.854-9.646a.5.5 0 0 0-.708-.708L7.5 7.793 6.354 6.646a.5.5 0 1 0-.708.708l1.5 1.5a.5.5 0 0 0 .708 0z\"},\"child\":[]}]})(props);\n};\nexport function BsBookmarkCheck (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M10.854 5.146a.5.5 0 0 1 0 .708l-3 3a.5.5 0 0 1-.708 0l-1.5-1.5a.5.5 0 1 1 .708-.708L7.5 7.793l2.646-2.647a.5.5 0 0 1 .708 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 2a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v13.5a.5.5 0 0 1-.777.416L8 13.101l-5.223 2.815A.5.5 0 0 1 2 15.5zm2-1a1 1 0 0 0-1 1v12.566l4.723-2.482a.5.5 0 0 1 .554 0L13 14.566V2a1 1 0 0 0-1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsBookmarkDashFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M2 15.5V2a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v13.5a.5.5 0 0 1-.74.439L8 13.069l-5.26 2.87A.5.5 0 0 1 2 15.5M6 6a.5.5 0 0 0 0 1h4a.5.5 0 0 0 0-1z\"},\"child\":[]}]})(props);\n};\nexport function BsBookmarkDash (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M5.5 6.5A.5.5 0 0 1 6 6h4a.5.5 0 0 1 0 1H6a.5.5 0 0 1-.5-.5\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 2a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v13.5a.5.5 0 0 1-.777.416L8 13.101l-5.223 2.815A.5.5 0 0 1 2 15.5zm2-1a1 1 0 0 0-1 1v12.566l4.723-2.482a.5.5 0 0 1 .554 0L13 14.566V2a1 1 0 0 0-1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsBookmarkFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 2v13.5a.5.5 0 0 0 .74.439L8 13.069l5.26 2.87A.5.5 0 0 0 14 15.5V2a2 2 0 0 0-2-2H4a2 2 0 0 0-2 2\"},\"child\":[]}]})(props);\n};\nexport function BsBookmarkHeartFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 15.5a.5.5 0 0 0 .74.439L8 13.069l5.26 2.87A.5.5 0 0 0 14 15.5V2a2 2 0 0 0-2-2H4a2 2 0 0 0-2 2zM8 4.41c1.387-1.425 4.854 1.07 0 4.277C3.146 5.48 6.613 2.986 8 4.412z\"},\"child\":[]}]})(props);\n};\nexport function BsBookmarkHeart (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M8 4.41c1.387-1.425 4.854 1.07 0 4.277C3.146 5.48 6.613 2.986 8 4.412z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 2a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v13.5a.5.5 0 0 1-.777.416L8 13.101l-5.223 2.815A.5.5 0 0 1 2 15.5zm2-1a1 1 0 0 0-1 1v12.566l4.723-2.482a.5.5 0 0 1 .554 0L13 14.566V2a1 1 0 0 0-1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsBookmarkPlusFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M2 15.5V2a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v13.5a.5.5 0 0 1-.74.439L8 13.069l-5.26 2.87A.5.5 0 0 1 2 15.5m6.5-11a.5.5 0 0 0-1 0V6H6a.5.5 0 0 0 0 1h1.5v1.5a.5.5 0 0 0 1 0V7H10a.5.5 0 0 0 0-1H8.5z\"},\"child\":[]}]})(props);\n};\nexport function BsBookmarkPlus (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 2a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v13.5a.5.5 0 0 1-.777.416L8 13.101l-5.223 2.815A.5.5 0 0 1 2 15.5zm2-1a1 1 0 0 0-1 1v12.566l4.723-2.482a.5.5 0 0 1 .554 0L13 14.566V2a1 1 0 0 0-1-1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8 4a.5.5 0 0 1 .5.5V6H10a.5.5 0 0 1 0 1H8.5v1.5a.5.5 0 0 1-1 0V7H6a.5.5 0 0 1 0-1h1.5V4.5A.5.5 0 0 1 8 4\"},\"child\":[]}]})(props);\n};\nexport function BsBookmarkStarFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M2 15.5V2a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v13.5a.5.5 0 0 1-.74.439L8 13.069l-5.26 2.87A.5.5 0 0 1 2 15.5M8.16 4.1a.178.178 0 0 0-.32 0l-.634 1.285a.18.18 0 0 1-.134.098l-1.42.206a.178.178 0 0 0-.098.303L6.58 6.993c.042.041.061.1.051.158L6.39 8.565a.178.178 0 0 0 .258.187l1.27-.668a.18.18 0 0 1 .165 0l1.27.668a.178.178 0 0 0 .257-.187L9.368 7.15a.18.18 0 0 1 .05-.158l1.028-1.001a.178.178 0 0 0-.098-.303l-1.42-.206a.18.18 0 0 1-.134-.098z\"},\"child\":[]}]})(props);\n};\nexport function BsBookmarkStar (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.84 4.1a.178.178 0 0 1 .32 0l.634 1.285a.18.18 0 0 0 .134.098l1.42.206c.145.021.204.2.098.303L9.42 6.993a.18.18 0 0 0-.051.158l.242 1.414a.178.178 0 0 1-.258.187l-1.27-.668a.18.18 0 0 0-.165 0l-1.27.668a.178.178 0 0 1-.257-.187l.242-1.414a.18.18 0 0 0-.05-.158l-1.03-1.001a.178.178 0 0 1 .098-.303l1.42-.206a.18.18 0 0 0 .134-.098z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 2a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v13.5a.5.5 0 0 1-.777.416L8 13.101l-5.223 2.815A.5.5 0 0 1 2 15.5zm2-1a1 1 0 0 0-1 1v12.566l4.723-2.482a.5.5 0 0 1 .554 0L13 14.566V2a1 1 0 0 0-1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsBookmarkXFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M2 15.5V2a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v13.5a.5.5 0 0 1-.74.439L8 13.069l-5.26 2.87A.5.5 0 0 1 2 15.5M6.854 5.146a.5.5 0 1 0-.708.708L7.293 7 6.146 8.146a.5.5 0 1 0 .708.708L8 7.707l1.146 1.147a.5.5 0 1 0 .708-.708L8.707 7l1.147-1.146a.5.5 0 0 0-.708-.708L8 6.293z\"},\"child\":[]}]})(props);\n};\nexport function BsBookmarkX (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M6.146 5.146a.5.5 0 0 1 .708 0L8 6.293l1.146-1.147a.5.5 0 1 1 .708.708L8.707 7l1.147 1.146a.5.5 0 0 1-.708.708L8 7.707 6.854 8.854a.5.5 0 1 1-.708-.708L7.293 7 6.146 5.854a.5.5 0 0 1 0-.708\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 2a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v13.5a.5.5 0 0 1-.777.416L8 13.101l-5.223 2.815A.5.5 0 0 1 2 15.5zm2-1a1 1 0 0 0-1 1v12.566l4.723-2.482a.5.5 0 0 1 .554 0L13 14.566V2a1 1 0 0 0-1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsBookmark (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 2a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v13.5a.5.5 0 0 1-.777.416L8 13.101l-5.223 2.815A.5.5 0 0 1 2 15.5zm2-1a1 1 0 0 0-1 1v12.566l4.723-2.482a.5.5 0 0 1 .554 0L13 14.566V2a1 1 0 0 0-1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsBookmarksFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 4a2 2 0 0 1 2-2h6a2 2 0 0 1 2 2v11.5a.5.5 0 0 1-.777.416L7 13.101l-4.223 2.815A.5.5 0 0 1 2 15.5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4.268 1A2 2 0 0 1 6 0h6a2 2 0 0 1 2 2v11.5a.5.5 0 0 1-.777.416L13 13.768V2a1 1 0 0 0-1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsBookmarks (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 4a2 2 0 0 1 2-2h6a2 2 0 0 1 2 2v11.5a.5.5 0 0 1-.777.416L7 13.101l-4.223 2.815A.5.5 0 0 1 2 15.5zm2-1a1 1 0 0 0-1 1v10.566l3.723-2.482a.5.5 0 0 1 .554 0L11 14.566V4a1 1 0 0 0-1-1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4.268 1H12a1 1 0 0 1 1 1v11.768l.223.148A.5.5 0 0 0 14 13.5V2a2 2 0 0 0-2-2H6a2 2 0 0 0-1.732 1\"},\"child\":[]}]})(props);\n};\nexport function BsBookshelf (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2.5 0a.5.5 0 0 1 .5.5V2h10V.5a.5.5 0 0 1 1 0v15a.5.5 0 0 1-1 0V15H3v.5a.5.5 0 0 1-1 0V.5a.5.5 0 0 1 .5-.5M3 14h10v-3H3zm0-4h10V7H3zm0-4h10V3H3z\"},\"child\":[]}]})(props);\n};\nexport function BsBoomboxFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M14 0a.5.5 0 0 1 .5.5V2h.5a1 1 0 0 1 1 1v2H0V3a1 1 0 0 1 1-1h12.5V.5A.5.5 0 0 1 14 0M2 3.5a.5.5 0 1 0 1 0 .5.5 0 0 0-1 0m2 0a.5.5 0 1 0 1 0 .5.5 0 0 0-1 0m7.5.5a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1m1.5-.5a.5.5 0 1 0 1 0 .5.5 0 0 0-1 0M9.5 3h-3a.5.5 0 0 0 0 1h3a.5.5 0 0 0 0-1M6 10.5a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0m-1.5.5a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1m7 1a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3m.5-1.5a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M0 6h16v8a1 1 0 0 1-1 1H1a1 1 0 0 1-1-1zm2 4.5a2.5 2.5 0 1 0 5 0 2.5 2.5 0 0 0-5 0m7 0a2.5 2.5 0 1 0 5 0 2.5 2.5 0 0 0-5 0\"},\"child\":[]}]})(props);\n};\nexport function BsBoombox (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2.5 5a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1m2 0a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1m7.5-.5a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0m1.5.5a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1m-7-1a.5.5 0 0 0 0 1h3a.5.5 0 0 0 0-1zm5.5 6.5a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M11.5 13a2.5 2.5 0 1 0 0-5 2.5 2.5 0 0 0 0 5m0-1a1.5 1.5 0 1 1 0-3 1.5 1.5 0 0 1 0 3M5 10.5a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M7 10.5a2.5 2.5 0 1 1-5 0 2.5 2.5 0 0 1 5 0m-1 0a1.5 1.5 0 1 0-3 0 1.5 1.5 0 0 0 3 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M14 0a.5.5 0 0 1 .5.5V2h.5a1 1 0 0 1 1 1v11a1 1 0 0 1-1 1H1a1 1 0 0 1-1-1V3a1 1 0 0 1 1-1h12.5V.5A.5.5 0 0 1 14 0M1 3v3h14V3zm14 4H1v7h14z\"},\"child\":[]}]})(props);\n};\nexport function BsBootstrapFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.375 7.125V4.658h1.78c.973 0 1.542.457 1.542 1.237 0 .802-.604 1.23-1.764 1.23zm0 3.762h1.898c1.184 0 1.81-.48 1.81-1.377 0-.885-.65-1.348-1.886-1.348H6.375z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4.002 0a4 4 0 0 0-4 4v8a4 4 0 0 0 4 4h8a4 4 0 0 0 4-4V4a4 4 0 0 0-4-4zm1.06 12V3.545h3.399c1.587 0 2.543.809 2.543 2.11 0 .884-.65 1.675-1.483 1.816v.1c1.143.117 1.904.931 1.904 2.033 0 1.488-1.084 2.396-2.888 2.396z\"},\"child\":[]}]})(props);\n};\nexport function BsBootstrapReboot (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M1.161 8a6.84 6.84 0 1 0 6.842-6.84.58.58 0 1 1 0-1.16 8 8 0 1 1-6.556 3.412l-.663-.577a.58.58 0 0 1 .227-.997l2.52-.69a.58.58 0 0 1 .728.633l-.332 2.592a.58.58 0 0 1-.956.364l-.643-.56A6.8 6.8 0 0 0 1.16 8z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M6.641 11.671V8.843h1.57l1.498 2.828h1.314L9.377 8.665c.897-.3 1.427-1.106 1.427-2.1 0-1.37-.943-2.246-2.456-2.246H5.5v7.352zm0-3.75V5.277h1.57c.881 0 1.416.499 1.416 1.32 0 .84-.504 1.324-1.386 1.324z\"},\"child\":[]}]})(props);\n};\nexport function BsBootstrap (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5.062 12h3.475c1.804 0 2.888-.908 2.888-2.396 0-1.102-.761-1.916-1.904-2.034v-.1c.832-.14 1.482-.93 1.482-1.816 0-1.3-.955-2.11-2.542-2.11H5.062zm1.313-4.875V4.658h1.78c.973 0 1.542.457 1.542 1.237 0 .802-.604 1.23-1.764 1.23zm0 3.762V8.162h1.822c1.236 0 1.887.463 1.887 1.348 0 .896-.627 1.377-1.811 1.377z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M0 4a4 4 0 0 1 4-4h8a4 4 0 0 1 4 4v8a4 4 0 0 1-4 4H4a4 4 0 0 1-4-4zm4-3a3 3 0 0 0-3 3v8a3 3 0 0 0 3 3h8a3 3 0 0 0 3-3V4a3 3 0 0 0-3-3z\"},\"child\":[]}]})(props);\n};\nexport function BsBorderAll (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 0h16v16H0zm1 1v6.5h6.5V1zm7.5 0v6.5H15V1zM15 8.5H8.5V15H15zM7.5 15V8.5H1V15z\"},\"child\":[]}]})(props);\n};\nexport function BsBorderBottom (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M.969 0H0v.969h.5V1h.469V.969H1V.5H.969zm.937 1h.938V0h-.938zm1.875 0h.938V0H3.78v1zm1.875 0h.938V0h-.938zM7.531.969V1h.938V.969H8.5V.5h-.031V0H7.53v.5H7.5v.469zM9.406 1h.938V0h-.938zm1.875 0h.938V0h-.938zm1.875 0h.938V0h-.938zm1.875 0h.469V.969h.5V0h-.969v.5H15v.469h.031zM1 2.844v-.938H0v.938zm6.5-.938v.938h1v-.938zm7.5 0v.938h1v-.938zM1 4.719V3.78H0v.938h1zm6.5-.938v.938h1V3.78h-1zm7.5 0v.938h1V3.78h-1zM1 6.594v-.938H0v.938zm6.5-.938v.938h1v-.938zm7.5 0v.938h1v-.938zM.5 8.5h.469v-.031H1V7.53H.969V7.5H.5v.031H0v.938h.5zm1.406 0h.938v-1h-.938zm1.875 0h.938v-1H3.78v1zm1.875 0h.938v-1h-.938zm2.813 0v-.031H8.5V7.53h-.031V7.5H7.53v.031H7.5v.938h.031V8.5zm.937 0h.938v-1h-.938zm1.875 0h.938v-1h-.938zm1.875 0h.938v-1h-.938zm1.875 0h.469v-.031h.5V7.53h-.5V7.5h-.469v.031H15v.938h.031zM0 9.406v.938h1v-.938zm7.5 0v.938h1v-.938zm8.5.938v-.938h-1v.938zm-16 .937v.938h1v-.938zm7.5 0v.938h1v-.938zm8.5.938v-.938h-1v.938zm-16 .937v.938h1v-.938zm7.5 0v.938h1v-.938zm8.5.938v-.938h-1v.938zM0 15h16v1H0z\"},\"child\":[]}]})(props);\n};\nexport function BsBorderCenter (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M.969 0H0v.969h.5V1h.469V.969H1V.5H.969zm.937 1h.938V0h-.938zm1.875 0h.938V0H3.78v1zm1.875 0h.938V0h-.938zM7.531.969V1h.938V.969H8.5V.5h-.031V0H7.53v.5H7.5v.469zM9.406 1h.938V0h-.938zm1.875 0h.938V0h-.938zm1.875 0h.938V0h-.938zm1.875 0h.469V.969h.5V0h-.969v.5H15v.469h.031zM1 2.844v-.938H0v.938zm6.5-.938v.938h1v-.938zm7.5 0v.938h1v-.938zM1 4.719V3.78H0v.938h1zm6.5-.938v.938h1V3.78h-1zm7.5 0v.938h1V3.78h-1zM1 6.594v-.938H0v.938zm6.5-.938v.938h1v-.938zm7.5 0v.938h1v-.938zM0 8.5v-1h16v1zm0 .906v.938h1v-.938zm7.5 0v.938h1v-.938zm8.5.938v-.938h-1v.938zm-16 .937v.938h1v-.938zm7.5 0v.938h1v-.938zm8.5.938v-.938h-1v.938zm-16 .937v.938h1v-.938zm7.5 0v.938h1v-.938zm8.5.938v-.938h-1v.938zM0 16h.969v-.5H1v-.469H.969V15H.5v.031H0zm1.906 0h.938v-1h-.938zm1.875 0h.938v-1H3.78v1zm1.875 0h.938v-1h-.938zm1.875-.5v.5h.938v-.5H8.5v-.469h-.031V15H7.53v.031H7.5v.469zm1.875.5h.938v-1h-.938zm1.875 0h.938v-1h-.938zm1.875 0h.938v-1h-.938zm1.875-.5v.5H16v-.969h-.5V15h-.469v.031H15v.469z\"},\"child\":[]}]})(props);\n};\nexport function BsBorderInner (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M.969 0H0v.969h.5V1h.469V.969H1V.5H.969zm.937 1h.938V0h-.938zm1.875 0h.938V0H3.78v1zm1.875 0h.938V0h-.938z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8.5 7.5H16v1H8.5V16h-1V8.5H0v-1h7.5V0h1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M9.406 1h.938V0h-.938zm1.875 0h.938V0h-.938zm1.875 0h.938V0h-.938zm1.875 0h.469V.969h.5V0h-.969v.5H15v.469h.031zM1 2.844v-.938H0v.938zm14-.938v.938h1v-.938zM1 4.719V3.78H0v.938h1zm14-.938v.938h1V3.78h-1zM1 6.594v-.938H0v.938zm14-.938v.938h1v-.938zM0 9.406v.938h1v-.938zm16 .938v-.938h-1v.938zm-16 .937v.938h1v-.938zm16 .938v-.938h-1v.938zm-16 .937v.938h1v-.938zm16 .938v-.938h-1v.938zM0 16h.969v-.5H1v-.469H.969V15H.5v.031H0zm1.906 0h.938v-1h-.938zm1.875 0h.938v-1H3.78v1zm1.875 0h.938v-1h-.938zm3.75 0h.938v-1h-.938zm1.875 0h.938v-1h-.938zm1.875 0h.938v-1h-.938zm1.875-.5v.5H16v-.969h-.5V15h-.469v.031H15v.469z\"},\"child\":[]}]})(props);\n};\nexport function BsBorderLeft (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 0v16h1V0zm1.906 1h.938V0h-.938zm1.875 0h.938V0H3.78v1zm1.875 0h.938V0h-.938zM7.531.969V1h.938V.969H8.5V.5h-.031V0H7.53v.5H7.5v.469zM9.406 1h.938V0h-.938zm1.875 0h.938V0h-.938zm1.875 0h.938V0h-.938zm1.875 0h.469V.969h.5V0h-.969v.5H15v.469h.031zM7.5 1.906v.938h1v-.938zm7.5 0v.938h1v-.938zM7.5 3.781v.938h1V3.78h-1zm7.5 0v.938h1V3.78h-1zM7.5 5.656v.938h1v-.938zm7.5 0v.938h1v-.938zM1.906 8.5h.938v-1h-.938zm1.875 0h.938v-1H3.78v1zm1.875 0h.938v-1h-.938zm2.813 0v-.031H8.5V7.53h-.031V7.5H7.53v.031H7.5v.938h.031V8.5zm.937 0h.938v-1h-.938zm1.875 0h.938v-1h-.938zm1.875 0h.938v-1h-.938zm1.875 0h.469v-.031h.5V7.53h-.5V7.5h-.469v.031H15v.938h.031zM7.5 9.406v.938h1v-.938zm8.5.938v-.938h-1v.938zm-8.5.937v.938h1v-.938zm8.5.938v-.938h-1v.938zm-8.5.937v.938h1v-.938zm8.5.938v-.938h-1v.938zM1.906 16h.938v-1h-.938zm1.875 0h.938v-1H3.78v1zm1.875 0h.938v-1h-.938zm1.875-.5v.5h.938v-.5H8.5v-.469h-.031V15H7.53v.031H7.5v.469zm1.875.5h.938v-1h-.938zm1.875 0h.938v-1h-.938zm1.875 0h.938v-1h-.938zm1.875-.5v.5H16v-.969h-.5V15h-.469v.031H15v.469z\"},\"child\":[]}]})(props);\n};\nexport function BsBorderMiddle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M.969 0H0v.969h.5V1h.469V.969H1V.5H.969zm.937 1h.938V0h-.938zm1.875 0h.938V0H3.78v1zm1.875 0h.938V0h-.938zM8.5 16h-1V0h1zm.906-15h.938V0h-.938zm1.875 0h.938V0h-.938zm1.875 0h.938V0h-.938zm1.875 0h.469V.969h.5V0h-.969v.5H15v.469h.031zM1 2.844v-.938H0v.938zm14-.938v.938h1v-.938zM1 4.719V3.78H0v.938h1zm14-.938v.938h1V3.78h-1zM1 6.594v-.938H0v.938zm14-.938v.938h1v-.938zM.5 8.5h.469v-.031H1V7.53H.969V7.5H.5v.031H0v.938h.5zm1.406 0h.938v-1h-.938zm1.875 0h.938v-1H3.78v1zm1.875 0h.938v-1h-.938zm3.75 0h.938v-1h-.938zm1.875 0h.938v-1h-.938zm1.875 0h.938v-1h-.938zm1.875 0h.469v-.031h.5V7.53h-.5V7.5h-.469v.031H15v.938h.031zM0 9.406v.938h1v-.938zm16 .938v-.938h-1v.938zm-16 .937v.938h1v-.938zm16 .938v-.938h-1v.938zm-16 .937v.938h1v-.938zm16 .938v-.938h-1v.938zM0 16h.969v-.5H1v-.469H.969V15H.5v.031H0zm1.906 0h.938v-1h-.938zm1.875 0h.938v-1H3.78v1zm1.875 0h.938v-1h-.938zm3.75 0h.938v-1h-.938zm1.875 0h.938v-1h-.938zm1.875 0h.938v-1h-.938zm1.875-.5v.5H16v-.969h-.5V15h-.469v.031H15v.469z\"},\"child\":[]}]})(props);\n};\nexport function BsBorderOuter (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.5 1.906v.938h1v-.938zm0 1.875v.938h1V3.78h-1zm0 1.875v.938h1v-.938zM1.906 8.5h.938v-1h-.938zm1.875 0h.938v-1H3.78v1zm1.875 0h.938v-1h-.938zm2.813 0v-.031H8.5V7.53h-.031V7.5H7.53v.031H7.5v.938h.031V8.5zm.937 0h.938v-1h-.938zm1.875 0h.938v-1h-.938zm1.875 0h.938v-1h-.938zM7.5 9.406v.938h1v-.938zm0 1.875v.938h1v-.938zm0 1.875v.938h1v-.938z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M0 0v16h16V0zm1 1h14v14H1z\"},\"child\":[]}]})(props);\n};\nexport function BsBorderRight (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M.969 0H0v.969h.5V1h.469V.969H1V.5H.969zm.937 1h.938V0h-.938zm1.875 0h.938V0H3.78v1zm1.875 0h.938V0h-.938zM7.531.969V1h.938V.969H8.5V.5h-.031V0H7.53v.5H7.5v.469zM9.406 1h.938V0h-.938zm1.875 0h.938V0h-.938zm1.875 0h.938V0h-.938zM16 0h-1v16h1zM1 2.844v-.938H0v.938zm6.5-.938v.938h1v-.938zM1 4.719V3.78H0v.938h1zm6.5-.938v.938h1V3.78h-1zM1 6.594v-.938H0v.938zm6.5-.938v.938h1v-.938zM.5 8.5h.469v-.031H1V7.53H.969V7.5H.5v.031H0v.938h.5zm1.406 0h.938v-1h-.938zm1.875 0h.938v-1H3.78v1zm1.875 0h.938v-1h-.938zm2.813 0v-.031H8.5V7.53h-.031V7.5H7.53v.031H7.5v.938h.031V8.5zm.937 0h.938v-1h-.938zm1.875 0h.938v-1h-.938zm1.875 0h.938v-1h-.938zM0 9.406v.938h1v-.938zm7.5 0v.938h1v-.938zM0 11.281v.938h1v-.938zm7.5 0v.938h1v-.938zM0 13.156v.938h1v-.938zm7.5 0v.938h1v-.938zM0 16h.969v-.5H1v-.469H.969V15H.5v.031H0zm1.906 0h.938v-1h-.938zm1.875 0h.938v-1H3.78v1zm1.875 0h.938v-1h-.938zm1.875-.5v.5h.938v-.5H8.5v-.469h-.031V15H7.53v.031H7.5v.469zm1.875.5h.938v-1h-.938zm1.875 0h.938v-1h-.938zm1.875 0h.938v-1h-.938z\"},\"child\":[]}]})(props);\n};\nexport function BsBorderStyle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M1 3.5a.5.5 0 0 1 .5-.5h13a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-13a.5.5 0 0 1-.5-.5zm0 4a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-5a.5.5 0 0 1-.5-.5zm0 4a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5zm8 0a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5zm-4 0a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5zm8 0a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5zm-4-4a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-5a.5.5 0 0 1-.5-.5z\"},\"child\":[]}]})(props);\n};\nexport function BsBorderTop (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 0v1h16V0zm1 2.844v-.938H0v.938zm6.5-.938v.938h1v-.938zm7.5 0v.938h1v-.938zM1 4.719V3.78H0v.938h1zm6.5-.938v.938h1V3.78h-1zm7.5 0v.938h1V3.78h-1zM1 6.594v-.938H0v.938zm6.5-.938v.938h1v-.938zm7.5 0v.938h1v-.938zM.5 8.5h.469v-.031H1V7.53H.969V7.5H.5v.031H0v.938h.5zm1.406 0h.938v-1h-.938zm1.875 0h.938v-1H3.78v1zm1.875 0h.938v-1h-.938zm2.813 0v-.031H8.5V7.53h-.031V7.5H7.53v.031H7.5v.938h.031V8.5zm.937 0h.938v-1h-.938zm1.875 0h.938v-1h-.938zm1.875 0h.938v-1h-.938zm1.875 0h.469v-.031h.5V7.53h-.5V7.5h-.469v.031H15v.938h.031zM0 9.406v.938h1v-.938zm7.5 0v.938h1v-.938zm8.5.938v-.938h-1v.938zm-16 .937v.938h1v-.938zm7.5 0v.938h1v-.938zm8.5.938v-.938h-1v.938zm-16 .937v.938h1v-.938zm7.5 0v.938h1v-.938zm8.5.938v-.938h-1v.938zM0 16h.969v-.5H1v-.469H.969V15H.5v.031H0zm1.906 0h.938v-1h-.938zm1.875 0h.938v-1H3.78v1zm1.875 0h.938v-1h-.938zm1.875-.5v.5h.938v-.5H8.5v-.469h-.031V15H7.53v.031H7.5v.469zm1.875.5h.938v-1h-.938zm1.875 0h.938v-1h-.938zm1.875 0h.938v-1h-.938zm1.875-.5v.5H16v-.969h-.5V15h-.469v.031H15v.469z\"},\"child\":[]}]})(props);\n};\nexport function BsBorderWidth (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 3.5A.5.5 0 0 1 .5 3h15a.5.5 0 0 1 .5.5v2a.5.5 0 0 1-.5.5H.5a.5.5 0 0 1-.5-.5zm0 5A.5.5 0 0 1 .5 8h15a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5H.5a.5.5 0 0 1-.5-.5zm0 4a.5.5 0 0 1 .5-.5h15a.5.5 0 0 1 0 1H.5a.5.5 0 0 1-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsBorder (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 0h.969v.5H1v.469H.969V1H.5V.969H0zm2.844 1h-.938V0h.938zm1.875 0H3.78V0h.938v1zm1.875 0h-.938V0h.938zm.937 0V.969H7.5V.5h.031V0h.938v.5H8.5v.469h-.031V1zm2.813 0h-.938V0h.938zm1.875 0h-.938V0h.938zm1.875 0h-.938V0h.938zM15.5 1h-.469V.969H15V.5h.031V0H16v.969h-.5zM1 1.906v.938H0v-.938zm6.5.938v-.938h1v.938zm7.5 0v-.938h1v.938zM1 3.78v.938H0V3.78zm6.5.938V3.78h1v.938zm7.5 0V3.78h1v.938zM1 5.656v.938H0v-.938zm6.5.938v-.938h1v.938zm7.5 0v-.938h1v.938zM.969 8.5H.5v-.031H0V7.53h.5V7.5h.469v.031H1v.938H.969zm1.875 0h-.938v-1h.938zm1.875 0H3.78v-1h.938v1zm1.875 0h-.938v-1h.938zm1.875-.031V8.5H7.53v-.031H7.5V7.53h.031V7.5h.938v.031H8.5v.938zm1.875.031h-.938v-1h.938zm1.875 0h-.938v-1h.938zm1.875 0h-.938v-1h.938zm1.406 0h-.469v-.031H15V7.53h.031V7.5h.469v.031h.5v.938h-.5zM0 10.344v-.938h1v.938zm7.5 0v-.938h1v.938zm8.5-.938v.938h-1v-.938zM0 12.22v-.938h1v.938zm7.5 0v-.938h1v.938zm8.5-.938v.938h-1v-.938zM0 14.094v-.938h1v.938zm7.5 0v-.938h1v.938zm8.5-.938v.938h-1v-.938zM.969 16H0v-.969h.5V15h.469v.031H1v.469H.969zm1.875 0h-.938v-1h.938zm1.875 0H3.78v-1h.938v1zm1.875 0h-.938v-1h.938zm.937 0v-.5H7.5v-.469h.031V15h.938v.031H8.5v.469h-.031v.5zm2.813 0h-.938v-1h.938zm1.875 0h-.938v-1h.938zm1.875 0h-.938v-1h.938zm.937 0v-.5H15v-.469h.031V15h.469v.031h.5V16z\"},\"child\":[]}]})(props);\n};\nexport function BsBoundingBoxCircles (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 1a1 1 0 1 0 0 2 1 1 0 0 0 0-2M0 2a2 2 0 0 1 3.937-.5h8.126A2 2 0 1 1 14.5 3.937v8.126a2 2 0 1 1-2.437 2.437H3.937A2 2 0 1 1 1.5 12.063V3.937A2 2 0 0 1 0 2m2.5 1.937v8.126c.703.18 1.256.734 1.437 1.437h8.126a2 2 0 0 1 1.437-1.437V3.937A2 2 0 0 1 12.063 2.5H3.937A2 2 0 0 1 2.5 3.937M14 1a1 1 0 1 0 0 2 1 1 0 0 0 0-2M2 13a1 1 0 1 0 0 2 1 1 0 0 0 0-2m12 0a1 1 0 1 0 0 2 1 1 0 0 0 0-2\"},\"child\":[]}]})(props);\n};\nexport function BsBoundingBox (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5 2V0H0v5h2v6H0v5h5v-2h6v2h5v-5h-2V5h2V0h-5v2zm6 1v2h2v6h-2v2H5v-2H3V5h2V3zm1-2h3v3h-3zm3 11v3h-3v-3zM4 15H1v-3h3zM1 4V1h3v3z\"},\"child\":[]}]})(props);\n};\nexport function BsBoxArrowDownLeft (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M7.364 12.5a.5.5 0 0 0 .5.5H14.5a1.5 1.5 0 0 0 1.5-1.5v-10A1.5 1.5 0 0 0 14.5 0h-10A1.5 1.5 0 0 0 3 1.5v6.636a.5.5 0 1 0 1 0V1.5a.5.5 0 0 1 .5-.5h10a.5.5 0 0 1 .5.5v10a.5.5 0 0 1-.5.5H7.864a.5.5 0 0 0-.5.5\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M0 15.5a.5.5 0 0 0 .5.5h5a.5.5 0 0 0 0-1H1.707l8.147-8.146a.5.5 0 0 0-.708-.708L1 14.293V10.5a.5.5 0 0 0-1 0z\"},\"child\":[]}]})(props);\n};\nexport function BsBoxArrowDownRight (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M8.636 12.5a.5.5 0 0 1-.5.5H1.5A1.5 1.5 0 0 1 0 11.5v-10A1.5 1.5 0 0 1 1.5 0h10A1.5 1.5 0 0 1 13 1.5v6.636a.5.5 0 0 1-1 0V1.5a.5.5 0 0 0-.5-.5h-10a.5.5 0 0 0-.5.5v10a.5.5 0 0 0 .5.5h6.636a.5.5 0 0 1 .5.5\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M16 15.5a.5.5 0 0 1-.5.5h-5a.5.5 0 0 1 0-1h3.793L6.146 6.854a.5.5 0 1 1 .708-.708L15 14.293V10.5a.5.5 0 0 1 1 0z\"},\"child\":[]}]})(props);\n};\nexport function BsBoxArrowDown (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M3.5 10a.5.5 0 0 1-.5-.5v-8a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 .5.5v8a.5.5 0 0 1-.5.5h-2a.5.5 0 0 0 0 1h2A1.5 1.5 0 0 0 14 9.5v-8A1.5 1.5 0 0 0 12.5 0h-9A1.5 1.5 0 0 0 2 1.5v8A1.5 1.5 0 0 0 3.5 11h2a.5.5 0 0 0 0-1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M7.646 15.854a.5.5 0 0 0 .708 0l3-3a.5.5 0 0 0-.708-.708L8.5 14.293V5.5a.5.5 0 0 0-1 0v8.793l-2.146-2.147a.5.5 0 0 0-.708.708z\"},\"child\":[]}]})(props);\n};\nexport function BsBoxArrowInDownLeft (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M9.636 2.5a.5.5 0 0 0-.5-.5H2.5A1.5 1.5 0 0 0 1 3.5v10A1.5 1.5 0 0 0 2.5 15h10a1.5 1.5 0 0 0 1.5-1.5V6.864a.5.5 0 0 0-1 0V13.5a.5.5 0 0 1-.5.5h-10a.5.5 0 0 1-.5-.5v-10a.5.5 0 0 1 .5-.5h6.636a.5.5 0 0 0 .5-.5\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M5 10.5a.5.5 0 0 0 .5.5h5a.5.5 0 0 0 0-1H6.707l8.147-8.146a.5.5 0 0 0-.708-.708L6 9.293V5.5a.5.5 0 0 0-1 0z\"},\"child\":[]}]})(props);\n};\nexport function BsBoxArrowInDownRight (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M6.364 2.5a.5.5 0 0 1 .5-.5H13.5A1.5 1.5 0 0 1 15 3.5v10a1.5 1.5 0 0 1-1.5 1.5h-10A1.5 1.5 0 0 1 2 13.5V6.864a.5.5 0 1 1 1 0V13.5a.5.5 0 0 0 .5.5h10a.5.5 0 0 0 .5-.5v-10a.5.5 0 0 0-.5-.5H6.864a.5.5 0 0 1-.5-.5\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M11 10.5a.5.5 0 0 1-.5.5h-5a.5.5 0 0 1 0-1h3.793L1.146 1.854a.5.5 0 1 1 .708-.708L10 9.293V5.5a.5.5 0 0 1 1 0z\"},\"child\":[]}]})(props);\n};\nexport function BsBoxArrowInDown (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M3.5 6a.5.5 0 0 0-.5.5v8a.5.5 0 0 0 .5.5h9a.5.5 0 0 0 .5-.5v-8a.5.5 0 0 0-.5-.5h-2a.5.5 0 0 1 0-1h2A1.5 1.5 0 0 1 14 6.5v8a1.5 1.5 0 0 1-1.5 1.5h-9A1.5 1.5 0 0 1 2 14.5v-8A1.5 1.5 0 0 1 3.5 5h2a.5.5 0 0 1 0 1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M7.646 11.854a.5.5 0 0 0 .708 0l3-3a.5.5 0 0 0-.708-.708L8.5 10.293V1.5a.5.5 0 0 0-1 0v8.793L5.354 8.146a.5.5 0 1 0-.708.708z\"},\"child\":[]}]})(props);\n};\nexport function BsBoxArrowInLeft (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M10 3.5a.5.5 0 0 0-.5-.5h-8a.5.5 0 0 0-.5.5v9a.5.5 0 0 0 .5.5h8a.5.5 0 0 0 .5-.5v-2a.5.5 0 0 1 1 0v2A1.5 1.5 0 0 1 9.5 14h-8A1.5 1.5 0 0 1 0 12.5v-9A1.5 1.5 0 0 1 1.5 2h8A1.5 1.5 0 0 1 11 3.5v2a.5.5 0 0 1-1 0z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M4.146 8.354a.5.5 0 0 1 0-.708l3-3a.5.5 0 1 1 .708.708L5.707 7.5H14.5a.5.5 0 0 1 0 1H5.707l2.147 2.146a.5.5 0 0 1-.708.708z\"},\"child\":[]}]})(props);\n};\nexport function BsBoxArrowInRight (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M6 3.5a.5.5 0 0 1 .5-.5h8a.5.5 0 0 1 .5.5v9a.5.5 0 0 1-.5.5h-8a.5.5 0 0 1-.5-.5v-2a.5.5 0 0 0-1 0v2A1.5 1.5 0 0 0 6.5 14h8a1.5 1.5 0 0 0 1.5-1.5v-9A1.5 1.5 0 0 0 14.5 2h-8A1.5 1.5 0 0 0 5 3.5v2a.5.5 0 0 0 1 0z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M11.854 8.354a.5.5 0 0 0 0-.708l-3-3a.5.5 0 1 0-.708.708L10.293 7.5H1.5a.5.5 0 0 0 0 1h8.793l-2.147 2.146a.5.5 0 0 0 .708.708z\"},\"child\":[]}]})(props);\n};\nexport function BsBoxArrowInUpLeft (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M9.636 13.5a.5.5 0 0 1-.5.5H2.5A1.5 1.5 0 0 1 1 12.5v-10A1.5 1.5 0 0 1 2.5 1h10A1.5 1.5 0 0 1 14 2.5v6.636a.5.5 0 0 1-1 0V2.5a.5.5 0 0 0-.5-.5h-10a.5.5 0 0 0-.5.5v10a.5.5 0 0 0 .5.5h6.636a.5.5 0 0 1 .5.5\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M5 5.5a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1H6.707l8.147 8.146a.5.5 0 0 1-.708.708L6 6.707V10.5a.5.5 0 0 1-1 0z\"},\"child\":[]}]})(props);\n};\nexport function BsBoxArrowInUpRight (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M6.364 13.5a.5.5 0 0 0 .5.5H13.5a1.5 1.5 0 0 0 1.5-1.5v-10A1.5 1.5 0 0 0 13.5 1h-10A1.5 1.5 0 0 0 2 2.5v6.636a.5.5 0 1 0 1 0V2.5a.5.5 0 0 1 .5-.5h10a.5.5 0 0 1 .5.5v10a.5.5 0 0 1-.5.5H6.864a.5.5 0 0 0-.5.5\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M11 5.5a.5.5 0 0 0-.5-.5h-5a.5.5 0 0 0 0 1h3.793l-8.147 8.146a.5.5 0 0 0 .708.708L10 6.707V10.5a.5.5 0 0 0 1 0z\"},\"child\":[]}]})(props);\n};\nexport function BsBoxArrowInUp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M3.5 10a.5.5 0 0 1-.5-.5v-8a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 .5.5v8a.5.5 0 0 1-.5.5h-2a.5.5 0 0 0 0 1h2A1.5 1.5 0 0 0 14 9.5v-8A1.5 1.5 0 0 0 12.5 0h-9A1.5 1.5 0 0 0 2 1.5v8A1.5 1.5 0 0 0 3.5 11h2a.5.5 0 0 0 0-1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M7.646 4.146a.5.5 0 0 1 .708 0l3 3a.5.5 0 0 1-.708.708L8.5 5.707V14.5a.5.5 0 0 1-1 0V5.707L5.354 7.854a.5.5 0 1 1-.708-.708z\"},\"child\":[]}]})(props);\n};\nexport function BsBoxArrowLeft (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M6 12.5a.5.5 0 0 0 .5.5h8a.5.5 0 0 0 .5-.5v-9a.5.5 0 0 0-.5-.5h-8a.5.5 0 0 0-.5.5v2a.5.5 0 0 1-1 0v-2A1.5 1.5 0 0 1 6.5 2h8A1.5 1.5 0 0 1 16 3.5v9a1.5 1.5 0 0 1-1.5 1.5h-8A1.5 1.5 0 0 1 5 12.5v-2a.5.5 0 0 1 1 0z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M.146 8.354a.5.5 0 0 1 0-.708l3-3a.5.5 0 1 1 .708.708L1.707 7.5H10.5a.5.5 0 0 1 0 1H1.707l2.147 2.146a.5.5 0 0 1-.708.708z\"},\"child\":[]}]})(props);\n};\nexport function BsBoxArrowRight (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M10 12.5a.5.5 0 0 1-.5.5h-8a.5.5 0 0 1-.5-.5v-9a.5.5 0 0 1 .5-.5h8a.5.5 0 0 1 .5.5v2a.5.5 0 0 0 1 0v-2A1.5 1.5 0 0 0 9.5 2h-8A1.5 1.5 0 0 0 0 3.5v9A1.5 1.5 0 0 0 1.5 14h8a1.5 1.5 0 0 0 1.5-1.5v-2a.5.5 0 0 0-1 0z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M15.854 8.354a.5.5 0 0 0 0-.708l-3-3a.5.5 0 0 0-.708.708L14.293 7.5H5.5a.5.5 0 0 0 0 1h8.793l-2.147 2.146a.5.5 0 0 0 .708.708z\"},\"child\":[]}]})(props);\n};\nexport function BsBoxArrowUpLeft (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M7.364 3.5a.5.5 0 0 1 .5-.5H14.5A1.5 1.5 0 0 1 16 4.5v10a1.5 1.5 0 0 1-1.5 1.5h-10A1.5 1.5 0 0 1 3 14.5V7.864a.5.5 0 1 1 1 0V14.5a.5.5 0 0 0 .5.5h10a.5.5 0 0 0 .5-.5v-10a.5.5 0 0 0-.5-.5H7.864a.5.5 0 0 1-.5-.5\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M0 .5A.5.5 0 0 1 .5 0h5a.5.5 0 0 1 0 1H1.707l8.147 8.146a.5.5 0 0 1-.708.708L1 1.707V5.5a.5.5 0 0 1-1 0z\"},\"child\":[]}]})(props);\n};\nexport function BsBoxArrowUpRight (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M8.636 3.5a.5.5 0 0 0-.5-.5H1.5A1.5 1.5 0 0 0 0 4.5v10A1.5 1.5 0 0 0 1.5 16h10a1.5 1.5 0 0 0 1.5-1.5V7.864a.5.5 0 0 0-1 0V14.5a.5.5 0 0 1-.5.5h-10a.5.5 0 0 1-.5-.5v-10a.5.5 0 0 1 .5-.5h6.636a.5.5 0 0 0 .5-.5\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M16 .5a.5.5 0 0 0-.5-.5h-5a.5.5 0 0 0 0 1h3.793L6.146 9.146a.5.5 0 1 0 .708.708L15 1.707V5.5a.5.5 0 0 0 1 0z\"},\"child\":[]}]})(props);\n};\nexport function BsBoxArrowUp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M3.5 6a.5.5 0 0 0-.5.5v8a.5.5 0 0 0 .5.5h9a.5.5 0 0 0 .5-.5v-8a.5.5 0 0 0-.5-.5h-2a.5.5 0 0 1 0-1h2A1.5 1.5 0 0 1 14 6.5v8a1.5 1.5 0 0 1-1.5 1.5h-9A1.5 1.5 0 0 1 2 14.5v-8A1.5 1.5 0 0 1 3.5 5h2a.5.5 0 0 1 0 1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M7.646.146a.5.5 0 0 1 .708 0l3 3a.5.5 0 0 1-.708.708L8.5 1.707V10.5a.5.5 0 0 1-1 0V1.707L5.354 3.854a.5.5 0 1 1-.708-.708z\"},\"child\":[]}]})(props);\n};\nexport function BsBoxFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M15.528 2.973a.75.75 0 0 1 .472.696v8.662a.75.75 0 0 1-.472.696l-7.25 2.9a.75.75 0 0 1-.557 0l-7.25-2.9A.75.75 0 0 1 0 12.331V3.669a.75.75 0 0 1 .471-.696L7.443.184l.004-.001.274-.11a.75.75 0 0 1 .558 0l.274.11.004.001zm-1.374.527L8 5.962 1.846 3.5 1 3.839v.4l6.5 2.6v7.922l.5.2.5-.2V6.84l6.5-2.6v-.4l-.846-.339Z\"},\"child\":[]}]})(props);\n};\nexport function BsBoxSeamFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M15.528 2.973a.75.75 0 0 1 .472.696v8.662a.75.75 0 0 1-.472.696l-7.25 2.9a.75.75 0 0 1-.557 0l-7.25-2.9A.75.75 0 0 1 0 12.331V3.669a.75.75 0 0 1 .471-.696L7.443.184l.01-.003.268-.108a.75.75 0 0 1 .558 0l.269.108.01.003zM10.404 2 4.25 4.461 1.846 3.5 1 3.839v.4l6.5 2.6v7.922l.5.2.5-.2V6.84l6.5-2.6v-.4l-.846-.339L8 5.961 5.596 5l6.154-2.461z\"},\"child\":[]}]})(props);\n};\nexport function BsBoxSeam (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.186 1.113a.5.5 0 0 0-.372 0L1.846 3.5l2.404.961L10.404 2zm3.564 1.426L5.596 5 8 5.961 14.154 3.5zm3.25 1.7-6.5 2.6v7.922l6.5-2.6V4.24zM7.5 14.762V6.838L1 4.239v7.923zM7.443.184a1.5 1.5 0 0 1 1.114 0l7.129 2.852A.5.5 0 0 1 16 3.5v8.662a1 1 0 0 1-.629.928l-7.185 2.874a.5.5 0 0 1-.372 0L.63 13.09a1 1 0 0 1-.63-.928V3.5a.5.5 0 0 1 .314-.464z\"},\"child\":[]}]})(props);\n};\nexport function BsBox (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.186 1.113a.5.5 0 0 0-.372 0L1.846 3.5 8 5.961 14.154 3.5zM15 4.239l-6.5 2.6v7.922l6.5-2.6V4.24zM7.5 14.762V6.838L1 4.239v7.923zM7.443.184a1.5 1.5 0 0 1 1.114 0l7.129 2.852A.5.5 0 0 1 16 3.5v8.662a1 1 0 0 1-.629.928l-7.185 2.874a.5.5 0 0 1-.372 0L.63 13.09a1 1 0 0 1-.63-.928V3.5a.5.5 0 0 1 .314-.464z\"},\"child\":[]}]})(props);\n};\nexport function BsBox2Fill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3.75 0a1 1 0 0 0-.8.4L.1 4.2a.5.5 0 0 0-.1.3V15a1 1 0 0 0 1 1h14a1 1 0 0 0 1-1V4.5a.5.5 0 0 0-.1-.3L13.05.4a1 1 0 0 0-.8-.4zM15 4.667V5H1v-.333L1.5 4h6V1h1v3h6z\"},\"child\":[]}]})(props);\n};\nexport function BsBox2HeartFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3.75 0a1 1 0 0 0-.8.4L.1 4.2a.5.5 0 0 0-.1.3V15a1 1 0 0 0 1 1h14a1 1 0 0 0 1-1V4.5a.5.5 0 0 0-.1-.3L13.05.4a1 1 0 0 0-.8-.4zM8.5 4h6l.5.667V5H1v-.333L1.5 4h6V1h1zM8 7.993c1.664-1.711 5.825 1.283 0 5.132-5.825-3.85-1.664-6.843 0-5.132\"},\"child\":[]}]})(props);\n};\nexport function BsBox2Heart (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 7.982C9.664 6.309 13.825 9.236 8 13 2.175 9.236 6.336 6.31 8 7.982\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3.75 0a1 1 0 0 0-.8.4L.1 4.2a.5.5 0 0 0-.1.3V15a1 1 0 0 0 1 1h14a1 1 0 0 0 1-1V4.5a.5.5 0 0 0-.1-.3L13.05.4a1 1 0 0 0-.8-.4zm0 1H7.5v3h-6zM8.5 4V1h3.75l2.25 3zM15 5v10H1V5z\"},\"child\":[]}]})(props);\n};\nexport function BsBox2 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2.95.4a1 1 0 0 1 .8-.4h8.5a1 1 0 0 1 .8.4l2.85 3.8a.5.5 0 0 1 .1.3V15a1 1 0 0 1-1 1H1a1 1 0 0 1-1-1V4.5a.5.5 0 0 1 .1-.3zM7.5 1H3.75L1.5 4h6zm1 0v3h6l-2.25-3zM15 5H1v10h14z\"},\"child\":[]}]})(props);\n};\nexport function BsBoxes (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.752.066a.5.5 0 0 1 .496 0l3.75 2.143a.5.5 0 0 1 .252.434v3.995l3.498 2A.5.5 0 0 1 16 9.07v4.286a.5.5 0 0 1-.252.434l-3.75 2.143a.5.5 0 0 1-.496 0l-3.502-2-3.502 2.001a.5.5 0 0 1-.496 0l-3.75-2.143A.5.5 0 0 1 0 13.357V9.071a.5.5 0 0 1 .252-.434L3.75 6.638V2.643a.5.5 0 0 1 .252-.434zM4.25 7.504 1.508 9.071l2.742 1.567 2.742-1.567zM7.5 9.933l-2.75 1.571v3.134l2.75-1.571zm1 3.134 2.75 1.571v-3.134L8.5 9.933zm.508-3.996 2.742 1.567 2.742-1.567-2.742-1.567zm2.242-2.433V3.504L8.5 5.076V8.21zM7.5 8.21V5.076L4.75 3.504v3.134zM5.258 2.643 8 4.21l2.742-1.567L8 1.076zM15 9.933l-2.75 1.571v3.134L15 13.067zM3.75 14.638v-3.134L1 9.933v3.134z\"},\"child\":[]}]})(props);\n};\nexport function BsBracesAsterisk (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M1.114 8.063V7.9c1.005-.102 1.497-.615 1.497-1.6V4.503c0-1.094.39-1.538 1.354-1.538h.273V2h-.376C2.25 2 1.49 2.759 1.49 4.352v1.524c0 1.094-.376 1.456-1.49 1.456v1.299c1.114 0 1.49.362 1.49 1.456v1.524c0 1.593.759 2.352 2.372 2.352h.376v-.964h-.273c-.964 0-1.354-.444-1.354-1.538V9.663c0-.984-.492-1.497-1.497-1.6M14.886 7.9v.164c-1.005.103-1.497.616-1.497 1.6v1.798c0 1.094-.39 1.538-1.354 1.538h-.273v.964h.376c1.613 0 2.372-.759 2.372-2.352v-1.524c0-1.094.376-1.456 1.49-1.456v-1.3c-1.114 0-1.49-.362-1.49-1.456V4.352C14.51 2.759 13.75 2 12.138 2h-.376v.964h.273c.964 0 1.354.444 1.354 1.538V6.3c0 .984.492 1.497 1.497 1.6M7.5 11.5V9.207l-1.621 1.621-.707-.707L6.792 8.5H4.5v-1h2.293L5.172 5.879l.707-.707L7.5 6.792V4.5h1v2.293l1.621-1.621.707.707L9.208 7.5H11.5v1H9.207l1.621 1.621-.707.707L8.5 9.208V11.5z\"},\"child\":[]}]})(props);\n};\nexport function BsBraces (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2.114 8.063V7.9c1.005-.102 1.497-.615 1.497-1.6V4.503c0-1.094.39-1.538 1.354-1.538h.273V2h-.376C3.25 2 2.49 2.759 2.49 4.352v1.524c0 1.094-.376 1.456-1.49 1.456v1.299c1.114 0 1.49.362 1.49 1.456v1.524c0 1.593.759 2.352 2.372 2.352h.376v-.964h-.273c-.964 0-1.354-.444-1.354-1.538V9.663c0-.984-.492-1.497-1.497-1.6M13.886 7.9v.163c-1.005.103-1.497.616-1.497 1.6v1.798c0 1.094-.39 1.538-1.354 1.538h-.273v.964h.376c1.613 0 2.372-.759 2.372-2.352v-1.524c0-1.094.376-1.456 1.49-1.456V7.332c-1.114 0-1.49-.362-1.49-1.456V4.352C13.51 2.759 12.75 2 11.138 2h-.376v.964h.273c.964 0 1.354.444 1.354 1.538V6.3c0 .984.492 1.497 1.497 1.6\"},\"child\":[]}]})(props);\n};\nexport function BsBricks (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 .5A.5.5 0 0 1 .5 0h15a.5.5 0 0 1 .5.5v3a.5.5 0 0 1-.5.5H14v2h1.5a.5.5 0 0 1 .5.5v3a.5.5 0 0 1-.5.5H14v2h1.5a.5.5 0 0 1 .5.5v3a.5.5 0 0 1-.5.5H.5a.5.5 0 0 1-.5-.5v-3a.5.5 0 0 1 .5-.5H2v-2H.5a.5.5 0 0 1-.5-.5v-3A.5.5 0 0 1 .5 6H2V4H.5a.5.5 0 0 1-.5-.5zM3 4v2h4.5V4zm5.5 0v2H13V4zM3 10v2h4.5v-2zm5.5 0v2H13v-2zM1 1v2h3.5V1zm4.5 0v2h5V1zm6 0v2H15V1zM1 7v2h3.5V7zm4.5 0v2h5V7zm6 0v2H15V7zM1 13v2h3.5v-2zm4.5 0v2h5v-2zm6 0v2H15v-2z\"},\"child\":[]}]})(props);\n};\nexport function BsBriefcaseFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.5 1A1.5 1.5 0 0 0 5 2.5V3H1.5A1.5 1.5 0 0 0 0 4.5v1.384l7.614 2.03a1.5 1.5 0 0 0 .772 0L16 5.884V4.5A1.5 1.5 0 0 0 14.5 3H11v-.5A1.5 1.5 0 0 0 9.5 1zm0 1h3a.5.5 0 0 1 .5.5V3H6v-.5a.5.5 0 0 1 .5-.5\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M0 12.5A1.5 1.5 0 0 0 1.5 14h13a1.5 1.5 0 0 0 1.5-1.5V6.85L8.129 8.947a.5.5 0 0 1-.258 0L0 6.85z\"},\"child\":[]}]})(props);\n};\nexport function BsBriefcase (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.5 1A1.5 1.5 0 0 0 5 2.5V3H1.5A1.5 1.5 0 0 0 0 4.5v8A1.5 1.5 0 0 0 1.5 14h13a1.5 1.5 0 0 0 1.5-1.5v-8A1.5 1.5 0 0 0 14.5 3H11v-.5A1.5 1.5 0 0 0 9.5 1zm0 1h3a.5.5 0 0 1 .5.5V3H6v-.5a.5.5 0 0 1 .5-.5m1.886 6.914L15 7.151V12.5a.5.5 0 0 1-.5.5h-13a.5.5 0 0 1-.5-.5V7.15l6.614 1.764a1.5 1.5 0 0 0 .772 0M1.5 4h13a.5.5 0 0 1 .5.5v1.616L8.129 7.948a.5.5 0 0 1-.258 0L1 6.116V4.5a.5.5 0 0 1 .5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsBrightnessAltHighFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 3a.5.5 0 0 1 .5.5v2a.5.5 0 0 1-1 0v-2A.5.5 0 0 1 8 3m8 8a.5.5 0 0 1-.5.5h-2a.5.5 0 0 1 0-1h2a.5.5 0 0 1 .5.5m-13.5.5a.5.5 0 0 0 0-1h-2a.5.5 0 0 0 0 1zm11.157-6.157a.5.5 0 0 1 0 .707l-1.414 1.414a.5.5 0 1 1-.707-.707l1.414-1.414a.5.5 0 0 1 .707 0m-9.9 2.121a.5.5 0 0 0 .707-.707L3.05 5.343a.5.5 0 1 0-.707.707zM8 7a4 4 0 0 0-4 4 .5.5 0 0 0 .5.5h7a.5.5 0 0 0 .5-.5 4 4 0 0 0-4-4\"},\"child\":[]}]})(props);\n};\nexport function BsBrightnessAltHigh (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 3a.5.5 0 0 1 .5.5v2a.5.5 0 0 1-1 0v-2A.5.5 0 0 1 8 3m8 8a.5.5 0 0 1-.5.5h-2a.5.5 0 0 1 0-1h2a.5.5 0 0 1 .5.5m-13.5.5a.5.5 0 0 0 0-1h-2a.5.5 0 0 0 0 1zm11.157-6.157a.5.5 0 0 1 0 .707l-1.414 1.414a.5.5 0 1 1-.707-.707l1.414-1.414a.5.5 0 0 1 .707 0m-9.9 2.121a.5.5 0 0 0 .707-.707L3.05 5.343a.5.5 0 1 0-.707.707zM8 7a4 4 0 0 0-4 4 .5.5 0 0 0 .5.5h7a.5.5 0 0 0 .5-.5 4 4 0 0 0-4-4m0 1a3 3 0 0 1 2.959 2.5H5.04A3 3 0 0 1 8 8\"},\"child\":[]}]})(props);\n};\nexport function BsBrightnessAltLowFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.5 5.5a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0m5 6a.5.5 0 1 1 0-1 .5.5 0 0 1 0 1M2 11a.5.5 0 1 0 1 0 .5.5 0 0 0-1 0m10.243-3.536a.5.5 0 1 1-.707-.707.5.5 0 0 1 .707.707m-8.486-.707a.5.5 0 1 0 .707.707.5.5 0 0 0-.707-.707M8 7a4 4 0 0 0-4 4 .5.5 0 0 0 .5.5h7a.5.5 0 0 0 .5-.5 4 4 0 0 0-4-4\"},\"child\":[]}]})(props);\n};\nexport function BsBrightnessAltLow (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.5 5.5a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0m5 6a.5.5 0 1 1 0-1 .5.5 0 0 1 0 1M2 11a.5.5 0 1 0 1 0 .5.5 0 0 0-1 0m10.243-3.536a.5.5 0 1 1-.707-.707.5.5 0 0 1 .707.707m-8.486-.707a.5.5 0 1 0 .707.707.5.5 0 0 0-.707-.707M8 7a4 4 0 0 0-4 4 .5.5 0 0 0 .5.5h7a.5.5 0 0 0 .5-.5 4 4 0 0 0-4-4m0 1a3 3 0 0 1 2.959 2.5H5.04A3 3 0 0 1 8 8\"},\"child\":[]}]})(props);\n};\nexport function BsBrightnessHighFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12 8a4 4 0 1 1-8 0 4 4 0 0 1 8 0M8 0a.5.5 0 0 1 .5.5v2a.5.5 0 0 1-1 0v-2A.5.5 0 0 1 8 0m0 13a.5.5 0 0 1 .5.5v2a.5.5 0 0 1-1 0v-2A.5.5 0 0 1 8 13m8-5a.5.5 0 0 1-.5.5h-2a.5.5 0 0 1 0-1h2a.5.5 0 0 1 .5.5M3 8a.5.5 0 0 1-.5.5h-2a.5.5 0 0 1 0-1h2A.5.5 0 0 1 3 8m10.657-5.657a.5.5 0 0 1 0 .707l-1.414 1.415a.5.5 0 1 1-.707-.708l1.414-1.414a.5.5 0 0 1 .707 0m-9.193 9.193a.5.5 0 0 1 0 .707L3.05 13.657a.5.5 0 0 1-.707-.707l1.414-1.414a.5.5 0 0 1 .707 0m9.193 2.121a.5.5 0 0 1-.707 0l-1.414-1.414a.5.5 0 0 1 .707-.707l1.414 1.414a.5.5 0 0 1 0 .707M4.464 4.465a.5.5 0 0 1-.707 0L2.343 3.05a.5.5 0 1 1 .707-.707l1.414 1.414a.5.5 0 0 1 0 .708\"},\"child\":[]}]})(props);\n};\nexport function BsBrightnessHigh (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 11a3 3 0 1 1 0-6 3 3 0 0 1 0 6m0 1a4 4 0 1 0 0-8 4 4 0 0 0 0 8M8 0a.5.5 0 0 1 .5.5v2a.5.5 0 0 1-1 0v-2A.5.5 0 0 1 8 0m0 13a.5.5 0 0 1 .5.5v2a.5.5 0 0 1-1 0v-2A.5.5 0 0 1 8 13m8-5a.5.5 0 0 1-.5.5h-2a.5.5 0 0 1 0-1h2a.5.5 0 0 1 .5.5M3 8a.5.5 0 0 1-.5.5h-2a.5.5 0 0 1 0-1h2A.5.5 0 0 1 3 8m10.657-5.657a.5.5 0 0 1 0 .707l-1.414 1.415a.5.5 0 1 1-.707-.708l1.414-1.414a.5.5 0 0 1 .707 0m-9.193 9.193a.5.5 0 0 1 0 .707L3.05 13.657a.5.5 0 0 1-.707-.707l1.414-1.414a.5.5 0 0 1 .707 0m9.193 2.121a.5.5 0 0 1-.707 0l-1.414-1.414a.5.5 0 0 1 .707-.707l1.414 1.414a.5.5 0 0 1 0 .707M4.464 4.465a.5.5 0 0 1-.707 0L2.343 3.05a.5.5 0 1 1 .707-.707l1.414 1.414a.5.5 0 0 1 0 .708\"},\"child\":[]}]})(props);\n};\nexport function BsBrightnessLowFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12 8a4 4 0 1 1-8 0 4 4 0 0 1 8 0M8.5 2.5a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0m0 11a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0m5-5a.5.5 0 1 1 0-1 .5.5 0 0 1 0 1m-11 0a.5.5 0 1 1 0-1 .5.5 0 0 1 0 1m9.743-4.036a.5.5 0 1 1-.707-.707.5.5 0 0 1 .707.707m-7.779 7.779a.5.5 0 1 1-.707-.707.5.5 0 0 1 .707.707m7.072 0a.5.5 0 1 1 .707-.707.5.5 0 0 1-.707.707M3.757 4.464a.5.5 0 1 1 .707-.707.5.5 0 0 1-.707.707\"},\"child\":[]}]})(props);\n};\nexport function BsBrightnessLow (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 11a3 3 0 1 1 0-6 3 3 0 0 1 0 6m0 1a4 4 0 1 0 0-8 4 4 0 0 0 0 8m.5-9.5a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0m0 11a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0m5-5a.5.5 0 1 1 0-1 .5.5 0 0 1 0 1m-11 0a.5.5 0 1 1 0-1 .5.5 0 0 1 0 1m9.743-4.036a.5.5 0 1 1-.707-.707.5.5 0 0 1 .707.707m-7.779 7.779a.5.5 0 1 1-.707-.707.5.5 0 0 1 .707.707m7.072 0a.5.5 0 1 1 .707-.707.5.5 0 0 1-.707.707M3.757 4.464a.5.5 0 1 1 .707-.707.5.5 0 0 1-.707.707\"},\"child\":[]}]})(props);\n};\nexport function BsBrilliance (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 16A8 8 0 1 1 8 0a8 8 0 0 1 0 16M1 8a7 7 0 0 0 7 7 3.5 3.5 0 1 0 0-7 3.5 3.5 0 1 1 0-7 7 7 0 0 0-7 7\"},\"child\":[]}]})(props);\n};\nexport function BsBroadcastPin (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3.05 3.05a7 7 0 0 0 0 9.9.5.5 0 0 1-.707.707 8 8 0 0 1 0-11.314.5.5 0 0 1 .707.707m2.122 2.122a4 4 0 0 0 0 5.656.5.5 0 1 1-.708.708 5 5 0 0 1 0-7.072.5.5 0 0 1 .708.708m5.656-.708a.5.5 0 0 1 .708 0 5 5 0 0 1 0 7.072.5.5 0 1 1-.708-.708 4 4 0 0 0 0-5.656.5.5 0 0 1 0-.708m2.122-2.12a.5.5 0 0 1 .707 0 8 8 0 0 1 0 11.313.5.5 0 0 1-.707-.707 7 7 0 0 0 0-9.9.5.5 0 0 1 0-.707zM6 8a2 2 0 1 1 2.5 1.937V15.5a.5.5 0 0 1-1 0V9.937A2 2 0 0 1 6 8\"},\"child\":[]}]})(props);\n};\nexport function BsBroadcast (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3.05 3.05a7 7 0 0 0 0 9.9.5.5 0 0 1-.707.707 8 8 0 0 1 0-11.314.5.5 0 0 1 .707.707m2.122 2.122a4 4 0 0 0 0 5.656.5.5 0 1 1-.708.708 5 5 0 0 1 0-7.072.5.5 0 0 1 .708.708m5.656-.708a.5.5 0 0 1 .708 0 5 5 0 0 1 0 7.072.5.5 0 1 1-.708-.708 4 4 0 0 0 0-5.656.5.5 0 0 1 0-.708m2.122-2.12a.5.5 0 0 1 .707 0 8 8 0 0 1 0 11.313.5.5 0 0 1-.707-.707 7 7 0 0 0 0-9.9.5.5 0 0 1 0-.707zM10 8a2 2 0 1 1-4 0 2 2 0 0 1 4 0\"},\"child\":[]}]})(props);\n};\nexport function BsBrowserChrome (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M16 8a8 8 0 0 1-7.022 7.94l1.902-7.098a3 3 0 0 0 .05-1.492A3 3 0 0 0 10.237 6h5.511A8 8 0 0 1 16 8M0 8a8 8 0 0 0 7.927 8l1.426-5.321a3 3 0 0 1-.723.255 3 3 0 0 1-1.743-.147 3 3 0 0 1-1.043-.7L.633 4.876A8 8 0 0 0 0 8m5.004-.167L1.108 3.936A8.003 8.003 0 0 1 15.418 5H8.066a3 3 0 0 0-1.252.243 2.99 2.99 0 0 0-1.81 2.59M8 10a2 2 0 1 0 0-4 2 2 0 0 0 0 4\"},\"child\":[]}]})(props);\n};\nexport function BsBrowserEdge (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.482 9.341c-.069.062-.17.153-.17.309 0 .162.107.325.3.456.877.613 2.521.54 2.592.538h.002c.667 0 1.32-.18 1.894-.519A3.84 3.84 0 0 0 16 6.819c.018-1.316-.44-2.218-.666-2.664l-.04-.08C13.963 1.487 11.106 0 8 0A8 8 0 0 0 .473 5.29C1.488 4.048 3.183 3.262 5 3.262c2.83 0 5.01 1.885 5.01 4.797h-.004v.002c0 .338-.168.832-.487 1.244l.006-.006z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M.01 7.753a8.14 8.14 0 0 0 .753 3.641 8 8 0 0 0 6.495 4.564 5 5 0 0 1-.785-.377h-.01l-.12-.075a5.5 5.5 0 0 1-1.56-1.463A5.543 5.543 0 0 1 6.81 5.8l.01-.004.025-.012c.208-.098.62-.292 1.167-.285q.194.001.384.033a4 4 0 0 0-.993-.698l-.01-.005C6.348 4.282 5.199 4.263 5 4.263c-2.44 0-4.824 1.634-4.99 3.49m10.263 7.912q.133-.04.265-.084-.153.047-.307.086z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M10.228 15.667a5 5 0 0 0 .303-.086l.082-.025a8.02 8.02 0 0 0 4.162-3.3.25.25 0 0 0-.331-.35q-.322.168-.663.294a6.4 6.4 0 0 1-2.243.4c-2.957 0-5.532-2.031-5.532-4.644q.003-.203.046-.399a4.54 4.54 0 0 0-.46 5.898l.003.005c.315.441.707.821 1.158 1.121h.003l.144.09c.877.55 1.721 1.078 3.328.996\"},\"child\":[]}]})(props);\n};\nexport function BsBrowserFirefox (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M13.384 3.408c.535.276 1.22 1.152 1.556 1.963a8 8 0 0 1 .503 3.897l-.009.077-.026.224A7.758 7.758 0 0 1 .006 8.257v-.04q.025-.545.114-1.082c.01-.074.075-.42.09-.489l.01-.051a6.6 6.6 0 0 1 1.041-2.35q.327-.465.725-.87.35-.358.758-.65a1.5 1.5 0 0 1 .26-.137c-.018.268-.04 1.553.268 1.943h.003a5.7 5.7 0 0 1 1.868-1.443 3.6 3.6 0 0 0 .021 1.896q.105.07.2.152c.107.09.226.207.454.433l.068.066.009.009a2 2 0 0 0 .213.18c.383.287.943.563 1.306.741.201.1.342.168.359.193l.004.008c-.012.193-.695.858-.933.858-2.206 0-2.564 1.335-2.564 1.335.087.997.714 1.839 1.517 2.357a4 4 0 0 0 .439.241q.114.05.228.094c.325.115.665.18 1.01.194 3.043.143 4.155-2.804 3.129-4.745v-.001a3 3 0 0 0-.731-.9 3 3 0 0 0-.571-.37l-.003-.002a2.68 2.68 0 0 1 1.87.454 3.92 3.92 0 0 0-3.396-1.983q-.116.001-.23.01l-.042.003V4.31h-.002a4 4 0 0 0-.8.14 7 7 0 0 0-.333-.314 2 2 0 0 0-.2-.152 4 4 0 0 1-.088-.383 5 5 0 0 1 1.352-.289l.05-.003c.052-.004.125-.01.205-.012C7.996 2.212 8.733.843 10.17.002l-.003.005.003-.001.002-.002h.002l.002-.002h.015a.02.02 0 0 1 .012.007 2.4 2.4 0 0 0 .206.48q.09.153.183.297c.49.774 1.023 1.379 1.543 1.968.771.874 1.512 1.715 2.036 3.02l-.001-.013a8 8 0 0 0-.786-2.353\"},\"child\":[]}]})(props);\n};\nexport function BsBrowserSafari (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 16A8 8 0 1 0 8 0a8 8 0 0 0 0 16m.25-14.75v1.5a.25.25 0 0 1-.5 0v-1.5a.25.25 0 0 1 .5 0m0 12v1.5a.25.25 0 1 1-.5 0v-1.5a.25.25 0 1 1 .5 0M4.5 1.938a.25.25 0 0 1 .342.091l.75 1.3a.25.25 0 0 1-.434.25l-.75-1.3a.25.25 0 0 1 .092-.341m6 10.392a.25.25 0 0 1 .341.092l.75 1.299a.25.25 0 1 1-.432.25l-.75-1.3a.25.25 0 0 1 .091-.34ZM2.28 4.408l1.298.75a.25.25 0 0 1-.25.434l-1.299-.75a.25.25 0 0 1 .25-.434Zm10.392 6 1.299.75a.25.25 0 1 1-.25.434l-1.3-.75a.25.25 0 0 1 .25-.434ZM1 8a.25.25 0 0 1 .25-.25h1.5a.25.25 0 0 1 0 .5h-1.5A.25.25 0 0 1 1 8m12 0a.25.25 0 0 1 .25-.25h1.5a.25.25 0 1 1 0 .5h-1.5A.25.25 0 0 1 13 8M2.03 11.159l1.298-.75a.25.25 0 0 1 .25.432l-1.299.75a.25.25 0 0 1-.25-.432Zm10.392-6 1.299-.75a.25.25 0 1 1 .25.433l-1.3.75a.25.25 0 0 1-.25-.434ZM4.5 14.061a.25.25 0 0 1-.092-.341l.75-1.3a.25.25 0 0 1 .434.25l-.75 1.3a.25.25 0 0 1-.342.091m6-10.392a.25.25 0 0 1-.091-.342l.75-1.299a.25.25 0 1 1 .432.25l-.75 1.3a.25.25 0 0 1-.341.09ZM6.494 1.415l.13.483a.25.25 0 1 1-.483.13l-.13-.483a.25.25 0 0 1 .483-.13M9.86 13.972l.13.483a.25.25 0 1 1-.483.13l-.13-.483a.25.25 0 0 1 .483-.13M3.05 3.05a.25.25 0 0 1 .354 0l.353.354a.25.25 0 0 1-.353.353l-.354-.353a.25.25 0 0 1 0-.354m9.193 9.193a.25.25 0 0 1 .353 0l.354.353a.25.25 0 1 1-.354.354l-.353-.354a.25.25 0 0 1 0-.353M1.545 6.01l.483.13a.25.25 0 1 1-.13.483l-.483-.13a.25.25 0 1 1 .13-.482Zm12.557 3.365.483.13a.25.25 0 1 1-.13.483l-.483-.13a.25.25 0 1 1 .13-.483m-12.863.436a.25.25 0 0 1 .176-.306l.483-.13a.25.25 0 1 1 .13.483l-.483.13a.25.25 0 0 1-.306-.177m12.557-3.365a.25.25 0 0 1 .176-.306l.483-.13a.25.25 0 1 1 .13.483l-.483.13a.25.25 0 0 1-.306-.177M3.045 12.944a.3.3 0 0 1-.029-.376l3.898-5.592a.3.3 0 0 1 .062-.062l5.602-3.884a.278.278 0 0 1 .392.392L9.086 9.024a.3.3 0 0 1-.062.062l-5.592 3.898a.3.3 0 0 1-.382-.034zm3.143 1.817a.25.25 0 0 1-.176-.306l.129-.483a.25.25 0 0 1 .483.13l-.13.483a.25.25 0 0 1-.306.176M9.553 2.204a.25.25 0 0 1-.177-.306l.13-.483a.25.25 0 1 1 .483.13l-.13.483a.25.25 0 0 1-.306.176\"},\"child\":[]}]})(props);\n};\nexport function BsBrushFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M15.825.12a.5.5 0 0 1 .132.584c-1.53 3.43-4.743 8.17-7.095 10.64a6.1 6.1 0 0 1-2.373 1.534c-.018.227-.06.538-.16.868-.201.659-.667 1.479-1.708 1.74a8.1 8.1 0 0 1-3.078.132 4 4 0 0 1-.562-.135 1.4 1.4 0 0 1-.466-.247.7.7 0 0 1-.204-.288.62.62 0 0 1 .004-.443c.095-.245.316-.38.461-.452.394-.197.625-.453.867-.826.095-.144.184-.297.287-.472l.117-.198c.151-.255.326-.54.546-.848.528-.739 1.201-.925 1.746-.896q.19.012.348.048c.062-.172.142-.38.238-.608.261-.619.658-1.419 1.187-2.069 2.176-2.67 6.18-6.206 9.117-8.104a.5.5 0 0 1 .596.04\"},\"child\":[]}]})(props);\n};\nexport function BsBrush (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M15.825.12a.5.5 0 0 1 .132.584c-1.53 3.43-4.743 8.17-7.095 10.64a6.1 6.1 0 0 1-2.373 1.534c-.018.227-.06.538-.16.868-.201.659-.667 1.479-1.708 1.74a8.1 8.1 0 0 1-3.078.132 4 4 0 0 1-.562-.135 1.4 1.4 0 0 1-.466-.247.7.7 0 0 1-.204-.288.62.62 0 0 1 .004-.443c.095-.245.316-.38.461-.452.394-.197.625-.453.867-.826.095-.144.184-.297.287-.472l.117-.198c.151-.255.326-.54.546-.848.528-.739 1.201-.925 1.746-.896q.19.012.348.048c.062-.172.142-.38.238-.608.261-.619.658-1.419 1.187-2.069 2.176-2.67 6.18-6.206 9.117-8.104a.5.5 0 0 1 .596.04M4.705 11.912a1.2 1.2 0 0 0-.419-.1c-.246-.013-.573.05-.879.479-.197.275-.355.532-.5.777l-.105.177c-.106.181-.213.362-.32.528a3.4 3.4 0 0 1-.76.861c.69.112 1.736.111 2.657-.12.559-.139.843-.569.993-1.06a3 3 0 0 0 .126-.75zm1.44.026c.12-.04.277-.1.458-.183a5.1 5.1 0 0 0 1.535-1.1c1.9-1.996 4.412-5.57 6.052-8.631-2.59 1.927-5.566 4.66-7.302 6.792-.442.543-.795 1.243-1.042 1.826-.121.288-.214.54-.275.72v.001l.575.575zm-4.973 3.04.007-.005zm3.582-3.043.002.001h-.002z\"},\"child\":[]}]})(props);\n};\nexport function BsBucketFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2.522 5H2a.5.5 0 0 0-.494.574l1.372 9.149A1.5 1.5 0 0 0 4.36 16h7.278a1.5 1.5 0 0 0 1.483-1.277l1.373-9.149A.5.5 0 0 0 14 5h-.522A5.5 5.5 0 0 0 2.522 5m1.005 0a4.5 4.5 0 0 1 8.945 0z\"},\"child\":[]}]})(props);\n};\nexport function BsBucket (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2.522 5H2a.5.5 0 0 0-.494.574l1.372 9.149A1.5 1.5 0 0 0 4.36 16h7.278a1.5 1.5 0 0 0 1.483-1.277l1.373-9.149A.5.5 0 0 0 14 5h-.522A5.5 5.5 0 0 0 2.522 5m1.005 0a4.5 4.5 0 0 1 8.945 0zm9.892 1-1.286 8.574a.5.5 0 0 1-.494.426H4.36a.5.5 0 0 1-.494-.426L2.58 6h10.838z\"},\"child\":[]}]})(props);\n};\nexport function BsBugFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4.978.855a.5.5 0 1 0-.956.29l.41 1.352A5 5 0 0 0 3 6h10a5 5 0 0 0-1.432-3.503l.41-1.352a.5.5 0 1 0-.956-.29l-.291.956A5 5 0 0 0 8 1a5 5 0 0 0-2.731.811l-.29-.956z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M13 6v1H8.5v8.975A5 5 0 0 0 13 11h.5a.5.5 0 0 1 .5.5v.5a.5.5 0 1 0 1 0v-.5a1.5 1.5 0 0 0-1.5-1.5H13V9h1.5a.5.5 0 0 0 0-1H13V7h.5A1.5 1.5 0 0 0 15 5.5V5a.5.5 0 0 0-1 0v.5a.5.5 0 0 1-.5.5zm-5.5 9.975V7H3V6h-.5a.5.5 0 0 1-.5-.5V5a.5.5 0 0 0-1 0v.5A1.5 1.5 0 0 0 2.5 7H3v1H1.5a.5.5 0 0 0 0 1H3v1h-.5A1.5 1.5 0 0 0 1 11.5v.5a.5.5 0 1 0 1 0v-.5a.5.5 0 0 1 .5-.5H3a5 5 0 0 0 4.5 4.975\"},\"child\":[]}]})(props);\n};\nexport function BsBug (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4.355.522a.5.5 0 0 1 .623.333l.291.956A5 5 0 0 1 8 1c1.007 0 1.946.298 2.731.811l.29-.956a.5.5 0 1 1 .957.29l-.41 1.352A5 5 0 0 1 13 6h.5a.5.5 0 0 0 .5-.5V5a.5.5 0 0 1 1 0v.5A1.5 1.5 0 0 1 13.5 7H13v1h1.5a.5.5 0 0 1 0 1H13v1h.5a1.5 1.5 0 0 1 1.5 1.5v.5a.5.5 0 1 1-1 0v-.5a.5.5 0 0 0-.5-.5H13a5 5 0 0 1-10 0h-.5a.5.5 0 0 0-.5.5v.5a.5.5 0 1 1-1 0v-.5A1.5 1.5 0 0 1 2.5 10H3V9H1.5a.5.5 0 0 1 0-1H3V7h-.5A1.5 1.5 0 0 1 1 5.5V5a.5.5 0 0 1 1 0v.5a.5.5 0 0 0 .5.5H3c0-1.364.547-2.601 1.432-3.503l-.41-1.352a.5.5 0 0 1 .333-.623M4 7v4a4 4 0 0 0 3.5 3.97V7zm4.5 0v7.97A4 4 0 0 0 12 11V7zM12 6a4 4 0 0 0-1.334-2.982A3.98 3.98 0 0 0 8 2a3.98 3.98 0 0 0-2.667 1.018A4 4 0 0 0 4 6z\"},\"child\":[]}]})(props);\n};\nexport function BsBuildingAdd (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12.5 16a3.5 3.5 0 1 0 0-7 3.5 3.5 0 0 0 0 7m.5-5v1h1a.5.5 0 0 1 0 1h-1v1a.5.5 0 0 1-1 0v-1h-1a.5.5 0 0 1 0-1h1v-1a.5.5 0 0 1 1 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 1a1 1 0 0 1 1-1h10a1 1 0 0 1 1 1v6.5a.5.5 0 0 1-1 0V1H3v14h3v-2.5a.5.5 0 0 1 .5-.5H8v4H3a1 1 0 0 1-1-1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4.5 2a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm3 0a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm3 0a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm-6 3a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm3 0a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm3 0a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm-6 3a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm3 0a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5z\"},\"child\":[]}]})(props);\n};\nexport function BsBuildingCheck (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12.5 16a3.5 3.5 0 1 0 0-7 3.5 3.5 0 0 0 0 7m1.679-4.493-1.335 2.226a.75.75 0 0 1-1.174.144l-.774-.773a.5.5 0 0 1 .708-.708l.547.548 1.17-1.951a.5.5 0 1 1 .858.514\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 1a1 1 0 0 1 1-1h10a1 1 0 0 1 1 1v6.5a.5.5 0 0 1-1 0V1H3v14h3v-2.5a.5.5 0 0 1 .5-.5H8v4H3a1 1 0 0 1-1-1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4.5 2a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm3 0a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm3 0a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm-6 3a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm3 0a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm3 0a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm-6 3a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm3 0a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5z\"},\"child\":[]}]})(props);\n};\nexport function BsBuildingDash (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12.5 16a3.5 3.5 0 1 0 0-7 3.5 3.5 0 0 0 0 7M11 12h3a.5.5 0 0 1 0 1h-3a.5.5 0 0 1 0-1\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 1a1 1 0 0 1 1-1h10a1 1 0 0 1 1 1v6.5a.5.5 0 0 1-1 0V1H3v14h3v-2.5a.5.5 0 0 1 .5-.5H8v4H3a1 1 0 0 1-1-1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4.5 2a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm3 0a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm3 0a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm-6 3a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm3 0a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm3 0a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm-6 3a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm3 0a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5z\"},\"child\":[]}]})(props);\n};\nexport function BsBuildingDown (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12.5 9a3.5 3.5 0 1 1 0 7 3.5 3.5 0 0 1 0-7m.354 5.854 1.5-1.5a.5.5 0 0 0-.708-.708l-.646.647V10.5a.5.5 0 0 0-1 0v2.793l-.646-.647a.5.5 0 0 0-.708.708l1.5 1.5a.5.5 0 0 0 .708 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 1a1 1 0 0 1 1-1h10a1 1 0 0 1 1 1v6.5a.5.5 0 0 1-1 0V1H3v14h3v-2.5a.5.5 0 0 1 .5-.5H8v4H3a1 1 0 0 1-1-1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4.5 2a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm3 0a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm3 0a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm-6 3a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm3 0a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm3 0a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm-6 3a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm3 0a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5z\"},\"child\":[]}]})(props);\n};\nexport function BsBuildingExclamation (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 1a1 1 0 0 1 1-1h10a1 1 0 0 1 1 1v6.5a.5.5 0 0 1-1 0V1H3v14h3v-2.5a.5.5 0 0 1 .5-.5H8v4H3a1 1 0 0 1-1-1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4.5 2a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm3 0a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm3 0a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm-6 3a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm3 0a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm3 0a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm-6 3a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm3 0a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm8.5 4.5a3.5 3.5 0 1 1-7 0 3.5 3.5 0 0 1 7 0m-3.5-2a.5.5 0 0 0-.5.5v1.5a.5.5 0 0 0 1 0V11a.5.5 0 0 0-.5-.5m0 4a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1\"},\"child\":[]}]})(props);\n};\nexport function BsBuildingFillAdd (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12.5 16a3.5 3.5 0 1 0 0-7 3.5 3.5 0 0 0 0 7m.5-5v1h1a.5.5 0 0 1 0 1h-1v1a.5.5 0 0 1-1 0v-1h-1a.5.5 0 0 1 0-1h1v-1a.5.5 0 0 1 1 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 1a1 1 0 0 1 1-1h10a1 1 0 0 1 1 1v7.256A4.5 4.5 0 0 0 12.5 8a4.5 4.5 0 0 0-3.59 1.787A.5.5 0 0 0 9 9.5v-1a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .39-.187A4.5 4.5 0 0 0 8.027 12H6.5a.5.5 0 0 0-.5.5V16H3a1 1 0 0 1-1-1zm2 1.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5m3 0v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5m3.5-.5a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zM4 5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5M7.5 5a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm2.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5M4.5 8a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5z\"},\"child\":[]}]})(props);\n};\nexport function BsBuildingFillCheck (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12.5 16a3.5 3.5 0 1 0 0-7 3.5 3.5 0 0 0 0 7m1.679-4.493-1.335 2.226a.75.75 0 0 1-1.174.144l-.774-.773a.5.5 0 0 1 .708-.708l.547.548 1.17-1.951a.5.5 0 1 1 .858.514\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 1a1 1 0 0 1 1-1h10a1 1 0 0 1 1 1v7.256A4.5 4.5 0 0 0 12.5 8a4.5 4.5 0 0 0-3.59 1.787A.5.5 0 0 0 9 9.5v-1a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .39-.187A4.5 4.5 0 0 0 8.027 12H6.5a.5.5 0 0 0-.5.5V16H3a1 1 0 0 1-1-1zm2 1.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5m3 0v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5m3.5-.5a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zM4 5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5M7.5 5a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm2.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5M4.5 8a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5z\"},\"child\":[]}]})(props);\n};\nexport function BsBuildingFillDash (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12.5 16a3.5 3.5 0 1 0 0-7 3.5 3.5 0 0 0 0 7M11 12h3a.5.5 0 0 1 0 1h-3a.5.5 0 0 1 0-1\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 1a1 1 0 0 1 1-1h10a1 1 0 0 1 1 1v7.256A4.5 4.5 0 0 0 12.5 8a4.5 4.5 0 0 0-3.59 1.787A.5.5 0 0 0 9 9.5v-1a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .39-.187A4.5 4.5 0 0 0 8.027 12H6.5a.5.5 0 0 0-.5.5V16H3a1 1 0 0 1-1-1zm2 1.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5m3 0v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5m3.5-.5a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zM4 5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5M7.5 5a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm2.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5M4.5 8a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5z\"},\"child\":[]}]})(props);\n};\nexport function BsBuildingFillDown (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12.5 9a3.5 3.5 0 1 1 0 7 3.5 3.5 0 0 1 0-7m.354 5.854 1.5-1.5a.5.5 0 0 0-.708-.708l-.646.647V10.5a.5.5 0 0 0-1 0v2.793l-.646-.647a.5.5 0 0 0-.708.708l1.5 1.5a.5.5 0 0 0 .708 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 1a1 1 0 0 1 1-1h10a1 1 0 0 1 1 1v7.256A4.5 4.5 0 0 0 12.5 8a4.5 4.5 0 0 0-3.59 1.787A.5.5 0 0 0 9 9.5v-1a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .39-.187A4.5 4.5 0 0 0 8.027 12H6.5a.5.5 0 0 0-.5.5V16H3a1 1 0 0 1-1-1zm2 1.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5m3 0v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5m3.5-.5a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zM4 5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5M7.5 5a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm2.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5M4.5 8a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5z\"},\"child\":[]}]})(props);\n};\nexport function BsBuildingFillExclamation (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 1a1 1 0 0 1 1-1h10a1 1 0 0 1 1 1v7.256A4.5 4.5 0 0 0 12.5 8a4.5 4.5 0 0 0-3.59 1.787A.5.5 0 0 0 9 9.5v-1a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .39-.187A4.5 4.5 0 0 0 8.027 12H6.5a.5.5 0 0 0-.5.5V16H3a1 1 0 0 1-1-1zm2 1.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5m3 0v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5m3.5-.5a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zM4 5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5M7.5 5a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm2.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5M4.5 8a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M16 12.5a3.5 3.5 0 1 1-7 0 3.5 3.5 0 0 1 7 0m-3.5-2a.5.5 0 0 0-.5.5v1.5a.5.5 0 0 0 1 0V11a.5.5 0 0 0-.5-.5m0 4a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1\"},\"child\":[]}]})(props);\n};\nexport function BsBuildingFillGear (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 1a1 1 0 0 1 1-1h10a1 1 0 0 1 1 1v7.256A4.5 4.5 0 0 0 12.5 8a4.5 4.5 0 0 0-3.59 1.787A.5.5 0 0 0 9 9.5v-1a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .39-.187A4.5 4.5 0 0 0 8.027 12H6.5a.5.5 0 0 0-.5.5V16H3a1 1 0 0 1-1-1zm2 1.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5m3 0v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5m3.5-.5a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zM4 5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5M7.5 5a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm2.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5M4.5 8a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M11.886 9.46c.18-.613 1.048-.613 1.229 0l.043.148a.64.64 0 0 0 .921.382l.136-.074c.561-.306 1.175.308.87.869l-.075.136a.64.64 0 0 0 .382.92l.149.045c.612.18.612 1.048 0 1.229l-.15.043a.64.64 0 0 0-.38.921l.074.136c.305.561-.309 1.175-.87.87l-.136-.075a.64.64 0 0 0-.92.382l-.045.149c-.18.612-1.048.612-1.229 0l-.043-.15a.64.64 0 0 0-.921-.38l-.136.074c-.561.305-1.175-.309-.87-.87l.075-.136a.64.64 0 0 0-.382-.92l-.148-.045c-.613-.18-.613-1.048 0-1.229l.148-.043a.64.64 0 0 0 .382-.921l-.074-.136c-.306-.561.308-1.175.869-.87l.136.075a.64.64 0 0 0 .92-.382zM14 12.5a1.5 1.5 0 1 0-3 0 1.5 1.5 0 0 0 3 0\"},\"child\":[]}]})(props);\n};\nexport function BsBuildingFillLock (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 1a1 1 0 0 1 1-1h10a1 1 0 0 1 1 1v7.764a3 3 0 0 0-4.989 2.497 2 2 0 0 0-.743.739H6.5a.5.5 0 0 0-.5.5V16H3a1 1 0 0 1-1-1zm2 1.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5m3 0v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5m3.5-.5a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zM4 5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5M7.5 5a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm2.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5M4.5 8a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm2.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M9 13a1 1 0 0 1 1-1v-1a2 2 0 1 1 4 0v1a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1h-4a1 1 0 0 1-1-1zm3-3a1 1 0 0 0-1 1v1h2v-1a1 1 0 0 0-1-1\"},\"child\":[]}]})(props);\n};\nexport function BsBuildingFillSlash (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M13.879 10.414a2.501 2.501 0 0 0-3.465 3.465zm.707.707-3.465 3.465a2.501 2.501 0 0 0 3.465-3.465m-4.56-1.096a3.5 3.5 0 1 1 4.949 4.95 3.5 3.5 0 0 1-4.95-4.95Z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 1a1 1 0 0 1 1-1h10a1 1 0 0 1 1 1v7.256A4.5 4.5 0 0 0 12.5 8a4.5 4.5 0 0 0-3.59 1.787A.5.5 0 0 0 9 9.5v-1a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .39-.187A4.5 4.5 0 0 0 8.027 12H6.5a.5.5 0 0 0-.5.5V16H3a1 1 0 0 1-1-1zm2 1.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5m3 0v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5m3.5-.5a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zM4 5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5M7.5 5a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm2.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5M4.5 8a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5z\"},\"child\":[]}]})(props);\n};\nexport function BsBuildingFillUp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12.5 16a3.5 3.5 0 1 0 0-7 3.5 3.5 0 0 0 0 7m.354-5.854 1.5 1.5a.5.5 0 0 1-.708.708L13 11.707V14.5a.5.5 0 0 1-1 0v-2.793l-.646.647a.5.5 0 0 1-.708-.708l1.5-1.5a.5.5 0 0 1 .708 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 1a1 1 0 0 1 1-1h10a1 1 0 0 1 1 1v7.256A4.5 4.5 0 0 0 12.5 8a4.5 4.5 0 0 0-3.59 1.787A.5.5 0 0 0 9 9.5v-1a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .39-.187A4.5 4.5 0 0 0 8.027 12H6.5a.5.5 0 0 0-.5.5V16H3a1 1 0 0 1-1-1zm2 1.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5m3 0v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5m3.5-.5a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zM4 5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5M7.5 5a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm2.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5M4.5 8a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5z\"},\"child\":[]}]})(props);\n};\nexport function BsBuildingFillX (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 1a1 1 0 0 1 1-1h10a1 1 0 0 1 1 1v7.256A4.5 4.5 0 0 0 12.5 8a4.5 4.5 0 0 0-3.59 1.787A.5.5 0 0 0 9 9.5v-1a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .39-.187A4.5 4.5 0 0 0 8.027 12H6.5a.5.5 0 0 0-.5.5V16H3a1 1 0 0 1-1-1zm2 1.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5m3 0v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5m3.5-.5a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zM4 5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5M7.5 5a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm2.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5M4.5 8a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M12.5 16a3.5 3.5 0 1 0 0-7 3.5 3.5 0 0 0 0 7m-.646-4.854.646.647.646-.647a.5.5 0 0 1 .708.708l-.647.646.647.646a.5.5 0 0 1-.708.708l-.646-.647-.646.647a.5.5 0 0 1-.708-.708l.647-.646-.647-.646a.5.5 0 0 1 .708-.708\"},\"child\":[]}]})(props);\n};\nexport function BsBuildingFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3 0a1 1 0 0 0-1 1v14a1 1 0 0 0 1 1h3v-3.5a.5.5 0 0 1 .5-.5h3a.5.5 0 0 1 .5.5V16h3a1 1 0 0 0 1-1V1a1 1 0 0 0-1-1zm1 2.5a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5zm3 0a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5zm3.5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5M4 5.5a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5zM7.5 5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5m2.5.5a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5zM4.5 8h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5m2.5.5a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5zm3.5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsBuildingGear (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 1a1 1 0 0 1 1-1h10a1 1 0 0 1 1 1v6.5a.5.5 0 0 1-1 0V1H3v14h3v-2.5a.5.5 0 0 1 .5-.5H8v4H3a1 1 0 0 1-1-1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4.5 2a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm3 0a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm3 0a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm-6 3a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm3 0a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm3 0a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm-6 3a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm3 0a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm4.386 1.46c.18-.613 1.048-.613 1.229 0l.043.148a.64.64 0 0 0 .921.382l.136-.074c.561-.306 1.175.308.87.869l-.075.136a.64.64 0 0 0 .382.92l.149.045c.612.18.612 1.048 0 1.229l-.15.043a.64.64 0 0 0-.38.921l.074.136c.305.561-.309 1.175-.87.87l-.136-.075a.64.64 0 0 0-.92.382l-.045.149c-.18.612-1.048.612-1.229 0l-.043-.15a.64.64 0 0 0-.921-.38l-.136.074c-.561.305-1.175-.309-.87-.87l.075-.136a.64.64 0 0 0-.382-.92l-.148-.045c-.613-.18-.613-1.048 0-1.229l.148-.043a.64.64 0 0 0 .382-.921l-.074-.136c-.306-.561.308-1.175.869-.87l.136.075a.64.64 0 0 0 .92-.382zM14 12.5a1.5 1.5 0 1 0-3 0 1.5 1.5 0 0 0 3 0\"},\"child\":[]}]})(props);\n};\nexport function BsBuildingLock (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 1a1 1 0 0 1 1-1h10a1 1 0 0 1 1 1v6.5a.5.5 0 0 1-1 0V1H3v14h3v-2.5a.5.5 0 0 1 .5-.5H8v4H3a1 1 0 0 1-1-1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4.5 2a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm2.5.5a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5zm3.5-.5a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zM4 5.5a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5zM7.5 5a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm2.5.5a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5zM4.5 8a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm2.5.5a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5zM9 13a1 1 0 0 1 1-1v-1a2 2 0 1 1 4 0v1a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1h-4a1 1 0 0 1-1-1zm3-3a1 1 0 0 0-1 1v1h2v-1a1 1 0 0 0-1-1\"},\"child\":[]}]})(props);\n};\nexport function BsBuildingSlash (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M13.879 10.414a2.501 2.501 0 0 0-3.465 3.465zm.707.707-3.465 3.465a2.501 2.501 0 0 0 3.465-3.465m-4.56-1.096a3.5 3.5 0 1 1 4.949 4.95 3.5 3.5 0 0 1-4.95-4.95Z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 1a1 1 0 0 1 1-1h10a1 1 0 0 1 1 1v6.5a.5.5 0 0 1-1 0V1H3v14h3v-2.5a.5.5 0 0 1 .5-.5H8v4H3a1 1 0 0 1-1-1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4.5 2a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm3 0a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm3 0a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm-6 3a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm3 0a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm3 0a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm-6 3a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm3 0a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5z\"},\"child\":[]}]})(props);\n};\nexport function BsBuildingUp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12.5 16a3.5 3.5 0 1 0 0-7 3.5 3.5 0 0 0 0 7m.354-5.854 1.5 1.5a.5.5 0 0 1-.708.708L13 11.707V14.5a.5.5 0 0 1-1 0v-2.793l-.646.647a.5.5 0 0 1-.708-.708l1.5-1.5a.5.5 0 0 1 .708 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 1a1 1 0 0 1 1-1h10a1 1 0 0 1 1 1v6.5a.5.5 0 0 1-1 0V1H3v14h3v-2.5a.5.5 0 0 1 .5-.5H8v4H3a1 1 0 0 1-1-1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4.5 2a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm3 0a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm3 0a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm-6 3a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm3 0a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm3 0a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm-6 3a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm3 0a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5z\"},\"child\":[]}]})(props);\n};\nexport function BsBuildingX (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 1a1 1 0 0 1 1-1h10a1 1 0 0 1 1 1v6.5a.5.5 0 0 1-1 0V1H3v14h3v-2.5a.5.5 0 0 1 .5-.5H8v4H3a1 1 0 0 1-1-1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4.5 2a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm3 0a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm3 0a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm-6 3a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm3 0a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm3 0a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm-6 3a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm3 0a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm5 8a3.5 3.5 0 1 0 0-7 3.5 3.5 0 0 0 0 7m-.646-4.854.646.647.646-.647a.5.5 0 0 1 .708.708l-.647.646.647.646a.5.5 0 0 1-.708.708l-.646-.647-.646.647a.5.5 0 0 1-.708-.708l.647-.646-.647-.646a.5.5 0 0 1 .708-.708\"},\"child\":[]}]})(props);\n};\nexport function BsBuilding (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4 2.5a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5zm3 0a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5zm3.5-.5a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zM4 5.5a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5zM7.5 5a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm2.5.5a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5zM4.5 8a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm2.5.5a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5zm3.5-.5a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 1a1 1 0 0 1 1-1h10a1 1 0 0 1 1 1v14a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1zm11 0H3v14h3v-2.5a.5.5 0 0 1 .5-.5h3a.5.5 0 0 1 .5.5V15h3z\"},\"child\":[]}]})(props);\n};\nexport function BsBuildingsFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M15 .5a.5.5 0 0 0-.724-.447l-8 4A.5.5 0 0 0 6 4.5v3.14L.342 9.526A.5.5 0 0 0 0 10v5.5a.5.5 0 0 0 .5.5h9a.5.5 0 0 0 .5-.5V14h1v1.5a.5.5 0 0 0 .5.5h3a.5.5 0 0 0 .5-.5zM2 11h1v1H2zm2 0h1v1H4zm-1 2v1H2v-1zm1 0h1v1H4zm9-10v1h-1V3zM8 5h1v1H8zm1 2v1H8V7zM8 9h1v1H8zm2 0h1v1h-1zm-1 2v1H8v-1zm1 0h1v1h-1zm3-2v1h-1V9zm-1 2h1v1h-1zm-2-4h1v1h-1zm3 0v1h-1V7zm-2-2v1h-1V5zm1 0h1v1h-1z\"},\"child\":[]}]})(props);\n};\nexport function BsBuildings (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M14.763.075A.5.5 0 0 1 15 .5v15a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5V14h-1v1.5a.5.5 0 0 1-.5.5h-9a.5.5 0 0 1-.5-.5V10a.5.5 0 0 1 .342-.474L6 7.64V4.5a.5.5 0 0 1 .276-.447l8-4a.5.5 0 0 1 .487.022M6 8.694 1 10.36V15h5zM7 15h2v-1.5a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 .5.5V15h2V1.309l-7 3.5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 11h1v1H2zm2 0h1v1H4zm-2 2h1v1H2zm2 0h1v1H4zm4-4h1v1H8zm2 0h1v1h-1zm-2 2h1v1H8zm2 0h1v1h-1zm2-2h1v1h-1zm0 2h1v1h-1zM8 7h1v1H8zm2 0h1v1h-1zm2 0h1v1h-1zM8 5h1v1H8zm2 0h1v1h-1zm2 0h1v1h-1zm0-2h1v1h-1z\"},\"child\":[]}]})(props);\n};\nexport function BsBullseye (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14m0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8 13A5 5 0 1 1 8 3a5 5 0 0 1 0 10m0 1A6 6 0 1 0 8 2a6 6 0 0 0 0 12\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8 11a3 3 0 1 1 0-6 3 3 0 0 1 0 6m0 1a4 4 0 1 0 0-8 4 4 0 0 0 0 8\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M9.5 8a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0\"},\"child\":[]}]})(props);\n};\nexport function BsBusFrontFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 7a1 1 0 0 1-1 1v3.5c0 .818-.393 1.544-1 2v2a.5.5 0 0 1-.5.5h-2a.5.5 0 0 1-.5-.5V14H5v1.5a.5.5 0 0 1-.5.5h-2a.5.5 0 0 1-.5-.5v-2a2.5 2.5 0 0 1-1-2V8a1 1 0 0 1-1-1V5a1 1 0 0 1 1-1V2.64C1 1.452 1.845.408 3.064.268A44 44 0 0 1 8 0c2.1 0 3.792.136 4.936.268C14.155.408 15 1.452 15 2.64V4a1 1 0 0 1 1 1zM3.552 3.22A43 43 0 0 1 8 3c1.837 0 3.353.107 4.448.22a.5.5 0 0 0 .104-.994A44 44 0 0 0 8 2c-1.876 0-3.426.109-4.552.226a.5.5 0 1 0 .104.994M8 4c-1.876 0-3.426.109-4.552.226A.5.5 0 0 0 3 4.723v3.554a.5.5 0 0 0 .448.497C4.574 8.891 6.124 9 8 9s3.426-.109 4.552-.226A.5.5 0 0 0 13 8.277V4.723a.5.5 0 0 0-.448-.497A44 44 0 0 0 8 4m-3 7a1 1 0 1 0-2 0 1 1 0 0 0 2 0m8 0a1 1 0 1 0-2 0 1 1 0 0 0 2 0m-7 0a1 1 0 0 0 1 1h2a1 1 0 1 0 0-2H7a1 1 0 0 0-1 1\"},\"child\":[]}]})(props);\n};\nexport function BsBusFront (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5 11a1 1 0 1 1-2 0 1 1 0 0 1 2 0m8 0a1 1 0 1 1-2 0 1 1 0 0 1 2 0m-6-1a1 1 0 1 0 0 2h2a1 1 0 1 0 0-2zm1-6c-1.876 0-3.426.109-4.552.226A.5.5 0 0 0 3 4.723v3.554a.5.5 0 0 0 .448.497C4.574 8.891 6.124 9 8 9s3.426-.109 4.552-.226A.5.5 0 0 0 13 8.277V4.723a.5.5 0 0 0-.448-.497A44 44 0 0 0 8 4m0-1c-1.837 0-3.353.107-4.448.22a.5.5 0 1 1-.104-.994A44 44 0 0 1 8 2c1.876 0 3.426.109 4.552.226a.5.5 0 1 1-.104.994A43 43 0 0 0 8 3\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M15 8a1 1 0 0 0 1-1V5a1 1 0 0 0-1-1V2.64c0-1.188-.845-2.232-2.064-2.372A44 44 0 0 0 8 0C5.9 0 4.208.136 3.064.268 1.845.408 1 1.452 1 2.64V4a1 1 0 0 0-1 1v2a1 1 0 0 0 1 1v3.5c0 .818.393 1.544 1 2v2a.5.5 0 0 0 .5.5h2a.5.5 0 0 0 .5-.5V14h6v1.5a.5.5 0 0 0 .5.5h2a.5.5 0 0 0 .5-.5v-2c.607-.456 1-1.182 1-2zM8 1c2.056 0 3.71.134 4.822.261.676.078 1.178.66 1.178 1.379v8.86a1.5 1.5 0 0 1-1.5 1.5h-9A1.5 1.5 0 0 1 2 11.5V2.64c0-.72.502-1.301 1.178-1.379A43 43 0 0 1 8 1\"},\"child\":[]}]})(props);\n};\nexport function BsCCircleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0M8.146 4.992c.961 0 1.641.633 1.729 1.512h1.295v-.088c-.094-1.518-1.348-2.572-3.03-2.572-2.068 0-3.269 1.377-3.269 3.638v1.073c0 2.267 1.178 3.603 3.27 3.603 1.675 0 2.93-1.02 3.029-2.467v-.093H9.875c-.088.832-.75 1.418-1.729 1.418-1.224 0-1.927-.891-1.927-2.461v-1.06c0-1.583.715-2.503 1.927-2.503\"},\"child\":[]}]})(props);\n};\nexport function BsCCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M1 8a7 7 0 1 0 14 0A7 7 0 0 0 1 8m15 0A8 8 0 1 1 0 8a8 8 0 0 1 16 0M8.146 4.992c-1.212 0-1.927.92-1.927 2.502v1.06c0 1.571.703 2.462 1.927 2.462.979 0 1.641-.586 1.729-1.418h1.295v.093c-.1 1.448-1.354 2.467-3.03 2.467-2.091 0-3.269-1.336-3.269-3.603V7.482c0-2.261 1.201-3.638 3.27-3.638 1.681 0 2.935 1.054 3.029 2.572v.088H9.875c-.088-.879-.768-1.512-1.729-1.512\"},\"child\":[]}]})(props);\n};\nexport function BsCSquareFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm6.146 4.992c-1.212 0-1.927.92-1.927 2.502v1.06c0 1.571.703 2.462 1.927 2.462.979 0 1.641-.586 1.729-1.418h1.295v.093c-.1 1.448-1.354 2.467-3.03 2.467-2.091 0-3.269-1.336-3.269-3.603V7.482c0-2.261 1.201-3.638 3.27-3.638 1.681 0 2.935 1.054 3.029 2.572v.088H9.875c-.088-.879-.768-1.512-1.729-1.512\"},\"child\":[]}]})(props);\n};\nexport function BsCSquare (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.146 4.992c-1.212 0-1.927.92-1.927 2.502v1.06c0 1.571.703 2.462 1.927 2.462.979 0 1.641-.586 1.729-1.418h1.295v.093c-.1 1.448-1.354 2.467-3.03 2.467-2.091 0-3.269-1.336-3.269-3.603V7.482c0-2.261 1.201-3.638 3.27-3.638 1.681 0 2.935 1.054 3.029 2.572v.088H9.875c-.088-.879-.768-1.512-1.729-1.512\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M0 2a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm15 0a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsCakeFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m7.399.804.595-.792.598.79A.747.747 0 0 1 8.5 1.806V4H11a2 2 0 0 1 2 2v3h1a2 2 0 0 1 2 2v4a1 1 0 0 1-1 1H1a1 1 0 0 1-1-1v-4a2 2 0 0 1 2-2h1V6a2 2 0 0 1 2-2h2.5V1.813a.747.747 0 0 1-.101-1.01ZM12 6.414a.9.9 0 0 1-.646-.268 1.914 1.914 0 0 0-2.708 0 .914.914 0 0 1-1.292 0 1.914 1.914 0 0 0-2.708 0A.9.9 0 0 1 4 6.414v1c.49 0 .98-.187 1.354-.56a.914.914 0 0 1 1.292 0c.748.747 1.96.747 2.708 0a.914.914 0 0 1 1.292 0c.374.373.864.56 1.354.56zm2.646 5.732a.914.914 0 0 1-1.293 0 1.914 1.914 0 0 0-2.707 0 .914.914 0 0 1-1.292 0 1.914 1.914 0 0 0-2.708 0 .914.914 0 0 1-1.292 0 1.914 1.914 0 0 0-2.708 0 .914.914 0 0 1-1.292 0L1 11.793v1.34c.737.452 1.715.36 2.354-.28a.914.914 0 0 1 1.292 0c.748.748 1.96.748 2.708 0a.914.914 0 0 1 1.292 0c.748.748 1.96.748 2.707 0a.914.914 0 0 1 1.293 0 1.915 1.915 0 0 0 2.354.28v-1.34z\"},\"child\":[]}]})(props);\n};\nexport function BsCake (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m7.994.013-.595.79a.747.747 0 0 0 .101 1.01V4H5a2 2 0 0 0-2 2v3H2a2 2 0 0 0-2 2v4a1 1 0 0 0 1 1h14a1 1 0 0 0 1-1v-4a2 2 0 0 0-2-2h-1V6a2 2 0 0 0-2-2H8.5V1.806A.747.747 0 0 0 8.592.802zM4 6a1 1 0 0 1 1-1h6a1 1 0 0 1 1 1v.414a.9.9 0 0 1-.646-.268 1.914 1.914 0 0 0-2.708 0 .914.914 0 0 1-1.292 0 1.914 1.914 0 0 0-2.708 0A.9.9 0 0 1 4 6.414zm0 1.414c.49 0 .98-.187 1.354-.56a.914.914 0 0 1 1.292 0c.748.747 1.96.747 2.708 0a.914.914 0 0 1 1.292 0c.374.373.864.56 1.354.56V9H4zM1 11a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1v.793l-.354.354a.914.914 0 0 1-1.293 0 1.914 1.914 0 0 0-2.707 0 .914.914 0 0 1-1.292 0 1.914 1.914 0 0 0-2.708 0 .914.914 0 0 1-1.292 0 1.914 1.914 0 0 0-2.708 0 .914.914 0 0 1-1.292 0L1 11.793zm11.646 1.854a1.915 1.915 0 0 0 2.354.279V15H1v-1.867c.737.452 1.715.36 2.354-.28a.914.914 0 0 1 1.292 0c.748.748 1.96.748 2.708 0a.914.914 0 0 1 1.292 0c.748.748 1.96.748 2.707 0a.914.914 0 0 1 1.293 0Z\"},\"child\":[]}]})(props);\n};\nexport function BsCake2Fill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m2.899.804.595-.792.598.79A.747.747 0 0 1 4 1.806v4.886q-.532-.09-1-.201V1.813a.747.747 0 0 1-.1-1.01ZM13 1.806v4.685a15 15 0 0 1-1 .201v-4.88a.747.747 0 0 1-.1-1.007l.595-.792.598.79A.746.746 0 0 1 13 1.806m-3 0a.746.746 0 0 0 .092-1.004l-.598-.79-.595.792A.747.747 0 0 0 9 1.813v5.17q.512-.02 1-.055zm-3 0v5.176q-.512-.018-1-.054V1.813a.747.747 0 0 1-.1-1.01l.595-.79.598.789A.747.747 0 0 1 7 1.806\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4.5 6.988V4.226a23 23 0 0 1 1-.114V7.16c0 .131.101.24.232.25l.231.017q.498.037 1.02.055l.258.01a.25.25 0 0 0 .26-.25V4.003a29 29 0 0 1 1 0V7.24a.25.25 0 0 0 .258.25l.259-.009q.52-.018 1.019-.055l.231-.017a.25.25 0 0 0 .232-.25V4.112q.518.047 1 .114v2.762a.25.25 0 0 0 .292.246l.291-.049q.547-.091 1.033-.208l.192-.046a.25.25 0 0 0 .192-.243V4.621c.672.184 1.251.409 1.677.678.415.261.823.655.823 1.2V13.5c0 .546-.408.94-.823 1.201-.44.278-1.043.51-1.745.696-1.41.376-3.33.603-5.432.603s-4.022-.227-5.432-.603c-.702-.187-1.305-.418-1.745-.696C.408 14.44 0 14.046 0 13.5v-7c0-.546.408-.94.823-1.201.426-.269 1.005-.494 1.677-.678v2.067c0 .116.08.216.192.243l.192.046q.486.116 1.033.208l.292.05a.25.25 0 0 0 .291-.247M1 8.82v1.659a1.935 1.935 0 0 0 2.298.43.935.935 0 0 1 1.08.175l.348.349a2 2 0 0 0 2.615.185l.059-.044a1 1 0 0 1 1.2 0l.06.044a2 2 0 0 0 2.613-.185l.348-.348a.94.94 0 0 1 1.082-.175c.781.39 1.718.208 2.297-.426V8.833l-.68.907a.94.94 0 0 1-1.17.276 1.94 1.94 0 0 0-2.236.363l-.348.348a1 1 0 0 1-1.307.092l-.06-.044a2 2 0 0 0-2.399 0l-.06.044a1 1 0 0 1-1.306-.092l-.35-.35a1.935 1.935 0 0 0-2.233-.362.935.935 0 0 1-1.168-.277z\"},\"child\":[]}]})(props);\n};\nexport function BsCake2 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m3.494.013-.595.79A.747.747 0 0 0 3 1.814v2.683q-.224.051-.432.107c-.702.187-1.305.418-1.745.696C.408 5.56 0 5.954 0 6.5v7c0 .546.408.94.823 1.201.44.278 1.043.51 1.745.696C3.978 15.773 5.898 16 8 16s4.022-.227 5.432-.603c.701-.187 1.305-.418 1.745-.696.415-.261.823-.655.823-1.201v-7c0-.546-.408-.94-.823-1.201-.44-.278-1.043-.51-1.745-.696A12 12 0 0 0 13 4.496v-2.69a.747.747 0 0 0 .092-1.004l-.598-.79-.595.792A.747.747 0 0 0 12 1.813V4.3a22 22 0 0 0-2-.23V1.806a.747.747 0 0 0 .092-1.004l-.598-.79-.595.792A.747.747 0 0 0 9 1.813v2.204a29 29 0 0 0-2 0V1.806A.747.747 0 0 0 7.092.802l-.598-.79-.595.792A.747.747 0 0 0 6 1.813V4.07c-.71.05-1.383.129-2 .23V1.806A.747.747 0 0 0 4.092.802zm-.668 5.556L3 5.524v.967q.468.111 1 .201V5.315a21 21 0 0 1 2-.242v1.855q.488.036 1 .054V5.018a28 28 0 0 1 2 0v1.964q.512-.018 1-.054V5.073c.72.054 1.393.137 2 .242v1.377q.532-.09 1-.201v-.967l.175.045c.655.175 1.15.374 1.469.575.344.217.356.35.356.356s-.012.139-.356.356c-.319.2-.814.4-1.47.575C11.87 7.78 10.041 8 8 8c-2.04 0-3.87-.221-5.174-.569-.656-.175-1.151-.374-1.47-.575C1.012 6.639 1 6.506 1 6.5s.012-.139.356-.356c.319-.2.814-.4 1.47-.575M15 7.806v1.027l-.68.907a.94.94 0 0 1-1.17.276 1.94 1.94 0 0 0-2.236.363l-.348.348a1 1 0 0 1-1.307.092l-.06-.044a2 2 0 0 0-2.399 0l-.06.044a1 1 0 0 1-1.306-.092l-.35-.35a1.935 1.935 0 0 0-2.233-.362.935.935 0 0 1-1.168-.277L1 8.82V7.806c.42.232.956.428 1.568.591C3.978 8.773 5.898 9 8 9s4.022-.227 5.432-.603c.612-.163 1.149-.36 1.568-.591m0 2.679V13.5c0 .006-.012.139-.356.355-.319.202-.814.401-1.47.576C11.87 14.78 10.041 15 8 15c-2.04 0-3.87-.221-5.174-.569-.656-.175-1.151-.374-1.47-.575-.344-.217-.356-.35-.356-.356v-3.02a1.935 1.935 0 0 0 2.298.43.935.935 0 0 1 1.08.175l.348.349a2 2 0 0 0 2.615.185l.059-.044a1 1 0 0 1 1.2 0l.06.044a2 2 0 0 0 2.613-.185l.348-.348a.94.94 0 0 1 1.082-.175c.781.39 1.718.208 2.297-.426\"},\"child\":[]}]})(props);\n};\nexport function BsCalculatorFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 2a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2zm2 .5v2a.5.5 0 0 0 .5.5h7a.5.5 0 0 0 .5-.5v-2a.5.5 0 0 0-.5-.5h-7a.5.5 0 0 0-.5.5m0 4v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5M4.5 9a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zM4 12.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5M7.5 6a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zM7 9.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5m.5 2.5a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zM10 6.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5m.5 2.5a.5.5 0 0 0-.5.5v4a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-4a.5.5 0 0 0-.5-.5z\"},\"child\":[]}]})(props);\n};\nexport function BsCalculator (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12 1a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1zM4 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4 2.5a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 .5.5v2a.5.5 0 0 1-.5.5h-7a.5.5 0 0 1-.5-.5zm0 4a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5zm0 3a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5zm0 3a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5zm3-6a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5zm0 3a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5zm0 3a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5zm3-6a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5zm0 3a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v4a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5z\"},\"child\":[]}]})(props);\n};\nexport function BsCalendarCheckFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4 .5a.5.5 0 0 0-1 0V1H2a2 2 0 0 0-2 2v1h16V3a2 2 0 0 0-2-2h-1V.5a.5.5 0 0 0-1 0V1H4zM16 14V5H0v9a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2m-5.146-5.146-3 3a.5.5 0 0 1-.708 0l-1.5-1.5a.5.5 0 0 1 .708-.708L7.5 10.793l2.646-2.647a.5.5 0 0 1 .708.708\"},\"child\":[]}]})(props);\n};\nexport function BsCalendarCheck (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M10.854 7.146a.5.5 0 0 1 0 .708l-3 3a.5.5 0 0 1-.708 0l-1.5-1.5a.5.5 0 1 1 .708-.708L7.5 9.793l2.646-2.647a.5.5 0 0 1 .708 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5M1 4v10a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V4z\"},\"child\":[]}]})(props);\n};\nexport function BsCalendarDateFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4 .5a.5.5 0 0 0-1 0V1H2a2 2 0 0 0-2 2v1h16V3a2 2 0 0 0-2-2h-1V.5a.5.5 0 0 0-1 0V1H4zm5.402 9.746c.625 0 1.184-.484 1.184-1.18 0-.832-.527-1.23-1.16-1.23-.586 0-1.168.387-1.168 1.21 0 .817.543 1.2 1.144 1.2\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M16 14V5H0v9a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2m-6.664-1.21c-1.11 0-1.656-.767-1.703-1.407h.683c.043.37.387.82 1.051.82.844 0 1.301-.848 1.305-2.164h-.027c-.153.414-.637.79-1.383.79-.852 0-1.676-.61-1.676-1.77 0-1.137.871-1.809 1.797-1.809 1.172 0 1.953.734 1.953 2.668 0 1.805-.742 2.871-2 2.871zm-2.89-5.435v5.332H5.77V8.079h-.012c-.29.156-.883.52-1.258.777V8.16a13 13 0 0 1 1.313-.805h.632z\"},\"child\":[]}]})(props);\n};\nexport function BsCalendarDate (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.445 11.688V6.354h-.633A13 13 0 0 0 4.5 7.16v.695c.375-.257.969-.62 1.258-.777h.012v4.61zm1.188-1.305c.047.64.594 1.406 1.703 1.406 1.258 0 2-1.066 2-2.871 0-1.934-.781-2.668-1.953-2.668-.926 0-1.797.672-1.797 1.809 0 1.16.824 1.77 1.676 1.77.746 0 1.23-.376 1.383-.79h.027c-.004 1.316-.461 2.164-1.305 2.164-.664 0-1.008-.45-1.05-.82zm2.953-2.317c0 .696-.559 1.18-1.184 1.18-.601 0-1.144-.383-1.144-1.2 0-.823.582-1.21 1.168-1.21.633 0 1.16.398 1.16 1.23\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5M1 4v10a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V4z\"},\"child\":[]}]})(props);\n};\nexport function BsCalendarDayFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4 .5a.5.5 0 0 0-1 0V1H2a2 2 0 0 0-2 2v1h16V3a2 2 0 0 0-2-2h-1V.5a.5.5 0 0 0-1 0V1H4zM16 14a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V5h16zm-4.785-6.145a.428.428 0 1 0 0-.855.426.426 0 0 0-.43.43c0 .238.192.425.43.425m.336.563h-.672v4.105h.672zm-6.867 4.105v-2.3h2.261v-.61H4.684V7.801h2.464v-.61H4v5.332zm3.296 0h.676V9.98c0-.554.227-1.007.953-1.007.125 0 .258.004.329.015v-.613a2 2 0 0 0-.254-.02c-.582 0-.891.32-1.012.567h-.02v-.504H7.98z\"},\"child\":[]}]})(props);\n};\nexport function BsCalendarDay (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4.684 11.523v-2.3h2.261v-.61H4.684V6.801h2.464v-.61H4v5.332zm3.296 0h.676V8.98c0-.554.227-1.007.953-1.007.125 0 .258.004.329.015v-.613a2 2 0 0 0-.254-.02c-.582 0-.891.32-1.012.567h-.02v-.504H7.98zm2.805-5.093c0 .238.192.425.43.425a.428.428 0 1 0 0-.855.426.426 0 0 0-.43.43m.094 5.093h.672V7.418h-.672z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5M1 4v10a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V4z\"},\"child\":[]}]})(props);\n};\nexport function BsCalendarEventFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4 .5a.5.5 0 0 0-1 0V1H2a2 2 0 0 0-2 2v1h16V3a2 2 0 0 0-2-2h-1V.5a.5.5 0 0 0-1 0V1H4zM16 14V5H0v9a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2m-3.5-7h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsCalendarEvent (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M11 6.5a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5M1 4v10a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V4z\"},\"child\":[]}]})(props);\n};\nexport function BsCalendarFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V5h16V4H0V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsCalendarHeartFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4 .5a.5.5 0 0 0-1 0V1H2a2 2 0 0 0-2 2v1h16V3a2 2 0 0 0-2-2h-1V.5a.5.5 0 0 0-1 0V1H4zM16 14V5H0v9a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2M8 7.993c1.664-1.711 5.825 1.283 0 5.132-5.825-3.85-1.664-6.843 0-5.132\"},\"child\":[]}]})(props);\n};\nexport function BsCalendarHeart (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M4 .5a.5.5 0 0 0-1 0V1H2a2 2 0 0 0-2 2v11a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V3a2 2 0 0 0-2-2h-1V.5a.5.5 0 0 0-1 0V1H4zM1 14V4h14v10a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1m7-6.507c1.664-1.711 5.825 1.283 0 5.132-5.825-3.85-1.664-6.843 0-5.132\"},\"child\":[]}]})(props);\n};\nexport function BsCalendarMinusFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4 .5a.5.5 0 0 0-1 0V1H2a2 2 0 0 0-2 2v1h16V3a2 2 0 0 0-2-2h-1V.5a.5.5 0 0 0-1 0V1H4zM16 14V5H0v9a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2M6 10h4a.5.5 0 0 1 0 1H6a.5.5 0 0 1 0-1\"},\"child\":[]}]})(props);\n};\nexport function BsCalendarMinus (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5.5 9.5A.5.5 0 0 1 6 9h4a.5.5 0 0 1 0 1H6a.5.5 0 0 1-.5-.5\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5M1 4v10a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V4z\"},\"child\":[]}]})(props);\n};\nexport function BsCalendarMonthFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4 .5a.5.5 0 0 0-1 0V1H2a2 2 0 0 0-2 2v1h16V3a2 2 0 0 0-2-2h-1V.5a.5.5 0 0 0-1 0V1H4zm.104 7.305L4.9 10.18H3.284l.8-2.375zm9.074 2.297c0-.832-.414-1.36-1.062-1.36-.692 0-1.098.492-1.098 1.36v.253c0 .852.406 1.364 1.098 1.364.671 0 1.062-.516 1.062-1.364z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M16 14V5H0v9a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2M2.56 12.332h-.71L3.748 7h.696l1.898 5.332h-.719l-.539-1.602H3.1zm7.29-4.105v4.105h-.668v-.539h-.027c-.145.324-.532.605-1.188.605-.847 0-1.453-.484-1.453-1.425V8.227h.676v2.554c0 .766.441 1.012.98 1.012.59 0 1.004-.371 1.004-1.023V8.227zm1.273 4.41c.075.332.422.636.985.636.648 0 1.07-.378 1.07-1.023v-.605h-.02c-.163.355-.613.648-1.171.648-.957 0-1.64-.672-1.64-1.902v-.34c0-1.207.675-1.887 1.64-1.887.558 0 1.004.293 1.195.64h.02v-.577h.648v4.03c0 1.052-.816 1.579-1.746 1.579-1.043 0-1.574-.516-1.668-1.2z\"},\"child\":[]}]})(props);\n};\nexport function BsCalendarMonth (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2.56 11.332 3.1 9.73h1.984l.54 1.602h.718L4.444 6h-.696L1.85 11.332zm1.544-4.527L4.9 9.18H3.284l.8-2.375zm5.746.422h-.676V9.77c0 .652-.414 1.023-1.004 1.023-.539 0-.98-.246-.98-1.012V7.227h-.676v2.746c0 .941.606 1.425 1.453 1.425.656 0 1.043-.28 1.188-.605h.027v.539h.668zm2.258 5.046c-.563 0-.91-.304-.985-.636h-.687c.094.683.625 1.199 1.668 1.199.93 0 1.746-.527 1.746-1.578V7.227h-.649v.578h-.019c-.191-.348-.637-.64-1.195-.64-.965 0-1.64.679-1.64 1.886v.34c0 1.23.683 1.902 1.64 1.902.558 0 1.008-.293 1.172-.648h.02v.605c0 .645-.423 1.023-1.071 1.023m.008-4.53c.648 0 1.062.527 1.062 1.359v.253c0 .848-.39 1.364-1.062 1.364-.692 0-1.098-.512-1.098-1.364v-.253c0-.868.406-1.36 1.098-1.36z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5M1 4v10a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V4z\"},\"child\":[]}]})(props);\n};\nexport function BsCalendarPlusFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4 .5a.5.5 0 0 0-1 0V1H2a2 2 0 0 0-2 2v1h16V3a2 2 0 0 0-2-2h-1V.5a.5.5 0 0 0-1 0V1H4zM16 14V5H0v9a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2M8.5 8.5V10H10a.5.5 0 0 1 0 1H8.5v1.5a.5.5 0 0 1-1 0V11H6a.5.5 0 0 1 0-1h1.5V8.5a.5.5 0 0 1 1 0\"},\"child\":[]}]})(props);\n};\nexport function BsCalendarPlus (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 7a.5.5 0 0 1 .5.5V9H10a.5.5 0 0 1 0 1H8.5v1.5a.5.5 0 0 1-1 0V10H6a.5.5 0 0 1 0-1h1.5V7.5A.5.5 0 0 1 8 7\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5M1 4v10a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V4z\"},\"child\":[]}]})(props);\n};\nexport function BsCalendarRangeFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4 .5a.5.5 0 0 0-1 0V1H2a2 2 0 0 0-2 2v1h16V3a2 2 0 0 0-2-2h-1V.5a.5.5 0 0 0-1 0V1H4zM16 7V5H0v5h5a1 1 0 1 1 0 2H0v2a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V9h-6a1 1 0 1 1 0-2z\"},\"child\":[]}]})(props);\n};\nexport function BsCalendarRange (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9 7a1 1 0 0 1 1-1h5v2h-5a1 1 0 0 1-1-1M1 9h4a1 1 0 0 1 0 2H1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5M1 4v10a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V4z\"},\"child\":[]}]})(props);\n};\nexport function BsCalendarWeekFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4 .5a.5.5 0 0 0-1 0V1H2a2 2 0 0 0-2 2v1h16V3a2 2 0 0 0-2-2h-1V.5a.5.5 0 0 0-1 0V1H4zM16 14V5H0v9a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2M9.5 7h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5m3 0h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5M2 10.5a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5zm3.5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsCalendarWeek (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M11 6.5a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5zm-3 0a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5zm-5 3a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5zm3 0a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5M1 4v10a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V4z\"},\"child\":[]}]})(props);\n};\nexport function BsCalendarXFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4 .5a.5.5 0 0 0-1 0V1H2a2 2 0 0 0-2 2v1h16V3a2 2 0 0 0-2-2h-1V.5a.5.5 0 0 0-1 0V1H4zM16 14V5H0v9a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2M6.854 8.146 8 9.293l1.146-1.147a.5.5 0 1 1 .708.708L8.707 10l1.147 1.146a.5.5 0 0 1-.708.708L8 10.707l-1.146 1.147a.5.5 0 0 1-.708-.708L7.293 10 6.146 8.854a.5.5 0 1 1 .708-.708\"},\"child\":[]}]})(props);\n};\nexport function BsCalendarX (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.146 7.146a.5.5 0 0 1 .708 0L8 8.293l1.146-1.147a.5.5 0 1 1 .708.708L8.707 9l1.147 1.146a.5.5 0 0 1-.708.708L8 9.707l-1.146 1.147a.5.5 0 0 1-.708-.708L7.293 9 6.146 7.854a.5.5 0 0 1 0-.708\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5M1 4v10a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V4z\"},\"child\":[]}]})(props);\n};\nexport function BsCalendar (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5M1 4v10a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V4z\"},\"child\":[]}]})(props);\n};\nexport function BsCalendar2CheckFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5m9.954 3H2.545c-.3 0-.545.224-.545.5v1c0 .276.244.5.545.5h10.91c.3 0 .545-.224.545-.5v-1c0-.276-.244-.5-.546-.5m-2.6 5.854a.5.5 0 0 0-.708-.708L7.5 10.793 6.354 9.646a.5.5 0 1 0-.708.708l1.5 1.5a.5.5 0 0 0 .708 0z\"},\"child\":[]}]})(props);\n};\nexport function BsCalendar2Check (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M10.854 8.146a.5.5 0 0 1 0 .708l-3 3a.5.5 0 0 1-.708 0l-1.5-1.5a.5.5 0 0 1 .708-.708L7.5 10.793l2.646-2.647a.5.5 0 0 1 .708 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5M2 2a1 1 0 0 0-1 1v11a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V3a1 1 0 0 0-1-1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2.5 4a.5.5 0 0 1 .5-.5h10a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5H3a.5.5 0 0 1-.5-.5z\"},\"child\":[]}]})(props);\n};\nexport function BsCalendar2DateFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.402 10.246c.625 0 1.184-.484 1.184-1.18 0-.832-.527-1.23-1.16-1.23-.586 0-1.168.387-1.168 1.21 0 .817.543 1.2 1.144 1.2\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5m9.954 3H2.545c-.3 0-.545.224-.545.5v1c0 .276.244.5.545.5h10.91c.3 0 .545-.224.545-.5v-1c0-.276-.244-.5-.546-.5m-4.118 9.79c1.258 0 2-1.067 2-2.872 0-1.934-.781-2.668-1.953-2.668-.926 0-1.797.672-1.797 1.809 0 1.16.824 1.77 1.676 1.77.746 0 1.23-.376 1.383-.79h.027c-.004 1.316-.461 2.164-1.305 2.164-.664 0-1.008-.45-1.05-.82h-.684c.047.64.594 1.406 1.703 1.406zm-2.89-5.435h-.633A13 13 0 0 0 4.5 8.16v.695c.375-.257.969-.62 1.258-.777h.012v4.61h.675V7.354z\"},\"child\":[]}]})(props);\n};\nexport function BsCalendar2Date (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.445 12.688V7.354h-.633A13 13 0 0 0 4.5 8.16v.695c.375-.257.969-.62 1.258-.777h.012v4.61zm1.188-1.305c.047.64.594 1.406 1.703 1.406 1.258 0 2-1.066 2-2.871 0-1.934-.781-2.668-1.953-2.668-.926 0-1.797.672-1.797 1.809 0 1.16.824 1.77 1.676 1.77.746 0 1.23-.376 1.383-.79h.027c-.004 1.316-.461 2.164-1.305 2.164-.664 0-1.008-.45-1.05-.82zm2.953-2.317c0 .696-.559 1.18-1.184 1.18-.601 0-1.144-.383-1.144-1.2 0-.823.582-1.21 1.168-1.21.633 0 1.16.398 1.16 1.23\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5M2 2a1 1 0 0 0-1 1v11a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V3a1 1 0 0 0-1-1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2.5 4a.5.5 0 0 1 .5-.5h10a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5H3a.5.5 0 0 1-.5-.5z\"},\"child\":[]}]})(props);\n};\nexport function BsCalendar2DayFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5m9.954 3H2.545c-.3 0-.545.224-.545.5v1c0 .276.244.5.545.5h10.91c.3 0 .545-.224.545-.5v-1c0-.276-.244-.5-.546-.5m-2.24 4.855a.428.428 0 1 0 0-.855.426.426 0 0 0-.429.43c0 .238.192.425.43.425zm.337.563h-.672v4.105h.672zm-6.867 4.105v-2.3h2.261v-.61H4.684V7.801h2.464v-.61H4v5.332zm3.296 0h.676V9.98c0-.554.227-1.007.953-1.007.125 0 .258.004.329.015v-.613a2 2 0 0 0-.254-.02c-.582 0-.891.32-1.012.567h-.02v-.504H7.98z\"},\"child\":[]}]})(props);\n};\nexport function BsCalendar2Day (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4.684 12.523v-2.3h2.261v-.61H4.684V7.801h2.464v-.61H4v5.332zm3.296 0h.676V9.98c0-.554.227-1.007.953-1.007.125 0 .258.004.329.015v-.613a2 2 0 0 0-.254-.02c-.582 0-.891.32-1.012.567h-.02v-.504H7.98zm2.805-5.093c0 .238.192.425.43.425a.428.428 0 1 0 0-.855.426.426 0 0 0-.43.43m.094 5.093h.672V8.418h-.672z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5M2 2a1 1 0 0 0-1 1v11a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V3a1 1 0 0 0-1-1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2.5 4a.5.5 0 0 1 .5-.5h10a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5H3a.5.5 0 0 1-.5-.5z\"},\"child\":[]}]})(props);\n};\nexport function BsCalendar2EventFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5m9.954 3H2.545c-.3 0-.545.224-.545.5v1c0 .276.244.5.545.5h10.91c.3 0 .545-.224.545-.5v-1c0-.276-.244-.5-.546-.5M11.5 7a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5z\"},\"child\":[]}]})(props);\n};\nexport function BsCalendar2Event (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M11 7.5a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5M2 2a1 1 0 0 0-1 1v11a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V3a1 1 0 0 0-1-1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2.5 4a.5.5 0 0 1 .5-.5h10a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5H3a.5.5 0 0 1-.5-.5z\"},\"child\":[]}]})(props);\n};\nexport function BsCalendar2Fill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4 .5a.5.5 0 0 0-1 0V1H2a2 2 0 0 0-2 2v11a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V3a2 2 0 0 0-2-2h-1V.5a.5.5 0 0 0-1 0V1H4zM2.545 3h10.91c.3 0 .545.224.545.5v1c0 .276-.244.5-.546.5H2.545C2.245 5 2 4.776 2 4.5v-1c0-.276.244-.5.545-.5\"},\"child\":[]}]})(props);\n};\nexport function BsCalendar2HeartFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4 .5a.5.5 0 0 0-1 0V1H2a2 2 0 0 0-2 2v11a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V3a2 2 0 0 0-2-2h-1V.5a.5.5 0 0 0-1 0V1H4zm-2 4v-1c0-.276.244-.5.545-.5h10.91c.3 0 .545.224.545.5v1c0 .276-.244.5-.546.5H2.545C2.245 5 2 4.776 2 4.5m6 3.493c1.664-1.711 5.825 1.283 0 5.132-5.825-3.85-1.664-6.843 0-5.132\"},\"child\":[]}]})(props);\n};\nexport function BsCalendar2Heart (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M4 .5a.5.5 0 0 0-1 0V1H2a2 2 0 0 0-2 2v11a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V3a2 2 0 0 0-2-2h-1V.5a.5.5 0 0 0-1 0V1H4zM1 3a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1v11a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1zm2 .5a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h10a.5.5 0 0 0 .5-.5V4a.5.5 0 0 0-.5-.5zm5 4.493c1.664-1.711 5.825 1.283 0 5.132-5.825-3.85-1.664-6.843 0-5.132\"},\"child\":[]}]})(props);\n};\nexport function BsCalendar2MinusFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5m9.954 3H2.545c-.3 0-.545.224-.545.5v1c0 .276.244.5.545.5h10.91c.3 0 .545-.224.545-.5v-1c0-.276-.244-.5-.546-.5M6 10a.5.5 0 0 0 0 1h4a.5.5 0 0 0 0-1z\"},\"child\":[]}]})(props);\n};\nexport function BsCalendar2Minus (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5.5 10.5A.5.5 0 0 1 6 10h4a.5.5 0 0 1 0 1H6a.5.5 0 0 1-.5-.5\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5M2 2a1 1 0 0 0-1 1v11a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V3a1 1 0 0 0-1-1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2.5 4a.5.5 0 0 1 .5-.5h10a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5H3a.5.5 0 0 1-.5-.5z\"},\"child\":[]}]})(props);\n};\nexport function BsCalendar2MonthFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4.104 7.805 4.9 10.18H3.284l.8-2.375zm9.074 2.297c0-.832-.414-1.36-1.062-1.36-.692 0-1.098.492-1.098 1.36v.253c0 .852.406 1.364 1.098 1.364.671 0 1.062-.516 1.062-1.364z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5m9.954 3H2.545c-.3 0-.545.224-.545.5v1c0 .276.244.5.545.5h10.91c.3 0 .545-.224.545-.5v-1c0-.276-.244-.5-.546-.5M2.561 12.332 3.1 10.73h1.984l.54 1.602h.718L4.444 7h-.696L1.85 12.332zM9.85 8.227h-.676v2.543c0 .652-.414 1.023-1.004 1.023-.539 0-.98-.246-.98-1.012V8.227h-.676v2.746c0 .941.606 1.425 1.453 1.425.656 0 1.043-.28 1.188-.605h.027v.539h.668zm1.273 4.41h-.687c.094.683.625 1.199 1.668 1.199.93 0 1.746-.527 1.746-1.578V8.227h-.649v.578h-.019c-.191-.348-.637-.64-1.195-.64-.965 0-1.64.679-1.64 1.886v.34c0 1.23.683 1.902 1.64 1.902.558 0 1.008-.293 1.172-.648h.02v.605c0 .645-.423 1.023-1.071 1.023-.563 0-.91-.304-.985-.636\"},\"child\":[]}]})(props);\n};\nexport function BsCalendar2Month (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m2.56 12.332.54-1.602h1.984l.54 1.602h.718L4.444 7h-.696L1.85 12.332zm1.544-4.527L4.9 10.18H3.284l.8-2.375zm5.746.422h-.676v2.543c0 .652-.414 1.023-1.004 1.023-.539 0-.98-.246-.98-1.012V8.227h-.676v2.746c0 .941.606 1.425 1.453 1.425.656 0 1.043-.28 1.188-.605h.027v.539h.668zm2.258 5.046c-.563 0-.91-.304-.985-.636h-.687c.094.683.625 1.199 1.668 1.199.93 0 1.746-.527 1.746-1.578V8.227h-.649v.578h-.019c-.191-.348-.637-.64-1.195-.64-.965 0-1.64.679-1.64 1.886v.34c0 1.23.683 1.902 1.64 1.902.558 0 1.008-.293 1.172-.648h.02v.605c0 .645-.423 1.023-1.071 1.023m.008-4.53c.648 0 1.062.527 1.062 1.359v.253c0 .848-.39 1.364-1.062 1.364-.692 0-1.098-.512-1.098-1.364v-.253c0-.868.406-1.36 1.098-1.36z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5M2 2a1 1 0 0 0-1 1v11a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V3a1 1 0 0 0-1-1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2.5 4a.5.5 0 0 1 .5-.5h10a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5H3a.5.5 0 0 1-.5-.5z\"},\"child\":[]}]})(props);\n};\nexport function BsCalendar2PlusFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5M2 3.5v1c0 .276.244.5.545.5h10.91c.3 0 .545-.224.545-.5v-1c0-.276-.244-.5-.546-.5H2.545c-.3 0-.545.224-.545.5m6.5 5a.5.5 0 0 0-1 0V10H6a.5.5 0 0 0 0 1h1.5v1.5a.5.5 0 0 0 1 0V11H10a.5.5 0 0 0 0-1H8.5z\"},\"child\":[]}]})(props);\n};\nexport function BsCalendar2Plus (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5M2 2a1 1 0 0 0-1 1v11a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V3a1 1 0 0 0-1-1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2.5 4a.5.5 0 0 1 .5-.5h10a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5H3a.5.5 0 0 1-.5-.5zM8 8a.5.5 0 0 1 .5.5V10H10a.5.5 0 0 1 0 1H8.5v1.5a.5.5 0 0 1-1 0V11H6a.5.5 0 0 1 0-1h1.5V8.5A.5.5 0 0 1 8 8\"},\"child\":[]}]})(props);\n};\nexport function BsCalendar2RangeFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5m9.954 3H2.545c-.3 0-.545.224-.545.5v1c0 .276.244.5.545.5h10.91c.3 0 .545-.224.545-.5v-1c0-.276-.244-.5-.546-.5M10 7a1 1 0 0 0 0 2h5V7zm-4 4a1 1 0 0 0-1-1H1v2h4a1 1 0 0 0 1-1\"},\"child\":[]}]})(props);\n};\nexport function BsCalendar2Range (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5M2 2a1 1 0 0 0-1 1v11a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V3a1 1 0 0 0-1-1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2.5 4a.5.5 0 0 1 .5-.5h10a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5H3a.5.5 0 0 1-.5-.5zM9 8a1 1 0 0 1 1-1h5v2h-5a1 1 0 0 1-1-1m-8 2h4a1 1 0 1 1 0 2H1z\"},\"child\":[]}]})(props);\n};\nexport function BsCalendar2WeekFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5m9.954 3H2.545c-.3 0-.545.224-.545.5v1c0 .276.244.5.545.5h10.91c.3 0 .545-.224.545-.5v-1c0-.276-.244-.5-.546-.5M8.5 7a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm3 0a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zM3 10.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5m3.5-.5a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5z\"},\"child\":[]}]})(props);\n};\nexport function BsCalendar2Week (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5M2 2a1 1 0 0 0-1 1v11a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V3a1 1 0 0 0-1-1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2.5 4a.5.5 0 0 1 .5-.5h10a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5H3a.5.5 0 0 1-.5-.5zM11 7.5a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5zm-3 0a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5zm-5 3a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5zm3 0a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5z\"},\"child\":[]}]})(props);\n};\nexport function BsCalendar2XFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5m9.954 3H2.545c-.3 0-.545.224-.545.5v1c0 .276.244.5.545.5h10.91c.3 0 .545-.224.545-.5v-1c0-.276-.244-.5-.546-.5m-6.6 5.146a.5.5 0 1 0-.708.708L7.293 10l-1.147 1.146a.5.5 0 0 0 .708.708L8 10.707l1.146 1.147a.5.5 0 0 0 .708-.708L8.707 10l1.147-1.146a.5.5 0 0 0-.708-.708L8 9.293z\"},\"child\":[]}]})(props);\n};\nexport function BsCalendar2X (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.146 8.146a.5.5 0 0 1 .708 0L8 9.293l1.146-1.147a.5.5 0 1 1 .708.708L8.707 10l1.147 1.146a.5.5 0 0 1-.708.708L8 10.707l-1.146 1.147a.5.5 0 0 1-.708-.708L7.293 10 6.146 8.854a.5.5 0 0 1 0-.708\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5M2 2a1 1 0 0 0-1 1v11a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V3a1 1 0 0 0-1-1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2.5 4a.5.5 0 0 1 .5-.5h10a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5H3a.5.5 0 0 1-.5-.5z\"},\"child\":[]}]})(props);\n};\nexport function BsCalendar2 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5M2 2a1 1 0 0 0-1 1v11a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V3a1 1 0 0 0-1-1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2.5 4a.5.5 0 0 1 .5-.5h10a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5H3a.5.5 0 0 1-.5-.5z\"},\"child\":[]}]})(props);\n};\nexport function BsCalendar3EventFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M2 0a2 2 0 0 0-2 2h16a2 2 0 0 0-2-2zM0 14V3h16v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2m12-8a1 1 0 1 0 2 0 1 1 0 0 0-2 0\"},\"child\":[]}]})(props);\n};\nexport function BsCalendar3Event (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M14 0H2a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2M1 3.857C1 3.384 1.448 3 2 3h12c.552 0 1 .384 1 .857v10.286c0 .473-.448.857-1 .857H2c-.552 0-1-.384-1-.857z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M12 7a1 1 0 1 0 0-2 1 1 0 0 0 0 2\"},\"child\":[]}]})(props);\n};\nexport function BsCalendar3Fill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 2a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2zm0 1v11a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V3z\"},\"child\":[]}]})(props);\n};\nexport function BsCalendar3RangeFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M2 0a2 2 0 0 0-2 2h16a2 2 0 0 0-2-2zM0 8V3h16v2h-6a1 1 0 1 0 0 2h6v7a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2v-4h6a1 1 0 1 0 0-2z\"},\"child\":[]}]})(props);\n};\nexport function BsCalendar3Range (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M14 0H2a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2M1 3.857C1 3.384 1.448 3 2 3h12c.552 0 1 .384 1 .857v10.286c0 .473-.448.857-1 .857H2c-.552 0-1-.384-1-.857z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M7 10a1 1 0 0 0 0-2H1v2zm2-3h6V5H9a1 1 0 0 0 0 2\"},\"child\":[]}]})(props);\n};\nexport function BsCalendar3WeekFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M2 0a2 2 0 0 0-2 2h16a2 2 0 0 0-2-2zM0 14V3h16v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2m12-8a1 1 0 1 0 2 0 1 1 0 0 0-2 0M5 9a1 1 0 1 0 2 0 1 1 0 0 0-2 0m5-2a1 1 0 1 1 0-2 1 1 0 0 1 0 2M2 9a1 1 0 1 0 2 0 1 1 0 0 0-2 0\"},\"child\":[]}]})(props);\n};\nexport function BsCalendar3Week (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M14 0H2a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2M1 3.857C1 3.384 1.448 3 2 3h12c.552 0 1 .384 1 .857v10.286c0 .473-.448.857-1 .857H2c-.552 0-1-.384-1-.857z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M12 7a1 1 0 1 0 0-2 1 1 0 0 0 0 2m-5 3a1 1 0 1 0 0-2 1 1 0 0 0 0 2m2-3a1 1 0 1 0 0-2 1 1 0 0 0 0 2m-5 3a1 1 0 1 0 0-2 1 1 0 0 0 0 2\"},\"child\":[]}]})(props);\n};\nexport function BsCalendar3 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M14 0H2a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2M1 3.857C1 3.384 1.448 3 2 3h12c.552 0 1 .384 1 .857v10.286c0 .473-.448.857-1 .857H2c-.552 0-1-.384-1-.857z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M6.5 7a1 1 0 1 0 0-2 1 1 0 0 0 0 2m3 0a1 1 0 1 0 0-2 1 1 0 0 0 0 2m3 0a1 1 0 1 0 0-2 1 1 0 0 0 0 2m-9 3a1 1 0 1 0 0-2 1 1 0 0 0 0 2m3 0a1 1 0 1 0 0-2 1 1 0 0 0 0 2m3 0a1 1 0 1 0 0-2 1 1 0 0 0 0 2m3 0a1 1 0 1 0 0-2 1 1 0 0 0 0 2m-9 3a1 1 0 1 0 0-2 1 1 0 0 0 0 2m3 0a1 1 0 1 0 0-2 1 1 0 0 0 0 2m3 0a1 1 0 1 0 0-2 1 1 0 0 0 0 2\"},\"child\":[]}]})(props);\n};\nexport function BsCalendar4Event (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5M2 2a1 1 0 0 0-1 1v1h14V3a1 1 0 0 0-1-1zm13 3H1v9a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M11 7.5a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5z\"},\"child\":[]}]})(props);\n};\nexport function BsCalendar4Range (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5M2 2a1 1 0 0 0-1 1v1h14V3a1 1 0 0 0-1-1zm13 3H1v9a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M9 7.5a.5.5 0 0 1 .5-.5H15v2H9.5a.5.5 0 0 1-.5-.5zm-2 3v1a.5.5 0 0 1-.5.5H1v-2h5.5a.5.5 0 0 1 .5.5\"},\"child\":[]}]})(props);\n};\nexport function BsCalendar4Week (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5M2 2a1 1 0 0 0-1 1v1h14V3a1 1 0 0 0-1-1zm13 3H1v9a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M11 7.5a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5zm-3 0a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5zm-2 3a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5zm-3 0a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5z\"},\"child\":[]}]})(props);\n};\nexport function BsCalendar4 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5M2 2a1 1 0 0 0-1 1v1h14V3a1 1 0 0 0-1-1zm13 3H1v9a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsCameraFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M10.5 8.5a2.5 2.5 0 1 1-5 0 2.5 2.5 0 0 1 5 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 4a2 2 0 0 0-2 2v6a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2h-1.172a2 2 0 0 1-1.414-.586l-.828-.828A2 2 0 0 0 9.172 2H6.828a2 2 0 0 0-1.414.586l-.828.828A2 2 0 0 1 3.172 4zm.5 2a.5.5 0 1 1 0-1 .5.5 0 0 1 0 1m9 2.5a3.5 3.5 0 1 1-7 0 3.5 3.5 0 0 1 7 0\"},\"child\":[]}]})(props);\n};\nexport function BsCameraReelsFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6 3a3 3 0 1 1-6 0 3 3 0 0 1 6 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M9 6a3 3 0 1 1 0-6 3 3 0 0 1 0 6\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M9 6h.5a2 2 0 0 1 1.983 1.738l3.11-1.382A1 1 0 0 1 16 7.269v7.462a1 1 0 0 1-1.406.913l-3.111-1.382A2 2 0 0 1 9.5 16H2a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2z\"},\"child\":[]}]})(props);\n};\nexport function BsCameraReels (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6 3a3 3 0 1 1-6 0 3 3 0 0 1 6 0M1 3a2 2 0 1 0 4 0 2 2 0 0 0-4 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M9 6h.5a2 2 0 0 1 1.983 1.738l3.11-1.382A1 1 0 0 1 16 7.269v7.462a1 1 0 0 1-1.406.913l-3.111-1.382A2 2 0 0 1 9.5 16H2a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2zm6 8.73V7.27l-3.5 1.555v4.35zM1 8v6a1 1 0 0 0 1 1h7.5a1 1 0 0 0 1-1V8a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M9 6a3 3 0 1 0 0-6 3 3 0 0 0 0 6M7 3a2 2 0 1 1 4 0 2 2 0 0 1-4 0\"},\"child\":[]}]})(props);\n};\nexport function BsCameraVideoFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M0 5a2 2 0 0 1 2-2h7.5a2 2 0 0 1 1.983 1.738l3.11-1.382A1 1 0 0 1 16 4.269v7.462a1 1 0 0 1-1.406.913l-3.111-1.382A2 2 0 0 1 9.5 13H2a2 2 0 0 1-2-2z\"},\"child\":[]}]})(props);\n};\nexport function BsCameraVideoOffFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M10.961 12.365a2 2 0 0 0 .522-1.103l3.11 1.382A1 1 0 0 0 16 11.731V4.269a1 1 0 0 0-1.406-.913l-3.111 1.382A2 2 0 0 0 9.5 3H4.272zm-10.114-9A2 2 0 0 0 0 5v6a2 2 0 0 0 2 2h5.728zm9.746 11.925-10-14 .814-.58 10 14z\"},\"child\":[]}]})(props);\n};\nexport function BsCameraVideoOff (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M10.961 12.365a2 2 0 0 0 .522-1.103l3.11 1.382A1 1 0 0 0 16 11.731V4.269a1 1 0 0 0-1.406-.913l-3.111 1.382A2 2 0 0 0 9.5 3H4.272l.714 1H9.5a1 1 0 0 1 1 1v6a1 1 0 0 1-.144.518zM1.428 4.18A1 1 0 0 0 1 5v6a1 1 0 0 0 1 1h5.014l.714 1H2a2 2 0 0 1-2-2V5c0-.675.334-1.272.847-1.634zM15 11.73l-3.5-1.555v-4.35L15 4.269zm-4.407 3.56-10-14 .814-.58 10 14z\"},\"child\":[]}]})(props);\n};\nexport function BsCameraVideo (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M0 5a2 2 0 0 1 2-2h7.5a2 2 0 0 1 1.983 1.738l3.11-1.382A1 1 0 0 1 16 4.269v7.462a1 1 0 0 1-1.406.913l-3.111-1.382A2 2 0 0 1 9.5 13H2a2 2 0 0 1-2-2zm11.5 5.175 3.5 1.556V4.269l-3.5 1.556zM2 4a1 1 0 0 0-1 1v6a1 1 0 0 0 1 1h7.5a1 1 0 0 0 1-1V5a1 1 0 0 0-1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsCamera (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M15 12a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V6a1 1 0 0 1 1-1h1.172a3 3 0 0 0 2.12-.879l.83-.828A1 1 0 0 1 6.827 3h2.344a1 1 0 0 1 .707.293l.828.828A3 3 0 0 0 12.828 5H14a1 1 0 0 1 1 1zM2 4a2 2 0 0 0-2 2v6a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2h-1.172a2 2 0 0 1-1.414-.586l-.828-.828A2 2 0 0 0 9.172 2H6.828a2 2 0 0 0-1.414.586l-.828.828A2 2 0 0 1 3.172 4z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8 11a2.5 2.5 0 1 1 0-5 2.5 2.5 0 0 1 0 5m0 1a3.5 3.5 0 1 0 0-7 3.5 3.5 0 0 0 0 7M3 6.5a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0\"},\"child\":[]}]})(props);\n};\nexport function BsCamera2 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5 8c0-1.657 2.343-3 4-3V4a4 4 0 0 0-4 4\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M12.318 3h2.015C15.253 3 16 3.746 16 4.667v6.666c0 .92-.746 1.667-1.667 1.667h-2.015A5.97 5.97 0 0 1 9 14a5.97 5.97 0 0 1-3.318-1H1.667C.747 13 0 12.254 0 11.333V4.667C0 3.747.746 3 1.667 3H2a1 1 0 0 1 1-1h1a1 1 0 0 1 1 1h.682A5.97 5.97 0 0 1 9 2c1.227 0 2.367.368 3.318 1M2 4.5a.5.5 0 1 0-1 0 .5.5 0 0 0 1 0M14 8A5 5 0 1 0 4 8a5 5 0 0 0 10 0\"},\"child\":[]}]})(props);\n};\nexport function BsCapslockFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.27 1.047a1 1 0 0 1 1.46 0l6.345 6.77c.6.638.146 1.683-.73 1.683H11.5v1a1 1 0 0 1-1 1h-5a1 1 0 0 1-1-1v-1H1.654C.78 9.5.326 8.455.924 7.816zM4.5 13.5a1 1 0 0 1 1-1h5a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1h-5a1 1 0 0 1-1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsCapslock (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M7.27 1.047a1 1 0 0 1 1.46 0l6.345 6.77c.6.638.146 1.683-.73 1.683H11.5v1a1 1 0 0 1-1 1h-5a1 1 0 0 1-1-1v-1H1.654C.78 9.5.326 8.455.924 7.816zM14.346 8.5 8 1.731 1.654 8.5H4.5a1 1 0 0 1 1 1v1h5v-1a1 1 0 0 1 1-1zm-9.846 5a1 1 0 0 1 1-1h5a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1h-5a1 1 0 0 1-1-1zm6 0h-5v1h5z\"},\"child\":[]}]})(props);\n};\nexport function BsCapsulePill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M11.02 5.364a3 3 0 0 0-4.242-4.243L1.121 6.778a3 3 0 1 0 4.243 4.243l5.657-5.657Zm-6.413-.657 2.878-2.879a2 2 0 1 1 2.829 2.829L7.435 7.536zM12 8a4 4 0 1 1 0 8 4 4 0 0 1 0-8m-.5 1.042a3 3 0 0 0 0 5.917zm1 5.917a3 3 0 0 0 0-5.917z\"},\"child\":[]}]})(props);\n};\nexport function BsCapsule (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M1.828 8.9 8.9 1.827a4 4 0 1 1 5.657 5.657l-7.07 7.071A4 4 0 1 1 1.827 8.9Zm9.128.771 2.893-2.893a3 3 0 1 0-4.243-4.242L6.713 5.429z\"},\"child\":[]}]})(props);\n};\nexport function BsCarFrontFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2.52 3.515A2.5 2.5 0 0 1 4.82 2h6.362c1 0 1.904.596 2.298 1.515l.792 1.848c.075.175.21.319.38.404.5.25.855.715.965 1.262l.335 1.679q.05.242.049.49v.413c0 .814-.39 1.543-1 1.997V13.5a.5.5 0 0 1-.5.5h-2a.5.5 0 0 1-.5-.5v-1.338c-1.292.048-2.745.088-4 .088s-2.708-.04-4-.088V13.5a.5.5 0 0 1-.5.5h-2a.5.5 0 0 1-.5-.5v-1.892c-.61-.454-1-1.183-1-1.997v-.413a2.5 2.5 0 0 1 .049-.49l.335-1.68c.11-.546.465-1.012.964-1.261a.8.8 0 0 0 .381-.404l.792-1.848ZM3 10a1 1 0 1 0 0-2 1 1 0 0 0 0 2m10 0a1 1 0 1 0 0-2 1 1 0 0 0 0 2M6 8a1 1 0 0 0 0 2h4a1 1 0 1 0 0-2zM2.906 5.189a.51.51 0 0 0 .497.731c.91-.073 3.35-.17 4.597-.17s3.688.097 4.597.17a.51.51 0 0 0 .497-.731l-.956-1.913A.5.5 0 0 0 11.691 3H4.309a.5.5 0 0 0-.447.276L2.906 5.19Z\"},\"child\":[]}]})(props);\n};\nexport function BsCarFront (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4 9a1 1 0 1 1-2 0 1 1 0 0 1 2 0m10 0a1 1 0 1 1-2 0 1 1 0 0 1 2 0M6 8a1 1 0 0 0 0 2h4a1 1 0 1 0 0-2zM4.862 4.276 3.906 6.19a.51.51 0 0 0 .497.731c.91-.073 2.35-.17 3.597-.17s2.688.097 3.597.17a.51.51 0 0 0 .497-.731l-.956-1.913A.5.5 0 0 0 10.691 4H5.309a.5.5 0 0 0-.447.276\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2.52 3.515A2.5 2.5 0 0 1 4.82 2h6.362c1 0 1.904.596 2.298 1.515l.792 1.848c.075.175.21.319.38.404.5.25.855.715.965 1.262l.335 1.679q.05.242.049.49v.413c0 .814-.39 1.543-1 1.997V13.5a.5.5 0 0 1-.5.5h-2a.5.5 0 0 1-.5-.5v-1.338c-1.292.048-2.745.088-4 .088s-2.708-.04-4-.088V13.5a.5.5 0 0 1-.5.5h-2a.5.5 0 0 1-.5-.5v-1.892c-.61-.454-1-1.183-1-1.997v-.413a2.5 2.5 0 0 1 .049-.49l.335-1.68c.11-.546.465-1.012.964-1.261a.8.8 0 0 0 .381-.404l.792-1.848ZM4.82 3a1.5 1.5 0 0 0-1.379.91l-.792 1.847a1.8 1.8 0 0 1-.853.904.8.8 0 0 0-.43.564L1.03 8.904a1.5 1.5 0 0 0-.03.294v.413c0 .796.62 1.448 1.408 1.484 1.555.07 3.786.155 5.592.155s4.037-.084 5.592-.155A1.48 1.48 0 0 0 15 9.611v-.413q0-.148-.03-.294l-.335-1.68a.8.8 0 0 0-.43-.563 1.8 1.8 0 0 1-.853-.904l-.792-1.848A1.5 1.5 0 0 0 11.18 3z\"},\"child\":[]}]})(props);\n};\nexport function BsCardChecklist (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M14.5 3a.5.5 0 0 1 .5.5v9a.5.5 0 0 1-.5.5h-13a.5.5 0 0 1-.5-.5v-9a.5.5 0 0 1 .5-.5zm-13-1A1.5 1.5 0 0 0 0 3.5v9A1.5 1.5 0 0 0 1.5 14h13a1.5 1.5 0 0 0 1.5-1.5v-9A1.5 1.5 0 0 0 14.5 2z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M7 5.5a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5m-1.496-.854a.5.5 0 0 1 0 .708l-1.5 1.5a.5.5 0 0 1-.708 0l-.5-.5a.5.5 0 1 1 .708-.708l.146.147 1.146-1.147a.5.5 0 0 1 .708 0M7 9.5a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5m-1.496-.854a.5.5 0 0 1 0 .708l-1.5 1.5a.5.5 0 0 1-.708 0l-.5-.5a.5.5 0 0 1 .708-.708l.146.147 1.146-1.147a.5.5 0 0 1 .708 0\"},\"child\":[]}]})(props);\n};\nexport function BsCardHeading (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M14.5 3a.5.5 0 0 1 .5.5v9a.5.5 0 0 1-.5.5h-13a.5.5 0 0 1-.5-.5v-9a.5.5 0 0 1 .5-.5zm-13-1A1.5 1.5 0 0 0 0 3.5v9A1.5 1.5 0 0 0 1.5 14h13a1.5 1.5 0 0 0 1.5-1.5v-9A1.5 1.5 0 0 0 14.5 2z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3 8.5a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5m0 2a.5.5 0 0 1 .5-.5h6a.5.5 0 0 1 0 1h-6a.5.5 0 0 1-.5-.5m0-5a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-9a.5.5 0 0 1-.5-.5z\"},\"child\":[]}]})(props);\n};\nexport function BsCardImage (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.002 5.5a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M1.5 2A1.5 1.5 0 0 0 0 3.5v9A1.5 1.5 0 0 0 1.5 14h13a1.5 1.5 0 0 0 1.5-1.5v-9A1.5 1.5 0 0 0 14.5 2zm13 1a.5.5 0 0 1 .5.5v6l-3.775-1.947a.5.5 0 0 0-.577.093l-3.71 3.71-2.66-1.772a.5.5 0 0 0-.63.062L1.002 12v.54L1 12.5v-9a.5.5 0 0 1 .5-.5z\"},\"child\":[]}]})(props);\n};\nexport function BsCardList (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M14.5 3a.5.5 0 0 1 .5.5v9a.5.5 0 0 1-.5.5h-13a.5.5 0 0 1-.5-.5v-9a.5.5 0 0 1 .5-.5zm-13-1A1.5 1.5 0 0 0 0 3.5v9A1.5 1.5 0 0 0 1.5 14h13a1.5 1.5 0 0 0 1.5-1.5v-9A1.5 1.5 0 0 0 14.5 2z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M5 8a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7A.5.5 0 0 1 5 8m0-2.5a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5m0 5a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5m-1-5a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0M4 8a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0m0 2.5a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0\"},\"child\":[]}]})(props);\n};\nexport function BsCardText (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M14.5 3a.5.5 0 0 1 .5.5v9a.5.5 0 0 1-.5.5h-13a.5.5 0 0 1-.5-.5v-9a.5.5 0 0 1 .5-.5zm-13-1A1.5 1.5 0 0 0 0 3.5v9A1.5 1.5 0 0 0 1.5 14h13a1.5 1.5 0 0 0 1.5-1.5v-9A1.5 1.5 0 0 0 14.5 2z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3 5.5a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5M3 8a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9A.5.5 0 0 1 3 8m0 2.5a.5.5 0 0 1 .5-.5h6a.5.5 0 0 1 0 1h-6a.5.5 0 0 1-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsCaretDownFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.247 11.14 2.451 5.658C1.885 5.013 2.345 4 3.204 4h9.592a1 1 0 0 1 .753 1.659l-4.796 5.48a1 1 0 0 1-1.506 0z\"},\"child\":[]}]})(props);\n};\nexport function BsCaretDownSquareFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 2a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm4 4a.5.5 0 0 0-.374.832l4 4.5a.5.5 0 0 0 .748 0l4-4.5A.5.5 0 0 0 12 6z\"},\"child\":[]}]})(props);\n};\nexport function BsCaretDownSquare (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3.626 6.832A.5.5 0 0 1 4 6h8a.5.5 0 0 1 .374.832l-4 4.5a.5.5 0 0 1-.748 0z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M0 2a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm15 0a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsCaretDown (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3.204 5h9.592L8 10.481zm-.753.659 4.796 5.48a1 1 0 0 0 1.506 0l4.796-5.48c.566-.647.106-1.659-.753-1.659H3.204a1 1 0 0 0-.753 1.659\"},\"child\":[]}]})(props);\n};\nexport function BsCaretLeftFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m3.86 8.753 5.482 4.796c.646.566 1.658.106 1.658-.753V3.204a1 1 0 0 0-1.659-.753l-5.48 4.796a1 1 0 0 0 0 1.506z\"},\"child\":[]}]})(props);\n};\nexport function BsCaretLeftSquareFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 2a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm10.5 10V4a.5.5 0 0 0-.832-.374l-4.5 4a.5.5 0 0 0 0 .748l4.5 4A.5.5 0 0 0 10.5 12\"},\"child\":[]}]})(props);\n};\nexport function BsCaretLeftSquare (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M14 1a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1zM2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M10.205 12.456A.5.5 0 0 0 10.5 12V4a.5.5 0 0 0-.832-.374l-4.5 4a.5.5 0 0 0 0 .748l4.5 4a.5.5 0 0 0 .537.082\"},\"child\":[]}]})(props);\n};\nexport function BsCaretLeft (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M10 12.796V3.204L4.519 8zm-.659.753-5.48-4.796a1 1 0 0 1 0-1.506l5.48-4.796A1 1 0 0 1 11 3.204v9.592a1 1 0 0 1-1.659.753\"},\"child\":[]}]})(props);\n};\nexport function BsCaretRightFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m12.14 8.753-5.482 4.796c-.646.566-1.658.106-1.658-.753V3.204a1 1 0 0 1 1.659-.753l5.48 4.796a1 1 0 0 1 0 1.506z\"},\"child\":[]}]})(props);\n};\nexport function BsCaretRightSquareFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 2a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm5.5 10a.5.5 0 0 0 .832.374l4.5-4a.5.5 0 0 0 0-.748l-4.5-4A.5.5 0 0 0 5.5 4z\"},\"child\":[]}]})(props);\n};\nexport function BsCaretRightSquare (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M14 1a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1zM2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M5.795 12.456A.5.5 0 0 1 5.5 12V4a.5.5 0 0 1 .832-.374l4.5 4a.5.5 0 0 1 0 .748l-4.5 4a.5.5 0 0 1-.537.082\"},\"child\":[]}]})(props);\n};\nexport function BsCaretRight (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6 12.796V3.204L11.481 8zm.659.753 5.48-4.796a1 1 0 0 0 0-1.506L6.66 2.451C6.011 1.885 5 2.345 5 3.204v9.592a1 1 0 0 0 1.659.753\"},\"child\":[]}]})(props);\n};\nexport function BsCaretUpFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m7.247 4.86-4.796 5.481c-.566.647-.106 1.659.753 1.659h9.592a1 1 0 0 0 .753-1.659l-4.796-5.48a1 1 0 0 0-1.506 0z\"},\"child\":[]}]})(props);\n};\nexport function BsCaretUpSquareFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 2a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm4 9h8a.5.5 0 0 0 .374-.832l-4-4.5a.5.5 0 0 0-.748 0l-4 4.5A.5.5 0 0 0 4 11\"},\"child\":[]}]})(props);\n};\nexport function BsCaretUpSquare (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M14 1a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1zM2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3.544 10.705A.5.5 0 0 0 4 11h8a.5.5 0 0 0 .374-.832l-4-4.5a.5.5 0 0 0-.748 0l-4 4.5a.5.5 0 0 0-.082.537\"},\"child\":[]}]})(props);\n};\nexport function BsCaretUp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3.204 11h9.592L8 5.519zm-.753-.659 4.796-5.48a1 1 0 0 1 1.506 0l4.796 5.48c.566.647.106 1.659-.753 1.659H3.204a1 1 0 0 1-.753-1.659\"},\"child\":[]}]})(props);\n};\nexport function BsCartCheckFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M.5 1a.5.5 0 0 0 0 1h1.11l.401 1.607 1.498 7.985A.5.5 0 0 0 4 12h1a2 2 0 1 0 0 4 2 2 0 0 0 0-4h7a2 2 0 1 0 0 4 2 2 0 0 0 0-4h1a.5.5 0 0 0 .491-.408l1.5-8A.5.5 0 0 0 14.5 3H2.89l-.405-1.621A.5.5 0 0 0 2 1zM6 14a1 1 0 1 1-2 0 1 1 0 0 1 2 0m7 0a1 1 0 1 1-2 0 1 1 0 0 1 2 0m-1.646-7.646-3 3a.5.5 0 0 1-.708 0l-1.5-1.5a.5.5 0 1 1 .708-.708L8 8.293l2.646-2.647a.5.5 0 0 1 .708.708\"},\"child\":[]}]})(props);\n};\nexport function BsCartCheck (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M11.354 6.354a.5.5 0 0 0-.708-.708L8 8.293 6.854 7.146a.5.5 0 1 0-.708.708l1.5 1.5a.5.5 0 0 0 .708 0z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M.5 1a.5.5 0 0 0 0 1h1.11l.401 1.607 1.498 7.985A.5.5 0 0 0 4 12h1a2 2 0 1 0 0 4 2 2 0 0 0 0-4h7a2 2 0 1 0 0 4 2 2 0 0 0 0-4h1a.5.5 0 0 0 .491-.408l1.5-8A.5.5 0 0 0 14.5 3H2.89l-.405-1.621A.5.5 0 0 0 2 1zm3.915 10L3.102 4h10.796l-1.313 7zM6 14a1 1 0 1 1-2 0 1 1 0 0 1 2 0m7 0a1 1 0 1 1-2 0 1 1 0 0 1 2 0\"},\"child\":[]}]})(props);\n};\nexport function BsCartDashFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M.5 1a.5.5 0 0 0 0 1h1.11l.401 1.607 1.498 7.985A.5.5 0 0 0 4 12h1a2 2 0 1 0 0 4 2 2 0 0 0 0-4h7a2 2 0 1 0 0 4 2 2 0 0 0 0-4h1a.5.5 0 0 0 .491-.408l1.5-8A.5.5 0 0 0 14.5 3H2.89l-.405-1.621A.5.5 0 0 0 2 1zM6 14a1 1 0 1 1-2 0 1 1 0 0 1 2 0m7 0a1 1 0 1 1-2 0 1 1 0 0 1 2 0M6.5 7h4a.5.5 0 0 1 0 1h-4a.5.5 0 0 1 0-1\"},\"child\":[]}]})(props);\n};\nexport function BsCartDash (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.5 7a.5.5 0 0 0 0 1h4a.5.5 0 0 0 0-1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M.5 1a.5.5 0 0 0 0 1h1.11l.401 1.607 1.498 7.985A.5.5 0 0 0 4 12h1a2 2 0 1 0 0 4 2 2 0 0 0 0-4h7a2 2 0 1 0 0 4 2 2 0 0 0 0-4h1a.5.5 0 0 0 .491-.408l1.5-8A.5.5 0 0 0 14.5 3H2.89l-.405-1.621A.5.5 0 0 0 2 1zm3.915 10L3.102 4h10.796l-1.313 7zM6 14a1 1 0 1 1-2 0 1 1 0 0 1 2 0m7 0a1 1 0 1 1-2 0 1 1 0 0 1 2 0\"},\"child\":[]}]})(props);\n};\nexport function BsCartFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 1.5A.5.5 0 0 1 .5 1H2a.5.5 0 0 1 .485.379L2.89 3H14.5a.5.5 0 0 1 .491.592l-1.5 8A.5.5 0 0 1 13 12H4a.5.5 0 0 1-.491-.408L2.01 3.607 1.61 2H.5a.5.5 0 0 1-.5-.5M5 12a2 2 0 1 0 0 4 2 2 0 0 0 0-4m7 0a2 2 0 1 0 0 4 2 2 0 0 0 0-4m-7 1a1 1 0 1 1 0 2 1 1 0 0 1 0-2m7 0a1 1 0 1 1 0 2 1 1 0 0 1 0-2\"},\"child\":[]}]})(props);\n};\nexport function BsCartPlusFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M.5 1a.5.5 0 0 0 0 1h1.11l.401 1.607 1.498 7.985A.5.5 0 0 0 4 12h1a2 2 0 1 0 0 4 2 2 0 0 0 0-4h7a2 2 0 1 0 0 4 2 2 0 0 0 0-4h1a.5.5 0 0 0 .491-.408l1.5-8A.5.5 0 0 0 14.5 3H2.89l-.405-1.621A.5.5 0 0 0 2 1zM6 14a1 1 0 1 1-2 0 1 1 0 0 1 2 0m7 0a1 1 0 1 1-2 0 1 1 0 0 1 2 0M9 5.5V7h1.5a.5.5 0 0 1 0 1H9v1.5a.5.5 0 0 1-1 0V8H6.5a.5.5 0 0 1 0-1H8V5.5a.5.5 0 0 1 1 0\"},\"child\":[]}]})(props);\n};\nexport function BsCartPlus (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9 5.5a.5.5 0 0 0-1 0V7H6.5a.5.5 0 0 0 0 1H8v1.5a.5.5 0 0 0 1 0V8h1.5a.5.5 0 0 0 0-1H9z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M.5 1a.5.5 0 0 0 0 1h1.11l.401 1.607 1.498 7.985A.5.5 0 0 0 4 12h1a2 2 0 1 0 0 4 2 2 0 0 0 0-4h7a2 2 0 1 0 0 4 2 2 0 0 0 0-4h1a.5.5 0 0 0 .491-.408l1.5-8A.5.5 0 0 0 14.5 3H2.89l-.405-1.621A.5.5 0 0 0 2 1zm3.915 10L3.102 4h10.796l-1.313 7zM6 14a1 1 0 1 1-2 0 1 1 0 0 1 2 0m7 0a1 1 0 1 1-2 0 1 1 0 0 1 2 0\"},\"child\":[]}]})(props);\n};\nexport function BsCartXFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M.5 1a.5.5 0 0 0 0 1h1.11l.401 1.607 1.498 7.985A.5.5 0 0 0 4 12h1a2 2 0 1 0 0 4 2 2 0 0 0 0-4h7a2 2 0 1 0 0 4 2 2 0 0 0 0-4h1a.5.5 0 0 0 .491-.408l1.5-8A.5.5 0 0 0 14.5 3H2.89l-.405-1.621A.5.5 0 0 0 2 1zM6 14a1 1 0 1 1-2 0 1 1 0 0 1 2 0m7 0a1 1 0 1 1-2 0 1 1 0 0 1 2 0M7.354 5.646 8.5 6.793l1.146-1.147a.5.5 0 0 1 .708.708L9.207 7.5l1.147 1.146a.5.5 0 0 1-.708.708L8.5 8.207 7.354 9.354a.5.5 0 1 1-.708-.708L7.793 7.5 6.646 6.354a.5.5 0 1 1 .708-.708\"},\"child\":[]}]})(props);\n};\nexport function BsCartX (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.354 5.646a.5.5 0 1 0-.708.708L7.793 7.5 6.646 8.646a.5.5 0 1 0 .708.708L8.5 8.207l1.146 1.147a.5.5 0 0 0 .708-.708L9.207 7.5l1.147-1.146a.5.5 0 0 0-.708-.708L8.5 6.793z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M.5 1a.5.5 0 0 0 0 1h1.11l.401 1.607 1.498 7.985A.5.5 0 0 0 4 12h1a2 2 0 1 0 0 4 2 2 0 0 0 0-4h7a2 2 0 1 0 0 4 2 2 0 0 0 0-4h1a.5.5 0 0 0 .491-.408l1.5-8A.5.5 0 0 0 14.5 3H2.89l-.405-1.621A.5.5 0 0 0 2 1zm3.915 10L3.102 4h10.796l-1.313 7zM6 14a1 1 0 1 1-2 0 1 1 0 0 1 2 0m7 0a1 1 0 1 1-2 0 1 1 0 0 1 2 0\"},\"child\":[]}]})(props);\n};\nexport function BsCart (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 1.5A.5.5 0 0 1 .5 1H2a.5.5 0 0 1 .485.379L2.89 3H14.5a.5.5 0 0 1 .491.592l-1.5 8A.5.5 0 0 1 13 12H4a.5.5 0 0 1-.491-.408L2.01 3.607 1.61 2H.5a.5.5 0 0 1-.5-.5M3.102 4l1.313 7h8.17l1.313-7zM5 12a2 2 0 1 0 0 4 2 2 0 0 0 0-4m7 0a2 2 0 1 0 0 4 2 2 0 0 0 0-4m-7 1a1 1 0 1 1 0 2 1 1 0 0 1 0-2m7 0a1 1 0 1 1 0 2 1 1 0 0 1 0-2\"},\"child\":[]}]})(props);\n};\nexport function BsCart2 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 2.5A.5.5 0 0 1 .5 2H2a.5.5 0 0 1 .485.379L2.89 4H14.5a.5.5 0 0 1 .485.621l-1.5 6A.5.5 0 0 1 13 11H4a.5.5 0 0 1-.485-.379L1.61 3H.5a.5.5 0 0 1-.5-.5M3.14 5l1.25 5h8.22l1.25-5zM5 13a1 1 0 1 0 0 2 1 1 0 0 0 0-2m-2 1a2 2 0 1 1 4 0 2 2 0 0 1-4 0m9-1a1 1 0 1 0 0 2 1 1 0 0 0 0-2m-2 1a2 2 0 1 1 4 0 2 2 0 0 1-4 0\"},\"child\":[]}]})(props);\n};\nexport function BsCart3 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 1.5A.5.5 0 0 1 .5 1H2a.5.5 0 0 1 .485.379L2.89 3H14.5a.5.5 0 0 1 .49.598l-1 5a.5.5 0 0 1-.465.401l-9.397.472L4.415 11H13a.5.5 0 0 1 0 1H4a.5.5 0 0 1-.491-.408L2.01 3.607 1.61 2H.5a.5.5 0 0 1-.5-.5M3.102 4l.84 4.479 9.144-.459L13.89 4zM5 12a2 2 0 1 0 0 4 2 2 0 0 0 0-4m7 0a2 2 0 1 0 0 4 2 2 0 0 0 0-4m-7 1a1 1 0 1 1 0 2 1 1 0 0 1 0-2m7 0a1 1 0 1 1 0 2 1 1 0 0 1 0-2\"},\"child\":[]}]})(props);\n};\nexport function BsCart4 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 2.5A.5.5 0 0 1 .5 2H2a.5.5 0 0 1 .485.379L2.89 4H14.5a.5.5 0 0 1 .485.621l-1.5 6A.5.5 0 0 1 13 11H4a.5.5 0 0 1-.485-.379L1.61 3H.5a.5.5 0 0 1-.5-.5M3.14 5l.5 2H5V5zM6 5v2h2V5zm3 0v2h2V5zm3 0v2h1.36l.5-2zm1.11 3H12v2h.61zM11 8H9v2h2zM8 8H6v2h2zM5 8H3.89l.5 2H5zm0 5a1 1 0 1 0 0 2 1 1 0 0 0 0-2m-2 1a2 2 0 1 1 4 0 2 2 0 0 1-4 0m9-1a1 1 0 1 0 0 2 1 1 0 0 0 0-2m-2 1a2 2 0 1 1 4 0 2 2 0 0 1-4 0\"},\"child\":[]}]})(props);\n};\nexport function BsCashCoin (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M11 15a4 4 0 1 0 0-8 4 4 0 0 0 0 8m5-4a5 5 0 1 1-10 0 5 5 0 0 1 10 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M9.438 11.944c.047.596.518 1.06 1.363 1.116v.44h.375v-.443c.875-.061 1.386-.529 1.386-1.207 0-.618-.39-.936-1.09-1.1l-.296-.07v-1.2c.376.043.614.248.671.532h.658c-.047-.575-.54-1.024-1.329-1.073V8.5h-.375v.45c-.747.073-1.255.522-1.255 1.158 0 .562.378.92 1.007 1.066l.248.061v1.272c-.384-.058-.639-.27-.696-.563h-.668zm1.36-1.354c-.369-.085-.569-.26-.569-.522 0-.294.216-.514.572-.578v1.1zm.432.746c.449.104.655.272.655.569 0 .339-.257.571-.709.614v-1.195z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M1 0a1 1 0 0 0-1 1v8a1 1 0 0 0 1 1h4.083q.088-.517.258-1H3a2 2 0 0 0-2-2V3a2 2 0 0 0 2-2h10a2 2 0 0 0 2 2v3.528c.38.34.717.728 1 1.154V1a1 1 0 0 0-1-1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M9.998 5.083 10 5a2 2 0 1 0-3.132 1.65 6 6 0 0 1 3.13-1.567\"},\"child\":[]}]})(props);\n};\nexport function BsCashStack (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M1 3a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1zm7 8a2 2 0 1 0 0-4 2 2 0 0 0 0 4\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M0 5a1 1 0 0 1 1-1h14a1 1 0 0 1 1 1v8a1 1 0 0 1-1 1H1a1 1 0 0 1-1-1zm3 0a2 2 0 0 1-2 2v4a2 2 0 0 1 2 2h10a2 2 0 0 1 2-2V7a2 2 0 0 1-2-2z\"},\"child\":[]}]})(props);\n};\nexport function BsCash (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 10a2 2 0 1 0 0-4 2 2 0 0 0 0 4\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M0 4a1 1 0 0 1 1-1h14a1 1 0 0 1 1 1v8a1 1 0 0 1-1 1H1a1 1 0 0 1-1-1zm3 0a2 2 0 0 1-2 2v4a2 2 0 0 1 2 2h10a2 2 0 0 1 2-2V6a2 2 0 0 1-2-2z\"},\"child\":[]}]})(props);\n};\nexport function BsCassetteFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M1.5 2A1.5 1.5 0 0 0 0 3.5v9A1.5 1.5 0 0 0 1.5 14h.191l1.862-3.724A.5.5 0 0 1 4 10h8a.5.5 0 0 1 .447.276L14.31 14h.191a1.5 1.5 0 0 0 1.5-1.5v-9A1.5 1.5 0 0 0 14.5 2zM4 7a1 1 0 1 1 0-2 1 1 0 0 1 0 2m8 0a1 1 0 1 1 0-2 1 1 0 0 1 0 2M6 6a1 1 0 0 1 1-1h2a1 1 0 0 1 0 2H7a1 1 0 0 1-1-1\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m13.191 14-1.5-3H4.309l-1.5 3z\"},\"child\":[]}]})(props);\n};\nexport function BsCassette (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4 8a1 1 0 1 0 0-2 1 1 0 0 0 0 2m9-1a1 1 0 1 1-2 0 1 1 0 0 1 2 0M7 6a1 1 0 0 0 0 2h2a1 1 0 1 0 0-2z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M1.5 2A1.5 1.5 0 0 0 0 3.5v9A1.5 1.5 0 0 0 1.5 14h13a1.5 1.5 0 0 0 1.5-1.5v-9A1.5 1.5 0 0 0 14.5 2zM1 3.5a.5.5 0 0 1 .5-.5h13a.5.5 0 0 1 .5.5v9a.5.5 0 0 1-.5.5h-.691l-1.362-2.724A.5.5 0 0 0 12 10H4a.5.5 0 0 0-.447.276L2.19 13H1.5a.5.5 0 0 1-.5-.5zM11.691 11l1 2H3.309l1-2z\"},\"child\":[]}]})(props);\n};\nexport function BsCast (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m7.646 9.354-3.792 3.792a.5.5 0 0 0 .353.854h7.586a.5.5 0 0 0 .354-.854L8.354 9.354a.5.5 0 0 0-.708 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M11.414 11H14.5a.5.5 0 0 0 .5-.5v-7a.5.5 0 0 0-.5-.5h-13a.5.5 0 0 0-.5.5v7a.5.5 0 0 0 .5.5h3.086l-1 1H1.5A1.5 1.5 0 0 1 0 10.5v-7A1.5 1.5 0 0 1 1.5 2h13A1.5 1.5 0 0 1 16 3.5v7a1.5 1.5 0 0 1-1.5 1.5h-2.086z\"},\"child\":[]}]})(props);\n};\nexport function BsCcCircleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0M5.408 5.89c.681 0 1.138.47 1.187 1.107h1.147v-.11c-.053-1.187-1.024-2-2.343-2-1.604 0-2.518 1.05-2.518 2.751v.747c0 1.7.906 2.73 2.518 2.73 1.314 0 2.285-.792 2.343-1.939v-.114H6.595c-.049.615-.497 1.05-1.187 1.05-.84 0-1.318-.62-1.318-1.727v-.742c0-1.112.488-1.754 1.318-1.754Zm5.404 0c.68 0 1.138.47 1.186 1.107h1.147v-.11c-.053-1.187-1.024-2-2.342-2-1.604 0-2.518 1.05-2.518 2.751v.747c0 1.7.905 2.73 2.518 2.73 1.314 0 2.285-.792 2.342-1.939v-.114h-1.147c-.048.615-.496 1.05-1.186 1.05-.84 0-1.319-.62-1.319-1.727v-.742c0-1.112.488-1.754 1.319-1.754Z\"},\"child\":[]}]})(props);\n};\nexport function BsCcCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M1 8a7 7 0 1 0 14 0A7 7 0 0 0 1 8m15 0A8 8 0 1 1 0 8a8 8 0 0 1 16 0M5.408 5.89c-.83 0-1.318.64-1.318 1.753v.742c0 1.108.479 1.727 1.318 1.727.69 0 1.138-.435 1.187-1.05h1.147v.114c-.058 1.147-1.029 1.938-2.343 1.938-1.612 0-2.518-1.028-2.518-2.729v-.747c0-1.7.914-2.75 2.518-2.75 1.319 0 2.29.812 2.343 1.999v.11H6.595c-.049-.638-.506-1.108-1.187-1.108Zm5.404 0c-.831 0-1.319.64-1.319 1.753v.742c0 1.108.48 1.727 1.319 1.727.69 0 1.138-.435 1.186-1.05h1.147v.114c-.057 1.147-1.028 1.938-2.342 1.938-1.613 0-2.518-1.028-2.518-2.729v-.747c0-1.7.914-2.75 2.518-2.75 1.318 0 2.29.812 2.342 1.999v.11h-1.147c-.048-.638-.505-1.108-1.186-1.108Z\"},\"child\":[]}]})(props);\n};\nexport function BsCcSquareFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm3.408 5.89c-.83 0-1.318.64-1.318 1.753v.742c0 1.108.479 1.727 1.318 1.727.69 0 1.138-.435 1.187-1.05h1.147v.114c-.058 1.147-1.029 1.938-2.343 1.938-1.612 0-2.518-1.028-2.518-2.729v-.747c0-1.7.914-2.75 2.518-2.75 1.319 0 2.29.812 2.343 1.999v.11H6.595c-.049-.638-.506-1.108-1.187-1.108Zm5.404 0c-.831 0-1.319.64-1.319 1.753v.742c0 1.108.48 1.727 1.319 1.727.69 0 1.138-.435 1.186-1.05h1.147v.114c-.057 1.147-1.028 1.938-2.342 1.938-1.613 0-2.518-1.028-2.518-2.729v-.747c0-1.7.914-2.75 2.518-2.75 1.318 0 2.29.812 2.342 1.999v.11h-1.147c-.048-.638-.505-1.108-1.186-1.108Z\"},\"child\":[]}]})(props);\n};\nexport function BsCcSquare (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M15 2a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1zM0 2a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm5.408 3.89c-.83 0-1.318.64-1.318 1.753v.742c0 1.108.479 1.727 1.318 1.727.69 0 1.138-.435 1.187-1.05h1.147v.114c-.058 1.147-1.029 1.938-2.343 1.938-1.612 0-2.518-1.028-2.518-2.729v-.747c0-1.7.914-2.75 2.518-2.75 1.319 0 2.29.812 2.343 1.999v.11H6.595c-.049-.638-.506-1.108-1.187-1.108Zm5.404 0c-.831 0-1.319.64-1.319 1.753v.742c0 1.108.48 1.727 1.319 1.727.69 0 1.138-.435 1.186-1.05h1.147v.114c-.057 1.147-1.028 1.938-2.342 1.938-1.613 0-2.518-1.028-2.518-2.729v-.747c0-1.7.914-2.75 2.518-2.75 1.318 0 2.29.812 2.342 1.999v.11h-1.147c-.048-.638-.505-1.108-1.186-1.108Z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M15 2a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1zM0 2a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm5.408 3.89c-.83 0-1.318.64-1.318 1.753v.742c0 1.108.479 1.727 1.318 1.727.69 0 1.138-.435 1.187-1.05h1.147v.114c-.058 1.147-1.029 1.938-2.343 1.938-1.612 0-2.518-1.028-2.518-2.729v-.747c0-1.7.914-2.75 2.518-2.75 1.319 0 2.29.812 2.343 1.999v.11H6.595c-.049-.638-.506-1.108-1.187-1.108Zm5.404 0c-.831 0-1.319.64-1.319 1.753v.742c0 1.108.48 1.727 1.319 1.727.69 0 1.138-.435 1.186-1.05h1.147v.114c-.057 1.147-1.028 1.938-2.342 1.938-1.613 0-2.518-1.028-2.518-2.729v-.747c0-1.7.914-2.75 2.518-2.75 1.318 0 2.29.812 2.342 1.999v.11h-1.147c-.048-.638-.505-1.108-1.186-1.108Z\"},\"child\":[]}]})(props);\n};\nexport function BsChatDotsFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8c0 3.866-3.582 7-8 7a9 9 0 0 1-2.347-.306c-.584.296-1.925.864-4.181 1.234-.2.032-.352-.176-.273-.362.354-.836.674-1.95.77-2.966C.744 11.37 0 9.76 0 8c0-3.866 3.582-7 8-7s8 3.134 8 7M5 8a1 1 0 1 0-2 0 1 1 0 0 0 2 0m4 0a1 1 0 1 0-2 0 1 1 0 0 0 2 0m3 1a1 1 0 1 0 0-2 1 1 0 0 0 0 2\"},\"child\":[]}]})(props);\n};\nexport function BsChatDots (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5 8a1 1 0 1 1-2 0 1 1 0 0 1 2 0m4 0a1 1 0 1 1-2 0 1 1 0 0 1 2 0m3 1a1 1 0 1 0 0-2 1 1 0 0 0 0 2\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m2.165 15.803.02-.004c1.83-.363 2.948-.842 3.468-1.105A9 9 0 0 0 8 15c4.418 0 8-3.134 8-7s-3.582-7-8-7-8 3.134-8 7c0 1.76.743 3.37 1.97 4.6a10.4 10.4 0 0 1-.524 2.318l-.003.011a11 11 0 0 1-.244.637c-.079.186.074.394.273.362a22 22 0 0 0 .693-.125m.8-3.108a1 1 0 0 0-.287-.801C1.618 10.83 1 9.468 1 8c0-3.192 3.004-6 7-6s7 2.808 7 6-3.004 6-7 6a8 8 0 0 1-2.088-.272 1 1 0 0 0-.711.074c-.387.196-1.24.57-2.634.893a11 11 0 0 0 .398-2\"},\"child\":[]}]})(props);\n};\nexport function BsChatFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 15c4.418 0 8-3.134 8-7s-3.582-7-8-7-8 3.134-8 7c0 1.76.743 3.37 1.97 4.6-.097 1.016-.417 2.13-.771 2.966-.079.186.074.394.273.362 2.256-.37 3.597-.938 4.18-1.234A9 9 0 0 0 8 15\"},\"child\":[]}]})(props);\n};\nexport function BsChatHeartFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 15c4.418 0 8-3.134 8-7s-3.582-7-8-7-8 3.134-8 7c0 1.76.743 3.37 1.97 4.6-.097 1.016-.417 2.13-.771 2.966-.079.186.074.394.273.362 2.256-.37 3.597-.938 4.18-1.234A9 9 0 0 0 8 15m0-9.007c1.664-1.711 5.825 1.283 0 5.132-5.825-3.85-1.664-6.843 0-5.132\"},\"child\":[]}]})(props);\n};\nexport function BsChatHeart (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M2.965 12.695a1 1 0 0 0-.287-.801C1.618 10.83 1 9.468 1 8c0-3.192 3.004-6 7-6s7 2.808 7 6-3.004 6-7 6a8 8 0 0 1-2.088-.272 1 1 0 0 0-.711.074c-.387.196-1.24.57-2.634.893a11 11 0 0 0 .398-2m-.8 3.108.02-.004c1.83-.363 2.948-.842 3.468-1.105A9 9 0 0 0 8 15c4.418 0 8-3.134 8-7s-3.582-7-8-7-8 3.134-8 7c0 1.76.743 3.37 1.97 4.6a10.4 10.4 0 0 1-.524 2.318l-.003.011a11 11 0 0 1-.244.637c-.079.186.074.394.273.362a22 22 0 0 0 .693-.125M8 5.993c1.664-1.711 5.825 1.283 0 5.132-5.825-3.85-1.664-6.843 0-5.132\"},\"child\":[]}]})(props);\n};\nexport function BsChatLeftDotsFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 2a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H4.414a1 1 0 0 0-.707.293L.854 15.146A.5.5 0 0 1 0 14.793zm5 4a1 1 0 1 0-2 0 1 1 0 0 0 2 0m4 0a1 1 0 1 0-2 0 1 1 0 0 0 2 0m3 1a1 1 0 1 0 0-2 1 1 0 0 0 0 2\"},\"child\":[]}]})(props);\n};\nexport function BsChatLeftDots (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M14 1a1 1 0 0 1 1 1v8a1 1 0 0 1-1 1H4.414A2 2 0 0 0 3 11.586l-2 2V2a1 1 0 0 1 1-1zM2 0a2 2 0 0 0-2 2v12.793a.5.5 0 0 0 .854.353l2.853-2.853A1 1 0 0 1 4.414 12H14a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M5 6a1 1 0 1 1-2 0 1 1 0 0 1 2 0m4 0a1 1 0 1 1-2 0 1 1 0 0 1 2 0m4 0a1 1 0 1 1-2 0 1 1 0 0 1 2 0\"},\"child\":[]}]})(props);\n};\nexport function BsChatLeftFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 0a2 2 0 0 0-2 2v12.793a.5.5 0 0 0 .854.353l2.853-2.853A1 1 0 0 1 4.414 12H14a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2z\"},\"child\":[]}]})(props);\n};\nexport function BsChatLeftHeartFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 0a2 2 0 0 0-2 2v12.793a.5.5 0 0 0 .854.353l2.853-2.853A1 1 0 0 1 4.414 12H14a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm6 3.993c1.664-1.711 5.825 1.283 0 5.132-5.825-3.85-1.664-6.843 0-5.132\"},\"child\":[]}]})(props);\n};\nexport function BsChatLeftHeart (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M14 1a1 1 0 0 1 1 1v8a1 1 0 0 1-1 1H4.414A2 2 0 0 0 3 11.586l-2 2V2a1 1 0 0 1 1-1zM2 0a2 2 0 0 0-2 2v12.793a.5.5 0 0 0 .854.353l2.853-2.853A1 1 0 0 1 4.414 12H14a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8 3.993c1.664-1.711 5.825 1.283 0 5.132-5.825-3.85-1.664-6.843 0-5.132\"},\"child\":[]}]})(props);\n};\nexport function BsChatLeftQuoteFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 2a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H4.414a1 1 0 0 0-.707.293L.854 15.146A.5.5 0 0 1 0 14.793zm7.194 2.766a1.7 1.7 0 0 0-.227-.272 1.5 1.5 0 0 0-.469-.324l-.008-.004A1.8 1.8 0 0 0 5.734 4C4.776 4 4 4.746 4 5.667c0 .92.776 1.666 1.734 1.666.343 0 .662-.095.931-.26-.137.389-.39.804-.81 1.22a.405.405 0 0 0 .011.59c.173.16.447.155.614-.01 1.334-1.329 1.37-2.758.941-3.706a2.5 2.5 0 0 0-.227-.4zM11 7.073c-.136.389-.39.804-.81 1.22a.405.405 0 0 0 .012.59c.172.16.446.155.613-.01 1.334-1.329 1.37-2.758.942-3.706a2.5 2.5 0 0 0-.228-.4 1.7 1.7 0 0 0-.227-.273 1.5 1.5 0 0 0-.469-.324l-.008-.004A1.8 1.8 0 0 0 10.07 4c-.957 0-1.734.746-1.734 1.667 0 .92.777 1.666 1.734 1.666.343 0 .662-.095.931-.26z\"},\"child\":[]}]})(props);\n};\nexport function BsChatLeftQuote (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M14 1a1 1 0 0 1 1 1v8a1 1 0 0 1-1 1H4.414A2 2 0 0 0 3 11.586l-2 2V2a1 1 0 0 1 1-1zM2 0a2 2 0 0 0-2 2v12.793a.5.5 0 0 0 .854.353l2.853-2.853A1 1 0 0 1 4.414 12H14a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M7.066 4.76A1.665 1.665 0 0 0 4 5.668a1.667 1.667 0 0 0 2.561 1.406c-.131.389-.375.804-.777 1.22a.417.417 0 1 0 .6.58c1.486-1.54 1.293-3.214.682-4.112zm4 0A1.665 1.665 0 0 0 8 5.668a1.667 1.667 0 0 0 2.561 1.406c-.131.389-.375.804-.777 1.22a.417.417 0 1 0 .6.58c1.486-1.54 1.293-3.214.682-4.112z\"},\"child\":[]}]})(props);\n};\nexport function BsChatLeftTextFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 2a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H4.414a1 1 0 0 0-.707.293L.854 15.146A.5.5 0 0 1 0 14.793zm3.5 1a.5.5 0 0 0 0 1h9a.5.5 0 0 0 0-1zm0 2.5a.5.5 0 0 0 0 1h9a.5.5 0 0 0 0-1zm0 2.5a.5.5 0 0 0 0 1h5a.5.5 0 0 0 0-1z\"},\"child\":[]}]})(props);\n};\nexport function BsChatLeftText (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M14 1a1 1 0 0 1 1 1v8a1 1 0 0 1-1 1H4.414A2 2 0 0 0 3 11.586l-2 2V2a1 1 0 0 1 1-1zM2 0a2 2 0 0 0-2 2v12.793a.5.5 0 0 0 .854.353l2.853-2.853A1 1 0 0 1 4.414 12H14a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3 3.5a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5M3 6a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9A.5.5 0 0 1 3 6m0 2.5a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsChatLeft (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M14 1a1 1 0 0 1 1 1v8a1 1 0 0 1-1 1H4.414A2 2 0 0 0 3 11.586l-2 2V2a1 1 0 0 1 1-1zM2 0a2 2 0 0 0-2 2v12.793a.5.5 0 0 0 .854.353l2.853-2.853A1 1 0 0 1 4.414 12H14a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2z\"},\"child\":[]}]})(props);\n};\nexport function BsChatQuoteFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8c0 3.866-3.582 7-8 7a9 9 0 0 1-2.347-.306c-.584.296-1.925.864-4.181 1.234-.2.032-.352-.176-.273-.362.354-.836.674-1.95.77-2.966C.744 11.37 0 9.76 0 8c0-3.866 3.582-7 8-7s8 3.134 8 7M7.194 6.766a1.7 1.7 0 0 0-.227-.272 1.5 1.5 0 0 0-.469-.324l-.008-.004A1.8 1.8 0 0 0 5.734 6C4.776 6 4 6.746 4 7.667c0 .92.776 1.666 1.734 1.666.343 0 .662-.095.931-.26-.137.389-.39.804-.81 1.22a.405.405 0 0 0 .011.59c.173.16.447.155.614-.01 1.334-1.329 1.37-2.758.941-3.706a2.5 2.5 0 0 0-.227-.4zM11 9.073c-.136.389-.39.804-.81 1.22a.405.405 0 0 0 .012.59c.172.16.446.155.613-.01 1.334-1.329 1.37-2.758.942-3.706a2.5 2.5 0 0 0-.228-.4 1.7 1.7 0 0 0-.227-.273 1.5 1.5 0 0 0-.469-.324l-.008-.004A1.8 1.8 0 0 0 10.07 6c-.957 0-1.734.746-1.734 1.667 0 .92.777 1.666 1.734 1.666.343 0 .662-.095.931-.26z\"},\"child\":[]}]})(props);\n};\nexport function BsChatQuote (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2.678 11.894a1 1 0 0 1 .287.801 11 11 0 0 1-.398 2c1.395-.323 2.247-.697 2.634-.893a1 1 0 0 1 .71-.074A8 8 0 0 0 8 14c3.996 0 7-2.807 7-6s-3.004-6-7-6-7 2.808-7 6c0 1.468.617 2.83 1.678 3.894m-.493 3.905a22 22 0 0 1-.713.129c-.2.032-.352-.176-.273-.362a10 10 0 0 0 .244-.637l.003-.01c.248-.72.45-1.548.524-2.319C.743 11.37 0 9.76 0 8c0-3.866 3.582-7 8-7s8 3.134 8 7-3.582 7-8 7a9 9 0 0 1-2.347-.306c-.52.263-1.639.742-3.468 1.105\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M7.066 6.76A1.665 1.665 0 0 0 4 7.668a1.667 1.667 0 0 0 2.561 1.406c-.131.389-.375.804-.777 1.22a.417.417 0 0 0 .6.58c1.486-1.54 1.293-3.214.682-4.112zm4 0A1.665 1.665 0 0 0 8 7.668a1.667 1.667 0 0 0 2.561 1.406c-.131.389-.375.804-.777 1.22a.417.417 0 0 0 .6.58c1.486-1.54 1.293-3.214.682-4.112z\"},\"child\":[]}]})(props);\n};\nexport function BsChatRightDotsFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 2a2 2 0 0 0-2-2H2a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h9.586a1 1 0 0 1 .707.293l2.853 2.853a.5.5 0 0 0 .854-.353zM5 6a1 1 0 1 1-2 0 1 1 0 0 1 2 0m4 0a1 1 0 1 1-2 0 1 1 0 0 1 2 0m3 1a1 1 0 1 1 0-2 1 1 0 0 1 0 2\"},\"child\":[]}]})(props);\n};\nexport function BsChatRightDots (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 1a1 1 0 0 0-1 1v8a1 1 0 0 0 1 1h9.586a2 2 0 0 1 1.414.586l2 2V2a1 1 0 0 0-1-1zm12-1a2 2 0 0 1 2 2v12.793a.5.5 0 0 1-.854.353l-2.853-2.853a1 1 0 0 0-.707-.293H2a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M5 6a1 1 0 1 1-2 0 1 1 0 0 1 2 0m4 0a1 1 0 1 1-2 0 1 1 0 0 1 2 0m4 0a1 1 0 1 1-2 0 1 1 0 0 1 2 0\"},\"child\":[]}]})(props);\n};\nexport function BsChatRightFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M14 0a2 2 0 0 1 2 2v12.793a.5.5 0 0 1-.854.353l-2.853-2.853a1 1 0 0 0-.707-.293H2a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2z\"},\"child\":[]}]})(props);\n};\nexport function BsChatRightHeartFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 2a2 2 0 0 0-2-2H2a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h9.586a1 1 0 0 1 .707.293l2.853 2.853a.5.5 0 0 0 .854-.353zM8 3.993c1.664-1.711 5.825 1.283 0 5.132-5.825-3.85-1.664-6.843 0-5.132\"},\"child\":[]}]})(props);\n};\nexport function BsChatRightHeart (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 1a1 1 0 0 0-1 1v8a1 1 0 0 0 1 1h9.586a2 2 0 0 1 1.414.586l2 2V2a1 1 0 0 0-1-1zm12-1a2 2 0 0 1 2 2v12.793a.5.5 0 0 1-.854.353l-2.853-2.853a1 1 0 0 0-.707-.293H2a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8 3.993c1.664-1.711 5.825 1.283 0 5.132-5.825-3.85-1.664-6.843 0-5.132\"},\"child\":[]}]})(props);\n};\nexport function BsChatRightQuoteFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 2a2 2 0 0 0-2-2H2a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h9.586a1 1 0 0 1 .707.293l2.853 2.853a.5.5 0 0 0 .854-.353zM7.194 4.766q.13.188.227.401c.428.948.393 2.377-.942 3.706a.446.446 0 0 1-.612.01.405.405 0 0 1-.011-.59c.419-.416.672-.831.809-1.22-.269.165-.588.26-.93.26C4.775 7.333 4 6.587 4 5.667S4.776 4 5.734 4c.271 0 .528.06.756.166l.008.004c.169.07.327.182.469.324q.128.125.227.272M11 7.073c-.269.165-.588.26-.93.26-.958 0-1.735-.746-1.735-1.666S9.112 4 10.069 4c.271 0 .528.06.756.166l.008.004c.17.07.327.182.469.324q.128.125.227.272.131.188.228.401c.428.948.392 2.377-.942 3.706a.446.446 0 0 1-.613.01.405.405 0 0 1-.011-.59c.42-.416.672-.831.81-1.22z\"},\"child\":[]}]})(props);\n};\nexport function BsChatRightQuote (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 1a1 1 0 0 0-1 1v8a1 1 0 0 0 1 1h9.586a2 2 0 0 1 1.414.586l2 2V2a1 1 0 0 0-1-1zm12-1a2 2 0 0 1 2 2v12.793a.5.5 0 0 1-.854.353l-2.853-2.853a1 1 0 0 0-.707-.293H2a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M7.066 4.76A1.665 1.665 0 0 0 4 5.668a1.667 1.667 0 0 0 2.561 1.406c-.131.389-.375.804-.777 1.22a.417.417 0 1 0 .6.58c1.486-1.54 1.293-3.214.682-4.112zm4 0A1.665 1.665 0 0 0 8 5.668a1.667 1.667 0 0 0 2.561 1.406c-.131.389-.375.804-.777 1.22a.417.417 0 1 0 .6.58c1.486-1.54 1.293-3.214.682-4.112z\"},\"child\":[]}]})(props);\n};\nexport function BsChatRightTextFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 2a2 2 0 0 0-2-2H2a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h9.586a1 1 0 0 1 .707.293l2.853 2.853a.5.5 0 0 0 .854-.353zM3.5 3h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1 0-1m0 2.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1 0-1m0 2.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1 0-1\"},\"child\":[]}]})(props);\n};\nexport function BsChatRightText (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 1a1 1 0 0 0-1 1v8a1 1 0 0 0 1 1h9.586a2 2 0 0 1 1.414.586l2 2V2a1 1 0 0 0-1-1zm12-1a2 2 0 0 1 2 2v12.793a.5.5 0 0 1-.854.353l-2.853-2.853a1 1 0 0 0-.707-.293H2a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3 3.5a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5M3 6a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9A.5.5 0 0 1 3 6m0 2.5a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsChatRight (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 1a1 1 0 0 0-1 1v8a1 1 0 0 0 1 1h9.586a2 2 0 0 1 1.414.586l2 2V2a1 1 0 0 0-1-1zm12-1a2 2 0 0 1 2 2v12.793a.5.5 0 0 1-.854.353l-2.853-2.853a1 1 0 0 0-.707-.293H2a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2z\"},\"child\":[]}]})(props);\n};\nexport function BsChatSquareDotsFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 2a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2h-2.5a1 1 0 0 0-.8.4l-1.9 2.533a1 1 0 0 1-1.6 0L5.3 12.4a1 1 0 0 0-.8-.4H2a2 2 0 0 1-2-2zm5 4a1 1 0 1 0-2 0 1 1 0 0 0 2 0m4 0a1 1 0 1 0-2 0 1 1 0 0 0 2 0m3 1a1 1 0 1 0 0-2 1 1 0 0 0 0 2\"},\"child\":[]}]})(props);\n};\nexport function BsChatSquareDots (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M14 1a1 1 0 0 1 1 1v8a1 1 0 0 1-1 1h-2.5a2 2 0 0 0-1.6.8L8 14.333 6.1 11.8a2 2 0 0 0-1.6-.8H2a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1zM2 0a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h2.5a1 1 0 0 1 .8.4l1.9 2.533a1 1 0 0 0 1.6 0l1.9-2.533a1 1 0 0 1 .8-.4H14a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M5 6a1 1 0 1 1-2 0 1 1 0 0 1 2 0m4 0a1 1 0 1 1-2 0 1 1 0 0 1 2 0m4 0a1 1 0 1 1-2 0 1 1 0 0 1 2 0\"},\"child\":[]}]})(props);\n};\nexport function BsChatSquareFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 0a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h2.5a1 1 0 0 1 .8.4l1.9 2.533a1 1 0 0 0 1.6 0l1.9-2.533a1 1 0 0 1 .8-.4H14a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2z\"},\"child\":[]}]})(props);\n};\nexport function BsChatSquareHeartFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 0a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h2.5a1 1 0 0 1 .8.4l1.9 2.533a1 1 0 0 0 1.6 0l1.9-2.533a1 1 0 0 1 .8-.4H14a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm6 3.993c1.664-1.711 5.825 1.283 0 5.132-5.825-3.85-1.664-6.843 0-5.132\"},\"child\":[]}]})(props);\n};\nexport function BsChatSquareHeart (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M14 1a1 1 0 0 1 1 1v8a1 1 0 0 1-1 1h-2.5a2 2 0 0 0-1.6.8L8 14.333 6.1 11.8a2 2 0 0 0-1.6-.8H2a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1zM2 0a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h2.5a1 1 0 0 1 .8.4l1.9 2.533a1 1 0 0 0 1.6 0l1.9-2.533a1 1 0 0 1 .8-.4H14a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8 3.993c1.664-1.711 5.825 1.283 0 5.132-5.825-3.85-1.664-6.843 0-5.132\"},\"child\":[]}]})(props);\n};\nexport function BsChatSquareQuoteFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 2a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2h-2.5a1 1 0 0 0-.8.4l-1.9 2.533a1 1 0 0 1-1.6 0L5.3 12.4a1 1 0 0 0-.8-.4H2a2 2 0 0 1-2-2zm7.194 2.766a1.7 1.7 0 0 0-.227-.272 1.5 1.5 0 0 0-.469-.324l-.008-.004A1.8 1.8 0 0 0 5.734 4C4.776 4 4 4.746 4 5.667c0 .92.776 1.666 1.734 1.666.343 0 .662-.095.931-.26-.137.389-.39.804-.81 1.22a.405.405 0 0 0 .011.59c.173.16.447.155.614-.01 1.334-1.329 1.37-2.758.941-3.706a2.5 2.5 0 0 0-.227-.4zM11 7.073c-.136.389-.39.804-.81 1.22a.405.405 0 0 0 .012.59c.172.16.446.155.613-.01 1.334-1.329 1.37-2.758.942-3.706a2.5 2.5 0 0 0-.228-.4 1.7 1.7 0 0 0-.227-.273 1.5 1.5 0 0 0-.469-.324l-.008-.004A1.8 1.8 0 0 0 10.07 4c-.957 0-1.734.746-1.734 1.667 0 .92.777 1.666 1.734 1.666.343 0 .662-.095.931-.26z\"},\"child\":[]}]})(props);\n};\nexport function BsChatSquareQuote (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M14 1a1 1 0 0 1 1 1v8a1 1 0 0 1-1 1h-2.5a2 2 0 0 0-1.6.8L8 14.333 6.1 11.8a2 2 0 0 0-1.6-.8H2a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1zM2 0a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h2.5a1 1 0 0 1 .8.4l1.9 2.533a1 1 0 0 0 1.6 0l1.9-2.533a1 1 0 0 1 .8-.4H14a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M7.066 4.76A1.665 1.665 0 0 0 4 5.668a1.667 1.667 0 0 0 2.561 1.406c-.131.389-.375.804-.777 1.22a.417.417 0 1 0 .6.58c1.486-1.54 1.293-3.214.682-4.112zm4 0A1.665 1.665 0 0 0 8 5.668a1.667 1.667 0 0 0 2.561 1.406c-.131.389-.375.804-.777 1.22a.417.417 0 1 0 .6.58c1.486-1.54 1.293-3.214.682-4.112z\"},\"child\":[]}]})(props);\n};\nexport function BsChatSquareTextFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 2a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2h-2.5a1 1 0 0 0-.8.4l-1.9 2.533a1 1 0 0 1-1.6 0L5.3 12.4a1 1 0 0 0-.8-.4H2a2 2 0 0 1-2-2zm3.5 1a.5.5 0 0 0 0 1h9a.5.5 0 0 0 0-1zm0 2.5a.5.5 0 0 0 0 1h9a.5.5 0 0 0 0-1zm0 2.5a.5.5 0 0 0 0 1h5a.5.5 0 0 0 0-1z\"},\"child\":[]}]})(props);\n};\nexport function BsChatSquareText (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M14 1a1 1 0 0 1 1 1v8a1 1 0 0 1-1 1h-2.5a2 2 0 0 0-1.6.8L8 14.333 6.1 11.8a2 2 0 0 0-1.6-.8H2a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1zM2 0a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h2.5a1 1 0 0 1 .8.4l1.9 2.533a1 1 0 0 0 1.6 0l1.9-2.533a1 1 0 0 1 .8-.4H14a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3 3.5a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5M3 6a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9A.5.5 0 0 1 3 6m0 2.5a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsChatSquare (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M14 1a1 1 0 0 1 1 1v8a1 1 0 0 1-1 1h-2.5a2 2 0 0 0-1.6.8L8 14.333 6.1 11.8a2 2 0 0 0-1.6-.8H2a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1zM2 0a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h2.5a1 1 0 0 1 .8.4l1.9 2.533a1 1 0 0 0 1.6 0l1.9-2.533a1 1 0 0 1 .8-.4H14a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2z\"},\"child\":[]}]})(props);\n};\nexport function BsChatTextFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8c0 3.866-3.582 7-8 7a9 9 0 0 1-2.347-.306c-.584.296-1.925.864-4.181 1.234-.2.032-.352-.176-.273-.362.354-.836.674-1.95.77-2.966C.744 11.37 0 9.76 0 8c0-3.866 3.582-7 8-7s8 3.134 8 7M4.5 5a.5.5 0 0 0 0 1h7a.5.5 0 0 0 0-1zm0 2.5a.5.5 0 0 0 0 1h7a.5.5 0 0 0 0-1zm0 2.5a.5.5 0 0 0 0 1h4a.5.5 0 0 0 0-1z\"},\"child\":[]}]})(props);\n};\nexport function BsChatText (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2.678 11.894a1 1 0 0 1 .287.801 11 11 0 0 1-.398 2c1.395-.323 2.247-.697 2.634-.893a1 1 0 0 1 .71-.074A8 8 0 0 0 8 14c3.996 0 7-2.807 7-6s-3.004-6-7-6-7 2.808-7 6c0 1.468.617 2.83 1.678 3.894m-.493 3.905a22 22 0 0 1-.713.129c-.2.032-.352-.176-.273-.362a10 10 0 0 0 .244-.637l.003-.01c.248-.72.45-1.548.524-2.319C.743 11.37 0 9.76 0 8c0-3.866 3.582-7 8-7s8 3.134 8 7-3.582 7-8 7a9 9 0 0 1-2.347-.306c-.52.263-1.639.742-3.468 1.105\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4 5.5a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5M4 8a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7A.5.5 0 0 1 4 8m0 2.5a.5.5 0 0 1 .5-.5h4a.5.5 0 0 1 0 1h-4a.5.5 0 0 1-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsChat (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2.678 11.894a1 1 0 0 1 .287.801 11 11 0 0 1-.398 2c1.395-.323 2.247-.697 2.634-.893a1 1 0 0 1 .71-.074A8 8 0 0 0 8 14c3.996 0 7-2.807 7-6s-3.004-6-7-6-7 2.808-7 6c0 1.468.617 2.83 1.678 3.894m-.493 3.905a22 22 0 0 1-.713.129c-.2.032-.352-.176-.273-.362a10 10 0 0 0 .244-.637l.003-.01c.248-.72.45-1.548.524-2.319C.743 11.37 0 9.76 0 8c0-3.866 3.582-7 8-7s8 3.134 8 7-3.582 7-8 7a9 9 0 0 1-2.347-.306c-.52.263-1.639.742-3.468 1.105\"},\"child\":[]}]})(props);\n};\nexport function BsCheckAll (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.97 4.97a.75.75 0 0 1 1.07 1.05l-3.99 4.99a.75.75 0 0 1-1.08.02L2.324 8.384a.75.75 0 1 1 1.06-1.06l2.094 2.093L8.95 4.992zm-.92 5.14.92.92a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 1 0-1.091-1.028L9.477 9.417l-.485-.486z\"},\"child\":[]}]})(props);\n};\nexport function BsCheckCircleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0m-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z\"},\"child\":[]}]})(props);\n};\nexport function BsCheckCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14m0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m10.97 4.97-.02.022-3.473 4.425-2.093-2.094a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-1.071-1.05\"},\"child\":[]}]})(props);\n};\nexport function BsCheckLg (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12.736 3.97a.733.733 0 0 1 1.047 0c.286.289.29.756.01 1.05L7.88 12.01a.733.733 0 0 1-1.065.02L3.217 8.384a.757.757 0 0 1 0-1.06.733.733 0 0 1 1.047 0l3.052 3.093 5.4-6.425z\"},\"child\":[]}]})(props);\n};\nexport function BsCheckSquareFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm10.03 4.97a.75.75 0 0 1 .011 1.05l-3.992 4.99a.75.75 0 0 1-1.08.02L4.324 8.384a.75.75 0 1 1 1.06-1.06l2.094 2.093 3.473-4.425a.75.75 0 0 1 1.08-.022z\"},\"child\":[]}]})(props);\n};\nexport function BsCheckSquare (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M14 1a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1zM2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M10.97 4.97a.75.75 0 0 1 1.071 1.05l-3.992 4.99a.75.75 0 0 1-1.08.02L4.324 8.384a.75.75 0 1 1 1.06-1.06l2.094 2.093 3.473-4.425z\"},\"child\":[]}]})(props);\n};\nexport function BsCheck (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M10.97 4.97a.75.75 0 0 1 1.07 1.05l-3.99 4.99a.75.75 0 0 1-1.08.02L4.324 8.384a.75.75 0 1 1 1.06-1.06l2.094 2.093 3.473-4.425z\"},\"child\":[]}]})(props);\n};\nexport function BsCheck2All (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12.354 4.354a.5.5 0 0 0-.708-.708L5 10.293 1.854 7.146a.5.5 0 1 0-.708.708l3.5 3.5a.5.5 0 0 0 .708 0zm-4.208 7-.896-.897.707-.707.543.543 6.646-6.647a.5.5 0 0 1 .708.708l-7 7a.5.5 0 0 1-.708 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m5.354 7.146.896.897-.707.707-.897-.896a.5.5 0 1 1 .708-.708\"},\"child\":[]}]})(props);\n};\nexport function BsCheck2Circle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2.5 8a5.5 5.5 0 0 1 8.25-4.764.5.5 0 0 0 .5-.866A6.5 6.5 0 1 0 14.5 8a.5.5 0 0 0-1 0 5.5 5.5 0 1 1-11 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M15.354 3.354a.5.5 0 0 0-.708-.708L8 9.293 5.354 6.646a.5.5 0 1 0-.708.708l3 3a.5.5 0 0 0 .708 0z\"},\"child\":[]}]})(props);\n};\nexport function BsCheck2Square (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3 14.5A1.5 1.5 0 0 1 1.5 13V3A1.5 1.5 0 0 1 3 1.5h8a.5.5 0 0 1 0 1H3a.5.5 0 0 0-.5.5v10a.5.5 0 0 0 .5.5h10a.5.5 0 0 0 .5-.5V8a.5.5 0 0 1 1 0v5a1.5 1.5 0 0 1-1.5 1.5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m8.354 10.354 7-7a.5.5 0 0 0-.708-.708L8 9.293 5.354 6.646a.5.5 0 1 0-.708.708l3 3a.5.5 0 0 0 .708 0\"},\"child\":[]}]})(props);\n};\nexport function BsCheck2 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M13.854 3.646a.5.5 0 0 1 0 .708l-7 7a.5.5 0 0 1-.708 0l-3.5-3.5a.5.5 0 1 1 .708-.708L6.5 10.293l6.646-6.647a.5.5 0 0 1 .708 0\"},\"child\":[]}]})(props);\n};\nexport function BsChevronBarContract (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M3.646 14.854a.5.5 0 0 0 .708 0L8 11.207l3.646 3.647a.5.5 0 0 0 .708-.708l-4-4a.5.5 0 0 0-.708 0l-4 4a.5.5 0 0 0 0 .708m0-13.708a.5.5 0 0 1 .708 0L8 4.793l3.646-3.647a.5.5 0 0 1 .708.708l-4 4a.5.5 0 0 1-.708 0l-4-4a.5.5 0 0 1 0-.708M1 8a.5.5 0 0 1 .5-.5h13a.5.5 0 0 1 0 1h-13A.5.5 0 0 1 1 8\"},\"child\":[]}]})(props);\n};\nexport function BsChevronBarDown (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M3.646 4.146a.5.5 0 0 1 .708 0L8 7.793l3.646-3.647a.5.5 0 0 1 .708.708l-4 4a.5.5 0 0 1-.708 0l-4-4a.5.5 0 0 1 0-.708M1 11.5a.5.5 0 0 1 .5-.5h13a.5.5 0 0 1 0 1h-13a.5.5 0 0 1-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsChevronBarExpand (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M3.646 10.146a.5.5 0 0 1 .708 0L8 13.793l3.646-3.647a.5.5 0 0 1 .708.708l-4 4a.5.5 0 0 1-.708 0l-4-4a.5.5 0 0 1 0-.708m0-4.292a.5.5 0 0 0 .708 0L8 2.207l3.646 3.647a.5.5 0 0 0 .708-.708l-4-4a.5.5 0 0 0-.708 0l-4 4a.5.5 0 0 0 0 .708M1 8a.5.5 0 0 1 .5-.5h13a.5.5 0 0 1 0 1h-13A.5.5 0 0 1 1 8\"},\"child\":[]}]})(props);\n};\nexport function BsChevronBarLeft (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M11.854 3.646a.5.5 0 0 1 0 .708L8.207 8l3.647 3.646a.5.5 0 0 1-.708.708l-4-4a.5.5 0 0 1 0-.708l4-4a.5.5 0 0 1 .708 0M4.5 1a.5.5 0 0 0-.5.5v13a.5.5 0 0 0 1 0v-13a.5.5 0 0 0-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsChevronBarRight (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M4.146 3.646a.5.5 0 0 0 0 .708L7.793 8l-3.647 3.646a.5.5 0 0 0 .708.708l4-4a.5.5 0 0 0 0-.708l-4-4a.5.5 0 0 0-.708 0M11.5 1a.5.5 0 0 1 .5.5v13a.5.5 0 0 1-1 0v-13a.5.5 0 0 1 .5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsChevronBarUp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M3.646 11.854a.5.5 0 0 0 .708 0L8 8.207l3.646 3.647a.5.5 0 0 0 .708-.708l-4-4a.5.5 0 0 0-.708 0l-4 4a.5.5 0 0 0 0 .708M2.4 5.2c0 .22.18.4.4.4h10.4a.4.4 0 0 0 0-.8H2.8a.4.4 0 0 0-.4.4\"},\"child\":[]}]})(props);\n};\nexport function BsChevronCompactDown (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M1.553 6.776a.5.5 0 0 1 .67-.223L8 9.44l5.776-2.888a.5.5 0 1 1 .448.894l-6 3a.5.5 0 0 1-.448 0l-6-3a.5.5 0 0 1-.223-.67\"},\"child\":[]}]})(props);\n};\nexport function BsChevronCompactLeft (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M9.224 1.553a.5.5 0 0 1 .223.67L6.56 8l2.888 5.776a.5.5 0 1 1-.894.448l-3-6a.5.5 0 0 1 0-.448l3-6a.5.5 0 0 1 .67-.223\"},\"child\":[]}]})(props);\n};\nexport function BsChevronCompactRight (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M6.776 1.553a.5.5 0 0 1 .671.223l3 6a.5.5 0 0 1 0 .448l-3 6a.5.5 0 1 1-.894-.448L9.44 8 6.553 2.224a.5.5 0 0 1 .223-.671\"},\"child\":[]}]})(props);\n};\nexport function BsChevronCompactUp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M7.776 5.553a.5.5 0 0 1 .448 0l6 3a.5.5 0 1 1-.448.894L8 6.56 2.224 9.447a.5.5 0 1 1-.448-.894z\"},\"child\":[]}]})(props);\n};\nexport function BsChevronContract (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M3.646 13.854a.5.5 0 0 0 .708 0L8 10.207l3.646 3.647a.5.5 0 0 0 .708-.708l-4-4a.5.5 0 0 0-.708 0l-4 4a.5.5 0 0 0 0 .708m0-11.708a.5.5 0 0 1 .708 0L8 5.793l3.646-3.647a.5.5 0 0 1 .708.708l-4 4a.5.5 0 0 1-.708 0l-4-4a.5.5 0 0 1 0-.708\"},\"child\":[]}]})(props);\n};\nexport function BsChevronDoubleDown (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M1.646 6.646a.5.5 0 0 1 .708 0L8 12.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M1.646 2.646a.5.5 0 0 1 .708 0L8 8.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708\"},\"child\":[]}]})(props);\n};\nexport function BsChevronDoubleLeft (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M8.354 1.646a.5.5 0 0 1 0 .708L2.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M12.354 1.646a.5.5 0 0 1 0 .708L6.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0\"},\"child\":[]}]})(props);\n};\nexport function BsChevronDoubleRight (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M3.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L9.293 8 3.646 2.354a.5.5 0 0 1 0-.708\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M7.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L13.293 8 7.646 2.354a.5.5 0 0 1 0-.708\"},\"child\":[]}]})(props);\n};\nexport function BsChevronDoubleUp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M7.646 2.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1-.708.708L8 3.707 2.354 9.354a.5.5 0 1 1-.708-.708z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M7.646 6.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1-.708.708L8 7.707l-5.646 5.647a.5.5 0 0 1-.708-.708z\"},\"child\":[]}]})(props);\n};\nexport function BsChevronDown (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708\"},\"child\":[]}]})(props);\n};\nexport function BsChevronExpand (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M3.646 9.146a.5.5 0 0 1 .708 0L8 12.793l3.646-3.647a.5.5 0 0 1 .708.708l-4 4a.5.5 0 0 1-.708 0l-4-4a.5.5 0 0 1 0-.708m0-2.292a.5.5 0 0 0 .708 0L8 3.207l3.646 3.647a.5.5 0 0 0 .708-.708l-4-4a.5.5 0 0 0-.708 0l-4 4a.5.5 0 0 0 0 .708\"},\"child\":[]}]})(props);\n};\nexport function BsChevronLeft (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0\"},\"child\":[]}]})(props);\n};\nexport function BsChevronRight (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708\"},\"child\":[]}]})(props);\n};\nexport function BsChevronUp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M7.646 4.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1-.708.708L8 5.707l-5.646 5.647a.5.5 0 0 1-.708-.708z\"},\"child\":[]}]})(props);\n};\nexport function BsCircleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"circle\",\"attr\":{\"cx\":\"8\",\"cy\":\"8\",\"r\":\"8\"},\"child\":[]}]})(props);\n};\nexport function BsCircleHalf (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 15A7 7 0 1 0 8 1zm0 1A8 8 0 1 1 8 0a8 8 0 0 1 0 16\"},\"child\":[]}]})(props);\n};\nexport function BsCircleSquare (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 6a6 6 0 1 1 12 0A6 6 0 0 1 0 6\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M12.93 5h1.57a.5.5 0 0 1 .5.5v9a.5.5 0 0 1-.5.5h-9a.5.5 0 0 1-.5-.5v-1.57a7 7 0 0 1-1-.22v1.79A1.5 1.5 0 0 0 5.5 16h9a1.5 1.5 0 0 0 1.5-1.5v-9A1.5 1.5 0 0 0 14.5 4h-1.79q.145.486.22 1\"},\"child\":[]}]})(props);\n};\nexport function BsCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14m0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16\"},\"child\":[]}]})(props);\n};\nexport function BsClipboardCheckFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.5 0A1.5 1.5 0 0 0 5 1.5v1A1.5 1.5 0 0 0 6.5 4h3A1.5 1.5 0 0 0 11 2.5v-1A1.5 1.5 0 0 0 9.5 0zm3 1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4 1.5H3a2 2 0 0 0-2 2V14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3.5a2 2 0 0 0-2-2h-1v1A2.5 2.5 0 0 1 9.5 5h-3A2.5 2.5 0 0 1 4 2.5zm6.854 7.354-3 3a.5.5 0 0 1-.708 0l-1.5-1.5a.5.5 0 0 1 .708-.708L7.5 10.793l2.646-2.647a.5.5 0 0 1 .708.708\"},\"child\":[]}]})(props);\n};\nexport function BsClipboardCheck (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M10.854 7.146a.5.5 0 0 1 0 .708l-3 3a.5.5 0 0 1-.708 0l-1.5-1.5a.5.5 0 1 1 .708-.708L7.5 9.793l2.646-2.647a.5.5 0 0 1 .708 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4 1.5H3a2 2 0 0 0-2 2V14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3.5a2 2 0 0 0-2-2h-1v1h1a1 1 0 0 1 1 1V14a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V3.5a1 1 0 0 1 1-1h1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M9.5 1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5zm-3-1A1.5 1.5 0 0 0 5 1.5v1A1.5 1.5 0 0 0 6.5 4h3A1.5 1.5 0 0 0 11 2.5v-1A1.5 1.5 0 0 0 9.5 0z\"},\"child\":[]}]})(props);\n};\nexport function BsClipboardDataFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.5 0A1.5 1.5 0 0 0 5 1.5v1A1.5 1.5 0 0 0 6.5 4h3A1.5 1.5 0 0 0 11 2.5v-1A1.5 1.5 0 0 0 9.5 0zm3 1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4 1.5H3a2 2 0 0 0-2 2V14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3.5a2 2 0 0 0-2-2h-1v1A2.5 2.5 0 0 1 9.5 5h-3A2.5 2.5 0 0 1 4 2.5zM10 8a1 1 0 1 1 2 0v5a1 1 0 1 1-2 0zm-6 4a1 1 0 1 1 2 0v1a1 1 0 1 1-2 0zm4-3a1 1 0 0 1 1 1v3a1 1 0 1 1-2 0v-3a1 1 0 0 1 1-1\"},\"child\":[]}]})(props);\n};\nexport function BsClipboardData (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4 11a1 1 0 1 1 2 0v1a1 1 0 1 1-2 0zm6-4a1 1 0 1 1 2 0v5a1 1 0 1 1-2 0zM7 9a1 1 0 0 1 2 0v3a1 1 0 1 1-2 0z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4 1.5H3a2 2 0 0 0-2 2V14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3.5a2 2 0 0 0-2-2h-1v1h1a1 1 0 0 1 1 1V14a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V3.5a1 1 0 0 1 1-1h1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M9.5 1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5zm-3-1A1.5 1.5 0 0 0 5 1.5v1A1.5 1.5 0 0 0 6.5 4h3A1.5 1.5 0 0 0 11 2.5v-1A1.5 1.5 0 0 0 9.5 0z\"},\"child\":[]}]})(props);\n};\nexport function BsClipboardFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M10 1.5a.5.5 0 0 0-.5-.5h-3a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h3a.5.5 0 0 0 .5-.5zm-5 0A1.5 1.5 0 0 1 6.5 0h3A1.5 1.5 0 0 1 11 1.5v1A1.5 1.5 0 0 1 9.5 4h-3A1.5 1.5 0 0 1 5 2.5zm-2 0h1v1A2.5 2.5 0 0 0 6.5 5h3A2.5 2.5 0 0 0 12 2.5v-1h1a2 2 0 0 1 2 2V14a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2V3.5a2 2 0 0 1 2-2\"},\"child\":[]}]})(props);\n};\nexport function BsClipboardHeartFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M6.5 0A1.5 1.5 0 0 0 5 1.5v1A1.5 1.5 0 0 0 6.5 4h3A1.5 1.5 0 0 0 11 2.5v-1A1.5 1.5 0 0 0 9.5 0zm3 1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M4 1.5H3a2 2 0 0 0-2 2V14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3.5a2 2 0 0 0-2-2h-1v1A2.5 2.5 0 0 1 9.5 5h-3A2.5 2.5 0 0 1 4 2.5zm4 5.982c1.664-1.673 5.825 1.254 0 5.018-5.825-3.764-1.664-6.69 0-5.018\"},\"child\":[]}]})(props);\n};\nexport function BsClipboardHeart (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M5 1.5A1.5 1.5 0 0 1 6.5 0h3A1.5 1.5 0 0 1 11 1.5v1A1.5 1.5 0 0 1 9.5 4h-3A1.5 1.5 0 0 1 5 2.5zm5 0a.5.5 0 0 0-.5-.5h-3a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h3a.5.5 0 0 0 .5-.5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3 1.5h1v1H3a1 1 0 0 0-1 1V14a1 1 0 0 0 1 1h10a1 1 0 0 0 1-1V3.5a1 1 0 0 0-1-1h-1v-1h1a2 2 0 0 1 2 2V14a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2V3.5a2 2 0 0 1 2-2\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8 6.982C9.664 5.309 13.825 8.236 8 12 2.175 8.236 6.336 5.31 8 6.982\"},\"child\":[]}]})(props);\n};\nexport function BsClipboardMinusFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.5 0A1.5 1.5 0 0 0 5 1.5v1A1.5 1.5 0 0 0 6.5 4h3A1.5 1.5 0 0 0 11 2.5v-1A1.5 1.5 0 0 0 9.5 0zm3 1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4 1.5H3a2 2 0 0 0-2 2V14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3.5a2 2 0 0 0-2-2h-1v1A2.5 2.5 0 0 1 9.5 5h-3A2.5 2.5 0 0 1 4 2.5zM6 9h4a.5.5 0 0 1 0 1H6a.5.5 0 0 1 0-1\"},\"child\":[]}]})(props);\n};\nexport function BsClipboardMinus (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M5.5 9.5A.5.5 0 0 1 6 9h4a.5.5 0 0 1 0 1H6a.5.5 0 0 1-.5-.5\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4 1.5H3a2 2 0 0 0-2 2V14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3.5a2 2 0 0 0-2-2h-1v1h1a1 1 0 0 1 1 1V14a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V3.5a1 1 0 0 1 1-1h1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M9.5 1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5zm-3-1A1.5 1.5 0 0 0 5 1.5v1A1.5 1.5 0 0 0 6.5 4h3A1.5 1.5 0 0 0 11 2.5v-1A1.5 1.5 0 0 0 9.5 0z\"},\"child\":[]}]})(props);\n};\nexport function BsClipboardPlusFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.5 0A1.5 1.5 0 0 0 5 1.5v1A1.5 1.5 0 0 0 6.5 4h3A1.5 1.5 0 0 0 11 2.5v-1A1.5 1.5 0 0 0 9.5 0zm3 1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4 1.5H3a2 2 0 0 0-2 2V14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3.5a2 2 0 0 0-2-2h-1v1A2.5 2.5 0 0 1 9.5 5h-3A2.5 2.5 0 0 1 4 2.5zm4.5 6V9H10a.5.5 0 0 1 0 1H8.5v1.5a.5.5 0 0 1-1 0V10H6a.5.5 0 0 1 0-1h1.5V7.5a.5.5 0 0 1 1 0\"},\"child\":[]}]})(props);\n};\nexport function BsClipboardPlus (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M8 7a.5.5 0 0 1 .5.5V9H10a.5.5 0 0 1 0 1H8.5v1.5a.5.5 0 0 1-1 0V10H6a.5.5 0 0 1 0-1h1.5V7.5A.5.5 0 0 1 8 7\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4 1.5H3a2 2 0 0 0-2 2V14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3.5a2 2 0 0 0-2-2h-1v1h1a1 1 0 0 1 1 1V14a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V3.5a1 1 0 0 1 1-1h1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M9.5 1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5zm-3-1A1.5 1.5 0 0 0 5 1.5v1A1.5 1.5 0 0 0 6.5 4h3A1.5 1.5 0 0 0 11 2.5v-1A1.5 1.5 0 0 0 9.5 0z\"},\"child\":[]}]})(props);\n};\nexport function BsClipboardPulse (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M10 1.5a.5.5 0 0 0-.5-.5h-3a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h3a.5.5 0 0 0 .5-.5zm-5 0A1.5 1.5 0 0 1 6.5 0h3A1.5 1.5 0 0 1 11 1.5v1A1.5 1.5 0 0 1 9.5 4h-3A1.5 1.5 0 0 1 5 2.5zm-2 0h1v1H3a1 1 0 0 0-1 1V14a1 1 0 0 0 1 1h10a1 1 0 0 0 1-1V3.5a1 1 0 0 0-1-1h-1v-1h1a2 2 0 0 1 2 2V14a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2V3.5a2 2 0 0 1 2-2m6.979 3.856a.5.5 0 0 0-.968.04L7.92 10.49l-.94-3.135a.5.5 0 0 0-.895-.133L4.232 10H3.5a.5.5 0 0 0 0 1h1a.5.5 0 0 0 .416-.223l1.41-2.115 1.195 3.982a.5.5 0 0 0 .968-.04L9.58 7.51l.94 3.135A.5.5 0 0 0 11 11h1.5a.5.5 0 0 0 0-1h-1.128z\"},\"child\":[]}]})(props);\n};\nexport function BsClipboardXFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.5 0A1.5 1.5 0 0 0 5 1.5v1A1.5 1.5 0 0 0 6.5 4h3A1.5 1.5 0 0 0 11 2.5v-1A1.5 1.5 0 0 0 9.5 0zm3 1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4 1.5H3a2 2 0 0 0-2 2V14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3.5a2 2 0 0 0-2-2h-1v1A2.5 2.5 0 0 1 9.5 5h-3A2.5 2.5 0 0 1 4 2.5zm4 7.793 1.146-1.147a.5.5 0 1 1 .708.708L8.707 10l1.147 1.146a.5.5 0 0 1-.708.708L8 10.707l-1.146 1.147a.5.5 0 0 1-.708-.708L7.293 10 6.146 8.854a.5.5 0 1 1 .708-.708z\"},\"child\":[]}]})(props);\n};\nexport function BsClipboardX (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M6.146 7.146a.5.5 0 0 1 .708 0L8 8.293l1.146-1.147a.5.5 0 1 1 .708.708L8.707 9l1.147 1.146a.5.5 0 0 1-.708.708L8 9.707l-1.146 1.147a.5.5 0 0 1-.708-.708L7.293 9 6.146 7.854a.5.5 0 0 1 0-.708\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4 1.5H3a2 2 0 0 0-2 2V14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3.5a2 2 0 0 0-2-2h-1v1h1a1 1 0 0 1 1 1V14a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V3.5a1 1 0 0 1 1-1h1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M9.5 1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5zm-3-1A1.5 1.5 0 0 0 5 1.5v1A1.5 1.5 0 0 0 6.5 4h3A1.5 1.5 0 0 0 11 2.5v-1A1.5 1.5 0 0 0 9.5 0z\"},\"child\":[]}]})(props);\n};\nexport function BsClipboard (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4 1.5H3a2 2 0 0 0-2 2V14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3.5a2 2 0 0 0-2-2h-1v1h1a1 1 0 0 1 1 1V14a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V3.5a1 1 0 0 1 1-1h1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M9.5 1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5zm-3-1A1.5 1.5 0 0 0 5 1.5v1A1.5 1.5 0 0 0 6.5 4h3A1.5 1.5 0 0 0 11 2.5v-1A1.5 1.5 0 0 0 9.5 0z\"},\"child\":[]}]})(props);\n};\nexport function BsClipboard2CheckFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M10 .5a.5.5 0 0 0-.5-.5h-3a.5.5 0 0 0-.5.5.5.5 0 0 1-.5.5.5.5 0 0 0-.5.5V2a.5.5 0 0 0 .5.5h5A.5.5 0 0 0 11 2v-.5a.5.5 0 0 0-.5-.5.5.5 0 0 1-.5-.5\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4.085 1H3.5A1.5 1.5 0 0 0 2 2.5v12A1.5 1.5 0 0 0 3.5 16h9a1.5 1.5 0 0 0 1.5-1.5v-12A1.5 1.5 0 0 0 12.5 1h-.585q.084.236.085.5V2a1.5 1.5 0 0 1-1.5 1.5h-5A1.5 1.5 0 0 1 4 2v-.5q.001-.264.085-.5m6.769 6.854-3 3a.5.5 0 0 1-.708 0l-1.5-1.5a.5.5 0 1 1 .708-.708L7.5 9.793l2.646-2.647a.5.5 0 0 1 .708.708\"},\"child\":[]}]})(props);\n};\nexport function BsClipboard2Check (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.5 0a.5.5 0 0 1 .5.5.5.5 0 0 0 .5.5.5.5 0 0 1 .5.5V2a.5.5 0 0 1-.5.5h-5A.5.5 0 0 1 5 2v-.5a.5.5 0 0 1 .5-.5.5.5 0 0 0 .5-.5.5.5 0 0 1 .5-.5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3 2.5a.5.5 0 0 1 .5-.5H4a.5.5 0 0 0 0-1h-.5A1.5 1.5 0 0 0 2 2.5v12A1.5 1.5 0 0 0 3.5 16h9a1.5 1.5 0 0 0 1.5-1.5v-12A1.5 1.5 0 0 0 12.5 1H12a.5.5 0 0 0 0 1h.5a.5.5 0 0 1 .5.5v12a.5.5 0 0 1-.5.5h-9a.5.5 0 0 1-.5-.5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M10.854 7.854a.5.5 0 0 0-.708-.708L7.5 9.793 6.354 8.646a.5.5 0 1 0-.708.708l1.5 1.5a.5.5 0 0 0 .708 0z\"},\"child\":[]}]})(props);\n};\nexport function BsClipboard2DataFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M10 .5a.5.5 0 0 0-.5-.5h-3a.5.5 0 0 0-.5.5.5.5 0 0 1-.5.5.5.5 0 0 0-.5.5V2a.5.5 0 0 0 .5.5h5A.5.5 0 0 0 11 2v-.5a.5.5 0 0 0-.5-.5.5.5 0 0 1-.5-.5\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4.085 1H3.5A1.5 1.5 0 0 0 2 2.5v12A1.5 1.5 0 0 0 3.5 16h9a1.5 1.5 0 0 0 1.5-1.5v-12A1.5 1.5 0 0 0 12.5 1h-.585q.084.236.085.5V2a1.5 1.5 0 0 1-1.5 1.5h-5A1.5 1.5 0 0 1 4 2v-.5q.001-.264.085-.5M10 7a1 1 0 1 1 2 0v5a1 1 0 1 1-2 0zm-6 4a1 1 0 1 1 2 0v1a1 1 0 1 1-2 0zm4-3a1 1 0 0 1 1 1v3a1 1 0 1 1-2 0V9a1 1 0 0 1 1-1\"},\"child\":[]}]})(props);\n};\nexport function BsClipboard2Data (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.5 0a.5.5 0 0 1 .5.5.5.5 0 0 0 .5.5.5.5 0 0 1 .5.5V2a.5.5 0 0 1-.5.5h-5A.5.5 0 0 1 5 2v-.5a.5.5 0 0 1 .5-.5.5.5 0 0 0 .5-.5.5.5 0 0 1 .5-.5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3 2.5a.5.5 0 0 1 .5-.5H4a.5.5 0 0 0 0-1h-.5A1.5 1.5 0 0 0 2 2.5v12A1.5 1.5 0 0 0 3.5 16h9a1.5 1.5 0 0 0 1.5-1.5v-12A1.5 1.5 0 0 0 12.5 1H12a.5.5 0 0 0 0 1h.5a.5.5 0 0 1 .5.5v12a.5.5 0 0 1-.5.5h-9a.5.5 0 0 1-.5-.5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M10 7a1 1 0 1 1 2 0v5a1 1 0 1 1-2 0zm-6 4a1 1 0 1 1 2 0v1a1 1 0 1 1-2 0zm4-3a1 1 0 0 0-1 1v3a1 1 0 1 0 2 0V9a1 1 0 0 0-1-1\"},\"child\":[]}]})(props);\n};\nexport function BsClipboard2Fill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.5 0a.5.5 0 0 1 .5.5.5.5 0 0 0 .5.5.5.5 0 0 1 .5.5V2a.5.5 0 0 1-.5.5h-5A.5.5 0 0 1 5 2v-.5a.5.5 0 0 1 .5-.5.5.5 0 0 0 .5-.5.5.5 0 0 1 .5-.5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3.5 1h.585A1.5 1.5 0 0 0 4 1.5V2a1.5 1.5 0 0 0 1.5 1.5h5A1.5 1.5 0 0 0 12 2v-.5q-.001-.264-.085-.5h.585A1.5 1.5 0 0 1 14 2.5v12a1.5 1.5 0 0 1-1.5 1.5h-9A1.5 1.5 0 0 1 2 14.5v-12A1.5 1.5 0 0 1 3.5 1\"},\"child\":[]}]})(props);\n};\nexport function BsClipboard2HeartFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M10.058.501a.5.5 0 0 0-.5-.501h-2.98c-.276 0-.5.225-.5.501A.5.5 0 0 1 5.582 1a.497.497 0 0 0-.497.497V2a.5.5 0 0 0 .5.5h4.968a.5.5 0 0 0 .5-.5v-.503A.497.497 0 0 0 10.555 1a.5.5 0 0 1-.497-.499\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M4.174 1h-.57a1.5 1.5 0 0 0-1.5 1.5v12a1.5 1.5 0 0 0 1.5 1.5h9a1.5 1.5 0 0 0 1.5-1.5v-12a1.5 1.5 0 0 0-1.5-1.5h-.642q.084.236.085.5V2c0 .828-.668 1.5-1.492 1.5H5.581A1.496 1.496 0 0 1 4.09 2v-.5q.001-.264.085-.5Zm3.894 5.482c1.656-1.673 5.795 1.254 0 5.018-5.795-3.764-1.656-6.69 0-5.018\"},\"child\":[]}]})(props);\n};\nexport function BsClipboard2Heart (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M10.058.501a.5.5 0 0 0-.5-.501h-2.98c-.276 0-.5.225-.5.501A.5.5 0 0 1 5.582 1a.497.497 0 0 0-.497.497V2a.5.5 0 0 0 .5.5h4.968a.5.5 0 0 0 .5-.5v-.503A.497.497 0 0 0 10.555 1a.5.5 0 0 1-.497-.499\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3.605 2a.5.5 0 0 0-.5.5v12a.5.5 0 0 0 .5.5h9a.5.5 0 0 0 .5-.5v-12a.5.5 0 0 0-.5-.5h-.5a.5.5 0 0 1 0-1h.5a1.5 1.5 0 0 1 1.5 1.5v12a1.5 1.5 0 0 1-1.5 1.5h-9a1.5 1.5 0 0 1-1.5-1.5v-12a1.5 1.5 0 0 1 1.5-1.5h.5a.5.5 0 0 1 0 1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8.068 6.482c1.656-1.673 5.795 1.254 0 5.018-5.795-3.764-1.656-6.69 0-5.018\"},\"child\":[]}]})(props);\n};\nexport function BsClipboard2MinusFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M10 .5a.5.5 0 0 0-.5-.5h-3a.5.5 0 0 0-.5.5.5.5 0 0 1-.5.5.5.5 0 0 0-.5.5V2a.5.5 0 0 0 .5.5h5A.5.5 0 0 0 11 2v-.5a.5.5 0 0 0-.5-.5.5.5 0 0 1-.5-.5\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4.085 1H3.5A1.5 1.5 0 0 0 2 2.5v12A1.5 1.5 0 0 0 3.5 16h9a1.5 1.5 0 0 0 1.5-1.5v-12A1.5 1.5 0 0 0 12.5 1h-.585q.084.236.085.5V2a1.5 1.5 0 0 1-1.5 1.5h-5A1.5 1.5 0 0 1 4 2v-.5q.001-.264.085-.5M6 8h4a.5.5 0 0 1 0 1H6a.5.5 0 0 1 0-1\"},\"child\":[]}]})(props);\n};\nexport function BsClipboard2Minus (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.5 0a.5.5 0 0 1 .5.5.5.5 0 0 0 .5.5.5.5 0 0 1 .5.5V2a.5.5 0 0 1-.5.5h-5A.5.5 0 0 1 5 2v-.5a.5.5 0 0 1 .5-.5.5.5 0 0 0 .5-.5.5.5 0 0 1 .5-.5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3 2.5a.5.5 0 0 1 .5-.5H4a.5.5 0 0 0 0-1h-.5A1.5 1.5 0 0 0 2 2.5v12A1.5 1.5 0 0 0 3.5 16h9a1.5 1.5 0 0 0 1.5-1.5v-12A1.5 1.5 0 0 0 12.5 1H12a.5.5 0 0 0 0 1h.5a.5.5 0 0 1 .5.5v12a.5.5 0 0 1-.5.5h-9a.5.5 0 0 1-.5-.5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M6 8a.5.5 0 0 0 0 1h4a.5.5 0 0 0 0-1z\"},\"child\":[]}]})(props);\n};\nexport function BsClipboard2PlusFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M10 .5a.5.5 0 0 0-.5-.5h-3a.5.5 0 0 0-.5.5.5.5 0 0 1-.5.5.5.5 0 0 0-.5.5V2a.5.5 0 0 0 .5.5h5A.5.5 0 0 0 11 2v-.5a.5.5 0 0 0-.5-.5.5.5 0 0 1-.5-.5\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4.085 1H3.5A1.5 1.5 0 0 0 2 2.5v12A1.5 1.5 0 0 0 3.5 16h9a1.5 1.5 0 0 0 1.5-1.5v-12A1.5 1.5 0 0 0 12.5 1h-.585q.084.236.085.5V2a1.5 1.5 0 0 1-1.5 1.5h-5A1.5 1.5 0 0 1 4 2v-.5q.001-.264.085-.5M8.5 6.5V8H10a.5.5 0 0 1 0 1H8.5v1.5a.5.5 0 0 1-1 0V9H6a.5.5 0 0 1 0-1h1.5V6.5a.5.5 0 0 1 1 0\"},\"child\":[]}]})(props);\n};\nexport function BsClipboard2Plus (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.5 0a.5.5 0 0 1 .5.5.5.5 0 0 0 .5.5.5.5 0 0 1 .5.5V2a.5.5 0 0 1-.5.5h-5A.5.5 0 0 1 5 2v-.5a.5.5 0 0 1 .5-.5.5.5 0 0 0 .5-.5.5.5 0 0 1 .5-.5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3 2.5a.5.5 0 0 1 .5-.5H4a.5.5 0 0 0 0-1h-.5A1.5 1.5 0 0 0 2 2.5v12A1.5 1.5 0 0 0 3.5 16h9a1.5 1.5 0 0 0 1.5-1.5v-12A1.5 1.5 0 0 0 12.5 1H12a.5.5 0 0 0 0 1h.5a.5.5 0 0 1 .5.5v12a.5.5 0 0 1-.5.5h-9a.5.5 0 0 1-.5-.5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8.5 6.5a.5.5 0 0 0-1 0V8H6a.5.5 0 0 0 0 1h1.5v1.5a.5.5 0 0 0 1 0V9H10a.5.5 0 0 0 0-1H8.5z\"},\"child\":[]}]})(props);\n};\nexport function BsClipboard2PulseFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M10 .5a.5.5 0 0 0-.5-.5h-3a.5.5 0 0 0-.5.5.5.5 0 0 1-.5.5.5.5 0 0 0-.5.5V2a.5.5 0 0 0 .5.5h5A.5.5 0 0 0 11 2v-.5a.5.5 0 0 0-.5-.5.5.5 0 0 1-.5-.5\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4.085 1H3.5A1.5 1.5 0 0 0 2 2.5v12A1.5 1.5 0 0 0 3.5 16h9a1.5 1.5 0 0 0 1.5-1.5v-12A1.5 1.5 0 0 0 12.5 1h-.585q.084.236.085.5V2a1.5 1.5 0 0 1-1.5 1.5h-5A1.5 1.5 0 0 1 4 2v-.5q.001-.264.085-.5M9.98 5.356 11.372 10h.128a.5.5 0 0 1 0 1H11a.5.5 0 0 1-.479-.356l-.94-3.135-1.092 5.096a.5.5 0 0 1-.968.039L6.383 8.85l-.936 1.873A.5.5 0 0 1 5 11h-.5a.5.5 0 0 1 0-1h.191l1.362-2.724a.5.5 0 0 1 .926.08l.94 3.135 1.092-5.096a.5.5 0 0 1 .968-.039Z\"},\"child\":[]}]})(props);\n};\nexport function BsClipboard2Pulse (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.5 0a.5.5 0 0 1 .5.5.5.5 0 0 0 .5.5.5.5 0 0 1 .5.5V2a.5.5 0 0 1-.5.5h-5A.5.5 0 0 1 5 2v-.5a.5.5 0 0 1 .5-.5.5.5 0 0 0 .5-.5.5.5 0 0 1 .5-.5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3 2.5a.5.5 0 0 1 .5-.5H4a.5.5 0 0 0 0-1h-.5A1.5 1.5 0 0 0 2 2.5v12A1.5 1.5 0 0 0 3.5 16h9a1.5 1.5 0 0 0 1.5-1.5v-12A1.5 1.5 0 0 0 12.5 1H12a.5.5 0 0 0 0 1h.5a.5.5 0 0 1 .5.5v12a.5.5 0 0 1-.5.5h-9a.5.5 0 0 1-.5-.5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M9.979 5.356a.5.5 0 0 0-.968.04L7.92 10.49l-.94-3.135a.5.5 0 0 0-.926-.08L4.69 10H4.5a.5.5 0 0 0 0 1H5a.5.5 0 0 0 .447-.276l.936-1.873 1.138 3.793a.5.5 0 0 0 .968-.04L9.58 7.51l.94 3.135A.5.5 0 0 0 11 11h.5a.5.5 0 0 0 0-1h-.128z\"},\"child\":[]}]})(props);\n};\nexport function BsClipboard2XFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M10 .5a.5.5 0 0 0-.5-.5h-3a.5.5 0 0 0-.5.5.5.5 0 0 1-.5.5.5.5 0 0 0-.5.5V2a.5.5 0 0 0 .5.5h5A.5.5 0 0 0 11 2v-.5a.5.5 0 0 0-.5-.5.5.5 0 0 1-.5-.5\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4.085 1H3.5A1.5 1.5 0 0 0 2 2.5v12A1.5 1.5 0 0 0 3.5 16h9a1.5 1.5 0 0 0 1.5-1.5v-12A1.5 1.5 0 0 0 12.5 1h-.585q.084.236.085.5V2a1.5 1.5 0 0 1-1.5 1.5h-5A1.5 1.5 0 0 1 4 2v-.5q.001-.264.085-.5M8 8.293l1.146-1.147a.5.5 0 1 1 .708.708L8.707 9l1.147 1.146a.5.5 0 0 1-.708.708L8 9.707l-1.146 1.147a.5.5 0 0 1-.708-.708L7.293 9 6.146 7.854a.5.5 0 1 1 .708-.708z\"},\"child\":[]}]})(props);\n};\nexport function BsClipboard2X (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.5 0a.5.5 0 0 1 .5.5.5.5 0 0 0 .5.5.5.5 0 0 1 .5.5V2a.5.5 0 0 1-.5.5h-5A.5.5 0 0 1 5 2v-.5a.5.5 0 0 1 .5-.5.5.5 0 0 0 .5-.5.5.5 0 0 1 .5-.5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3 2.5a.5.5 0 0 1 .5-.5H4a.5.5 0 0 0 0-1h-.5A1.5 1.5 0 0 0 2 2.5v12A1.5 1.5 0 0 0 3.5 16h9a1.5 1.5 0 0 0 1.5-1.5v-12A1.5 1.5 0 0 0 12.5 1H12a.5.5 0 0 0 0 1h.5a.5.5 0 0 1 .5.5v12a.5.5 0 0 1-.5.5h-9a.5.5 0 0 1-.5-.5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8 8.293 6.854 7.146a.5.5 0 1 0-.708.708L7.293 9l-1.147 1.146a.5.5 0 0 0 .708.708L8 9.707l1.146 1.147a.5.5 0 0 0 .708-.708L8.707 9l1.147-1.146a.5.5 0 0 0-.708-.708z\"},\"child\":[]}]})(props);\n};\nexport function BsClipboard2 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3.5 2a.5.5 0 0 0-.5.5v12a.5.5 0 0 0 .5.5h9a.5.5 0 0 0 .5-.5v-12a.5.5 0 0 0-.5-.5H12a.5.5 0 0 1 0-1h.5A1.5 1.5 0 0 1 14 2.5v12a1.5 1.5 0 0 1-1.5 1.5h-9A1.5 1.5 0 0 1 2 14.5v-12A1.5 1.5 0 0 1 3.5 1H4a.5.5 0 0 1 0 1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M10 .5a.5.5 0 0 0-.5-.5h-3a.5.5 0 0 0-.5.5.5.5 0 0 1-.5.5.5.5 0 0 0-.5.5V2a.5.5 0 0 0 .5.5h5A.5.5 0 0 0 11 2v-.5a.5.5 0 0 0-.5-.5.5.5 0 0 1-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsClockFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0M8 3.5a.5.5 0 0 0-1 0V9a.5.5 0 0 0 .252.434l3.5 2a.5.5 0 0 0 .496-.868L8 8.71z\"},\"child\":[]}]})(props);\n};\nexport function BsClockHistory (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.515 1.019A7 7 0 0 0 8 1V0a8 8 0 0 1 .589.022zm2.004.45a7 7 0 0 0-.985-.299l.219-.976q.576.129 1.126.342zm1.37.71a7 7 0 0 0-.439-.27l.493-.87a8 8 0 0 1 .979.654l-.615.789a7 7 0 0 0-.418-.302zm1.834 1.79a7 7 0 0 0-.653-.796l.724-.69q.406.429.747.91zm.744 1.352a7 7 0 0 0-.214-.468l.893-.45a8 8 0 0 1 .45 1.088l-.95.313a7 7 0 0 0-.179-.483m.53 2.507a7 7 0 0 0-.1-1.025l.985-.17q.1.58.116 1.17zm-.131 1.538q.05-.254.081-.51l.993.123a8 8 0 0 1-.23 1.155l-.964-.267q.069-.247.12-.501m-.952 2.379q.276-.436.486-.908l.914.405q-.24.54-.555 1.038zm-.964 1.205q.183-.183.35-.378l.758.653a8 8 0 0 1-.401.432z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8 1a7 7 0 1 0 4.95 11.95l.707.707A8.001 8.001 0 1 1 8 0z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M7.5 3a.5.5 0 0 1 .5.5v5.21l3.248 1.856a.5.5 0 0 1-.496.868l-3.5-2A.5.5 0 0 1 7 9V3.5a.5.5 0 0 1 .5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsClock (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 3.5a.5.5 0 0 0-1 0V9a.5.5 0 0 0 .252.434l3.5 2a.5.5 0 0 0 .496-.868L8 8.71z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8 16A8 8 0 1 0 8 0a8 8 0 0 0 0 16m7-8A7 7 0 1 1 1 8a7 7 0 0 1 14 0\"},\"child\":[]}]})(props);\n};\nexport function BsCloudArrowDownFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 2a5.53 5.53 0 0 0-3.594 1.342c-.766.66-1.321 1.52-1.464 2.383C1.266 6.095 0 7.555 0 9.318 0 11.366 1.708 13 3.781 13h8.906C14.502 13 16 11.57 16 9.773c0-1.636-1.242-2.969-2.834-3.194C12.923 3.999 10.69 2 8 2m2.354 6.854-2 2a.5.5 0 0 1-.708 0l-2-2a.5.5 0 1 1 .708-.708L7.5 9.293V5.5a.5.5 0 0 1 1 0v3.793l1.146-1.147a.5.5 0 0 1 .708.708\"},\"child\":[]}]})(props);\n};\nexport function BsCloudArrowDown (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M7.646 10.854a.5.5 0 0 0 .708 0l2-2a.5.5 0 0 0-.708-.708L8.5 9.293V5.5a.5.5 0 0 0-1 0v3.793L6.354 8.146a.5.5 0 1 0-.708.708z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4.406 3.342A5.53 5.53 0 0 1 8 2c2.69 0 4.923 2 5.166 4.579C14.758 6.804 16 8.137 16 9.773 16 11.569 14.502 13 12.687 13H3.781C1.708 13 0 11.366 0 9.318c0-1.763 1.266-3.223 2.942-3.593.143-.863.698-1.723 1.464-2.383m.653.757c-.757.653-1.153 1.44-1.153 2.056v.448l-.445.049C2.064 6.805 1 7.952 1 9.318 1 10.785 2.23 12 3.781 12h8.906C13.98 12 15 10.988 15 9.773c0-1.216-1.02-2.228-2.313-2.228h-.5v-.5C12.188 4.825 10.328 3 8 3a4.53 4.53 0 0 0-2.941 1.1z\"},\"child\":[]}]})(props);\n};\nexport function BsCloudArrowUpFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 2a5.53 5.53 0 0 0-3.594 1.342c-.766.66-1.321 1.52-1.464 2.383C1.266 6.095 0 7.555 0 9.318 0 11.366 1.708 13 3.781 13h8.906C14.502 13 16 11.57 16 9.773c0-1.636-1.242-2.969-2.834-3.194C12.923 3.999 10.69 2 8 2m2.354 5.146a.5.5 0 0 1-.708.708L8.5 6.707V10.5a.5.5 0 0 1-1 0V6.707L6.354 7.854a.5.5 0 1 1-.708-.708l2-2a.5.5 0 0 1 .708 0z\"},\"child\":[]}]})(props);\n};\nexport function BsCloudArrowUp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M7.646 5.146a.5.5 0 0 1 .708 0l2 2a.5.5 0 0 1-.708.708L8.5 6.707V10.5a.5.5 0 0 1-1 0V6.707L6.354 7.854a.5.5 0 1 1-.708-.708z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4.406 3.342A5.53 5.53 0 0 1 8 2c2.69 0 4.923 2 5.166 4.579C14.758 6.804 16 8.137 16 9.773 16 11.569 14.502 13 12.687 13H3.781C1.708 13 0 11.366 0 9.318c0-1.763 1.266-3.223 2.942-3.593.143-.863.698-1.723 1.464-2.383m.653.757c-.757.653-1.153 1.44-1.153 2.056v.448l-.445.049C2.064 6.805 1 7.952 1 9.318 1 10.785 2.23 12 3.781 12h8.906C13.98 12 15 10.988 15 9.773c0-1.216-1.02-2.228-2.313-2.228h-.5v-.5C12.188 4.825 10.328 3 8 3a4.53 4.53 0 0 0-2.941 1.1z\"},\"child\":[]}]})(props);\n};\nexport function BsCloudCheckFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 2a5.53 5.53 0 0 0-3.594 1.342c-.766.66-1.321 1.52-1.464 2.383C1.266 6.095 0 7.555 0 9.318 0 11.366 1.708 13 3.781 13h8.906C14.502 13 16 11.57 16 9.773c0-1.636-1.242-2.969-2.834-3.194C12.923 3.999 10.69 2 8 2m2.354 4.854-3 3a.5.5 0 0 1-.708 0l-1.5-1.5a.5.5 0 1 1 .708-.708L7 8.793l2.646-2.647a.5.5 0 0 1 .708.708\"},\"child\":[]}]})(props);\n};\nexport function BsCloudCheck (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M10.354 6.146a.5.5 0 0 1 0 .708l-3 3a.5.5 0 0 1-.708 0l-1.5-1.5a.5.5 0 1 1 .708-.708L7 8.793l2.646-2.647a.5.5 0 0 1 .708 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4.406 3.342A5.53 5.53 0 0 1 8 2c2.69 0 4.923 2 5.166 4.579C14.758 6.804 16 8.137 16 9.773 16 11.569 14.502 13 12.687 13H3.781C1.708 13 0 11.366 0 9.318c0-1.763 1.266-3.223 2.942-3.593.143-.863.698-1.723 1.464-2.383m.653.757c-.757.653-1.153 1.44-1.153 2.056v.448l-.445.049C2.064 6.805 1 7.952 1 9.318 1 10.785 2.23 12 3.781 12h8.906C13.98 12 15 10.988 15 9.773c0-1.216-1.02-2.228-2.313-2.228h-.5v-.5C12.188 4.825 10.328 3 8 3a4.53 4.53 0 0 0-2.941 1.1z\"},\"child\":[]}]})(props);\n};\nexport function BsCloudDownloadFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M8 0a5.53 5.53 0 0 0-3.594 1.342c-.766.66-1.321 1.52-1.464 2.383C1.266 4.095 0 5.555 0 7.318 0 9.366 1.708 11 3.781 11H7.5V5.5a.5.5 0 0 1 1 0V11h4.188C14.502 11 16 9.57 16 7.773c0-1.636-1.242-2.969-2.834-3.194C12.923 1.999 10.69 0 8 0m-.354 15.854a.5.5 0 0 0 .708 0l3-3a.5.5 0 0 0-.708-.708L8.5 14.293V11h-1v3.293l-2.146-2.147a.5.5 0 0 0-.708.708z\"},\"child\":[]}]})(props);\n};\nexport function BsCloudDownload (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4.406 1.342A5.53 5.53 0 0 1 8 0c2.69 0 4.923 2 5.166 4.579C14.758 4.804 16 6.137 16 7.773 16 9.569 14.502 11 12.687 11H10a.5.5 0 0 1 0-1h2.688C13.979 10 15 8.988 15 7.773c0-1.216-1.02-2.228-2.313-2.228h-.5v-.5C12.188 2.825 10.328 1 8 1a4.53 4.53 0 0 0-2.941 1.1c-.757.652-1.153 1.438-1.153 2.055v.448l-.445.049C2.064 4.805 1 5.952 1 7.318 1 8.785 2.23 10 3.781 10H6a.5.5 0 0 1 0 1H3.781C1.708 11 0 9.366 0 7.318c0-1.763 1.266-3.223 2.942-3.593.143-.863.698-1.723 1.464-2.383\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M7.646 15.854a.5.5 0 0 0 .708 0l3-3a.5.5 0 0 0-.708-.708L8.5 14.293V5.5a.5.5 0 0 0-1 0v8.793l-2.146-2.147a.5.5 0 0 0-.708.708z\"},\"child\":[]}]})(props);\n};\nexport function BsCloudDrizzleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4.158 12.025a.5.5 0 0 1 .316.633l-.5 1.5a.5.5 0 0 1-.948-.316l.5-1.5a.5.5 0 0 1 .632-.317m6 0a.5.5 0 0 1 .316.633l-.5 1.5a.5.5 0 0 1-.948-.316l.5-1.5a.5.5 0 0 1 .632-.317m-3.5 1.5a.5.5 0 0 1 .316.633l-.5 1.5a.5.5 0 0 1-.948-.316l.5-1.5a.5.5 0 0 1 .632-.317m6 0a.5.5 0 0 1 .316.633l-.5 1.5a.5.5 0 1 1-.948-.316l.5-1.5a.5.5 0 0 1 .632-.317m.747-8.498a5.001 5.001 0 0 0-9.499-1.004A3.5 3.5 0 1 0 3.5 11H13a3 3 0 0 0 .405-5.973\"},\"child\":[]}]})(props);\n};\nexport function BsCloudDrizzle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4.158 12.025a.5.5 0 0 1 .316.633l-.5 1.5a.5.5 0 0 1-.948-.316l.5-1.5a.5.5 0 0 1 .632-.317m6 0a.5.5 0 0 1 .316.633l-.5 1.5a.5.5 0 0 1-.948-.316l.5-1.5a.5.5 0 0 1 .632-.317m-3.5 1.5a.5.5 0 0 1 .316.633l-.5 1.5a.5.5 0 0 1-.948-.316l.5-1.5a.5.5 0 0 1 .632-.317m6 0a.5.5 0 0 1 .316.633l-.5 1.5a.5.5 0 1 1-.948-.316l.5-1.5a.5.5 0 0 1 .632-.317m.747-8.498a5.001 5.001 0 0 0-9.499-1.004A3.5 3.5 0 1 0 3.5 11H13a3 3 0 0 0 .405-5.973M8.5 2a4 4 0 0 1 3.976 3.555.5.5 0 0 0 .5.445H13a2 2 0 0 1 0 4H3.5a2.5 2.5 0 1 1 .605-4.926.5.5 0 0 0 .596-.329A4 4 0 0 1 8.5 2\"},\"child\":[]}]})(props);\n};\nexport function BsCloudFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4.406 3.342A5.53 5.53 0 0 1 8 2c2.69 0 4.923 2 5.166 4.579C14.758 6.804 16 8.137 16 9.773 16 11.569 14.502 13 12.687 13H3.781C1.708 13 0 11.366 0 9.318c0-1.763 1.266-3.223 2.942-3.593.143-.863.698-1.723 1.464-2.383\"},\"child\":[]}]})(props);\n};\nexport function BsCloudFogFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3 13.5a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5m0 2a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5m10.405-9.473a5.001 5.001 0 0 0-9.499-1.004A3.5 3.5 0 1 0 3.5 12H13a3 3 0 0 0 .405-5.973\"},\"child\":[]}]})(props);\n};\nexport function BsCloudFog (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3 13.5a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5m0 2a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5m10.405-9.473a5.001 5.001 0 0 0-9.499-1.004A3.5 3.5 0 1 0 3.5 12H13a3 3 0 0 0 .405-5.973M8.5 3a4 4 0 0 1 3.976 3.555.5.5 0 0 0 .5.445H13a2 2 0 0 1 0 4H3.5a2.5 2.5 0 1 1 .605-4.926.5.5 0 0 0 .596-.329A4 4 0 0 1 8.5 3\"},\"child\":[]}]})(props);\n};\nexport function BsCloudFog2Fill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.5 3a5 5 0 0 1 4.905 4.027A3 3 0 0 1 13 13h-1.5a.5.5 0 0 0 0-1H1.05a3.5 3.5 0 0 1-.713-1H9.5a.5.5 0 0 0 0-1H.035a3.5 3.5 0 0 1 0-1H7.5a.5.5 0 0 0 0-1H.337a3.5 3.5 0 0 1 3.57-1.977A5 5 0 0 1 8.5 3\"},\"child\":[]}]})(props);\n};\nexport function BsCloudFog2 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.5 4a4 4 0 0 0-3.8 2.745.5.5 0 1 1-.949-.313 5.002 5.002 0 0 1 9.654.595A3 3 0 0 1 13 13H.5a.5.5 0 0 1 0-1H13a2 2 0 0 0 .001-4h-.026a.5.5 0 0 1-.5-.445A4 4 0 0 0 8.5 4M0 8.5A.5.5 0 0 1 .5 8h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5m0 2a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsCloudHailFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3.75 15.25a.75.75 0 1 1-1.5 0 .75.75 0 0 1 1.5 0m.408-3.724a.5.5 0 0 1 .316.632l-.5 1.5a.5.5 0 1 1-.948-.316l.5-1.5a.5.5 0 0 1 .632-.316M7.75 15.25a.75.75 0 1 1-1.5 0 .75.75 0 0 1 1.5 0m.408-3.724a.5.5 0 0 1 .316.632l-.5 1.5a.5.5 0 1 1-.948-.316l.5-1.5a.5.5 0 0 1 .632-.316m3.592 3.724a.75.75 0 1 1-1.5 0 .75.75 0 0 1 1.5 0m.408-3.724a.5.5 0 0 1 .316.632l-.5 1.5a.5.5 0 1 1-.948-.316l.5-1.5a.5.5 0 0 1 .632-.316m1.247-6.999a5.001 5.001 0 0 0-9.499-1.004A3.5 3.5 0 1 0 3.5 10.5H13a3 3 0 0 0 .405-5.973\"},\"child\":[]}]})(props);\n};\nexport function BsCloudHail (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M13.405 4.527a5.001 5.001 0 0 0-9.499-1.004A3.5 3.5 0 1 0 3.5 10.5H13a3 3 0 0 0 .405-5.973M8.5 1.5a4 4 0 0 1 3.976 3.555.5.5 0 0 0 .5.445H13a2 2 0 0 1-.001 4H3.5a2.5 2.5 0 1 1 .605-4.926.5.5 0 0 0 .596-.329A4 4 0 0 1 8.5 1.5M3.75 15.25a.75.75 0 1 1-1.5 0 .75.75 0 0 1 1.5 0m.408-3.724a.5.5 0 0 1 .316.632l-.5 1.5a.5.5 0 1 1-.948-.316l.5-1.5a.5.5 0 0 1 .632-.316M7.75 15.25a.75.75 0 1 1-1.5 0 .75.75 0 0 1 1.5 0m.408-3.724a.5.5 0 0 1 .316.632l-.5 1.5a.5.5 0 1 1-.948-.316l.5-1.5a.5.5 0 0 1 .632-.316m3.592 3.724a.75.75 0 1 1-1.5 0 .75.75 0 0 1 1.5 0m.408-3.724a.5.5 0 0 1 .316.632l-.5 1.5a.5.5 0 1 1-.948-.316l.5-1.5a.5.5 0 0 1 .632-.316\"},\"child\":[]}]})(props);\n};\nexport function BsCloudHazeFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4 11.5a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5m-3 2a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5m2 2a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5M13.405 4.027a5.001 5.001 0 0 0-9.499-1.004A3.5 3.5 0 1 0 3.5 10H13a3 3 0 0 0 .405-5.973\"},\"child\":[]}]})(props);\n};\nexport function BsCloudHaze (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4 11.5a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5m-3 2a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5m2 2a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5M13.405 4.027a5.001 5.001 0 0 0-9.499-1.004A3.5 3.5 0 1 0 3.5 10H13a3 3 0 0 0 .405-5.973M8.5 1a4 4 0 0 1 3.976 3.555.5.5 0 0 0 .5.445H13a2 2 0 0 1 0 4H3.5a2.5 2.5 0 1 1 .605-4.926.5.5 0 0 0 .596-.329A4 4 0 0 1 8.5 1\"},\"child\":[]}]})(props);\n};\nexport function BsCloudHaze2Fill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.5 2a5 5 0 0 1 4.905 4.027A3 3 0 0 1 13 12H3.5A3.5 3.5 0 0 1 .035 9H5.5a.5.5 0 0 0 0-1H.035a3.5 3.5 0 0 1 3.871-2.977A5 5 0 0 1 8.5 2m-6 8a.5.5 0 0 0 0 1h9a.5.5 0 0 0 0-1zM0 13.5a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsCloudHaze2 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.5 3a4 4 0 0 0-3.8 2.745.5.5 0 1 1-.949-.313 5.002 5.002 0 0 1 9.654.595A3 3 0 0 1 13 12H4.5a.5.5 0 0 1 0-1H13a2 2 0 0 0 .001-4h-.026a.5.5 0 0 1-.5-.445A4 4 0 0 0 8.5 3M0 7.5A.5.5 0 0 1 .5 7h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5m2 2a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5m-2 4a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsCloudLightningFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.053 11.276A.5.5 0 0 1 7.5 11h1a.5.5 0 0 1 .474.658l-.28.842H9.5a.5.5 0 0 1 .39.812l-2 2.5a.5.5 0 0 1-.875-.433L7.36 14H6.5a.5.5 0 0 1-.447-.724zm6.352-7.249a5.001 5.001 0 0 0-9.499-1.004A3.5 3.5 0 1 0 3.5 10H13a3 3 0 0 0 .405-5.973\"},\"child\":[]}]})(props);\n};\nexport function BsCloudLightningRainFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2.658 11.026a.5.5 0 0 1 .316.632l-.5 1.5a.5.5 0 1 1-.948-.316l.5-1.5a.5.5 0 0 1 .632-.316m9.5 0a.5.5 0 0 1 .316.632l-.5 1.5a.5.5 0 0 1-.948-.316l.5-1.5a.5.5 0 0 1 .632-.316m-7.5 1.5a.5.5 0 0 1 .316.632l-.5 1.5a.5.5 0 1 1-.948-.316l.5-1.5a.5.5 0 0 1 .632-.316m9.5 0a.5.5 0 0 1 .316.632l-.5 1.5a.5.5 0 0 1-.948-.316l.5-1.5a.5.5 0 0 1 .632-.316m-7.105-1.25A.5.5 0 0 1 7.5 11h1a.5.5 0 0 1 .474.658l-.28.842H9.5a.5.5 0 0 1 .39.812l-2 2.5a.5.5 0 0 1-.875-.433L7.36 14H6.5a.5.5 0 0 1-.447-.724zm6.352-7.249a5.001 5.001 0 0 0-9.499-1.004A3.5 3.5 0 1 0 3.5 10H13a3 3 0 0 0 .405-5.973\"},\"child\":[]}]})(props);\n};\nexport function BsCloudLightningRain (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2.658 11.026a.5.5 0 0 1 .316.632l-.5 1.5a.5.5 0 1 1-.948-.316l.5-1.5a.5.5 0 0 1 .632-.316m9.5 0a.5.5 0 0 1 .316.632l-.5 1.5a.5.5 0 1 1-.948-.316l.5-1.5a.5.5 0 0 1 .632-.316m-7.5 1.5a.5.5 0 0 1 .316.632l-.5 1.5a.5.5 0 1 1-.948-.316l.5-1.5a.5.5 0 0 1 .632-.316m9.5 0a.5.5 0 0 1 .316.632l-.5 1.5a.5.5 0 1 1-.948-.316l.5-1.5a.5.5 0 0 1 .632-.316m-.753-8.499a5.001 5.001 0 0 0-9.499-1.004A3.5 3.5 0 1 0 3.5 10H13a3 3 0 0 0 .405-5.973M8.5 1a4 4 0 0 1 3.976 3.555.5.5 0 0 0 .5.445H13a2 2 0 0 1 0 4H3.5a2.5 2.5 0 1 1 .605-4.926.5.5 0 0 0 .596-.329A4 4 0 0 1 8.5 1M7.053 11.276A.5.5 0 0 1 7.5 11h1a.5.5 0 0 1 .474.658l-.28.842H9.5a.5.5 0 0 1 .39.812l-2 2.5a.5.5 0 0 1-.875-.433L7.36 14H6.5a.5.5 0 0 1-.447-.724z\"},\"child\":[]}]})(props);\n};\nexport function BsCloudLightning (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M13.405 4.027a5.001 5.001 0 0 0-9.499-1.004A3.5 3.5 0 1 0 3.5 10H13a3 3 0 0 0 .405-5.973M8.5 1a4 4 0 0 1 3.976 3.555.5.5 0 0 0 .5.445H13a2 2 0 0 1 0 4H3.5a2.5 2.5 0 1 1 .605-4.926.5.5 0 0 0 .596-.329A4 4 0 0 1 8.5 1M7.053 11.276A.5.5 0 0 1 7.5 11h1a.5.5 0 0 1 .474.658l-.28.842H9.5a.5.5 0 0 1 .39.812l-2 2.5a.5.5 0 0 1-.875-.433L7.36 14H6.5a.5.5 0 0 1-.447-.724z\"},\"child\":[]}]})(props);\n};\nexport function BsCloudMinusFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 2a5.53 5.53 0 0 0-3.594 1.342c-.766.66-1.321 1.52-1.464 2.383C1.266 6.095 0 7.555 0 9.318 0 11.366 1.708 13 3.781 13h8.906C14.502 13 16 11.57 16 9.773c0-1.636-1.242-2.969-2.834-3.194C12.923 3.999 10.69 2 8 2M6 7.5h4a.5.5 0 0 1 0 1H6a.5.5 0 0 1 0-1\"},\"child\":[]}]})(props);\n};\nexport function BsCloudMinus (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4.406 3.342A5.53 5.53 0 0 1 8 2c2.69 0 4.923 2 5.166 4.579C14.758 6.804 16 8.137 16 9.773 16 11.569 14.502 13 12.687 13H3.781C1.708 13 0 11.366 0 9.318c0-1.763 1.266-3.223 2.942-3.593.143-.863.698-1.723 1.464-2.383m.653.757c-.757.653-1.153 1.44-1.153 2.056v.448l-.445.049C2.064 6.805 1 7.952 1 9.318 1 10.785 2.23 12 3.781 12h8.906C13.98 12 15 10.988 15 9.773c0-1.216-1.02-2.228-2.313-2.228h-.5v-.5C12.188 4.825 10.328 3 8 3a4.53 4.53 0 0 0-2.941 1.1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M6 7.5a.5.5 0 0 0 0 1h4a.5.5 0 0 0 0-1z\"},\"child\":[]}]})(props);\n};\nexport function BsCloudMoonFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M11.473 11a4.5 4.5 0 0 0-8.72-.99A3 3 0 0 0 3 16h8.5a2.5 2.5 0 0 0 0-5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M11.286 1.778a.5.5 0 0 0-.565-.755 4.595 4.595 0 0 0-3.18 5.003 5.5 5.5 0 0 1 1.055.209A3.6 3.6 0 0 1 9.83 2.617a4.593 4.593 0 0 0 4.31 5.744 3.58 3.58 0 0 1-2.241.634q.244.477.394 1a4.59 4.59 0 0 0 3.624-2.04.5.5 0 0 0-.565-.755 3.593 3.593 0 0 1-4.065-5.422z\"},\"child\":[]}]})(props);\n};\nexport function BsCloudMoon (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7 8a3.5 3.5 0 0 1 3.5 3.555.5.5 0 0 0 .625.492A1.503 1.503 0 0 1 13 13.5a1.5 1.5 0 0 1-1.5 1.5H3a2 2 0 1 1 .1-3.998.5.5 0 0 0 .509-.375A3.5 3.5 0 0 1 7 8m4.473 3a4.5 4.5 0 0 0-8.72-.99A3 3 0 0 0 3 16h8.5a2.5 2.5 0 0 0 0-5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M11.286 1.778a.5.5 0 0 0-.565-.755 4.595 4.595 0 0 0-3.18 5.003 5.5 5.5 0 0 1 1.055.209A3.6 3.6 0 0 1 9.83 2.617a4.593 4.593 0 0 0 4.31 5.744 3.58 3.58 0 0 1-2.241.634q.244.477.394 1a4.59 4.59 0 0 0 3.624-2.04.5.5 0 0 0-.565-.755 3.593 3.593 0 0 1-4.065-5.422z\"},\"child\":[]}]})(props);\n};\nexport function BsCloudPlusFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 2a5.53 5.53 0 0 0-3.594 1.342c-.766.66-1.321 1.52-1.464 2.383C1.266 6.095 0 7.555 0 9.318 0 11.366 1.708 13 3.781 13h8.906C14.502 13 16 11.57 16 9.773c0-1.636-1.242-2.969-2.834-3.194C12.923 3.999 10.69 2 8 2m.5 4v1.5H10a.5.5 0 0 1 0 1H8.5V10a.5.5 0 0 1-1 0V8.5H6a.5.5 0 0 1 0-1h1.5V6a.5.5 0 0 1 1 0\"},\"child\":[]}]})(props);\n};\nexport function BsCloudPlus (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M8 5.5a.5.5 0 0 1 .5.5v1.5H10a.5.5 0 0 1 0 1H8.5V10a.5.5 0 0 1-1 0V8.5H6a.5.5 0 0 1 0-1h1.5V6a.5.5 0 0 1 .5-.5\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4.406 3.342A5.53 5.53 0 0 1 8 2c2.69 0 4.923 2 5.166 4.579C14.758 6.804 16 8.137 16 9.773 16 11.569 14.502 13 12.687 13H3.781C1.708 13 0 11.366 0 9.318c0-1.763 1.266-3.223 2.942-3.593.143-.863.698-1.723 1.464-2.383m.653.757c-.757.653-1.153 1.44-1.153 2.056v.448l-.445.049C2.064 6.805 1 7.952 1 9.318 1 10.785 2.23 12 3.781 12h8.906C13.98 12 15 10.988 15 9.773c0-1.216-1.02-2.228-2.313-2.228h-.5v-.5C12.188 4.825 10.328 3 8 3a4.53 4.53 0 0 0-2.941 1.1z\"},\"child\":[]}]})(props);\n};\nexport function BsCloudRainFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4.158 12.025a.5.5 0 0 1 .316.633l-.5 1.5a.5.5 0 1 1-.948-.316l.5-1.5a.5.5 0 0 1 .632-.317m3 0a.5.5 0 0 1 .316.633l-1 3a.5.5 0 1 1-.948-.316l1-3a.5.5 0 0 1 .632-.317m3 0a.5.5 0 0 1 .316.633l-.5 1.5a.5.5 0 1 1-.948-.316l.5-1.5a.5.5 0 0 1 .632-.317m3 0a.5.5 0 0 1 .316.633l-1 3a.5.5 0 1 1-.948-.316l1-3a.5.5 0 0 1 .632-.317m.247-6.998a5.001 5.001 0 0 0-9.499-1.004A3.5 3.5 0 1 0 3.5 11H13a3 3 0 0 0 .405-5.973\"},\"child\":[]}]})(props);\n};\nexport function BsCloudRainHeavyFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4.176 11.032a.5.5 0 0 1 .292.643l-1.5 4a.5.5 0 0 1-.936-.35l1.5-4a.5.5 0 0 1 .644-.293m3 0a.5.5 0 0 1 .292.643l-1.5 4a.5.5 0 0 1-.936-.35l1.5-4a.5.5 0 0 1 .644-.293m3 0a.5.5 0 0 1 .292.643l-1.5 4a.5.5 0 0 1-.936-.35l1.5-4a.5.5 0 0 1 .644-.293m3 0a.5.5 0 0 1 .292.643l-1.5 4a.5.5 0 0 1-.936-.35l1.5-4a.5.5 0 0 1 .644-.293m.229-7.005a5.001 5.001 0 0 0-9.499-1.004A3.5 3.5 0 1 0 3.5 10H13a3 3 0 0 0 .405-5.973\"},\"child\":[]}]})(props);\n};\nexport function BsCloudRainHeavy (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4.176 11.032a.5.5 0 0 1 .292.643l-1.5 4a.5.5 0 1 1-.936-.35l1.5-4a.5.5 0 0 1 .644-.293m3 0a.5.5 0 0 1 .292.643l-1.5 4a.5.5 0 1 1-.936-.35l1.5-4a.5.5 0 0 1 .644-.293m3 0a.5.5 0 0 1 .292.643l-1.5 4a.5.5 0 1 1-.936-.35l1.5-4a.5.5 0 0 1 .644-.293m3 0a.5.5 0 0 1 .292.643l-1.5 4a.5.5 0 0 1-.936-.35l1.5-4a.5.5 0 0 1 .644-.293m.229-7.005a5.001 5.001 0 0 0-9.499-1.004A3.5 3.5 0 1 0 3.5 10H13a3 3 0 0 0 .405-5.973M8.5 1a4 4 0 0 1 3.976 3.555.5.5 0 0 0 .5.445H13a2 2 0 0 1 0 4H3.5a2.5 2.5 0 1 1 .605-4.926.5.5 0 0 0 .596-.329A4 4 0 0 1 8.5 1\"},\"child\":[]}]})(props);\n};\nexport function BsCloudRain (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4.158 12.025a.5.5 0 0 1 .316.633l-.5 1.5a.5.5 0 0 1-.948-.316l.5-1.5a.5.5 0 0 1 .632-.317m3 0a.5.5 0 0 1 .316.633l-1 3a.5.5 0 0 1-.948-.316l1-3a.5.5 0 0 1 .632-.317m3 0a.5.5 0 0 1 .316.633l-.5 1.5a.5.5 0 0 1-.948-.316l.5-1.5a.5.5 0 0 1 .632-.317m3 0a.5.5 0 0 1 .316.633l-1 3a.5.5 0 1 1-.948-.316l1-3a.5.5 0 0 1 .632-.317m.247-6.998a5.001 5.001 0 0 0-9.499-1.004A3.5 3.5 0 1 0 3.5 11H13a3 3 0 0 0 .405-5.973M8.5 2a4 4 0 0 1 3.976 3.555.5.5 0 0 0 .5.445H13a2 2 0 0 1 0 4H3.5a2.5 2.5 0 1 1 .605-4.926.5.5 0 0 0 .596-.329A4 4 0 0 1 8.5 2\"},\"child\":[]}]})(props);\n};\nexport function BsCloudSlashFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M3.112 5.112a3 3 0 0 0-.17.613C1.266 6.095 0 7.555 0 9.318 0 11.366 1.708 13 3.781 13H11zm11.372 7.372L4.937 2.937A5.5 5.5 0 0 1 8 2c2.69 0 4.923 2 5.166 4.579C14.758 6.804 16 8.137 16 9.773a3.2 3.2 0 0 1-1.516 2.711m-.838 1.87-12-12 .708-.708 12 12z\"},\"child\":[]}]})(props);\n};\nexport function BsCloudSlash (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M3.112 5.112a3 3 0 0 0-.17.613C1.266 6.095 0 7.555 0 9.318 0 11.366 1.708 13 3.781 13H11l-1-1H3.781C2.231 12 1 10.785 1 9.318c0-1.365 1.064-2.513 2.46-2.666l.446-.05v-.447q0-.113.018-.231zm2.55-1.45-.725-.725A5.5 5.5 0 0 1 8 2c2.69 0 4.923 2 5.166 4.579C14.758 6.804 16 8.137 16 9.773a3.2 3.2 0 0 1-1.516 2.711l-.733-.733C14.498 11.378 15 10.626 15 9.773c0-1.216-1.02-2.228-2.313-2.228h-.5v-.5C12.188 4.825 10.328 3 8 3c-.875 0-1.678.26-2.339.661z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m13.646 14.354-12-12 .708-.708 12 12z\"},\"child\":[]}]})(props);\n};\nexport function BsCloudSleetFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2.375 13.5a.25.25 0 0 1 .25.25v.57l.501-.287a.25.25 0 0 1 .248.434l-.495.283.495.283a.25.25 0 1 1-.248.434l-.501-.286v.569a.25.25 0 1 1-.5 0v-.57l-.501.287a.25.25 0 1 1-.248-.434l.495-.283-.495-.283a.25.25 0 1 1 .248-.434l.501.286v-.569a.25.25 0 0 1 .25-.25m1.849-2.447a.5.5 0 0 1 .223.67l-.5 1a.5.5 0 0 1-.894-.447l.5-1a.5.5 0 0 1 .67-.223zM6.375 13.5a.25.25 0 0 1 .25.25v.57l.5-.287a.25.25 0 0 1 .249.434l-.495.283.495.283a.25.25 0 1 1-.248.434l-.501-.286v.569a.25.25 0 1 1-.5 0v-.57l-.501.287a.25.25 0 1 1-.248-.434l.495-.283-.495-.283a.25.25 0 1 1 .248-.434l.501.286v-.569a.25.25 0 0 1 .25-.25m1.849-2.447a.5.5 0 0 1 .223.67l-.5 1a.5.5 0 0 1-.894-.447l.5-1a.5.5 0 0 1 .67-.223zm2.151 2.447a.25.25 0 0 1 .25.25v.57l.5-.287a.25.25 0 0 1 .249.434l-.495.283.495.283a.25.25 0 1 1-.248.434l-.501-.286v.569a.25.25 0 0 1-.5 0v-.57l-.501.287a.25.25 0 1 1-.248-.434l.495-.283-.495-.283a.25.25 0 1 1 .248-.434l.501.286v-.569a.25.25 0 0 1 .25-.25m1.849-2.447a.5.5 0 0 1 .223.67l-.5 1a.5.5 0 1 1-.894-.447l.5-1a.5.5 0 0 1 .67-.223zm1.181-7.026a5.001 5.001 0 0 0-9.499-1.004A3.5 3.5 0 1 0 3.5 10H13a3 3 0 0 0 .405-5.973\"},\"child\":[]}]})(props);\n};\nexport function BsCloudSleet (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M13.405 4.027a5.001 5.001 0 0 0-9.499-1.004A3.5 3.5 0 1 0 3.5 10H13a3 3 0 0 0 .405-5.973M8.5 1a4 4 0 0 1 3.976 3.555.5.5 0 0 0 .5.445H13a2 2 0 0 1 0 4H3.5a2.5 2.5 0 1 1 .605-4.926.5.5 0 0 0 .596-.329A4 4 0 0 1 8.5 1M2.375 13.5a.25.25 0 0 1 .25.25v.57l.501-.287a.25.25 0 0 1 .248.434l-.495.283.495.283a.25.25 0 0 1-.248.434l-.501-.286v.569a.25.25 0 1 1-.5 0v-.57l-.501.287a.25.25 0 0 1-.248-.434l.495-.283-.495-.283a.25.25 0 0 1 .248-.434l.501.286v-.569a.25.25 0 0 1 .25-.25m1.849-2.447a.5.5 0 0 1 .223.67l-.5 1a.5.5 0 1 1-.894-.447l.5-1a.5.5 0 0 1 .67-.223zM6.375 13.5a.25.25 0 0 1 .25.25v.57l.501-.287a.25.25 0 0 1 .248.434l-.495.283.495.283a.25.25 0 0 1-.248.434l-.501-.286v.569a.25.25 0 1 1-.5 0v-.57l-.501.287a.25.25 0 0 1-.248-.434l.495-.283-.495-.283a.25.25 0 0 1 .248-.434l.501.286v-.569a.25.25 0 0 1 .25-.25m1.849-2.447a.5.5 0 0 1 .223.67l-.5 1a.5.5 0 1 1-.894-.447l.5-1a.5.5 0 0 1 .67-.223zm2.151 2.447a.25.25 0 0 1 .25.25v.57l.501-.287a.25.25 0 0 1 .248.434l-.495.283.495.283a.25.25 0 0 1-.248.434l-.501-.286v.569a.25.25 0 1 1-.5 0v-.57l-.501.287a.25.25 0 0 1-.248-.434l.495-.283-.495-.283a.25.25 0 0 1 .248-.434l.501.286v-.569a.25.25 0 0 1 .25-.25m1.849-2.447a.5.5 0 0 1 .223.67l-.5 1a.5.5 0 1 1-.894-.447l.5-1a.5.5 0 0 1 .67-.223z\"},\"child\":[]}]})(props);\n};\nexport function BsCloudSnowFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2.625 11.5a.25.25 0 0 1 .25.25v.57l.501-.287a.25.25 0 0 1 .248.434l-.495.283.495.283a.25.25 0 0 1-.248.434l-.501-.286v.569a.25.25 0 1 1-.5 0v-.57l-.501.287a.25.25 0 0 1-.248-.434l.495-.283-.495-.283a.25.25 0 0 1 .248-.434l.501.286v-.569a.25.25 0 0 1 .25-.25m2.75 2a.25.25 0 0 1 .25.25v.57l.5-.287a.25.25 0 0 1 .249.434l-.495.283.495.283a.25.25 0 0 1-.248.434l-.501-.286v.569a.25.25 0 1 1-.5 0v-.57l-.501.287a.25.25 0 0 1-.248-.434l.495-.283-.495-.283a.25.25 0 0 1 .248-.434l.501.286v-.569a.25.25 0 0 1 .25-.25m5.5 0a.25.25 0 0 1 .25.25v.57l.5-.287a.25.25 0 0 1 .249.434l-.495.283.495.283a.25.25 0 0 1-.248.434l-.501-.286v.569a.25.25 0 0 1-.5 0v-.57l-.501.287a.25.25 0 0 1-.248-.434l.495-.283-.495-.283a.25.25 0 0 1 .248-.434l.501.286v-.569a.25.25 0 0 1 .25-.25m-2.75-2a.25.25 0 0 1 .25.25v.57l.5-.287a.25.25 0 0 1 .249.434l-.495.283.495.283a.25.25 0 0 1-.248.434l-.501-.286v.569a.25.25 0 1 1-.5 0v-.57l-.501.287a.25.25 0 0 1-.248-.434l.495-.283-.495-.283a.25.25 0 0 1 .248-.434l.501.286v-.569a.25.25 0 0 1 .25-.25m5.5 0a.25.25 0 0 1 .25.25v.57l.5-.287a.25.25 0 0 1 .249.434l-.495.283.495.283a.25.25 0 0 1-.248.434l-.501-.286v.569a.25.25 0 0 1-.5 0v-.57l-.501.287a.25.25 0 1 1-.248-.434l.495-.283-.495-.283a.25.25 0 0 1 .248-.434l.501.286v-.569a.25.25 0 0 1 .25-.25m-.22-7.223a5.001 5.001 0 0 0-9.499-1.004A3.5 3.5 0 1 0 3.5 10.25H13a3 3 0 0 0 .405-5.973\"},\"child\":[]}]})(props);\n};\nexport function BsCloudSnow (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M13.405 4.277a5.001 5.001 0 0 0-9.499-1.004A3.5 3.5 0 1 0 3.5 10.25H13a3 3 0 0 0 .405-5.973M8.5 1.25a4 4 0 0 1 3.976 3.555.5.5 0 0 0 .5.445H13a2 2 0 0 1-.001 4H3.5a2.5 2.5 0 1 1 .605-4.926.5.5 0 0 0 .596-.329A4 4 0 0 1 8.5 1.25M2.625 11.5a.25.25 0 0 1 .25.25v.57l.501-.287a.25.25 0 0 1 .248.434l-.495.283.495.283a.25.25 0 0 1-.248.434l-.501-.286v.569a.25.25 0 1 1-.5 0v-.57l-.501.287a.25.25 0 0 1-.248-.434l.495-.283-.495-.283a.25.25 0 0 1 .248-.434l.501.286v-.569a.25.25 0 0 1 .25-.25m2.75 2a.25.25 0 0 1 .25.25v.57l.501-.287a.25.25 0 0 1 .248.434l-.495.283.495.283a.25.25 0 0 1-.248.434l-.501-.286v.569a.25.25 0 1 1-.5 0v-.57l-.501.287a.25.25 0 0 1-.248-.434l.495-.283-.495-.283a.25.25 0 0 1 .248-.434l.501.286v-.569a.25.25 0 0 1 .25-.25m5.5 0a.25.25 0 0 1 .25.25v.57l.501-.287a.25.25 0 0 1 .248.434l-.495.283.495.283a.25.25 0 0 1-.248.434l-.501-.286v.569a.25.25 0 1 1-.5 0v-.57l-.501.287a.25.25 0 0 1-.248-.434l.495-.283-.495-.283a.25.25 0 0 1 .248-.434l.501.286v-.569a.25.25 0 0 1 .25-.25m-2.75-2a.25.25 0 0 1 .25.25v.57l.501-.287a.25.25 0 0 1 .248.434l-.495.283.495.283a.25.25 0 0 1-.248.434l-.501-.286v.569a.25.25 0 1 1-.5 0v-.57l-.501.287a.25.25 0 0 1-.248-.434l.495-.283-.495-.283a.25.25 0 0 1 .248-.434l.501.286v-.569a.25.25 0 0 1 .25-.25m5.5 0a.25.25 0 0 1 .25.25v.57l.501-.287a.25.25 0 0 1 .248.434l-.495.283.495.283a.25.25 0 0 1-.248.434l-.501-.286v.569a.25.25 0 1 1-.5 0v-.57l-.501.287a.25.25 0 0 1-.248-.434l.495-.283-.495-.283a.25.25 0 0 1 .248-.434l.501.286v-.569a.25.25 0 0 1 .25-.25\"},\"child\":[]}]})(props);\n};\nexport function BsCloudSunFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M11.473 11a4.5 4.5 0 0 0-8.72-.99A3 3 0 0 0 3 16h8.5a2.5 2.5 0 0 0 0-5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M10.5 1.5a.5.5 0 0 0-1 0v1a.5.5 0 0 0 1 0zm3.743 1.964a.5.5 0 1 0-.707-.707l-.708.707a.5.5 0 0 0 .708.708zm-7.779-.707a.5.5 0 0 0-.707.707l.707.708a.5.5 0 1 0 .708-.708zm1.734 3.374a2 2 0 1 1 3.296 2.198q.3.423.516.898a3 3 0 1 0-4.84-3.225q.529.017 1.028.129m4.484 4.074c.6.215 1.125.59 1.522 1.072a.5.5 0 0 0 .039-.742l-.707-.707a.5.5 0 0 0-.854.377M14.5 6.5a.5.5 0 0 0 0 1h1a.5.5 0 0 0 0-1z\"},\"child\":[]}]})(props);\n};\nexport function BsCloudSun (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7 8a3.5 3.5 0 0 1 3.5 3.555.5.5 0 0 0 .624.492A1.503 1.503 0 0 1 13 13.5a1.5 1.5 0 0 1-1.5 1.5H3a2 2 0 1 1 .1-3.998.5.5 0 0 0 .51-.375A3.5 3.5 0 0 1 7 8m4.473 3a4.5 4.5 0 0 0-8.72-.99A3 3 0 0 0 3 16h8.5a2.5 2.5 0 0 0 0-5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M10.5 1.5a.5.5 0 0 0-1 0v1a.5.5 0 0 0 1 0zm3.743 1.964a.5.5 0 1 0-.707-.707l-.708.707a.5.5 0 0 0 .708.708zm-7.779-.707a.5.5 0 0 0-.707.707l.707.708a.5.5 0 1 0 .708-.708zm1.734 3.374a2 2 0 1 1 3.296 2.198q.3.423.516.898a3 3 0 1 0-4.84-3.225q.529.017 1.028.129m4.484 4.074c.6.215 1.125.59 1.522 1.072a.5.5 0 0 0 .039-.742l-.707-.707a.5.5 0 0 0-.854.377M14.5 6.5a.5.5 0 0 0 0 1h1a.5.5 0 0 0 0-1z\"},\"child\":[]}]})(props);\n};\nexport function BsCloudUploadFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M8 0a5.53 5.53 0 0 0-3.594 1.342c-.766.66-1.321 1.52-1.464 2.383C1.266 4.095 0 5.555 0 7.318 0 9.366 1.708 11 3.781 11H7.5V5.707L5.354 7.854a.5.5 0 1 1-.708-.708l3-3a.5.5 0 0 1 .708 0l3 3a.5.5 0 0 1-.708.708L8.5 5.707V11h4.188C14.502 11 16 9.57 16 7.773c0-1.636-1.242-2.969-2.834-3.194C12.923 1.999 10.69 0 8 0m-.5 14.5V11h1v3.5a.5.5 0 0 1-1 0\"},\"child\":[]}]})(props);\n};\nexport function BsCloudUpload (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M4.406 1.342A5.53 5.53 0 0 1 8 0c2.69 0 4.923 2 5.166 4.579C14.758 4.804 16 6.137 16 7.773 16 9.569 14.502 11 12.687 11H10a.5.5 0 0 1 0-1h2.688C13.979 10 15 8.988 15 7.773c0-1.216-1.02-2.228-2.313-2.228h-.5v-.5C12.188 2.825 10.328 1 8 1a4.53 4.53 0 0 0-2.941 1.1c-.757.652-1.153 1.438-1.153 2.055v.448l-.445.049C2.064 4.805 1 5.952 1 7.318 1 8.785 2.23 10 3.781 10H6a.5.5 0 0 1 0 1H3.781C1.708 11 0 9.366 0 7.318c0-1.763 1.266-3.223 2.942-3.593.143-.863.698-1.723 1.464-2.383\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M7.646 4.146a.5.5 0 0 1 .708 0l3 3a.5.5 0 0 1-.708.708L8.5 5.707V14.5a.5.5 0 0 1-1 0V5.707L5.354 7.854a.5.5 0 1 1-.708-.708z\"},\"child\":[]}]})(props);\n};\nexport function BsCloud (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4.406 3.342A5.53 5.53 0 0 1 8 2c2.69 0 4.923 2 5.166 4.579C14.758 6.804 16 8.137 16 9.773 16 11.569 14.502 13 12.687 13H3.781C1.708 13 0 11.366 0 9.318c0-1.763 1.266-3.223 2.942-3.593.143-.863.698-1.723 1.464-2.383m.653.757c-.757.653-1.153 1.44-1.153 2.056v.448l-.445.049C2.064 6.805 1 7.952 1 9.318 1 10.785 2.23 12 3.781 12h8.906C13.98 12 15 10.988 15 9.773c0-1.216-1.02-2.228-2.313-2.228h-.5v-.5C12.188 4.825 10.328 3 8 3a4.53 4.53 0 0 0-2.941 1.1z\"},\"child\":[]}]})(props);\n};\nexport function BsCloudsFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M11.473 9a4.5 4.5 0 0 0-8.72-.99A3 3 0 0 0 3 14h8.5a2.5 2.5 0 1 0-.027-5\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M14.544 9.772a3.5 3.5 0 0 0-2.225-1.676 5.5 5.5 0 0 0-6.337-4.002 4.002 4.002 0 0 1 7.392.91 2.5 2.5 0 0 1 1.17 4.769z\"},\"child\":[]}]})(props);\n};\nexport function BsClouds (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 7.5a2.5 2.5 0 0 1-1.456 2.272 3.5 3.5 0 0 0-.65-.824 1.5 1.5 0 0 0-.789-2.896.5.5 0 0 1-.627-.421 3 3 0 0 0-5.22-1.625 5.6 5.6 0 0 0-1.276.088 4.002 4.002 0 0 1 7.392.91A2.5 2.5 0 0 1 16 7.5\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M7 5a4.5 4.5 0 0 1 4.473 4h.027a2.5 2.5 0 0 1 0 5H3a3 3 0 0 1-.247-5.99A4.5 4.5 0 0 1 7 5m3.5 4.5a3.5 3.5 0 0 0-6.89-.873.5.5 0 0 1-.51.375A2 2 0 1 0 3 13h8.5a1.5 1.5 0 1 0-.376-2.953.5.5 0 0 1-.624-.492z\"},\"child\":[]}]})(props);\n};\nexport function BsCloudyFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M13.405 7.027a5.001 5.001 0 0 0-9.499-1.004A3.5 3.5 0 1 0 3.5 13H13a3 3 0 0 0 .405-5.973\"},\"child\":[]}]})(props);\n};\nexport function BsCloudy (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M13.405 8.527a5.001 5.001 0 0 0-9.499-1.004A3.5 3.5 0 1 0 3.5 14.5H13a3 3 0 0 0 .405-5.973M8.5 5.5a4 4 0 0 1 3.976 3.555.5.5 0 0 0 .5.445H13a2 2 0 0 1-.001 4H3.5a2.5 2.5 0 1 1 .605-4.926.5.5 0 0 0 .596-.329A4 4 0 0 1 8.5 5.5\"},\"child\":[]}]})(props);\n};\nexport function BsCodeSlash (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M10.478 1.647a.5.5 0 1 0-.956-.294l-4 13a.5.5 0 0 0 .956.294zM4.854 4.146a.5.5 0 0 1 0 .708L1.707 8l3.147 3.146a.5.5 0 0 1-.708.708l-3.5-3.5a.5.5 0 0 1 0-.708l3.5-3.5a.5.5 0 0 1 .708 0m6.292 0a.5.5 0 0 0 0 .708L14.293 8l-3.147 3.146a.5.5 0 0 0 .708.708l3.5-3.5a.5.5 0 0 0 0-.708l-3.5-3.5a.5.5 0 0 0-.708 0\"},\"child\":[]}]})(props);\n};\nexport function BsCodeSquare (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M14 1a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1zM2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M6.854 4.646a.5.5 0 0 1 0 .708L4.207 8l2.647 2.646a.5.5 0 0 1-.708.708l-3-3a.5.5 0 0 1 0-.708l3-3a.5.5 0 0 1 .708 0m2.292 0a.5.5 0 0 0 0 .708L11.793 8l-2.647 2.646a.5.5 0 0 0 .708.708l3-3a.5.5 0 0 0 0-.708l-3-3a.5.5 0 0 0-.708 0\"},\"child\":[]}]})(props);\n};\nexport function BsCode (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5.854 4.854a.5.5 0 1 0-.708-.708l-3.5 3.5a.5.5 0 0 0 0 .708l3.5 3.5a.5.5 0 0 0 .708-.708L2.707 8zm4.292 0a.5.5 0 0 1 .708-.708l3.5 3.5a.5.5 0 0 1 0 .708l-3.5 3.5a.5.5 0 0 1-.708-.708L13.293 8z\"},\"child\":[]}]})(props);\n};\nexport function BsCoin (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5.5 9.511c.076.954.83 1.697 2.182 1.785V12h.6v-.709c1.4-.098 2.218-.846 2.218-1.932 0-.987-.626-1.496-1.745-1.76l-.473-.112V5.57c.6.068.982.396 1.074.85h1.052c-.076-.919-.864-1.638-2.126-1.716V4h-.6v.719c-1.195.117-2.01.836-2.01 1.853 0 .9.606 1.472 1.613 1.707l.397.098v2.034c-.615-.093-1.022-.43-1.114-.9zm2.177-2.166c-.59-.137-.91-.416-.91-.836 0-.47.345-.822.915-.925v1.76h-.005zm.692 1.193c.717.166 1.048.435 1.048.91 0 .542-.412.914-1.135.982V8.518z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14m0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8 13.5a5.5 5.5 0 1 1 0-11 5.5 5.5 0 0 1 0 11m0 .5A6 6 0 1 0 8 2a6 6 0 0 0 0 12\"},\"child\":[]}]})(props);\n};\nexport function BsCollectionFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 13a1.5 1.5 0 0 0 1.5 1.5h13A1.5 1.5 0 0 0 16 13V6a1.5 1.5 0 0 0-1.5-1.5h-13A1.5 1.5 0 0 0 0 6zM2 3a.5.5 0 0 0 .5.5h11a.5.5 0 0 0 0-1h-11A.5.5 0 0 0 2 3m2-2a.5.5 0 0 0 .5.5h7a.5.5 0 0 0 0-1h-7A.5.5 0 0 0 4 1\"},\"child\":[]}]})(props);\n};\nexport function BsCollectionPlayFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2.5 3.5a.5.5 0 0 1 0-1h11a.5.5 0 0 1 0 1zm2-2a.5.5 0 0 1 0-1h7a.5.5 0 0 1 0 1zM0 13a1.5 1.5 0 0 0 1.5 1.5h13A1.5 1.5 0 0 0 16 13V6a1.5 1.5 0 0 0-1.5-1.5h-13A1.5 1.5 0 0 0 0 6zm6.258-6.437a.5.5 0 0 1 .507.013l4 2.5a.5.5 0 0 1 0 .848l-4 2.5A.5.5 0 0 1 6 12V7a.5.5 0 0 1 .258-.437\"},\"child\":[]}]})(props);\n};\nexport function BsCollectionPlay (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 3a.5.5 0 0 0 .5.5h11a.5.5 0 0 0 0-1h-11A.5.5 0 0 0 2 3m2-2a.5.5 0 0 0 .5.5h7a.5.5 0 0 0 0-1h-7A.5.5 0 0 0 4 1m2.765 5.576A.5.5 0 0 0 6 7v5a.5.5 0 0 0 .765.424l4-2.5a.5.5 0 0 0 0-.848z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M1.5 14.5A1.5 1.5 0 0 1 0 13V6a1.5 1.5 0 0 1 1.5-1.5h13A1.5 1.5 0 0 1 16 6v7a1.5 1.5 0 0 1-1.5 1.5zm13-1a.5.5 0 0 0 .5-.5V6a.5.5 0 0 0-.5-.5h-13A.5.5 0 0 0 1 6v7a.5.5 0 0 0 .5.5z\"},\"child\":[]}]})(props);\n};\nexport function BsCollection (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2.5 3.5a.5.5 0 0 1 0-1h11a.5.5 0 0 1 0 1zm2-2a.5.5 0 0 1 0-1h7a.5.5 0 0 1 0 1zM0 13a1.5 1.5 0 0 0 1.5 1.5h13A1.5 1.5 0 0 0 16 13V6a1.5 1.5 0 0 0-1.5-1.5h-13A1.5 1.5 0 0 0 0 6zm1.5.5A.5.5 0 0 1 1 13V6a.5.5 0 0 1 .5-.5h13a.5.5 0 0 1 .5.5v7a.5.5 0 0 1-.5.5z\"},\"child\":[]}]})(props);\n};\nexport function BsColumnsGap (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6 1v3H1V1zM1 0a1 1 0 0 0-1 1v3a1 1 0 0 0 1 1h5a1 1 0 0 0 1-1V1a1 1 0 0 0-1-1zm14 12v3h-5v-3zm-5-1a1 1 0 0 0-1 1v3a1 1 0 0 0 1 1h5a1 1 0 0 0 1-1v-3a1 1 0 0 0-1-1zM6 8v7H1V8zM1 7a1 1 0 0 0-1 1v7a1 1 0 0 0 1 1h5a1 1 0 0 0 1-1V8a1 1 0 0 0-1-1zm14-6v7h-5V1zm-5-1a1 1 0 0 0-1 1v7a1 1 0 0 0 1 1h5a1 1 0 0 0 1-1V1a1 1 0 0 0-1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsColumns (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 2a1 1 0 0 1 1-1h14a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H1a1 1 0 0 1-1-1zm8.5 0v8H15V2zm0 9v3H15v-3zm-1-9H1v3h6.5zM1 14h6.5V6H1z\"},\"child\":[]}]})(props);\n};\nexport function BsCommand (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3.5 2A1.5 1.5 0 0 1 5 3.5V5H3.5a1.5 1.5 0 1 1 0-3M6 5V3.5A2.5 2.5 0 1 0 3.5 6H5v4H3.5A2.5 2.5 0 1 0 6 12.5V11h4v1.5a2.5 2.5 0 1 0 2.5-2.5H11V6h1.5A2.5 2.5 0 1 0 10 3.5V5zm4 1v4H6V6zm1-1V3.5A1.5 1.5 0 1 1 12.5 5zm0 6h1.5a1.5 1.5 0 1 1-1.5 1.5zm-6 0v1.5A1.5 1.5 0 1 1 3.5 11z\"},\"child\":[]}]})(props);\n};\nexport function BsCompassFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M15.5 8.516a7.5 7.5 0 1 1-9.462-7.24A1 1 0 0 1 7 0h2a1 1 0 0 1 .962 1.276 7.5 7.5 0 0 1 5.538 7.24m-3.61-3.905L6.94 7.439 4.11 12.39l4.95-2.828 2.828-4.95z\"},\"child\":[]}]})(props);\n};\nexport function BsCompass (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 16.016a7.5 7.5 0 0 0 1.962-14.74A1 1 0 0 0 9 0H7a1 1 0 0 0-.962 1.276A7.5 7.5 0 0 0 8 16.016m6.5-7.5a6.5 6.5 0 1 1-13 0 6.5 6.5 0 0 1 13 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m6.94 7.44 4.95-2.83-2.83 4.95-4.949 2.83 2.828-4.95z\"},\"child\":[]}]})(props);\n};\nexport function BsConeStriped (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m9.97 4.88.953 3.811C10.159 8.878 9.14 9 8 9s-2.158-.122-2.923-.309L6.03 4.88C6.635 4.957 7.3 5 8 5s1.365-.043 1.97-.12m-.245-.978L8.97.88C8.718-.13 7.282-.13 7.03.88L6.275 3.9C6.8 3.965 7.382 4 8 4s1.2-.036 1.725-.098m4.396 8.613a.5.5 0 0 1 .037.96l-6 2a.5.5 0 0 1-.316 0l-6-2a.5.5 0 0 1 .037-.96l2.391-.598.565-2.257c.862.212 1.964.339 3.165.339s2.303-.127 3.165-.339l.565 2.257z\"},\"child\":[]}]})(props);\n};\nexport function BsCone (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.03 1.88c.252-1.01 1.688-1.01 1.94 0l2.905 11.62H14a.5.5 0 0 1 0 1H2a.5.5 0 0 1 0-1h2.125z\"},\"child\":[]}]})(props);\n};\nexport function BsController (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M11.5 6.027a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0m-1.5 1.5a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1m2.5-.5a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0m-1.5 1.5a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1m-6.5-3h1v1h1v1h-1v1h-1v-1h-1v-1h1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3.051 3.26a.5.5 0 0 1 .354-.613l1.932-.518a.5.5 0 0 1 .62.39c.655-.079 1.35-.117 2.043-.117.72 0 1.443.041 2.12.126a.5.5 0 0 1 .622-.399l1.932.518a.5.5 0 0 1 .306.729q.211.136.373.297c.408.408.78 1.05 1.095 1.772.32.733.599 1.591.805 2.466s.34 1.78.364 2.606c.024.816-.059 1.602-.328 2.21a1.42 1.42 0 0 1-1.445.83c-.636-.067-1.115-.394-1.513-.773-.245-.232-.496-.526-.739-.808-.126-.148-.25-.292-.368-.423-.728-.804-1.597-1.527-3.224-1.527s-2.496.723-3.224 1.527c-.119.131-.242.275-.368.423-.243.282-.494.575-.739.808-.398.38-.877.706-1.513.773a1.42 1.42 0 0 1-1.445-.83c-.27-.608-.352-1.395-.329-2.21.024-.826.16-1.73.365-2.606.206-.875.486-1.733.805-2.466.315-.722.687-1.364 1.094-1.772a2.3 2.3 0 0 1 .433-.335l-.028-.079zm2.036.412c-.877.185-1.469.443-1.733.708-.276.276-.587.783-.885 1.465a14 14 0 0 0-.748 2.295 12.4 12.4 0 0 0-.339 2.406c-.022.755.062 1.368.243 1.776a.42.42 0 0 0 .426.24c.327-.034.61-.199.929-.502.212-.202.4-.423.615-.674.133-.156.276-.323.44-.504C4.861 9.969 5.978 9.027 8 9.027s3.139.942 3.965 1.855c.164.181.307.348.44.504.214.251.403.472.615.674.318.303.601.468.929.503a.42.42 0 0 0 .426-.241c.18-.408.265-1.02.243-1.776a12.4 12.4 0 0 0-.339-2.406 14 14 0 0 0-.748-2.295c-.298-.682-.61-1.19-.885-1.465-.264-.265-.856-.523-1.733-.708-.85-.179-1.877-.27-2.913-.27s-2.063.091-2.913.27\"},\"child\":[]}]})(props);\n};\nexport function BsCookie (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6 7.5a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0m4.5.5a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3m-.5 3.5a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8 0a7.96 7.96 0 0 0-4.075 1.114q-.245.102-.437.28A8 8 0 1 0 8 0m3.25 14.201a1.5 1.5 0 0 0-2.13.71A7 7 0 0 1 8 15a6.97 6.97 0 0 1-3.845-1.15 1.5 1.5 0 1 0-2.005-2.005A6.97 6.97 0 0 1 1 8c0-1.953.8-3.719 2.09-4.989a1.5 1.5 0 1 0 2.469-1.574A7 7 0 0 1 8 1c1.42 0 2.742.423 3.845 1.15a1.5 1.5 0 1 0 2.005 2.005A6.97 6.97 0 0 1 15 8c0 .596-.074 1.174-.214 1.727a1.5 1.5 0 1 0-1.025 2.25 7 7 0 0 1-2.51 2.224Z\"},\"child\":[]}]})(props);\n};\nexport function BsCopy (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M4 2a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2zm2-1a1 1 0 0 0-1 1v8a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1zM2 5a1 1 0 0 0-1 1v8a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1v-1h1v1a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h1v1z\"},\"child\":[]}]})(props);\n};\nexport function BsCpuFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.5 6a.5.5 0 0 0-.5.5v3a.5.5 0 0 0 .5.5h3a.5.5 0 0 0 .5-.5v-3a.5.5 0 0 0-.5-.5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M5.5.5a.5.5 0 0 0-1 0V2A2.5 2.5 0 0 0 2 4.5H.5a.5.5 0 0 0 0 1H2v1H.5a.5.5 0 0 0 0 1H2v1H.5a.5.5 0 0 0 0 1H2v1H.5a.5.5 0 0 0 0 1H2A2.5 2.5 0 0 0 4.5 14v1.5a.5.5 0 0 0 1 0V14h1v1.5a.5.5 0 0 0 1 0V14h1v1.5a.5.5 0 0 0 1 0V14h1v1.5a.5.5 0 0 0 1 0V14a2.5 2.5 0 0 0 2.5-2.5h1.5a.5.5 0 0 0 0-1H14v-1h1.5a.5.5 0 0 0 0-1H14v-1h1.5a.5.5 0 0 0 0-1H14v-1h1.5a.5.5 0 0 0 0-1H14A2.5 2.5 0 0 0 11.5 2V.5a.5.5 0 0 0-1 0V2h-1V.5a.5.5 0 0 0-1 0V2h-1V.5a.5.5 0 0 0-1 0V2h-1zm1 4.5h3A1.5 1.5 0 0 1 11 6.5v3A1.5 1.5 0 0 1 9.5 11h-3A1.5 1.5 0 0 1 5 9.5v-3A1.5 1.5 0 0 1 6.5 5\"},\"child\":[]}]})(props);\n};\nexport function BsCpu (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5 0a.5.5 0 0 1 .5.5V2h1V.5a.5.5 0 0 1 1 0V2h1V.5a.5.5 0 0 1 1 0V2h1V.5a.5.5 0 0 1 1 0V2A2.5 2.5 0 0 1 14 4.5h1.5a.5.5 0 0 1 0 1H14v1h1.5a.5.5 0 0 1 0 1H14v1h1.5a.5.5 0 0 1 0 1H14v1h1.5a.5.5 0 0 1 0 1H14a2.5 2.5 0 0 1-2.5 2.5v1.5a.5.5 0 0 1-1 0V14h-1v1.5a.5.5 0 0 1-1 0V14h-1v1.5a.5.5 0 0 1-1 0V14h-1v1.5a.5.5 0 0 1-1 0V14A2.5 2.5 0 0 1 2 11.5H.5a.5.5 0 0 1 0-1H2v-1H.5a.5.5 0 0 1 0-1H2v-1H.5a.5.5 0 0 1 0-1H2v-1H.5a.5.5 0 0 1 0-1H2A2.5 2.5 0 0 1 4.5 2V.5A.5.5 0 0 1 5 0m-.5 3A1.5 1.5 0 0 0 3 4.5v7A1.5 1.5 0 0 0 4.5 13h7a1.5 1.5 0 0 0 1.5-1.5v-7A1.5 1.5 0 0 0 11.5 3zM5 6.5A1.5 1.5 0 0 1 6.5 5h3A1.5 1.5 0 0 1 11 6.5v3A1.5 1.5 0 0 1 9.5 11h-3A1.5 1.5 0 0 1 5 9.5zM6.5 6a.5.5 0 0 0-.5.5v3a.5.5 0 0 0 .5.5h3a.5.5 0 0 0 .5-.5v-3a.5.5 0 0 0-.5-.5z\"},\"child\":[]}]})(props);\n};\nexport function BsCreditCard2BackFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 4a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v5H0zm11.5 1a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h2a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zM0 11v1a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-1z\"},\"child\":[]}]})(props);\n};\nexport function BsCreditCard2Back (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M11 5.5a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-2a.5.5 0 0 1-.5-.5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 2a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2zm13 2v5H1V4a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1m-1 9H2a1 1 0 0 1-1-1v-1h14v1a1 1 0 0 1-1 1\"},\"child\":[]}]})(props);\n};\nexport function BsCreditCard2FrontFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 4a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm2.5 1a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h2a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm0 3a.5.5 0 0 0 0 1h5a.5.5 0 0 0 0-1zm0 2a.5.5 0 0 0 0 1h1a.5.5 0 0 0 0-1zm3 0a.5.5 0 0 0 0 1h1a.5.5 0 0 0 0-1zm3 0a.5.5 0 0 0 0 1h1a.5.5 0 0 0 0-1zm3 0a.5.5 0 0 0 0 1h1a.5.5 0 0 0 0-1z\"},\"child\":[]}]})(props);\n};\nexport function BsCreditCard2Front (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M14 3a1 1 0 0 1 1 1v8a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1zM2 2a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 5.5a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-2a.5.5 0 0 1-.5-.5zm0 3a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5m0 2a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 0 1h-1a.5.5 0 0 1-.5-.5m3 0a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 0 1h-1a.5.5 0 0 1-.5-.5m3 0a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 0 1h-1a.5.5 0 0 1-.5-.5m3 0a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 0 1h-1a.5.5 0 0 1-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsCreditCardFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 4a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v1H0zm0 3v5a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7zm3 2h1a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1v-1a1 1 0 0 1 1-1\"},\"child\":[]}]})(props);\n};\nexport function BsCreditCard (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 4a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm2-1a1 1 0 0 0-1 1v1h14V4a1 1 0 0 0-1-1zm13 4H1v5a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 10a1 1 0 0 1 1-1h1a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsCrop (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3.5.5A.5.5 0 0 1 4 1v13h13a.5.5 0 0 1 0 1h-2v2a.5.5 0 0 1-1 0v-2H3.5a.5.5 0 0 1-.5-.5V4H1a.5.5 0 0 1 0-1h2V1a.5.5 0 0 1 .5-.5m2.5 3a.5.5 0 0 1 .5-.5h8a.5.5 0 0 1 .5.5v8a.5.5 0 0 1-1 0V4H6.5a.5.5 0 0 1-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsCrosshair (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.5.5a.5.5 0 0 0-1 0v.518A7 7 0 0 0 1.018 7.5H.5a.5.5 0 0 0 0 1h.518A7 7 0 0 0 7.5 14.982v.518a.5.5 0 0 0 1 0v-.518A7 7 0 0 0 14.982 8.5h.518a.5.5 0 0 0 0-1h-.518A7 7 0 0 0 8.5 1.018zm-6.48 7A6 6 0 0 1 7.5 2.02v.48a.5.5 0 0 0 1 0v-.48a6 6 0 0 1 5.48 5.48h-.48a.5.5 0 0 0 0 1h.48a6 6 0 0 1-5.48 5.48v-.48a.5.5 0 0 0-1 0v.48A6 6 0 0 1 2.02 8.5h.48a.5.5 0 0 0 0-1zM8 10a2 2 0 1 0 0-4 2 2 0 0 0 0 4\"},\"child\":[]}]})(props);\n};\nexport function BsCrosshair2 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 0a.5.5 0 0 1 .5.5v.518A7 7 0 0 1 14.982 7.5h.518a.5.5 0 0 1 0 1h-.518A7 7 0 0 1 8.5 14.982v.518a.5.5 0 0 1-1 0v-.518A7 7 0 0 1 1.018 8.5H.5a.5.5 0 0 1 0-1h.518A7 7 0 0 1 7.5 1.018V.5A.5.5 0 0 1 8 0m-.5 2.02A6 6 0 0 0 2.02 7.5h1.005A5 5 0 0 1 7.5 3.025zm1 1.005A5 5 0 0 1 12.975 7.5h1.005A6 6 0 0 0 8.5 2.02zM12.975 8.5A5 5 0 0 1 8.5 12.975v1.005a6 6 0 0 0 5.48-5.48zM7.5 12.975A5 5 0 0 1 3.025 8.5H2.02a6 6 0 0 0 5.48 5.48zM10 8a2 2 0 1 0-4 0 2 2 0 0 0 4 0\"},\"child\":[]}]})(props);\n};\nexport function BsCupFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M.11 3.187A.5.5 0 0 1 .5 3h13a.5.5 0 0 1 .488.608l-.22.991a3.001 3.001 0 0 1-1.3 5.854l-.132.59A2.5 2.5 0 0 1 9.896 13H4.104a2.5 2.5 0 0 1-2.44-1.958L.012 3.608a.5.5 0 0 1 .098-.42Zm12.574 6.288a2 2 0 0 0 .866-3.899z\"},\"child\":[]}]})(props);\n};\nexport function BsCupHotFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M.5 6a.5.5 0 0 0-.488.608l1.652 7.434A2.5 2.5 0 0 0 4.104 16h5.792a2.5 2.5 0 0 0 2.44-1.958l.131-.59a3 3 0 0 0 1.3-5.854l.221-.99A.5.5 0 0 0 13.5 6zM13 12.5a2 2 0 0 1-.316-.025l.867-3.898A2.001 2.001 0 0 1 13 12.5\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m4.4.8-.003.004-.014.019a4 4 0 0 0-.204.31 2 2 0 0 0-.141.267c-.026.06-.034.092-.037.103v.004a.6.6 0 0 0 .091.248c.075.133.178.272.308.445l.01.012c.118.158.26.347.37.543.112.2.22.455.22.745 0 .188-.065.368-.119.494a3 3 0 0 1-.202.388 5 5 0 0 1-.253.382l-.018.025-.005.008-.002.002A.5.5 0 0 1 3.6 4.2l.003-.004.014-.019a4 4 0 0 0 .204-.31 2 2 0 0 0 .141-.267c.026-.06.034-.092.037-.103a.6.6 0 0 0-.09-.252A4 4 0 0 0 3.6 2.8l-.01-.012a5 5 0 0 1-.37-.543A1.53 1.53 0 0 1 3 1.5c0-.188.065-.368.119-.494.059-.138.134-.274.202-.388a6 6 0 0 1 .253-.382l.025-.035A.5.5 0 0 1 4.4.8m3 0-.003.004-.014.019a4 4 0 0 0-.204.31 2 2 0 0 0-.141.267c-.026.06-.034.092-.037.103v.004a.6.6 0 0 0 .091.248c.075.133.178.272.308.445l.01.012c.118.158.26.347.37.543.112.2.22.455.22.745 0 .188-.065.368-.119.494a3 3 0 0 1-.202.388 5 5 0 0 1-.253.382l-.018.025-.005.008-.002.002A.5.5 0 0 1 6.6 4.2l.003-.004.014-.019a4 4 0 0 0 .204-.31 2 2 0 0 0 .141-.267c.026-.06.034-.092.037-.103a.6.6 0 0 0-.09-.252A4 4 0 0 0 6.6 2.8l-.01-.012a5 5 0 0 1-.37-.543A1.53 1.53 0 0 1 6 1.5c0-.188.065-.368.119-.494.059-.138.134-.274.202-.388a6 6 0 0 1 .253-.382l.025-.035A.5.5 0 0 1 7.4.8m3 0-.003.004-.014.019a4 4 0 0 0-.204.31 2 2 0 0 0-.141.267c-.026.06-.034.092-.037.103v.004a.6.6 0 0 0 .091.248c.075.133.178.272.308.445l.01.012c.118.158.26.347.37.543.112.2.22.455.22.745 0 .188-.065.368-.119.494a3 3 0 0 1-.202.388 5 5 0 0 1-.252.382l-.019.025-.005.008-.002.002A.5.5 0 0 1 9.6 4.2l.003-.004.014-.019a4 4 0 0 0 .204-.31 2 2 0 0 0 .141-.267c.026-.06.034-.092.037-.103a.6.6 0 0 0-.09-.252A4 4 0 0 0 9.6 2.8l-.01-.012a5 5 0 0 1-.37-.543A1.53 1.53 0 0 1 9 1.5c0-.188.065-.368.119-.494.059-.138.134-.274.202-.388a6 6 0 0 1 .253-.382l.025-.035A.5.5 0 0 1 10.4.8\"},\"child\":[]}]})(props);\n};\nexport function BsCupHot (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M.5 6a.5.5 0 0 0-.488.608l1.652 7.434A2.5 2.5 0 0 0 4.104 16h5.792a2.5 2.5 0 0 0 2.44-1.958l.131-.59a3 3 0 0 0 1.3-5.854l.221-.99A.5.5 0 0 0 13.5 6zM13 12.5a2 2 0 0 1-.316-.025l.867-3.898A2.001 2.001 0 0 1 13 12.5M2.64 13.825 1.123 7h11.754l-1.517 6.825A1.5 1.5 0 0 1 9.896 15H4.104a1.5 1.5 0 0 1-1.464-1.175\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m4.4.8-.003.004-.014.019a4 4 0 0 0-.204.31 2 2 0 0 0-.141.267c-.026.06-.034.092-.037.103v.004a.6.6 0 0 0 .091.248c.075.133.178.272.308.445l.01.012c.118.158.26.347.37.543.112.2.22.455.22.745 0 .188-.065.368-.119.494a3 3 0 0 1-.202.388 5 5 0 0 1-.253.382l-.018.025-.005.008-.002.002A.5.5 0 0 1 3.6 4.2l.003-.004.014-.019a4 4 0 0 0 .204-.31 2 2 0 0 0 .141-.267c.026-.06.034-.092.037-.103a.6.6 0 0 0-.09-.252A4 4 0 0 0 3.6 2.8l-.01-.012a5 5 0 0 1-.37-.543A1.53 1.53 0 0 1 3 1.5c0-.188.065-.368.119-.494.059-.138.134-.274.202-.388a6 6 0 0 1 .253-.382l.025-.035A.5.5 0 0 1 4.4.8m3 0-.003.004-.014.019a4 4 0 0 0-.204.31 2 2 0 0 0-.141.267c-.026.06-.034.092-.037.103v.004a.6.6 0 0 0 .091.248c.075.133.178.272.308.445l.01.012c.118.158.26.347.37.543.112.2.22.455.22.745 0 .188-.065.368-.119.494a3 3 0 0 1-.202.388 5 5 0 0 1-.253.382l-.018.025-.005.008-.002.002A.5.5 0 0 1 6.6 4.2l.003-.004.014-.019a4 4 0 0 0 .204-.31 2 2 0 0 0 .141-.267c.026-.06.034-.092.037-.103a.6.6 0 0 0-.09-.252A4 4 0 0 0 6.6 2.8l-.01-.012a5 5 0 0 1-.37-.543A1.53 1.53 0 0 1 6 1.5c0-.188.065-.368.119-.494.059-.138.134-.274.202-.388a6 6 0 0 1 .253-.382l.025-.035A.5.5 0 0 1 7.4.8m3 0-.003.004-.014.019a4 4 0 0 0-.204.31 2 2 0 0 0-.141.267c-.026.06-.034.092-.037.103v.004a.6.6 0 0 0 .091.248c.075.133.178.272.308.445l.01.012c.118.158.26.347.37.543.112.2.22.455.22.745 0 .188-.065.368-.119.494a3 3 0 0 1-.202.388 5 5 0 0 1-.252.382l-.019.025-.005.008-.002.002A.5.5 0 0 1 9.6 4.2l.003-.004.014-.019a4 4 0 0 0 .204-.31 2 2 0 0 0 .141-.267c.026-.06.034-.092.037-.103a.6.6 0 0 0-.09-.252A4 4 0 0 0 9.6 2.8l-.01-.012a5 5 0 0 1-.37-.543A1.53 1.53 0 0 1 9 1.5c0-.188.065-.368.119-.494.059-.138.134-.274.202-.388a6 6 0 0 1 .253-.382l.025-.035A.5.5 0 0 1 10.4.8\"},\"child\":[]}]})(props);\n};\nexport function BsCupStraw (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M13.902.334a.5.5 0 0 1-.28.65l-2.254.902-.4 1.927c.376.095.715.215.972.367.228.135.56.396.56.82q0 .069-.011.132l-.962 9.068a1.28 1.28 0 0 1-.524.93c-.488.34-1.494.87-3.01.87s-2.522-.53-3.01-.87a1.28 1.28 0 0 1-.524-.93L3.51 5.132A1 1 0 0 1 3.5 5c0-.424.332-.685.56-.82.262-.154.607-.276.99-.372C5.824 3.614 6.867 3.5 8 3.5c.712 0 1.389.045 1.985.127l.464-2.215a.5.5 0 0 1 .303-.356l2.5-1a.5.5 0 0 1 .65.278M9.768 4.607A14 14 0 0 0 8 4.5c-1.076 0-2.033.11-2.707.278A3.3 3.3 0 0 0 4.645 5c.146.073.362.15.648.222C5.967 5.39 6.924 5.5 8 5.5c.571 0 1.109-.03 1.588-.085zm.292 1.756C9.445 6.45 8.742 6.5 8 6.5c-1.133 0-2.176-.114-2.95-.308a6 6 0 0 1-.435-.127l.838 8.03c.013.121.06.186.102.215.357.249 1.168.69 2.438.69s2.081-.441 2.438-.69c.042-.029.09-.094.102-.215l.852-8.03a6 6 0 0 1-.435.127 9 9 0 0 1-.89.17zM4.467 4.884s.003.002.005.006zm7.066 0-.005.006zM11.354 5a3 3 0 0 0-.604-.21l-.099.445.055-.013c.286-.072.502-.149.648-.222\"},\"child\":[]}]})(props);\n};\nexport function BsCup (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M.11 3.187A.5.5 0 0 1 .5 3h13a.5.5 0 0 1 .488.608l-.22.991a3.001 3.001 0 0 1-1.3 5.854l-.132.59A2.5 2.5 0 0 1 9.896 13H4.104a2.5 2.5 0 0 1-2.44-1.958L.012 3.608a.5.5 0 0 1 .098-.42Zm12.574 6.288a2 2 0 0 0 .866-3.899zM1.124 4l1.516 6.825A1.5 1.5 0 0 0 4.104 12h5.792a1.5 1.5 0 0 0 1.464-1.175L12.877 4H1.123Z\"},\"child\":[]}]})(props);\n};\nexport function BsCurrencyBitcoin (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5.5 13v1.25c0 .138.112.25.25.25h1a.25.25 0 0 0 .25-.25V13h.5v1.25c0 .138.112.25.25.25h1a.25.25 0 0 0 .25-.25V13h.084c1.992 0 3.416-1.033 3.416-2.82 0-1.502-1.007-2.323-2.186-2.44v-.088c.97-.242 1.683-.974 1.683-2.19C11.997 3.93 10.847 3 9.092 3H9V1.75a.25.25 0 0 0-.25-.25h-1a.25.25 0 0 0-.25.25V3h-.573V1.75a.25.25 0 0 0-.25-.25H5.75a.25.25 0 0 0-.25.25V3l-1.998.011a.25.25 0 0 0-.25.25v.989c0 .137.11.25.248.25l.755-.005a.75.75 0 0 1 .745.75v5.505a.75.75 0 0 1-.75.75l-.748.011a.25.25 0 0 0-.25.25v1c0 .138.112.25.25.25zm1.427-8.513h1.719c.906 0 1.438.498 1.438 1.312 0 .871-.575 1.362-1.877 1.362h-1.28zm0 4.051h1.84c1.137 0 1.756.58 1.756 1.524 0 .953-.626 1.45-2.158 1.45H6.927z\"},\"child\":[]}]})(props);\n};\nexport function BsCurrencyDollar (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4 10.781c.148 1.667 1.513 2.85 3.591 3.003V15h1.043v-1.216c2.27-.179 3.678-1.438 3.678-3.3 0-1.59-.947-2.51-2.956-3.028l-.722-.187V3.467c1.122.11 1.879.714 2.07 1.616h1.47c-.166-1.6-1.54-2.748-3.54-2.875V1H7.591v1.233c-1.939.23-3.27 1.472-3.27 3.156 0 1.454.966 2.483 2.661 2.917l.61.162v4.031c-1.149-.17-1.94-.8-2.131-1.718zm3.391-3.836c-1.043-.263-1.6-.825-1.6-1.616 0-.944.704-1.641 1.8-1.828v3.495l-.2-.05zm1.591 1.872c1.287.323 1.852.859 1.852 1.769 0 1.097-.826 1.828-2.2 1.939V8.73z\"},\"child\":[]}]})(props);\n};\nexport function BsCurrencyEuro (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4 9.42h1.063C5.4 12.323 7.317 14 10.34 14c.622 0 1.167-.068 1.659-.185v-1.3c-.484.119-1.045.17-1.659.17-2.1 0-3.455-1.198-3.775-3.264h4.017v-.928H6.497v-.936q-.002-.165.008-.329h4.078v-.927H6.618c.388-1.898 1.719-2.985 3.723-2.985.614 0 1.175.05 1.659.177V2.194A6.6 6.6 0 0 0 10.341 2c-2.928 0-4.82 1.569-5.244 4.3H4v.928h1.01v1.265H4v.928z\"},\"child\":[]}]})(props);\n};\nexport function BsCurrencyExchange (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 5a5 5 0 0 0 4.027 4.905 6.5 6.5 0 0 1 .544-2.073C3.695 7.536 3.132 6.864 3 5.91h-.5v-.426h.466V5.05q-.001-.07.004-.135H2.5v-.427h.511C3.236 3.24 4.213 2.5 5.681 2.5c.316 0 .59.031.819.085v.733a3.5 3.5 0 0 0-.815-.082c-.919 0-1.538.466-1.734 1.252h1.917v.427h-1.98q-.004.07-.003.147v.422h1.983v.427H3.93c.118.602.468 1.03 1.005 1.229a6.5 6.5 0 0 1 4.97-3.113A5.002 5.002 0 0 0 0 5m16 5.5a5.5 5.5 0 1 1-11 0 5.5 5.5 0 0 1 11 0m-7.75 1.322c.069.835.746 1.485 1.964 1.562V14h.54v-.62c1.259-.086 1.996-.74 1.996-1.69 0-.865-.563-1.31-1.57-1.54l-.426-.1V8.374c.54.06.884.347.966.745h.948c-.07-.804-.779-1.433-1.914-1.502V7h-.54v.629c-1.076.103-1.808.732-1.808 1.622 0 .787.544 1.288 1.45 1.493l.358.085v1.78c-.554-.08-.92-.376-1.003-.787zm1.96-1.895c-.532-.12-.82-.364-.82-.732 0-.41.311-.719.824-.809v1.54h-.005zm.622 1.044c.645.145.943.38.943.796 0 .474-.37.8-1.02.86v-1.674z\"},\"child\":[]}]})(props);\n};\nexport function BsCurrencyPound (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4 8.585h1.969c.115.465.186.939.186 1.43 0 1.385-.736 2.496-2.075 2.771V14H12v-1.24H6.492v-.129c.825-.525 1.135-1.446 1.135-2.694 0-.465-.07-.913-.168-1.352h3.29v-.972H7.22c-.186-.723-.372-1.455-.372-2.247 0-1.274 1.047-2.066 2.58-2.066a5.3 5.3 0 0 1 2.103.465V2.456A5.6 5.6 0 0 0 9.348 2C6.865 2 5.322 3.291 5.322 5.366c0 .775.195 1.515.399 2.247H4z\"},\"child\":[]}]})(props);\n};\nexport function BsCurrencyRupee (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4 3.06h2.726c1.22 0 2.12.575 2.325 1.724H4v1.051h5.051C8.855 7.001 8 7.558 6.788 7.558H4v1.317L8.437 14h2.11L6.095 8.884h.855c2.316-.018 3.465-1.476 3.688-3.049H12V4.784h-1.345c-.08-.778-.357-1.335-.793-1.732H12V2H4z\"},\"child\":[]}]})(props);\n};\nexport function BsCurrencyYen (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.75 14v-2.629h2.446v-.967H8.75v-1.31h2.445v-.967H9.128L12.5 2h-1.699L8.047 7.327h-.086L5.207 2H3.5l3.363 6.127H4.778v.968H7.25v1.31H4.78v.966h2.47V14h1.502z\"},\"child\":[]}]})(props);\n};\nexport function BsCursorFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M14.082 2.182a.5.5 0 0 1 .103.557L8.528 15.467a.5.5 0 0 1-.917-.007L5.57 10.694.803 8.652a.5.5 0 0 1-.006-.916l12.728-5.657a.5.5 0 0 1 .556.103z\"},\"child\":[]}]})(props);\n};\nexport function BsCursorText (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5 2a.5.5 0 0 1 .5-.5c.862 0 1.573.287 2.06.566.174.099.321.198.44.286.119-.088.266-.187.44-.286A4.17 4.17 0 0 1 10.5 1.5a.5.5 0 0 1 0 1c-.638 0-1.177.213-1.564.434a3.5 3.5 0 0 0-.436.294V7.5H9a.5.5 0 0 1 0 1h-.5v4.272c.1.08.248.187.436.294.387.221.926.434 1.564.434a.5.5 0 0 1 0 1 4.17 4.17 0 0 1-2.06-.566A5 5 0 0 1 8 13.65a5 5 0 0 1-.44.285 4.17 4.17 0 0 1-2.06.566.5.5 0 0 1 0-1c.638 0 1.177-.213 1.564-.434.188-.107.335-.214.436-.294V8.5H7a.5.5 0 0 1 0-1h.5V3.228a3.5 3.5 0 0 0-.436-.294A3.17 3.17 0 0 0 5.5 2.5.5.5 0 0 1 5 2m2.648 10.645\"},\"child\":[]}]})(props);\n};\nexport function BsCursor (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M14.082 2.182a.5.5 0 0 1 .103.557L8.528 15.467a.5.5 0 0 1-.917-.007L5.57 10.694.803 8.652a.5.5 0 0 1-.006-.916l12.728-5.657a.5.5 0 0 1 .556.103zM2.25 8.184l3.897 1.67a.5.5 0 0 1 .262.263l1.67 3.897L12.743 3.52z\"},\"child\":[]}]})(props);\n};\nexport function BsDashCircleDotted (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 0q-.264 0-.523.017l.064.998a7 7 0 0 1 .918 0l.064-.998A8 8 0 0 0 8 0M6.44.152q-.52.104-1.012.27l.321.948q.43-.147.884-.237L6.44.153zm4.132.271a8 8 0 0 0-1.011-.27l-.194.98q.453.09.884.237zm1.873.925a8 8 0 0 0-.906-.524l-.443.896q.413.205.793.459zM4.46.824q-.471.233-.905.524l.556.83a7 7 0 0 1 .793-.458zM2.725 1.985q-.394.346-.74.74l.752.66q.303-.345.648-.648zm11.29.74a8 8 0 0 0-.74-.74l-.66.752q.346.303.648.648zm1.161 1.735a8 8 0 0 0-.524-.905l-.83.556q.254.38.458.793l.896-.443zM1.348 3.555q-.292.433-.524.906l.896.443q.205-.413.459-.793zM.423 5.428a8 8 0 0 0-.27 1.011l.98.194q.09-.453.237-.884zM15.848 6.44a8 8 0 0 0-.27-1.012l-.948.321q.147.43.237.884zM.017 7.477a8 8 0 0 0 0 1.046l.998-.064a7 7 0 0 1 0-.918zM16 8a8 8 0 0 0-.017-.523l-.998.064a7 7 0 0 1 0 .918l.998.064A8 8 0 0 0 16 8M.152 9.56q.104.52.27 1.012l.948-.321a7 7 0 0 1-.237-.884l-.98.194zm15.425 1.012q.168-.493.27-1.011l-.98-.194q-.09.453-.237.884zM.824 11.54a8 8 0 0 0 .524.905l.83-.556a7 7 0 0 1-.458-.793zm13.828.905q.292-.434.524-.906l-.896-.443q-.205.413-.459.793zm-12.667.83q.346.394.74.74l.66-.752a7 7 0 0 1-.648-.648zm11.29.74q.394-.346.74-.74l-.752-.66q-.302.346-.648.648zm-1.735 1.161q.471-.233.905-.524l-.556-.83a7 7 0 0 1-.793.458zm-7.985-.524q.434.292.906.524l.443-.896a7 7 0 0 1-.793-.459zm1.873.925q.493.168 1.011.27l.194-.98a7 7 0 0 1-.884-.237zm4.132.271a8 8 0 0 0 1.012-.27l-.321-.948a7 7 0 0 1-.884.237l.194.98zm-2.083.135a8 8 0 0 0 1.046 0l-.064-.998a7 7 0 0 1-.918 0zM4.5 7.5a.5.5 0 0 0 0 1h7a.5.5 0 0 0 0-1z\"},\"child\":[]}]})(props);\n};\nexport function BsDashCircleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0M4.5 7.5a.5.5 0 0 0 0 1h7a.5.5 0 0 0 0-1z\"},\"child\":[]}]})(props);\n};\nexport function BsDashCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14m0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4 8a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7A.5.5 0 0 1 4 8\"},\"child\":[]}]})(props);\n};\nexport function BsDashLg (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M2 8a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11A.5.5 0 0 1 2 8\"},\"child\":[]}]})(props);\n};\nexport function BsDashSquareDotted (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2.5 0q-.25 0-.487.048l.194.98A1.5 1.5 0 0 1 2.5 1h.458V0zm2.292 0h-.917v1h.917zm1.833 0h-.917v1h.917zm1.833 0h-.916v1h.916zm1.834 0h-.917v1h.917zm1.833 0h-.917v1h.917zM13.5 0h-.458v1h.458q.151 0 .293.029l.194-.981A2.5 2.5 0 0 0 13.5 0m2.079 1.11a2.5 2.5 0 0 0-.69-.689l-.556.831q.248.167.415.415l.83-.556zM1.11.421a2.5 2.5 0 0 0-.689.69l.831.556c.11-.164.251-.305.415-.415zM16 2.5q0-.25-.048-.487l-.98.194q.027.141.028.293v.458h1zM.048 2.013A2.5 2.5 0 0 0 0 2.5v.458h1V2.5q0-.151.029-.293zM0 3.875v.917h1v-.917zm16 .917v-.917h-1v.917zM0 5.708v.917h1v-.917zm16 .917v-.917h-1v.917zM0 7.542v.916h1v-.916zm15 .916h1v-.916h-1zM0 9.375v.917h1v-.917zm16 .917v-.917h-1v.917zm-16 .916v.917h1v-.917zm16 .917v-.917h-1v.917zm-16 .917v.458q0 .25.048.487l.98-.194A1.5 1.5 0 0 1 1 13.5v-.458zm16 .458v-.458h-1v.458q0 .151-.029.293l.981.194Q16 13.75 16 13.5M.421 14.89c.183.272.417.506.69.689l.556-.831a1.5 1.5 0 0 1-.415-.415zm14.469.689c.272-.183.506-.417.689-.69l-.831-.556c-.11.164-.251.305-.415.415l.556.83zm-12.877.373Q2.25 16 2.5 16h.458v-1H2.5q-.151 0-.293-.029zM13.5 16q.25 0 .487-.048l-.194-.98A1.5 1.5 0 0 1 13.5 15h-.458v1zm-9.625 0h.917v-1h-.917zm1.833 0h.917v-1h-.917zm1.834 0h.916v-1h-.916zm1.833 0h.917v-1h-.917zm1.833 0h.917v-1h-.917zM4.5 7.5a.5.5 0 0 0 0 1h7a.5.5 0 0 0 0-1z\"},\"child\":[]}]})(props);\n};\nexport function BsDashSquareFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm2.5 7.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1 0-1\"},\"child\":[]}]})(props);\n};\nexport function BsDashSquare (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M14 1a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1zM2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4 8a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7A.5.5 0 0 1 4 8\"},\"child\":[]}]})(props);\n};\nexport function BsDash (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4 8a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7A.5.5 0 0 1 4 8\"},\"child\":[]}]})(props);\n};\nexport function BsDatabaseAdd (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12.5 16a3.5 3.5 0 1 0 0-7 3.5 3.5 0 0 0 0 7m.5-5v1h1a.5.5 0 0 1 0 1h-1v1a.5.5 0 0 1-1 0v-1h-1a.5.5 0 0 1 0-1h1v-1a.5.5 0 0 1 1 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M12.096 6.223A5 5 0 0 0 13 5.698V7c0 .289-.213.654-.753 1.007a4.5 4.5 0 0 1 1.753.25V4c0-1.007-.875-1.755-1.904-2.223C11.022 1.289 9.573 1 8 1s-3.022.289-4.096.777C2.875 2.245 2 2.993 2 4v9c0 1.007.875 1.755 1.904 2.223C4.978 15.71 6.427 16 8 16c.536 0 1.058-.034 1.555-.097a4.5 4.5 0 0 1-.813-.927Q8.378 15 8 15c-1.464 0-2.766-.27-3.682-.687C3.356 13.875 3 13.373 3 13v-1.302c.271.202.58.378.904.525C4.978 12.71 6.427 13 8 13h.027a4.6 4.6 0 0 1 0-1H8c-1.464 0-2.766-.27-3.682-.687C3.356 10.875 3 10.373 3 10V8.698c.271.202.58.378.904.525C4.978 9.71 6.427 10 8 10q.393 0 .774-.024a4.5 4.5 0 0 1 1.102-1.132C9.298 8.944 8.666 9 8 9c-1.464 0-2.766-.27-3.682-.687C3.356 7.875 3 7.373 3 7V5.698c.271.202.58.378.904.525C4.978 6.711 6.427 7 8 7s3.022-.289 4.096-.777M3 4c0-.374.356-.875 1.318-1.313C5.234 2.271 6.536 2 8 2s2.766.27 3.682.687C12.644 3.125 13 3.627 13 4c0 .374-.356.875-1.318 1.313C10.766 5.729 9.464 6 8 6s-2.766-.27-3.682-.687C3.356 4.875 3 4.373 3 4\"},\"child\":[]}]})(props);\n};\nexport function BsDatabaseCheck (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12.5 16a3.5 3.5 0 1 0 0-7 3.5 3.5 0 0 0 0 7m1.679-4.493-1.335 2.226a.75.75 0 0 1-1.174.144l-.774-.773a.5.5 0 0 1 .708-.708l.547.548 1.17-1.951a.5.5 0 1 1 .858.514\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M12.096 6.223A5 5 0 0 0 13 5.698V7c0 .289-.213.654-.753 1.007a4.5 4.5 0 0 1 1.753.25V4c0-1.007-.875-1.755-1.904-2.223C11.022 1.289 9.573 1 8 1s-3.022.289-4.096.777C2.875 2.245 2 2.993 2 4v9c0 1.007.875 1.755 1.904 2.223C4.978 15.71 6.427 16 8 16c.536 0 1.058-.034 1.555-.097a4.5 4.5 0 0 1-.813-.927Q8.378 15 8 15c-1.464 0-2.766-.27-3.682-.687C3.356 13.875 3 13.373 3 13v-1.302c.271.202.58.378.904.525C4.978 12.71 6.427 13 8 13h.027a4.6 4.6 0 0 1 0-1H8c-1.464 0-2.766-.27-3.682-.687C3.356 10.875 3 10.373 3 10V8.698c.271.202.58.378.904.525C4.978 9.71 6.427 10 8 10q.393 0 .774-.024a4.5 4.5 0 0 1 1.102-1.132C9.298 8.944 8.666 9 8 9c-1.464 0-2.766-.27-3.682-.687C3.356 7.875 3 7.373 3 7V5.698c.271.202.58.378.904.525C4.978 6.711 6.427 7 8 7s3.022-.289 4.096-.777M3 4c0-.374.356-.875 1.318-1.313C5.234 2.271 6.536 2 8 2s2.766.27 3.682.687C12.644 3.125 13 3.627 13 4c0 .374-.356.875-1.318 1.313C10.766 5.729 9.464 6 8 6s-2.766-.27-3.682-.687C3.356 4.875 3 4.373 3 4\"},\"child\":[]}]})(props);\n};\nexport function BsDatabaseDash (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12.5 16a3.5 3.5 0 1 0 0-7 3.5 3.5 0 0 0 0 7M11 12h3a.5.5 0 0 1 0 1h-3a.5.5 0 0 1 0-1\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M12.096 6.223A5 5 0 0 0 13 5.698V7c0 .289-.213.654-.753 1.007a4.5 4.5 0 0 1 1.753.25V4c0-1.007-.875-1.755-1.904-2.223C11.022 1.289 9.573 1 8 1s-3.022.289-4.096.777C2.875 2.245 2 2.993 2 4v9c0 1.007.875 1.755 1.904 2.223C4.978 15.71 6.427 16 8 16c.536 0 1.058-.034 1.555-.097a4.5 4.5 0 0 1-.813-.927Q8.378 15 8 15c-1.464 0-2.766-.27-3.682-.687C3.356 13.875 3 13.373 3 13v-1.302c.271.202.58.378.904.525C4.978 12.71 6.427 13 8 13h.027a4.6 4.6 0 0 1 0-1H8c-1.464 0-2.766-.27-3.682-.687C3.356 10.875 3 10.373 3 10V8.698c.271.202.58.378.904.525C4.978 9.71 6.427 10 8 10q.393 0 .774-.024a4.5 4.5 0 0 1 1.102-1.132C9.298 8.944 8.666 9 8 9c-1.464 0-2.766-.27-3.682-.687C3.356 7.875 3 7.373 3 7V5.698c.271.202.58.378.904.525C4.978 6.711 6.427 7 8 7s3.022-.289 4.096-.777M3 4c0-.374.356-.875 1.318-1.313C5.234 2.271 6.536 2 8 2s2.766.27 3.682.687C12.644 3.125 13 3.627 13 4c0 .374-.356.875-1.318 1.313C10.766 5.729 9.464 6 8 6s-2.766-.27-3.682-.687C3.356 4.875 3 4.373 3 4\"},\"child\":[]}]})(props);\n};\nexport function BsDatabaseDown (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12.5 9a3.5 3.5 0 1 1 0 7 3.5 3.5 0 0 1 0-7m.354 5.854 1.5-1.5a.5.5 0 0 0-.708-.708l-.646.647V10.5a.5.5 0 0 0-1 0v2.793l-.646-.647a.5.5 0 0 0-.708.708l1.5 1.5a.5.5 0 0 0 .708 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M12.096 6.223A5 5 0 0 0 13 5.698V7c0 .289-.213.654-.753 1.007a4.5 4.5 0 0 1 1.753.25V4c0-1.007-.875-1.755-1.904-2.223C11.022 1.289 9.573 1 8 1s-3.022.289-4.096.777C2.875 2.245 2 2.993 2 4v9c0 1.007.875 1.755 1.904 2.223C4.978 15.71 6.427 16 8 16c.536 0 1.058-.034 1.555-.097a4.5 4.5 0 0 1-.813-.927Q8.378 15 8 15c-1.464 0-2.766-.27-3.682-.687C3.356 13.875 3 13.373 3 13v-1.302c.271.202.58.378.904.525C4.978 12.71 6.427 13 8 13h.027a4.6 4.6 0 0 1 0-1H8c-1.464 0-2.766-.27-3.682-.687C3.356 10.875 3 10.373 3 10V8.698c.271.202.58.378.904.525C4.978 9.71 6.427 10 8 10q.393 0 .774-.024a4.5 4.5 0 0 1 1.102-1.132C9.298 8.944 8.666 9 8 9c-1.464 0-2.766-.27-3.682-.687C3.356 7.875 3 7.373 3 7V5.698c.271.202.58.378.904.525C4.978 6.711 6.427 7 8 7s3.022-.289 4.096-.777M3 4c0-.374.356-.875 1.318-1.313C5.234 2.271 6.536 2 8 2s2.766.27 3.682.687C12.644 3.125 13 3.627 13 4c0 .374-.356.875-1.318 1.313C10.766 5.729 9.464 6 8 6s-2.766-.27-3.682-.687C3.356 4.875 3 4.373 3 4\"},\"child\":[]}]})(props);\n};\nexport function BsDatabaseExclamation (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12.096 6.223A5 5 0 0 0 13 5.698V7c0 .289-.213.654-.753 1.007a4.5 4.5 0 0 1 1.753.25V4c0-1.007-.875-1.755-1.904-2.223C11.022 1.289 9.573 1 8 1s-3.022.289-4.096.777C2.875 2.245 2 2.993 2 4v9c0 1.007.875 1.755 1.904 2.223C4.978 15.71 6.427 16 8 16c.536 0 1.058-.034 1.555-.097a4.5 4.5 0 0 1-.813-.927Q8.378 15 8 15c-1.464 0-2.766-.27-3.682-.687C3.356 13.875 3 13.373 3 13v-1.302c.271.202.58.378.904.525C4.978 12.71 6.427 13 8 13h.027a4.6 4.6 0 0 1 0-1H8c-1.464 0-2.766-.27-3.682-.687C3.356 10.875 3 10.373 3 10V8.698c.271.202.58.378.904.525C4.978 9.71 6.427 10 8 10q.393 0 .774-.024a4.5 4.5 0 0 1 1.102-1.132C9.298 8.944 8.666 9 8 9c-1.464 0-2.766-.27-3.682-.687C3.356 7.875 3 7.373 3 7V5.698c.271.202.58.378.904.525C4.978 6.711 6.427 7 8 7s3.022-.289 4.096-.777M3 4c0-.374.356-.875 1.318-1.313C5.234 2.271 6.536 2 8 2s2.766.27 3.682.687C12.644 3.125 13 3.627 13 4c0 .374-.356.875-1.318 1.313C10.766 5.729 9.464 6 8 6s-2.766-.27-3.682-.687C3.356 4.875 3 4.373 3 4\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M16 12.5a3.5 3.5 0 1 1-7 0 3.5 3.5 0 0 1 7 0m-3.5-2a.5.5 0 0 0-.5.5v1.5a.5.5 0 0 0 1 0V11a.5.5 0 0 0-.5-.5m0 4a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1\"},\"child\":[]}]})(props);\n};\nexport function BsDatabaseFillAdd (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12.5 16a3.5 3.5 0 1 0 0-7 3.5 3.5 0 0 0 0 7m.5-5v1h1a.5.5 0 0 1 0 1h-1v1a.5.5 0 0 1-1 0v-1h-1a.5.5 0 0 1 0-1h1v-1a.5.5 0 0 1 1 0M8 1c-1.573 0-3.022.289-4.096.777C2.875 2.245 2 2.993 2 4s.875 1.755 1.904 2.223C4.978 6.711 6.427 7 8 7s3.022-.289 4.096-.777C13.125 5.755 14 5.007 14 4s-.875-1.755-1.904-2.223C11.022 1.289 9.573 1 8 1\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 7v-.839c.457.432 1.004.751 1.49.972C4.722 7.693 6.318 8 8 8s3.278-.307 4.51-.867c.486-.22 1.033-.54 1.49-.972V7c0 .424-.155.802-.411 1.133a4.51 4.51 0 0 0-4.815 1.843A12 12 0 0 1 8 10c-1.573 0-3.022-.289-4.096-.777C2.875 8.755 2 8.007 2 7m6.257 3.998L8 11c-1.682 0-3.278-.307-4.51-.867-.486-.22-1.033-.54-1.49-.972V10c0 1.007.875 1.755 1.904 2.223C4.978 12.711 6.427 13 8 13h.027a4.55 4.55 0 0 1 .23-2.002m-.002 3L8 14c-1.682 0-3.278-.307-4.51-.867-.486-.22-1.033-.54-1.49-.972V13c0 1.007.875 1.755 1.904 2.223C4.978 15.711 6.427 16 8 16c.536 0 1.058-.034 1.555-.097a4.5 4.5 0 0 1-1.3-1.905\"},\"child\":[]}]})(props);\n};\nexport function BsDatabaseFillCheck (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12.5 16a3.5 3.5 0 1 0 0-7 3.5 3.5 0 0 0 0 7m1.679-4.493-1.335 2.226a.75.75 0 0 1-1.174.144l-.774-.773a.5.5 0 0 1 .708-.708l.547.548 1.17-1.951a.5.5 0 1 1 .858.514M8 1c-1.573 0-3.022.289-4.096.777C2.875 2.245 2 2.993 2 4s.875 1.755 1.904 2.223C4.978 6.711 6.427 7 8 7s3.022-.289 4.096-.777C13.125 5.755 14 5.007 14 4s-.875-1.755-1.904-2.223C11.022 1.289 9.573 1 8 1\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 7v-.839c.457.432 1.004.751 1.49.972C4.722 7.693 6.318 8 8 8s3.278-.307 4.51-.867c.486-.22 1.033-.54 1.49-.972V7c0 .424-.155.802-.411 1.133a4.51 4.51 0 0 0-4.815 1.843A12 12 0 0 1 8 10c-1.573 0-3.022-.289-4.096-.777C2.875 8.755 2 8.007 2 7m6.257 3.998L8 11c-1.682 0-3.278-.307-4.51-.867-.486-.22-1.033-.54-1.49-.972V10c0 1.007.875 1.755 1.904 2.223C4.978 12.711 6.427 13 8 13h.027a4.55 4.55 0 0 1 .23-2.002m-.002 3L8 14c-1.682 0-3.278-.307-4.51-.867-.486-.22-1.033-.54-1.49-.972V13c0 1.007.875 1.755 1.904 2.223C4.978 15.711 6.427 16 8 16c.536 0 1.058-.034 1.555-.097a4.5 4.5 0 0 1-1.3-1.905\"},\"child\":[]}]})(props);\n};\nexport function BsDatabaseFillDash (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12.5 16a3.5 3.5 0 1 0 0-7 3.5 3.5 0 0 0 0 7M11 12h3a.5.5 0 0 1 0 1h-3a.5.5 0 0 1 0-1M8 1c-1.573 0-3.022.289-4.096.777C2.875 2.245 2 2.993 2 4s.875 1.755 1.904 2.223C4.978 6.711 6.427 7 8 7s3.022-.289 4.096-.777C13.125 5.755 14 5.007 14 4s-.875-1.755-1.904-2.223C11.022 1.289 9.573 1 8 1\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 7v-.839c.457.432 1.004.751 1.49.972C4.722 7.693 6.318 8 8 8s3.278-.307 4.51-.867c.486-.22 1.033-.54 1.49-.972V7c0 .424-.155.802-.411 1.133a4.51 4.51 0 0 0-4.815 1.843A12 12 0 0 1 8 10c-1.573 0-3.022-.289-4.096-.777C2.875 8.755 2 8.007 2 7m6.257 3.998L8 11c-1.682 0-3.278-.307-4.51-.867-.486-.22-1.033-.54-1.49-.972V10c0 1.007.875 1.755 1.904 2.223C4.978 12.711 6.427 13 8 13h.027a4.55 4.55 0 0 1 .23-2.002m-.002 3L8 14c-1.682 0-3.278-.307-4.51-.867-.486-.22-1.033-.54-1.49-.972V13c0 1.007.875 1.755 1.904 2.223C4.978 15.711 6.427 16 8 16c.536 0 1.058-.034 1.555-.097a4.5 4.5 0 0 1-1.3-1.905\"},\"child\":[]}]})(props);\n};\nexport function BsDatabaseFillDown (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12.5 9a3.5 3.5 0 1 1 0 7 3.5 3.5 0 0 1 0-7m.354 5.854 1.5-1.5a.5.5 0 0 0-.708-.708l-.646.647V10.5a.5.5 0 0 0-1 0v2.793l-.646-.647a.5.5 0 0 0-.708.708l1.5 1.5a.5.5 0 0 0 .708 0M8 1c-1.573 0-3.022.289-4.096.777C2.875 2.245 2 2.993 2 4s.875 1.755 1.904 2.223C4.978 6.711 6.427 7 8 7s3.022-.289 4.096-.777C13.125 5.755 14 5.007 14 4s-.875-1.755-1.904-2.223C11.022 1.289 9.573 1 8 1\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 7v-.839c.457.432 1.004.751 1.49.972C4.722 7.693 6.318 8 8 8s3.278-.307 4.51-.867c.486-.22 1.033-.54 1.49-.972V7c0 .424-.155.802-.411 1.133a4.51 4.51 0 0 0-4.815 1.843A12 12 0 0 1 8 10c-1.573 0-3.022-.289-4.096-.777C2.875 8.755 2 8.007 2 7m6.257 3.998L8 11c-1.682 0-3.278-.307-4.51-.867-.486-.22-1.033-.54-1.49-.972V10c0 1.007.875 1.755 1.904 2.223C4.978 12.711 6.427 13 8 13h.027a4.55 4.55 0 0 1 .23-2.002m-.002 3L8 14c-1.682 0-3.278-.307-4.51-.867-.486-.22-1.033-.54-1.49-.972V13c0 1.007.875 1.755 1.904 2.223C4.978 15.711 6.427 16 8 16c.536 0 1.058-.034 1.555-.097a4.5 4.5 0 0 1-1.3-1.905\"},\"child\":[]}]})(props);\n};\nexport function BsDatabaseFillExclamation (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 1c-1.573 0-3.022.289-4.096.777C2.875 2.245 2 2.993 2 4s.875 1.755 1.904 2.223C4.978 6.711 6.427 7 8 7s3.022-.289 4.096-.777C13.125 5.755 14 5.007 14 4s-.875-1.755-1.904-2.223C11.022 1.289 9.573 1 8 1\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 7v-.839c.457.432 1.004.751 1.49.972C4.722 7.693 6.318 8 8 8s3.278-.307 4.51-.867c.486-.22 1.033-.54 1.49-.972V7c0 .424-.155.802-.411 1.133a4.51 4.51 0 0 0-4.815 1.843A12 12 0 0 1 8 10c-1.573 0-3.022-.289-4.096-.777C2.875 8.755 2 8.007 2 7m6.257 3.998L8 11c-1.682 0-3.278-.307-4.51-.867-.486-.22-1.033-.54-1.49-.972V10c0 1.007.875 1.755 1.904 2.223C4.978 12.711 6.427 13 8 13h.027a4.55 4.55 0 0 1 .23-2.002m-.002 3L8 14c-1.682 0-3.278-.307-4.51-.867-.486-.22-1.033-.54-1.49-.972V13c0 1.007.875 1.755 1.904 2.223C4.978 15.711 6.427 16 8 16c.536 0 1.058-.034 1.555-.097a4.5 4.5 0 0 1-1.3-1.905\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M16 12.5a3.5 3.5 0 1 1-7 0 3.5 3.5 0 0 1 7 0m-3.5-2a.5.5 0 0 0-.5.5v1.5a.5.5 0 0 0 1 0V11a.5.5 0 0 0-.5-.5m0 4a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1\"},\"child\":[]}]})(props);\n};\nexport function BsDatabaseFillGear (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 1c-1.573 0-3.022.289-4.096.777C2.875 2.245 2 2.993 2 4s.875 1.755 1.904 2.223C4.978 6.711 6.427 7 8 7s3.022-.289 4.096-.777C13.125 5.755 14 5.007 14 4s-.875-1.755-1.904-2.223C11.022 1.289 9.573 1 8 1\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 7v-.839c.457.432 1.004.751 1.49.972C4.722 7.693 6.318 8 8 8s3.278-.307 4.51-.867c.486-.22 1.033-.54 1.49-.972V7c0 .424-.155.802-.411 1.133a4.51 4.51 0 0 0-4.815 1.843A12 12 0 0 1 8 10c-1.573 0-3.022-.289-4.096-.777C2.875 8.755 2 8.007 2 7m6.257 3.998L8 11c-1.682 0-3.278-.307-4.51-.867-.486-.22-1.033-.54-1.49-.972V10c0 1.007.875 1.755 1.904 2.223C4.978 12.711 6.427 13 8 13h.027a4.55 4.55 0 0 1 .23-2.002m-.002 3L8 14c-1.682 0-3.278-.307-4.51-.867-.486-.22-1.033-.54-1.49-.972V13c0 1.007.875 1.755 1.904 2.223C4.978 15.711 6.427 16 8 16c.536 0 1.058-.034 1.555-.097a4.5 4.5 0 0 1-1.3-1.905m3.631-4.538c.18-.613 1.048-.613 1.229 0l.043.148a.64.64 0 0 0 .921.382l.136-.074c.561-.306 1.175.308.87.869l-.075.136a.64.64 0 0 0 .382.92l.149.045c.612.18.612 1.048 0 1.229l-.15.043a.64.64 0 0 0-.38.921l.074.136c.305.561-.309 1.175-.87.87l-.136-.075a.64.64 0 0 0-.92.382l-.045.149c-.18.612-1.048.612-1.229 0l-.043-.15a.64.64 0 0 0-.921-.38l-.136.074c-.561.305-1.175-.309-.87-.87l.075-.136a.64.64 0 0 0-.382-.92l-.148-.045c-.613-.18-.613-1.048 0-1.229l.148-.043a.64.64 0 0 0 .382-.921l-.074-.136c-.306-.561.308-1.175.869-.87l.136.075a.64.64 0 0 0 .92-.382zM14 12.5a1.5 1.5 0 1 0-3 0 1.5 1.5 0 0 0 3 0\"},\"child\":[]}]})(props);\n};\nexport function BsDatabaseFillLock (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 1c-1.573 0-3.022.289-4.096.777C2.875 2.245 2 2.993 2 4s.875 1.755 1.904 2.223C4.978 6.711 6.427 7 8 7s3.022-.289 4.096-.777C13.125 5.755 14 5.007 14 4s-.875-1.755-1.904-2.223C11.022 1.289 9.573 1 8 1\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3.904 9.223C2.875 8.755 2 8.007 2 7v-.839c.457.432 1.004.751 1.49.972C4.722 7.693 6.318 8 8 8s3.278-.307 4.51-.867c.486-.22 1.033-.54 1.49-.972V7c0 .424-.155.802-.411 1.133a4.5 4.5 0 0 0-1.364-.125 3 3 0 0 0-2.197.731 4.5 4.5 0 0 0-1.254 1.237A12 12 0 0 1 8 10c-1.573 0-3.022-.289-4.096-.777M8 14c-1.682 0-3.278-.307-4.51-.867-.486-.22-1.033-.54-1.49-.972V13c0 1.007.875 1.755 1.904 2.223C4.978 15.711 6.427 16 8 16q.134 0 .266-.003A2 2 0 0 1 8 15zm0-1.5q0 .15.01.3A2 2 0 0 0 8 13c-1.573 0-3.022-.289-4.096-.777C2.875 11.755 2 11.007 2 10v-.839c.457.432 1.004.751 1.49.972C4.722 10.693 6.318 11 8 11q.13 0 .257-.002A4.5 4.5 0 0 0 8 12.5\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M9 13a1 1 0 0 1 1-1v-1a2 2 0 1 1 4 0v1a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1h-4a1 1 0 0 1-1-1zm3-3a1 1 0 0 0-1 1v1h2v-1a1 1 0 0 0-1-1\"},\"child\":[]}]})(props);\n};\nexport function BsDatabaseFillSlash (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M13.879 10.414a2.501 2.501 0 0 0-3.465 3.465zm.707.707-3.465 3.465a2.501 2.501 0 0 0 3.465-3.465m-4.56-1.096a3.5 3.5 0 1 1 4.949 4.95 3.5 3.5 0 0 1-4.95-4.95ZM8 1c-1.573 0-3.022.289-4.096.777C2.875 2.245 2 2.993 2 4s.875 1.755 1.904 2.223C4.978 6.711 6.427 7 8 7s3.022-.289 4.096-.777C13.125 5.755 14 5.007 14 4s-.875-1.755-1.904-2.223C11.022 1.289 9.573 1 8 1\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 7v-.839c.457.432 1.004.751 1.49.972C4.722 7.693 6.318 8 8 8s3.278-.307 4.51-.867c.486-.22 1.033-.54 1.49-.972V7c0 .424-.155.802-.411 1.133a4.51 4.51 0 0 0-4.815 1.843A12 12 0 0 1 8 10c-1.573 0-3.022-.289-4.096-.777C2.875 8.755 2 8.007 2 7m6.257 3.998L8 11c-1.682 0-3.278-.307-4.51-.867-.486-.22-1.033-.54-1.49-.972V10c0 1.007.875 1.755 1.904 2.223C4.978 12.711 6.427 13 8 13h.027a4.55 4.55 0 0 1 .23-2.002m-.002 3L8 14c-1.682 0-3.278-.307-4.51-.867-.486-.22-1.033-.54-1.49-.972V13c0 1.007.875 1.755 1.904 2.223C4.978 15.711 6.427 16 8 16c.536 0 1.058-.034 1.555-.097a4.5 4.5 0 0 1-1.3-1.905\"},\"child\":[]}]})(props);\n};\nexport function BsDatabaseFillUp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12.5 16a3.5 3.5 0 1 0 0-7 3.5 3.5 0 0 0 0 7m.354-5.854 1.5 1.5a.5.5 0 0 1-.708.708L13 11.707V14.5a.5.5 0 0 1-1 0v-2.793l-.646.647a.5.5 0 0 1-.708-.708l1.5-1.5a.5.5 0 0 1 .708 0M8 1c-1.573 0-3.022.289-4.096.777C2.875 2.245 2 2.993 2 4s.875 1.755 1.904 2.223C4.978 6.711 6.427 7 8 7s3.022-.289 4.096-.777C13.125 5.755 14 5.007 14 4s-.875-1.755-1.904-2.223C11.022 1.289 9.573 1 8 1\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 7v-.839c.457.432 1.004.751 1.49.972C4.722 7.693 6.318 8 8 8s3.278-.307 4.51-.867c.486-.22 1.033-.54 1.49-.972V7c0 .424-.155.802-.411 1.133a4.51 4.51 0 0 0-4.815 1.843A12 12 0 0 1 8 10c-1.573 0-3.022-.289-4.096-.777C2.875 8.755 2 8.007 2 7m6.257 3.998L8 11c-1.682 0-3.278-.307-4.51-.867-.486-.22-1.033-.54-1.49-.972V10c0 1.007.875 1.755 1.904 2.223C4.978 12.711 6.427 13 8 13h.027a4.55 4.55 0 0 1 .23-2.002m-.002 3L8 14c-1.682 0-3.278-.307-4.51-.867-.486-.22-1.033-.54-1.49-.972V13c0 1.007.875 1.755 1.904 2.223C4.978 15.711 6.427 16 8 16c.536 0 1.058-.034 1.555-.097a4.5 4.5 0 0 1-1.3-1.905\"},\"child\":[]}]})(props);\n};\nexport function BsDatabaseFillX (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 1c-1.573 0-3.022.289-4.096.777C2.875 2.245 2 2.993 2 4s.875 1.755 1.904 2.223C4.978 6.711 6.427 7 8 7s3.022-.289 4.096-.777C13.125 5.755 14 5.007 14 4s-.875-1.755-1.904-2.223C11.022 1.289 9.573 1 8 1\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 7v-.839c.457.432 1.004.751 1.49.972C4.722 7.693 6.318 8 8 8s3.278-.307 4.51-.867c.486-.22 1.033-.54 1.49-.972V7c0 .424-.155.802-.411 1.133a4.51 4.51 0 0 0-4.815 1.843A12 12 0 0 1 8 10c-1.573 0-3.022-.289-4.096-.777C2.875 8.755 2 8.007 2 7m6.257 3.998L8 11c-1.682 0-3.278-.307-4.51-.867-.486-.22-1.033-.54-1.49-.972V10c0 1.007.875 1.755 1.904 2.223C4.978 12.711 6.427 13 8 13h.027a4.55 4.55 0 0 1 .23-2.002m-.002 3L8 14c-1.682 0-3.278-.307-4.51-.867-.486-.22-1.033-.54-1.49-.972V13c0 1.007.875 1.755 1.904 2.223C4.978 15.711 6.427 16 8 16c.536 0 1.058-.034 1.555-.097a4.5 4.5 0 0 1-1.3-1.905\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M12.5 16a3.5 3.5 0 1 0 0-7 3.5 3.5 0 0 0 0 7m-.646-4.854.646.647.646-.647a.5.5 0 0 1 .708.708l-.647.646.647.646a.5.5 0 0 1-.708.708l-.646-.647-.646.647a.5.5 0 0 1-.708-.708l.647-.646-.647-.646a.5.5 0 0 1 .708-.708\"},\"child\":[]}]})(props);\n};\nexport function BsDatabaseFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3.904 1.777C4.978 1.289 6.427 1 8 1s3.022.289 4.096.777C13.125 2.245 14 2.993 14 4s-.875 1.755-1.904 2.223C11.022 6.711 9.573 7 8 7s-3.022-.289-4.096-.777C2.875 5.755 2 5.007 2 4s.875-1.755 1.904-2.223\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 6.161V7c0 1.007.875 1.755 1.904 2.223C4.978 9.71 6.427 10 8 10s3.022-.289 4.096-.777C13.125 8.755 14 8.007 14 7v-.839c-.457.432-1.004.751-1.49.972C11.278 7.693 9.682 8 8 8s-3.278-.307-4.51-.867c-.486-.22-1.033-.54-1.49-.972\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 9.161V10c0 1.007.875 1.755 1.904 2.223C4.978 12.711 6.427 13 8 13s3.022-.289 4.096-.777C13.125 11.755 14 11.007 14 10v-.839c-.457.432-1.004.751-1.49.972-1.232.56-2.828.867-4.51.867s-3.278-.307-4.51-.867c-.486-.22-1.033-.54-1.49-.972\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 12.161V13c0 1.007.875 1.755 1.904 2.223C4.978 15.711 6.427 16 8 16s3.022-.289 4.096-.777C13.125 14.755 14 14.007 14 13v-.839c-.457.432-1.004.751-1.49.972-1.232.56-2.828.867-4.51.867s-3.278-.307-4.51-.867c-.486-.22-1.033-.54-1.49-.972\"},\"child\":[]}]})(props);\n};\nexport function BsDatabaseGear (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12.096 6.223A5 5 0 0 0 13 5.698V7c0 .289-.213.654-.753 1.007a4.5 4.5 0 0 1 1.753.25V4c0-1.007-.875-1.755-1.904-2.223C11.022 1.289 9.573 1 8 1s-3.022.289-4.096.777C2.875 2.245 2 2.993 2 4v9c0 1.007.875 1.755 1.904 2.223C4.978 15.71 6.427 16 8 16c.536 0 1.058-.034 1.555-.097a4.5 4.5 0 0 1-.813-.927Q8.378 15 8 15c-1.464 0-2.766-.27-3.682-.687C3.356 13.875 3 13.373 3 13v-1.302c.271.202.58.378.904.525C4.978 12.71 6.427 13 8 13h.027a4.6 4.6 0 0 1 0-1H8c-1.464 0-2.766-.27-3.682-.687C3.356 10.875 3 10.373 3 10V8.698c.271.202.58.378.904.525C4.978 9.71 6.427 10 8 10q.393 0 .774-.024a4.5 4.5 0 0 1 1.102-1.132C9.298 8.944 8.666 9 8 9c-1.464 0-2.766-.27-3.682-.687C3.356 7.875 3 7.373 3 7V5.698c.271.202.58.378.904.525C4.978 6.711 6.427 7 8 7s3.022-.289 4.096-.777M3 4c0-.374.356-.875 1.318-1.313C5.234 2.271 6.536 2 8 2s2.766.27 3.682.687C12.644 3.125 13 3.627 13 4c0 .374-.356.875-1.318 1.313C10.766 5.729 9.464 6 8 6s-2.766-.27-3.682-.687C3.356 4.875 3 4.373 3 4\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M11.886 9.46c.18-.613 1.048-.613 1.229 0l.043.148a.64.64 0 0 0 .921.382l.136-.074c.561-.306 1.175.308.87.869l-.075.136a.64.64 0 0 0 .382.92l.149.045c.612.18.612 1.048 0 1.229l-.15.043a.64.64 0 0 0-.38.921l.074.136c.305.561-.309 1.175-.87.87l-.136-.075a.64.64 0 0 0-.92.382l-.045.149c-.18.612-1.048.612-1.229 0l-.043-.15a.64.64 0 0 0-.921-.38l-.136.074c-.561.305-1.175-.309-.87-.87l.075-.136a.64.64 0 0 0-.382-.92l-.148-.045c-.613-.18-.613-1.048 0-1.229l.148-.043a.64.64 0 0 0 .382-.921l-.074-.136c-.306-.561.308-1.175.869-.87l.136.075a.64.64 0 0 0 .92-.382zM14 12.5a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0\"},\"child\":[]}]})(props);\n};\nexport function BsDatabaseLock (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M13 5.698a5 5 0 0 1-.904.525C11.022 6.711 9.573 7 8 7s-3.022-.289-4.096-.777A5 5 0 0 1 3 5.698V7c0 .374.356.875 1.318 1.313C5.234 8.729 6.536 9 8 9c.666 0 1.298-.056 1.876-.156-.43.31-.804.693-1.102 1.132A12 12 0 0 1 8 10c-1.573 0-3.022-.289-4.096-.777A5 5 0 0 1 3 8.698V10c0 .374.356.875 1.318 1.313C5.234 11.729 6.536 12 8 12h.027a4.6 4.6 0 0 0-.017.8A2 2 0 0 0 8 13c-1.573 0-3.022-.289-4.096-.777A5 5 0 0 1 3 11.698V13c0 .374.356.875 1.318 1.313C5.234 14.729 6.536 15 8 15c0 .363.097.704.266.997Q8.134 16.001 8 16c-1.573 0-3.022-.289-4.096-.777C2.875 14.755 2 14.007 2 13V4c0-1.007.875-1.755 1.904-2.223C4.978 1.289 6.427 1 8 1s3.022.289 4.096.777C13.125 2.245 14 2.993 14 4v4.256a4.5 4.5 0 0 0-1.753-.249C12.787 7.654 13 7.289 13 7zm-8.682-3.01C3.356 3.124 3 3.625 3 4c0 .374.356.875 1.318 1.313C5.234 5.729 6.536 6 8 6s2.766-.27 3.682-.687C12.644 4.875 13 4.373 13 4c0-.374-.356-.875-1.318-1.313C10.766 2.271 9.464 2 8 2s-2.766.27-3.682.687Z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M9 13a1 1 0 0 1 1-1v-1a2 2 0 1 1 4 0v1a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1h-4a1 1 0 0 1-1-1zm3-3a1 1 0 0 0-1 1v1h2v-1a1 1 0 0 0-1-1\"},\"child\":[]}]})(props);\n};\nexport function BsDatabaseSlash (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M13.879 10.414a2.501 2.501 0 0 0-3.465 3.465zm.707.707-3.465 3.465a2.501 2.501 0 0 0 3.465-3.465m-4.56-1.096a3.5 3.5 0 1 1 4.949 4.95 3.5 3.5 0 0 1-4.95-4.95Z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M12.096 6.223A5 5 0 0 0 13 5.698V7c0 .289-.213.654-.753 1.007a4.5 4.5 0 0 1 1.753.25V4c0-1.007-.875-1.755-1.904-2.223C11.022 1.289 9.573 1 8 1s-3.022.289-4.096.777C2.875 2.245 2 2.993 2 4v9c0 1.007.875 1.755 1.904 2.223C4.978 15.71 6.427 16 8 16c.536 0 1.058-.034 1.555-.097a4.5 4.5 0 0 1-.813-.927Q8.378 15 8 15c-1.464 0-2.766-.27-3.682-.687C3.356 13.875 3 13.373 3 13v-1.302c.271.202.58.378.904.525C4.978 12.71 6.427 13 8 13h.027a4.6 4.6 0 0 1 0-1H8c-1.464 0-2.766-.27-3.682-.687C3.356 10.875 3 10.373 3 10V8.698c.271.202.58.378.904.525C4.978 9.71 6.427 10 8 10q.393 0 .774-.024a4.5 4.5 0 0 1 1.102-1.132C9.298 8.944 8.666 9 8 9c-1.464 0-2.766-.27-3.682-.687C3.356 7.875 3 7.373 3 7V5.698c.271.202.58.378.904.525C4.978 6.711 6.427 7 8 7s3.022-.289 4.096-.777M3 4c0-.374.356-.875 1.318-1.313C5.234 2.271 6.536 2 8 2s2.766.27 3.682.687C12.644 3.125 13 3.627 13 4c0 .374-.356.875-1.318 1.313C10.766 5.729 9.464 6 8 6s-2.766-.27-3.682-.687C3.356 4.875 3 4.373 3 4\"},\"child\":[]}]})(props);\n};\nexport function BsDatabaseUp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12.5 16a3.5 3.5 0 1 0 0-7 3.5 3.5 0 0 0 0 7m.354-5.854 1.5 1.5a.5.5 0 0 1-.708.708L13 11.707V14.5a.5.5 0 0 1-1 0v-2.793l-.646.647a.5.5 0 0 1-.708-.708l1.5-1.5a.5.5 0 0 1 .708 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M12.096 6.223A5 5 0 0 0 13 5.698V7c0 .289-.213.654-.753 1.007a4.5 4.5 0 0 1 1.753.25V4c0-1.007-.875-1.755-1.904-2.223C11.022 1.289 9.573 1 8 1s-3.022.289-4.096.777C2.875 2.245 2 2.993 2 4v9c0 1.007.875 1.755 1.904 2.223C4.978 15.71 6.427 16 8 16c.536 0 1.058-.034 1.555-.097a4.5 4.5 0 0 1-.813-.927Q8.378 15 8 15c-1.464 0-2.766-.27-3.682-.687C3.356 13.875 3 13.373 3 13v-1.302c.271.202.58.378.904.525C4.978 12.71 6.427 13 8 13h.027a4.6 4.6 0 0 1 0-1H8c-1.464 0-2.766-.27-3.682-.687C3.356 10.875 3 10.373 3 10V8.698c.271.202.58.378.904.525C4.978 9.71 6.427 10 8 10q.393 0 .774-.024a4.5 4.5 0 0 1 1.102-1.132C9.298 8.944 8.666 9 8 9c-1.464 0-2.766-.27-3.682-.687C3.356 7.875 3 7.373 3 7V5.698c.271.202.58.378.904.525C4.978 6.711 6.427 7 8 7s3.022-.289 4.096-.777M3 4c0-.374.356-.875 1.318-1.313C5.234 2.271 6.536 2 8 2s2.766.27 3.682.687C12.644 3.125 13 3.627 13 4c0 .374-.356.875-1.318 1.313C10.766 5.729 9.464 6 8 6s-2.766-.27-3.682-.687C3.356 4.875 3 4.373 3 4\"},\"child\":[]}]})(props);\n};\nexport function BsDatabaseX (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12.096 6.223A5 5 0 0 0 13 5.698V7c0 .289-.213.654-.753 1.007a4.5 4.5 0 0 1 1.753.25V4c0-1.007-.875-1.755-1.904-2.223C11.022 1.289 9.573 1 8 1s-3.022.289-4.096.777C2.875 2.245 2 2.993 2 4v9c0 1.007.875 1.755 1.904 2.223C4.978 15.71 6.427 16 8 16c.536 0 1.058-.034 1.555-.097a4.5 4.5 0 0 1-.813-.927Q8.378 15 8 15c-1.464 0-2.766-.27-3.682-.687C3.356 13.875 3 13.373 3 13v-1.302c.271.202.58.378.904.525C4.978 12.71 6.427 13 8 13h.027a4.6 4.6 0 0 1 0-1H8c-1.464 0-2.766-.27-3.682-.687C3.356 10.875 3 10.373 3 10V8.698c.271.202.58.378.904.525C4.978 9.71 6.427 10 8 10q.393 0 .774-.024a4.5 4.5 0 0 1 1.102-1.132C9.298 8.944 8.666 9 8 9c-1.464 0-2.766-.27-3.682-.687C3.356 7.875 3 7.373 3 7V5.698c.271.202.58.378.904.525C4.978 6.711 6.427 7 8 7s3.022-.289 4.096-.777M3 4c0-.374.356-.875 1.318-1.313C5.234 2.271 6.536 2 8 2s2.766.27 3.682.687C12.644 3.125 13 3.627 13 4c0 .374-.356.875-1.318 1.313C10.766 5.729 9.464 6 8 6s-2.766-.27-3.682-.687C3.356 4.875 3 4.373 3 4\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M12.5 16a3.5 3.5 0 1 0 0-7 3.5 3.5 0 0 0 0 7m-.646-4.854.646.647.646-.647a.5.5 0 0 1 .708.708l-.647.646.647.646a.5.5 0 0 1-.708.708l-.646-.647-.646.647a.5.5 0 0 1-.708-.708l.647-.646-.647-.646a.5.5 0 0 1 .708-.708\"},\"child\":[]}]})(props);\n};\nexport function BsDatabase (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4.318 2.687C5.234 2.271 6.536 2 8 2s2.766.27 3.682.687C12.644 3.125 13 3.627 13 4c0 .374-.356.875-1.318 1.313C10.766 5.729 9.464 6 8 6s-2.766-.27-3.682-.687C3.356 4.875 3 4.373 3 4c0-.374.356-.875 1.318-1.313M13 5.698V7c0 .374-.356.875-1.318 1.313C10.766 8.729 9.464 9 8 9s-2.766-.27-3.682-.687C3.356 7.875 3 7.373 3 7V5.698c.271.202.58.378.904.525C4.978 6.711 6.427 7 8 7s3.022-.289 4.096-.777A5 5 0 0 0 13 5.698M14 4c0-1.007-.875-1.755-1.904-2.223C11.022 1.289 9.573 1 8 1s-3.022.289-4.096.777C2.875 2.245 2 2.993 2 4v9c0 1.007.875 1.755 1.904 2.223C4.978 15.71 6.427 16 8 16s3.022-.289 4.096-.777C13.125 14.755 14 14.007 14 13zm-1 4.698V10c0 .374-.356.875-1.318 1.313C10.766 11.729 9.464 12 8 12s-2.766-.27-3.682-.687C3.356 10.875 3 10.373 3 10V8.698c.271.202.58.378.904.525C4.978 9.71 6.427 10 8 10s3.022-.289 4.096-.777A5 5 0 0 0 13 8.698m0 3V13c0 .374-.356.875-1.318 1.313C10.766 14.729 9.464 15 8 15s-2.766-.27-3.682-.687C3.356 13.875 3 13.373 3 13v-1.302c.271.202.58.378.904.525C4.978 12.71 6.427 13 8 13s3.022-.289 4.096-.777c.324-.147.633-.323.904-.525\"},\"child\":[]}]})(props);\n};\nexport function BsDeviceHddFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.785 9.896A3.001 3.001 0 0 0 8 4a3 3 0 0 0-.891 5.865c.667-.44 1.396-.91 1.955-1.268.224-.144.483.115.34.34zM9 7a1 1 0 1 1-2 0 1 1 0 0 1 2 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm9 1.5a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0m0 13a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0m-9.5.5a.5.5 0 1 1 0-1 .5.5 0 0 1 0 1M4 1.5a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0m2.882 11.177a1.102 1.102 0 0 1-1.56-1.559c.1-.098.396-.314.795-.588a4 4 0 1 1 1.946.47c-.537.813-1.02 1.515-1.181 1.677\"},\"child\":[]}]})(props);\n};\nexport function BsDeviceHdd (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12 2.5a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0m0 11a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0m-7.5.5a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1M5 2.5a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0M8 8a1 1 0 1 0 0-2 1 1 0 0 0 0 2\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M12 7a4 4 0 0 1-3.937 4c-.537.813-1.02 1.515-1.181 1.677a1.102 1.102 0 0 1-1.56-1.559c.1-.098.396-.314.795-.588A4 4 0 0 1 8 3a4 4 0 0 1 4 4m-1 0a3 3 0 1 0-3.891 2.865c.667-.44 1.396-.91 1.955-1.268.224-.144.483.115.34.34l-.62.96A3 3 0 0 0 11 7\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 2a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2zm2-1a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsDeviceSsdFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5 8V4h6v4z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm0 1.5a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0m9 0a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0M3.5 11a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1m9.5-.5a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0M4.75 3h6.5a.75.75 0 0 1 .75.75v4.5a.75.75 0 0 1-.75.75h-6.5A.75.75 0 0 1 4 8.25v-4.5A.75.75 0 0 1 4.75 3M5 12h6a1 1 0 0 1 1 1v2h-1v-2h-.75v2h-1v-2H8.5v2h-1v-2h-.75v2h-1v-2H5v2H4v-2a1 1 0 0 1 1-1\"},\"child\":[]}]})(props);\n};\nexport function BsDeviceSsd (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4.75 4a.75.75 0 0 0-.75.75v3.5c0 .414.336.75.75.75h6.5a.75.75 0 0 0 .75-.75v-3.5a.75.75 0 0 0-.75-.75zM5 8V5h6v3zm0-5.5a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0m7 0a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0M4.5 11a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1m7 0a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 2a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2zm11 12V2a1 1 0 0 0-1-1H4a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1v-2a1 1 0 0 1 1-1h6a1 1 0 0 1 1 1v2a1 1 0 0 0 1-1m-7.25 1v-2H5v2zm1.75 0v-2h-.75v2zm1.75 0v-2H8.5v2zM11 13h-.75v2H11z\"},\"child\":[]}]})(props);\n};\nexport function BsDiagram2Fill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M6 3.5A1.5 1.5 0 0 1 7.5 2h1A1.5 1.5 0 0 1 10 3.5v1A1.5 1.5 0 0 1 8.5 6v1H11a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-1 0V8h-5v.5a.5.5 0 0 1-1 0v-1A.5.5 0 0 1 5 7h2.5V6A1.5 1.5 0 0 1 6 4.5zm-3 8A1.5 1.5 0 0 1 4.5 10h1A1.5 1.5 0 0 1 7 11.5v1A1.5 1.5 0 0 1 5.5 14h-1A1.5 1.5 0 0 1 3 12.5zm6 0a1.5 1.5 0 0 1 1.5-1.5h1a1.5 1.5 0 0 1 1.5 1.5v1a1.5 1.5 0 0 1-1.5 1.5h-1A1.5 1.5 0 0 1 9 12.5z\"},\"child\":[]}]})(props);\n};\nexport function BsDiagram2 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M6 3.5A1.5 1.5 0 0 1 7.5 2h1A1.5 1.5 0 0 1 10 3.5v1A1.5 1.5 0 0 1 8.5 6v1H11a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-1 0V8h-5v.5a.5.5 0 0 1-1 0v-1A.5.5 0 0 1 5 7h2.5V6A1.5 1.5 0 0 1 6 4.5zM8.5 5a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5zM3 11.5A1.5 1.5 0 0 1 4.5 10h1A1.5 1.5 0 0 1 7 11.5v1A1.5 1.5 0 0 1 5.5 14h-1A1.5 1.5 0 0 1 3 12.5zm1.5-.5a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm4.5.5a1.5 1.5 0 0 1 1.5-1.5h1a1.5 1.5 0 0 1 1.5 1.5v1a1.5 1.5 0 0 1-1.5 1.5h-1A1.5 1.5 0 0 1 9 12.5zm1.5-.5a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5z\"},\"child\":[]}]})(props);\n};\nexport function BsDiagram3Fill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M6 3.5A1.5 1.5 0 0 1 7.5 2h1A1.5 1.5 0 0 1 10 3.5v1A1.5 1.5 0 0 1 8.5 6v1H14a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-1 0V8h-5v.5a.5.5 0 0 1-1 0V8h-5v.5a.5.5 0 0 1-1 0v-1A.5.5 0 0 1 2 7h5.5V6A1.5 1.5 0 0 1 6 4.5zm-6 8A1.5 1.5 0 0 1 1.5 10h1A1.5 1.5 0 0 1 4 11.5v1A1.5 1.5 0 0 1 2.5 14h-1A1.5 1.5 0 0 1 0 12.5zm6 0A1.5 1.5 0 0 1 7.5 10h1a1.5 1.5 0 0 1 1.5 1.5v1A1.5 1.5 0 0 1 8.5 14h-1A1.5 1.5 0 0 1 6 12.5zm6 0a1.5 1.5 0 0 1 1.5-1.5h1a1.5 1.5 0 0 1 1.5 1.5v1a1.5 1.5 0 0 1-1.5 1.5h-1a1.5 1.5 0 0 1-1.5-1.5z\"},\"child\":[]}]})(props);\n};\nexport function BsDiagram3 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M6 3.5A1.5 1.5 0 0 1 7.5 2h1A1.5 1.5 0 0 1 10 3.5v1A1.5 1.5 0 0 1 8.5 6v1H14a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-1 0V8h-5v.5a.5.5 0 0 1-1 0V8h-5v.5a.5.5 0 0 1-1 0v-1A.5.5 0 0 1 2 7h5.5V6A1.5 1.5 0 0 1 6 4.5zM8.5 5a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5zM0 11.5A1.5 1.5 0 0 1 1.5 10h1A1.5 1.5 0 0 1 4 11.5v1A1.5 1.5 0 0 1 2.5 14h-1A1.5 1.5 0 0 1 0 12.5zm1.5-.5a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm4.5.5A1.5 1.5 0 0 1 7.5 10h1a1.5 1.5 0 0 1 1.5 1.5v1A1.5 1.5 0 0 1 8.5 14h-1A1.5 1.5 0 0 1 6 12.5zm1.5-.5a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm4.5.5a1.5 1.5 0 0 1 1.5-1.5h1a1.5 1.5 0 0 1 1.5 1.5v1a1.5 1.5 0 0 1-1.5 1.5h-1a1.5 1.5 0 0 1-1.5-1.5zm1.5-.5a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5z\"},\"child\":[]}]})(props);\n};\nexport function BsDiamondFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M6.95.435c.58-.58 1.52-.58 2.1 0l6.515 6.516c.58.58.58 1.519 0 2.098L9.05 15.565c-.58.58-1.519.58-2.098 0L.435 9.05a1.48 1.48 0 0 1 0-2.098z\"},\"child\":[]}]})(props);\n};\nexport function BsDiamondHalf (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.05.435c-.58-.58-1.52-.58-2.1 0L.436 6.95c-.58.58-.58 1.519 0 2.098l6.516 6.516c.58.58 1.519.58 2.098 0l6.516-6.516c.58-.58.58-1.519 0-2.098zM8 .989c.127 0 .253.049.35.145l6.516 6.516a.495.495 0 0 1 0 .7L8.35 14.866a.5.5 0 0 1-.35.145z\"},\"child\":[]}]})(props);\n};\nexport function BsDiamond (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.95.435c.58-.58 1.52-.58 2.1 0l6.515 6.516c.58.58.58 1.519 0 2.098L9.05 15.565c-.58.58-1.519.58-2.098 0L.435 9.05a1.48 1.48 0 0 1 0-2.098zm1.4.7a.495.495 0 0 0-.7 0L1.134 7.65a.495.495 0 0 0 0 .7l6.516 6.516a.495.495 0 0 0 .7 0l6.516-6.516a.495.495 0 0 0 0-.7L8.35 1.134z\"},\"child\":[]}]})(props);\n};\nexport function BsDice1Fill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3 0a3 3 0 0 0-3 3v10a3 3 0 0 0 3 3h10a3 3 0 0 0 3-3V3a3 3 0 0 0-3-3zm5 9.5a1.5 1.5 0 1 1 0-3 1.5 1.5 0 0 1 0 3\"},\"child\":[]}]})(props);\n};\nexport function BsDice1 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"circle\",\"attr\":{\"cx\":\"8\",\"cy\":\"8\",\"r\":\"1.5\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M13 1a2 2 0 0 1 2 2v10a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2zM3 0a3 3 0 0 0-3 3v10a3 3 0 0 0 3 3h10a3 3 0 0 0 3-3V3a3 3 0 0 0-3-3z\"},\"child\":[]}]})(props);\n};\nexport function BsDice2Fill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 3a3 3 0 0 1 3-3h10a3 3 0 0 1 3 3v10a3 3 0 0 1-3 3H3a3 3 0 0 1-3-3zm5.5 1a1.5 1.5 0 1 0-3 0 1.5 1.5 0 0 0 3 0m6.5 9.5a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3\"},\"child\":[]}]})(props);\n};\nexport function BsDice2 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M13 1a2 2 0 0 1 2 2v10a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2zM3 0a3 3 0 0 0-3 3v10a3 3 0 0 0 3 3h10a3 3 0 0 0 3-3V3a3 3 0 0 0-3-3z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M5.5 4a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0m8 8a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0\"},\"child\":[]}]})(props);\n};\nexport function BsDice3Fill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3 0a3 3 0 0 0-3 3v10a3 3 0 0 0 3 3h10a3 3 0 0 0 3-3V3a3 3 0 0 0-3-3zm2.5 4a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0m8 8a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0M8 9.5a1.5 1.5 0 1 1 0-3 1.5 1.5 0 0 1 0 3\"},\"child\":[]}]})(props);\n};\nexport function BsDice3 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M13 1a2 2 0 0 1 2 2v10a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2zM3 0a3 3 0 0 0-3 3v10a3 3 0 0 0 3 3h10a3 3 0 0 0 3-3V3a3 3 0 0 0-3-3z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M5.5 4a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0m8 8a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0m-4-4a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0\"},\"child\":[]}]})(props);\n};\nexport function BsDice4Fill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3 0a3 3 0 0 0-3 3v10a3 3 0 0 0 3 3h10a3 3 0 0 0 3-3V3a3 3 0 0 0-3-3zm1 5.5a1.5 1.5 0 1 1 0-3 1.5 1.5 0 0 1 0 3m8 0a1.5 1.5 0 1 1 0-3 1.5 1.5 0 0 1 0 3m1.5 6.5a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0M4 13.5a1.5 1.5 0 1 1 0-3 1.5 1.5 0 0 1 0 3\"},\"child\":[]}]})(props);\n};\nexport function BsDice4 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M13 1a2 2 0 0 1 2 2v10a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2zM3 0a3 3 0 0 0-3 3v10a3 3 0 0 0 3 3h10a3 3 0 0 0 3-3V3a3 3 0 0 0-3-3z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M5.5 4a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0m8 0a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0m0 8a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0m-8 0a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0\"},\"child\":[]}]})(props);\n};\nexport function BsDice5Fill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3 0a3 3 0 0 0-3 3v10a3 3 0 0 0 3 3h10a3 3 0 0 0 3-3V3a3 3 0 0 0-3-3zm2.5 4a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0m8 0a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0M12 13.5a1.5 1.5 0 1 1 0-3 1.5 1.5 0 0 1 0 3M5.5 12a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0M8 9.5a1.5 1.5 0 1 1 0-3 1.5 1.5 0 0 1 0 3\"},\"child\":[]}]})(props);\n};\nexport function BsDice5 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M13 1a2 2 0 0 1 2 2v10a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2zM3 0a3 3 0 0 0-3 3v10a3 3 0 0 0 3 3h10a3 3 0 0 0 3-3V3a3 3 0 0 0-3-3z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M5.5 4a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0m8 0a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0m0 8a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0m-8 0a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0m4-4a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0\"},\"child\":[]}]})(props);\n};\nexport function BsDice6Fill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3 0a3 3 0 0 0-3 3v10a3 3 0 0 0 3 3h10a3 3 0 0 0 3-3V3a3 3 0 0 0-3-3zm1 5.5a1.5 1.5 0 1 1 0-3 1.5 1.5 0 0 1 0 3m8 0a1.5 1.5 0 1 1 0-3 1.5 1.5 0 0 1 0 3m1.5 6.5a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0M12 9.5a1.5 1.5 0 1 1 0-3 1.5 1.5 0 0 1 0 3M5.5 12a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0M4 9.5a1.5 1.5 0 1 1 0-3 1.5 1.5 0 0 1 0 3\"},\"child\":[]}]})(props);\n};\nexport function BsDice6 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M13 1a2 2 0 0 1 2 2v10a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2zM3 0a3 3 0 0 0-3 3v10a3 3 0 0 0 3 3h10a3 3 0 0 0 3-3V3a3 3 0 0 0-3-3z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M5.5 4a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0m8 0a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0m0 8a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0m0-4a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0m-8 4a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0m0-4a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0\"},\"child\":[]}]})(props);\n};\nexport function BsDiscFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0m-6 0a2 2 0 1 0-4 0 2 2 0 0 0 4 0M4 8a4 4 0 0 1 4-4 .5.5 0 0 0 0-1 5 5 0 0 0-5 5 .5.5 0 0 0 1 0m9 0a.5.5 0 1 0-1 0 4 4 0 0 1-4 4 .5.5 0 0 0 0 1 5 5 0 0 0 5-5\"},\"child\":[]}]})(props);\n};\nexport function BsDisc (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14m0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M10 8a2 2 0 1 1-4 0 2 2 0 0 1 4 0M8 4a4 4 0 0 0-4 4 .5.5 0 0 1-1 0 5 5 0 0 1 5-5 .5.5 0 0 1 0 1m4.5 3.5a.5.5 0 0 1 .5.5 5 5 0 0 1-5 5 .5.5 0 0 1 0-1 4 4 0 0 0 4-4 .5.5 0 0 1 .5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsDiscord (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M13.545 2.907a13.2 13.2 0 0 0-3.257-1.011.05.05 0 0 0-.052.025c-.141.25-.297.577-.406.833a12.2 12.2 0 0 0-3.658 0 8 8 0 0 0-.412-.833.05.05 0 0 0-.052-.025c-1.125.194-2.22.534-3.257 1.011a.04.04 0 0 0-.021.018C.356 6.024-.213 9.047.066 12.032q.003.022.021.037a13.3 13.3 0 0 0 3.995 2.02.05.05 0 0 0 .056-.019q.463-.63.818-1.329a.05.05 0 0 0-.01-.059l-.018-.011a9 9 0 0 1-1.248-.595.05.05 0 0 1-.02-.066l.015-.019q.127-.095.248-.195a.05.05 0 0 1 .051-.007c2.619 1.196 5.454 1.196 8.041 0a.05.05 0 0 1 .053.007q.121.1.248.195a.05.05 0 0 1-.004.085 8 8 0 0 1-1.249.594.05.05 0 0 0-.03.03.05.05 0 0 0 .003.041c.24.465.515.909.817 1.329a.05.05 0 0 0 .056.019 13.2 13.2 0 0 0 4.001-2.02.05.05 0 0 0 .021-.037c.334-3.451-.559-6.449-2.366-9.106a.03.03 0 0 0-.02-.019m-8.198 7.307c-.789 0-1.438-.724-1.438-1.612s.637-1.613 1.438-1.613c.807 0 1.45.73 1.438 1.613 0 .888-.637 1.612-1.438 1.612m5.316 0c-.788 0-1.438-.724-1.438-1.612s.637-1.613 1.438-1.613c.807 0 1.451.73 1.438 1.613 0 .888-.631 1.612-1.438 1.612\"},\"child\":[]}]})(props);\n};\nexport function BsDisplayFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6 12q0 1-.25 1.5H5a.5.5 0 0 0 0 1h6a.5.5 0 0 0 0-1h-.75Q10 13 10 12h4c2 0 2-2 2-2V4c0-2-2-2-2-2H2C0 2 0 4 0 4v6c0 2 2 2 2 2z\"},\"child\":[]}]})(props);\n};\nexport function BsDisplay (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 4s0-2 2-2h12s2 0 2 2v6s0 2-2 2h-4q0 1 .25 1.5H11a.5.5 0 0 1 0 1H5a.5.5 0 0 1 0-1h.75Q6 13 6 12H2s-2 0-2-2zm1.398-.855a.76.76 0 0 0-.254.302A1.5 1.5 0 0 0 1 4.01V10c0 .325.078.502.145.602q.105.156.302.254a1.5 1.5 0 0 0 .538.143L2.01 11H14c.325 0 .502-.078.602-.145a.76.76 0 0 0 .254-.302 1.5 1.5 0 0 0 .143-.538L15 9.99V4c0-.325-.078-.502-.145-.602a.76.76 0 0 0-.302-.254A1.5 1.5 0 0 0 13.99 3H2c-.325 0-.502.078-.602.145\"},\"child\":[]}]})(props);\n};\nexport function BsDisplayportFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M1 5a1 1 0 0 0-1 1v3.191a1 1 0 0 0 .553.894l1.618.81a1 1 0 0 0 .447.105H15a1 1 0 0 0 1-1V6a1 1 0 0 0-1-1zm1.5 2h11a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-1 0V8H3v.5a.5.5 0 0 1-1 0v-1a.5.5 0 0 1 .5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsDisplayport (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2.5 7a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 1 0V8h10v.5a.5.5 0 0 0 1 0v-1a.5.5 0 0 0-.5-.5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M1 5a1 1 0 0 0-1 1v3.191a1 1 0 0 0 .553.894l1.618.81a1 1 0 0 0 .447.105H15a1 1 0 0 0 1-1V6a1 1 0 0 0-1-1zm0 1h14v4H2.618L1 9.191z\"},\"child\":[]}]})(props);\n};\nexport function BsDistributeHorizontal (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M14.5 1a.5.5 0 0 0-.5.5v13a.5.5 0 0 0 1 0v-13a.5.5 0 0 0-.5-.5m-13 0a.5.5 0 0 0-.5.5v13a.5.5 0 0 0 1 0v-13a.5.5 0 0 0-.5-.5\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M6 13a1 1 0 0 0 1 1h2a1 1 0 0 0 1-1V3a1 1 0 0 0-1-1H7a1 1 0 0 0-1 1z\"},\"child\":[]}]})(props);\n};\nexport function BsDistributeVertical (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M1 1.5a.5.5 0 0 0 .5.5h13a.5.5 0 0 0 0-1h-13a.5.5 0 0 0-.5.5m0 13a.5.5 0 0 0 .5.5h13a.5.5 0 0 0 0-1h-13a.5.5 0 0 0-.5.5\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 7a1 1 0 0 1 1-1h10a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsDoorClosedFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12 1a1 1 0 0 1 1 1v13h1.5a.5.5 0 0 1 0 1h-13a.5.5 0 0 1 0-1H3V2a1 1 0 0 1 1-1zm-2 9a1 1 0 1 0 0-2 1 1 0 0 0 0 2\"},\"child\":[]}]})(props);\n};\nexport function BsDoorClosed (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3 2a1 1 0 0 1 1-1h8a1 1 0 0 1 1 1v13h1.5a.5.5 0 0 1 0 1h-13a.5.5 0 0 1 0-1H3zm1 13h8V2H4z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M9 9a1 1 0 1 0 2 0 1 1 0 0 0-2 0\"},\"child\":[]}]})(props);\n};\nexport function BsDoorOpenFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M1.5 15a.5.5 0 0 0 0 1h13a.5.5 0 0 0 0-1H13V2.5A1.5 1.5 0 0 0 11.5 1H11V.5a.5.5 0 0 0-.57-.495l-7 1A.5.5 0 0 0 3 1.5V15zM11 2h.5a.5.5 0 0 1 .5.5V15h-1zm-2.5 8c-.276 0-.5-.448-.5-1s.224-1 .5-1 .5.448.5 1-.224 1-.5 1\"},\"child\":[]}]})(props);\n};\nexport function BsDoorOpen (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.5 10c-.276 0-.5-.448-.5-1s.224-1 .5-1 .5.448.5 1-.224 1-.5 1\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M10.828.122A.5.5 0 0 1 11 .5V1h.5A1.5 1.5 0 0 1 13 2.5V15h1.5a.5.5 0 0 1 0 1h-13a.5.5 0 0 1 0-1H3V1.5a.5.5 0 0 1 .43-.495l7-1a.5.5 0 0 1 .398.117M11.5 2H11v13h1V2.5a.5.5 0 0 0-.5-.5M4 1.934V15h6V1.077z\"},\"child\":[]}]})(props);\n};\nexport function BsDot (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 9.5a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3\"},\"child\":[]}]})(props);\n};\nexport function BsDownload (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M.5 9.9a.5.5 0 0 1 .5.5v2.5a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1v-2.5a.5.5 0 0 1 1 0v2.5a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2v-2.5a.5.5 0 0 1 .5-.5\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M7.646 11.854a.5.5 0 0 0 .708 0l3-3a.5.5 0 0 0-.708-.708L8.5 10.293V1.5a.5.5 0 0 0-1 0v8.793L5.354 8.146a.5.5 0 1 0-.708.708z\"},\"child\":[]}]})(props);\n};\nexport function BsDpadFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.5 0A1.5 1.5 0 0 0 5 1.5v3a.5.5 0 0 1-.5.5h-3A1.5 1.5 0 0 0 0 6.5v3A1.5 1.5 0 0 0 1.5 11h3a.5.5 0 0 1 .5.5v3A1.5 1.5 0 0 0 6.5 16h3a1.5 1.5 0 0 0 1.5-1.5v-3a.5.5 0 0 1 .5-.5h3A1.5 1.5 0 0 0 16 9.5v-3A1.5 1.5 0 0 0 14.5 5h-3a.5.5 0 0 1-.5-.5v-3A1.5 1.5 0 0 0 9.5 0zm1.288 2.34a.25.25 0 0 1 .424 0l.799 1.278A.25.25 0 0 1 8.799 4H7.201a.25.25 0 0 1-.212-.382zm0 11.32-.799-1.277A.25.25 0 0 1 7.201 12H8.8a.25.25 0 0 1 .212.383l-.799 1.278a.25.25 0 0 1-.424 0Zm-4.17-4.65-1.279-.798a.25.25 0 0 1 0-.424l1.279-.799A.25.25 0 0 1 4 7.201V8.8a.25.25 0 0 1-.382.212Zm10.043-.798-1.278.799A.25.25 0 0 1 12 8.799V7.2a.25.25 0 0 1 .383-.212l1.278.799a.25.25 0 0 1 0 .424Z\"},\"child\":[]}]})(props);\n};\nexport function BsDpad (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m7.788 2.34-.799 1.278A.25.25 0 0 0 7.201 4h1.598a.25.25 0 0 0 .212-.382l-.799-1.279a.25.25 0 0 0-.424 0Zm0 11.32-.799-1.277A.25.25 0 0 1 7.201 12h1.598a.25.25 0 0 1 .212.383l-.799 1.278a.25.25 0 0 1-.424 0ZM3.617 9.01 2.34 8.213a.25.25 0 0 1 0-.424l1.278-.799A.25.25 0 0 1 4 7.201V8.8a.25.25 0 0 1-.383.212Zm10.043-.798-1.277.799A.25.25 0 0 1 12 8.799V7.2a.25.25 0 0 1 .383-.212l1.278.799a.25.25 0 0 1 0 .424Z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M6.5 0A1.5 1.5 0 0 0 5 1.5v3a.5.5 0 0 1-.5.5h-3A1.5 1.5 0 0 0 0 6.5v3A1.5 1.5 0 0 0 1.5 11h3a.5.5 0 0 1 .5.5v3A1.5 1.5 0 0 0 6.5 16h3a1.5 1.5 0 0 0 1.5-1.5v-3a.5.5 0 0 1 .5-.5h3A1.5 1.5 0 0 0 16 9.5v-3A1.5 1.5 0 0 0 14.5 5h-3a.5.5 0 0 1-.5-.5v-3A1.5 1.5 0 0 0 9.5 0zM6 1.5a.5.5 0 0 1 .5-.5h3a.5.5 0 0 1 .5.5v3A1.5 1.5 0 0 0 11.5 6h3a.5.5 0 0 1 .5.5v3a.5.5 0 0 1-.5.5h-3a1.5 1.5 0 0 0-1.5 1.5v3a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-3A1.5 1.5 0 0 0 4.5 10h-3a.5.5 0 0 1-.5-.5v-3a.5.5 0 0 1 .5-.5h3A1.5 1.5 0 0 0 6 4.5z\"},\"child\":[]}]})(props);\n};\nexport function BsDribbble (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M8 0C3.584 0 0 3.584 0 8s3.584 8 8 8c4.408 0 8-3.584 8-8s-3.592-8-8-8m5.284 3.688a6.8 6.8 0 0 1 1.545 4.251c-.226-.043-2.482-.503-4.755-.217-.052-.112-.096-.234-.148-.355-.139-.33-.295-.668-.451-.99 2.516-1.023 3.662-2.498 3.81-2.69zM8 1.18c1.735 0 3.323.65 4.53 1.718-.122.174-1.155 1.553-3.584 2.464-1.12-2.056-2.36-3.74-2.551-4A7 7 0 0 1 8 1.18m-2.907.642A43 43 0 0 1 7.627 5.77c-3.193.85-6.013.833-6.317.833a6.87 6.87 0 0 1 3.783-4.78zM1.163 8.01V7.8c.295.01 3.61.053 7.02-.971.199.381.381.772.555 1.162l-.27.078c-3.522 1.137-5.396 4.243-5.553 4.504a6.82 6.82 0 0 1-1.752-4.564zM8 14.837a6.8 6.8 0 0 1-4.19-1.44c.12-.252 1.509-2.924 5.361-4.269.018-.009.026-.009.044-.017a28.3 28.3 0 0 1 1.457 5.18A6.7 6.7 0 0 1 8 14.837m3.81-1.171c-.07-.417-.435-2.412-1.328-4.868 2.143-.338 4.017.217 4.251.295a6.77 6.77 0 0 1-2.924 4.573z\"},\"child\":[]}]})(props);\n};\nexport function BsDropbox (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.01 4.555 4.005 7.11 8.01 9.665 4.005 12.22 0 9.651l4.005-2.555L0 4.555 4.005 2zm-4.026 8.487 4.006-2.555 4.005 2.555-4.005 2.555zm4.026-3.39 4.005-2.556L8.01 4.555 11.995 2 16 4.555 11.995 7.11 16 9.665l-4.005 2.555z\"},\"child\":[]}]})(props);\n};\nexport function BsDropletFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 16a6 6 0 0 0 6-6c0-1.655-1.122-2.904-2.432-4.362C10.254 4.176 8.75 2.503 8 0c0 0-6 5.686-6 10a6 6 0 0 0 6 6M6.646 4.646l.708.708c-.29.29-1.128 1.311-1.907 2.87l-.894-.448c.82-1.641 1.717-2.753 2.093-3.13\"},\"child\":[]}]})(props);\n};\nexport function BsDropletHalf (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M7.21.8C7.69.295 8 0 8 0q.164.544.371 1.038c.812 1.946 2.073 3.35 3.197 4.6C12.878 7.096 14 8.345 14 10a6 6 0 0 1-12 0C2 6.668 5.58 2.517 7.21.8m.413 1.021A31 31 0 0 0 5.794 3.99c-.726.95-1.436 2.008-1.96 3.07C3.304 8.133 3 9.138 3 10c0 0 2.5 1.5 5 .5s5-.5 5-.5c0-1.201-.796-2.157-2.181-3.7l-.03-.032C9.75 5.11 8.5 3.72 7.623 1.82z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M4.553 7.776c.82-1.641 1.717-2.753 2.093-3.13l.708.708c-.29.29-1.128 1.311-1.907 2.87z\"},\"child\":[]}]})(props);\n};\nexport function BsDroplet (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M7.21.8C7.69.295 8 0 8 0q.164.544.371 1.038c.812 1.946 2.073 3.35 3.197 4.6C12.878 7.096 14 8.345 14 10a6 6 0 0 1-12 0C2 6.668 5.58 2.517 7.21.8m.413 1.021A31 31 0 0 0 5.794 3.99c-.726.95-1.436 2.008-1.96 3.07C3.304 8.133 3 9.138 3 10a5 5 0 0 0 10 0c0-1.201-.796-2.157-2.181-3.7l-.03-.032C9.75 5.11 8.5 3.72 7.623 1.82z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M4.553 7.776c.82-1.641 1.717-2.753 2.093-3.13l.708.708c-.29.29-1.128 1.311-1.907 2.87z\"},\"child\":[]}]})(props);\n};\nexport function BsDuffleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5.007 4.097q.011-.146.027-.298c.05-.464.141-.979.313-1.45.169-.465.432-.933.853-1.249 1.115-.836 2.485-.836 3.6 0 .42.316.684.784.853 1.25.171.47.263.985.313 1.449q.016.15.027.298c1.401.194 2.65.531 3.525 1.012 2.126 1.169 1.446 6.095 1.089 8.018a.954.954 0 0 1-.95.772H1.343a.954.954 0 0 1-.95-.772c-.357-1.923-1.037-6.85 1.09-8.018.873-.48 2.123-.818 3.524-1.012M4.05 5.633a22 22 0 0 0-1.565.352l-.091.026-.034.01a.5.5 0 0 0 .282.959l.005-.002.02-.005.08-.023a21 21 0 0 1 1.486-.334A21 21 0 0 1 8 6.25c1.439 0 2.781.183 3.767.367a21 21 0 0 1 1.567.356l.02.005.004.001a.5.5 0 0 0 .283-.959h-.003l-.006-.002-.025-.007a15 15 0 0 0-.43-.113 22 22 0 0 0-1.226-.265A22 22 0 0 0 8 5.25c-1.518 0-2.926.192-3.95.383M6.8 1.9c-.203.153-.377.42-.513.791a5.3 5.3 0 0 0-.265 1.292 35 35 0 0 1 1.374-.076c.866-.022 1.742.003 2.584.076a5.3 5.3 0 0 0-.266-1.292c-.135-.372-.309-.638-.513-.791-.76-.57-1.64-.57-2.4 0Z\"},\"child\":[]}]})(props);\n};\nexport function BsDuffle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 5.75c1.388 0 2.673.193 3.609.385a18 18 0 0 1 1.43.354l.112.034.002.001h.001a.5.5 0 0 1-.308.952l-.004-.002-.018-.005a17 17 0 0 0-1.417-.354A17.3 17.3 0 0 0 8 6.75a17.3 17.3 0 0 0-3.408.365 17 17 0 0 0-1.416.354l-.018.005-.003.001a.5.5 0 1 1-.308-.95A17.3 17.3 0 0 1 8 5.75\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M5.229 2.722c-.126.461-.19.945-.222 1.375-1.401.194-2.65.531-3.525 1.012C-.644 6.278.036 11.204.393 13.127a.954.954 0 0 0 .95.772h13.314a.954.954 0 0 0 .95-.772c.357-1.923 1.037-6.85-1.09-8.018-.873-.48-2.123-.818-3.524-1.012a7.4 7.4 0 0 0-.222-1.375c-.162-.593-.445-1.228-.971-1.622-1.115-.836-2.485-.836-3.6 0-.526.394-.81 1.03-.971 1.622M9.2 1.9c.26.195.466.57.606 1.085.088.322.142.667.173.998a23.3 23.3 0 0 0-3.958 0 6 6 0 0 1 .173-.998c.14-.515.346-.89.606-1.085.76-.57 1.64-.57 2.4 0M8 4.9c2.475 0 4.793.402 6.036 1.085.238.13.472.406.655.93.183.522.28 1.195.303 1.952.047 1.486-.189 3.088-.362 4.032H1.368c-.173-.944-.409-2.545-.362-4.032.024-.757.12-1.43.303-1.952.183-.524.417-.8.655-.93C3.207 5.302 5.525 4.9 8 4.9\"},\"child\":[]}]})(props);\n};\nexport function BsEarFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.5 0A5.5 5.5 0 0 0 3 5.5v7.047a3.453 3.453 0 0 0 6.687 1.212l.51-1.363a4.6 4.6 0 0 1 .67-1.197l2.008-2.581A5.34 5.34 0 0 0 8.66 0zM7 5.5v2.695q.168-.09.332-.192c.327-.208.577-.44.72-.727a.5.5 0 1 1 .895.448c-.256.513-.673.865-1.079 1.123A9 9 0 0 1 7 9.313V11.5a.5.5 0 0 1-1 0v-6a2.5 2.5 0 0 1 5 0V6a.5.5 0 0 1-1 0v-.5a1.5 1.5 0 1 0-3 0\"},\"child\":[]}]})(props);\n};\nexport function BsEar (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.5 1A4.5 4.5 0 0 0 4 5.5v7.047a2.453 2.453 0 0 0 4.75.861l.512-1.363a5.6 5.6 0 0 1 .816-1.46l2.008-2.581A4.34 4.34 0 0 0 8.66 1zM3 5.5A5.5 5.5 0 0 1 8.5 0h.16a5.34 5.34 0 0 1 4.215 8.618l-2.008 2.581a4.6 4.6 0 0 0-.67 1.197l-.51 1.363A3.453 3.453 0 0 1 3 12.547zM8.5 4A1.5 1.5 0 0 0 7 5.5v2.695q.168-.09.332-.192c.327-.208.577-.44.72-.727a.5.5 0 1 1 .895.448c-.256.513-.673.865-1.079 1.123A9 9 0 0 1 7 9.313V11.5a.5.5 0 0 1-1 0v-6a2.5 2.5 0 0 1 5 0V6a.5.5 0 0 1-1 0v-.5A1.5 1.5 0 0 0 8.5 4\"},\"child\":[]}]})(props);\n};\nexport function BsEarbuds (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M6.825 4.138c.596 2.141-.36 3.593-2.389 4.117a4.4 4.4 0 0 1-2.018.054c-.048-.01.9 2.778 1.522 4.61l.41 1.205a.52.52 0 0 1-.346.659l-.593.19a.55.55 0 0 1-.69-.34L.184 6.99c-.696-2.137.662-4.309 2.564-4.8 2.029-.523 3.402 0 4.076 1.948zm-.868 2.221c.43-.112.561-.993.292-1.969-.269-.975-.836-1.675-1.266-1.563s-.561.994-.292 1.969.836 1.675 1.266 1.563m3.218-2.221c-.596 2.141.36 3.593 2.389 4.117a4.4 4.4 0 0 0 2.018.054c.048-.01-.9 2.778-1.522 4.61l-.41 1.205a.52.52 0 0 0 .346.659l.593.19c.289.092.6-.06.69-.34l2.536-7.643c.696-2.137-.662-4.309-2.564-4.8-2.029-.523-3.402 0-4.076 1.948m.868 2.221c-.43-.112-.561-.993-.292-1.969.269-.975.836-1.675 1.266-1.563s.561.994.292 1.969-.836 1.675-1.266 1.563\"},\"child\":[]}]})(props);\n};\nexport function BsEaselFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.473.337a.5.5 0 0 0-.946 0L6.954 2H2a1 1 0 0 0-1 1v7a1 1 0 0 0 1 1h1.85l-1.323 3.837a.5.5 0 1 0 .946.326L4.908 11H7.5v2.5a.5.5 0 0 0 1 0V11h2.592l1.435 4.163a.5.5 0 0 0 .946-.326L12.15 11H14a1 1 0 0 0 1-1V3a1 1 0 0 0-1-1H9.046z\"},\"child\":[]}]})(props);\n};\nexport function BsEasel (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 0a.5.5 0 0 1 .473.337L9.046 2H14a1 1 0 0 1 1 1v7a1 1 0 0 1-1 1h-1.85l1.323 3.837a.5.5 0 1 1-.946.326L11.092 11H8.5v3a.5.5 0 0 1-1 0v-3H4.908l-1.435 4.163a.5.5 0 1 1-.946-.326L3.85 11H2a1 1 0 0 1-1-1V3a1 1 0 0 1 1-1h4.954L7.527.337A.5.5 0 0 1 8 0M2 3v7h12V3z\"},\"child\":[]}]})(props);\n};\nexport function BsEasel2Fill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.447.276a.5.5 0 0 0-.894 0L7.19 1H2.5A1.5 1.5 0 0 0 1 2.5V10h14V2.5A1.5 1.5 0 0 0 13.5 1H8.809z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M.5 11a.5.5 0 0 0 0 1h2.86l-.845 3.379a.5.5 0 0 0 .97.242L3.89 14h8.22l.405 1.621a.5.5 0 0 0 .97-.242L12.64 12h2.86a.5.5 0 0 0 0-1zm3.64 2 .25-1h7.22l.25 1z\"},\"child\":[]}]})(props);\n};\nexport function BsEasel2 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M8 0a.5.5 0 0 1 .447.276L8.81 1h4.69A1.5 1.5 0 0 1 15 2.5V11h.5a.5.5 0 0 1 0 1h-2.86l.845 3.379a.5.5 0 0 1-.97.242L12.11 14H3.89l-.405 1.621a.5.5 0 0 1-.97-.242L3.36 12H.5a.5.5 0 0 1 0-1H1V2.5A1.5 1.5 0 0 1 2.5 1h4.691l.362-.724A.5.5 0 0 1 8 0M2 11h12V2.5a.5.5 0 0 0-.5-.5h-11a.5.5 0 0 0-.5.5zm9.61 1H4.39l-.25 1h7.72z\"},\"child\":[]}]})(props);\n};\nexport function BsEasel3Fill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.5 12v1.134a1 1 0 1 1-1 0V12h-5A1.5 1.5 0 0 1 1 10.5V3h14v7.5a1.5 1.5 0 0 1-1.5 1.5zm7-10a.5.5 0 0 0 0-1H.5a.5.5 0 0 0 0 1z\"},\"child\":[]}]})(props);\n};\nexport function BsEasel3 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M8.5 13.134V12h5a1.5 1.5 0 0 0 1.5-1.5V2h.5a.5.5 0 0 0 0-1H.5a.5.5 0 0 0 0 1H1v8.5A1.5 1.5 0 0 0 2.5 12h5v1.134a1 1 0 1 0 1 0M2 2v8.5a.5.5 0 0 0 .5.5h11a.5.5 0 0 0 .5-.5V2z\"},\"child\":[]}]})(props);\n};\nexport function BsEggFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M14 10a6 6 0 0 1-12 0C2 5.686 5 0 8 0s6 5.686 6 10\"},\"child\":[]}]})(props);\n};\nexport function BsEggFried (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 11a3 3 0 1 0 0-6 3 3 0 0 0 0 6\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M13.997 5.17a5 5 0 0 0-8.101-4.09A5 5 0 0 0 1.28 9.342a5 5 0 0 0 8.336 5.109 3.5 3.5 0 0 0 5.201-4.065 3.001 3.001 0 0 0-.822-5.216zm-1-.034a1 1 0 0 0 .668.977 2.001 2.001 0 0 1 .547 3.478 1 1 0 0 0-.341 1.113 2.5 2.5 0 0 1-3.715 2.905 1 1 0 0 0-1.262.152 4 4 0 0 1-6.67-4.087 1 1 0 0 0-.2-1 4 4 0 0 1 3.693-6.61 1 1 0 0 0 .8-.2 4 4 0 0 1 6.48 3.273z\"},\"child\":[]}]})(props);\n};\nexport function BsEgg (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 15a5 5 0 0 1-5-5c0-1.956.69-4.286 1.742-6.12.524-.913 1.112-1.658 1.704-2.164C7.044 1.206 7.572 1 8 1s.956.206 1.554.716c.592.506 1.18 1.251 1.704 2.164C12.31 5.714 13 8.044 13 10a5 5 0 0 1-5 5m0 1a6 6 0 0 0 6-6c0-4.314-3-10-6-10S2 5.686 2 10a6 6 0 0 0 6 6\"},\"child\":[]}]})(props);\n};\nexport function BsEjectFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.27 1.047a1 1 0 0 1 1.46 0l6.345 6.77c.6.638.146 1.683-.73 1.683H1.656C.78 9.5.326 8.455.926 7.816zM.5 11.5a1 1 0 0 1 1-1h13a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1h-13a1 1 0 0 1-1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsEject (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.27 1.047a1 1 0 0 1 1.46 0l6.345 6.77c.6.638.146 1.683-.73 1.683H1.656C.78 9.5.326 8.455.926 7.816zM14.346 8.5 8 1.731 1.654 8.5zM.5 11.5a1 1 0 0 1 1-1h13a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1h-13a1 1 0 0 1-1-1zm14 0h-13v1h13z\"},\"child\":[]}]})(props);\n};\nexport function BsEmojiAngryFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 16A8 8 0 1 0 8 0a8 8 0 0 0 0 16M4.053 4.276a.5.5 0 0 1 .67-.223l2 1a.5.5 0 0 1 .166.76c.071.206.111.44.111.687C7 7.328 6.552 8 6 8s-1-.672-1-1.5c0-.408.109-.778.285-1.049l-1.009-.504a.5.5 0 0 1-.223-.67zm.232 8.157a.5.5 0 0 1-.183-.683A4.5 4.5 0 0 1 8 9.5a4.5 4.5 0 0 1 3.898 2.25.5.5 0 1 1-.866.5A3.5 3.5 0 0 0 8 10.5a3.5 3.5 0 0 0-3.032 1.75.5.5 0 0 1-.683.183M10 8c-.552 0-1-.672-1-1.5 0-.247.04-.48.11-.686a.502.502 0 0 1 .166-.761l2-1a.5.5 0 1 1 .448.894l-1.009.504c.176.27.285.64.285 1.049 0 .828-.448 1.5-1 1.5\"},\"child\":[]}]})(props);\n};\nexport function BsEmojiAngry (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14m0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4.285 12.433a.5.5 0 0 0 .683-.183A3.5 3.5 0 0 1 8 10.5c1.295 0 2.426.703 3.032 1.75a.5.5 0 0 0 .866-.5A4.5 4.5 0 0 0 8 9.5a4.5 4.5 0 0 0-3.898 2.25.5.5 0 0 0 .183.683m6.991-8.38a.5.5 0 1 1 .448.894l-1.009.504c.176.27.285.64.285 1.049 0 .828-.448 1.5-1 1.5s-1-.672-1-1.5c0-.247.04-.48.11-.686a.502.502 0 0 1 .166-.761zm-6.552 0a.5.5 0 0 0-.448.894l1.009.504A1.94 1.94 0 0 0 5 6.5C5 7.328 5.448 8 6 8s1-.672 1-1.5c0-.247-.04-.48-.11-.686a.502.502 0 0 0-.166-.761z\"},\"child\":[]}]})(props);\n};\nexport function BsEmojiAstonishedFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0m-4.884-3.978a2.1 2.1 0 0 1 .53.332.5.5 0 0 0 .708-.708h-.001v-.001a2 2 0 0 0-.237-.197 3 3 0 0 0-.606-.345 3 3 0 0 0-2.168-.077.5.5 0 1 0 .316.948 2 2 0 0 1 1.458.048m-4.774-.048a.5.5 0 0 0 .316-.948 3 3 0 0 0-2.167.077 3.1 3.1 0 0 0-.773.478q-.036.03-.07.064l-.002.001a.5.5 0 1 0 .728.689 2 2 0 0 1 .51-.313 2 2 0 0 1 1.458-.048M7 6.5C7 5.672 6.552 5 6 5s-1 .672-1 1.5S5.448 8 6 8s1-.672 1-1.5m4 0c0-.828-.448-1.5-1-1.5s-1 .672-1 1.5S9.448 8 10 8s1-.672 1-1.5m-5.247 4.746c-.383.478.08 1.06.687.98q1.56-.202 3.12 0c.606.08 1.07-.502.687-.98C9.747 10.623 8.998 10 8 10s-1.747.623-2.247 1.246\"},\"child\":[]}]})(props);\n};\nexport function BsEmojiAstonished (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14m0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M7 6.5C7 7.328 6.552 8 6 8s-1-.672-1-1.5S5.448 5 6 5s1 .672 1 1.5m4 0c0 .828-.448 1.5-1 1.5s-1-.672-1-1.5S9.448 5 10 5s1 .672 1 1.5M4.884 4.022a2 2 0 0 1 1.458-.048.5.5 0 0 0 .316-.948 3 3 0 0 0-2.167.077 3.1 3.1 0 0 0-.773.478q-.036.03-.07.064l-.002.001a.5.5 0 0 0 .707.708l-.001.002.001-.002a2 2 0 0 1 .122-.1 2 2 0 0 1 .41-.232Zm6.232 0a2 2 0 0 0-1.458-.048.5.5 0 1 1-.316-.948 3 3 0 0 1 2.168.077 3 3 0 0 1 .773.478l.07.064v.001a.5.5 0 0 1-.706.708l.002.002-.002-.002a2 2 0 0 0-.122-.1 2 2 0 0 0-.41-.232ZM8 10c-.998 0-1.747.623-2.247 1.246-.383.478.08 1.06.687.98q1.56-.202 3.12 0c.606.08 1.07-.502.687-.98C9.747 10.623 8.998 10 8 10\"},\"child\":[]}]})(props);\n};\nexport function BsEmojiDizzyFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 16A8 8 0 1 0 8 0a8 8 0 0 0 0 16M4.146 5.146a.5.5 0 0 1 .708 0l.646.647.646-.647a.5.5 0 1 1 .708.708l-.647.646.647.646a.5.5 0 1 1-.708.708L5.5 7.207l-.646.647a.5.5 0 1 1-.708-.708l.647-.646-.647-.646a.5.5 0 0 1 0-.708m5 0a.5.5 0 0 1 .708 0l.646.647.646-.647a.5.5 0 0 1 .708.708l-.647.646.647.646a.5.5 0 0 1-.708.708l-.646-.647-.646.647a.5.5 0 1 1-.708-.708l.647-.646-.647-.646a.5.5 0 0 1 0-.708M8 13a2 2 0 1 1 0-4 2 2 0 0 1 0 4\"},\"child\":[]}]})(props);\n};\nexport function BsEmojiDizzy (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14m0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M9.146 5.146a.5.5 0 0 1 .708 0l.646.647.646-.647a.5.5 0 0 1 .708.708l-.647.646.647.646a.5.5 0 0 1-.708.708l-.646-.647-.646.647a.5.5 0 1 1-.708-.708l.647-.646-.647-.646a.5.5 0 0 1 0-.708m-5 0a.5.5 0 0 1 .708 0l.646.647.646-.647a.5.5 0 1 1 .708.708l-.647.646.647.646a.5.5 0 1 1-.708.708L5.5 7.207l-.646.647a.5.5 0 1 1-.708-.708l.647-.646-.647-.646a.5.5 0 0 1 0-.708M10 11a2 2 0 1 1-4 0 2 2 0 0 1 4 0\"},\"child\":[]}]})(props);\n};\nexport function BsEmojiExpressionlessFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 16A8 8 0 1 0 8 0a8 8 0 0 0 0 16M4.5 6h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1m5 0h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1m-5 4h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1 0-1\"},\"child\":[]}]})(props);\n};\nexport function BsEmojiExpressionless (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14m0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4 10.5a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5m0-4a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1-.5-.5m5 0a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsEmojiFrownFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 16A8 8 0 1 0 8 0a8 8 0 0 0 0 16M7 6.5C7 7.328 6.552 8 6 8s-1-.672-1-1.5S5.448 5 6 5s1 .672 1 1.5m-2.715 5.933a.5.5 0 0 1-.183-.683A4.5 4.5 0 0 1 8 9.5a4.5 4.5 0 0 1 3.898 2.25.5.5 0 0 1-.866.5A3.5 3.5 0 0 0 8 10.5a3.5 3.5 0 0 0-3.032 1.75.5.5 0 0 1-.683.183M10 8c-.552 0-1-.672-1-1.5S9.448 5 10 5s1 .672 1 1.5S10.552 8 10 8\"},\"child\":[]}]})(props);\n};\nexport function BsEmojiFrown (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14m0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4.285 12.433a.5.5 0 0 0 .683-.183A3.5 3.5 0 0 1 8 10.5c1.295 0 2.426.703 3.032 1.75a.5.5 0 0 0 .866-.5A4.5 4.5 0 0 0 8 9.5a4.5 4.5 0 0 0-3.898 2.25.5.5 0 0 0 .183.683M7 6.5C7 7.328 6.552 8 6 8s-1-.672-1-1.5S5.448 5 6 5s1 .672 1 1.5m4 0c0 .828-.448 1.5-1 1.5s-1-.672-1-1.5S9.448 5 10 5s1 .672 1 1.5\"},\"child\":[]}]})(props);\n};\nexport function BsEmojiGrimaceFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0M7 6.25C7 5.56 6.552 5 6 5s-1 .56-1 1.25.448 1.25 1 1.25 1-.56 1-1.25m3 1.25c.552 0 1-.56 1-1.25S10.552 5 10 5s-1 .56-1 1.25.448 1.25 1 1.25m1.5 4.5a1.5 1.5 0 0 0 1.48-1.25v-.003a1.5 1.5 0 0 0 0-.497A1.5 1.5 0 0 0 11.5 9h-7a1.5 1.5 0 0 0-1.48 1.25v.003a1.5 1.5 0 0 0 0 .497A1.5 1.5 0 0 0 4.5 12zm-7.969-1.25a1 1 0 0 0 .969.75h.25v-.75zm8.938 0a1 1 0 0 1-.969.75h-.25v-.75zM11.5 9.5a1 1 0 0 1 .969.75H11.25V9.5zm-7.969.75A1 1 0 0 1 4.5 9.5h.25v.75zM5.25 11.5h1v-.75h-1zm2.5 0h-1v-.75h1zm1.5 0h-1v-.75h1zm1.5 0h-1v-.75h1zm-1-2h1v.75h-1zm-1.5 0h1v.75h-1zm-1.5 0h1v.75h-1zm-1.5 0h1v.75h-1z\"},\"child\":[]}]})(props);\n};\nexport function BsEmojiGrimace (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7 6.25c0 .69-.448 1.25-1 1.25s-1-.56-1-1.25S5.448 5 6 5s1 .56 1 1.25m3 1.25c.552 0 1-.56 1-1.25S10.552 5 10 5s-1 .56-1 1.25.448 1.25 1 1.25m2.98 3.25A1.5 1.5 0 0 1 11.5 12h-7a1.5 1.5 0 0 1-1.48-1.747v-.003A1.5 1.5 0 0 1 4.5 9h7a1.5 1.5 0 0 1 1.48 1.747zm-8.48.75h.25v-.75H3.531a1 1 0 0 0 .969.75m7 0a1 1 0 0 0 .969-.75H11.25v.75zm.969-1.25a1 1 0 0 0-.969-.75h-.25v.75zM4.5 9.5a1 1 0 0 0-.969.75H4.75V9.5zm1.75 2v-.75h-1v.75zm.5 0h1v-.75h-1zm1.5 0h1v-.75h-1zm1.5 0h1v-.75h-1zm1-2h-1v.75h1zm-1.5 0h-1v.75h1zm-1.5 0h-1v.75h1zm-1.5 0h-1v.75h1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8 16A8 8 0 1 0 8 0a8 8 0 0 0 0 16m0-1A7 7 0 1 1 8 1a7 7 0 0 1 0 14\"},\"child\":[]}]})(props);\n};\nexport function BsEmojiGrinFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 16A8 8 0 1 0 8 0a8 8 0 0 0 0 16M6.488 7c-.23-.598-.661-1-1.155-1-.493 0-.924.402-1.155 1A2.8 2.8 0 0 1 4 6c0-1.105.597-2 1.333-2 .737 0 1.334.895 1.334 2 0 .364-.065.706-.179 1m5.334 0c-.23-.598-.662-1-1.155-1-.494 0-.925.402-1.155 1a2.8 2.8 0 0 1-.179-1c0-1.105.597-2 1.334-2C11.403 4 12 4.895 12 6c0 .364-.065.706-.178 1M2.696 8.756a.48.48 0 0 1 .382-.118C4.348 8.786 6.448 9 8 9c1.553 0 3.653-.214 4.922-.362a.48.48 0 0 1 .383.118.3.3 0 0 1 .096.29c-.09.47-.242.921-.445 1.342-.263.035-.576.075-.929.115A37 37 0 0 1 8 10.75c-1.475 0-2.934-.123-4.027-.247-.353-.04-.666-.08-.93-.115A5.5 5.5 0 0 1 2.6 9.045a.3.3 0 0 1 .097-.29ZM8 13.5a5.49 5.49 0 0 1-4.256-2.017l.116.014c1.115.126 2.615.253 4.14.253s3.025-.127 4.14-.253l.117-.014A5.49 5.49 0 0 1 8 13.5\"},\"child\":[]}]})(props);\n};\nexport function BsEmojiGrin (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12.946 11.398A6.002 6.002 0 0 1 2.108 9.14c-.114-.595.426-1.068 1.028-.997C4.405 8.289 6.48 8.5 8 8.5s3.595-.21 4.864-.358c.602-.07 1.142.402 1.028.998a5.95 5.95 0 0 1-.946 2.258m-.078-2.25C11.588 9.295 9.539 9.5 8 9.5s-3.589-.205-4.868-.352c.11.468.286.91.517 1.317A37 37 0 0 0 8 10.75a37 37 0 0 0 4.351-.285c.231-.407.407-.85.517-1.317m-1.36 2.416c-1.02.1-2.255.186-3.508.186s-2.488-.086-3.507-.186A5 5 0 0 0 8 13a5 5 0 0 0 3.507-1.436ZM6.488 7c.114-.294.179-.636.179-1 0-1.105-.597-2-1.334-2C4.597 4 4 4.895 4 6c0 .364.065.706.178 1 .23-.598.662-1 1.155-1 .494 0 .925.402 1.155 1M12 6c0 .364-.065.706-.178 1-.23-.598-.662-1-1.155-1-.494 0-.925.402-1.155 1a2.8 2.8 0 0 1-.179-1c0-1.105.597-2 1.334-2C11.403 4 12 4.895 12 6\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8 16A8 8 0 1 0 8 0a8 8 0 0 0 0 16m0-1A7 7 0 1 1 8 1a7 7 0 0 1 0 14\"},\"child\":[]}]})(props);\n};\nexport function BsEmojiHeartEyesFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 0a8 8 0 1 0 0 16A8 8 0 0 0 8 0M4.756 4.566c.763-1.424 4.02-.12.952 3.434-4.496-1.596-2.35-4.298-.952-3.434m6.559 5.448a.5.5 0 0 1 .548.736A4.5 4.5 0 0 1 7.965 13a4.5 4.5 0 0 1-3.898-2.25.5.5 0 0 1 .548-.736h.005l.017.005.067.015.252.055c.215.046.515.108.857.169.693.124 1.522.242 2.152.242s1.46-.118 2.152-.242a27 27 0 0 0 1.109-.224l.067-.015.017-.004.005-.002zm-.07-5.448c1.397-.864 3.543 1.838-.953 3.434-3.067-3.554.19-4.858.952-3.434z\"},\"child\":[]}]})(props);\n};\nexport function BsEmojiHeartEyes (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14m0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M11.315 10.014a.5.5 0 0 1 .548.736A4.5 4.5 0 0 1 7.965 13a4.5 4.5 0 0 1-3.898-2.25.5.5 0 0 1 .548-.736h.005l.017.005.067.015.252.055c.215.046.515.108.857.169.693.124 1.522.242 2.152.242s1.46-.118 2.152-.242a27 27 0 0 0 1.109-.224l.067-.015.017-.004.005-.002zM4.756 4.566c.763-1.424 4.02-.12.952 3.434-4.496-1.596-2.35-4.298-.952-3.434m6.488 0c1.398-.864 3.544 1.838-.952 3.434-3.067-3.554.19-4.858.952-3.434\"},\"child\":[]}]})(props);\n};\nexport function BsEmojiKissFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M16 8a8 8 0 1 0-2.697 5.99c-.972-.665-1.632-1.356-1.99-2.062-.388-.766-.419-1.561-.075-2.23.496-.97 1.73-1.466 2.762-1.05.65-.262 1.38-.162 1.957.19Q16 8.425 16 8M7 6.5C7 7.328 6.552 8 6 8s-1-.672-1-1.5S5.448 5 6 5s1 .672 1 1.5m1.512 3.647c-.347.08-.737.198-1.107.319a.5.5 0 1 1-.31-.95c.38-.125.802-.254 1.192-.343.37-.086.78-.153 1.103-.108.16.022.394.085.561.286.188.226.187.497.131.705a1.9 1.9 0 0 1-.31.593q-.115.16-.275.343.16.186.276.347c.142.197.256.397.31.595.055.208.056.479-.132.706-.168.2-.404.262-.563.284-.323.043-.733-.027-1.102-.113a15 15 0 0 1-1.191-.345.5.5 0 1 1 .31-.95c.371.12.761.24 1.109.321q.264.062.446.084a6 6 0 0 0-.502-.584.5.5 0 0 1 .002-.695 5.5 5.5 0 0 0 .5-.577 5 5 0 0 0-.448.082m.766-.086-.006-.002zm.002 1.867-.005.001.006-.002Zm.157-4.685a.5.5 0 0 1-.874-.486A1.93 1.93 0 0 1 10.25 5.75c.73 0 1.356.412 1.687 1.007a.5.5 0 1 1-.874.486.93.93 0 0 0-.813-.493.93.93 0 0 0-.813.493M14 9.828c1.11-1.14 3.884.856 0 3.422-3.884-2.566-1.11-4.562 0-3.421Z\"},\"child\":[]}]})(props);\n};\nexport function BsEmojiKiss (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M12.493 13.368a7 7 0 1 1 2.489-4.858c.344.033.68.147.975.328a8 8 0 1 0-2.654 5.152 9 9 0 0 1-.81-.622m-3.731-3.22a13 13 0 0 0-1.107.318.5.5 0 1 1-.31-.95c.38-.125.802-.254 1.192-.343.37-.086.78-.153 1.103-.108.16.022.394.085.561.286.188.226.187.497.131.705a1.9 1.9 0 0 1-.31.593q-.115.16-.275.343.16.186.276.347c.142.197.256.397.31.595.055.208.056.479-.132.706-.168.2-.404.262-.563.284-.323.043-.733-.027-1.102-.113a15 15 0 0 1-1.191-.345.5.5 0 1 1 .31-.95c.371.12.761.24 1.109.321q.264.062.446.084a6 6 0 0 0-.502-.584.5.5 0 0 1 .002-.695 5.5 5.5 0 0 0 .5-.577 5 5 0 0 0-.448.082Zm.766-.087-.003-.001-.003-.001zm.002 1.867-.006.001zM6 8c.552 0 1-.672 1-1.5S6.552 5 6 5s-1 .672-1 1.5S5.448 8 6 8m2.757-.563a.5.5 0 0 0 .68-.194.93.93 0 0 1 .813-.493c.339 0 .645.19.813.493a.5.5 0 0 0 .874-.486A1.93 1.93 0 0 0 10.25 5.75c-.73 0-1.356.412-1.687 1.007a.5.5 0 0 0 .194.68M14 9.828c1.11-1.14 3.884.856 0 3.422-3.884-2.566-1.11-4.562 0-3.421Z\"},\"child\":[]}]})(props);\n};\nexport function BsEmojiLaughingFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 16A8 8 0 1 0 8 0a8 8 0 0 0 0 16M7 6.5c0 .501-.164.396-.415.235C6.42 6.629 6.218 6.5 6 6.5s-.42.13-.585.235C5.164 6.896 5 7 5 6.5 5 5.672 5.448 5 6 5s1 .672 1 1.5m5.331 3a1 1 0 0 1 0 1A5 5 0 0 1 8 13a5 5 0 0 1-4.33-2.5A1 1 0 0 1 4.535 9h6.93a1 1 0 0 1 .866.5m-1.746-2.765C10.42 6.629 10.218 6.5 10 6.5s-.42.13-.585.235C9.164 6.896 9 7 9 6.5c0-.828.448-1.5 1-1.5s1 .672 1 1.5c0 .501-.164.396-.415.235\"},\"child\":[]}]})(props);\n};\nexport function BsEmojiLaughing (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14m0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M12.331 9.5a1 1 0 0 1 0 1A5 5 0 0 1 8 13a5 5 0 0 1-4.33-2.5A1 1 0 0 1 4.535 9h6.93a1 1 0 0 1 .866.5M7 6.5c0 .828-.448 0-1 0s-1 .828-1 0S5.448 5 6 5s1 .672 1 1.5m4 0c0 .828-.448 0-1 0s-1 .828-1 0S9.448 5 10 5s1 .672 1 1.5\"},\"child\":[]}]})(props);\n};\nexport function BsEmojiNeutralFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 16A8 8 0 1 0 8 0a8 8 0 0 0 0 16M7 6.5C7 7.328 6.552 8 6 8s-1-.672-1-1.5S5.448 5 6 5s1 .672 1 1.5m-3 4a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5M10 8c-.552 0-1-.672-1-1.5S9.448 5 10 5s1 .672 1 1.5S10.552 8 10 8\"},\"child\":[]}]})(props);\n};\nexport function BsEmojiNeutral (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14m0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4 10.5a.5.5 0 0 0 .5.5h7a.5.5 0 0 0 0-1h-7a.5.5 0 0 0-.5.5m3-4C7 5.672 6.552 5 6 5s-1 .672-1 1.5S5.448 8 6 8s1-.672 1-1.5m4 0c0-.828-.448-1.5-1-1.5s-1 .672-1 1.5S9.448 8 10 8s1-.672 1-1.5\"},\"child\":[]}]})(props);\n};\nexport function BsEmojiSmileFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 16A8 8 0 1 0 8 0a8 8 0 0 0 0 16M7 6.5C7 7.328 6.552 8 6 8s-1-.672-1-1.5S5.448 5 6 5s1 .672 1 1.5M4.285 9.567a.5.5 0 0 1 .683.183A3.5 3.5 0 0 0 8 11.5a3.5 3.5 0 0 0 3.032-1.75.5.5 0 1 1 .866.5A4.5 4.5 0 0 1 8 12.5a4.5 4.5 0 0 1-3.898-2.25.5.5 0 0 1 .183-.683M10 8c-.552 0-1-.672-1-1.5S9.448 5 10 5s1 .672 1 1.5S10.552 8 10 8\"},\"child\":[]}]})(props);\n};\nexport function BsEmojiSmileUpsideDownFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 0a8 8 0 1 1 0 16A8 8 0 0 1 8 0M7 9.5C7 8.672 6.552 8 6 8s-1 .672-1 1.5.448 1.5 1 1.5 1-.672 1-1.5M4.285 6.433a.5.5 0 0 0 .683-.183A3.5 3.5 0 0 1 8 4.5c1.295 0 2.426.703 3.032 1.75a.5.5 0 0 0 .866-.5A4.5 4.5 0 0 0 8 3.5a4.5 4.5 0 0 0-3.898 2.25.5.5 0 0 0 .183.683M10 8c-.552 0-1 .672-1 1.5s.448 1.5 1 1.5 1-.672 1-1.5S10.552 8 10 8\"},\"child\":[]}]})(props);\n};\nexport function BsEmojiSmileUpsideDown (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 1a7 7 0 1 0 0 14A7 7 0 0 0 8 1m0-1a8 8 0 1 1 0 16A8 8 0 0 1 8 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4.285 6.433a.5.5 0 0 0 .683-.183A3.5 3.5 0 0 1 8 4.5c1.295 0 2.426.703 3.032 1.75a.5.5 0 0 0 .866-.5A4.5 4.5 0 0 0 8 3.5a4.5 4.5 0 0 0-3.898 2.25.5.5 0 0 0 .183.683M7 9.5C7 8.672 6.552 8 6 8s-1 .672-1 1.5.448 1.5 1 1.5 1-.672 1-1.5m4 0c0-.828-.448-1.5-1-1.5s-1 .672-1 1.5.448 1.5 1 1.5 1-.672 1-1.5\"},\"child\":[]}]})(props);\n};\nexport function BsEmojiSmile (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14m0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4.285 9.567a.5.5 0 0 1 .683.183A3.5 3.5 0 0 0 8 11.5a3.5 3.5 0 0 0 3.032-1.75.5.5 0 1 1 .866.5A4.5 4.5 0 0 1 8 12.5a4.5 4.5 0 0 1-3.898-2.25.5.5 0 0 1 .183-.683M7 6.5C7 7.328 6.552 8 6 8s-1-.672-1-1.5S5.448 5 6 5s1 .672 1 1.5m4 0c0 .828-.448 1.5-1 1.5s-1-.672-1-1.5S9.448 5 10 5s1 .672 1 1.5\"},\"child\":[]}]})(props);\n};\nexport function BsEmojiSunglassesFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 16A8 8 0 1 0 8 0a8 8 0 0 0 0 16M2.31 5.243A1 1 0 0 1 3.28 4H6a1 1 0 0 1 1 1v.116A4.2 4.2 0 0 1 8 5c.35 0 .69.04 1 .116V5a1 1 0 0 1 1-1h2.72a1 1 0 0 1 .97 1.243l-.311 1.242A2 2 0 0 1 11.439 8H11a2 2 0 0 1-1.994-1.839A3 3 0 0 0 8 6c-.393 0-.74.064-1.006.161A2 2 0 0 1 5 8h-.438a2 2 0 0 1-1.94-1.515zM4.969 9.75A3.5 3.5 0 0 0 8 11.5a3.5 3.5 0 0 0 3.032-1.75.5.5 0 1 1 .866.5A4.5 4.5 0 0 1 8 12.5a4.5 4.5 0 0 1-3.898-2.25.5.5 0 0 1 .866-.5z\"},\"child\":[]}]})(props);\n};\nexport function BsEmojiSunglasses (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4.968 9.75a.5.5 0 1 0-.866.5A4.5 4.5 0 0 0 8 12.5a4.5 4.5 0 0 0 3.898-2.25.5.5 0 1 0-.866-.5A3.5 3.5 0 0 1 8 11.5a3.5 3.5 0 0 1-3.032-1.75M7 5.116V5a1 1 0 0 0-1-1H3.28a1 1 0 0 0-.97 1.243l.311 1.242A2 2 0 0 0 4.561 8H5a2 2 0 0 0 1.994-1.839A3 3 0 0 1 8 6c.393 0 .74.064 1.006.161A2 2 0 0 0 11 8h.438a2 2 0 0 0 1.94-1.515l.311-1.242A1 1 0 0 0 12.72 4H10a1 1 0 0 0-1 1v.116A4.2 4.2 0 0 0 8 5c-.35 0-.69.04-1 .116\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0m-1 0A7 7 0 1 0 1 8a7 7 0 0 0 14 0\"},\"child\":[]}]})(props);\n};\nexport function BsEmojiSurpriseFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0M7 5.5C7 4.672 6.552 4 6 4s-1 .672-1 1.5S5.448 7 6 7s1-.672 1-1.5m4 0c0-.828-.448-1.5-1-1.5s-1 .672-1 1.5S9.448 7 10 7s1-.672 1-1.5M8 13a2 2 0 1 0 0-4 2 2 0 0 0 0 4\"},\"child\":[]}]})(props);\n};\nexport function BsEmojiSurprise (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14m0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M7 5.5C7 6.328 6.552 7 6 7s-1-.672-1-1.5S5.448 4 6 4s1 .672 1 1.5m4 0c0 .828-.448 1.5-1 1.5s-1-.672-1-1.5S9.448 4 10 4s1 .672 1 1.5M10 11a2 2 0 1 1-4 0 2 2 0 0 1 4 0\"},\"child\":[]}]})(props);\n};\nexport function BsEmojiTearFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0M9.5 3.5a.5.5 0 0 0 .5.5c.838 0 1.65.416 2.053 1.224a.5.5 0 1 0 .894-.448C12.351 3.584 11.162 3 10 3a.5.5 0 0 0-.5.5M7 6.5C7 5.672 6.552 5 6 5s-1 .672-1 1.5S5.448 8 6 8s1-.672 1-1.5M4.5 13c.828 0 1.5-.746 1.5-1.667 0-.706-.882-2.29-1.294-2.99a.238.238 0 0 0-.412 0C3.882 9.044 3 10.628 3 11.334 3 12.253 3.672 13 4.5 13M8 11.197c.916 0 1.607.408 2.25.826.212.138.424-.069.282-.277-.564-.83-1.558-2.049-2.532-2.049-.53 0-1.066.361-1.536.824q.126.27.232.535.069.174.135.373A3.1 3.1 0 0 1 8 11.197M10 8c.552 0 1-.672 1-1.5S10.552 5 10 5s-1 .672-1 1.5S9.448 8 10 8M6.5 3c-1.162 0-2.35.584-2.947 1.776a.5.5 0 1 0 .894.448C4.851 4.416 5.662 4 6.5 4a.5.5 0 0 0 0-1\"},\"child\":[]}]})(props);\n};\nexport function BsEmojiTear (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14m0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M6.831 11.43A3.1 3.1 0 0 1 8 11.196c.916 0 1.607.408 2.25.826.212.138.424-.069.282-.277-.564-.83-1.558-2.049-2.532-2.049-.53 0-1.066.361-1.536.824q.126.27.232.535.069.174.135.373ZM6 11.333C6 12.253 5.328 13 4.5 13S3 12.254 3 11.333c0-.706.882-2.29 1.294-2.99a.238.238 0 0 1 .412 0c.412.7 1.294 2.284 1.294 2.99M7 6.5C7 7.328 6.552 8 6 8s-1-.672-1-1.5S5.448 5 6 5s1 .672 1 1.5m4 0c0 .828-.448 1.5-1 1.5s-1-.672-1-1.5S9.448 5 10 5s1 .672 1 1.5m-1.5-3A.5.5 0 0 1 10 3c1.162 0 2.35.584 2.947 1.776a.5.5 0 1 1-.894.448C11.649 4.416 10.838 4 10 4a.5.5 0 0 1-.5-.5M7 3.5a.5.5 0 0 0-.5-.5c-1.162 0-2.35.584-2.947 1.776a.5.5 0 1 0 .894.448C4.851 4.416 5.662 4 6.5 4a.5.5 0 0 0 .5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsEmojiWinkFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 0a8 8 0 1 1 0 16A8 8 0 0 1 8 0M7 6.5C7 5.672 6.552 5 6 5s-1 .672-1 1.5S5.448 8 6 8s1-.672 1-1.5M4.285 9.567a.5.5 0 0 0-.183.683A4.5 4.5 0 0 0 8 12.5a4.5 4.5 0 0 0 3.898-2.25.5.5 0 1 0-.866-.5A3.5 3.5 0 0 1 8 11.5a3.5 3.5 0 0 1-3.032-1.75.5.5 0 0 0-.683-.183m5.152-3.31a.5.5 0 0 0-.874.486c.33.595.958 1.007 1.687 1.007s1.356-.412 1.687-1.007a.5.5 0 0 0-.874-.486.93.93 0 0 1-.813.493.93.93 0 0 1-.813-.493\"},\"child\":[]}]})(props);\n};\nexport function BsEmojiWink (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14m0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4.285 9.567a.5.5 0 0 1 .683.183A3.5 3.5 0 0 0 8 11.5a3.5 3.5 0 0 0 3.032-1.75.5.5 0 1 1 .866.5A4.5 4.5 0 0 1 8 12.5a4.5 4.5 0 0 1-3.898-2.25.5.5 0 0 1 .183-.683M7 6.5C7 7.328 6.552 8 6 8s-1-.672-1-1.5S5.448 5 6 5s1 .672 1 1.5m1.757-.437a.5.5 0 0 1 .68.194.93.93 0 0 0 .813.493c.339 0 .645-.19.813-.493a.5.5 0 1 1 .874.486A1.93 1.93 0 0 1 10.25 7.75c-.73 0-1.356-.412-1.687-1.007a.5.5 0 0 1 .194-.68\"},\"child\":[]}]})(props);\n};\nexport function BsEnvelopeArrowDownFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M.05 3.555A2 2 0 0 1 2 2h12a2 2 0 0 1 1.95 1.555L8 8.414zM0 4.697v7.104l5.803-3.558zm.192 8.159 6.57-4.027L8 9.586l1.239-.757.367.225A4.49 4.49 0 0 0 8 12.5c0 .526.09 1.03.256 1.5H2a2 2 0 0 1-1.808-1.144M16 4.697v4.974A4.5 4.5 0 0 0 12.5 8a4.5 4.5 0 0 0-1.965.45l-.338-.207z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M12.5 16a3.5 3.5 0 1 0 0-7 3.5 3.5 0 0 0 0 7m.354-1.646a.5.5 0 0 1-.722-.016l-1.149-1.25a.5.5 0 1 1 .737-.676l.28.305V11a.5.5 0 0 1 1 0v1.793l.396-.397a.5.5 0 0 1 .708.708z\"},\"child\":[]}]})(props);\n};\nexport function BsEnvelopeArrowDown (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 4a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v4.5a.5.5 0 0 1-1 0V5.383l-7 4.2-1.326-.795-5.64 3.47A1 1 0 0 0 2 13h5.5a.5.5 0 0 1 0 1H2a2 2 0 0 1-2-1.99zm1 7.105 4.708-2.897L1 5.383zM1 4v.217l7 4.2 7-4.2V4a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M12.5 16a3.5 3.5 0 1 0 0-7 3.5 3.5 0 0 0 0 7m.354-1.646a.5.5 0 0 1-.722-.016l-1.149-1.25a.5.5 0 1 1 .737-.676l.28.305V11a.5.5 0 0 1 1 0v1.793l.396-.397a.5.5 0 0 1 .708.708z\"},\"child\":[]}]})(props);\n};\nexport function BsEnvelopeArrowUpFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M.05 3.555A2 2 0 0 1 2 2h12a2 2 0 0 1 1.95 1.555L8 8.414zM0 4.697v7.104l5.803-3.558zm.192 8.159 6.57-4.027L8 9.586l1.239-.757.367.225A4.49 4.49 0 0 0 8 12.5c0 .526.09 1.03.256 1.5H2a2 2 0 0 1-1.808-1.144M16 4.697v4.974A4.5 4.5 0 0 0 12.5 8a4.5 4.5 0 0 0-1.965.45l-.338-.207z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M12.5 16a3.5 3.5 0 1 0 0-7 3.5 3.5 0 0 0 0 7m.354-5.354 1.25 1.25a.5.5 0 0 1-.708.708L13 12.207V14a.5.5 0 0 1-1 0v-1.717l-.28.305a.5.5 0 0 1-.737-.676l1.149-1.25a.5.5 0 0 1 .722-.016\"},\"child\":[]}]})(props);\n};\nexport function BsEnvelopeArrowUp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 4a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v4.5a.5.5 0 0 1-1 0V5.383l-7 4.2-1.326-.795-5.64 3.47A1 1 0 0 0 2 13h5.5a.5.5 0 0 1 0 1H2a2 2 0 0 1-2-1.99zm1 7.105 4.708-2.897L1 5.383zM1 4v.217l7 4.2 7-4.2V4a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M12.5 16a3.5 3.5 0 1 0 0-7 3.5 3.5 0 0 0 0 7m.354-5.354 1.25 1.25a.5.5 0 0 1-.708.708L13 12.207V14a.5.5 0 0 1-1 0v-1.717l-.28.305a.5.5 0 0 1-.737-.676l1.149-1.25a.5.5 0 0 1 .722-.016\"},\"child\":[]}]})(props);\n};\nexport function BsEnvelopeAtFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 2A2 2 0 0 0 .05 3.555L8 8.414l7.95-4.859A2 2 0 0 0 14 2zm-2 9.8V4.698l5.803 3.546zm6.761-2.97-6.57 4.026A2 2 0 0 0 2 14h6.256A4.5 4.5 0 0 1 8 12.5a4.49 4.49 0 0 1 1.606-3.446l-.367-.225L8 9.586zM16 9.671V4.697l-5.803 3.546.338.208A4.5 4.5 0 0 1 12.5 8c1.414 0 2.675.652 3.5 1.671\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M15.834 12.244c0 1.168-.577 2.025-1.587 2.025-.503 0-1.002-.228-1.12-.648h-.043c-.118.416-.543.643-1.015.643-.77 0-1.259-.542-1.259-1.434v-.529c0-.844.481-1.4 1.26-1.4.585 0 .87.333.953.63h.03v-.568h.905v2.19c0 .272.18.42.411.42.315 0 .639-.415.639-1.39v-.118c0-1.277-.95-2.326-2.484-2.326h-.04c-1.582 0-2.64 1.067-2.64 2.724v.157c0 1.867 1.237 2.654 2.57 2.654h.045c.507 0 .935-.07 1.18-.18v.731c-.219.1-.643.175-1.237.175h-.044C10.438 16 9 14.82 9 12.646v-.214C9 10.36 10.421 9 12.485 9h.035c2.12 0 3.314 1.43 3.314 3.034zm-4.04.21v.227c0 .586.227.8.581.8.31 0 .564-.17.564-.743v-.367c0-.516-.275-.708-.572-.708-.346 0-.573.245-.573.791\"},\"child\":[]}]})(props);\n};\nexport function BsEnvelopeAt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 2a2 2 0 0 0-2 2v8.01A2 2 0 0 0 2 14h5.5a.5.5 0 0 0 0-1H2a1 1 0 0 1-.966-.741l5.64-3.471L8 9.583l7-4.2V8.5a.5.5 0 0 0 1 0V4a2 2 0 0 0-2-2zm3.708 6.208L1 11.105V5.383zM1 4.217V4a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1v.217l-7 4.2z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M14.247 14.269c1.01 0 1.587-.857 1.587-2.025v-.21C15.834 10.43 14.64 9 12.52 9h-.035C10.42 9 9 10.36 9 12.432v.214C9 14.82 10.438 16 12.358 16h.044c.594 0 1.018-.074 1.237-.175v-.73c-.245.11-.673.18-1.18.18h-.044c-1.334 0-2.571-.788-2.571-2.655v-.157c0-1.657 1.058-2.724 2.64-2.724h.04c1.535 0 2.484 1.05 2.484 2.326v.118c0 .975-.324 1.39-.639 1.39-.232 0-.41-.148-.41-.42v-2.19h-.906v.569h-.03c-.084-.298-.368-.63-.954-.63-.778 0-1.259.555-1.259 1.4v.528c0 .892.49 1.434 1.26 1.434.471 0 .896-.227 1.014-.643h.043c.118.42.617.648 1.12.648m-2.453-1.588v-.227c0-.546.227-.791.573-.791.297 0 .572.192.572.708v.367c0 .573-.253.744-.564.744-.354 0-.581-.215-.581-.8Z\"},\"child\":[]}]})(props);\n};\nexport function BsEnvelopeCheckFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M.05 3.555A2 2 0 0 1 2 2h12a2 2 0 0 1 1.95 1.555L8 8.414zM0 4.697v7.104l5.803-3.558zM6.761 8.83l-6.57 4.026A2 2 0 0 0 2 14h6.256A4.5 4.5 0 0 1 8 12.5a4.49 4.49 0 0 1 1.606-3.446l-.367-.225L8 9.586zM16 4.697v4.974A4.5 4.5 0 0 0 12.5 8a4.5 4.5 0 0 0-1.965.45l-.338-.207z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M16 12.5a3.5 3.5 0 1 1-7 0 3.5 3.5 0 0 1 7 0m-1.993-1.679a.5.5 0 0 0-.686.172l-1.17 1.95-.547-.547a.5.5 0 0 0-.708.708l.774.773a.75.75 0 0 0 1.174-.144l1.335-2.226a.5.5 0 0 0-.172-.686\"},\"child\":[]}]})(props);\n};\nexport function BsEnvelopeCheck (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 2a2 2 0 0 0-2 2v8.01A2 2 0 0 0 2 14h5.5a.5.5 0 0 0 0-1H2a1 1 0 0 1-.966-.741l5.64-3.471L8 9.583l7-4.2V8.5a.5.5 0 0 0 1 0V4a2 2 0 0 0-2-2zm3.708 6.208L1 11.105V5.383zM1 4.217V4a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1v.217l-7 4.2z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M16 12.5a3.5 3.5 0 1 1-7 0 3.5 3.5 0 0 1 7 0m-1.993-1.679a.5.5 0 0 0-.686.172l-1.17 1.95-.547-.547a.5.5 0 0 0-.708.708l.774.773a.75.75 0 0 0 1.174-.144l1.335-2.226a.5.5 0 0 0-.172-.686\"},\"child\":[]}]})(props);\n};\nexport function BsEnvelopeDashFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M.05 3.555A2 2 0 0 1 2 2h12a2 2 0 0 1 1.95 1.555L8 8.414zM0 4.697v7.104l5.803-3.558zM6.761 8.83l-6.57 4.026A2 2 0 0 0 2 14h6.256A4.5 4.5 0 0 1 8 12.5a4.49 4.49 0 0 1 1.606-3.446l-.367-.225L8 9.586zM16 4.697v4.974A4.5 4.5 0 0 0 12.5 8a4.5 4.5 0 0 0-1.965.45l-.338-.207z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M16 12.5a3.5 3.5 0 1 1-7 0 3.5 3.5 0 0 1 7 0m-5.5 0a.5.5 0 0 0 .5.5h3a.5.5 0 0 0 0-1h-3a.5.5 0 0 0-.5.5\"},\"child\":[]}]})(props);\n};\nexport function BsEnvelopeDash (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 2a2 2 0 0 0-2 2v8.01A2 2 0 0 0 2 14h5.5a.5.5 0 0 0 0-1H2a1 1 0 0 1-.966-.741l5.64-3.471L8 9.583l7-4.2V8.5a.5.5 0 0 0 1 0V4a2 2 0 0 0-2-2zm3.708 6.208L1 11.105V5.383zM1 4.217V4a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1v.217l-7 4.2z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M16 12.5a3.5 3.5 0 1 1-7 0 3.5 3.5 0 0 1 7 0m-5.5 0a.5.5 0 0 0 .5.5h3a.5.5 0 0 0 0-1h-3a.5.5 0 0 0-.5.5\"},\"child\":[]}]})(props);\n};\nexport function BsEnvelopeExclamationFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M.05 3.555A2 2 0 0 1 2 2h12a2 2 0 0 1 1.95 1.555L8 8.414zM0 4.697v7.104l5.803-3.558zM6.761 8.83l-6.57 4.026A2 2 0 0 0 2 14h6.256A4.5 4.5 0 0 1 8 12.5a4.49 4.49 0 0 1 1.606-3.446l-.367-.225L8 9.586zM16 4.697v4.974A4.5 4.5 0 0 0 12.5 8a4.5 4.5 0 0 0-1.965.45l-.338-.207z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M12.5 16a3.5 3.5 0 1 0 0-7 3.5 3.5 0 0 0 0 7m.5-5v1.5a.5.5 0 0 1-1 0V11a.5.5 0 0 1 1 0m0 3a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0\"},\"child\":[]}]})(props);\n};\nexport function BsEnvelopeExclamation (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 2a2 2 0 0 0-2 2v8.01A2 2 0 0 0 2 14h5.5a.5.5 0 0 0 0-1H2a1 1 0 0 1-.966-.741l5.64-3.471L8 9.583l7-4.2V8.5a.5.5 0 0 0 1 0V4a2 2 0 0 0-2-2zm3.708 6.208L1 11.105V5.383zM1 4.217V4a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1v.217l-7 4.2z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M12.5 16a3.5 3.5 0 1 0 0-7 3.5 3.5 0 0 0 0 7m.5-5v1.5a.5.5 0 0 1-1 0V11a.5.5 0 0 1 1 0m0 3a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0\"},\"child\":[]}]})(props);\n};\nexport function BsEnvelopeFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M.05 3.555A2 2 0 0 1 2 2h12a2 2 0 0 1 1.95 1.555L8 8.414zM0 4.697v7.104l5.803-3.558zM6.761 8.83l-6.57 4.027A2 2 0 0 0 2 14h12a2 2 0 0 0 1.808-1.144l-6.57-4.027L8 9.586zm3.436-.586L16 11.801V4.697z\"},\"child\":[]}]})(props);\n};\nexport function BsEnvelopeHeartFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M.05 3.555A2 2 0 0 1 2 2h12a2 2 0 0 1 1.95 1.555l-4.2 2.568-.051-.105c-.666-1.3-2.363-1.917-3.699-1.25-1.336-.667-3.033-.05-3.699 1.25l-.05.105zM11.584 8.91l-.073.139L16 11.8V4.697l-4.003 2.447c.027.562-.107 1.163-.413 1.767Zm-4.135 3.05c-1.048-.693-1.84-1.39-2.398-2.082L.19 12.856A2 2 0 0 0 2 14h12a2 2 0 0 0 1.808-1.144L10.95 9.878c-.559.692-1.35 1.389-2.398 2.081L8 12.324l-.551-.365ZM4.416 8.91c-.306-.603-.44-1.204-.413-1.766L0 4.697v7.104l4.49-2.752z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8 5.993c1.664-1.711 5.825 1.283 0 5.132-5.825-3.85-1.664-6.843 0-5.132\"},\"child\":[]}]})(props);\n};\nexport function BsEnvelopeHeart (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M0 4a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm2-1a1 1 0 0 0-1 1v.217l3.235 1.94a2.8 2.8 0 0 0-.233 1.027L1 5.384v5.721l3.453-2.124q.219.416.55.835l-3.97 2.443A1 1 0 0 0 2 13h12a1 1 0 0 0 .966-.741l-3.968-2.442q.33-.421.55-.836L15 11.105V5.383l-3.002 1.801a2.8 2.8 0 0 0-.233-1.026L15 4.217V4a1 1 0 0 0-1-1zm6 2.993c1.664-1.711 5.825 1.283 0 5.132-5.825-3.85-1.664-6.843 0-5.132\"},\"child\":[]}]})(props);\n};\nexport function BsEnvelopeOpenFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.941.435a2 2 0 0 0-1.882 0l-6 3.2A2 2 0 0 0 0 5.4v.314l6.709 3.932L8 8.928l1.291.718L16 5.714V5.4a2 2 0 0 0-1.059-1.765zM16 6.873l-5.693 3.337L16 13.372v-6.5Zm-.059 7.611L8 10.072.059 14.484A2 2 0 0 0 2 16h12a2 2 0 0 0 1.941-1.516M0 13.373l5.693-3.163L0 6.873z\"},\"child\":[]}]})(props);\n};\nexport function BsEnvelopeOpenHeartFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.941.435a2 2 0 0 0-1.882 0l-6 3.2A2 2 0 0 0 0 5.4v.313l4.222 2.475q.035-.087.08-.17c.665-1.3 2.362-1.917 3.698-1.25 1.336-.667 3.033-.05 3.699 1.25a3 3 0 0 1 .08.17L16 5.713V5.4a2 2 0 0 0-1.059-1.765zM0 6.873l4 2.344c-.012.542.124 1.117.416 1.694l.004.006L0 13.372v-6.5Zm.059 7.611 4.9-2.723c.563.73 1.383 1.467 2.49 2.198l.551.365.551-.365c1.107-.73 1.927-1.467 2.49-2.198l4.9 2.723A2 2 0 0 1 14 16H2a2 2 0 0 1-1.941-1.516M16 13.372l-4.42-2.455.004-.006c.292-.577.428-1.152.415-1.694L16 6.873v6.5Z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8 7.993c1.664-1.711 5.825 1.283 0 5.132-5.825-3.85-1.664-6.843 0-5.132\"},\"child\":[]}]})(props);\n};\nexport function BsEnvelopeOpenHeart (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M8.47 1.318a1 1 0 0 0-.94 0l-6 3.2A1 1 0 0 0 1 5.4v.817l3.235 1.94a2.8 2.8 0 0 0-.233 1.027L1 7.384v5.733l3.479-2.087q.224.414.558.83l-4.002 2.402A1 1 0 0 0 2 15h12a1 1 0 0 0 .965-.738l-4.002-2.401q.334-.418.558-.831L15 13.117V7.383l-3.002 1.801a2.8 2.8 0 0 0-.233-1.026L15 6.217V5.4a1 1 0 0 0-.53-.882zM7.06.435a2 2 0 0 1 1.882 0l6 3.2A2 2 0 0 1 16 5.4V14a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V5.4a2 2 0 0 1 1.059-1.765zM8 7.993c1.664-1.711 5.825 1.283 0 5.132-5.825-3.85-1.664-6.843 0-5.132\"},\"child\":[]}]})(props);\n};\nexport function BsEnvelopeOpen (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.47 1.318a1 1 0 0 0-.94 0l-6 3.2A1 1 0 0 0 1 5.4v.817l5.75 3.45L8 8.917l1.25.75L15 6.217V5.4a1 1 0 0 0-.53-.882zM15 7.383l-4.778 2.867L15 13.117zm-.035 6.88L8 10.082l-6.965 4.18A1 1 0 0 0 2 15h12a1 1 0 0 0 .965-.738ZM1 13.116l4.778-2.867L1 7.383v5.734ZM7.059.435a2 2 0 0 1 1.882 0l6 3.2A2 2 0 0 1 16 5.4V14a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V5.4a2 2 0 0 1 1.059-1.765z\"},\"child\":[]}]})(props);\n};\nexport function BsEnvelopePaperFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M6.5 9.5 3 7.5v-6A1.5 1.5 0 0 1 4.5 0h7A1.5 1.5 0 0 1 13 1.5v6l-3.5 2L8 8.75zM1.059 3.635 2 3.133v3.753L0 5.713V5.4a2 2 0 0 1 1.059-1.765M16 5.713l-2 1.173V3.133l.941.502A2 2 0 0 1 16 5.4zm0 1.16-5.693 3.337L16 13.372v-6.5Zm-8 3.199 7.941 4.412A2 2 0 0 1 14 16H2a2 2 0 0 1-1.941-1.516zm-8 3.3 5.693-3.162L0 6.873v6.5Z\"},\"child\":[]}]})(props);\n};\nexport function BsEnvelopePaperHeartFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"m3 7.5 3.5 2L8 8.75l1.5.75 3.5-2v-6A1.5 1.5 0 0 0 11.5 0h-7A1.5 1.5 0 0 0 3 1.5zM2 3.133l-.941.502A2 2 0 0 0 0 5.4v.313l2 1.173zm12 3.753 2-1.173V5.4a2 2 0 0 0-1.059-1.765L14 3.133zm-3.693 3.324L16 6.873v6.5zm5.634 4.274L8 10.072.059 14.484A2 2 0 0 0 2 16h12a2 2 0 0 0 1.941-1.516M5.693 10.21 0 13.372v-6.5zM8 1.982C9.664.309 13.825 3.236 8 7 2.175 3.236 6.336.31 8 1.982\"},\"child\":[]}]})(props);\n};\nexport function BsEnvelopePaperHeart (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M2 2a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v1.133l.941.502A2 2 0 0 1 16 5.4V14a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V5.4a2 2 0 0 1 1.059-1.765L2 3.133zm0 2.267-.47.25A1 1 0 0 0 1 5.4v.817l1 .6zm1 3.15 3.75 2.25L8 8.917l1.25.75L13 7.417V2a1 1 0 0 0-1-1H4a1 1 0 0 0-1 1zm11-.6 1-.6V5.4a1 1 0 0 0-.53-.882L14 4.267zM8 2.982C9.664 1.309 13.825 4.236 8 8 2.175 4.236 6.336 1.31 8 2.982m7 4.401-4.778 2.867L15 13.117zm-.035 6.88L8 10.082l-6.965 4.18A1 1 0 0 0 2 15h12a1 1 0 0 0 .965-.738ZM1 13.116l4.778-2.867L1 7.383v5.734Z\"},\"child\":[]}]})(props);\n};\nexport function BsEnvelopePaper (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4 0a2 2 0 0 0-2 2v1.133l-.941.502A2 2 0 0 0 0 5.4V14a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V5.4a2 2 0 0 0-1.059-1.765L14 3.133V2a2 2 0 0 0-2-2zm10 4.267.47.25A1 1 0 0 1 15 5.4v.817l-1 .6zm-1 3.15-3.75 2.25L8 8.917l-1.25.75L3 7.417V2a1 1 0 0 1 1-1h8a1 1 0 0 1 1 1zm-11-.6-1-.6V5.4a1 1 0 0 1 .53-.882L2 4.267zm13 .566v5.734l-4.778-2.867zm-.035 6.88A1 1 0 0 1 14 15H2a1 1 0 0 1-.965-.738L8 10.083zM1 13.116V7.383l4.778 2.867L1 13.117Z\"},\"child\":[]}]})(props);\n};\nexport function BsEnvelopePlusFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M.05 3.555A2 2 0 0 1 2 2h12a2 2 0 0 1 1.95 1.555L8 8.414zM0 4.697v7.104l5.803-3.558zM6.761 8.83l-6.57 4.026A2 2 0 0 0 2 14h6.256A4.5 4.5 0 0 1 8 12.5a4.49 4.49 0 0 1 1.606-3.446l-.367-.225L8 9.586zM16 4.697v4.974A4.5 4.5 0 0 0 12.5 8a4.5 4.5 0 0 0-1.965.45l-.338-.207z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M16 12.5a3.5 3.5 0 1 1-7 0 3.5 3.5 0 0 1 7 0m-3.5-2a.5.5 0 0 0-.5.5v1h-1a.5.5 0 0 0 0 1h1v1a.5.5 0 0 0 1 0v-1h1a.5.5 0 0 0 0-1h-1v-1a.5.5 0 0 0-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsEnvelopePlus (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 2a2 2 0 0 0-2 2v8.01A2 2 0 0 0 2 14h5.5a.5.5 0 0 0 0-1H2a1 1 0 0 1-.966-.741l5.64-3.471L8 9.583l7-4.2V8.5a.5.5 0 0 0 1 0V4a2 2 0 0 0-2-2zm3.708 6.208L1 11.105V5.383zM1 4.217V4a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1v.217l-7 4.2z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M16 12.5a3.5 3.5 0 1 1-7 0 3.5 3.5 0 0 1 7 0m-3.5-2a.5.5 0 0 0-.5.5v1h-1a.5.5 0 0 0 0 1h1v1a.5.5 0 0 0 1 0v-1h1a.5.5 0 0 0 0-1h-1v-1a.5.5 0 0 0-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsEnvelopeSlashFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M.05 3.555A2 2 0 0 1 2 2h12a2 2 0 0 1 1.95 1.555L8 8.414zM0 4.697v7.104l5.803-3.558zM6.761 8.83l-6.57 4.026A2 2 0 0 0 2 14h6.256A4.5 4.5 0 0 1 8 12.5a4.49 4.49 0 0 1 1.606-3.446l-.367-.225L8 9.586zM16 4.697v4.974A4.5 4.5 0 0 0 12.5 8a4.5 4.5 0 0 0-1.965.45l-.338-.207z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M14.975 10.025a3.5 3.5 0 1 0-4.95 4.95 3.5 3.5 0 0 0 4.95-4.95m-4.243.707a2.5 2.5 0 0 1 3.147-.318l-3.465 3.465a2.5 2.5 0 0 1 .318-3.147m.39 3.854 3.464-3.465a2.501 2.501 0 0 1-3.465 3.465Z\"},\"child\":[]}]})(props);\n};\nexport function BsEnvelopeSlash (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 2a2 2 0 0 0-2 2v8.01A2 2 0 0 0 2 14h5.5a.5.5 0 0 0 0-1H2a1 1 0 0 1-.966-.741l5.64-3.471L8 9.583l7-4.2V8.5a.5.5 0 0 0 1 0V4a2 2 0 0 0-2-2zm3.708 6.208L1 11.105V5.383zM1 4.217V4a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1v.217l-7 4.2z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M14.975 10.025a3.5 3.5 0 1 0-4.95 4.95 3.5 3.5 0 0 0 4.95-4.95m-4.243.707a2.5 2.5 0 0 1 3.147-.318l-3.465 3.465a2.5 2.5 0 0 1 .318-3.147m.39 3.854 3.464-3.465a2.501 2.501 0 0 1-3.465 3.465Z\"},\"child\":[]}]})(props);\n};\nexport function BsEnvelopeXFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M.05 3.555A2 2 0 0 1 2 2h12a2 2 0 0 1 1.95 1.555L8 8.414zM0 4.697v7.104l5.803-3.558zM6.761 8.83l-6.57 4.026A2 2 0 0 0 2 14h6.256A4.5 4.5 0 0 1 8 12.5a4.49 4.49 0 0 1 1.606-3.446l-.367-.225L8 9.586zM16 4.697v4.974A4.5 4.5 0 0 0 12.5 8a4.5 4.5 0 0 0-1.965.45l-.338-.207z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M16 12.5a3.5 3.5 0 1 1-7 0 3.5 3.5 0 0 1 7 0m-4.854-1.354a.5.5 0 0 0 0 .708l.647.646-.647.646a.5.5 0 0 0 .708.708l.646-.647.646.647a.5.5 0 0 0 .708-.708l-.647-.646.647-.646a.5.5 0 0 0-.708-.708l-.646.647-.646-.647a.5.5 0 0 0-.708 0\"},\"child\":[]}]})(props);\n};\nexport function BsEnvelopeX (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 2a2 2 0 0 0-2 2v8.01A2 2 0 0 0 2 14h5.5a.5.5 0 0 0 0-1H2a1 1 0 0 1-.966-.741l5.64-3.471L8 9.583l7-4.2V8.5a.5.5 0 0 0 1 0V4a2 2 0 0 0-2-2zm3.708 6.208L1 11.105V5.383zM1 4.217V4a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1v.217l-7 4.2z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M16 12.5a3.5 3.5 0 1 1-7 0 3.5 3.5 0 0 1 7 0m-4.854-1.354a.5.5 0 0 0 0 .708l.647.646-.647.646a.5.5 0 0 0 .708.708l.646-.647.646.647a.5.5 0 0 0 .708-.708l-.647-.646.647-.646a.5.5 0 0 0-.708-.708l-.646.647-.646-.647a.5.5 0 0 0-.708 0\"},\"child\":[]}]})(props);\n};\nexport function BsEnvelope (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 4a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm2-1a1 1 0 0 0-1 1v.217l7 4.2 7-4.2V4a1 1 0 0 0-1-1zm13 2.383-4.708 2.825L15 11.105zm-.034 6.876-5.64-3.471L8 9.583l-1.326-.795-5.64 3.47A1 1 0 0 0 2 13h12a1 1 0 0 0 .966-.741M1 11.105l4.708-2.897L1 5.383z\"},\"child\":[]}]})(props);\n};\nexport function BsEraserFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.086 2.207a2 2 0 0 1 2.828 0l3.879 3.879a2 2 0 0 1 0 2.828l-5.5 5.5A2 2 0 0 1 7.879 15H5.12a2 2 0 0 1-1.414-.586l-2.5-2.5a2 2 0 0 1 0-2.828zm.66 11.34L3.453 8.254 1.914 9.793a1 1 0 0 0 0 1.414l2.5 2.5a1 1 0 0 0 .707.293H7.88a1 1 0 0 0 .707-.293z\"},\"child\":[]}]})(props);\n};\nexport function BsEraser (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.086 2.207a2 2 0 0 1 2.828 0l3.879 3.879a2 2 0 0 1 0 2.828l-5.5 5.5A2 2 0 0 1 7.879 15H5.12a2 2 0 0 1-1.414-.586l-2.5-2.5a2 2 0 0 1 0-2.828zm2.121.707a1 1 0 0 0-1.414 0L4.16 7.547l5.293 5.293 4.633-4.633a1 1 0 0 0 0-1.414zM8.746 13.547 3.453 8.254 1.914 9.793a1 1 0 0 0 0 1.414l2.5 2.5a1 1 0 0 0 .707.293H7.88a1 1 0 0 0 .707-.293z\"},\"child\":[]}]})(props);\n};\nexport function BsEscape (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.538 1.02a.5.5 0 1 0-.076.998 6 6 0 1 1-6.445 6.444.5.5 0 0 0-.997.076A7 7 0 1 0 8.538 1.02\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M7.096 7.828a.5.5 0 0 0 .707-.707L2.707 2.025h2.768a.5.5 0 1 0 0-1H1.5a.5.5 0 0 0-.5.5V5.5a.5.5 0 0 0 1 0V2.732z\"},\"child\":[]}]})(props);\n};\nexport function BsEthernet (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M14 13.5v-7a.5.5 0 0 0-.5-.5H12V4.5a.5.5 0 0 0-.5-.5h-1v-.5A.5.5 0 0 0 10 3H6a.5.5 0 0 0-.5.5V4h-1a.5.5 0 0 0-.5.5V6H2.5a.5.5 0 0 0-.5.5v7a.5.5 0 0 0 .5.5h11a.5.5 0 0 0 .5-.5M3.75 11h.5a.25.25 0 0 1 .25.25v1.5a.25.25 0 0 1-.25.25h-.5a.25.25 0 0 1-.25-.25v-1.5a.25.25 0 0 1 .25-.25m2 0h.5a.25.25 0 0 1 .25.25v1.5a.25.25 0 0 1-.25.25h-.5a.25.25 0 0 1-.25-.25v-1.5a.25.25 0 0 1 .25-.25m1.75.25a.25.25 0 0 1 .25-.25h.5a.25.25 0 0 1 .25.25v1.5a.25.25 0 0 1-.25.25h-.5a.25.25 0 0 1-.25-.25zM9.75 11h.5a.25.25 0 0 1 .25.25v1.5a.25.25 0 0 1-.25.25h-.5a.25.25 0 0 1-.25-.25v-1.5a.25.25 0 0 1 .25-.25m1.75.25a.25.25 0 0 1 .25-.25h.5a.25.25 0 0 1 .25.25v1.5a.25.25 0 0 1-.25.25h-.5a.25.25 0 0 1-.25-.25z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zM1 2a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsEvFrontFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2.52 3.515A2.5 2.5 0 0 1 4.82 2h6.362c1 0 1.904.596 2.298 1.515l.792 1.848c.075.175.21.319.38.404.5.25.855.715.965 1.262l.335 1.679q.05.242.049.49v.413c0 .814-.39 1.543-1 1.997V13.5a.5.5 0 0 1-.5.5h-2a.5.5 0 0 1-.5-.5v-1.338c-1.292.048-2.745.088-4 .088s-2.708-.04-4-.088V13.5a.5.5 0 0 1-.5.5h-2a.5.5 0 0 1-.5-.5v-1.892c-.61-.454-1-1.183-1-1.997v-.413a2.5 2.5 0 0 1 .049-.49l.335-1.68c.11-.546.465-1.012.964-1.261a.8.8 0 0 0 .381-.404l.792-1.848Zm6.75.51a.186.186 0 0 0-.23.034L6.05 7.246a.188.188 0 0 0 .137.316h1.241l-.673 2.195a.19.19 0 0 0 .085.218c.075.043.17.03.23-.034l2.88-3.187a.188.188 0 0 0-.137-.316H8.572l.782-2.195a.19.19 0 0 0-.085-.218Z\"},\"child\":[]}]})(props);\n};\nexport function BsEvFront (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.354 4.243a.19.19 0 0 0-.085-.218.186.186 0 0 0-.23.034L6.051 7.246a.188.188 0 0 0 .136.316h1.241l-.673 2.195a.19.19 0 0 0 .085.218c.075.043.17.03.23-.034l2.88-3.187a.188.188 0 0 0-.137-.316H8.572z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4.819 2A2.5 2.5 0 0 0 2.52 3.515l-.792 1.848a.8.8 0 0 1-.38.404c-.5.25-.855.715-.965 1.262L.05 8.708a2.5 2.5 0 0 0-.049.49v.413c0 .814.39 1.543 1 1.997V13.5a.5.5 0 0 0 .5.5h2a.5.5 0 0 0 .5-.5v-1.338c1.292.048 2.745.088 4 .088s2.708-.04 4-.088V13.5a.5.5 0 0 0 .5.5h2a.5.5 0 0 0 .5-.5v-1.892c.61-.454 1-1.183 1-1.997v-.413q0-.248-.049-.49l-.335-1.68a1.8 1.8 0 0 0-.964-1.261.8.8 0 0 1-.381-.404l-.792-1.848A2.5 2.5 0 0 0 11.181 2H4.82ZM3.44 3.91A1.5 1.5 0 0 1 4.82 3h6.362a1.5 1.5 0 0 1 1.379.91l.792 1.847a1.8 1.8 0 0 0 .853.904c.222.112.381.32.43.564l.336 1.679q.03.146.029.294v.413a1.48 1.48 0 0 1-1.408 1.484c-1.555.07-3.786.155-5.592.155s-4.037-.084-5.592-.155A1.48 1.48 0 0 1 1 9.611v-.413q0-.148.03-.294l.335-1.68a.8.8 0 0 1 .43-.563c.383-.19.685-.511.853-.904z\"},\"child\":[]}]})(props);\n};\nexport function BsEvStationFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M1 2a2 2 0 0 1 2-2h6a2 2 0 0 1 2 2v8a2 2 0 0 1 2 2v.5a.5.5 0 0 0 1 0V9c0-.258-.104-.377-.357-.635l-.007-.008C13.379 8.096 13 7.71 13 7V4a.5.5 0 0 1 .146-.354l.5-.5a.5.5 0 0 1 .708 0l.5.5A.5.5 0 0 1 15 4v8.5a1.5 1.5 0 1 1-3 0V12a1 1 0 0 0-1-1v4h.5a.5.5 0 0 1 0 1H.5a.5.5 0 0 1 0-1H1zm2 .5v5a.5.5 0 0 0 .5.5h5a.5.5 0 0 0 .5-.5v-5a.5.5 0 0 0-.5-.5h-5a.5.5 0 0 0-.5.5m2.631 9.96H4.14v-.893h1.403v-.505H4.14v-.855h1.49v-.54H3.485V13h2.146zm1.316.54h.794l1.106-3.333h-.733l-.74 2.615h-.031l-.747-2.615h-.764z\"},\"child\":[]}]})(props);\n};\nexport function BsEvStation (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3.5 2a.5.5 0 0 0-.5.5v5a.5.5 0 0 0 .5.5h5a.5.5 0 0 0 .5-.5v-5a.5.5 0 0 0-.5-.5zm2.131 10.46H4.14v-.893h1.403v-.505H4.14v-.855h1.49v-.54H3.485V13h2.146zm1.316.54h.794l1.106-3.333h-.733l-.74 2.615h-.031l-.747-2.615h-.764z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3 0a2 2 0 0 0-2 2v13H.5a.5.5 0 0 0 0 1h11a.5.5 0 0 0 0-1H11v-4a1 1 0 0 1 1 1v.5a1.5 1.5 0 0 0 3 0V4a.5.5 0 0 0-.146-.354l-.5-.5a.5.5 0 0 0-.707 0l-.5.5A.5.5 0 0 0 13 4v3c0 .71.38 1.096.636 1.357l.007.008c.253.258.357.377.357.635v3.5a.5.5 0 1 1-1 0V12a2 2 0 0 0-2-2V2a2 2 0 0 0-2-2zm7 2v13H2V2a1 1 0 0 1 1-1h6a1 1 0 0 1 1 1\"},\"child\":[]}]})(props);\n};\nexport function BsExclamationCircleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0M8 4a.905.905 0 0 0-.9.995l.35 3.507a.552.552 0 0 0 1.1 0l.35-3.507A.905.905 0 0 0 8 4m.002 6a1 1 0 1 0 0 2 1 1 0 0 0 0-2\"},\"child\":[]}]})(props);\n};\nexport function BsExclamationCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14m0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M7.002 11a1 1 0 1 1 2 0 1 1 0 0 1-2 0M7.1 4.995a.905.905 0 1 1 1.8 0l-.35 3.507a.552.552 0 0 1-1.1 0z\"},\"child\":[]}]})(props);\n};\nexport function BsExclamationDiamondFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.05.435c-.58-.58-1.52-.58-2.1 0L.436 6.95c-.58.58-.58 1.519 0 2.098l6.516 6.516c.58.58 1.519.58 2.098 0l6.516-6.516c.58-.58.58-1.519 0-2.098zM8 4c.535 0 .954.462.9.995l-.35 3.507a.552.552 0 0 1-1.1 0L7.1 4.995A.905.905 0 0 1 8 4m.002 6a1 1 0 1 1 0 2 1 1 0 0 1 0-2\"},\"child\":[]}]})(props);\n};\nexport function BsExclamationDiamond (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.95.435c.58-.58 1.52-.58 2.1 0l6.515 6.516c.58.58.58 1.519 0 2.098L9.05 15.565c-.58.58-1.519.58-2.098 0L.435 9.05a1.48 1.48 0 0 1 0-2.098zm1.4.7a.495.495 0 0 0-.7 0L1.134 7.65a.495.495 0 0 0 0 .7l6.516 6.516a.495.495 0 0 0 .7 0l6.516-6.516a.495.495 0 0 0 0-.7L8.35 1.134z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M7.002 11a1 1 0 1 1 2 0 1 1 0 0 1-2 0M7.1 4.995a.905.905 0 1 1 1.8 0l-.35 3.507a.552.552 0 0 1-1.1 0z\"},\"child\":[]}]})(props);\n};\nexport function BsExclamationLg (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.005 3.1a1 1 0 1 1 1.99 0l-.388 6.35a.61.61 0 0 1-1.214 0zM7 12a1 1 0 1 1 2 0 1 1 0 0 1-2 0\"},\"child\":[]}]})(props);\n};\nexport function BsExclamationOctagonFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M11.46.146A.5.5 0 0 0 11.107 0H4.893a.5.5 0 0 0-.353.146L.146 4.54A.5.5 0 0 0 0 4.893v6.214a.5.5 0 0 0 .146.353l4.394 4.394a.5.5 0 0 0 .353.146h6.214a.5.5 0 0 0 .353-.146l4.394-4.394a.5.5 0 0 0 .146-.353V4.893a.5.5 0 0 0-.146-.353zM8 4c.535 0 .954.462.9.995l-.35 3.507a.552.552 0 0 1-1.1 0L7.1 4.995A.905.905 0 0 1 8 4m.002 6a1 1 0 1 1 0 2 1 1 0 0 1 0-2\"},\"child\":[]}]})(props);\n};\nexport function BsExclamationOctagon (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M7.002 11a1 1 0 1 1 2 0 1 1 0 0 1-2 0M7.1 4.995a.905.905 0 1 1 1.8 0l-.35 3.507a.552.552 0 0 1-1.1 0z\"},\"child\":[]}]})(props);\n};\nexport function BsExclamationSquareFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm6 4c.535 0 .954.462.9.995l-.35 3.507a.552.552 0 0 1-1.1 0L7.1 4.995A.905.905 0 0 1 8 4m.002 6a1 1 0 1 1 0 2 1 1 0 0 1 0-2\"},\"child\":[]}]})(props);\n};\nexport function BsExclamationSquare (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M14 1a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1zM2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M7.002 11a1 1 0 1 1 2 0 1 1 0 0 1-2 0M7.1 4.995a.905.905 0 1 1 1.8 0l-.35 3.507a.552.552 0 0 1-1.1 0z\"},\"child\":[]}]})(props);\n};\nexport function BsExclamationTriangleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.982 1.566a1.13 1.13 0 0 0-1.96 0L.165 13.233c-.457.778.091 1.767.98 1.767h13.713c.889 0 1.438-.99.98-1.767zM8 5c.535 0 .954.462.9.995l-.35 3.507a.552.552 0 0 1-1.1 0L7.1 5.995A.905.905 0 0 1 8 5m.002 6a1 1 0 1 1 0 2 1 1 0 0 1 0-2\"},\"child\":[]}]})(props);\n};\nexport function BsExclamationTriangle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.938 2.016A.13.13 0 0 1 8.002 2a.13.13 0 0 1 .063.016.15.15 0 0 1 .054.057l6.857 11.667c.036.06.035.124.002.183a.2.2 0 0 1-.054.06.1.1 0 0 1-.066.017H1.146a.1.1 0 0 1-.066-.017.2.2 0 0 1-.054-.06.18.18 0 0 1 .002-.183L7.884 2.073a.15.15 0 0 1 .054-.057m1.044-.45a1.13 1.13 0 0 0-1.96 0L.165 13.233c-.457.778.091 1.767.98 1.767h13.713c.889 0 1.438-.99.98-1.767z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M7.002 12a1 1 0 1 1 2 0 1 1 0 0 1-2 0M7.1 5.995a.905.905 0 1 1 1.8 0l-.35 3.507a.552.552 0 0 1-1.1 0z\"},\"child\":[]}]})(props);\n};\nexport function BsExclamation (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.002 11a1 1 0 1 1 2 0 1 1 0 0 1-2 0M7.1 4.995a.905.905 0 1 1 1.8 0l-.35 3.507a.553.553 0 0 1-1.1 0z\"},\"child\":[]}]})(props);\n};\nexport function BsExclude (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 2a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v2h2a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2v-2H2a2 2 0 0 1-2-2zm12 2H5a1 1 0 0 0-1 1v7h7a1 1 0 0 0 1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsExplicitFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2.5 0A2.5 2.5 0 0 0 0 2.5v11A2.5 2.5 0 0 0 2.5 16h11a2.5 2.5 0 0 0 2.5-2.5v-11A2.5 2.5 0 0 0 13.5 0zm4.326 10.88H10.5V12h-5V4.002h5v1.12H6.826V7.4h3.457v1.073H6.826z\"},\"child\":[]}]})(props);\n};\nexport function BsExplicit (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.826 10.88H10.5V12h-5V4.002h5v1.12H6.826V7.4h3.457v1.073H6.826z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2.5 0A2.5 2.5 0 0 0 0 2.5v11A2.5 2.5 0 0 0 2.5 16h11a2.5 2.5 0 0 0 2.5-2.5v-11A2.5 2.5 0 0 0 13.5 0zM1 2.5A1.5 1.5 0 0 1 2.5 1h11A1.5 1.5 0 0 1 15 2.5v11a1.5 1.5 0 0 1-1.5 1.5h-11A1.5 1.5 0 0 1 1 13.5z\"},\"child\":[]}]})(props);\n};\nexport function BsExposure (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.5 4a.5.5 0 0 0-1 0v2h-2a.5.5 0 0 0 0 1h2v2a.5.5 0 0 0 1 0V7h2a.5.5 0 0 0 0-1h-2zm-3 7a.5.5 0 0 0 0 1h5a.5.5 0 0 0 0-1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8 0a8 8 0 1 0 0 16A8 8 0 0 0 8 0M1 8a7 7 0 1 1 14 0A7 7 0 0 1 1 8\"},\"child\":[]}]})(props);\n};\nexport function BsEyeFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M10.5 8a2.5 2.5 0 1 1-5 0 2.5 2.5 0 0 1 5 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M0 8s3-5.5 8-5.5S16 8 16 8s-3 5.5-8 5.5S0 8 0 8m8 3.5a3.5 3.5 0 1 0 0-7 3.5 3.5 0 0 0 0 7\"},\"child\":[]}]})(props);\n};\nexport function BsEyeSlashFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m10.79 12.912-1.614-1.615a3.5 3.5 0 0 1-4.474-4.474l-2.06-2.06C.938 6.278 0 8 0 8s3 5.5 8 5.5a7 7 0 0 0 2.79-.588M5.21 3.088A7 7 0 0 1 8 2.5c5 0 8 5.5 8 5.5s-.939 1.721-2.641 3.238l-2.062-2.062a3.5 3.5 0 0 0-4.474-4.474z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M5.525 7.646a2.5 2.5 0 0 0 2.829 2.829zm4.95.708-2.829-2.83a2.5 2.5 0 0 1 2.829 2.829zm3.171 6-12-12 .708-.708 12 12z\"},\"child\":[]}]})(props);\n};\nexport function BsEyeSlash (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M13.359 11.238C15.06 9.72 16 8 16 8s-3-5.5-8-5.5a7 7 0 0 0-2.79.588l.77.771A6 6 0 0 1 8 3.5c2.12 0 3.879 1.168 5.168 2.457A13 13 0 0 1 14.828 8q-.086.13-.195.288c-.335.48-.83 1.12-1.465 1.755q-.247.248-.517.486z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M11.297 9.176a3.5 3.5 0 0 0-4.474-4.474l.823.823a2.5 2.5 0 0 1 2.829 2.829zm-2.943 1.299.822.822a3.5 3.5 0 0 1-4.474-4.474l.823.823a2.5 2.5 0 0 0 2.829 2.829\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3.35 5.47q-.27.24-.518.487A13 13 0 0 0 1.172 8l.195.288c.335.48.83 1.12 1.465 1.755C4.121 11.332 5.881 12.5 8 12.5c.716 0 1.39-.133 2.02-.36l.77.772A7 7 0 0 1 8 13.5C3 13.5 0 8 0 8s.939-1.721 2.641-3.238l.708.709zm10.296 8.884-12-12 .708-.708 12 12z\"},\"child\":[]}]})(props);\n};\nexport function BsEye (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8s-3-5.5-8-5.5S0 8 0 8s3 5.5 8 5.5S16 8 16 8M1.173 8a13 13 0 0 1 1.66-2.043C4.12 4.668 5.88 3.5 8 3.5s3.879 1.168 5.168 2.457A13 13 0 0 1 14.828 8q-.086.13-.195.288c-.335.48-.83 1.12-1.465 1.755C11.879 11.332 10.119 12.5 8 12.5s-3.879-1.168-5.168-2.457A13 13 0 0 1 1.172 8z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8 5.5a2.5 2.5 0 1 0 0 5 2.5 2.5 0 0 0 0-5M4.5 8a3.5 3.5 0 1 1 7 0 3.5 3.5 0 0 1-7 0\"},\"child\":[]}]})(props);\n};\nexport function BsEyedropper (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M13.354.646a1.207 1.207 0 0 0-1.708 0L8.5 3.793l-.646-.647a.5.5 0 1 0-.708.708L8.293 5l-7.147 7.146A.5.5 0 0 0 1 12.5v1.793l-.854.853a.5.5 0 1 0 .708.707L1.707 15H3.5a.5.5 0 0 0 .354-.146L11 7.707l1.146 1.147a.5.5 0 0 0 .708-.708l-.647-.646 3.147-3.146a1.207 1.207 0 0 0 0-1.708zM2 12.707l7-7L10.293 7l-7 7H2z\"},\"child\":[]}]})(props);\n};\nexport function BsEyeglasses (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4 6a2 2 0 1 1 0 4 2 2 0 0 1 0-4m2.625.547a3 3 0 0 0-5.584.953H.5a.5.5 0 0 0 0 1h.541A3 3 0 0 0 7 8a1 1 0 0 1 2 0 3 3 0 0 0 5.959.5h.541a.5.5 0 0 0 0-1h-.541a3 3 0 0 0-5.584-.953A2 2 0 0 0 8 6c-.532 0-1.016.208-1.375.547M14 8a2 2 0 1 1-4 0 2 2 0 0 1 4 0\"},\"child\":[]}]})(props);\n};\nexport function BsFacebook (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8.049c0-4.446-3.582-8.05-8-8.05C3.58 0-.002 3.603-.002 8.05c0 4.017 2.926 7.347 6.75 7.951v-5.625h-2.03V8.05H6.75V6.275c0-2.017 1.195-3.131 3.022-3.131.876 0 1.791.157 1.791.157v1.98h-1.009c-.993 0-1.303.621-1.303 1.258v1.51h2.218l-.354 2.326H9.25V16c3.824-.604 6.75-3.934 6.75-7.951\"},\"child\":[]}]})(props);\n};\nexport function BsFan (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M10 3c0 1.313-.304 2.508-.8 3.4a2 2 0 0 0-1.484-.38c-.28-.982-.91-2.04-1.838-2.969a8 8 0 0 0-.491-.454A6 6 0 0 1 8 2c.691 0 1.355.117 1.973.332Q10 2.661 10 3m0 5q0 .11-.012.217c1.018-.019 2.2-.353 3.331-1.006a8 8 0 0 0 .57-.361 6 6 0 0 0-2.53-3.823 9 9 0 0 1-.145.64c-.34 1.269-.944 2.346-1.656 3.079.277.343.442.78.442 1.254m-.137.728a2 2 0 0 1-1.07 1.109c.525.87 1.405 1.725 2.535 2.377q.3.174.605.317a6 6 0 0 0 2.053-4.111q-.311.11-.641.199c-1.264.339-2.493.356-3.482.11ZM8 10c-.45 0-.866-.149-1.2-.4-.494.89-.796 2.082-.796 3.391q0 .346.027.678A6 6 0 0 0 8 14c.94 0 1.83-.216 2.623-.602a8 8 0 0 1-.497-.458c-.925-.926-1.555-1.981-1.836-2.96Q8.149 10 8 10M6 8q0-.12.014-.239c-1.02.017-2.205.351-3.34 1.007a8 8 0 0 0-.568.359 6 6 0 0 0 2.525 3.839 8 8 0 0 1 .148-.653c.34-1.267.94-2.342 1.65-3.075A2 2 0 0 1 6 8m-3.347-.632c1.267-.34 2.498-.355 3.488-.107.196-.494.583-.89 1.07-1.1-.524-.874-1.406-1.733-2.541-2.388a8 8 0 0 0-.594-.312 6 6 0 0 0-2.06 4.106q.309-.11.637-.199M8 9a1 1 0 1 0 0-2 1 1 0 0 0 0 2\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14m0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16\"},\"child\":[]}]})(props);\n};\nexport function BsFastForwardBtnFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 4v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2H2a2 2 0 0 0-2 2m4.271 1.055a.5.5 0 0 1 .52.038L8 7.386V5.5a.5.5 0 0 1 .79-.407l3.5 2.5a.5.5 0 0 1 0 .814l-3.5 2.5A.5.5 0 0 1 8 10.5V8.614l-3.21 2.293A.5.5 0 0 1 4 10.5v-5a.5.5 0 0 1 .271-.445\"},\"child\":[]}]})(props);\n};\nexport function BsFastForwardBtn (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.79 5.093A.5.5 0 0 0 8 5.5v1.886L4.79 5.093A.5.5 0 0 0 4 5.5v5a.5.5 0 0 0 .79.407L8 8.614V10.5a.5.5 0 0 0 .79.407l3.5-2.5a.5.5 0 0 0 0-.814z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M0 4a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm15 0a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1v8a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsFastForwardCircleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 16A8 8 0 1 0 8 0a8 8 0 0 0 0 16M4.79 5.093 8 7.386V5.5a.5.5 0 0 1 .79-.407l3.5 2.5a.5.5 0 0 1 0 .814l-3.5 2.5A.5.5 0 0 1 8 10.5V8.614l-3.21 2.293A.5.5 0 0 1 4 10.5v-5a.5.5 0 0 1 .79-.407\"},\"child\":[]}]})(props);\n};\nexport function BsFastForwardCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14m0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4.271 5.055a.5.5 0 0 1 .52.038L8 7.386V5.5a.5.5 0 0 1 .79-.407l3.5 2.5a.5.5 0 0 1 0 .814l-3.5 2.5A.5.5 0 0 1 8 10.5V8.614l-3.21 2.293A.5.5 0 0 1 4 10.5v-5a.5.5 0 0 1 .271-.445\"},\"child\":[]}]})(props);\n};\nexport function BsFastForwardFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.596 7.304a.802.802 0 0 1 0 1.392l-6.363 3.692C.713 12.69 0 12.345 0 11.692V4.308c0-.653.713-.998 1.233-.696z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M15.596 7.304a.802.802 0 0 1 0 1.392l-6.363 3.692C8.713 12.69 8 12.345 8 11.692V4.308c0-.653.713-.998 1.233-.696z\"},\"child\":[]}]})(props);\n};\nexport function BsFastForward (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.804 8 1 4.633v6.734zm.792-.696a.802.802 0 0 1 0 1.392l-6.363 3.692C.713 12.69 0 12.345 0 11.692V4.308c0-.653.713-.998 1.233-.696z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M14.804 8 9 4.633v6.734zm.792-.696a.802.802 0 0 1 0 1.392l-6.363 3.692C8.713 12.69 8 12.345 8 11.692V4.308c0-.653.713-.998 1.233-.696z\"},\"child\":[]}]})(props);\n};\nexport function BsFeather (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M15.807.531c-.174-.177-.41-.289-.64-.363a3.8 3.8 0 0 0-.833-.15c-.62-.049-1.394 0-2.252.175C10.365.545 8.264 1.415 6.315 3.1S3.147 6.824 2.557 8.523c-.294.847-.44 1.634-.429 2.268.005.316.05.62.154.88q.025.061.056.122A68 68 0 0 0 .08 15.198a.53.53 0 0 0 .157.72.504.504 0 0 0 .705-.16 68 68 0 0 1 2.158-3.26c.285.141.616.195.958.182.513-.02 1.098-.188 1.723-.49 1.25-.605 2.744-1.787 4.303-3.642l1.518-1.55a.53.53 0 0 0 0-.739l-.729-.744 1.311.209a.5.5 0 0 0 .443-.15l.663-.684c.663-.68 1.292-1.325 1.763-1.892.314-.378.585-.752.754-1.107.163-.345.278-.773.112-1.188a.5.5 0 0 0-.112-.172M3.733 11.62C5.385 9.374 7.24 7.215 9.309 5.394l1.21 1.234-1.171 1.196-.027.03c-1.5 1.789-2.891 2.867-3.977 3.393-.544.263-.99.378-1.324.39a1.3 1.3 0 0 1-.287-.018Zm6.769-7.22c1.31-1.028 2.7-1.914 4.172-2.6a7 7 0 0 1-.4.523c-.442.533-1.028 1.134-1.681 1.804l-.51.524zm3.346-3.357C9.594 3.147 6.045 6.8 3.149 10.678c.007-.464.121-1.086.37-1.806.533-1.535 1.65-3.415 3.455-4.976 1.807-1.561 3.746-2.36 5.31-2.68a8 8 0 0 1 1.564-.173\"},\"child\":[]}]})(props);\n};\nexport function BsFeather2 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.5 1.063v9.556L6 8.819V3a2 2 0 0 1 1.5-1.937M8 0a3 3 0 0 0-3 3v6a.5.5 0 0 0 .116.32L7.5 12.181V15.5a.5.5 0 0 0 1 0v-3.319l2.384-2.86A.5.5 0 0 0 11 9V3a3 3 0 0 0-3-3m.5 1.063A2 2 0 0 1 10 3v.293l-1.5 1.5zM10 4.707V8.82l-1.5 1.8V6.207z\"},\"child\":[]}]})(props);\n};\nexport function BsFileArrowDownFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2M8 5a.5.5 0 0 1 .5.5v3.793l1.146-1.147a.5.5 0 0 1 .708.708l-2 2a.5.5 0 0 1-.708 0l-2-2a.5.5 0 1 1 .708-.708L7.5 9.293V5.5A.5.5 0 0 1 8 5\"},\"child\":[]}]})(props);\n};\nexport function BsFileArrowDown (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 5a.5.5 0 0 1 .5.5v3.793l1.146-1.147a.5.5 0 0 1 .708.708l-2 2a.5.5 0 0 1-.708 0l-2-2a.5.5 0 1 1 .708-.708L7.5 9.293V5.5A.5.5 0 0 1 8 5\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm0 1h8a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1\"},\"child\":[]}]})(props);\n};\nexport function BsFileArrowUpFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2M7.5 6.707 6.354 7.854a.5.5 0 1 1-.708-.708l2-2a.5.5 0 0 1 .708 0l2 2a.5.5 0 0 1-.708.708L8.5 6.707V10.5a.5.5 0 0 1-1 0z\"},\"child\":[]}]})(props);\n};\nexport function BsFileArrowUp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 11a.5.5 0 0 0 .5-.5V6.707l1.146 1.147a.5.5 0 0 0 .708-.708l-2-2a.5.5 0 0 0-.708 0l-2 2a.5.5 0 1 0 .708.708L7.5 6.707V10.5a.5.5 0 0 0 .5.5\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm0 1h8a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1\"},\"child\":[]}]})(props);\n};\nexport function BsFileBarGraphFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2m-2 11.5v-6a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v6a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5m-2.5.5a.5.5 0 0 1-.5-.5v-4a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v4a.5.5 0 0 1-.5.5zm-3 0a.5.5 0 0 1-.5-.5v-2a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v2a.5.5 0 0 1-.5.5z\"},\"child\":[]}]})(props);\n};\nexport function BsFileBarGraph (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4.5 12a.5.5 0 0 1-.5-.5v-2a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v2a.5.5 0 0 1-.5.5zm3 0a.5.5 0 0 1-.5-.5v-4a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v4a.5.5 0 0 1-.5.5zm3 0a.5.5 0 0 1-.5-.5v-6a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v6a.5.5 0 0 1-.5.5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm0 1h8a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1\"},\"child\":[]}]})(props);\n};\nexport function BsFileBinaryFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5.526 9.273c-.542 0-.832.563-.832 1.612q0 .133.006.252l1.56-1.143c-.126-.474-.375-.72-.733-.72zm-.732 2.508c.126.472.372.718.732.718.54 0 .83-.563.83-1.614q0-.129-.006-.25z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M12 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2M7.05 10.885c0 1.415-.548 2.206-1.524 2.206C4.548 13.09 4 12.3 4 10.885c0-1.412.548-2.203 1.526-2.203.976 0 1.524.79 1.524 2.203m3.805 1.52V13h-3v-.595h1.181V9.5h-.05l-1.136.747v-.688l1.19-.786h.69v3.633z\"},\"child\":[]}]})(props);\n};\nexport function BsFileBinary (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5.526 13.09c.976 0 1.524-.79 1.524-2.205 0-1.412-.548-2.203-1.524-2.203-.978 0-1.526.79-1.526 2.203 0 1.415.548 2.206 1.526 2.206zm-.832-2.205c0-1.05.29-1.612.832-1.612.358 0 .607.247.733.721L4.7 11.137a7 7 0 0 1-.006-.252m.832 1.614c-.36 0-.606-.246-.732-.718l1.556-1.145q.005.12.005.249c0 1.052-.29 1.614-.829 1.614m5.329.501v-.595H9.73V8.772h-.69l-1.19.786v.688L8.986 9.5h.05v2.906h-1.18V13h3z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm0 1h8a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1\"},\"child\":[]}]})(props);\n};\nexport function BsFileBreakFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4 0h8a2 2 0 0 1 2 2v7H2V2a2 2 0 0 1 2-2M2 12h12v2a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2zM.5 10a.5.5 0 0 0 0 1h15a.5.5 0 0 0 0-1z\"},\"child\":[]}]})(props);\n};\nexport function BsFileBreak (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 10.5a.5.5 0 0 1 .5-.5h15a.5.5 0 0 1 0 1H.5a.5.5 0 0 1-.5-.5M12 0H4a2 2 0 0 0-2 2v7h1V2a1 1 0 0 1 1-1h8a1 1 0 0 1 1 1v7h1V2a2 2 0 0 0-2-2m2 12h-1v2a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1v-2H2v2a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2z\"},\"child\":[]}]})(props);\n};\nexport function BsFileCheckFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2m-1.146 6.854-3 3a.5.5 0 0 1-.708 0l-1.5-1.5a.5.5 0 1 1 .708-.708L7.5 8.793l2.646-2.647a.5.5 0 0 1 .708.708\"},\"child\":[]}]})(props);\n};\nexport function BsFileCheck (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M10.854 6.146a.5.5 0 0 1 0 .708l-3 3a.5.5 0 0 1-.708 0l-1.5-1.5a.5.5 0 1 1 .708-.708L7.5 8.793l2.646-2.647a.5.5 0 0 1 .708 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm0 1h8a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1\"},\"child\":[]}]})(props);\n};\nexport function BsFileCodeFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2M6.646 5.646a.5.5 0 1 1 .708.708L5.707 8l1.647 1.646a.5.5 0 0 1-.708.708l-2-2a.5.5 0 0 1 0-.708zm2.708 0 2 2a.5.5 0 0 1 0 .708l-2 2a.5.5 0 0 1-.708-.708L10.293 8 8.646 6.354a.5.5 0 1 1 .708-.708\"},\"child\":[]}]})(props);\n};\nexport function BsFileCode (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.646 5.646a.5.5 0 1 1 .708.708L5.707 8l1.647 1.646a.5.5 0 0 1-.708.708l-2-2a.5.5 0 0 1 0-.708zm2.708 0a.5.5 0 1 0-.708.708L10.293 8 8.646 9.646a.5.5 0 0 0 .708.708l2-2a.5.5 0 0 0 0-.708z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 2a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2zm10-1H4a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1\"},\"child\":[]}]})(props);\n};\nexport function BsFileDiffFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2M8.5 4.5V6H10a.5.5 0 0 1 0 1H8.5v1.5a.5.5 0 0 1-1 0V7H6a.5.5 0 0 1 0-1h1.5V4.5a.5.5 0 0 1 1 0M6 10h4a.5.5 0 0 1 0 1H6a.5.5 0 0 1 0-1\"},\"child\":[]}]})(props);\n};\nexport function BsFileDiff (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 4a.5.5 0 0 1 .5.5V6H10a.5.5 0 0 1 0 1H8.5v1.5a.5.5 0 0 1-1 0V7H6a.5.5 0 0 1 0-1h1.5V4.5A.5.5 0 0 1 8 4m-2.5 6.5A.5.5 0 0 1 6 10h4a.5.5 0 0 1 0 1H6a.5.5 0 0 1-.5-.5\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 2a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2zm10-1H4a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1\"},\"child\":[]}]})(props);\n};\nexport function BsFileEarmarkArrowDownFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.293 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V4.707A1 1 0 0 0 13.707 4L10 .293A1 1 0 0 0 9.293 0M9.5 3.5v-2l3 3h-2a1 1 0 0 1-1-1m-1 4v3.793l1.146-1.147a.5.5 0 0 1 .708.708l-2 2a.5.5 0 0 1-.708 0l-2-2a.5.5 0 0 1 .708-.708L7.5 11.293V7.5a.5.5 0 0 1 1 0\"},\"child\":[]}]})(props);\n};\nexport function BsFileEarmarkArrowDown (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.5 6.5a.5.5 0 0 0-1 0v3.793L6.354 9.146a.5.5 0 1 0-.708.708l2 2a.5.5 0 0 0 .708 0l2-2a.5.5 0 0 0-.708-.708L8.5 10.293z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M14 14V4.5L9.5 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2M9.5 3A1.5 1.5 0 0 0 11 4.5h2V14a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1h5.5z\"},\"child\":[]}]})(props);\n};\nexport function BsFileEarmarkArrowUpFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.293 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V4.707A1 1 0 0 0 13.707 4L10 .293A1 1 0 0 0 9.293 0M9.5 3.5v-2l3 3h-2a1 1 0 0 1-1-1M6.354 9.854a.5.5 0 0 1-.708-.708l2-2a.5.5 0 0 1 .708 0l2 2a.5.5 0 0 1-.708.708L8.5 8.707V12.5a.5.5 0 0 1-1 0V8.707z\"},\"child\":[]}]})(props);\n};\nexport function BsFileEarmarkArrowUp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.5 11.5a.5.5 0 0 1-1 0V7.707L6.354 8.854a.5.5 0 1 1-.708-.708l2-2a.5.5 0 0 1 .708 0l2 2a.5.5 0 0 1-.708.708L8.5 7.707z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M14 14V4.5L9.5 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2M9.5 3A1.5 1.5 0 0 0 11 4.5h2V14a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1h5.5z\"},\"child\":[]}]})(props);\n};\nexport function BsFileEarmarkBarGraphFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.293 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V4.707A1 1 0 0 0 13.707 4L10 .293A1 1 0 0 0 9.293 0M9.5 3.5v-2l3 3h-2a1 1 0 0 1-1-1m.5 10v-6a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v6a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5m-2.5.5a.5.5 0 0 1-.5-.5v-4a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v4a.5.5 0 0 1-.5.5zm-3 0a.5.5 0 0 1-.5-.5v-2a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v2a.5.5 0 0 1-.5.5z\"},\"child\":[]}]})(props);\n};\nexport function BsFileEarmarkBarGraph (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M10 13.5a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-6a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5zm-2.5.5a.5.5 0 0 1-.5-.5v-4a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v4a.5.5 0 0 1-.5.5zm-3 0a.5.5 0 0 1-.5-.5v-2a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v2a.5.5 0 0 1-.5.5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M14 14V4.5L9.5 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2M9.5 3A1.5 1.5 0 0 0 11 4.5h2V14a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1h5.5z\"},\"child\":[]}]})(props);\n};\nexport function BsFileEarmarkBinaryFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5.526 10.273c-.542 0-.832.563-.832 1.612q0 .133.006.252l1.559-1.143c-.126-.474-.375-.72-.733-.72zm-.732 2.508c.126.472.372.718.732.718.54 0 .83-.563.83-1.614q0-.129-.006-.25z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M9.293 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V4.707A1 1 0 0 0 13.707 4L10 .293A1 1 0 0 0 9.293 0M9.5 3.5v-2l3 3h-2a1 1 0 0 1-1-1m-2.45 8.385c0 1.415-.548 2.206-1.524 2.206C4.548 14.09 4 13.3 4 11.885c0-1.412.548-2.203 1.526-2.203.976 0 1.524.79 1.524 2.203m3.805 1.52V14h-3v-.595h1.181V10.5h-.05l-1.136.747v-.688l1.19-.786h.69v3.633z\"},\"child\":[]}]})(props);\n};\nexport function BsFileEarmarkBinary (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.05 11.885c0 1.415-.548 2.206-1.524 2.206C4.548 14.09 4 13.3 4 11.885c0-1.412.548-2.203 1.526-2.203.976 0 1.524.79 1.524 2.203m-1.524-1.612c-.542 0-.832.563-.832 1.612q0 .133.006.252l1.559-1.143c-.126-.474-.375-.72-.733-.72zm-.732 2.508c.126.472.372.718.732.718.54 0 .83-.563.83-1.614q0-.129-.006-.25zm6.061.624V14h-3v-.595h1.181V10.5h-.05l-1.136.747v-.688l1.19-.786h.69v3.633z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M14 14V4.5L9.5 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2M9.5 3A1.5 1.5 0 0 0 11 4.5h2V14a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1h5.5z\"},\"child\":[]}]})(props);\n};\nexport function BsFileEarmarkBreakFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4 0h5.293A1 1 0 0 1 10 .293L13.707 4a1 1 0 0 1 .293.707V9H2V2a2 2 0 0 1 2-2m5.5 1.5v2a1 1 0 0 0 1 1h2zM2 12h12v2a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2zM.5 10a.5.5 0 0 0 0 1h15a.5.5 0 0 0 0-1z\"},\"child\":[]}]})(props);\n};\nexport function BsFileEarmarkBreak (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M14 4.5V9h-1V4.5h-2A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v7H2V2a2 2 0 0 1 2-2h5.5zM13 12h1v2a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2v-2h1v2a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1zM.5 10a.5.5 0 0 0 0 1h15a.5.5 0 0 0 0-1z\"},\"child\":[]}]})(props);\n};\nexport function BsFileEarmarkCheckFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.293 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V4.707A1 1 0 0 0 13.707 4L10 .293A1 1 0 0 0 9.293 0M9.5 3.5v-2l3 3h-2a1 1 0 0 1-1-1m1.354 4.354-3 3a.5.5 0 0 1-.708 0l-1.5-1.5a.5.5 0 1 1 .708-.708L7.5 9.793l2.646-2.647a.5.5 0 0 1 .708.708\"},\"child\":[]}]})(props);\n};\nexport function BsFileEarmarkCheck (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M10.854 7.854a.5.5 0 0 0-.708-.708L7.5 9.793 6.354 8.646a.5.5 0 1 0-.708.708l1.5 1.5a.5.5 0 0 0 .708 0z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M14 14V4.5L9.5 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2M9.5 3A1.5 1.5 0 0 0 11 4.5h2V14a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1h5.5z\"},\"child\":[]}]})(props);\n};\nexport function BsFileEarmarkCodeFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.293 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V4.707A1 1 0 0 0 13.707 4L10 .293A1 1 0 0 0 9.293 0M9.5 3.5v-2l3 3h-2a1 1 0 0 1-1-1M6.646 7.646a.5.5 0 1 1 .708.708L5.707 10l1.647 1.646a.5.5 0 0 1-.708.708l-2-2a.5.5 0 0 1 0-.708zm2.708 0 2 2a.5.5 0 0 1 0 .708l-2 2a.5.5 0 0 1-.708-.708L10.293 10 8.646 8.354a.5.5 0 1 1 .708-.708\"},\"child\":[]}]})(props);\n};\nexport function BsFileEarmarkCode (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M14 4.5V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2h5.5zm-3 0A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V4.5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8.646 6.646a.5.5 0 0 1 .708 0l2 2a.5.5 0 0 1 0 .708l-2 2a.5.5 0 0 1-.708-.708L10.293 9 8.646 7.354a.5.5 0 0 1 0-.708m-1.292 0a.5.5 0 0 0-.708 0l-2 2a.5.5 0 0 0 0 .708l2 2a.5.5 0 0 0 .708-.708L5.707 9l1.647-1.646a.5.5 0 0 0 0-.708\"},\"child\":[]}]})(props);\n};\nexport function BsFileEarmarkDiffFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.293 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V4.707A1 1 0 0 0 13.707 4L10 .293A1 1 0 0 0 9.293 0M9.5 3.5v-2l3 3h-2a1 1 0 0 1-1-1M8 6a.5.5 0 0 1 .5.5V8H10a.5.5 0 0 1 0 1H8.5v1.5a.5.5 0 0 1-1 0V9H6a.5.5 0 0 1 0-1h1.5V6.5A.5.5 0 0 1 8 6m-2.5 6.5A.5.5 0 0 1 6 12h4a.5.5 0 0 1 0 1H6a.5.5 0 0 1-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsFileEarmarkDiff (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 5a.5.5 0 0 1 .5.5V7H10a.5.5 0 0 1 0 1H8.5v1.5a.5.5 0 0 1-1 0V8H6a.5.5 0 0 1 0-1h1.5V5.5A.5.5 0 0 1 8 5m-2.5 6.5A.5.5 0 0 1 6 11h4a.5.5 0 0 1 0 1H6a.5.5 0 0 1-.5-.5\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M14 14V4.5L9.5 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2M9.5 3A1.5 1.5 0 0 0 11 4.5h2V14a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1h5.5z\"},\"child\":[]}]})(props);\n};\nexport function BsFileEarmarkEaselFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5 7.5a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 .5.5v2a.5.5 0 0 1-.5.5h-5a.5.5 0 0 1-.5-.5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M9.293 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V4.707A1 1 0 0 0 13.707 4L10 .293A1 1 0 0 0 9.293 0M9.5 3.5v-2l3 3h-2a1 1 0 0 1-1-1M8.5 6h2A1.5 1.5 0 0 1 12 7.5v2a1.5 1.5 0 0 1-1.5 1.5h-.473l.447 1.342a.5.5 0 0 1-.948.316L8.973 11H8.5v1a.5.5 0 0 1-1 0v-1h-.473l-.553 1.658a.5.5 0 1 1-.948-.316L5.973 11H5.5A1.5 1.5 0 0 1 4 9.5v-2A1.5 1.5 0 0 1 5.5 6h2a.5.5 0 0 1 1 0\"},\"child\":[]}]})(props);\n};\nexport function BsFileEarmarkEasel (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.5 6a.5.5 0 1 0-1 0h-2A1.5 1.5 0 0 0 4 7.5v2A1.5 1.5 0 0 0 5.5 11h.473l-.447 1.342a.5.5 0 1 0 .948.316L7.027 11H7.5v1a.5.5 0 0 0 1 0v-1h.473l.553 1.658a.5.5 0 1 0 .948-.316L10.027 11h.473A1.5 1.5 0 0 0 12 9.5v-2A1.5 1.5 0 0 0 10.5 6zM5 7.5a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 .5.5v2a.5.5 0 0 1-.5.5h-5a.5.5 0 0 1-.5-.5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M14 14V4.5L9.5 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2M9.5 3A1.5 1.5 0 0 0 11 4.5h2V14a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1h5.5z\"},\"child\":[]}]})(props);\n};\nexport function BsFileEarmarkExcelFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.293 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V4.707A1 1 0 0 0 13.707 4L10 .293A1 1 0 0 0 9.293 0M9.5 3.5v-2l3 3h-2a1 1 0 0 1-1-1M5.884 6.68 8 9.219l2.116-2.54a.5.5 0 1 1 .768.641L8.651 10l2.233 2.68a.5.5 0 0 1-.768.64L8 10.781l-2.116 2.54a.5.5 0 0 1-.768-.641L7.349 10 5.116 7.32a.5.5 0 1 1 .768-.64\"},\"child\":[]}]})(props);\n};\nexport function BsFileEarmarkExcel (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5.884 6.68a.5.5 0 1 0-.768.64L7.349 10l-2.233 2.68a.5.5 0 0 0 .768.64L8 10.781l2.116 2.54a.5.5 0 0 0 .768-.641L8.651 10l2.233-2.68a.5.5 0 0 0-.768-.64L8 9.219l-2.116-2.54z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M14 14V4.5L9.5 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2M9.5 3A1.5 1.5 0 0 0 11 4.5h2V14a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1h5.5z\"},\"child\":[]}]})(props);\n};\nexport function BsFileEarmarkFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4 0h5.293A1 1 0 0 1 10 .293L13.707 4a1 1 0 0 1 .293.707V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2m5.5 1.5v2a1 1 0 0 0 1 1h2z\"},\"child\":[]}]})(props);\n};\nexport function BsFileEarmarkFontFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.293 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V4.707A1 1 0 0 0 13.707 4L10 .293A1 1 0 0 0 9.293 0M9.5 3.5v-2l3 3h-2a1 1 0 0 1-1-1M5.057 6h5.886L11 8h-.5c-.18-1.096-.356-1.192-1.694-1.235l-.298-.01v5.09c0 .47.1.582.903.655v.5H6.59v-.5c.799-.073.898-.184.898-.654V6.755l-.293.01C5.856 6.808 5.68 6.905 5.5 8H5z\"},\"child\":[]}]})(props);\n};\nexport function BsFileEarmarkFont (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M10.943 6H5.057L5 8h.5c.18-1.096.356-1.192 1.694-1.235l.293-.01v5.09c0 .47-.1.582-.898.655v.5H9.41v-.5c-.803-.073-.903-.184-.903-.654V6.755l.298.01c1.338.043 1.514.14 1.694 1.235h.5l-.057-2z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M14 4.5V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2h5.5zm-3 0A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V4.5z\"},\"child\":[]}]})(props);\n};\nexport function BsFileEarmarkImageFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4 0h5.293A1 1 0 0 1 10 .293L13.707 4a1 1 0 0 1 .293.707v5.586l-2.73-2.73a1 1 0 0 0-1.52.127l-1.889 2.644-1.769-1.062a1 1 0 0 0-1.222.15L2 12.292V2a2 2 0 0 1 2-2m5.5 1.5v2a1 1 0 0 0 1 1h2zm-1.498 4a1.5 1.5 0 1 0-3 0 1.5 1.5 0 0 0 3 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M10.564 8.27 14 11.708V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2v-.293l3.578-3.577 2.56 1.536 2.426-3.395z\"},\"child\":[]}]})(props);\n};\nexport function BsFileEarmarkImage (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.502 7a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M14 14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2h5.5L14 4.5zM4 1a1 1 0 0 0-1 1v10l2.224-2.224a.5.5 0 0 1 .61-.075L8 11l2.157-3.02a.5.5 0 0 1 .76-.063L13 10V4.5h-2A1.5 1.5 0 0 1 9.5 3V1z\"},\"child\":[]}]})(props);\n};\nexport function BsFileEarmarkLockFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7 7a1 1 0 0 1 2 0v1H7zM6 9.3c0-.042.02-.107.105-.175A.64.64 0 0 1 6.5 9h3a.64.64 0 0 1 .395.125c.085.068.105.133.105.175v2.4c0 .042-.02.107-.105.175A.64.64 0 0 1 9.5 12h-3a.64.64 0 0 1-.395-.125C6.02 11.807 6 11.742 6 11.7z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M9.293 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V4.707A1 1 0 0 0 13.707 4L10 .293A1 1 0 0 0 9.293 0M9.5 3.5v-2l3 3h-2a1 1 0 0 1-1-1M10 7v1.076c.54.166 1 .597 1 1.224v2.4c0 .816-.781 1.3-1.5 1.3h-3c-.719 0-1.5-.484-1.5-1.3V9.3c0-.627.46-1.058 1-1.224V7a2 2 0 1 1 4 0\"},\"child\":[]}]})(props);\n};\nexport function BsFileEarmarkLock (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M10 7v1.076c.54.166 1 .597 1 1.224v2.4c0 .816-.781 1.3-1.5 1.3h-3c-.719 0-1.5-.484-1.5-1.3V9.3c0-.627.46-1.058 1-1.224V7a2 2 0 1 1 4 0M7 7v1h2V7a1 1 0 0 0-2 0M6 9.3v2.4c0 .042.02.107.105.175A.64.64 0 0 0 6.5 12h3a.64.64 0 0 0 .395-.125c.085-.068.105-.133.105-.175V9.3c0-.042-.02-.107-.105-.175A.64.64 0 0 0 9.5 9h-3a.64.64 0 0 0-.395.125C6.02 9.193 6 9.258 6 9.3\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M14 14V4.5L9.5 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2M9.5 3A1.5 1.5 0 0 0 11 4.5h2V14a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1h5.5z\"},\"child\":[]}]})(props);\n};\nexport function BsFileEarmarkLock2Fill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7 7a1 1 0 0 1 2 0v1H7z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M9.293 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V4.707A1 1 0 0 0 13.707 4L10 .293A1 1 0 0 0 9.293 0M9.5 3.5v-2l3 3h-2a1 1 0 0 1-1-1M10 7v1.076c.54.166 1 .597 1 1.224v2.4c0 .816-.781 1.3-1.5 1.3h-3c-.719 0-1.5-.484-1.5-1.3V9.3c0-.627.46-1.058 1-1.224V7a2 2 0 1 1 4 0\"},\"child\":[]}]})(props);\n};\nexport function BsFileEarmarkLock2 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M10 7v1.076c.54.166 1 .597 1 1.224v2.4c0 .816-.781 1.3-1.5 1.3h-3c-.719 0-1.5-.484-1.5-1.3V9.3c0-.627.46-1.058 1-1.224V7a2 2 0 1 1 4 0M7 7v1h2V7a1 1 0 0 0-2 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M14 14V4.5L9.5 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2M9.5 3A1.5 1.5 0 0 0 11 4.5h2V14a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1h5.5z\"},\"child\":[]}]})(props);\n};\nexport function BsFileEarmarkMedicalFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.293 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V4.707A1 1 0 0 0 13.707 4L10 .293A1 1 0 0 0 9.293 0M9.5 3.5v-2l3 3h-2a1 1 0 0 1-1-1m-3 2v.634l.549-.317a.5.5 0 1 1 .5.866L7 7l.549.317a.5.5 0 1 1-.5.866L6.5 7.866V8.5a.5.5 0 0 1-1 0v-.634l-.549.317a.5.5 0 1 1-.5-.866L5 7l-.549-.317a.5.5 0 0 1 .5-.866l.549.317V5.5a.5.5 0 1 1 1 0m-2 4.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1 0-1m0 2h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1 0-1\"},\"child\":[]}]})(props);\n};\nexport function BsFileEarmarkMedical (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.5 5.5a.5.5 0 0 0-1 0v.634l-.549-.317a.5.5 0 1 0-.5.866L6 7l-.549.317a.5.5 0 1 0 .5.866l.549-.317V8.5a.5.5 0 1 0 1 0v-.634l.549.317a.5.5 0 1 0 .5-.866L8 7l.549-.317a.5.5 0 1 0-.5-.866l-.549.317zm-2 4.5a.5.5 0 0 0 0 1h5a.5.5 0 0 0 0-1zm0 2a.5.5 0 0 0 0 1h5a.5.5 0 0 0 0-1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M14 14V4.5L9.5 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2M9.5 3A1.5 1.5 0 0 0 11 4.5h2V14a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1h5.5z\"},\"child\":[]}]})(props);\n};\nexport function BsFileEarmarkMinusFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.293 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V4.707A1 1 0 0 0 13.707 4L10 .293A1 1 0 0 0 9.293 0M9.5 3.5v-2l3 3h-2a1 1 0 0 1-1-1M6 8.5h4a.5.5 0 0 1 0 1H6a.5.5 0 0 1 0-1\"},\"child\":[]}]})(props);\n};\nexport function BsFileEarmarkMinus (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5.5 9a.5.5 0 0 1 .5-.5h4a.5.5 0 0 1 0 1H6a.5.5 0 0 1-.5-.5\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M14 4.5V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2h5.5zm-3 0A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V4.5z\"},\"child\":[]}]})(props);\n};\nexport function BsFileEarmarkMusicFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.293 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V4.707A1 1 0 0 0 13.707 4L10 .293A1 1 0 0 0 9.293 0M9.5 3.5v-2l3 3h-2a1 1 0 0 1-1-1M11 6.64v1.75l-2 .5v3.61c0 .495-.301.883-.662 1.123C7.974 13.866 7.499 14 7 14s-.974-.134-1.338-.377C5.302 13.383 5 12.995 5 12.5s.301-.883.662-1.123C6.026 11.134 6.501 11 7 11c.356 0 .7.068 1 .196V6.89a1 1 0 0 1 .757-.97l1-.25A1 1 0 0 1 11 6.64\"},\"child\":[]}]})(props);\n};\nexport function BsFileEarmarkMusic (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M11 6.64a1 1 0 0 0-1.243-.97l-1 .25A1 1 0 0 0 8 6.89v4.306A2.6 2.6 0 0 0 7 11c-.5 0-.974.134-1.338.377-.36.24-.662.628-.662 1.123s.301.883.662 1.123c.364.243.839.377 1.338.377s.974-.134 1.338-.377c.36-.24.662-.628.662-1.123V8.89l2-.5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M14 14V4.5L9.5 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2M9.5 3A1.5 1.5 0 0 0 11 4.5h2V14a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1h5.5z\"},\"child\":[]}]})(props);\n};\nexport function BsFileEarmarkPdfFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5.523 12.424q.21-.124.459-.238a8 8 0 0 1-.45.606c-.28.337-.498.516-.635.572l-.035.012a.3.3 0 0 1-.026-.044c-.056-.11-.054-.216.04-.36.106-.165.319-.354.647-.548m2.455-1.647q-.178.037-.356.078a21 21 0 0 0 .5-1.05 12 12 0 0 0 .51.858q-.326.048-.654.114m2.525.939a4 4 0 0 1-.435-.41q.344.007.612.054c.317.057.466.147.518.209a.1.1 0 0 1 .026.064.44.44 0 0 1-.06.2.3.3 0 0 1-.094.124.1.1 0 0 1-.069.015c-.09-.003-.258-.066-.498-.256M8.278 6.97c-.04.244-.108.524-.2.829a5 5 0 0 1-.089-.346c-.076-.353-.087-.63-.046-.822.038-.177.11-.248.196-.283a.5.5 0 0 1 .145-.04c.013.03.028.092.032.198q.008.183-.038.465z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M4 0h5.293A1 1 0 0 1 10 .293L13.707 4a1 1 0 0 1 .293.707V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2m5.5 1.5v2a1 1 0 0 0 1 1h2zM4.165 13.668c.09.18.23.343.438.419.207.075.412.04.58-.03.318-.13.635-.436.926-.786.333-.401.683-.927 1.021-1.51a11.7 11.7 0 0 1 1.997-.406c.3.383.61.713.91.95.28.22.603.403.934.417a.86.86 0 0 0 .51-.138c.155-.101.27-.247.354-.416.09-.181.145-.37.138-.563a.84.84 0 0 0-.2-.518c-.226-.27-.596-.4-.96-.465a5.8 5.8 0 0 0-1.335-.05 11 11 0 0 1-.98-1.686c.25-.66.437-1.284.52-1.794.036-.218.055-.426.048-.614a1.24 1.24 0 0 0-.127-.538.7.7 0 0 0-.477-.365c-.202-.043-.41 0-.601.077-.377.15-.576.47-.651.823-.073.34-.04.736.046 1.136.088.406.238.848.43 1.295a20 20 0 0 1-1.062 2.227 7.7 7.7 0 0 0-1.482.645c-.37.22-.699.48-.897.787-.21.326-.275.714-.08 1.103\"},\"child\":[]}]})(props);\n};\nexport function BsFileEarmarkPdf (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M14 14V4.5L9.5 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2M9.5 3A1.5 1.5 0 0 0 11 4.5h2V14a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1h5.5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4.603 14.087a.8.8 0 0 1-.438-.42c-.195-.388-.13-.776.08-1.102.198-.307.526-.568.897-.787a7.7 7.7 0 0 1 1.482-.645 20 20 0 0 0 1.062-2.227 7.3 7.3 0 0 1-.43-1.295c-.086-.4-.119-.796-.046-1.136.075-.354.274-.672.65-.823.192-.077.4-.12.602-.077a.7.7 0 0 1 .477.365c.088.164.12.356.127.538.007.188-.012.396-.047.614-.084.51-.27 1.134-.52 1.794a11 11 0 0 0 .98 1.686 5.8 5.8 0 0 1 1.334.05c.364.066.734.195.96.465.12.144.193.32.2.518.007.192-.047.382-.138.563a1.04 1.04 0 0 1-.354.416.86.86 0 0 1-.51.138c-.331-.014-.654-.196-.933-.417a5.7 5.7 0 0 1-.911-.95 11.7 11.7 0 0 0-1.997.406 11.3 11.3 0 0 1-1.02 1.51c-.292.35-.609.656-.927.787a.8.8 0 0 1-.58.029m1.379-1.901q-.25.115-.459.238c-.328.194-.541.383-.647.547-.094.145-.096.25-.04.361q.016.032.026.044l.035-.012c.137-.056.355-.235.635-.572a8 8 0 0 0 .45-.606m1.64-1.33a13 13 0 0 1 1.01-.193 12 12 0 0 1-.51-.858 21 21 0 0 1-.5 1.05zm2.446.45q.226.245.435.41c.24.19.407.253.498.256a.1.1 0 0 0 .07-.015.3.3 0 0 0 .094-.125.44.44 0 0 0 .059-.2.1.1 0 0 0-.026-.063c-.052-.062-.2-.152-.518-.209a4 4 0 0 0-.612-.053zM8.078 7.8a7 7 0 0 0 .2-.828q.046-.282.038-.465a.6.6 0 0 0-.032-.198.5.5 0 0 0-.145.04c-.087.035-.158.106-.196.283-.04.192-.03.469.046.822q.036.167.09.346z\"},\"child\":[]}]})(props);\n};\nexport function BsFileEarmarkPersonFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.293 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V4.707A1 1 0 0 0 13.707 4L10 .293A1 1 0 0 0 9.293 0M9.5 3.5v-2l3 3h-2a1 1 0 0 1-1-1M11 8a3 3 0 1 1-6 0 3 3 0 0 1 6 0m2 5.755V14a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1v-.245S4 12 8 12s5 1.755 5 1.755\"},\"child\":[]}]})(props);\n};\nexport function BsFileEarmarkPerson (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M11 8a3 3 0 1 1-6 0 3 3 0 0 1 6 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M14 14V4.5L9.5 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2M9.5 3A1.5 1.5 0 0 0 11 4.5h2v9.255S12 12 8 12s-5 1.755-5 1.755V2a1 1 0 0 1 1-1h5.5z\"},\"child\":[]}]})(props);\n};\nexport function BsFileEarmarkPlayFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.293 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V4.707A1 1 0 0 0 13.707 4L10 .293A1 1 0 0 0 9.293 0M9.5 3.5v-2l3 3h-2a1 1 0 0 1-1-1M6 6.883a.5.5 0 0 1 .757-.429l3.528 2.117a.5.5 0 0 1 0 .858l-3.528 2.117a.5.5 0 0 1-.757-.43V6.884z\"},\"child\":[]}]})(props);\n};\nexport function BsFileEarmarkPlay (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6 6.883v4.234a.5.5 0 0 0 .757.429l3.528-2.117a.5.5 0 0 0 0-.858L6.757 6.454a.5.5 0 0 0-.757.43z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M14 14V4.5L9.5 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2M9.5 3A1.5 1.5 0 0 0 11 4.5h2V14a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1h5.5z\"},\"child\":[]}]})(props);\n};\nexport function BsFileEarmarkPlusFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.293 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V4.707A1 1 0 0 0 13.707 4L10 .293A1 1 0 0 0 9.293 0M9.5 3.5v-2l3 3h-2a1 1 0 0 1-1-1M8.5 7v1.5H10a.5.5 0 0 1 0 1H8.5V11a.5.5 0 0 1-1 0V9.5H6a.5.5 0 0 1 0-1h1.5V7a.5.5 0 0 1 1 0\"},\"child\":[]}]})(props);\n};\nexport function BsFileEarmarkPlus (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 6.5a.5.5 0 0 1 .5.5v1.5H10a.5.5 0 0 1 0 1H8.5V11a.5.5 0 0 1-1 0V9.5H6a.5.5 0 0 1 0-1h1.5V7a.5.5 0 0 1 .5-.5\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M14 4.5V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2h5.5zm-3 0A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V4.5z\"},\"child\":[]}]})(props);\n};\nexport function BsFileEarmarkPostFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.293 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V4.707A1 1 0 0 0 13.707 4L10 .293A1 1 0 0 0 9.293 0M9.5 3.5v-2l3 3h-2a1 1 0 0 1-1-1m-5-.5H7a.5.5 0 0 1 0 1H4.5a.5.5 0 0 1 0-1m0 3h7a.5.5 0 0 1 .5.5v7a.5.5 0 0 1-.5.5h-7a.5.5 0 0 1-.5-.5v-7a.5.5 0 0 1 .5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsFileEarmarkPost (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M14 4.5V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2h5.5zm-3 0A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V4.5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4 6.5a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 .5.5v7a.5.5 0 0 1-.5.5h-7a.5.5 0 0 1-.5-.5zm0-3a.5.5 0 0 1 .5-.5H7a.5.5 0 0 1 0 1H4.5a.5.5 0 0 1-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsFileEarmarkPptFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.188 10H7V6.5h1.188a1.75 1.75 0 1 1 0 3.5\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4 0h5.293A1 1 0 0 1 10 .293L13.707 4a1 1 0 0 1 .293.707V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2m5.5 1.5v2a1 1 0 0 0 1 1h2zM7 5.5a1 1 0 0 0-1 1V13a.5.5 0 0 0 1 0v-2h1.188a2.75 2.75 0 0 0 0-5.5z\"},\"child\":[]}]})(props);\n};\nexport function BsFileEarmarkPpt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7 5.5a1 1 0 0 0-1 1V13a.5.5 0 0 0 1 0v-2h1.188a2.75 2.75 0 0 0 0-5.5zM8.188 10H7V6.5h1.188a1.75 1.75 0 1 1 0 3.5\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M14 4.5V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2h5.5zm-3 0A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V4.5z\"},\"child\":[]}]})(props);\n};\nexport function BsFileEarmarkRichtextFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.293 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V4.707A1 1 0 0 0 13.707 4L10 .293A1 1 0 0 0 9.293 0M9.5 3.5v-2l3 3h-2a1 1 0 0 1-1-1M7 6.25a.75.75 0 1 1-1.5 0 .75.75 0 0 1 1.5 0m-.861 1.542 1.33.886 1.854-1.855a.25.25 0 0 1 .289-.047l1.888.974V9.5a.5.5 0 0 1-.5.5H5a.5.5 0 0 1-.5-.5V9s1.54-1.274 1.639-1.208M5 11h6a.5.5 0 0 1 0 1H5a.5.5 0 0 1 0-1m0 2h3a.5.5 0 0 1 0 1H5a.5.5 0 0 1 0-1\"},\"child\":[]}]})(props);\n};\nexport function BsFileEarmarkRichtext (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M14 4.5V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2h5.5zm-3 0A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V4.5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4.5 12.5A.5.5 0 0 1 5 12h3a.5.5 0 0 1 0 1H5a.5.5 0 0 1-.5-.5m0-2A.5.5 0 0 1 5 10h6a.5.5 0 0 1 0 1H5a.5.5 0 0 1-.5-.5m1.639-3.708 1.33.886 1.854-1.855a.25.25 0 0 1 .289-.047l1.888.974V8.5a.5.5 0 0 1-.5.5H5a.5.5 0 0 1-.5-.5V8s1.54-1.274 1.639-1.208M6.25 6a.75.75 0 1 0 0-1.5.75.75 0 0 0 0 1.5\"},\"child\":[]}]})(props);\n};\nexport function BsFileEarmarkRuledFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.293 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V4.707A1 1 0 0 0 13.707 4L10 .293A1 1 0 0 0 9.293 0M9.5 3.5v-2l3 3h-2a1 1 0 0 1-1-1M3 9h10v1H6v2h7v1H6v2H5v-2H3v-1h2v-2H3z\"},\"child\":[]}]})(props);\n};\nexport function BsFileEarmarkRuled (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M14 14V4.5L9.5 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2M9.5 3A1.5 1.5 0 0 0 11 4.5h2V9H3V2a1 1 0 0 1 1-1h5.5zM3 12v-2h2v2zm0 1h2v2H4a1 1 0 0 1-1-1zm3 2v-2h7v1a1 1 0 0 1-1 1zm7-3H6v-2h7z\"},\"child\":[]}]})(props);\n};\nexport function BsFileEarmarkSlidesFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7 9.78V7.22c0-.096.106-.156.19-.106l2.13 1.279a.125.125 0 0 1 0 .214l-2.13 1.28A.125.125 0 0 1 7 9.778z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M9.293 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V4.707A1 1 0 0 0 13.707 4L10 .293A1 1 0 0 0 9.293 0M9.5 3.5v-2l3 3h-2a1 1 0 0 1-1-1M5 6h6a.5.5 0 0 1 .496.438l.5 4A.5.5 0 0 1 11.5 11h-3v2.016c.863.055 1.5.251 1.5.484 0 .276-.895.5-2 .5s-2-.224-2-.5c0-.233.637-.429 1.5-.484V11h-3a.5.5 0 0 1-.496-.562l.5-4A.5.5 0 0 1 5 6\"},\"child\":[]}]})(props);\n};\nexport function BsFileEarmarkSlides (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5 6a.5.5 0 0 0-.496.438l-.5 4A.5.5 0 0 0 4.5 11h3v2.016c-.863.055-1.5.251-1.5.484 0 .276.895.5 2 .5s2-.224 2-.5c0-.233-.637-.429-1.5-.484V11h3a.5.5 0 0 0 .496-.562l-.5-4A.5.5 0 0 0 11 6zm2 3.78V7.22c0-.096.106-.156.19-.106l2.13 1.279a.125.125 0 0 1 0 .214l-2.13 1.28A.125.125 0 0 1 7 9.778z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M14 14V4.5L9.5 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2M9.5 3A1.5 1.5 0 0 0 11 4.5h2V14a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1h5.5z\"},\"child\":[]}]})(props);\n};\nexport function BsFileEarmarkSpreadsheetFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6 12v-2h3v2z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M9.293 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V4.707A1 1 0 0 0 13.707 4L10 .293A1 1 0 0 0 9.293 0M9.5 3.5v-2l3 3h-2a1 1 0 0 1-1-1M3 9h10v1h-3v2h3v1h-3v2H9v-2H6v2H5v-2H3v-1h2v-2H3z\"},\"child\":[]}]})(props);\n};\nexport function BsFileEarmarkSpreadsheet (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M14 14V4.5L9.5 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2M9.5 3A1.5 1.5 0 0 0 11 4.5h2V9H3V2a1 1 0 0 1 1-1h5.5zM3 12v-2h2v2zm0 1h2v2H4a1 1 0 0 1-1-1zm3 2v-2h3v2zm4 0v-2h3v1a1 1 0 0 1-1 1zm3-3h-3v-2h3zm-7 0v-2h3v2z\"},\"child\":[]}]})(props);\n};\nexport function BsFileEarmarkTextFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.293 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V4.707A1 1 0 0 0 13.707 4L10 .293A1 1 0 0 0 9.293 0M9.5 3.5v-2l3 3h-2a1 1 0 0 1-1-1M4.5 9a.5.5 0 0 1 0-1h7a.5.5 0 0 1 0 1zM4 10.5a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5m.5 2.5a.5.5 0 0 1 0-1h4a.5.5 0 0 1 0 1z\"},\"child\":[]}]})(props);\n};\nexport function BsFileEarmarkText (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5.5 7a.5.5 0 0 0 0 1h5a.5.5 0 0 0 0-1zM5 9.5a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5m0 2a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1-.5-.5\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M9.5 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V4.5zm0 1v2A1.5 1.5 0 0 0 11 4.5h2V14a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsFileEarmarkWordFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.293 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V4.707A1 1 0 0 0 13.707 4L10 .293A1 1 0 0 0 9.293 0M9.5 3.5v-2l3 3h-2a1 1 0 0 1-1-1M5.485 6.879l1.036 4.144.997-3.655a.5.5 0 0 1 .964 0l.997 3.655 1.036-4.144a.5.5 0 0 1 .97.242l-1.5 6a.5.5 0 0 1-.967.01L8 9.402l-1.018 3.73a.5.5 0 0 1-.967-.01l-1.5-6a.5.5 0 1 1 .97-.242z\"},\"child\":[]}]})(props);\n};\nexport function BsFileEarmarkWord (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5.485 6.879a.5.5 0 1 0-.97.242l1.5 6a.5.5 0 0 0 .967.01L8 9.402l1.018 3.73a.5.5 0 0 0 .967-.01l1.5-6a.5.5 0 0 0-.97-.242l-1.036 4.144-.997-3.655a.5.5 0 0 0-.964 0l-.997 3.655L5.485 6.88z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M14 14V4.5L9.5 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2M9.5 3A1.5 1.5 0 0 0 11 4.5h2V14a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1h5.5z\"},\"child\":[]}]})(props);\n};\nexport function BsFileEarmarkXFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.293 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V4.707A1 1 0 0 0 13.707 4L10 .293A1 1 0 0 0 9.293 0M9.5 3.5v-2l3 3h-2a1 1 0 0 1-1-1M6.854 7.146 8 8.293l1.146-1.147a.5.5 0 1 1 .708.708L8.707 9l1.147 1.146a.5.5 0 0 1-.708.708L8 9.707l-1.146 1.147a.5.5 0 0 1-.708-.708L7.293 9 6.146 7.854a.5.5 0 1 1 .708-.708\"},\"child\":[]}]})(props);\n};\nexport function BsFileEarmarkX (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.854 7.146a.5.5 0 1 0-.708.708L7.293 9l-1.147 1.146a.5.5 0 0 0 .708.708L8 9.707l1.146 1.147a.5.5 0 0 0 .708-.708L8.707 9l1.147-1.146a.5.5 0 0 0-.708-.708L8 8.293z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M14 14V4.5L9.5 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2M9.5 3A1.5 1.5 0 0 0 11 4.5h2V14a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1h5.5z\"},\"child\":[]}]})(props);\n};\nexport function BsFileEarmarkZipFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5.5 9.438V8.5h1v.938a1 1 0 0 0 .03.243l.4 1.598-.93.62-.93-.62.4-1.598a1 1 0 0 0 .03-.243\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M9.293 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V4.707A1 1 0 0 0 13.707 4L10 .293A1 1 0 0 0 9.293 0M9.5 3.5v-2l3 3h-2a1 1 0 0 1-1-1m-4-.5V2h-1V1H6v1h1v1H6v1h1v1H6v1h1v1H5.5V6h-1V5h1V4h-1V3zm0 4.5h1a1 1 0 0 1 1 1v.938l.4 1.599a1 1 0 0 1-.416 1.074l-.93.62a1 1 0 0 1-1.109 0l-.93-.62a1 1 0 0 1-.415-1.074l.4-1.599V8.5a1 1 0 0 1 1-1\"},\"child\":[]}]})(props);\n};\nexport function BsFileEarmarkZip (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5 7.5a1 1 0 0 1 1-1h1a1 1 0 0 1 1 1v.938l.4 1.599a1 1 0 0 1-.416 1.074l-.93.62a1 1 0 0 1-1.11 0l-.929-.62a1 1 0 0 1-.415-1.074L5 8.438zm2 0H6v.938a1 1 0 0 1-.03.243l-.4 1.598.93.62.929-.62-.4-1.598A1 1 0 0 1 7 8.438z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M14 4.5V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2h5.5zm-3 0A1.5 1.5 0 0 1 9.5 3V1h-2v1h-1v1h1v1h-1v1h1v1H6V5H5V4h1V3H5V2h1V1H4a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V4.5z\"},\"child\":[]}]})(props);\n};\nexport function BsFileEarmark (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M14 4.5V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2h5.5zm-3 0A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V4.5z\"},\"child\":[]}]})(props);\n};\nexport function BsFileEaselFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5 6.5a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 .5.5v2a.5.5 0 0 1-.5.5h-5a.5.5 0 0 1-.5-.5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M12 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2M8.5 5h2A1.5 1.5 0 0 1 12 6.5v2a1.5 1.5 0 0 1-1.5 1.5h-.473l.447 1.342a.5.5 0 0 1-.948.316L8.973 10H8.5v1a.5.5 0 0 1-1 0v-1h-.473l-.553 1.658a.5.5 0 1 1-.948-.316L5.973 10H5.5A1.5 1.5 0 0 1 4 8.5v-2A1.5 1.5 0 0 1 5.5 5h2a.5.5 0 0 1 1 0\"},\"child\":[]}]})(props);\n};\nexport function BsFileEasel (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.5 5a.5.5 0 1 0-1 0h-2A1.5 1.5 0 0 0 4 6.5v2A1.5 1.5 0 0 0 5.5 10h.473l-.447 1.342a.5.5 0 1 0 .948.316L7.027 10H7.5v1a.5.5 0 0 0 1 0v-1h.473l.553 1.658a.5.5 0 1 0 .948-.316L10.027 10h.473A1.5 1.5 0 0 0 12 8.5v-2A1.5 1.5 0 0 0 10.5 5zM5 6.5a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 .5.5v2a.5.5 0 0 1-.5.5h-5a.5.5 0 0 1-.5-.5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 2a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2zm10-1H4a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1\"},\"child\":[]}]})(props);\n};\nexport function BsFileExcelFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2M5.884 4.68 8 7.219l2.116-2.54a.5.5 0 1 1 .768.641L8.651 8l2.233 2.68a.5.5 0 0 1-.768.64L8 8.781l-2.116 2.54a.5.5 0 0 1-.768-.641L7.349 8 5.116 5.32a.5.5 0 1 1 .768-.64\"},\"child\":[]}]})(props);\n};\nexport function BsFileExcel (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5.18 4.616a.5.5 0 0 1 .704.064L8 7.219l2.116-2.54a.5.5 0 1 1 .768.641L8.651 8l2.233 2.68a.5.5 0 0 1-.768.64L8 8.781l-2.116 2.54a.5.5 0 0 1-.768-.641L7.349 8 5.116 5.32a.5.5 0 0 1 .064-.704\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm0 1h8a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1\"},\"child\":[]}]})(props);\n};\nexport function BsFileFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M4 0h8a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2\"},\"child\":[]}]})(props);\n};\nexport function BsFileFontFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2M5.057 4h5.886L11 6h-.5c-.18-1.096-.356-1.192-1.694-1.235l-.298-.01v6.09c0 .47.1.582.903.655v.5H6.59v-.5c.799-.073.898-.184.898-.654V4.755l-.293.01C5.856 4.808 5.68 4.905 5.5 6H5z\"},\"child\":[]}]})(props);\n};\nexport function BsFileFont (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M10.943 4H5.057L5 6h.5c.18-1.096.356-1.192 1.694-1.235l.293-.01v6.09c0 .47-.1.582-.898.655v.5H9.41v-.5c-.803-.073-.903-.184-.903-.654V4.755l.298.01c1.338.043 1.514.14 1.694 1.235h.5l-.057-2z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm0 1h8a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1\"},\"child\":[]}]})(props);\n};\nexport function BsFileImageFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4 0h8a2 2 0 0 1 2 2v8.293l-2.73-2.73a1 1 0 0 0-1.52.127l-1.889 2.644-1.769-1.062a1 1 0 0 0-1.222.15L2 12.292V2a2 2 0 0 1 2-2m4.002 5.5a1.5 1.5 0 1 0-3 0 1.5 1.5 0 0 0 3 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M10.564 8.27 14 11.708V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2v-.293l3.578-3.577 2.56 1.536 2.426-3.395z\"},\"child\":[]}]})(props);\n};\nexport function BsFileImage (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.002 5.5a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M12 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2M3 2a1 1 0 0 1 1-1h8a1 1 0 0 1 1 1v8l-2.083-2.083a.5.5 0 0 0-.76.063L8 11 5.835 9.7a.5.5 0 0 0-.611.076L3 12z\"},\"child\":[]}]})(props);\n};\nexport function BsFileLockFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7 6a1 1 0 0 1 2 0v1H7zM6 8.3c0-.042.02-.107.105-.175A.64.64 0 0 1 6.5 8h3a.64.64 0 0 1 .395.125c.085.068.105.133.105.175v2.4c0 .042-.02.107-.105.175A.64.64 0 0 1 9.5 11h-3a.64.64 0 0 1-.395-.125C6.02 10.807 6 10.742 6 10.7z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M12 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2m-2 6v1.076c.54.166 1 .597 1 1.224v2.4c0 .816-.781 1.3-1.5 1.3h-3c-.719 0-1.5-.484-1.5-1.3V8.3c0-.627.46-1.058 1-1.224V6a2 2 0 1 1 4 0\"},\"child\":[]}]})(props);\n};\nexport function BsFileLock (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 5a1 1 0 0 1 1 1v1H7V6a1 1 0 0 1 1-1m2 2.076V6a2 2 0 1 0-4 0v1.076c-.54.166-1 .597-1 1.224v2.4c0 .816.781 1.3 1.5 1.3h3c.719 0 1.5-.484 1.5-1.3V8.3c0-.627-.46-1.058-1-1.224M6.105 8.125A.64.64 0 0 1 6.5 8h3a.64.64 0 0 1 .395.125c.085.068.105.133.105.175v2.4c0 .042-.02.107-.105.175A.64.64 0 0 1 9.5 11h-3a.64.64 0 0 1-.395-.125C6.02 10.807 6 10.742 6 10.7V8.3c0-.042.02-.107.105-.175\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm0 1h8a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1\"},\"child\":[]}]})(props);\n};\nexport function BsFileLock2Fill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7 6a1 1 0 0 1 2 0v1H7z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M12 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2m-2 6v1.076c.54.166 1 .597 1 1.224v2.4c0 .816-.781 1.3-1.5 1.3h-3c-.719 0-1.5-.484-1.5-1.3V8.3c0-.627.46-1.058 1-1.224V6a2 2 0 1 1 4 0\"},\"child\":[]}]})(props);\n};\nexport function BsFileLock2 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 5a1 1 0 0 1 1 1v1H7V6a1 1 0 0 1 1-1m2 2.076V6a2 2 0 1 0-4 0v1.076c-.54.166-1 .597-1 1.224v2.4c0 .816.781 1.3 1.5 1.3h3c.719 0 1.5-.484 1.5-1.3V8.3c0-.627-.46-1.058-1-1.224\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm0 1h8a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1\"},\"child\":[]}]})(props);\n};\nexport function BsFileMedicalFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2M8.5 4.5v.634l.549-.317a.5.5 0 1 1 .5.866L9 6l.549.317a.5.5 0 1 1-.5.866L8.5 6.866V7.5a.5.5 0 0 1-1 0v-.634l-.549.317a.5.5 0 1 1-.5-.866L7 6l-.549-.317a.5.5 0 0 1 .5-.866l.549.317V4.5a.5.5 0 1 1 1 0M5.5 9h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1 0-1m0 2h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1 0-1\"},\"child\":[]}]})(props);\n};\nexport function BsFileMedical (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.5 4.5a.5.5 0 0 0-1 0v.634l-.549-.317a.5.5 0 1 0-.5.866L7 6l-.549.317a.5.5 0 1 0 .5.866l.549-.317V7.5a.5.5 0 1 0 1 0v-.634l.549.317a.5.5 0 1 0 .5-.866L9 6l.549-.317a.5.5 0 1 0-.5-.866l-.549.317zM5.5 9a.5.5 0 0 0 0 1h5a.5.5 0 0 0 0-1zm0 2a.5.5 0 0 0 0 1h5a.5.5 0 0 0 0-1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 2a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2zm10-1H4a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1\"},\"child\":[]}]})(props);\n};\nexport function BsFileMinusFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2M6 7.5h4a.5.5 0 0 1 0 1H6a.5.5 0 0 1 0-1\"},\"child\":[]}]})(props);\n};\nexport function BsFileMinus (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5.5 8a.5.5 0 0 1 .5-.5h4a.5.5 0 0 1 0 1H6a.5.5 0 0 1-.5-.5\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm0 1h8a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1\"},\"child\":[]}]})(props);\n};\nexport function BsFileMusicFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2m-.5 4.11v1.8l-2.5.5v5.09c0 .495-.301.883-.662 1.123C7.974 12.866 7.499 13 7 13s-.974-.134-1.338-.377C5.302 12.383 5 11.995 5 11.5s.301-.883.662-1.123C6.026 10.134 6.501 10 7 10c.356 0 .7.068 1 .196V4.41a1 1 0 0 1 .804-.98l1.5-.3a1 1 0 0 1 1.196.98\"},\"child\":[]}]})(props);\n};\nexport function BsFileMusic (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M10.304 3.13a1 1 0 0 1 1.196.98v1.8l-2.5.5v5.09c0 .495-.301.883-.662 1.123C7.974 12.866 7.499 13 7 13s-.974-.134-1.338-.377C5.302 12.383 5 11.995 5 11.5s.301-.883.662-1.123C6.026 10.134 6.501 10 7 10c.356 0 .7.068 1 .196V4.41a1 1 0 0 1 .804-.98z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm0 1h8a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1\"},\"child\":[]}]})(props);\n};\nexport function BsFilePdfFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5.523 10.424q.21-.124.459-.238a8 8 0 0 1-.45.606c-.28.337-.498.516-.635.572l-.035.012a.3.3 0 0 1-.026-.044c-.056-.11-.054-.216.04-.36.106-.165.319-.354.647-.548m2.455-1.647q-.178.037-.356.078a21 21 0 0 0 .5-1.05 12 12 0 0 0 .51.858q-.326.048-.654.114m2.525.939a4 4 0 0 1-.435-.41q.344.007.612.054c.317.057.466.147.518.209a.1.1 0 0 1 .026.064.44.44 0 0 1-.06.2.3.3 0 0 1-.094.124.1.1 0 0 1-.069.015c-.09-.003-.258-.066-.498-.256M8.278 4.97c-.04.244-.108.524-.2.829a5 5 0 0 1-.089-.346c-.076-.353-.087-.63-.046-.822.038-.177.11-.248.196-.283a.5.5 0 0 1 .145-.04c.013.03.028.092.032.198q.008.183-.038.465z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M4 0h8a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2m.165 11.668c.09.18.23.343.438.419.207.075.412.04.58-.03.318-.13.635-.436.926-.786.333-.401.683-.927 1.021-1.51a11.6 11.6 0 0 1 1.997-.406c.3.383.61.713.91.95.28.22.603.403.934.417a.86.86 0 0 0 .51-.138c.155-.101.27-.247.354-.416.09-.181.145-.37.138-.563a.84.84 0 0 0-.2-.518c-.226-.27-.596-.4-.96-.465a5.8 5.8 0 0 0-1.335-.05 11 11 0 0 1-.98-1.686c.25-.66.437-1.284.52-1.794.036-.218.055-.426.048-.614a1.24 1.24 0 0 0-.127-.538.7.7 0 0 0-.477-.365c-.202-.043-.41 0-.601.077-.377.15-.576.47-.651.823-.073.34-.04.736.046 1.136.088.406.238.848.43 1.295a20 20 0 0 1-1.062 2.227 7.7 7.7 0 0 0-1.482.645c-.37.22-.699.48-.897.787-.21.326-.275.714-.08 1.103\"},\"child\":[]}]})(props);\n};\nexport function BsFilePdf (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm0 1h8a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4.603 12.087a.8.8 0 0 1-.438-.42c-.195-.388-.13-.776.08-1.102.198-.307.526-.568.897-.787a7.7 7.7 0 0 1 1.482-.645 20 20 0 0 0 1.062-2.227 7.3 7.3 0 0 1-.43-1.295c-.086-.4-.119-.796-.046-1.136.075-.354.274-.672.65-.823.192-.077.4-.12.602-.077a.7.7 0 0 1 .477.365c.088.164.12.356.127.538.007.187-.012.395-.047.614-.084.51-.27 1.134-.52 1.794a11 11 0 0 0 .98 1.686 5.8 5.8 0 0 1 1.334.05c.364.065.734.195.96.465.12.144.193.32.2.518.007.192-.047.382-.138.563a1.04 1.04 0 0 1-.354.416.86.86 0 0 1-.51.138c-.331-.014-.654-.196-.933-.417a5.7 5.7 0 0 1-.911-.95 11.6 11.6 0 0 0-1.997.406 11.3 11.3 0 0 1-1.021 1.51c-.29.35-.608.655-.926.787a.8.8 0 0 1-.58.029m1.379-1.901q-.25.115-.459.238c-.328.194-.541.383-.647.547-.094.145-.096.25-.04.361q.016.032.026.044l.035-.012c.137-.056.355-.235.635-.572a8 8 0 0 0 .45-.606m1.64-1.33a13 13 0 0 1 1.01-.193 12 12 0 0 1-.51-.858 21 21 0 0 1-.5 1.05zm2.446.45q.226.244.435.41c.24.19.407.253.498.256a.1.1 0 0 0 .07-.015.3.3 0 0 0 .094-.125.44.44 0 0 0 .059-.2.1.1 0 0 0-.026-.063c-.052-.062-.2-.152-.518-.209a4 4 0 0 0-.612-.053zM8.078 5.8a7 7 0 0 0 .2-.828q.046-.282.038-.465a.6.6 0 0 0-.032-.198.5.5 0 0 0-.145.04c-.087.035-.158.106-.196.283-.04.192-.03.469.046.822q.036.167.09.346z\"},\"child\":[]}]})(props);\n};\nexport function BsFilePersonFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2m-1 7a3 3 0 1 1-6 0 3 3 0 0 1 6 0m-3 4c2.623 0 4.146.826 5 1.755V14a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1v-1.245C3.854 11.825 5.377 11 8 11\"},\"child\":[]}]})(props);\n};\nexport function BsFilePerson (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12 1a1 1 0 0 1 1 1v10.755S12 11 8 11s-5 1.755-5 1.755V2a1 1 0 0 1 1-1zM4 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8 10a3 3 0 1 0 0-6 3 3 0 0 0 0 6\"},\"child\":[]}]})(props);\n};\nexport function BsFilePlayFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2M6 5.883a.5.5 0 0 1 .757-.429l3.528 2.117a.5.5 0 0 1 0 .858l-3.528 2.117a.5.5 0 0 1-.757-.43V5.884z\"},\"child\":[]}]})(props);\n};\nexport function BsFilePlay (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6 10.117V5.883a.5.5 0 0 1 .757-.429l3.528 2.117a.5.5 0 0 1 0 .858l-3.528 2.117a.5.5 0 0 1-.757-.43z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm0 1h8a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1\"},\"child\":[]}]})(props);\n};\nexport function BsFilePlusFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2M8.5 6v1.5H10a.5.5 0 0 1 0 1H8.5V10a.5.5 0 0 1-1 0V8.5H6a.5.5 0 0 1 0-1h1.5V6a.5.5 0 0 1 1 0\"},\"child\":[]}]})(props);\n};\nexport function BsFilePlus (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.5 6a.5.5 0 0 0-1 0v1.5H6a.5.5 0 0 0 0 1h1.5V10a.5.5 0 0 0 1 0V8.5H10a.5.5 0 0 0 0-1H8.5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 2a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2zm10-1H4a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1\"},\"child\":[]}]})(props);\n};\nexport function BsFilePostFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2M4.5 3h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1 0-1m0 2h7a.5.5 0 0 1 .5.5v8a.5.5 0 0 1-.5.5h-7a.5.5 0 0 1-.5-.5v-8a.5.5 0 0 1 .5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsFilePost (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4 3.5a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5m0 2a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 .5.5v8a.5.5 0 0 1-.5.5h-7a.5.5 0 0 1-.5-.5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 2a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2zm10-1H4a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1\"},\"child\":[]}]})(props);\n};\nexport function BsFilePptFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.188 8.5H7V5h1.188a1.75 1.75 0 1 1 0 3.5\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4 0h8a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2m3 4a1 1 0 0 0-1 1v6.5a.5.5 0 0 0 1 0v-2h1.188a2.75 2.75 0 0 0 0-5.5z\"},\"child\":[]}]})(props);\n};\nexport function BsFilePpt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 2a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2zm10-1H4a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M6 5a1 1 0 0 1 1-1h1.188a2.75 2.75 0 0 1 0 5.5H7v2a.5.5 0 0 1-1 0zm1 3.5h1.188a1.75 1.75 0 1 0 0-3.5H7z\"},\"child\":[]}]})(props);\n};\nexport function BsFileRichtextFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2M7 4.25a.75.75 0 1 1-1.5 0 .75.75 0 0 1 1.5 0m-.861 1.542 1.33.886 1.854-1.855a.25.25 0 0 1 .289-.047l1.888.974V7.5a.5.5 0 0 1-.5.5H5a.5.5 0 0 1-.5-.5V7s1.54-1.274 1.639-1.208M5 9h6a.5.5 0 0 1 0 1H5a.5.5 0 0 1 0-1m0 2h3a.5.5 0 0 1 0 1H5a.5.5 0 0 1 0-1\"},\"child\":[]}]})(props);\n};\nexport function BsFileRichtext (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7 4.25a.75.75 0 1 1-1.5 0 .75.75 0 0 1 1.5 0m-.861 1.542 1.33.886 1.854-1.855a.25.25 0 0 1 .289-.047l1.888.974V7.5a.5.5 0 0 1-.5.5H5a.5.5 0 0 1-.5-.5V7s1.54-1.274 1.639-1.208M5 9a.5.5 0 0 0 0 1h6a.5.5 0 0 0 0-1zm0 2a.5.5 0 0 0 0 1h3a.5.5 0 0 0 0-1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 2a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2zm10-1H4a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1\"},\"child\":[]}]})(props);\n};\nexport function BsFileRuledFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12 0H4a2 2 0 0 0-2 2v4h12V2a2 2 0 0 0-2-2m2 7H6v2h8zm0 3H6v2h8zm0 3H6v3h6a2 2 0 0 0 2-2zm-9 3v-3H2v1a2 2 0 0 0 2 2zm-3-4h3v-2H2zm0-3h3V7H2z\"},\"child\":[]}]})(props);\n};\nexport function BsFileRuled (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 2a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2zm2-1a1 1 0 0 0-1 1v4h10V2a1 1 0 0 0-1-1zm9 6H6v2h7zm0 3H6v2h7zm0 3H6v2h6a1 1 0 0 0 1-1zm-8 2v-2H3v1a1 1 0 0 0 1 1zm-2-3h2v-2H3zm0-3h2V7H3z\"},\"child\":[]}]})(props);\n};\nexport function BsFileSlidesFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7 7.78V5.22c0-.096.106-.156.19-.106l2.13 1.279a.125.125 0 0 1 0 .214l-2.13 1.28A.125.125 0 0 1 7 7.778z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M12 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2M5 4h6a.5.5 0 0 1 .496.438l.5 4A.5.5 0 0 1 11.5 9h-3v2.016c.863.055 1.5.251 1.5.484 0 .276-.895.5-2 .5s-2-.224-2-.5c0-.233.637-.429 1.5-.484V9h-3a.5.5 0 0 1-.496-.562l.5-4A.5.5 0 0 1 5 4\"},\"child\":[]}]})(props);\n};\nexport function BsFileSlides (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5 4a.5.5 0 0 0-.496.438l-.5 4A.5.5 0 0 0 4.5 9h3v2.016c-.863.055-1.5.251-1.5.484 0 .276.895.5 2 .5s2-.224 2-.5c0-.233-.637-.429-1.5-.484V9h3a.5.5 0 0 0 .496-.562l-.5-4A.5.5 0 0 0 11 4zm2 3.78V5.22c0-.096.106-.156.19-.106l2.13 1.279a.125.125 0 0 1 0 .214l-2.13 1.28A.125.125 0 0 1 7 7.778z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 2a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2zm10-1H4a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1\"},\"child\":[]}]})(props);\n};\nexport function BsFileSpreadsheetFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12 0H4a2 2 0 0 0-2 2v4h12V2a2 2 0 0 0-2-2m2 7h-4v2h4zm0 3h-4v2h4zm0 3h-4v3h2a2 2 0 0 0 2-2zm-5 3v-3H6v3zm-4 0v-3H2v1a2 2 0 0 0 2 2zm-3-4h3v-2H2zm0-3h3V7H2zm4 0V7h3v2zm0 1h3v2H6z\"},\"child\":[]}]})(props);\n};\nexport function BsFileSpreadsheet (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 2a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2zm2-1a1 1 0 0 0-1 1v4h10V2a1 1 0 0 0-1-1zm9 6h-3v2h3zm0 3h-3v2h3zm0 3h-3v2h2a1 1 0 0 0 1-1zm-4 2v-2H6v2zm-4 0v-2H3v1a1 1 0 0 0 1 1zm-2-3h2v-2H3zm0-3h2V7H3zm3-2v2h3V7zm3 3H6v2h3z\"},\"child\":[]}]})(props);\n};\nexport function BsFileTextFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2M5 4h6a.5.5 0 0 1 0 1H5a.5.5 0 0 1 0-1m-.5 2.5A.5.5 0 0 1 5 6h6a.5.5 0 0 1 0 1H5a.5.5 0 0 1-.5-.5M5 8h6a.5.5 0 0 1 0 1H5a.5.5 0 0 1 0-1m0 2h3a.5.5 0 0 1 0 1H5a.5.5 0 0 1 0-1\"},\"child\":[]}]})(props);\n};\nexport function BsFileText (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5 4a.5.5 0 0 0 0 1h6a.5.5 0 0 0 0-1zm-.5 2.5A.5.5 0 0 1 5 6h6a.5.5 0 0 1 0 1H5a.5.5 0 0 1-.5-.5M5 8a.5.5 0 0 0 0 1h6a.5.5 0 0 0 0-1zm0 2a.5.5 0 0 0 0 1h3a.5.5 0 0 0 0-1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 2a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2zm10-1H4a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1\"},\"child\":[]}]})(props);\n};\nexport function BsFileWordFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2M5.485 4.879l1.036 4.144.997-3.655a.5.5 0 0 1 .964 0l.997 3.655 1.036-4.144a.5.5 0 0 1 .97.242l-1.5 6a.5.5 0 0 1-.967.01L8 7.402l-1.018 3.73a.5.5 0 0 1-.967-.01l-1.5-6a.5.5 0 1 1 .97-.242z\"},\"child\":[]}]})(props);\n};\nexport function BsFileWord (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4.879 4.515a.5.5 0 0 1 .606.364l1.036 4.144.997-3.655a.5.5 0 0 1 .964 0l.997 3.655 1.036-4.144a.5.5 0 0 1 .97.242l-1.5 6a.5.5 0 0 1-.967.01L8 7.402l-1.018 3.73a.5.5 0 0 1-.967-.01l-1.5-6a.5.5 0 0 1 .364-.606z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm0 1h8a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1\"},\"child\":[]}]})(props);\n};\nexport function BsFileXFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2M6.854 6.146 8 7.293l1.146-1.147a.5.5 0 1 1 .708.708L8.707 8l1.147 1.146a.5.5 0 0 1-.708.708L8 8.707 6.854 9.854a.5.5 0 0 1-.708-.708L7.293 8 6.146 6.854a.5.5 0 1 1 .708-.708\"},\"child\":[]}]})(props);\n};\nexport function BsFileX (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.146 6.146a.5.5 0 0 1 .708 0L8 7.293l1.146-1.147a.5.5 0 1 1 .708.708L8.707 8l1.147 1.146a.5.5 0 0 1-.708.708L8 8.707 6.854 9.854a.5.5 0 0 1-.708-.708L7.293 8 6.146 6.854a.5.5 0 0 1 0-.708\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm0 1h8a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1\"},\"child\":[]}]})(props);\n};\nexport function BsFileZipFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.5 9.438V8.5h-1v.938a1 1 0 0 1-.03.243l-.4 1.598.93.62.93-.62-.4-1.598a1 1 0 0 1-.03-.243\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4 0h8a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2m2.5 8.5v.938l-.4 1.599a1 1 0 0 0 .416 1.074l.93.62a1 1 0 0 0 1.109 0l.93-.62a1 1 0 0 0 .415-1.074l-.4-1.599V8.5a1 1 0 0 0-1-1h-1a1 1 0 0 0-1 1m1-5.5h-1v1h1v1h-1v1h1v1H9V6H8V5h1V4H8V3h1V2H8V1H6.5v1h1z\"},\"child\":[]}]})(props);\n};\nexport function BsFileZip (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.5 7.5a1 1 0 0 1 1-1h1a1 1 0 0 1 1 1v.938l.4 1.599a1 1 0 0 1-.416 1.074l-.93.62a1 1 0 0 1-1.109 0l-.93-.62a1 1 0 0 1-.415-1.074l.4-1.599zm2 0h-1v.938a1 1 0 0 1-.03.243l-.4 1.598.93.62.93-.62-.4-1.598a1 1 0 0 1-.03-.243z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 2a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2zm5.5-1H4a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H9v1H8v1h1v1H8v1h1v1H7.5V5h-1V4h1V3h-1V2h1z\"},\"child\":[]}]})(props);\n};\nexport function BsFile (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm0 1h8a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1\"},\"child\":[]}]})(props);\n};\nexport function BsFilesAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M11 0H3a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2 2 2 0 0 0 2-2V4a2 2 0 0 0-2-2 2 2 0 0 0-2-2m2 3a1 1 0 0 1 1 1v8a1 1 0 0 1-1 1zM2 2a1 1 0 0 1 1-1h8a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsFiles (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M13 0H6a2 2 0 0 0-2 2 2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h7a2 2 0 0 0 2-2 2 2 0 0 0 2-2V2a2 2 0 0 0-2-2m0 13V4a2 2 0 0 0-2-2H5a1 1 0 0 1 1-1h7a1 1 0 0 1 1 1v10a1 1 0 0 1-1 1M3 4a1 1 0 0 1 1-1h7a1 1 0 0 1 1 1v10a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsFiletypeAac (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M14 4.5V14a2 2 0 0 1-2 2v-1a1 1 0 0 0 1-1V4.5h-2A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v9H2V2a2 2 0 0 1 2-2h5.5zm-5.808 8.554a1.7 1.7 0 0 0-.103.633v.495q0 .369.103.627a.83.83 0 0 0 .299.393.85.85 0 0 0 .477.131.9.9 0 0 0 .402-.088.7.7 0 0 0 .272-.248.8.8 0 0 0 .117-.364h.765v.076a1.27 1.27 0 0 1-.226.674q-.204.29-.55.454a1.8 1.8 0 0 1-.785.164q-.54 0-.915-.216a1.4 1.4 0 0 1-.57-.627q-.195-.408-.194-.976v-.498q0-.568.196-.978.195-.411.571-.633.378-.223.912-.223.327 0 .606.097.28.093.49.272a1.33 1.33 0 0 1 .465.964v.073h-.765a.85.85 0 0 0-.12-.38.7.7 0 0 0-.272-.261.8.8 0 0 0-.399-.097.8.8 0 0 0-.474.138.87.87 0 0 0-.302.398M.8 15.925l.313-1.028H2.45l.314 1.028h.84l-1.335-3.999h-.926l-1.342 4zm1.002-3.234.489 1.617H1.277l.49-1.617zm2.63 3.234.313-1.028H6.08l.313 1.028h.841L5.9 11.926h-.926l-1.341 4zm1.001-3.234.49 1.617H4.909l.49-1.617z\"},\"child\":[]}]})(props);\n};\nexport function BsFiletypeAi (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M14 4.5V14a2 2 0 0 1-2 2H6v-1h6a1 1 0 0 0 1-1V4.5h-2A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v9H2V2a2 2 0 0 1 2-2h5.5zM1.113 14.82.8 15.85H0l1.342-3.999h.926l1.336 3.999h-.841l-.314-1.028H1.113Zm1.178-.588-.49-1.617h-.034l-.49 1.617zm2.425-2.382v3.999h-.791V11.85h.79Z\"},\"child\":[]}]})(props);\n};\nexport function BsFiletypeBmp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M14 4.5V14a2 2 0 0 1-2 2v-1a1 1 0 0 0 1-1V4.5h-2A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v9H2V2a2 2 0 0 1 2-2h5.5zM0 15.849h1.664q.408 0 .72-.132.315-.135.493-.386.18-.253.179-.61a1 1 0 0 0-.123-.51.85.85 0 0 0-.323-.325 1.1 1.1 0 0 0-.445-.14v-.036a1 1 0 0 0 .352-.16.8.8 0 0 0 .243-.294.9.9 0 0 0 .09-.422q0-.463-.322-.723-.322-.261-.858-.261H0zm.785-3.404h.7q.28 0 .431.14.155.138.155.384a.5.5 0 0 1-.082.296.5.5 0 0 1-.249.185 1.2 1.2 0 0 1-.433.064H.785zm0 1.62h.75q.231 0 .393.073a.5.5 0 0 1 .24.211.6.6 0 0 1 .082.325q0 .284-.205.434-.205.146-.671.146H.785zm3.474 1.784v-2.66h.038l.952 2.16h.515l.947-2.16h.038v2.66h.715V11.85h-.8l-1.14 2.596h-.026l-1.14-2.596h-.805v3.999zm3.918-3.999h1.6q.434 0 .732.179.302.176.46.477.159.302.159.677t-.162.677q-.158.299-.462.474a1.45 1.45 0 0 1-.733.173h-.803v1.342h-.79zm2.06 1.714a.8.8 0 0 0 .085-.381q0-.34-.185-.521-.185-.182-.512-.182h-.66v1.406h.66a.8.8 0 0 0 .375-.082.57.57 0 0 0 .237-.24\"},\"child\":[]}]})(props);\n};\nexport function BsFiletypeCs (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M14 4.5V14a2 2 0 0 1-2 2H8v-1h4a1 1 0 0 0 1-1V4.5h-2A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v9H2V2a2 2 0 0 1 2-2h5.5zM3.629 15.29a1.2 1.2 0 0 1-.112-.449h.765a.58.58 0 0 0 .255.384q.105.073.249.114t.32.041q.245 0 .412-.07a.56.56 0 0 0 .255-.193.5.5 0 0 0 .085-.29.39.39 0 0 0-.152-.326q-.153-.12-.463-.193l-.618-.143a1.7 1.7 0 0 1-.54-.214 1 1 0 0 1-.35-.367 1.1 1.1 0 0 1-.124-.524q0-.366.19-.639.191-.272.528-.422t.776-.149q.458 0 .78.152.324.153.5.41.18.255.2.566h-.75a.56.56 0 0 0-.12-.258.6.6 0 0 0-.246-.181.9.9 0 0 0-.37-.068q-.324 0-.512.152a.47.47 0 0 0-.185.384q0 .18.144.3a1 1 0 0 0 .404.175l.621.143q.325.075.566.211t.375.358.134.56q0 .37-.187.656a1.2 1.2 0 0 1-.54.439q-.351.158-.858.158a2.2 2.2 0 0 1-.665-.09 1.4 1.4 0 0 1-.477-.252 1.1 1.1 0 0 1-.29-.375m-2.72-2.23a1.7 1.7 0 0 0-.103.633v.495q0 .369.102.627a.83.83 0 0 0 .299.392.85.85 0 0 0 .478.132.86.86 0 0 0 .4-.088.7.7 0 0 0 .273-.249.8.8 0 0 0 .118-.363h.764v.076a1.27 1.27 0 0 1-.225.674q-.205.29-.551.454a1.8 1.8 0 0 1-.785.164q-.54 0-.914-.217a1.4 1.4 0 0 1-.572-.626Q0 14.756 0 14.188v-.498q0-.569.196-.979a1.44 1.44 0 0 1 .572-.633q.378-.222.91-.222.33 0 .607.097.281.093.49.272a1.32 1.32 0 0 1 .465.964v.073h-.764a.85.85 0 0 0-.12-.38.7.7 0 0 0-.273-.261.8.8 0 0 0-.398-.097.8.8 0 0 0-.475.138.87.87 0 0 0-.302.398Z\"},\"child\":[]}]})(props);\n};\nexport function BsFiletypeCss (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M14 4.5V14a2 2 0 0 1-2 2h-1v-1h1a1 1 0 0 0 1-1V4.5h-2A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v9H2V2a2 2 0 0 1 2-2h5.5zM3.397 14.841a1.13 1.13 0 0 0 .401.823q.195.162.478.252.284.091.665.091.507 0 .859-.158.354-.158.539-.44.187-.284.187-.656 0-.336-.134-.56a1 1 0 0 0-.375-.357 2 2 0 0 0-.566-.21l-.621-.144a1 1 0 0 1-.404-.176.37.37 0 0 1-.144-.299q0-.234.185-.384.188-.152.512-.152.214 0 .37.068a.6.6 0 0 1 .246.181.56.56 0 0 1 .12.258h.75a1.1 1.1 0 0 0-.2-.566 1.2 1.2 0 0 0-.5-.41 1.8 1.8 0 0 0-.78-.152q-.439 0-.776.15-.337.149-.527.421-.19.273-.19.639 0 .302.122.524.124.223.352.367.228.143.539.213l.618.144q.31.073.463.193a.39.39 0 0 1 .152.326.5.5 0 0 1-.085.29.56.56 0 0 1-.255.193q-.167.07-.413.07-.175 0-.32-.04a.8.8 0 0 1-.248-.115.58.58 0 0 1-.255-.384zM.806 13.693q0-.373.102-.633a.87.87 0 0 1 .302-.399.8.8 0 0 1 .475-.137q.225 0 .398.097a.7.7 0 0 1 .272.26.85.85 0 0 1 .12.381h.765v-.072a1.33 1.33 0 0 0-.466-.964 1.4 1.4 0 0 0-.489-.272 1.8 1.8 0 0 0-.606-.097q-.534 0-.911.223-.375.222-.572.632-.195.41-.196.979v.498q0 .568.193.976.197.407.572.626.375.217.914.217.439 0 .785-.164t.55-.454a1.27 1.27 0 0 0 .226-.674v-.076h-.764a.8.8 0 0 1-.118.363.7.7 0 0 1-.272.25.9.9 0 0 1-.401.087.85.85 0 0 1-.478-.132.83.83 0 0 1-.299-.392 1.7 1.7 0 0 1-.102-.627zM6.78 15.29a1.2 1.2 0 0 1-.111-.449h.764a.58.58 0 0 0 .255.384q.106.073.25.114.142.041.319.041.245 0 .413-.07a.56.56 0 0 0 .255-.193.5.5 0 0 0 .085-.29.39.39 0 0 0-.153-.326q-.152-.12-.463-.193l-.618-.143a1.7 1.7 0 0 1-.539-.214 1 1 0 0 1-.351-.367 1.1 1.1 0 0 1-.123-.524q0-.366.19-.639.19-.272.527-.422t.777-.149q.456 0 .779.152.326.153.5.41.18.255.2.566h-.75a.56.56 0 0 0-.12-.258.6.6 0 0 0-.246-.181.9.9 0 0 0-.37-.068q-.324 0-.512.152a.47.47 0 0 0-.184.384q0 .18.143.3a1 1 0 0 0 .404.175l.621.143q.326.075.566.211t.375.358.135.56q0 .37-.188.656a1.2 1.2 0 0 1-.539.439q-.351.158-.858.158-.381 0-.665-.09a1.4 1.4 0 0 1-.478-.252 1.1 1.1 0 0 1-.29-.375\"},\"child\":[]}]})(props);\n};\nexport function BsFiletypeCsv (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M14 4.5V14a2 2 0 0 1-2 2h-1v-1h1a1 1 0 0 0 1-1V4.5h-2A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v9H2V2a2 2 0 0 1 2-2h5.5zM3.517 14.841a1.13 1.13 0 0 0 .401.823q.195.162.478.252.284.091.665.091.507 0 .859-.158.354-.158.539-.44.187-.284.187-.656 0-.336-.134-.56a1 1 0 0 0-.375-.357 2 2 0 0 0-.566-.21l-.621-.144a1 1 0 0 1-.404-.176.37.37 0 0 1-.144-.299q0-.234.185-.384.188-.152.512-.152.214 0 .37.068a.6.6 0 0 1 .246.181.56.56 0 0 1 .12.258h.75a1.1 1.1 0 0 0-.2-.566 1.2 1.2 0 0 0-.5-.41 1.8 1.8 0 0 0-.78-.152q-.439 0-.776.15-.337.149-.527.421-.19.273-.19.639 0 .302.122.524.124.223.352.367.228.143.539.213l.618.144q.31.073.463.193a.39.39 0 0 1 .152.326.5.5 0 0 1-.085.29.56.56 0 0 1-.255.193q-.167.07-.413.07-.175 0-.32-.04a.8.8 0 0 1-.248-.115.58.58 0 0 1-.255-.384zM.806 13.693q0-.373.102-.633a.87.87 0 0 1 .302-.399.8.8 0 0 1 .475-.137q.225 0 .398.097a.7.7 0 0 1 .272.26.85.85 0 0 1 .12.381h.765v-.072a1.33 1.33 0 0 0-.466-.964 1.4 1.4 0 0 0-.489-.272 1.8 1.8 0 0 0-.606-.097q-.534 0-.911.223-.375.222-.572.632-.195.41-.196.979v.498q0 .568.193.976.197.407.572.626.375.217.914.217.439 0 .785-.164t.55-.454a1.27 1.27 0 0 0 .226-.674v-.076h-.764a.8.8 0 0 1-.118.363.7.7 0 0 1-.272.25.9.9 0 0 1-.401.087.85.85 0 0 1-.478-.132.83.83 0 0 1-.299-.392 1.7 1.7 0 0 1-.102-.627zm8.239 2.238h-.953l-1.338-3.999h.917l.896 3.138h.038l.888-3.138h.879z\"},\"child\":[]}]})(props);\n};\nexport function BsFiletypeDoc (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M14 4.5V14a2 2 0 0 1-2 2v-1a1 1 0 0 0 1-1V4.5h-2A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v9H2V2a2 2 0 0 1 2-2h5.5zm-7.839 9.166v.522q0 .384-.117.641a.86.86 0 0 1-.322.387.9.9 0 0 1-.469.126.9.9 0 0 1-.471-.126.87.87 0 0 1-.32-.386 1.55 1.55 0 0 1-.117-.642v-.522q0-.386.117-.641a.87.87 0 0 1 .32-.387.87.87 0 0 1 .471-.129q.264 0 .469.13a.86.86 0 0 1 .322.386q.117.255.117.641m.803.519v-.513q0-.565-.205-.972a1.46 1.46 0 0 0-.589-.63q-.381-.22-.917-.22-.533 0-.92.22a1.44 1.44 0 0 0-.589.627q-.204.406-.205.975v.513q0 .563.205.973.205.406.59.627.386.216.92.216.535 0 .916-.216.383-.22.59-.627.204-.41.204-.973M0 11.926v4h1.459q.603 0 .999-.238a1.45 1.45 0 0 0 .595-.689q.196-.45.196-1.084 0-.63-.196-1.075a1.43 1.43 0 0 0-.59-.68q-.395-.234-1.004-.234zm.791.645h.563q.371 0 .609.152a.9.9 0 0 1 .354.454q.118.302.118.753a2.3 2.3 0 0 1-.068.592 1.1 1.1 0 0 1-.196.422.8.8 0 0 1-.334.252 1.3 1.3 0 0 1-.483.082H.79V12.57Zm7.422.483a1.7 1.7 0 0 0-.103.633v.495q0 .369.103.627a.83.83 0 0 0 .298.393.85.85 0 0 0 .478.131.9.9 0 0 0 .401-.088.7.7 0 0 0 .273-.248.8.8 0 0 0 .117-.364h.765v.076a1.27 1.27 0 0 1-.226.674q-.205.29-.55.454a1.8 1.8 0 0 1-.786.164q-.54 0-.914-.216a1.4 1.4 0 0 1-.571-.627q-.194-.408-.194-.976v-.498q0-.568.197-.978.195-.411.571-.633.378-.223.911-.223.328 0 .607.097.28.093.489.272a1.33 1.33 0 0 1 .466.964v.073H9.78a.85.85 0 0 0-.12-.38.7.7 0 0 0-.273-.261.8.8 0 0 0-.398-.097.8.8 0 0 0-.475.138.87.87 0 0 0-.301.398\"},\"child\":[]}]})(props);\n};\nexport function BsFiletypeDocx (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M14 4.5V11h-1V4.5h-2A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v9H2V2a2 2 0 0 1 2-2h5.5zm-6.839 9.688v-.522a1.5 1.5 0 0 0-.117-.641.86.86 0 0 0-.322-.387.86.86 0 0 0-.469-.129.87.87 0 0 0-.471.13.87.87 0 0 0-.32.386 1.5 1.5 0 0 0-.117.641v.522q0 .384.117.641a.87.87 0 0 0 .32.387.9.9 0 0 0 .471.126.9.9 0 0 0 .469-.126.86.86 0 0 0 .322-.386 1.55 1.55 0 0 0 .117-.642m.803-.516v.513q0 .563-.205.973a1.47 1.47 0 0 1-.589.627q-.381.216-.917.216a1.86 1.86 0 0 1-.92-.216 1.46 1.46 0 0 1-.589-.627 2.15 2.15 0 0 1-.205-.973v-.513q0-.569.205-.975.205-.411.59-.627.386-.22.92-.22.535 0 .916.22.383.219.59.63.204.406.204.972M1 15.925v-3.999h1.459q.609 0 1.005.235.396.233.589.68.196.445.196 1.074 0 .634-.196 1.084-.197.451-.595.689-.396.237-.999.237zm1.354-3.354H1.79v2.707h.563q.277 0 .483-.082a.8.8 0 0 0 .334-.252q.132-.17.196-.422a2.3 2.3 0 0 0 .068-.592q0-.45-.118-.753a.9.9 0 0 0-.354-.454q-.237-.152-.61-.152Zm6.756 1.116q0-.373.103-.633a.87.87 0 0 1 .301-.398.8.8 0 0 1 .475-.138q.225 0 .398.097a.7.7 0 0 1 .273.26.85.85 0 0 1 .12.381h.765v-.073a1.33 1.33 0 0 0-.466-.964 1.4 1.4 0 0 0-.49-.272 1.8 1.8 0 0 0-.606-.097q-.534 0-.911.223-.375.222-.571.633-.197.41-.197.978v.498q0 .568.194.976.195.406.571.627.375.216.914.216.44 0 .785-.164t.551-.454a1.27 1.27 0 0 0 .226-.674v-.076h-.765a.8.8 0 0 1-.117.364.7.7 0 0 1-.273.248.9.9 0 0 1-.401.088.85.85 0 0 1-.478-.131.83.83 0 0 1-.298-.393 1.7 1.7 0 0 1-.103-.627zm5.092-1.76h.894l-1.275 2.006 1.254 1.992h-.908l-.85-1.415h-.035l-.852 1.415h-.862l1.24-2.015-1.228-1.984h.932l.832 1.439h.035z\"},\"child\":[]}]})(props);\n};\nexport function BsFiletypeExe (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M14 4.5V14a2 2 0 0 1-2 2h-1v-1h1a1 1 0 0 0 1-1V4.5h-2A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v9H2V2a2 2 0 0 1 2-2h5.5zM2.575 15.202H.785v-1.073H2.47v-.606H.785v-1.025h1.79v-.648H0v3.999h2.575zM6.31 11.85h-.893l-.823 1.439h-.036l-.832-1.439h-.931l1.227 1.983-1.239 2.016h.861l.853-1.415h.035l.85 1.415h.908l-1.254-1.992zm1.025 3.352h1.79v.647H6.548V11.85h2.576v.648h-1.79v1.025h1.684v.606H7.334v1.073Z\"},\"child\":[]}]})(props);\n};\nexport function BsFiletypeGif (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M14 4.5V14a2 2 0 0 1-2 2H9v-1h3a1 1 0 0 0 1-1V4.5h-2A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v9H2V2a2 2 0 0 1 2-2h5.5zM3.278 13.124a1.4 1.4 0 0 0-.14-.492 1.3 1.3 0 0 0-.314-.407 1.5 1.5 0 0 0-.48-.275 1.9 1.9 0 0 0-.636-.1q-.542 0-.926.229a1.5 1.5 0 0 0-.583.632 2.1 2.1 0 0 0-.199.95v.506q0 .408.105.745.105.336.32.58.213.243.533.377.323.132.753.132.402 0 .697-.111a1.29 1.29 0 0 0 .788-.77q.097-.261.097-.551v-.797H1.717v.589h.823v.255q0 .199-.09.363a.67.67 0 0 1-.273.264 1 1 0 0 1-.457.096.87.87 0 0 1-.519-.146.9.9 0 0 1-.305-.413 1.8 1.8 0 0 1-.096-.615v-.499q0-.547.234-.85.237-.3.665-.301a1 1 0 0 1 .3.044q.136.044.236.126a.7.7 0 0 1 .17.19.8.8 0 0 1 .097.25zm1.353 2.801v-3.999H3.84v4h.79Zm1.493-1.59v1.59h-.791v-3.999H7.88v.653H6.124v1.117h1.605v.638z\"},\"child\":[]}]})(props);\n};\nexport function BsFiletypeHeic (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M14 4.5V11h-1V4.5h-2A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v9H2V2a2 2 0 0 1 2-2h5.5zm-4.637 8.554a1.7 1.7 0 0 0-.103.633v.495q0 .369.103.627a.83.83 0 0 0 .299.393.85.85 0 0 0 .477.131.9.9 0 0 0 .401-.088.7.7 0 0 0 .273-.248.8.8 0 0 0 .117-.364h.765v.076a1.27 1.27 0 0 1-.226.674q-.205.29-.55.454a1.8 1.8 0 0 1-.786.164q-.54 0-.914-.216a1.4 1.4 0 0 1-.571-.627q-.194-.408-.194-.976v-.498q0-.568.197-.978.196-.411.571-.633.378-.223.911-.223.328 0 .607.097.28.093.489.272a1.32 1.32 0 0 1 .466.964v.073h-.765a.85.85 0 0 0-.12-.38.7.7 0 0 0-.273-.261.8.8 0 0 0-.398-.097.8.8 0 0 0-.475.138.87.87 0 0 0-.301.398m-6.1-1.128v4h-.79V14.21H.79v1.714H0v-3.999h.791v1.626h1.682v-1.626zm1.488 3.352h1.79v.647H3.966v-3.999H6.54v.648H4.75v1.025h1.684v.607H4.751zm3.163.647v-3.999h-.791v4h.79Z\"},\"child\":[]}]})(props);\n};\nexport function BsFiletypeHtml (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M14 4.5V11h-1V4.5h-2A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v9H2V2a2 2 0 0 1 2-2h5.5zm-9.736 7.35v3.999h-.791v-1.714H1.79v1.714H1V11.85h.791v1.626h1.682V11.85h.79Zm2.251.662v3.337h-.794v-3.337H4.588v-.662h3.064v.662zm2.176 3.337v-2.66h.038l.952 2.159h.516l.946-2.16h.038v2.661h.715V11.85h-.8l-1.14 2.596H9.93L8.79 11.85h-.805v3.999zm4.71-.674h1.696v.674H12.61V11.85h.79v3.325Z\"},\"child\":[]}]})(props);\n};\nexport function BsFiletypeJava (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M14 4.5V11h-1V4.5h-2A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v9H2V2a2 2 0 0 1 2-2h5.5zM1.521 15.175a1.3 1.3 0 0 1-.082-.466h.765a.6.6 0 0 0 .073.27.5.5 0 0 0 .454.246q.285 0 .422-.164.138-.165.138-.466V11.85h.79v2.725q0 .66-.357 1.005-.354.345-.984.345a1.6 1.6 0 0 1-.568-.094 1.1 1.1 0 0 1-.408-.266 1.1 1.1 0 0 1-.243-.39m3.972-.354-.314 1.028h-.8l1.342-3.999h.926l1.336 3.999h-.84l-.314-1.028zm1.178-.59-.49-1.616h-.035l-.49 1.617zm2.342 1.618h.952l1.327-3.999h-.878l-.888 3.138h-.038L8.59 11.85h-.917zm3.087-1.028-.314 1.028h-.8l1.342-3.999h.926l1.336 3.999h-.84l-.314-1.028zm1.178-.59-.49-1.616h-.035l-.49 1.617z\"},\"child\":[]}]})(props);\n};\nexport function BsFiletypeJpg (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M14 4.5V14a2 2 0 0 1-2 2h-1v-1h1a1 1 0 0 0 1-1V4.5h-2A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v9H2V2a2 2 0 0 1 2-2h5.5zm-4.34 8.132q.114.23.14.492h-.776a.8.8 0 0 0-.097-.249.7.7 0 0 0-.17-.19.7.7 0 0 0-.237-.126 1 1 0 0 0-.299-.044q-.428 0-.665.302-.234.301-.234.85v.498q0 .351.097.615a.9.9 0 0 0 .304.413.87.87 0 0 0 .519.146 1 1 0 0 0 .457-.096.67.67 0 0 0 .272-.264q.09-.164.091-.363v-.255H8.24v-.59h1.576v.798q0 .29-.097.55a1.3 1.3 0 0 1-.293.458 1.4 1.4 0 0 1-.495.313q-.296.111-.697.111a2 2 0 0 1-.753-.132 1.45 1.45 0 0 1-.533-.377 1.6 1.6 0 0 1-.32-.58 2.5 2.5 0 0 1-.105-.745v-.506q0-.543.2-.95.201-.406.582-.633.384-.228.926-.228.357 0 .636.1.28.1.48.275t.314.407ZM0 14.786q0 .246.082.465.083.22.243.39.165.17.407.267.246.093.569.093.63 0 .984-.345.357-.346.358-1.005v-2.725h-.791v2.745q0 .303-.138.466t-.422.164a.5.5 0 0 1-.454-.246.6.6 0 0 1-.073-.27H0Zm4.92-2.86H3.322v4h.791v-1.343h.803q.43 0 .732-.172.305-.177.463-.475.162-.302.161-.677 0-.374-.158-.677a1.2 1.2 0 0 0-.46-.477q-.3-.18-.732-.179Zm.546 1.333a.8.8 0 0 1-.085.381.57.57 0 0 1-.238.24.8.8 0 0 1-.375.082H4.11v-1.406h.66q.327 0 .512.182.185.181.185.521Z\"},\"child\":[]}]})(props);\n};\nexport function BsFiletypeJs (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M14 4.5V14a2 2 0 0 1-2 2H8v-1h4a1 1 0 0 0 1-1V4.5h-2A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v9H2V2a2 2 0 0 1 2-2h5.5zM3.186 15.29a1.2 1.2 0 0 1-.111-.449h.765a.58.58 0 0 0 .255.384q.105.073.249.114.143.041.319.041.246 0 .413-.07a.56.56 0 0 0 .255-.193.5.5 0 0 0 .085-.29.39.39 0 0 0-.153-.326q-.151-.12-.462-.193l-.619-.143a1.7 1.7 0 0 1-.539-.214 1 1 0 0 1-.351-.367 1.1 1.1 0 0 1-.123-.524q0-.366.19-.639.19-.272.528-.422.336-.15.776-.149.457 0 .78.152.324.153.5.41.18.255.2.566h-.75a.56.56 0 0 0-.12-.258.6.6 0 0 0-.247-.181.9.9 0 0 0-.369-.068q-.325 0-.513.152a.47.47 0 0 0-.184.384q0 .18.143.3a1 1 0 0 0 .405.175l.62.143q.327.075.566.211.24.136.375.358t.135.56q0 .37-.188.656a1.2 1.2 0 0 1-.539.439q-.351.158-.858.158-.381 0-.665-.09a1.4 1.4 0 0 1-.478-.252 1.1 1.1 0 0 1-.29-.375m-3.104-.033A1.3 1.3 0 0 1 0 14.791h.765a.6.6 0 0 0 .073.27.5.5 0 0 0 .454.246q.285 0 .422-.164.138-.165.138-.466v-2.745h.79v2.725q0 .66-.357 1.005-.354.345-.984.345a1.6 1.6 0 0 1-.569-.094 1.15 1.15 0 0 1-.407-.266 1.1 1.1 0 0 1-.243-.39\"},\"child\":[]}]})(props);\n};\nexport function BsFiletypeJson (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M14 4.5V11h-1V4.5h-2A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v9H2V2a2 2 0 0 1 2-2h5.5zM4.151 15.29a1.2 1.2 0 0 1-.111-.449h.764a.58.58 0 0 0 .255.384q.105.073.25.114.142.041.319.041.245 0 .413-.07a.56.56 0 0 0 .255-.193.5.5 0 0 0 .084-.29.39.39 0 0 0-.152-.326q-.152-.12-.463-.193l-.618-.143a1.7 1.7 0 0 1-.539-.214 1 1 0 0 1-.352-.367 1.1 1.1 0 0 1-.123-.524q0-.366.19-.639.192-.272.528-.422.337-.15.777-.149.456 0 .779.152.326.153.5.41.18.255.2.566h-.75a.56.56 0 0 0-.12-.258.6.6 0 0 0-.246-.181.9.9 0 0 0-.37-.068q-.324 0-.512.152a.47.47 0 0 0-.185.384q0 .18.144.3a1 1 0 0 0 .404.175l.621.143q.326.075.566.211a1 1 0 0 1 .375.358q.135.222.135.56 0 .37-.188.656a1.2 1.2 0 0 1-.539.439q-.351.158-.858.158-.381 0-.665-.09a1.4 1.4 0 0 1-.478-.252 1.1 1.1 0 0 1-.29-.375m-3.104-.033a1.3 1.3 0 0 1-.082-.466h.764a.6.6 0 0 0 .074.27.5.5 0 0 0 .454.246q.285 0 .422-.164.137-.165.137-.466v-2.745h.791v2.725q0 .66-.357 1.005-.355.345-.985.345a1.6 1.6 0 0 1-.568-.094 1.15 1.15 0 0 1-.407-.266 1.1 1.1 0 0 1-.243-.39m9.091-1.585v.522q0 .384-.117.641a.86.86 0 0 1-.322.387.9.9 0 0 1-.47.126.9.9 0 0 1-.47-.126.87.87 0 0 1-.32-.387 1.55 1.55 0 0 1-.117-.641v-.522q0-.386.117-.641a.87.87 0 0 1 .32-.387.87.87 0 0 1 .47-.129q.265 0 .47.129a.86.86 0 0 1 .322.387q.117.255.117.641m.803.519v-.513q0-.565-.205-.973a1.46 1.46 0 0 0-.59-.63q-.38-.22-.916-.22-.534 0-.92.22a1.44 1.44 0 0 0-.589.628q-.205.407-.205.975v.513q0 .562.205.973.205.407.589.626.386.217.92.217.536 0 .917-.217.384-.22.589-.626.204-.41.205-.973m1.29-.935v2.675h-.746v-3.999h.662l1.752 2.66h.032v-2.66h.75v4h-.656l-1.761-2.676z\"},\"child\":[]}]})(props);\n};\nexport function BsFiletypeJsx (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M14 4.5V14a2 2 0 0 1-2 2h-1v-1h1a1 1 0 0 0 1-1V4.5h-2A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v9H2V2a2 2 0 0 1 2-2h5.5zM3.075 14.841a1.13 1.13 0 0 0 .401.823q.194.162.478.252.284.091.665.091.507 0 .858-.158.355-.158.54-.44a1.17 1.17 0 0 0 .187-.656q0-.336-.135-.56a1 1 0 0 0-.375-.357 2 2 0 0 0-.565-.21l-.621-.144a1 1 0 0 1-.405-.176.37.37 0 0 1-.143-.299q0-.234.184-.384.188-.152.513-.152.214 0 .37.068a.6.6 0 0 1 .245.181.56.56 0 0 1 .12.258h.75a1.1 1.1 0 0 0-.199-.566 1.2 1.2 0 0 0-.5-.41 1.8 1.8 0 0 0-.78-.152q-.44 0-.776.15-.337.149-.528.421-.19.273-.19.639 0 .302.123.524t.351.367q.229.143.54.213l.618.144q.31.073.462.193a.39.39 0 0 1 .153.326.5.5 0 0 1-.085.29.56.56 0 0 1-.255.193q-.167.07-.413.07-.176 0-.32-.04a.8.8 0 0 1-.248-.115.58.58 0 0 1-.255-.384zM0 14.791q0 .247.082.466.083.22.243.39.165.17.407.267.246.093.569.093.63 0 .984-.346.357-.345.358-1.004v-2.725h-.791v2.745q0 .302-.138.466t-.422.164a.5.5 0 0 1-.454-.246.6.6 0 0 1-.073-.27zm8.907-2.859H9.8l-1.274 2.007L9.78 15.93h-.908l-.85-1.415h-.035l-.853 1.415h-.861l1.24-2.016-1.228-1.983h.931l.832 1.438h.036l.823-1.438Z\"},\"child\":[]}]})(props);\n};\nexport function BsFiletypeKey (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M14 4.5V14a2 2 0 0 1-2 2h-1v-1h1a1 1 0 0 0 1-1V4.5h-2A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v9H2V2a2 2 0 0 1 2-2h5.5zM3.21 11.85h-.87L.83 13.64H.79v-1.79H0v3.999h.791v-1.283l.41-.466 1.12 1.749h.951l-1.488-2.276 1.427-1.723Zm2.903 3.352h-1.79v-1.073h1.685v-.606H4.323v-1.025h1.79v-.648H3.538v3.999h2.575zm2.243-.888v1.535h-.794v-1.52L6.223 11.85H7.1l.853 1.696h.032l.855-1.696h.856z\"},\"child\":[]}]})(props);\n};\nexport function BsFiletypeM4P (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M14 4.5V14a2 2 0 0 1-2 2v-1a1 1 0 0 0 1-1V4.5h-2A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v9H2V2a2 2 0 0 1 2-2h5.5zM.706 15.849v-2.66h.038l.952 2.16h.516l.946-2.16h.038v2.66h.715V11.85h-.8l-1.14 2.596h-.026L.805 11.85H0v3.999zm5.237-3.999q-.393.65-.79 1.3t-.748 1.31v.648h1.937v.741h.74v-.741h.49v-.639h-.49V11.85H5.944Zm-.82 2.62v-.021q.27-.51.571-1.017.304-.507.607-.984h.04v2.021H5.124Zm2.893-2.62h1.6q.434 0 .732.179.302.175.46.477t.158.677-.16.677q-.159.298-.464.474a1.45 1.45 0 0 1-.732.173h-.803v1.342h-.79zm2.06 1.714a.8.8 0 0 0 .085-.381q0-.34-.185-.521-.184-.183-.513-.182h-.659v1.406h.66a.8.8 0 0 0 .374-.082.57.57 0 0 0 .238-.24\"},\"child\":[]}]})(props);\n};\nexport function BsFiletypeMd (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M14 4.5V14a2 2 0 0 1-2 2H9v-1h3a1 1 0 0 0 1-1V4.5h-2A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v9H2V2a2 2 0 0 1 2-2h5.5zM.706 13.189v2.66H0V11.85h.806l1.14 2.596h.026l1.14-2.596h.8v3.999h-.716v-2.66h-.038l-.946 2.159h-.516l-.952-2.16H.706Zm3.919 2.66V11.85h1.459q.609 0 1.005.234t.589.68q.195.445.196 1.075 0 .634-.196 1.084-.197.451-.595.689-.396.237-1 .237H4.626Zm1.353-3.354h-.562v2.707h.562q.279 0 .484-.082a.8.8 0 0 0 .334-.252 1.1 1.1 0 0 0 .196-.422q.067-.252.067-.592a2.1 2.1 0 0 0-.117-.753.9.9 0 0 0-.354-.454q-.238-.152-.61-.152\"},\"child\":[]}]})(props);\n};\nexport function BsFiletypeMdx (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M14 4.5V14a2 2 0 0 1-2 2v-1a1 1 0 0 0 1-1V4.5h-2A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v9H2V2a2 2 0 0 1 2-2h5.5zM.706 15.849v-2.66h.038l.952 2.159h.516l.946-2.16h.038v2.661h.715V11.85h-.8l-1.14 2.596h-.026L.805 11.85H0v3.999zm3.559-3.999v3.999h1.459q.603 0 .999-.237a1.45 1.45 0 0 0 .595-.689q.195-.45.196-1.084 0-.63-.196-1.075a1.43 1.43 0 0 0-.59-.68q-.395-.234-1.004-.234zm.79.645h.563q.372 0 .61.152a.9.9 0 0 1 .354.454q.117.302.117.753 0 .34-.067.592a1.1 1.1 0 0 1-.196.422.8.8 0 0 1-.334.252 1.3 1.3 0 0 1-.484.082h-.562v-2.707Zm4.787-.645h.894L9.46 13.857l1.254 1.992h-.908l-.85-1.415h-.035l-.852 1.415h-.862l1.24-2.016L7.22 11.85h.932l.832 1.439h.035z\"},\"child\":[]}]})(props);\n};\nexport function BsFiletypeMov (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M14 4.5V14a2 2 0 0 1-2 2v-1a1 1 0 0 0 1-1V4.5h-2A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v9H2V2a2 2 0 0 1 2-2h5.5zm-6.914 9.166v.522q0 .384-.117.641a.86.86 0 0 1-.323.387.9.9 0 0 1-.468.126.9.9 0 0 1-.472-.126.87.87 0 0 1-.32-.386 1.55 1.55 0 0 1-.117-.642v-.522q0-.386.118-.641a.87.87 0 0 1 .319-.387.87.87 0 0 1 .472-.129q.263 0 .468.13a.86.86 0 0 1 .323.386q.117.255.117.641m.802.519v-.513q0-.565-.205-.972a1.46 1.46 0 0 0-.588-.63q-.381-.22-.917-.22-.534 0-.92.22a1.44 1.44 0 0 0-.59.627q-.204.406-.204.975v.513q0 .563.205.973.205.406.589.627.386.216.92.216.536 0 .917-.216.383-.22.588-.627.205-.41.205-.973m-7.182 1.74v-2.66h.038l.952 2.16h.516l.946-2.16h.038v2.66h.715v-3.999h-.8l-1.14 2.596h-.026l-1.14-2.596H0v4zm9.54 0h-.952l-1.34-3.999h.918l.896 3.138h.038l.888-3.138h.879z\"},\"child\":[]}]})(props);\n};\nexport function BsFiletypeMp3 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M14 4.5V14a2 2 0 0 1-2 2v-1a1 1 0 0 0 1-1V4.5h-2A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v9H2V2a2 2 0 0 1 2-2h5.5zm-4.911 9.67h-.443v-.609h.422a.7.7 0 0 0 .322-.073.56.56 0 0 0 .22-.2.5.5 0 0 0 .076-.284.49.49 0 0 0-.176-.392.65.65 0 0 0-.442-.15.7.7 0 0 0-.252.041.6.6 0 0 0-.193.112.5.5 0 0 0-.179.349H7.71q.009-.235.102-.437.094-.202.27-.352.176-.152.428-.237.255-.085.583-.088.418-.003.723.132.304.135.472.372a.9.9 0 0 1 .173.539.83.83 0 0 1-.12.478.96.96 0 0 1-.619.439v.041a1 1 0 0 1 .718.434.9.9 0 0 1 .144.521q.003.285-.117.507a1.1 1.1 0 0 1-.329.378q-.21.152-.486.234-.273.08-.583.08-.451 0-.77-.153a1.2 1.2 0 0 1-.487-.41 1.1 1.1 0 0 1-.178-.563h.726a.46.46 0 0 0 .106.258.7.7 0 0 0 .249.179 1 1 0 0 0 .357.067.9.9 0 0 0 .384-.076.6.6 0 0 0 .252-.217.56.56 0 0 0 .088-.319.56.56 0 0 0-.334-.522.8.8 0 0 0-.372-.079ZM.706 15.925v-2.66h.038l.952 2.16h.516l.946-2.16h.038v2.66h.715v-3.999h-.8l-1.14 2.596h-.026l-1.14-2.596H0v4zm5.458-3.999h-1.6v4h.792v-1.342h.803q.43 0 .732-.173.304-.177.463-.475a1.4 1.4 0 0 0 .161-.677q0-.374-.158-.677a1.2 1.2 0 0 0-.46-.477 1.4 1.4 0 0 0-.733-.179m.545 1.333a.8.8 0 0 1-.085.381.57.57 0 0 1-.237.24.8.8 0 0 1-.375.082h-.66v-1.406h.66q.328 0 .513.182.184.181.184.521\"},\"child\":[]}]})(props);\n};\nexport function BsFiletypeMp4 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M14 4.5V14a2 2 0 0 1-2 2v-1a1 1 0 0 0 1-1V4.5h-2A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v9H2V2a2 2 0 0 1 2-2h5.5zM.706 15.849v-2.66h.038l.952 2.16h.516l.946-2.16h.038v2.66h.715V11.85h-.8l-1.14 2.596h-.026L.805 11.85H0v3.999zm5.278-3.999h-1.6v3.999h.792v-1.342h.803q.43 0 .732-.173.304-.175.463-.474a1.4 1.4 0 0 0 .161-.677q0-.375-.158-.677a1.2 1.2 0 0 0-.46-.477 1.4 1.4 0 0 0-.733-.179m.545 1.333a.8.8 0 0 1-.085.38.57.57 0 0 1-.237.241.8.8 0 0 1-.375.082h-.66V12.48h.66q.329 0 .513.181.184.183.184.522m1.505-.032q.4-.65.791-1.301h1.14v2.62h.49v.638h-.49v.741h-.741v-.741H7.287v-.648q.353-.66.747-1.31Zm-.029 1.298v.02h1.219v-2.021h-.041q-.302.477-.607.984-.3.507-.571 1.017\"},\"child\":[]}]})(props);\n};\nexport function BsFiletypeOtf (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M14 4.5V14a2 2 0 0 1-2 2h-1v-1h1a1 1 0 0 0 1-1V4.5h-2A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v9H2V2a2 2 0 0 1 2-2h5.5zM2.622 13.666v.522q0 .384-.117.641a.86.86 0 0 1-.322.387.9.9 0 0 1-.47.126.9.9 0 0 1-.47-.126.87.87 0 0 1-.32-.386 1.55 1.55 0 0 1-.117-.642v-.522q0-.386.117-.641a.87.87 0 0 1 .32-.387.87.87 0 0 1 .47-.129q.265 0 .47.13a.86.86 0 0 1 .322.386q.117.255.117.641m.803.519v-.513q0-.565-.205-.972a1.46 1.46 0 0 0-.59-.63q-.38-.22-.916-.22-.534 0-.92.22a1.44 1.44 0 0 0-.589.627Q0 13.103 0 13.672v.513q0 .563.205.973.205.406.589.627.386.216.92.216.536 0 .917-.216a1.47 1.47 0 0 0 .589-.627q.204-.41.205-.973m2 1.74v-3.337H6.56v-.662H3.497v.662H4.63v3.337h.794Zm2.251-1.59v1.59h-.79v-3.999h2.548v.653H7.676v1.117h1.606v.638z\"},\"child\":[]}]})(props);\n};\nexport function BsFiletypePdf (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M14 4.5V14a2 2 0 0 1-2 2h-1v-1h1a1 1 0 0 0 1-1V4.5h-2A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v9H2V2a2 2 0 0 1 2-2h5.5zM1.6 11.85H0v3.999h.791v-1.342h.803q.43 0 .732-.173.305-.175.463-.474a1.4 1.4 0 0 0 .161-.677q0-.375-.158-.677a1.2 1.2 0 0 0-.46-.477q-.3-.18-.732-.179m.545 1.333a.8.8 0 0 1-.085.38.57.57 0 0 1-.238.241.8.8 0 0 1-.375.082H.788V12.48h.66q.327 0 .512.181.185.183.185.522m1.217-1.333v3.999h1.46q.602 0 .998-.237a1.45 1.45 0 0 0 .595-.689q.196-.45.196-1.084 0-.63-.196-1.075a1.43 1.43 0 0 0-.589-.68q-.396-.234-1.005-.234zm.791.645h.563q.371 0 .609.152a.9.9 0 0 1 .354.454q.118.302.118.753a2.3 2.3 0 0 1-.068.592 1.1 1.1 0 0 1-.196.422.8.8 0 0 1-.334.252 1.3 1.3 0 0 1-.483.082h-.563zm3.743 1.763v1.591h-.79V11.85h2.548v.653H7.896v1.117h1.606v.638z\"},\"child\":[]}]})(props);\n};\nexport function BsFiletypePhp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M14 4.5V14a2 2 0 0 1-2 2h-1v-1h1a1 1 0 0 0 1-1V4.5h-2A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v9H2V2a2 2 0 0 1 2-2h5.5zM1.6 11.85H0v3.999h.791v-1.342h.803q.43 0 .732-.173.305-.175.463-.474a1.4 1.4 0 0 0 .161-.677q0-.375-.158-.677a1.2 1.2 0 0 0-.46-.477q-.3-.18-.732-.179m.545 1.333a.8.8 0 0 1-.085.38.57.57 0 0 1-.238.241.8.8 0 0 1-.375.082H.788V12.48h.66q.327 0 .512.181.185.182.185.522m4.48 2.666V11.85h-.79v1.626H4.153V11.85h-.79v3.999h.79v-1.714h1.682v1.714zm.703-3.999h1.6q.433 0 .732.179.3.175.46.477.158.302.158.677t-.161.677q-.159.299-.463.474a1.45 1.45 0 0 1-.733.173H8.12v1.342h-.791zm2.06 1.714a.8.8 0 0 0 .084-.381q0-.34-.184-.521-.184-.182-.513-.182h-.66v1.406h.66a.8.8 0 0 0 .375-.082.57.57 0 0 0 .237-.24Z\"},\"child\":[]}]})(props);\n};\nexport function BsFiletypePng (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M14 4.5V14a2 2 0 0 1-2 2v-1a1 1 0 0 0 1-1V4.5h-2A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v9H2V2a2 2 0 0 1 2-2h5.5zm-3.76 8.132q.114.23.14.492h-.776a.8.8 0 0 0-.097-.249.7.7 0 0 0-.17-.19.7.7 0 0 0-.237-.126 1 1 0 0 0-.299-.044q-.427 0-.665.302-.234.301-.234.85v.498q0 .351.097.615a.9.9 0 0 0 .304.413.87.87 0 0 0 .519.146 1 1 0 0 0 .457-.096.67.67 0 0 0 .272-.264q.09-.164.091-.363v-.255H8.82v-.59h1.576v.798q0 .29-.097.55a1.3 1.3 0 0 1-.293.458 1.4 1.4 0 0 1-.495.313q-.296.111-.697.111a2 2 0 0 1-.753-.132 1.45 1.45 0 0 1-.533-.377 1.6 1.6 0 0 1-.32-.58 2.5 2.5 0 0 1-.105-.745v-.506q0-.543.2-.95.201-.406.582-.633.384-.228.926-.228.357 0 .636.1.281.1.48.275.2.176.314.407Zm-8.64-.706H0v4h.791v-1.343h.803q.43 0 .732-.172.305-.177.463-.475a1.4 1.4 0 0 0 .161-.677q0-.374-.158-.677a1.2 1.2 0 0 0-.46-.477q-.3-.18-.732-.179m.545 1.333a.8.8 0 0 1-.085.381.57.57 0 0 1-.238.24.8.8 0 0 1-.375.082H.788v-1.406h.66q.327 0 .512.182.185.181.185.521m1.964 2.666V13.25h.032l1.761 2.675h.656v-3.999h-.75v2.66h-.032l-1.752-2.66h-.662v4z\"},\"child\":[]}]})(props);\n};\nexport function BsFiletypePpt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M14 4.5V14a2 2 0 0 1-2 2h-1v-1h1a1 1 0 0 0 1-1V4.5h-2A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v9H2V2a2 2 0 0 1 2-2h5.5zM1.6 11.85H0v3.999h.791v-1.342h.803q.43 0 .732-.173.305-.175.463-.474a1.4 1.4 0 0 0 .161-.677q0-.375-.158-.677a1.2 1.2 0 0 0-.46-.477q-.3-.18-.732-.179m.545 1.333a.8.8 0 0 1-.085.38.57.57 0 0 1-.238.241.8.8 0 0 1-.375.082H.788V12.48h.66q.327 0 .512.181.185.183.185.522m2.817-1.333h-1.6v3.999h.791v-1.342h.803q.43 0 .732-.173.305-.175.463-.474.162-.302.161-.677 0-.375-.158-.677a1.2 1.2 0 0 0-.46-.477q-.3-.18-.732-.179m.545 1.333a.8.8 0 0 1-.085.38.57.57 0 0 1-.238.241.8.8 0 0 1-.375.082H4.15V12.48h.66q.327 0 .512.181.185.183.185.522m2.767-.67v3.336H7.48v-3.337H6.346v-.662h3.065v.662z\"},\"child\":[]}]})(props);\n};\nexport function BsFiletypePptx (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M14 4.5V11h-1V4.5h-2A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v9H2V2a2 2 0 0 1 2-2h5.5zM1.5 11.85h1.6q.434 0 .732.179.302.175.46.477t.158.677-.16.677q-.159.299-.464.474a1.45 1.45 0 0 1-.732.173H2.29v1.342H1.5zm2.06 1.714a.8.8 0 0 0 .085-.381q0-.34-.185-.521-.185-.182-.513-.182h-.659v1.406h.66a.8.8 0 0 0 .374-.082.57.57 0 0 0 .238-.24m1.302-1.714h1.6q.434 0 .732.179.302.175.46.477t.158.677-.16.677q-.158.299-.464.474a1.45 1.45 0 0 1-.732.173h-.803v1.342h-.79zm2.06 1.714a.8.8 0 0 0 .085-.381q0-.34-.185-.521-.184-.182-.513-.182H5.65v1.406h.66a.8.8 0 0 0 .374-.082.57.57 0 0 0 .238-.24m2.852 2.285v-3.337h1.137v-.662H7.846v.662H8.98v3.337zm3.796-3.999h.893l-1.274 2.007 1.254 1.992h-.908l-.85-1.415h-.035l-.853 1.415h-.861l1.24-2.016-1.228-1.983h.931l.832 1.439h.035z\"},\"child\":[]}]})(props);\n};\nexport function BsFiletypePsd (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M14 4.5V14a2 2 0 0 1-2 2h-.5v-1h.5a1 1 0 0 0 1-1V4.5h-2A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v9H2V2a2 2 0 0 1 2-2h5.5zM3.116 14.841a1.13 1.13 0 0 0 .401.823q.194.162.478.252.284.091.665.091.507 0 .858-.158.355-.158.54-.44a1.17 1.17 0 0 0 .187-.656q0-.336-.135-.56a1 1 0 0 0-.375-.357 2 2 0 0 0-.565-.21l-.621-.144a1 1 0 0 1-.405-.176.37.37 0 0 1-.143-.299q0-.234.184-.384.188-.152.513-.152.214 0 .37.068a.6.6 0 0 1 .245.181.56.56 0 0 1 .12.258h.75a1.1 1.1 0 0 0-.199-.566 1.2 1.2 0 0 0-.5-.41 1.8 1.8 0 0 0-.78-.152q-.44 0-.776.15-.337.149-.528.421-.19.273-.19.639 0 .302.123.524t.351.367q.229.143.54.213l.618.144q.31.073.462.193a.39.39 0 0 1 .153.326.5.5 0 0 1-.085.29.56.56 0 0 1-.255.193q-.167.07-.413.07-.176 0-.32-.04a.8.8 0 0 1-.248-.115.58.58 0 0 1-.255-.384zM1.6 11.932H0v4h.791v-1.343h.803q.43 0 .732-.173.305-.175.463-.474a1.4 1.4 0 0 0 .161-.677q0-.375-.158-.677a1.2 1.2 0 0 0-.46-.477q-.3-.18-.732-.179m.545 1.333a.8.8 0 0 1-.085.38.57.57 0 0 1-.238.241.8.8 0 0 1-.375.082H.788v-1.406h.66q.327 0 .512.182.185.181.185.521m4.609 2.666v-3.999h1.459q.609 0 1.004.234.396.235.59.68.195.445.195 1.075 0 .634-.196 1.084t-.594.689q-.396.237-1 .237H6.755Zm1.353-3.354h-.562v2.707h.562q.279 0 .483-.082a.8.8 0 0 0 .334-.252 1.1 1.1 0 0 0 .197-.422q.067-.252.067-.592a2.1 2.1 0 0 0-.117-.753.9.9 0 0 0-.355-.454q-.236-.152-.609-.152\"},\"child\":[]}]})(props);\n};\nexport function BsFiletypePy (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M14 4.5V14a2 2 0 0 1-2 2H7v-1h5a1 1 0 0 0 1-1V4.5h-2A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v9H2V2a2 2 0 0 1 2-2h5.5zM0 11.85h1.6q.434 0 .732.179.302.175.46.477t.158.677-.16.677q-.158.299-.464.474a1.45 1.45 0 0 1-.732.173H.79v1.342H0zm2.06 1.714a.8.8 0 0 0 .085-.381q0-.34-.185-.521-.185-.182-.513-.182H.788v1.406h.66a.8.8 0 0 0 .374-.082.57.57 0 0 0 .238-.24m2.963.75v1.535H4.23v-1.52L2.89 11.85h.876l.853 1.696h.032l.856-1.696h.855z\"},\"child\":[]}]})(props);\n};\nexport function BsFiletypeRaw (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M14 4.5V14a2 2 0 0 1-2 2v-1a1 1 0 0 0 1-1V4.5h-2A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v9H2V2a2 2 0 0 1 2-2h5.5zM1.597 11.85H0v3.999h.782v-1.491h.71l.7 1.491h1.651l.313-1.028h1.336l.314 1.028h.84L5.31 11.85h-.925l-1.329 3.96-.783-1.572A1.18 1.18 0 0 0 3 13.116q0-.384-.167-.668a1.1 1.1 0 0 0-.478-.44 1.7 1.7 0 0 0-.758-.158m-.815 1.913v-1.292h.7a.74.74 0 0 1 .507.17q.194.17.194.49 0 .315-.194.474-.19.158-.518.158zm4.063-1.148.489 1.617H4.32l.49-1.617zm4.006.445-.74 2.789h-.73L6.326 11.85h.855l.601 2.903h.038l.706-2.903h.683l.706 2.903h.04l.596-2.903h.858l-1.055 3.999h-.73l-.74-2.789H8.85Z\"},\"child\":[]}]})(props);\n};\nexport function BsFiletypeRb (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M14 4.5V14a2 2 0 0 1-2 2H8v-1h4a1 1 0 0 0 1-1V4.5h-2A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v9H2V2a2 2 0 0 1 2-2h5.5zM0 11.85h1.597q.446 0 .758.158.315.155.478.44.167.284.167.668a1.18 1.18 0 0 1-.727 1.122l.803 1.611h-.885l-.7-1.491H.782v1.491H0zm.782.621v1.292h.689q.327 0 .518-.158.195-.159.194-.475 0-.32-.194-.489a.74.74 0 0 0-.507-.17zm4.426 3.378H3.544V11.85h1.67q.536 0 .858.26.322.262.322.724a.94.94 0 0 1-.09.422.8.8 0 0 1-.244.293 1 1 0 0 1-.351.161v.035q.243.024.445.141a.85.85 0 0 1 .322.325 1 1 0 0 1 .123.51q0 .357-.178.61-.18.25-.492.386a1.9 1.9 0 0 1-.721.132m-.179-3.404h-.7v1.07h.521q.267 0 .434-.065a.5.5 0 0 0 .249-.185.5.5 0 0 0 .082-.296.49.49 0 0 0-.155-.384q-.153-.14-.43-.14Zm.05 1.62h-.75v1.19h.589q.466 0 .67-.147a.5.5 0 0 0 .206-.434.6.6 0 0 0-.082-.325.5.5 0 0 0-.24-.21.95.95 0 0 0-.393-.074\"},\"child\":[]}]})(props);\n};\nexport function BsFiletypeSass (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M14 4.5V11h-1V4.5h-2A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v9H2V2a2 2 0 0 1 2-2h5.5zM1.41 15.29a1.2 1.2 0 0 1-.111-.449h.764a.58.58 0 0 0 .255.384.8.8 0 0 0 .25.114q.142.041.319.041.246 0 .413-.07a.56.56 0 0 0 .255-.193.5.5 0 0 0 .084-.29.39.39 0 0 0-.152-.326q-.152-.12-.463-.193l-.618-.143a1.7 1.7 0 0 1-.539-.214 1 1 0 0 1-.352-.367 1.1 1.1 0 0 1-.123-.524q0-.366.19-.639.192-.272.528-.422.338-.15.777-.149.456 0 .779.152.326.153.5.41.18.255.2.566h-.75a.56.56 0 0 0-.12-.258.6.6 0 0 0-.246-.181.9.9 0 0 0-.37-.068q-.324 0-.512.152a.47.47 0 0 0-.185.384q0 .18.144.3a1 1 0 0 0 .404.175l.621.143q.326.075.566.211t.375.358.135.56q0 .37-.188.656a1.2 1.2 0 0 1-.539.439q-.351.158-.858.158-.381 0-.665-.09a1.4 1.4 0 0 1-.478-.252 1.1 1.1 0 0 1-.29-.375m4.188-.387-.313 1.028h-.8l1.342-3.999h.926l1.335 4h-.84l-.314-1.03zm1.178-.59-.49-1.616h-.034l-.49 1.617zm1.352.528a1.13 1.13 0 0 0 .401.823q.195.162.478.252.284.091.665.091.507 0 .859-.158.354-.158.539-.44.187-.284.187-.656 0-.336-.134-.56a1 1 0 0 0-.375-.357 2 2 0 0 0-.566-.21l-.621-.144a1 1 0 0 1-.404-.176.37.37 0 0 1-.144-.299q0-.234.185-.384.188-.152.512-.152.214 0 .37.068a.6.6 0 0 1 .246.181.56.56 0 0 1 .12.258h.75a1.1 1.1 0 0 0-.2-.566 1.2 1.2 0 0 0-.5-.41 1.8 1.8 0 0 0-.78-.152q-.44 0-.776.15-.337.149-.527.421-.19.273-.19.639 0 .302.122.524.123.223.352.367.228.143.539.213l.618.144q.31.073.463.193a.39.39 0 0 1 .152.326.5.5 0 0 1-.085.29.56.56 0 0 1-.255.193q-.167.07-.413.07-.175 0-.32-.04a.8.8 0 0 1-.248-.115.58.58 0 0 1-.255-.384zm3.503.449a1.2 1.2 0 0 1-.111-.449h.764a.58.58 0 0 0 .255.384q.105.073.25.114.142.041.319.041.245 0 .413-.07a.56.56 0 0 0 .255-.193.5.5 0 0 0 .085-.29.39.39 0 0 0-.153-.326q-.152-.12-.463-.193l-.618-.143a1.7 1.7 0 0 1-.539-.214 1 1 0 0 1-.351-.367 1.1 1.1 0 0 1-.123-.524q0-.366.19-.639.19-.272.527-.422.338-.15.777-.149.456 0 .779.152.326.153.5.41.18.255.2.566h-.75a.56.56 0 0 0-.12-.258.6.6 0 0 0-.246-.181.9.9 0 0 0-.37-.068q-.324 0-.512.152a.47.47 0 0 0-.184.384q0 .18.143.3a1 1 0 0 0 .404.175l.621.143q.326.075.566.211t.375.358.135.56q0 .37-.188.656a1.2 1.2 0 0 1-.539.439q-.351.158-.858.158a2.2 2.2 0 0 1-.665-.09 1.4 1.4 0 0 1-.478-.252 1.1 1.1 0 0 1-.29-.375\"},\"child\":[]}]})(props);\n};\nexport function BsFiletypeScss (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M14 4.5V11h-1V4.5h-2A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v9H2V2a2 2 0 0 1 2-2h5.5zM1.356 15.29a1.2 1.2 0 0 1-.111-.449h.765a.58.58 0 0 0 .255.384q.105.073.249.114.143.041.319.041.246 0 .413-.07a.56.56 0 0 0 .255-.193.5.5 0 0 0 .085-.29.39.39 0 0 0-.153-.326q-.151-.12-.462-.193l-.619-.143a1.7 1.7 0 0 1-.539-.214 1 1 0 0 1-.351-.367 1.1 1.1 0 0 1-.123-.524q0-.366.19-.639.19-.272.528-.422.336-.15.776-.149.457 0 .78.152.324.153.5.41.18.255.2.566h-.75a.56.56 0 0 0-.12-.258.6.6 0 0 0-.247-.181.9.9 0 0 0-.369-.068q-.325 0-.513.152a.47.47 0 0 0-.184.384q0 .18.143.3a1 1 0 0 0 .405.175l.62.143q.326.075.566.211t.375.358.135.56q0 .37-.188.656a1.2 1.2 0 0 1-.539.439q-.351.158-.858.158-.381 0-.665-.09a1.4 1.4 0 0 1-.478-.252 1.1 1.1 0 0 1-.29-.375m4.274-2.23a1.7 1.7 0 0 0-.103.633v.495q0 .369.103.627a.83.83 0 0 0 .298.392.85.85 0 0 0 .478.132.9.9 0 0 0 .401-.088.7.7 0 0 0 .273-.249.8.8 0 0 0 .117-.363h.765v.076a1.27 1.27 0 0 1-.226.674 1.4 1.4 0 0 1-.55.454 1.8 1.8 0 0 1-.786.164q-.54 0-.914-.217a1.4 1.4 0 0 1-.571-.626q-.195-.408-.194-.976v-.498q0-.569.197-.979a1.44 1.44 0 0 1 .57-.633q.38-.222.912-.222.328 0 .607.097.28.093.489.272a1.32 1.32 0 0 1 .466.964v.073h-.765a.85.85 0 0 0-.12-.38.7.7 0 0 0-.273-.261.8.8 0 0 0-.398-.097.8.8 0 0 0-.475.138.87.87 0 0 0-.301.398m2.609 1.781a1.13 1.13 0 0 0 .401.823q.193.162.478.252.284.091.665.091.507 0 .858-.158.354-.158.54-.44a1.17 1.17 0 0 0 .187-.656q0-.336-.135-.56a1 1 0 0 0-.375-.357 2 2 0 0 0-.566-.21l-.62-.144a1 1 0 0 1-.405-.176.37.37 0 0 1-.143-.299q0-.234.184-.384.188-.152.513-.152.213 0 .369.068a.6.6 0 0 1 .246.181.56.56 0 0 1 .12.258h.75a1.1 1.1 0 0 0-.2-.566 1.2 1.2 0 0 0-.5-.41 1.8 1.8 0 0 0-.78-.152q-.438 0-.776.15-.336.149-.527.421-.19.273-.19.639 0 .302.123.524t.351.367q.228.143.54.213l.617.144q.311.073.463.193a.39.39 0 0 1 .153.326.5.5 0 0 1-.085.29.56.56 0 0 1-.255.193 1.1 1.1 0 0 1-.413.07q-.177 0-.32-.04a.8.8 0 0 1-.249-.115.58.58 0 0 1-.255-.384zm3.502.449a1.2 1.2 0 0 1-.11-.449h.764a.58.58 0 0 0 .255.384q.105.073.249.114.143.041.319.041.246 0 .413-.07a.56.56 0 0 0 .255-.193.5.5 0 0 0 .085-.29.39.39 0 0 0-.152-.326q-.153-.12-.463-.193l-.618-.143a1.7 1.7 0 0 1-.54-.214 1 1 0 0 1-.351-.367 1.1 1.1 0 0 1-.123-.524q0-.366.19-.639.19-.272.528-.422.336-.15.776-.149.458 0 .78.152.324.153.5.41.18.255.2.566h-.75a.56.56 0 0 0-.12-.258.6.6 0 0 0-.247-.181.9.9 0 0 0-.369-.068q-.325 0-.512.152a.47.47 0 0 0-.185.384q0 .18.143.3a1 1 0 0 0 .405.175l.62.143q.326.075.566.211t.375.358.135.56q0 .37-.187.656a1.2 1.2 0 0 1-.54.439q-.351.158-.858.158-.381 0-.665-.09a1.4 1.4 0 0 1-.478-.252 1.1 1.1 0 0 1-.29-.375\"},\"child\":[]}]})(props);\n};\nexport function BsFiletypeSh (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M14 4.5V14a2 2 0 0 1-2 2H8v-1h4a1 1 0 0 0 1-1V4.5h-2A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v9H2V2a2 2 0 0 1 2-2h5.5zM.111 15.29A1.2 1.2 0 0 1 0 14.84h.765a.58.58 0 0 0 .255.384q.105.073.249.114.143.041.319.041.246 0 .413-.07a.56.56 0 0 0 .255-.193.5.5 0 0 0 .085-.29.39.39 0 0 0-.153-.326q-.151-.12-.462-.193l-.619-.143a1.7 1.7 0 0 1-.539-.214 1 1 0 0 1-.351-.367 1.1 1.1 0 0 1-.123-.524q0-.366.19-.639.19-.272.528-.422.336-.15.776-.149.457 0 .78.152.324.153.5.41.18.255.2.566h-.75a.56.56 0 0 0-.12-.258.6.6 0 0 0-.247-.181.9.9 0 0 0-.369-.068q-.326 0-.513.152a.47.47 0 0 0-.184.384q0 .18.143.3a1 1 0 0 0 .405.175l.62.143q.327.075.566.211.24.136.375.358t.135.56q0 .37-.188.656a1.2 1.2 0 0 1-.539.439q-.351.158-.858.158-.381 0-.665-.09a1.4 1.4 0 0 1-.478-.252 1.1 1.1 0 0 1-.29-.375Zm6.67-3.358v4h-.79v-1.715H4.308v1.714h-.792v-3.999h.792v1.626H5.99v-1.626z\"},\"child\":[]}]})(props);\n};\nexport function BsFiletypeSql (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M14 4.5V14a2 2 0 0 1-2 2v-1a1 1 0 0 0 1-1V4.5h-2A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v9H2V2a2 2 0 0 1 2-2h5.5zM0 14.841a1.13 1.13 0 0 0 .401.823q.194.162.478.252c.284.09.411.091.665.091q.507 0 .858-.158.355-.159.54-.44a1.17 1.17 0 0 0 .187-.656q0-.336-.135-.56a1 1 0 0 0-.375-.357 2 2 0 0 0-.565-.21l-.621-.144a1 1 0 0 1-.405-.176.37.37 0 0 1-.143-.299q0-.234.184-.384.187-.152.513-.152.214 0 .37.068a.6.6 0 0 1 .245.181.56.56 0 0 1 .12.258h.75a1.1 1.1 0 0 0-.199-.566 1.2 1.2 0 0 0-.5-.41 1.8 1.8 0 0 0-.78-.152q-.44 0-.776.15-.337.149-.528.421-.19.273-.19.639 0 .302.123.524t.351.367q.229.143.54.213l.618.144q.31.073.462.193a.39.39 0 0 1 .153.325q0 .165-.085.29A.56.56 0 0 1 2 15.31q-.167.07-.413.07-.176 0-.32-.04a.8.8 0 0 1-.248-.115.58.58 0 0 1-.255-.384zm6.878 1.489-.507-.739q.264-.243.401-.6.138-.358.138-.806v-.501q0-.556-.208-.967a1.5 1.5 0 0 0-.589-.636q-.383-.225-.917-.225-.527 0-.914.225-.384.223-.592.636a2.14 2.14 0 0 0-.205.967v.5q0 .554.205.965.208.41.592.636a1.8 1.8 0 0 0 .914.222 1.8 1.8 0 0 0 .6-.1l.294.422h.788ZM4.262 14.2v-.522q0-.369.114-.63a.9.9 0 0 1 .325-.398.9.9 0 0 1 .495-.138q.288 0 .495.138a.9.9 0 0 1 .325.398q.115.261.115.63v.522q0 .246-.053.445-.053.196-.155.34l-.106-.14-.105-.147h-.733l.451.65a.6.6 0 0 1-.251.047.87.87 0 0 1-.487-.147.9.9 0 0 1-.32-.404 1.7 1.7 0 0 1-.11-.644m3.986 1.057h1.696v.674H7.457v-3.999h.79z\"},\"child\":[]}]})(props);\n};\nexport function BsFiletypeSvg (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M14 4.5V14a2 2 0 0 1-2 2v-1a1 1 0 0 0 1-1V4.5h-2A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v9H2V2a2 2 0 0 1 2-2h5.5zM0 14.841a1.13 1.13 0 0 0 .401.823q.194.162.478.252.285.091.665.091.507 0 .858-.158.355-.158.54-.44a1.17 1.17 0 0 0 .187-.656q0-.336-.135-.56a1 1 0 0 0-.375-.357 2 2 0 0 0-.565-.21l-.621-.144a1 1 0 0 1-.405-.176.37.37 0 0 1-.143-.299q0-.234.184-.384.187-.152.513-.152.214 0 .37.068a.6.6 0 0 1 .245.181.56.56 0 0 1 .12.258h.75a1.1 1.1 0 0 0-.199-.566 1.2 1.2 0 0 0-.5-.41 1.8 1.8 0 0 0-.78-.152q-.44 0-.776.15-.337.149-.528.421-.19.273-.19.639 0 .302.123.524t.351.367q.229.143.54.213l.618.144q.31.073.462.193a.39.39 0 0 1 .153.326.5.5 0 0 1-.085.29.56.56 0 0 1-.256.193q-.167.07-.413.07-.176 0-.32-.04a.8.8 0 0 1-.248-.115.58.58 0 0 1-.255-.384zm4.575 1.09h.952l1.327-3.999h-.879l-.887 3.138H5.05l-.897-3.138h-.917zm5.483-3.293q.114.228.14.492h-.776a.8.8 0 0 0-.096-.249.7.7 0 0 0-.17-.19.7.7 0 0 0-.237-.126 1 1 0 0 0-.3-.044q-.427 0-.664.302-.235.3-.235.85v.497q0 .352.097.616a.9.9 0 0 0 .305.413.87.87 0 0 0 .518.146 1 1 0 0 0 .457-.097.67.67 0 0 0 .273-.263q.09-.164.09-.364v-.254h-.823v-.59h1.576v.798q0 .29-.096.55a1.3 1.3 0 0 1-.293.457 1.4 1.4 0 0 1-.495.314q-.296.111-.698.111a2 2 0 0 1-.752-.132 1.45 1.45 0 0 1-.534-.377 1.6 1.6 0 0 1-.319-.58 2.5 2.5 0 0 1-.105-.745v-.507q0-.54.199-.949.202-.406.583-.633.383-.228.926-.228.357 0 .635.1.282.1.48.275.2.176.314.407\"},\"child\":[]}]})(props);\n};\nexport function BsFiletypeTiff (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M14 4.5V14a2 2 0 0 1-2 2h-1v-1h1a1 1 0 0 0 1-1V4.5h-2A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v9H2V2a2 2 0 0 1 2-2h5.5zM1.928 12.512v3.337h-.794v-3.337H0v-.662h3.064v.662zm2.131-.662v3.999h-.79V11.85zm1.373 3.999v-1.59h1.606v-.64H5.432v-1.116H7.19v-.653H4.641v3.999zm2.868-1.59v1.59h-.791V11.85h2.548v.653H8.3v1.117h1.605v.638z\"},\"child\":[]}]})(props);\n};\nexport function BsFiletypeTsx (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M14 4.5V14a2 2 0 0 1-2 2h-1v-1h1a1 1 0 0 0 1-1V4.5h-2A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v9H2V2a2 2 0 0 1 2-2h5.5zM3.172 14.841a1.13 1.13 0 0 0 .401.823q.193.162.478.252.283.091.665.091.507 0 .858-.158.354-.158.54-.44a1.17 1.17 0 0 0 .187-.656q0-.336-.135-.56a1 1 0 0 0-.375-.357 2 2 0 0 0-.566-.21l-.62-.144a1 1 0 0 1-.405-.176.37.37 0 0 1-.144-.299q0-.234.185-.384.188-.152.513-.152.213 0 .369.068a.6.6 0 0 1 .246.181.56.56 0 0 1 .12.258h.75a1.1 1.1 0 0 0-.2-.566 1.2 1.2 0 0 0-.5-.41 1.8 1.8 0 0 0-.78-.152q-.438 0-.776.15-.336.149-.527.421-.19.273-.19.639 0 .302.122.524.124.223.352.367.228.143.54.213l.617.144q.311.073.463.193a.39.39 0 0 1 .152.326.5.5 0 0 1-.084.29.56.56 0 0 1-.255.193 1.1 1.1 0 0 1-.413.07q-.177 0-.32-.04a.8.8 0 0 1-.249-.115.58.58 0 0 1-.255-.384zm-1.244 1.09v-3.337h1.136v-.662H0v.662h1.134v3.337zm7.076-3.999h.893l-1.274 2.007 1.254 1.992h-.909l-.85-1.415h-.034l-.853 1.415H6.37l1.239-2.016-1.228-1.983h.932l.832 1.438h.035z\"},\"child\":[]}]})(props);\n};\nexport function BsFiletypeTtf (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M14 4.5V14a2 2 0 0 1-2 2h-2v-1h2a1 1 0 0 0 1-1V4.5h-2A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v9H2V2a2 2 0 0 1 2-2h5.5zM1.928 15.849v-3.337h2.269v3.337h.794v-3.337h1.137v-.662H0v.662h1.134v3.337zm5.315-1.59v1.59h-.791V11.85H9v.653H7.243v1.117h1.605v.638z\"},\"child\":[]}]})(props);\n};\nexport function BsFiletypeTxt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M14 4.5V14a2 2 0 0 1-2 2h-2v-1h2a1 1 0 0 0 1-1V4.5h-2A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v9H2V2a2 2 0 0 1 2-2h5.5zM1.928 15.849v-3.337h1.136v-.662H0v.662h1.134v3.337zm4.689-3.999h-.894L4.9 13.289h-.035l-.832-1.439h-.932l1.228 1.983-1.24 2.016h.862l.853-1.415h.035l.85 1.415h.907l-1.253-1.992zm1.93.662v3.337h-.794v-3.337H6.619v-.662h3.064v.662H8.546Z\"},\"child\":[]}]})(props);\n};\nexport function BsFiletypeWav (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M14 4.5V14a2 2 0 0 1-2 2v-1a1 1 0 0 0 1-1V4.5h-2A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v9H2V2a2 2 0 0 1 2-2h5.5zM1.784 15.849l.741-2.789h.033l.74 2.789h.73l1.055-3.999h-.858l-.595 2.903h-.041l-.706-2.903H2.2l-.706 2.903h-.038l-.6-2.903H0l1.055 3.999zm3.715 0 .314-1.028h1.336l.313 1.028h.841L6.967 11.85h-.926L4.7 15.849h.8Zm1.002-3.234.49 1.617H5.977l.49-1.617H6.5Zm3.604 3.234h-.952L7.814 11.85h.917l.897 3.138h.038l.888-3.138h.879z\"},\"child\":[]}]})(props);\n};\nexport function BsFiletypeWoff (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M14 4.5V11h-1V4.5h-2A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v9H2V2a2 2 0 0 1 2-2h5.5zm-5.464 9.688v-.522q0-.386-.117-.641a.86.86 0 0 0-.323-.387.86.86 0 0 0-.468-.129.87.87 0 0 0-.472.13.87.87 0 0 0-.32.386q-.116.255-.116.641v.522q0 .384.117.641a.87.87 0 0 0 .319.387.9.9 0 0 0 .472.126.9.9 0 0 0 .468-.126.86.86 0 0 0 .323-.386 1.55 1.55 0 0 0 .117-.642m.803-.516v.513q0 .563-.205.973-.205.406-.59.627-.38.216-.916.216-.534 0-.92-.216a1.46 1.46 0 0 1-.59-.627 2.15 2.15 0 0 1-.204-.973v-.513q0-.569.205-.975.205-.411.589-.627.386-.22.92-.22.536 0 .917.22.384.219.589.63.204.406.205.972m-6.064-.536-.74 2.79h-.73l-1.055-4h.855l.601 2.903h.038l.706-2.903h.683l.706 2.903h.04l.596-2.903h.858l-1.055 4h-.73l-.74-2.79zm7.398 2.79v-1.592h1.606v-.638h-1.606v-1.117h1.758v-.653H9.882v4zm2.988-1.592v1.591h-.791v-3.999h2.548v.653h-1.757v1.117h1.605v.638z\"},\"child\":[]}]})(props);\n};\nexport function BsFiletypeXls (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M14 4.5V14a2 2 0 0 1-2 2h-1v-1h1a1 1 0 0 0 1-1V4.5h-2A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v9H2V2a2 2 0 0 1 2-2h5.5zM6.472 15.29a1.2 1.2 0 0 1-.111-.449h.765a.58.58 0 0 0 .254.384q.106.073.25.114.143.041.319.041.246 0 .413-.07a.56.56 0 0 0 .255-.193.5.5 0 0 0 .085-.29.39.39 0 0 0-.153-.326q-.152-.12-.462-.193l-.619-.143a1.7 1.7 0 0 1-.539-.214 1 1 0 0 1-.351-.367 1.1 1.1 0 0 1-.123-.524q0-.366.19-.639.19-.272.527-.422.338-.15.777-.149.457 0 .78.152.324.153.5.41.18.255.2.566h-.75a.56.56 0 0 0-.12-.258.6.6 0 0 0-.247-.181.9.9 0 0 0-.369-.068q-.325 0-.513.152a.47.47 0 0 0-.184.384q0 .18.143.3a1 1 0 0 0 .405.175l.62.143q.326.075.566.211a1 1 0 0 1 .375.358q.135.222.135.56 0 .37-.188.656a1.2 1.2 0 0 1-.539.439q-.351.158-.858.158-.381 0-.665-.09a1.4 1.4 0 0 1-.478-.252 1.1 1.1 0 0 1-.29-.375m-2.945-3.358h-.893L1.81 13.37h-.036l-.832-1.438h-.93l1.227 1.983L0 15.931h.861l.853-1.415h.035l.85 1.415h.908L2.253 13.94zm2.727 3.325H4.557v-3.325h-.79v4h2.487z\"},\"child\":[]}]})(props);\n};\nexport function BsFiletypeXlsx (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M14 4.5V11h-1V4.5h-2A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v9H2V2a2 2 0 0 1 2-2h5.5zM7.86 14.841a1.13 1.13 0 0 0 .401.823q.195.162.479.252.284.091.665.091.507 0 .858-.158.355-.158.54-.44a1.17 1.17 0 0 0 .187-.656q0-.336-.135-.56a1 1 0 0 0-.375-.357 2 2 0 0 0-.565-.21l-.621-.144a1 1 0 0 1-.405-.176.37.37 0 0 1-.143-.299q0-.234.184-.384.188-.152.513-.152.214 0 .37.068a.6.6 0 0 1 .245.181.56.56 0 0 1 .12.258h.75a1.1 1.1 0 0 0-.199-.566 1.2 1.2 0 0 0-.5-.41 1.8 1.8 0 0 0-.78-.152q-.44 0-.777.15-.336.149-.527.421-.19.273-.19.639 0 .302.123.524t.351.367q.229.143.54.213l.618.144q.31.073.462.193a.39.39 0 0 1 .153.326.5.5 0 0 1-.085.29.56.56 0 0 1-.255.193q-.168.07-.413.07-.176 0-.32-.04a.8.8 0 0 1-.249-.115.58.58 0 0 1-.255-.384zm-3.726-2.909h.893l-1.274 2.007 1.254 1.992h-.908l-.85-1.415h-.035l-.853 1.415H1.5l1.24-2.016-1.228-1.983h.931l.832 1.438h.036zm1.923 3.325h1.697v.674H5.266v-3.999h.791zm7.636-3.325h.893l-1.274 2.007 1.254 1.992h-.908l-.85-1.415h-.035l-.853 1.415h-.861l1.24-2.016-1.228-1.983h.931l.832 1.438h.036z\"},\"child\":[]}]})(props);\n};\nexport function BsFiletypeXml (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M14 4.5V14a2 2 0 0 1-2 2v-1a1 1 0 0 0 1-1V4.5h-2A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v9H2V2a2 2 0 0 1 2-2h5.5zM3.527 11.85h-.893l-.823 1.439h-.036L.943 11.85H.012l1.227 1.983L0 15.85h.861l.853-1.415h.035l.85 1.415h.908l-1.254-1.992zm.954 3.999v-2.66h.038l.952 2.159h.516l.946-2.16h.038v2.661h.715V11.85h-.8l-1.14 2.596h-.025L4.58 11.85h-.806v3.999zm4.71-.674h1.696v.674H8.4V11.85h.791z\"},\"child\":[]}]})(props);\n};\nexport function BsFiletypeYml (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M14 4.5V14a2 2 0 0 1-2 2v-1a1 1 0 0 0 1-1V4.5h-2A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v9H2V2a2 2 0 0 1 2-2h5.5zM2.133 15.849v-1.535l1.339-2.464h-.856l-.855 1.696h-.032L.876 11.85H0l1.339 2.479v1.52zm2.287 0v-2.66h.038l.952 2.159h.516l.946-2.16h.038v2.661h.715V11.85h-.8l-1.14 2.596H5.66L4.52 11.85h-.805v3.999zm4.71-.674h1.696v.674H8.338V11.85h.791v3.325Z\"},\"child\":[]}]})(props);\n};\nexport function BsFilm (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 1a1 1 0 0 1 1-1h14a1 1 0 0 1 1 1v14a1 1 0 0 1-1 1H1a1 1 0 0 1-1-1zm4 0v6h8V1zm8 8H4v6h8zM1 1v2h2V1zm2 3H1v2h2zM1 7v2h2V7zm2 3H1v2h2zm-2 3v2h2v-2zM15 1h-2v2h2zm-2 3v2h2V4zm2 3h-2v2h2zm-2 3v2h2v-2zm2 3h-2v2h2z\"},\"child\":[]}]})(props);\n};\nexport function BsFilterCircleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 16A8 8 0 1 0 8 0a8 8 0 0 0 0 16M3.5 5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1 0-1M5 8.5a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5m2 3a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 0 1h-1a.5.5 0 0 1-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsFilterCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14m0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M7 11.5a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 0 1h-1a.5.5 0 0 1-.5-.5m-2-3a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5m-2-3a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsFilterLeft (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 10.5a.5.5 0 0 1 .5-.5h3a.5.5 0 0 1 0 1h-3a.5.5 0 0 1-.5-.5m0-3a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5m0-3a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsFilterRight (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M14 10.5a.5.5 0 0 0-.5-.5h-3a.5.5 0 0 0 0 1h3a.5.5 0 0 0 .5-.5m0-3a.5.5 0 0 0-.5-.5h-7a.5.5 0 0 0 0 1h7a.5.5 0 0 0 .5-.5m0-3a.5.5 0 0 0-.5-.5h-11a.5.5 0 0 0 0 1h11a.5.5 0 0 0 .5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsFilterSquareFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm.5 5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1 0-1M4 8.5a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5m2 3a.5.5 0 0 1 .5-.5h3a.5.5 0 0 1 0 1h-3a.5.5 0 0 1-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsFilterSquare (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M14 1a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1zM2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M6 11.5a.5.5 0 0 1 .5-.5h3a.5.5 0 0 1 0 1h-3a.5.5 0 0 1-.5-.5m-2-3a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5m-2-3a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsFilter (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6 10.5a.5.5 0 0 1 .5-.5h3a.5.5 0 0 1 0 1h-3a.5.5 0 0 1-.5-.5m-2-3a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5m-2-3a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsFingerprint (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.06 6.5a.5.5 0 0 1 .5.5v.776a11.5 11.5 0 0 1-.552 3.519l-1.331 4.14a.5.5 0 0 1-.952-.305l1.33-4.141a10.5 10.5 0 0 0 .504-3.213V7a.5.5 0 0 1 .5-.5Z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M6.06 7a2 2 0 1 1 4 0 .5.5 0 1 1-1 0 1 1 0 1 0-2 0v.332q0 .613-.066 1.221A.5.5 0 0 1 6 8.447q.06-.555.06-1.115zm3.509 1a.5.5 0 0 1 .487.513 11.5 11.5 0 0 1-.587 3.339l-1.266 3.8a.5.5 0 0 1-.949-.317l1.267-3.8a10.5 10.5 0 0 0 .535-3.048A.5.5 0 0 1 9.569 8m-3.356 2.115a.5.5 0 0 1 .33.626L5.24 14.939a.5.5 0 1 1-.955-.296l1.303-4.199a.5.5 0 0 1 .625-.329\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4.759 5.833A3.501 3.501 0 0 1 11.559 7a.5.5 0 0 1-1 0 2.5 2.5 0 0 0-4.857-.833.5.5 0 1 1-.943-.334m.3 1.67a.5.5 0 0 1 .449.546 10.7 10.7 0 0 1-.4 2.031l-1.222 4.072a.5.5 0 1 1-.958-.287L4.15 9.793a9.7 9.7 0 0 0 .363-1.842.5.5 0 0 1 .546-.449Zm6 .647a.5.5 0 0 1 .5.5c0 1.28-.213 2.552-.632 3.762l-1.09 3.145a.5.5 0 0 1-.944-.327l1.089-3.145c.382-1.105.578-2.266.578-3.435a.5.5 0 0 1 .5-.5Z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3.902 4.222a5 5 0 0 1 5.202-2.113.5.5 0 0 1-.208.979 4 4 0 0 0-4.163 1.69.5.5 0 0 1-.831-.556m6.72-.955a.5.5 0 0 1 .705-.052A4.99 4.99 0 0 1 13.059 7v1.5a.5.5 0 1 1-1 0V7a3.99 3.99 0 0 0-1.386-3.028.5.5 0 0 1-.051-.705M3.68 5.842a.5.5 0 0 1 .422.568q-.044.289-.044.59c0 .71-.1 1.417-.298 2.1l-1.14 3.923a.5.5 0 1 1-.96-.279L2.8 8.821A6.5 6.5 0 0 0 3.058 7q0-.375.054-.736a.5.5 0 0 1 .568-.422m8.882 3.66a.5.5 0 0 1 .456.54c-.084 1-.298 1.986-.64 2.934l-.744 2.068a.5.5 0 0 1-.941-.338l.745-2.07a10.5 10.5 0 0 0 .584-2.678.5.5 0 0 1 .54-.456\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4.81 1.37A6.5 6.5 0 0 1 14.56 7a.5.5 0 1 1-1 0 5.5 5.5 0 0 0-8.25-4.765.5.5 0 0 1-.5-.865m-.89 1.257a.5.5 0 0 1 .04.706A5.48 5.48 0 0 0 2.56 7a.5.5 0 0 1-1 0c0-1.664.626-3.184 1.655-4.333a.5.5 0 0 1 .706-.04ZM1.915 8.02a.5.5 0 0 1 .346.616l-.779 2.767a.5.5 0 1 1-.962-.27l.778-2.767a.5.5 0 0 1 .617-.346m12.15.481a.5.5 0 0 1 .49.51c-.03 1.499-.161 3.025-.727 4.533l-.07.187a.5.5 0 0 1-.936-.351l.07-.187c.506-1.35.634-2.74.663-4.202a.5.5 0 0 1 .51-.49\"},\"child\":[]}]})(props);\n};\nexport function BsFire (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 16c3.314 0 6-2 6-5.5 0-1.5-.5-4-2.5-6 .25 1.5-1.25 2-1.25 2C11 4 9 .5 6 0c.357 2 .5 4-2 6-1.25 1-2 2.729-2 4.5C2 14 4.686 16 8 16m0-1c-1.657 0-3-1-3-2.75 0-.75.25-2 1.25-3C6.125 10 7 10.5 7 10.5c-.375-1.25.5-3.25 2-3.5-.179 1-.25 2 1 3 .625.5 1 1.364 1 2.25C11 14 9.657 15 8 15\"},\"child\":[]}]})(props);\n};\nexport function BsFlagFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M14.778.085A.5.5 0 0 1 15 .5V8a.5.5 0 0 1-.314.464L14.5 8l.186.464-.003.001-.006.003-.023.009a12 12 0 0 1-.397.15c-.264.095-.631.223-1.047.35-.816.252-1.879.523-2.71.523-.847 0-1.548-.28-2.158-.525l-.028-.01C7.68 8.71 7.14 8.5 6.5 8.5c-.7 0-1.638.23-2.437.477A20 20 0 0 0 3 9.342V15.5a.5.5 0 0 1-1 0V.5a.5.5 0 0 1 1 0v.282c.226-.079.496-.17.79-.26C4.606.272 5.67 0 6.5 0c.84 0 1.524.277 2.121.519l.043.018C9.286.788 9.828 1 10.5 1c.7 0 1.638-.23 2.437-.477a20 20 0 0 0 1.349-.476l.019-.007.004-.002h.001\"},\"child\":[]}]})(props);\n};\nexport function BsFlag (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M14.778.085A.5.5 0 0 1 15 .5V8a.5.5 0 0 1-.314.464L14.5 8l.186.464-.003.001-.006.003-.023.009a12 12 0 0 1-.397.15c-.264.095-.631.223-1.047.35-.816.252-1.879.523-2.71.523-.847 0-1.548-.28-2.158-.525l-.028-.01C7.68 8.71 7.14 8.5 6.5 8.5c-.7 0-1.638.23-2.437.477A20 20 0 0 0 3 9.342V15.5a.5.5 0 0 1-1 0V.5a.5.5 0 0 1 1 0v.282c.226-.079.496-.17.79-.26C4.606.272 5.67 0 6.5 0c.84 0 1.524.277 2.121.519l.043.018C9.286.788 9.828 1 10.5 1c.7 0 1.638-.23 2.437-.477a20 20 0 0 0 1.349-.476l.019-.007.004-.002h.001M14 1.221c-.22.078-.48.167-.766.255-.81.252-1.872.523-2.734.523-.886 0-1.592-.286-2.203-.534l-.008-.003C7.662 1.21 7.139 1 6.5 1c-.669 0-1.606.229-2.415.478A21 21 0 0 0 3 1.845v6.433c.22-.078.48-.167.766-.255C4.576 7.77 5.638 7.5 6.5 7.5c.847 0 1.548.28 2.158.525l.028.01C9.32 8.29 9.86 8.5 10.5 8.5c.668 0 1.606-.229 2.415-.478A21 21 0 0 0 14 7.655V1.222z\"},\"child\":[]}]})(props);\n};\nexport function BsFloppyFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 1.5A1.5 1.5 0 0 1 1.5 0H3v5.5A1.5 1.5 0 0 0 4.5 7h7A1.5 1.5 0 0 0 13 5.5V0h.086a1.5 1.5 0 0 1 1.06.44l1.415 1.414A1.5 1.5 0 0 1 16 2.914V14.5a1.5 1.5 0 0 1-1.5 1.5H14v-5.5A1.5 1.5 0 0 0 12.5 9h-9A1.5 1.5 0 0 0 2 10.5V16h-.5A1.5 1.5 0 0 1 0 14.5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3 16h10v-5.5a.5.5 0 0 0-.5-.5h-9a.5.5 0 0 0-.5.5zm9-16H4v5.5a.5.5 0 0 0 .5.5h7a.5.5 0 0 0 .5-.5zM9 1h2v4H9z\"},\"child\":[]}]})(props);\n};\nexport function BsFloppy (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M11 2H9v3h2z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M1.5 0h11.586a1.5 1.5 0 0 1 1.06.44l1.415 1.414A1.5 1.5 0 0 1 16 2.914V14.5a1.5 1.5 0 0 1-1.5 1.5h-13A1.5 1.5 0 0 1 0 14.5v-13A1.5 1.5 0 0 1 1.5 0M1 1.5v13a.5.5 0 0 0 .5.5H2v-4.5A1.5 1.5 0 0 1 3.5 9h9a1.5 1.5 0 0 1 1.5 1.5V15h.5a.5.5 0 0 0 .5-.5V2.914a.5.5 0 0 0-.146-.353l-1.415-1.415A.5.5 0 0 0 13.086 1H13v4.5A1.5 1.5 0 0 1 11.5 7h-7A1.5 1.5 0 0 1 3 5.5V1H1.5a.5.5 0 0 0-.5.5m3 4a.5.5 0 0 0 .5.5h7a.5.5 0 0 0 .5-.5V1H4zM3 15h10v-4.5a.5.5 0 0 0-.5-.5h-9a.5.5 0 0 0-.5.5z\"},\"child\":[]}]})(props);\n};\nexport function BsFloppy2Fill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12 2h-2v3h2z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M1.5 0A1.5 1.5 0 0 0 0 1.5v13A1.5 1.5 0 0 0 1.5 16h13a1.5 1.5 0 0 0 1.5-1.5V2.914a1.5 1.5 0 0 0-.44-1.06L14.147.439A1.5 1.5 0 0 0 13.086 0zM4 6a1 1 0 0 1-1-1V1h10v4a1 1 0 0 1-1 1zM3 9h10a1 1 0 0 1 1 1v5H2v-5a1 1 0 0 1 1-1\"},\"child\":[]}]})(props);\n};\nexport function BsFloppy2 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M1.5 0h11.586a1.5 1.5 0 0 1 1.06.44l1.415 1.414A1.5 1.5 0 0 1 16 2.914V14.5a1.5 1.5 0 0 1-1.5 1.5h-13A1.5 1.5 0 0 1 0 14.5v-13A1.5 1.5 0 0 1 1.5 0M1 1.5v13a.5.5 0 0 0 .5.5H2v-4.5A1.5 1.5 0 0 1 3.5 9h9a1.5 1.5 0 0 1 1.5 1.5V15h.5a.5.5 0 0 0 .5-.5V2.914a.5.5 0 0 0-.146-.353l-1.415-1.415A.5.5 0 0 0 13.086 1H13v3.5A1.5 1.5 0 0 1 11.5 6h-7A1.5 1.5 0 0 1 3 4.5V1H1.5a.5.5 0 0 0-.5.5m9.5-.5a.5.5 0 0 0-.5.5v3a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-3a.5.5 0 0 0-.5-.5z\"},\"child\":[]}]})(props);\n};\nexport function BsFlower1 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.174 1.184a2 2 0 0 1 3.652 0A2 2 0 0 1 12.99 3.01a2 2 0 0 1 1.826 3.164 2 2 0 0 1 0 3.652 2 2 0 0 1-1.826 3.164 2 2 0 0 1-3.164 1.826 2 2 0 0 1-3.652 0A2 2 0 0 1 3.01 12.99a2 2 0 0 1-1.826-3.164 2 2 0 0 1 0-3.652A2 2 0 0 1 3.01 3.01a2 2 0 0 1 3.164-1.826M8 1a1 1 0 0 0-.998 1.03l.01.091q.017.116.054.296c.049.241.122.542.213.887.182.688.428 1.513.676 2.314L8 5.762l.045-.144c.248-.8.494-1.626.676-2.314.091-.345.164-.646.213-.887a5 5 0 0 0 .064-.386L9 2a1 1 0 0 0-1-1M2 9l.03-.002.091-.01a5 5 0 0 0 .296-.054c.241-.049.542-.122.887-.213a61 61 0 0 0 2.314-.676L5.762 8l-.144-.045a61 61 0 0 0-2.314-.676 17 17 0 0 0-.887-.213 5 5 0 0 0-.386-.064L2 7a1 1 0 1 0 0 2m7 5-.002-.03a5 5 0 0 0-.064-.386 16 16 0 0 0-.213-.888 61 61 0 0 0-.676-2.314L8 10.238l-.045.144c-.248.8-.494 1.626-.676 2.314-.091.345-.164.646-.213.887a5 5 0 0 0-.064.386L7 14a1 1 0 1 0 2 0m-5.696-2.134.025-.017a5 5 0 0 0 .303-.248c.184-.164.408-.377.661-.629A61 61 0 0 0 5.96 9.23l.103-.111-.147.033a61 61 0 0 0-2.343.572c-.344.093-.64.18-.874.258a5 5 0 0 0-.367.138l-.027.014a1 1 0 1 0 1 1.732zM4.5 14.062a1 1 0 0 0 1.366-.366l.014-.027q.014-.03.036-.084a5 5 0 0 0 .102-.283c.078-.233.165-.53.258-.874a61 61 0 0 0 .572-2.343l.033-.147-.11.102a61 61 0 0 0-1.743 1.667 17 17 0 0 0-.629.66 5 5 0 0 0-.248.304l-.017.025a1 1 0 0 0 .366 1.366m9.196-8.196a1 1 0 0 0-1-1.732l-.025.017a5 5 0 0 0-.303.248 17 17 0 0 0-.661.629A61 61 0 0 0 10.04 6.77l-.102.111.147-.033a61 61 0 0 0 2.342-.572c.345-.093.642-.18.875-.258a5 5 0 0 0 .367-.138zM11.5 1.938a1 1 0 0 0-1.366.366l-.014.027q-.014.03-.036.084a5 5 0 0 0-.102.283c-.078.233-.165.53-.258.875a61 61 0 0 0-.572 2.342l-.033.147.11-.102a61 61 0 0 0 1.743-1.667c.252-.253.465-.477.629-.66a5 5 0 0 0 .248-.304l.017-.025a1 1 0 0 0-.366-1.366M14 9a1 1 0 0 0 0-2l-.03.002a5 5 0 0 0-.386.064c-.242.049-.543.122-.888.213-.688.182-1.513.428-2.314.676L10.238 8l.144.045c.8.248 1.626.494 2.314.676.345.091.646.164.887.213a5 5 0 0 0 .386.064zM1.938 4.5a1 1 0 0 0 .393 1.38l.084.035q.108.045.283.103c.233.078.53.165.874.258a61 61 0 0 0 2.343.572l.147.033-.103-.111a61 61 0 0 0-1.666-1.742 17 17 0 0 0-.66-.629 5 5 0 0 0-.304-.248l-.025-.017a1 1 0 0 0-1.366.366m2.196-1.196.017.025a5 5 0 0 0 .248.303c.164.184.377.408.629.661A61 61 0 0 0 6.77 5.96l.111.102-.033-.147a61 61 0 0 0-.572-2.342c-.093-.345-.18-.642-.258-.875a5 5 0 0 0-.138-.367l-.014-.027a1 1 0 1 0-1.732 1m9.928 8.196a1 1 0 0 0-.366-1.366l-.027-.014a5 5 0 0 0-.367-.138c-.233-.078-.53-.165-.875-.258a61 61 0 0 0-2.342-.572l-.147-.033.102.111a61 61 0 0 0 1.667 1.742c.253.252.477.465.66.629a5 5 0 0 0 .304.248l.025.017a1 1 0 0 0 1.366-.366m-3.928 2.196a1 1 0 0 0 1.732-1l-.017-.025a5 5 0 0 0-.248-.303 17 17 0 0 0-.629-.661A61 61 0 0 0 9.23 10.04l-.111-.102.033.147a61 61 0 0 0 .572 2.342c.093.345.18.642.258.875a5 5 0 0 0 .138.367zM8 9.5a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3\"},\"child\":[]}]})(props);\n};\nexport function BsFlower2 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 16a4 4 0 0 0 4-4 4 4 0 0 0 0-8 4 4 0 0 0-8 0 4 4 0 1 0 0 8 4 4 0 0 0 4 4m3-12q0 .11-.03.247c-.544.241-1.091.638-1.598 1.084A3 3 0 0 0 8 5c-.494 0-.96.12-1.372.331-.507-.446-1.054-.843-1.597-1.084A1 1 0 0 1 5 4a3 3 0 0 1 6 0m-.812 6.052A3 3 0 0 0 11 8a3 3 0 0 0-.812-2.052c.215-.18.432-.346.647-.487C11.34 5.131 11.732 5 12 5a3 3 0 1 1 0 6c-.268 0-.66-.13-1.165-.461a7 7 0 0 1-.647-.487m-3.56.617a3 3 0 0 0 2.744 0c.507.446 1.054.842 1.598 1.084q.03.137.03.247a3 3 0 1 1-6 0q0-.11.03-.247c.544-.242 1.091-.638 1.598-1.084m-.816-4.721A3 3 0 0 0 5 8c0 .794.308 1.516.812 2.052a7 7 0 0 1-.647.487C4.66 10.869 4.268 11 4 11a3 3 0 0 1 0-6c.268 0 .66.13 1.165.461.215.141.432.306.647.487M8 9a1 1 0 1 1 0-2 1 1 0 0 1 0 2\"},\"child\":[]}]})(props);\n};\nexport function BsFlower3 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M11.424 8c.437-.052.811-.136 1.04-.268a2 2 0 0 0-2-3.464c-.229.132-.489.414-.752.767C9.886 4.63 10 4.264 10 4a2 2 0 1 0-4 0c0 .264.114.63.288 1.035-.263-.353-.523-.635-.752-.767a2 2 0 0 0-2 3.464c.229.132.603.216 1.04.268-.437.052-.811.136-1.04.268a2 2 0 1 0 2 3.464c.229-.132.489-.414.752-.767C6.114 11.37 6 11.736 6 12a2 2 0 1 0 4 0c0-.264-.114-.63-.288-1.035.263.353.523.635.752.767a2 2 0 1 0 2-3.464c-.229-.132-.603-.216-1.04-.268M9 4a2 2 0 0 1-.045.205q-.059.2-.183.484a13 13 0 0 1-.637 1.223L8 6.142l-.135-.23a13 13 0 0 1-.637-1.223 4 4 0 0 1-.183-.484A2 2 0 0 1 7 4a1 1 0 1 1 2 0M3.67 5.5a1 1 0 0 1 1.366-.366 2 2 0 0 1 .156.142q.142.15.326.4c.245.333.502.747.742 1.163l.13.232-.265.002a13 13 0 0 1-1.379-.06 4 4 0 0 1-.51-.083 2 2 0 0 1-.2-.064A1 1 0 0 1 3.67 5.5m1.366 5.366a1 1 0 0 1-1-1.732l.047-.02q.055-.02.153-.044.202-.048.51-.083a13 13 0 0 1 1.379-.06q.135 0 .266.002l-.131.232c-.24.416-.497.83-.742 1.163a4 4 0 0 1-.327.4 2 2 0 0 1-.155.142M9 12a1 1 0 0 1-2 0 2 2 0 0 1 .045-.206q.058-.198.183-.483c.166-.378.396-.808.637-1.223L8 9.858l.135.23c.241.415.47.845.637 1.223q.124.285.183.484A1.3 1.3 0 0 1 9 12m3.33-6.5a1 1 0 0 1-.366 1.366 2 2 0 0 1-.2.064q-.202.048-.51.083c-.412.045-.898.061-1.379.06q-.135 0-.266-.002l.131-.232c.24-.416.497-.83.742-1.163a4 4 0 0 1 .327-.4q.07-.074.114-.11l.041-.032a1 1 0 0 1 1.366.366m-1.366 5.366a2 2 0 0 1-.155-.141 4 4 0 0 1-.327-.4A13 13 0 0 1 9.74 9.16l-.13-.232.265-.002c.48-.001.967.015 1.379.06q.308.035.51.083.098.024.153.044l.048.02a1 1 0 1 1-1 1.732zM8 9a1 1 0 1 1 0-2 1 1 0 0 1 0 2\"},\"child\":[]}]})(props);\n};\nexport function BsFolderCheck (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m.5 3 .04.87a2 2 0 0 0-.342 1.311l.637 7A2 2 0 0 0 2.826 14H9v-1H2.826a1 1 0 0 1-.995-.91l-.637-7A1 1 0 0 1 2.19 4h11.62a1 1 0 0 1 .996 1.09L14.54 8h1.005l.256-2.819A2 2 0 0 0 13.81 3H9.828a2 2 0 0 1-1.414-.586l-.828-.828A2 2 0 0 0 6.172 1H2.5a2 2 0 0 0-2 2m5.672-1a1 1 0 0 1 .707.293L7.586 3H2.19q-.362.002-.683.12L1.5 2.98a1 1 0 0 1 1-.98z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M15.854 10.146a.5.5 0 0 1 0 .708l-3 3a.5.5 0 0 1-.707 0l-1.5-1.5a.5.5 0 0 1 .707-.708l1.146 1.147 2.646-2.647a.5.5 0 0 1 .708 0\"},\"child\":[]}]})(props);\n};\nexport function BsFolderFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.828 3h3.982a2 2 0 0 1 1.992 2.181l-.637 7A2 2 0 0 1 13.174 14H2.825a2 2 0 0 1-1.991-1.819l-.637-7a2 2 0 0 1 .342-1.31L.5 3a2 2 0 0 1 2-2h3.672a2 2 0 0 1 1.414.586l.828.828A2 2 0 0 0 9.828 3m-8.322.12q.322-.119.684-.12h5.396l-.707-.707A1 1 0 0 0 6.172 2H2.5a1 1 0 0 0-1 .981z\"},\"child\":[]}]})(props);\n};\nexport function BsFolderMinus (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m.5 3 .04.87a2 2 0 0 0-.342 1.311l.637 7A2 2 0 0 0 2.826 14H9v-1H2.826a1 1 0 0 1-.995-.91l-.637-7A1 1 0 0 1 2.19 4h11.62a1 1 0 0 1 .996 1.09L14.54 8h1.005l.256-2.819A2 2 0 0 0 13.81 3H9.828a2 2 0 0 1-1.414-.586l-.828-.828A2 2 0 0 0 6.172 1H2.5a2 2 0 0 0-2 2m5.672-1a1 1 0 0 1 .707.293L7.586 3H2.19q-.362.002-.683.12L1.5 2.98a1 1 0 0 1 1-.98z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M11 11.5a.5.5 0 0 1 .5-.5h4a.5.5 0 1 1 0 1h-4a.5.5 0 0 1-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsFolderPlus (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m.5 3 .04.87a2 2 0 0 0-.342 1.311l.637 7A2 2 0 0 0 2.826 14H9v-1H2.826a1 1 0 0 1-.995-.91l-.637-7A1 1 0 0 1 2.19 4h11.62a1 1 0 0 1 .996 1.09L14.54 8h1.005l.256-2.819A2 2 0 0 0 13.81 3H9.828a2 2 0 0 1-1.414-.586l-.828-.828A2 2 0 0 0 6.172 1H2.5a2 2 0 0 0-2 2m5.672-1a1 1 0 0 1 .707.293L7.586 3H2.19q-.362.002-.683.12L1.5 2.98a1 1 0 0 1 1-.98z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M13.5 9a.5.5 0 0 1 .5.5V11h1.5a.5.5 0 1 1 0 1H14v1.5a.5.5 0 1 1-1 0V12h-1.5a.5.5 0 0 1 0-1H13V9.5a.5.5 0 0 1 .5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsFolderSymlinkFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M13.81 3H9.828a2 2 0 0 1-1.414-.586l-.828-.828A2 2 0 0 0 6.172 1H2.5a2 2 0 0 0-2 2l.04.87a2 2 0 0 0-.342 1.311l.637 7A2 2 0 0 0 2.826 14h10.348a2 2 0 0 0 1.991-1.819l.637-7A2 2 0 0 0 13.81 3M2.19 3q-.362.002-.683.12L1.5 2.98a1 1 0 0 1 1-.98h3.672a1 1 0 0 1 .707.293L7.586 3zm9.608 5.271-3.182 1.97c-.27.166-.616-.036-.616-.372V9.1s-2.571-.3-4 2.4c.571-4.8 3.143-4.8 4-4.8v-.769c0-.336.346-.538.616-.371l3.182 1.969c.27.166.27.576 0 .742\"},\"child\":[]}]})(props);\n};\nexport function BsFolderSymlink (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m11.798 8.271-3.182 1.97c-.27.166-.616-.036-.616-.372V9.1s-2.571-.3-4 2.4c.571-4.8 3.143-4.8 4-4.8v-.769c0-.336.346-.538.616-.371l3.182 1.969c.27.166.27.576 0 .742\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m.5 3 .04.87a2 2 0 0 0-.342 1.311l.637 7A2 2 0 0 0 2.826 14h10.348a2 2 0 0 0 1.991-1.819l.637-7A2 2 0 0 0 13.81 3H9.828a2 2 0 0 1-1.414-.586l-.828-.828A2 2 0 0 0 6.172 1H2.5a2 2 0 0 0-2 2m.694 2.09A1 1 0 0 1 2.19 4h11.62a1 1 0 0 1 .996 1.09l-.636 7a1 1 0 0 1-.996.91H2.826a1 1 0 0 1-.995-.91zM6.172 2a1 1 0 0 1 .707.293L7.586 3H2.19q-.362.002-.683.12L1.5 2.98a1 1 0 0 1 1-.98z\"},\"child\":[]}]})(props);\n};\nexport function BsFolderX (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M.54 3.87.5 3a2 2 0 0 1 2-2h3.672a2 2 0 0 1 1.414.586l.828.828A2 2 0 0 0 9.828 3h3.982a2 2 0 0 1 1.992 2.181L15.546 8H14.54l.265-2.91A1 1 0 0 0 13.81 4H2.19a1 1 0 0 0-.996 1.09l.637 7a1 1 0 0 0 .995.91H9v1H2.826a2 2 0 0 1-1.991-1.819l-.637-7a2 2 0 0 1 .342-1.31zm6.339-1.577A1 1 0 0 0 6.172 2H2.5a1 1 0 0 0-1 .981l.006.139q.323-.119.684-.12h5.396z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M11.854 10.146a.5.5 0 0 0-.707.708L12.293 12l-1.146 1.146a.5.5 0 0 0 .707.708L13 12.707l1.146 1.147a.5.5 0 0 0 .708-.708L13.707 12l1.147-1.146a.5.5 0 0 0-.707-.708L13 11.293z\"},\"child\":[]}]})(props);\n};\nexport function BsFolder (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M.54 3.87.5 3a2 2 0 0 1 2-2h3.672a2 2 0 0 1 1.414.586l.828.828A2 2 0 0 0 9.828 3h3.982a2 2 0 0 1 1.992 2.181l-.637 7A2 2 0 0 1 13.174 14H2.826a2 2 0 0 1-1.991-1.819l-.637-7a2 2 0 0 1 .342-1.31zM2.19 4a1 1 0 0 0-.996 1.09l.637 7a1 1 0 0 0 .995.91h10.348a1 1 0 0 0 .995-.91l.637-7A1 1 0 0 0 13.81 4zm4.69-1.707A1 1 0 0 0 6.172 2H2.5a1 1 0 0 0-1 .981l.006.139q.323-.119.684-.12h5.396z\"},\"child\":[]}]})(props);\n};\nexport function BsFolder2Open (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M1 3.5A1.5 1.5 0 0 1 2.5 2h2.764c.958 0 1.76.56 2.311 1.184C7.985 3.648 8.48 4 9 4h4.5A1.5 1.5 0 0 1 15 5.5v.64c.57.265.94.876.856 1.546l-.64 5.124A2.5 2.5 0 0 1 12.733 15H3.266a2.5 2.5 0 0 1-2.481-2.19l-.64-5.124A1.5 1.5 0 0 1 1 6.14zM2 6h12v-.5a.5.5 0 0 0-.5-.5H9c-.964 0-1.71-.629-2.174-1.154C6.374 3.334 5.82 3 5.264 3H2.5a.5.5 0 0 0-.5.5zm-.367 1a.5.5 0 0 0-.496.562l.64 5.124A1.5 1.5 0 0 0 3.266 14h9.468a1.5 1.5 0 0 0 1.489-1.314l.64-5.124A.5.5 0 0 0 14.367 7z\"},\"child\":[]}]})(props);\n};\nexport function BsFolder2 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M1 3.5A1.5 1.5 0 0 1 2.5 2h2.764c.958 0 1.76.56 2.311 1.184C7.985 3.648 8.48 4 9 4h4.5A1.5 1.5 0 0 1 15 5.5v7a1.5 1.5 0 0 1-1.5 1.5h-11A1.5 1.5 0 0 1 1 12.5zM2.5 3a.5.5 0 0 0-.5.5V6h12v-.5a.5.5 0 0 0-.5-.5H9c-.964 0-1.71-.629-2.174-1.154C6.374 3.334 5.82 3 5.264 3zM14 7H2v5.5a.5.5 0 0 0 .5.5h11a.5.5 0 0 0 .5-.5z\"},\"child\":[]}]})(props);\n};\nexport function BsFonts (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12.258 3h-8.51l-.083 2.46h.479c.26-1.544.758-1.783 2.693-1.845l.424-.013v7.827c0 .663-.144.82-1.3.923v.52h4.082v-.52c-1.162-.103-1.306-.26-1.306-.923V3.602l.431.013c1.934.062 2.434.301 2.693 1.846h.479z\"},\"child\":[]}]})(props);\n};\nexport function BsForwardFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m9.77 12.11 4.012-2.953a.647.647 0 0 0 0-1.114L9.771 5.09a.644.644 0 0 0-.971.557V6.65H2v3.9h6.8v1.003c0 .505.545.808.97.557\"},\"child\":[]}]})(props);\n};\nexport function BsForward (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.502 5.513a.144.144 0 0 0-.202.134V6.65a.5.5 0 0 1-.5.5H2.5v2.9h6.3a.5.5 0 0 1 .5.5v1.003c0 .108.11.176.202.134l3.984-2.933.042-.028a.147.147 0 0 0 0-.252l-.042-.028zM8.3 5.647a1.144 1.144 0 0 1 1.767-.96l3.994 2.94a1.147 1.147 0 0 1 0 1.946l-3.994 2.94a1.144 1.144 0 0 1-1.767-.96v-.503H2a.5.5 0 0 1-.5-.5v-3.9a.5.5 0 0 1 .5-.5h6.3z\"},\"child\":[]}]})(props);\n};\nexport function BsFront (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 2a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v2h2a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2v-2H2a2 2 0 0 1-2-2zm5 10v2a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V6a1 1 0 0 0-1-1h-2v5a2 2 0 0 1-2 2z\"},\"child\":[]}]})(props);\n};\nexport function BsFuelPumpDieselFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4.974 9.806h.692q.459 0 .75.19.297.191.437.568.144.377.144.941 0 .425-.083.74-.08.315-.241.528a1 1 0 0 1-.412.315 1.6 1.6 0 0 1-.595.103h-.692z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M1 2a2 2 0 0 1 2-2h6a2 2 0 0 1 2 2v8a2 2 0 0 1 2 2v.5a.5.5 0 0 0 1 0V8h-.5a.5.5 0 0 1-.5-.5V4.375a.5.5 0 0 1 .5-.5h1.495c-.011-.476-.053-.894-.201-1.222a.97.97 0 0 0-.394-.458c-.184-.11-.464-.195-.9-.195a.5.5 0 0 1 0-1q.846-.002 1.412.336c.383.228.634.551.794.907.295.655.294 1.465.294 2.081V7.5a.5.5 0 0 1-.5.5H15v4.5a1.5 1.5 0 0 1-3 0V12a1 1 0 0 0-1-1v4h.5a.5.5 0 0 1 0 1H.5a.5.5 0 0 1 0-1H1zm2 .5v5a.5.5 0 0 0 .5.5h5a.5.5 0 0 0 .5-.5v-5a.5.5 0 0 0-.5-.5h-5a.5.5 0 0 0-.5.5M4 9v5h1.796q.744 0 1.23-.297.49-.296.732-.86T8 11.487q0-.788-.242-1.344a1.78 1.78 0 0 0-.725-.85Q6.547 9 5.796 9z\"},\"child\":[]}]})(props);\n};\nexport function BsFuelPumpDiesel (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3.5 2a.5.5 0 0 0-.5.5v5a.5.5 0 0 0 .5.5h5a.5.5 0 0 0 .5-.5v-5a.5.5 0 0 0-.5-.5zM4 14V9h1.796q.75 0 1.237.293t.725.85Q8 10.7 8 11.487q0 .792-.242 1.355a1.8 1.8 0 0 1-.732.861Q6.54 14 5.796 14zm1.666-4.194h-.692v3.385h.692q.343 0 .595-.103a1 1 0 0 0 .412-.315q.162-.213.241-.528.084-.314.083-.74 0-.565-.144-.94a1.1 1.1 0 0 0-.436-.569q-.293-.19-.75-.19Z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3 0a2 2 0 0 0-2 2v13H.5a.5.5 0 0 0 0 1h11a.5.5 0 0 0 0-1H11v-4a1 1 0 0 1 1 1v.5a1.5 1.5 0 0 0 3 0V8h.5a.5.5 0 0 0 .5-.5V4.324c0-.616 0-1.426-.294-2.081a1.97 1.97 0 0 0-.794-.907Q14.345.999 13.5 1a.5.5 0 0 0 0 1c.436 0 .716.086.9.195a.97.97 0 0 1 .394.458c.147.328.19.746.201 1.222H13.5a.5.5 0 0 0-.5.5V7.5a.5.5 0 0 0 .5.5h.5v4.5a.5.5 0 0 1-1 0V12a2 2 0 0 0-2-2V2a2 2 0 0 0-2-2zm7 2v13H2V2a1 1 0 0 1 1-1h6a1 1 0 0 1 1 1\"},\"child\":[]}]})(props);\n};\nexport function BsFuelPumpFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M1 2a2 2 0 0 1 2-2h6a2 2 0 0 1 2 2v8a2 2 0 0 1 2 2v.5a.5.5 0 0 0 1 0V8h-.5a.5.5 0 0 1-.5-.5V4.375a.5.5 0 0 1 .5-.5h1.495c-.011-.476-.053-.894-.201-1.222a.97.97 0 0 0-.394-.458c-.184-.11-.464-.195-.9-.195a.5.5 0 0 1 0-1q.846-.002 1.412.336c.383.228.634.551.794.907.295.655.294 1.465.294 2.081V7.5a.5.5 0 0 1-.5.5H15v4.5a1.5 1.5 0 0 1-3 0V12a1 1 0 0 0-1-1v4h.5a.5.5 0 0 1 0 1H.5a.5.5 0 0 1 0-1H1zm2.5 0a.5.5 0 0 0-.5.5v5a.5.5 0 0 0 .5.5h5a.5.5 0 0 0 .5-.5v-5a.5.5 0 0 0-.5-.5z\"},\"child\":[]}]})(props);\n};\nexport function BsFuelPump (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3 2.5a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 .5.5v5a.5.5 0 0 1-.5.5h-5a.5.5 0 0 1-.5-.5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M1 2a2 2 0 0 1 2-2h6a2 2 0 0 1 2 2v8a2 2 0 0 1 2 2v.5a.5.5 0 0 0 1 0V8h-.5a.5.5 0 0 1-.5-.5V4.375a.5.5 0 0 1 .5-.5h1.495c-.011-.476-.053-.894-.201-1.222a.97.97 0 0 0-.394-.458c-.184-.11-.464-.195-.9-.195a.5.5 0 0 1 0-1q.846-.002 1.412.336c.383.228.634.551.794.907.295.655.294 1.465.294 2.081v3.175a.5.5 0 0 1-.5.501H15v4.5a1.5 1.5 0 0 1-3 0V12a1 1 0 0 0-1-1v4h.5a.5.5 0 0 1 0 1H.5a.5.5 0 0 1 0-1H1zm9 0a1 1 0 0 0-1-1H3a1 1 0 0 0-1 1v13h8z\"},\"child\":[]}]})(props);\n};\nexport function BsFullscreenExit (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5.5 0a.5.5 0 0 1 .5.5v4A1.5 1.5 0 0 1 4.5 6h-4a.5.5 0 0 1 0-1h4a.5.5 0 0 0 .5-.5v-4a.5.5 0 0 1 .5-.5m5 0a.5.5 0 0 1 .5.5v4a.5.5 0 0 0 .5.5h4a.5.5 0 0 1 0 1h-4A1.5 1.5 0 0 1 10 4.5v-4a.5.5 0 0 1 .5-.5M0 10.5a.5.5 0 0 1 .5-.5h4A1.5 1.5 0 0 1 6 11.5v4a.5.5 0 0 1-1 0v-4a.5.5 0 0 0-.5-.5h-4a.5.5 0 0 1-.5-.5m10 1a1.5 1.5 0 0 1 1.5-1.5h4a.5.5 0 0 1 0 1h-4a.5.5 0 0 0-.5.5v4a.5.5 0 0 1-1 0z\"},\"child\":[]}]})(props);\n};\nexport function BsFullscreen (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M1.5 1a.5.5 0 0 0-.5.5v4a.5.5 0 0 1-1 0v-4A1.5 1.5 0 0 1 1.5 0h4a.5.5 0 0 1 0 1zM10 .5a.5.5 0 0 1 .5-.5h4A1.5 1.5 0 0 1 16 1.5v4a.5.5 0 0 1-1 0v-4a.5.5 0 0 0-.5-.5h-4a.5.5 0 0 1-.5-.5M.5 10a.5.5 0 0 1 .5.5v4a.5.5 0 0 0 .5.5h4a.5.5 0 0 1 0 1h-4A1.5 1.5 0 0 1 0 14.5v-4a.5.5 0 0 1 .5-.5m15 0a.5.5 0 0 1 .5.5v4a1.5 1.5 0 0 1-1.5 1.5h-4a.5.5 0 0 1 0-1h4a.5.5 0 0 0 .5-.5v-4a.5.5 0 0 1 .5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsFunnelFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M1.5 1.5A.5.5 0 0 1 2 1h12a.5.5 0 0 1 .5.5v2a.5.5 0 0 1-.128.334L10 8.692V13.5a.5.5 0 0 1-.342.474l-3 1A.5.5 0 0 1 6 14.5V8.692L1.628 3.834A.5.5 0 0 1 1.5 3.5z\"},\"child\":[]}]})(props);\n};\nexport function BsFunnel (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M1.5 1.5A.5.5 0 0 1 2 1h12a.5.5 0 0 1 .5.5v2a.5.5 0 0 1-.128.334L10 8.692V13.5a.5.5 0 0 1-.342.474l-3 1A.5.5 0 0 1 6 14.5V8.692L1.628 3.834A.5.5 0 0 1 1.5 3.5zm1 .5v1.308l4.372 4.858A.5.5 0 0 1 7 8.5v5.306l2-.666V8.5a.5.5 0 0 1 .128-.334L13.5 3.308V2z\"},\"child\":[]}]})(props);\n};\nexport function BsGearFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.405 1.05c-.413-1.4-2.397-1.4-2.81 0l-.1.34a1.464 1.464 0 0 1-2.105.872l-.31-.17c-1.283-.698-2.686.705-1.987 1.987l.169.311c.446.82.023 1.841-.872 2.105l-.34.1c-1.4.413-1.4 2.397 0 2.81l.34.1a1.464 1.464 0 0 1 .872 2.105l-.17.31c-.698 1.283.705 2.686 1.987 1.987l.311-.169a1.464 1.464 0 0 1 2.105.872l.1.34c.413 1.4 2.397 1.4 2.81 0l.1-.34a1.464 1.464 0 0 1 2.105-.872l.31.17c1.283.698 2.686-.705 1.987-1.987l-.169-.311a1.464 1.464 0 0 1 .872-2.105l.34-.1c1.4-.413 1.4-2.397 0-2.81l-.34-.1a1.464 1.464 0 0 1-.872-2.105l.17-.31c.698-1.283-.705-2.686-1.987-1.987l-.311.169a1.464 1.464 0 0 1-2.105-.872zM8 10.93a2.929 2.929 0 1 1 0-5.86 2.929 2.929 0 0 1 0 5.858z\"},\"child\":[]}]})(props);\n};\nexport function BsGearWideConnected (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.068.727c.243-.97 1.62-.97 1.864 0l.071.286a.96.96 0 0 0 1.622.434l.205-.211c.695-.719 1.888-.03 1.613.931l-.08.284a.96.96 0 0 0 1.187 1.187l.283-.081c.96-.275 1.65.918.931 1.613l-.211.205a.96.96 0 0 0 .434 1.622l.286.071c.97.243.97 1.62 0 1.864l-.286.071a.96.96 0 0 0-.434 1.622l.211.205c.719.695.03 1.888-.931 1.613l-.284-.08a.96.96 0 0 0-1.187 1.187l.081.283c.275.96-.918 1.65-1.613.931l-.205-.211a.96.96 0 0 0-1.622.434l-.071.286c-.243.97-1.62.97-1.864 0l-.071-.286a.96.96 0 0 0-1.622-.434l-.205.211c-.695.719-1.888.03-1.613-.931l.08-.284a.96.96 0 0 0-1.186-1.187l-.284.081c-.96.275-1.65-.918-.931-1.613l.211-.205a.96.96 0 0 0-.434-1.622l-.286-.071c-.97-.243-.97-1.62 0-1.864l.286-.071a.96.96 0 0 0 .434-1.622l-.211-.205c-.719-.695-.03-1.888.931-1.613l.284.08a.96.96 0 0 0 1.187-1.186l-.081-.284c-.275-.96.918-1.65 1.613-.931l.205.211a.96.96 0 0 0 1.622-.434zM12.973 8.5H8.25l-2.834 3.779A4.998 4.998 0 0 0 12.973 8.5m0-1a4.998 4.998 0 0 0-7.557-3.779l2.834 3.78zM5.048 3.967l-.087.065zm-.431.355A4.98 4.98 0 0 0 3.002 8c0 1.455.622 2.765 1.615 3.678L7.375 8zm.344 7.646.087.065z\"},\"child\":[]}]})(props);\n};\nexport function BsGearWide (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.932.727c-.243-.97-1.62-.97-1.864 0l-.071.286a.96.96 0 0 1-1.622.434l-.205-.211c-.695-.719-1.888-.03-1.613.931l.08.284a.96.96 0 0 1-1.186 1.187l-.284-.081c-.96-.275-1.65.918-.931 1.613l.211.205a.96.96 0 0 1-.434 1.622l-.286.071c-.97.243-.97 1.62 0 1.864l.286.071a.96.96 0 0 1 .434 1.622l-.211.205c-.719.695-.03 1.888.931 1.613l.284-.08a.96.96 0 0 1 1.187 1.187l-.081.283c-.275.96.918 1.65 1.613.931l.205-.211a.96.96 0 0 1 1.622.434l.071.286c.243.97 1.62.97 1.864 0l.071-.286a.96.96 0 0 1 1.622-.434l.205.211c.695.719 1.888.03 1.613-.931l-.08-.284a.96.96 0 0 1 1.187-1.187l.283.081c.96.275 1.65-.918.931-1.613l-.211-.205a.96.96 0 0 1 .434-1.622l.286-.071c.97-.243.97-1.62 0-1.864l-.286-.071a.96.96 0 0 1-.434-1.622l.211-.205c.719-.695.03-1.888-.931-1.613l-.284.08a.96.96 0 0 1-1.187-1.186l.081-.284c.275-.96-.918-1.65-1.613-.931l-.205.211a.96.96 0 0 1-1.622-.434zM8 12.997a4.998 4.998 0 1 1 0-9.995 4.998 4.998 0 0 1 0 9.996z\"},\"child\":[]}]})(props);\n};\nexport function BsGear (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 4.754a3.246 3.246 0 1 0 0 6.492 3.246 3.246 0 0 0 0-6.492M5.754 8a2.246 2.246 0 1 1 4.492 0 2.246 2.246 0 0 1-4.492 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M9.796 1.343c-.527-1.79-3.065-1.79-3.592 0l-.094.319a.873.873 0 0 1-1.255.52l-.292-.16c-1.64-.892-3.433.902-2.54 2.541l.159.292a.873.873 0 0 1-.52 1.255l-.319.094c-1.79.527-1.79 3.065 0 3.592l.319.094a.873.873 0 0 1 .52 1.255l-.16.292c-.892 1.64.901 3.434 2.541 2.54l.292-.159a.873.873 0 0 1 1.255.52l.094.319c.527 1.79 3.065 1.79 3.592 0l.094-.319a.873.873 0 0 1 1.255-.52l.292.16c1.64.893 3.434-.902 2.54-2.541l-.159-.292a.873.873 0 0 1 .52-1.255l.319-.094c1.79-.527 1.79-3.065 0-3.592l-.319-.094a.873.873 0 0 1-.52-1.255l.16-.292c.893-1.64-.902-3.433-2.541-2.54l-.292.159a.873.873 0 0 1-1.255-.52zm-2.633.283c.246-.835 1.428-.835 1.674 0l.094.319a1.873 1.873 0 0 0 2.693 1.115l.291-.16c.764-.415 1.6.42 1.184 1.185l-.159.292a1.873 1.873 0 0 0 1.116 2.692l.318.094c.835.246.835 1.428 0 1.674l-.319.094a1.873 1.873 0 0 0-1.115 2.693l.16.291c.415.764-.42 1.6-1.185 1.184l-.291-.159a1.873 1.873 0 0 0-2.693 1.116l-.094.318c-.246.835-1.428.835-1.674 0l-.094-.319a1.873 1.873 0 0 0-2.692-1.115l-.292.16c-.764.415-1.6-.42-1.184-1.185l.159-.291A1.873 1.873 0 0 0 1.945 8.93l-.319-.094c-.835-.246-.835-1.428 0-1.674l.319-.094A1.873 1.873 0 0 0 3.06 4.377l-.16-.292c-.415-.764.42-1.6 1.185-1.184l.292.159a1.873 1.873 0 0 0 2.692-1.115z\"},\"child\":[]}]})(props);\n};\nexport function BsGem (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3.1.7a.5.5 0 0 1 .4-.2h9a.5.5 0 0 1 .4.2l2.976 3.974c.149.185.156.45.01.644L8.4 15.3a.5.5 0 0 1-.8 0L.1 5.3a.5.5 0 0 1 0-.6zm11.386 3.785-1.806-2.41-.776 2.413zm-3.633.004.961-2.989H4.186l.963 2.995zM5.47 5.495 8 13.366l2.532-7.876zm-1.371-.999-.78-2.422-1.818 2.425zM1.499 5.5l5.113 6.817-2.192-6.82zm7.889 6.817 5.123-6.83-2.928.002z\"},\"child\":[]}]})(props);\n};\nexport function BsGenderAmbiguous (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M11.5 1a.5.5 0 0 1 0-1h4a.5.5 0 0 1 .5.5v4a.5.5 0 0 1-1 0V1.707l-3.45 3.45A4 4 0 0 1 8.5 10.97V13H10a.5.5 0 0 1 0 1H8.5v1.5a.5.5 0 0 1-1 0V14H6a.5.5 0 0 1 0-1h1.5v-2.03a4 4 0 1 1 3.471-6.648L14.293 1zm-.997 4.346a3 3 0 1 0-5.006 3.309 3 3 0 0 0 5.006-3.31z\"},\"child\":[]}]})(props);\n};\nexport function BsGenderFemale (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M8 1a4 4 0 1 0 0 8 4 4 0 0 0 0-8M3 5a5 5 0 1 1 5.5 4.975V12h2a.5.5 0 0 1 0 1h-2v2.5a.5.5 0 0 1-1 0V13h-2a.5.5 0 0 1 0-1h2V9.975A5 5 0 0 1 3 5\"},\"child\":[]}]})(props);\n};\nexport function BsGenderMale (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M9.5 2a.5.5 0 0 1 0-1h5a.5.5 0 0 1 .5.5v5a.5.5 0 0 1-1 0V2.707L9.871 6.836a5 5 0 1 1-.707-.707L13.293 2zM6 6a4 4 0 1 0 0 8 4 4 0 0 0 0-8\"},\"child\":[]}]})(props);\n};\nexport function BsGenderNeuter (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M8 1a4 4 0 1 0 0 8 4 4 0 0 0 0-8M3 5a5 5 0 1 1 5.5 4.975V15.5a.5.5 0 0 1-1 0V9.975A5 5 0 0 1 3 5\"},\"child\":[]}]})(props);\n};\nexport function BsGenderTrans (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M0 .5A.5.5 0 0 1 .5 0h3a.5.5 0 0 1 0 1H1.707L3.5 2.793l.646-.647a.5.5 0 1 1 .708.708l-.647.646.822.822A4 4 0 0 1 8 3c1.18 0 2.239.51 2.971 1.322L14.293 1H11.5a.5.5 0 0 1 0-1h4a.5.5 0 0 1 .5.5v4a.5.5 0 0 1-1 0V1.707l-3.45 3.45A4 4 0 0 1 8.5 10.97V13H10a.5.5 0 0 1 0 1H8.5v1.5a.5.5 0 0 1-1 0V14H6a.5.5 0 0 1 0-1h1.5v-2.03a4 4 0 0 1-3.05-5.814l-.95-.949-.646.647a.5.5 0 1 1-.708-.708l.647-.646L1 1.707V3.5a.5.5 0 0 1-1 0zm5.49 4.856a3 3 0 1 0 5.02 3.288 3 3 0 0 0-5.02-3.288\"},\"child\":[]}]})(props);\n};\nexport function BsGeoAltFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 16s6-5.686 6-10A6 6 0 0 0 2 6c0 4.314 6 10 6 10m0-7a3 3 0 1 1 0-6 3 3 0 0 1 0 6\"},\"child\":[]}]})(props);\n};\nexport function BsGeoAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12.166 8.94c-.524 1.062-1.234 2.12-1.96 3.07A32 32 0 0 1 8 14.58a32 32 0 0 1-2.206-2.57c-.726-.95-1.436-2.008-1.96-3.07C3.304 7.867 3 6.862 3 6a5 5 0 0 1 10 0c0 .862-.305 1.867-.834 2.94M8 16s6-5.686 6-10A6 6 0 0 0 2 6c0 4.314 6 10 6 10\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8 8a2 2 0 1 1 0-4 2 2 0 0 1 0 4m0 1a3 3 0 1 0 0-6 3 3 0 0 0 0 6\"},\"child\":[]}]})(props);\n};\nexport function BsGeoFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M4 4a4 4 0 1 1 4.5 3.969V13.5a.5.5 0 0 1-1 0V7.97A4 4 0 0 1 4 3.999zm2.493 8.574a.5.5 0 0 1-.411.575c-.712.118-1.28.295-1.655.493a1.3 1.3 0 0 0-.37.265.3.3 0 0 0-.057.09V14l.002.008.016.033a.6.6 0 0 0 .145.15c.165.13.435.27.813.395.751.25 1.82.414 3.024.414s2.273-.163 3.024-.414c.378-.126.648-.265.813-.395a.6.6 0 0 0 .146-.15l.015-.033L12 14v-.004a.3.3 0 0 0-.057-.09 1.3 1.3 0 0 0-.37-.264c-.376-.198-.943-.375-1.655-.493a.5.5 0 1 1 .164-.986c.77.127 1.452.328 1.957.594C12.5 13 13 13.4 13 14c0 .426-.26.752-.544.977-.29.228-.68.413-1.116.558-.878.293-2.059.465-3.34.465s-2.462-.172-3.34-.465c-.436-.145-.826-.33-1.116-.558C3.26 14.752 3 14.426 3 14c0-.599.5-1 .961-1.243.505-.266 1.187-.467 1.957-.594a.5.5 0 0 1 .575.411\"},\"child\":[]}]})(props);\n};\nexport function BsGeo (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M8 1a3 3 0 1 0 0 6 3 3 0 0 0 0-6M4 4a4 4 0 1 1 4.5 3.969V13.5a.5.5 0 0 1-1 0V7.97A4 4 0 0 1 4 3.999zm2.493 8.574a.5.5 0 0 1-.411.575c-.712.118-1.28.295-1.655.493a1.3 1.3 0 0 0-.37.265.3.3 0 0 0-.057.09V14l.002.008.016.033a.6.6 0 0 0 .145.15c.165.13.435.27.813.395.751.25 1.82.414 3.024.414s2.273-.163 3.024-.414c.378-.126.648-.265.813-.395a.6.6 0 0 0 .146-.15l.015-.033L12 14v-.004a.3.3 0 0 0-.057-.09 1.3 1.3 0 0 0-.37-.264c-.376-.198-.943-.375-1.655-.493a.5.5 0 1 1 .164-.986c.77.127 1.452.328 1.957.594C12.5 13 13 13.4 13 14c0 .426-.26.752-.544.977-.29.228-.68.413-1.116.558-.878.293-2.059.465-3.34.465s-2.462-.172-3.34-.465c-.436-.145-.826-.33-1.116-.558C3.26 14.752 3 14.426 3 14c0-.599.5-1 .961-1.243.505-.266 1.187-.467 1.957-.594a.5.5 0 0 1 .575.411\"},\"child\":[]}]})(props);\n};\nexport function BsGiftFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3 2.5a2.5 2.5 0 0 1 5 0 2.5 2.5 0 0 1 5 0v.006c0 .07 0 .27-.038.494H15a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1H1a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h2.038A3 3 0 0 1 3 2.506zm1.068.5H7v-.5a1.5 1.5 0 1 0-3 0c0 .085.002.274.045.43zM9 3h2.932l.023-.07c.043-.156.045-.345.045-.43a1.5 1.5 0 0 0-3 0zm6 4v7.5a1.5 1.5 0 0 1-1.5 1.5H9V7zM2.5 16A1.5 1.5 0 0 1 1 14.5V7h6v9z\"},\"child\":[]}]})(props);\n};\nexport function BsGift (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3 2.5a2.5 2.5 0 0 1 5 0 2.5 2.5 0 0 1 5 0v.006c0 .07 0 .27-.038.494H15a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1v7.5a1.5 1.5 0 0 1-1.5 1.5h-11A1.5 1.5 0 0 1 1 14.5V7a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h2.038A3 3 0 0 1 3 2.506zm1.068.5H7v-.5a1.5 1.5 0 1 0-3 0c0 .085.002.274.045.43zM9 3h2.932l.023-.07c.043-.156.045-.345.045-.43a1.5 1.5 0 0 0-3 0zM1 4v2h6V4zm8 0v2h6V4zm5 3H9v8h4.5a.5.5 0 0 0 .5-.5zm-7 8V7H2v7.5a.5.5 0 0 0 .5.5z\"},\"child\":[]}]})(props);\n};\nexport function BsGit (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M15.698 7.287 8.712.302a1.03 1.03 0 0 0-1.457 0l-1.45 1.45 1.84 1.84a1.223 1.223 0 0 1 1.55 1.56l1.773 1.774a1.224 1.224 0 0 1 1.267 2.025 1.226 1.226 0 0 1-2.002-1.334L8.58 5.963v4.353a1.226 1.226 0 1 1-1.008-.036V5.887a1.226 1.226 0 0 1-.666-1.608L5.093 2.465l-4.79 4.79a1.03 1.03 0 0 0 0 1.457l6.986 6.986a1.03 1.03 0 0 0 1.457 0l6.953-6.953a1.03 1.03 0 0 0 0-1.457\"},\"child\":[]}]})(props);\n};\nexport function BsGithub (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 0C3.58 0 0 3.58 0 8c0 3.54 2.29 6.53 5.47 7.59.4.07.55-.17.55-.38 0-.19-.01-.82-.01-1.49-2.01.37-2.53-.49-2.69-.94-.09-.23-.48-.94-.82-1.13-.28-.15-.68-.52-.01-.53.63-.01 1.08.58 1.23.82.72 1.21 1.87.87 2.33.66.07-.52.28-.87.51-1.07-1.78-.2-3.64-.89-3.64-3.95 0-.87.31-1.59.82-2.15-.08-.2-.36-1.02.08-2.12 0 0 .67-.21 2.2.82.64-.18 1.32-.27 2-.27s1.36.09 2 .27c1.53-1.04 2.2-.82 2.2-.82.44 1.1.16 1.92.08 2.12.51.56.82 1.27.82 2.15 0 3.07-1.87 3.75-3.65 3.95.29.25.54.73.54 1.48 0 1.07-.01 1.93-.01 2.2 0 .21.15.46.55.38A8.01 8.01 0 0 0 16 8c0-4.42-3.58-8-8-8\"},\"child\":[]}]})(props);\n};\nexport function BsGitlab (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m15.734 6.1-.022-.058L13.534.358a.57.57 0 0 0-.563-.356.6.6 0 0 0-.328.122.6.6 0 0 0-.193.294l-1.47 4.499H5.025l-1.47-4.5A.572.572 0 0 0 2.47.358L.289 6.04l-.022.057A4.044 4.044 0 0 0 1.61 10.77l.007.006.02.014 3.318 2.485 1.64 1.242 1 .755a.67.67 0 0 0 .814 0l1-.755 1.64-1.242 3.338-2.5.009-.007a4.05 4.05 0 0 0 1.34-4.668Z\"},\"child\":[]}]})(props);\n};\nexport function BsGlobeAmericas (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 0a8 8 0 1 0 0 16A8 8 0 0 0 8 0M2.04 4.326c.325 1.329 2.532 2.54 3.717 3.19.48.263.793.434.743.484q-.121.12-.242.234c-.416.396-.787.749-.758 1.266.035.634.618.824 1.214 1.017.577.188 1.168.38 1.286.983.082.417-.075.988-.22 1.52-.215.782-.406 1.48.22 1.48 1.5-.5 3.798-3.186 4-5 .138-1.243-2-2-3.5-2.5-.478-.16-.755.081-.99.284-.172.15-.322.279-.51.216-.445-.148-2.5-2-1.5-2.5.78-.39.952-.171 1.227.182.078.099.163.208.273.318.609.304.662-.132.723-.633.039-.322.081-.671.277-.867.434-.434 1.265-.791 2.028-1.12.712-.306 1.365-.587 1.579-.88A7 7 0 1 1 2.04 4.327Z\"},\"child\":[]}]})(props);\n};\nexport function BsGlobeAsiaAustralia (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m10.495 6.92 1.278-.619a.483.483 0 0 0 .126-.782c-.252-.244-.682-.139-.932.107-.23.226-.513.373-.816.53l-.102.054c-.338.178-.264.626.1.736a.48.48 0 0 0 .346-.027ZM7.741 9.808V9.78a.413.413 0 1 1 .783.183l-.22.443a.6.6 0 0 1-.12.167l-.193.185a.36.36 0 1 1-.5-.516l.112-.108a.45.45 0 0 0 .138-.326M5.672 12.5l.482.233A.386.386 0 1 0 6.32 12h-.416a.7.7 0 0 1-.419-.139l-.277-.206a.302.302 0 1 0-.298.52z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8 0a8 8 0 1 0 0 16A8 8 0 0 0 8 0M1.612 10.867l.756-1.288a1 1 0 0 1 1.545-.225l1.074 1.005a.986.986 0 0 0 1.36-.011l.038-.037a.88.88 0 0 0 .26-.755c-.075-.548.37-1.033.92-1.099.728-.086 1.587-.324 1.728-.957.086-.386-.114-.83-.361-1.2-.207-.312 0-.8.374-.8.123 0 .24-.055.318-.15l.393-.474c.196-.237.491-.368.797-.403.554-.064 1.407-.277 1.583-.973.098-.391-.192-.634-.484-.88-.254-.212-.51-.426-.515-.741a7 7 0 0 1 3.425 7.692 1 1 0 0 0-.087-.063l-.316-.204a1 1 0 0 0-.977-.06l-.169.082a1 1 0 0 1-.741.051l-1.021-.329A1 1 0 0 0 11.205 9h-.165a1 1 0 0 0-.945.674l-.172.499a1 1 0 0 1-.404.514l-.802.518a1 1 0 0 0-.458.84v.455a1 1 0 0 0 1 1h.257a1 1 0 0 1 .542.16l.762.49a1 1 0 0 0 .283.126 7 7 0 0 1-9.49-3.409Z\"},\"child\":[]}]})(props);\n};\nexport function BsGlobeCentralSouthAsia (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 0a8 8 0 1 0 0 16A8 8 0 0 0 8 0M4.882 1.731a.48.48 0 0 0 .14.291.487.487 0 0 1-.126.78l-.291.146a.7.7 0 0 0-.188.135l-.48.48a1 1 0 0 1-1.023.242l-.02-.007a1 1 0 0 0-.462-.04 7 7 0 0 1 2.45-2.027m-3 9.674.86-.216a1 1 0 0 0 .758-.97v-.184a1 1 0 0 1 .445-.832l.04-.026a1 1 0 0 0 .152-1.54L3.121 6.621a.414.414 0 0 1 .542-.624l1.09.818a.5.5 0 0 0 .523.047.5.5 0 0 1 .724.447v.455a.8.8 0 0 0 .131.433l.795 1.192a1 1 0 0 1 .116.238l.73 2.19a1 1 0 0 0 .949.683h.058a1 1 0 0 0 .949-.684l.73-2.189a1 1 0 0 1 .116-.238l.791-1.187A.45.45 0 0 1 11.743 8c.16 0 .306.084.392.218.557.875 1.63 2.282 2.365 2.282l.04-.001a7.003 7.003 0 0 1-12.658.905Z\"},\"child\":[]}]})(props);\n};\nexport function BsGlobeEuropeAfrica (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 0a8 8 0 1 0 0 16A8 8 0 0 0 8 0M3.668 2.501l-.288.646a.847.847 0 0 0 1.479.815l.245-.368a.81.81 0 0 1 1.034-.275.81.81 0 0 0 .724 0l.261-.13a1 1 0 0 1 .775-.05l.984.34q.118.04.243.054c.784.093.855.377.694.801-.155.41-.616.617-1.035.487l-.01-.003C8.274 4.663 7.748 4.5 6 4.5 4.8 4.5 3.5 5.62 3.5 7c0 1.96.826 2.166 1.696 2.382.46.115.935.233 1.304.618.449.467.393 1.181.339 1.877C6.755 12.96 6.674 14 8.5 14c1.75 0 3-3.5 3-4.5 0-.262.208-.468.444-.7.396-.392.87-.86.556-1.8-.097-.291-.396-.568-.641-.756-.174-.133-.207-.396-.052-.551a.33.33 0 0 1 .42-.042l1.085.724c.11.072.255.058.348-.035.15-.15.415-.083.489.117.16.43.445 1.05.849 1.357L15 8A7 7 0 1 1 3.668 2.501\"},\"child\":[]}]})(props);\n};\nexport function BsGlobe (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 8a8 8 0 1 1 16 0A8 8 0 0 1 0 8m7.5-6.923c-.67.204-1.335.82-1.887 1.855A8 8 0 0 0 5.145 4H7.5zM4.09 4a9.3 9.3 0 0 1 .64-1.539 7 7 0 0 1 .597-.933A7.03 7.03 0 0 0 2.255 4zm-.582 3.5c.03-.877.138-1.718.312-2.5H1.674a7 7 0 0 0-.656 2.5zM4.847 5a12.5 12.5 0 0 0-.338 2.5H7.5V5zM8.5 5v2.5h2.99a12.5 12.5 0 0 0-.337-2.5zM4.51 8.5a12.5 12.5 0 0 0 .337 2.5H7.5V8.5zm3.99 0V11h2.653c.187-.765.306-1.608.338-2.5zM5.145 12q.208.58.468 1.068c.552 1.035 1.218 1.65 1.887 1.855V12zm.182 2.472a7 7 0 0 1-.597-.933A9.3 9.3 0 0 1 4.09 12H2.255a7 7 0 0 0 3.072 2.472M3.82 11a13.7 13.7 0 0 1-.312-2.5h-2.49c.062.89.291 1.733.656 2.5zm6.853 3.472A7 7 0 0 0 13.745 12H11.91a9.3 9.3 0 0 1-.64 1.539 7 7 0 0 1-.597.933M8.5 12v2.923c.67-.204 1.335-.82 1.887-1.855q.26-.487.468-1.068zm3.68-1h2.146c.365-.767.594-1.61.656-2.5h-2.49a13.7 13.7 0 0 1-.312 2.5m2.802-3.5a7 7 0 0 0-.656-2.5H12.18c.174.782.282 1.623.312 2.5zM11.27 2.461c.247.464.462.98.64 1.539h1.835a7 7 0 0 0-3.072-2.472c.218.284.418.598.597.933M10.855 4a8 8 0 0 0-.468-1.068C9.835 1.897 9.17 1.282 8.5 1.077V4z\"},\"child\":[]}]})(props);\n};\nexport function BsGlobe2 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 8a8 8 0 1 1 16 0A8 8 0 0 1 0 8m7.5-6.923c-.67.204-1.335.82-1.887 1.855q-.215.403-.395.872c.705.157 1.472.257 2.282.287zM4.249 3.539q.214-.577.481-1.078a7 7 0 0 1 .597-.933A7 7 0 0 0 3.051 3.05q.544.277 1.198.49zM3.509 7.5c.036-1.07.188-2.087.436-3.008a9 9 0 0 1-1.565-.667A6.96 6.96 0 0 0 1.018 7.5zm1.4-2.741a12.3 12.3 0 0 0-.4 2.741H7.5V5.091c-.91-.03-1.783-.145-2.591-.332M8.5 5.09V7.5h2.99a12.3 12.3 0 0 0-.399-2.741c-.808.187-1.681.301-2.591.332zM4.51 8.5c.035.987.176 1.914.399 2.741A13.6 13.6 0 0 1 7.5 10.91V8.5zm3.99 0v2.409c.91.03 1.783.145 2.591.332.223-.827.364-1.754.4-2.741zm-3.282 3.696q.18.469.395.872c.552 1.035 1.218 1.65 1.887 1.855V11.91c-.81.03-1.577.13-2.282.287zm.11 2.276a7 7 0 0 1-.598-.933 9 9 0 0 1-.481-1.079 8.4 8.4 0 0 0-1.198.49 7 7 0 0 0 2.276 1.522zm-1.383-2.964A13.4 13.4 0 0 1 3.508 8.5h-2.49a6.96 6.96 0 0 0 1.362 3.675c.47-.258.995-.482 1.565-.667m6.728 2.964a7 7 0 0 0 2.275-1.521 8.4 8.4 0 0 0-1.197-.49 9 9 0 0 1-.481 1.078 7 7 0 0 1-.597.933M8.5 11.909v3.014c.67-.204 1.335-.82 1.887-1.855q.216-.403.395-.872A12.6 12.6 0 0 0 8.5 11.91zm3.555-.401c.57.185 1.095.409 1.565.667A6.96 6.96 0 0 0 14.982 8.5h-2.49a13.4 13.4 0 0 1-.437 3.008M14.982 7.5a6.96 6.96 0 0 0-1.362-3.675c-.47.258-.995.482-1.565.667.248.92.4 1.938.437 3.008zM11.27 2.461q.266.502.482 1.078a8.4 8.4 0 0 0 1.196-.49 7 7 0 0 0-2.275-1.52c.218.283.418.597.597.932m-.488 1.343a8 8 0 0 0-.395-.872C9.835 1.897 9.17 1.282 8.5 1.077V4.09c.81-.03 1.577-.13 2.282-.287z\"},\"child\":[]}]})(props);\n};\nexport function BsGooglePlay (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M14.222 9.374c1.037-.61 1.037-2.137 0-2.748L11.528 5.04 8.32 8l3.207 2.96zm-3.595 2.116L7.583 8.68 1.03 14.73c.201 1.029 1.36 1.61 2.303 1.055zM1 13.396V2.603L6.846 8zM1.03 1.27l6.553 6.05 3.044-2.81L3.333.215C2.39-.341 1.231.24 1.03 1.27\"},\"child\":[]}]})(props);\n};\nexport function BsGoogle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M15.545 6.558a9.4 9.4 0 0 1 .139 1.626c0 2.434-.87 4.492-2.384 5.885h.002C11.978 15.292 10.158 16 8 16A8 8 0 1 1 8 0a7.7 7.7 0 0 1 5.352 2.082l-2.284 2.284A4.35 4.35 0 0 0 8 3.166c-2.087 0-3.86 1.408-4.492 3.304a4.8 4.8 0 0 0 0 3.063h.003c.635 1.893 2.405 3.301 4.492 3.301 1.078 0 2.004-.276 2.722-.764h-.003a3.7 3.7 0 0 0 1.599-2.431H8v-3.08z\"},\"child\":[]}]})(props);\n};\nexport function BsGpuCard (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4 8a1.5 1.5 0 1 1 3 0 1.5 1.5 0 0 1-3 0m7.5-1.5a1.5 1.5 0 1 0 0 3 1.5 1.5 0 0 0 0-3\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M0 1.5A.5.5 0 0 1 .5 1h1a.5.5 0 0 1 .5.5V4h13.5a.5.5 0 0 1 .5.5v7a.5.5 0 0 1-.5.5H2v2.5a.5.5 0 0 1-1 0V2H.5a.5.5 0 0 1-.5-.5m5.5 4a2.5 2.5 0 1 0 0 5 2.5 2.5 0 0 0 0-5M9 8a2.5 2.5 0 1 0 5 0 2.5 2.5 0 0 0-5 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3 12.5h3.5v1a.5.5 0 0 1-.5.5H3.5a.5.5 0 0 1-.5-.5zm4 1v-1h4v1a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsGraphDownArrow (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M0 0h1v15h15v1H0zm10 11.5a.5.5 0 0 0 .5.5h4a.5.5 0 0 0 .5-.5v-4a.5.5 0 0 0-1 0v2.6l-3.613-4.417a.5.5 0 0 0-.74-.037L7.06 8.233 3.404 3.206a.5.5 0 0 0-.808.588l4 5.5a.5.5 0 0 0 .758.06l2.609-2.61L13.445 11H10.5a.5.5 0 0 0-.5.5\"},\"child\":[]}]})(props);\n};\nexport function BsGraphDown (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M0 0h1v15h15v1H0zm14.817 11.887a.5.5 0 0 0 .07-.704l-4.5-5.5a.5.5 0 0 0-.74-.037L7.06 8.233 3.404 3.206a.5.5 0 0 0-.808.588l4 5.5a.5.5 0 0 0 .758.06l2.609-2.61 4.15 5.073a.5.5 0 0 0 .704.07\"},\"child\":[]}]})(props);\n};\nexport function BsGraphUpArrow (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M0 0h1v15h15v1H0zm10 3.5a.5.5 0 0 1 .5-.5h4a.5.5 0 0 1 .5.5v4a.5.5 0 0 1-1 0V4.9l-3.613 4.417a.5.5 0 0 1-.74.037L7.06 6.767l-3.656 5.027a.5.5 0 0 1-.808-.588l4-5.5a.5.5 0 0 1 .758-.06l2.609 2.61L13.445 4H10.5a.5.5 0 0 1-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsGraphUp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M0 0h1v15h15v1H0zm14.817 3.113a.5.5 0 0 1 .07.704l-4.5 5.5a.5.5 0 0 1-.74.037L7.06 6.767l-3.656 5.027a.5.5 0 0 1-.808-.588l4-5.5a.5.5 0 0 1 .758-.06l2.609 2.61 4.15-5.073a.5.5 0 0 1 .704-.07\"},\"child\":[]}]})(props);\n};\nexport function BsGrid1X2Fill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 1a1 1 0 0 1 1-1h5a1 1 0 0 1 1 1v14a1 1 0 0 1-1 1H1a1 1 0 0 1-1-1zm9 0a1 1 0 0 1 1-1h5a1 1 0 0 1 1 1v5a1 1 0 0 1-1 1h-5a1 1 0 0 1-1-1zm0 9a1 1 0 0 1 1-1h5a1 1 0 0 1 1 1v5a1 1 0 0 1-1 1h-5a1 1 0 0 1-1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsGrid1X2 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6 1H1v14h5zm9 0h-5v5h5zm0 9v5h-5v-5zM0 1a1 1 0 0 1 1-1h5a1 1 0 0 1 1 1v14a1 1 0 0 1-1 1H1a1 1 0 0 1-1-1zm9 0a1 1 0 0 1 1-1h5a1 1 0 0 1 1 1v5a1 1 0 0 1-1 1h-5a1 1 0 0 1-1-1zm1 8a1 1 0 0 0-1 1v5a1 1 0 0 0 1 1h5a1 1 0 0 0 1-1v-5a1 1 0 0 0-1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsGrid3X2GapFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M1 4a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1zm5 0a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1H7a1 1 0 0 1-1-1zm5 0a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1h-2a1 1 0 0 1-1-1zM1 9a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1zm5 0a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1H7a1 1 0 0 1-1-1zm5 0a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1h-2a1 1 0 0 1-1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsGrid3X2Gap (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4 4v2H2V4zm1 7V9a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1v2a1 1 0 0 0 1 1h2a1 1 0 0 0 1-1m0-5V4a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1v2a1 1 0 0 0 1 1h2a1 1 0 0 0 1-1m5 5V9a1 1 0 0 0-1-1H7a1 1 0 0 0-1 1v2a1 1 0 0 0 1 1h2a1 1 0 0 0 1-1m0-5V4a1 1 0 0 0-1-1H7a1 1 0 0 0-1 1v2a1 1 0 0 0 1 1h2a1 1 0 0 0 1-1M9 4v2H7V4zm5 0h-2v2h2zM4 9v2H2V9zm5 0v2H7V9zm5 0v2h-2V9zm-3-5a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1h-2a1 1 0 0 1-1-1zm1 4a1 1 0 0 0-1 1v2a1 1 0 0 0 1 1h2a1 1 0 0 0 1-1V9a1 1 0 0 0-1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsGrid3X2 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 3.5A1.5 1.5 0 0 1 1.5 2h13A1.5 1.5 0 0 1 16 3.5v8a1.5 1.5 0 0 1-1.5 1.5h-13A1.5 1.5 0 0 1 0 11.5zM1.5 3a.5.5 0 0 0-.5.5V7h4V3zM5 8H1v3.5a.5.5 0 0 0 .5.5H5zm1 0v4h4V8zm4-1V3H6v4zm1 1v4h3.5a.5.5 0 0 0 .5-.5V8zm0-1h4V3.5a.5.5 0 0 0-.5-.5H11z\"},\"child\":[]}]})(props);\n};\nexport function BsGrid3X3GapFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M1 2a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1zm5 0a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1H7a1 1 0 0 1-1-1zm5 0a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1h-2a1 1 0 0 1-1-1zM1 7a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1zm5 0a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1H7a1 1 0 0 1-1-1zm5 0a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1h-2a1 1 0 0 1-1-1zM1 12a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1zm5 0a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1H7a1 1 0 0 1-1-1zm5 0a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1h-2a1 1 0 0 1-1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsGrid3X3Gap (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4 2v2H2V2zm1 12v-2a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1v2a1 1 0 0 0 1 1h2a1 1 0 0 0 1-1m0-5V7a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1v2a1 1 0 0 0 1 1h2a1 1 0 0 0 1-1m0-5V2a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1v2a1 1 0 0 0 1 1h2a1 1 0 0 0 1-1m5 10v-2a1 1 0 0 0-1-1H7a1 1 0 0 0-1 1v2a1 1 0 0 0 1 1h2a1 1 0 0 0 1-1m0-5V7a1 1 0 0 0-1-1H7a1 1 0 0 0-1 1v2a1 1 0 0 0 1 1h2a1 1 0 0 0 1-1m0-5V2a1 1 0 0 0-1-1H7a1 1 0 0 0-1 1v2a1 1 0 0 0 1 1h2a1 1 0 0 0 1-1M9 2v2H7V2zm5 0v2h-2V2zM4 7v2H2V7zm5 0v2H7V7zm5 0h-2v2h2zM4 12v2H2v-2zm5 0v2H7v-2zm5 0v2h-2v-2zM12 1a1 1 0 0 0-1 1v2a1 1 0 0 0 1 1h2a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1zm-1 6a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1h-2a1 1 0 0 1-1-1zm1 4a1 1 0 0 0-1 1v2a1 1 0 0 0 1 1h2a1 1 0 0 0 1-1v-2a1 1 0 0 0-1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsGrid3X3 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 1.5A1.5 1.5 0 0 1 1.5 0h13A1.5 1.5 0 0 1 16 1.5v13a1.5 1.5 0 0 1-1.5 1.5h-13A1.5 1.5 0 0 1 0 14.5zM1.5 1a.5.5 0 0 0-.5.5V5h4V1zM5 6H1v4h4zm1 4h4V6H6zm-1 1H1v3.5a.5.5 0 0 0 .5.5H5zm1 0v4h4v-4zm5 0v4h3.5a.5.5 0 0 0 .5-.5V11zm0-1h4V6h-4zm0-5h4V1.5a.5.5 0 0 0-.5-.5H11zm-1 0V1H6v4z\"},\"child\":[]}]})(props);\n};\nexport function BsGridFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M1 2.5A1.5 1.5 0 0 1 2.5 1h3A1.5 1.5 0 0 1 7 2.5v3A1.5 1.5 0 0 1 5.5 7h-3A1.5 1.5 0 0 1 1 5.5zm8 0A1.5 1.5 0 0 1 10.5 1h3A1.5 1.5 0 0 1 15 2.5v3A1.5 1.5 0 0 1 13.5 7h-3A1.5 1.5 0 0 1 9 5.5zm-8 8A1.5 1.5 0 0 1 2.5 9h3A1.5 1.5 0 0 1 7 10.5v3A1.5 1.5 0 0 1 5.5 15h-3A1.5 1.5 0 0 1 1 13.5zm8 0A1.5 1.5 0 0 1 10.5 9h3a1.5 1.5 0 0 1 1.5 1.5v3a1.5 1.5 0 0 1-1.5 1.5h-3A1.5 1.5 0 0 1 9 13.5z\"},\"child\":[]}]})(props);\n};\nexport function BsGrid (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M1 2.5A1.5 1.5 0 0 1 2.5 1h3A1.5 1.5 0 0 1 7 2.5v3A1.5 1.5 0 0 1 5.5 7h-3A1.5 1.5 0 0 1 1 5.5zM2.5 2a.5.5 0 0 0-.5.5v3a.5.5 0 0 0 .5.5h3a.5.5 0 0 0 .5-.5v-3a.5.5 0 0 0-.5-.5zm6.5.5A1.5 1.5 0 0 1 10.5 1h3A1.5 1.5 0 0 1 15 2.5v3A1.5 1.5 0 0 1 13.5 7h-3A1.5 1.5 0 0 1 9 5.5zm1.5-.5a.5.5 0 0 0-.5.5v3a.5.5 0 0 0 .5.5h3a.5.5 0 0 0 .5-.5v-3a.5.5 0 0 0-.5-.5zM1 10.5A1.5 1.5 0 0 1 2.5 9h3A1.5 1.5 0 0 1 7 10.5v3A1.5 1.5 0 0 1 5.5 15h-3A1.5 1.5 0 0 1 1 13.5zm1.5-.5a.5.5 0 0 0-.5.5v3a.5.5 0 0 0 .5.5h3a.5.5 0 0 0 .5-.5v-3a.5.5 0 0 0-.5-.5zm6.5.5A1.5 1.5 0 0 1 10.5 9h3a1.5 1.5 0 0 1 1.5 1.5v3a1.5 1.5 0 0 1-1.5 1.5h-3A1.5 1.5 0 0 1 9 13.5zm1.5-.5a.5.5 0 0 0-.5.5v3a.5.5 0 0 0 .5.5h3a.5.5 0 0 0 .5-.5v-3a.5.5 0 0 0-.5-.5z\"},\"child\":[]}]})(props);\n};\nexport function BsGripHorizontal (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 8a1 1 0 1 1 0 2 1 1 0 0 1 0-2m0-3a1 1 0 1 1 0 2 1 1 0 0 1 0-2m3 3a1 1 0 1 1 0 2 1 1 0 0 1 0-2m0-3a1 1 0 1 1 0 2 1 1 0 0 1 0-2m3 3a1 1 0 1 1 0 2 1 1 0 0 1 0-2m0-3a1 1 0 1 1 0 2 1 1 0 0 1 0-2m3 3a1 1 0 1 1 0 2 1 1 0 0 1 0-2m0-3a1 1 0 1 1 0 2 1 1 0 0 1 0-2m3 3a1 1 0 1 1 0 2 1 1 0 0 1 0-2m0-3a1 1 0 1 1 0 2 1 1 0 0 1 0-2\"},\"child\":[]}]})(props);\n};\nexport function BsGripVertical (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7 2a1 1 0 1 1-2 0 1 1 0 0 1 2 0m3 0a1 1 0 1 1-2 0 1 1 0 0 1 2 0M7 5a1 1 0 1 1-2 0 1 1 0 0 1 2 0m3 0a1 1 0 1 1-2 0 1 1 0 0 1 2 0M7 8a1 1 0 1 1-2 0 1 1 0 0 1 2 0m3 0a1 1 0 1 1-2 0 1 1 0 0 1 2 0m-3 3a1 1 0 1 1-2 0 1 1 0 0 1 2 0m3 0a1 1 0 1 1-2 0 1 1 0 0 1 2 0m-3 3a1 1 0 1 1-2 0 1 1 0 0 1 2 0m3 0a1 1 0 1 1-2 0 1 1 0 0 1 2 0\"},\"child\":[]}]})(props);\n};\nexport function BsHCircleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0m-5-3.998H9.67v3.322H6.33V4.002H5V12h1.33V8.455h3.34V12H11z\"},\"child\":[]}]})(props);\n};\nexport function BsHCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M1 8a7 7 0 1 0 14 0A7 7 0 0 0 1 8m15 0A8 8 0 1 1 0 8a8 8 0 0 1 16 0m-5-3.998V12H9.67V8.455H6.33V12H5V4.002h1.33v3.322h3.34V4.002z\"},\"child\":[]}]})(props);\n};\nexport function BsHSquareFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm9 4.002V12H9.67V8.455H6.33V12H5V4.002h1.33v3.322h3.34V4.002z\"},\"child\":[]}]})(props);\n};\nexport function BsHSquare (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M11 4.002V12H9.67V8.455H6.33V12H5V4.002h1.33v3.322h3.34V4.002z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M0 2a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm15 0a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsHammer (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.972 2.508a.5.5 0 0 0-.16-.556l-.178-.129a5 5 0 0 0-2.076-.783C6.215.862 4.504 1.229 2.84 3.133H1.786a.5.5 0 0 0-.354.147L.146 4.567a.5.5 0 0 0 0 .706l2.571 2.579a.5.5 0 0 0 .708 0l1.286-1.29a.5.5 0 0 0 .146-.353V5.57l8.387 8.873A.5.5 0 0 0 14 14.5l1.5-1.5a.5.5 0 0 0 .017-.689l-9.129-8.63c.747-.456 1.772-.839 3.112-.839a.5.5 0 0 0 .472-.334\"},\"child\":[]}]})(props);\n};\nexport function BsHandIndexFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.5 4.466V1.75a1.75 1.75 0 1 0-3.5 0v5.34l-1.2.24a1.5 1.5 0 0 0-1.196 1.636l.345 3.106a2.5 2.5 0 0 0 .405 1.11l1.433 2.15A1.5 1.5 0 0 0 6.035 16h6.385a1.5 1.5 0 0 0 1.302-.756l1.395-2.441a3.5 3.5 0 0 0 .444-1.389l.271-2.715a2 2 0 0 0-1.99-2.199h-.581a5 5 0 0 0-.195-.248c-.191-.229-.51-.568-.88-.716-.364-.146-.846-.132-1.158-.108l-.132.012a1.26 1.26 0 0 0-.56-.642 2.6 2.6 0 0 0-.738-.288c-.31-.062-.739-.058-1.05-.046z\"},\"child\":[]}]})(props);\n};\nexport function BsHandIndexThumbFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.5 1.75v2.716l.047-.002c.312-.012.742-.016 1.051.046.28.056.543.18.738.288.273.152.456.385.56.642l.132-.012c.312-.024.794-.038 1.158.108.37.148.689.487.88.716q.113.137.195.248h.582a2 2 0 0 1 1.99 2.199l-.272 2.715a3.5 3.5 0 0 1-.444 1.389l-1.395 2.441A1.5 1.5 0 0 1 12.42 16H6.118a1.5 1.5 0 0 1-1.342-.83l-1.215-2.43L1.07 8.589a1.517 1.517 0 0 1 2.373-1.852L5 8.293V1.75a1.75 1.75 0 0 1 3.5 0\"},\"child\":[]}]})(props);\n};\nexport function BsHandIndexThumb (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.75 1a.75.75 0 0 1 .75.75V8a.5.5 0 0 0 1 0V5.467l.086-.004c.317-.012.637-.008.816.027.134.027.294.096.448.182.077.042.15.147.15.314V8a.5.5 0 0 0 1 0V6.435l.106-.01c.316-.024.584-.01.708.04.118.046.3.207.486.43.081.096.15.19.2.259V8.5a.5.5 0 1 0 1 0v-1h.342a1 1 0 0 1 .995 1.1l-.271 2.715a2.5 2.5 0 0 1-.317.991l-1.395 2.442a.5.5 0 0 1-.434.252H6.118a.5.5 0 0 1-.447-.276l-1.232-2.465-2.512-4.185a.517.517 0 0 1 .809-.631l2.41 2.41A.5.5 0 0 0 6 9.5V1.75A.75.75 0 0 1 6.75 1M8.5 4.466V1.75a1.75 1.75 0 1 0-3.5 0v6.543L3.443 6.736A1.517 1.517 0 0 0 1.07 8.588l2.491 4.153 1.215 2.43A1.5 1.5 0 0 0 6.118 16h6.302a1.5 1.5 0 0 0 1.302-.756l1.395-2.441a3.5 3.5 0 0 0 .444-1.389l.271-2.715a2 2 0 0 0-1.99-2.199h-.581a5 5 0 0 0-.195-.248c-.191-.229-.51-.568-.88-.716-.364-.146-.846-.132-1.158-.108l-.132.012a1.26 1.26 0 0 0-.56-.642 2.6 2.6 0 0 0-.738-.288c-.31-.062-.739-.058-1.05-.046zm2.094 2.025\"},\"child\":[]}]})(props);\n};\nexport function BsHandIndex (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.75 1a.75.75 0 0 1 .75.75V8a.5.5 0 0 0 1 0V5.467l.086-.004c.317-.012.637-.008.816.027.134.027.294.096.448.182.077.042.15.147.15.314V8a.5.5 0 1 0 1 0V6.435l.106-.01c.316-.024.584-.01.708.04.118.046.3.207.486.43.081.096.15.19.2.259V8.5a.5.5 0 0 0 1 0v-1h.342a1 1 0 0 1 .995 1.1l-.271 2.715a2.5 2.5 0 0 1-.317.991l-1.395 2.442a.5.5 0 0 1-.434.252H6.035a.5.5 0 0 1-.416-.223l-1.433-2.15a1.5 1.5 0 0 1-.243-.666l-.345-3.105a.5.5 0 0 1 .399-.546L5 8.11V9a.5.5 0 0 0 1 0V1.75A.75.75 0 0 1 6.75 1M8.5 4.466V1.75a1.75 1.75 0 1 0-3.5 0v5.34l-1.2.24a1.5 1.5 0 0 0-1.196 1.636l.345 3.106a2.5 2.5 0 0 0 .405 1.11l1.433 2.15A1.5 1.5 0 0 0 6.035 16h6.385a1.5 1.5 0 0 0 1.302-.756l1.395-2.441a3.5 3.5 0 0 0 .444-1.389l.271-2.715a2 2 0 0 0-1.99-2.199h-.581a5 5 0 0 0-.195-.248c-.191-.229-.51-.568-.88-.716-.364-.146-.846-.132-1.158-.108l-.132.012a1.26 1.26 0 0 0-.56-.642 2.6 2.6 0 0 0-.738-.288c-.31-.062-.739-.058-1.05-.046zm2.094 2.025\"},\"child\":[]}]})(props);\n};\nexport function BsHandThumbsDownFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.956 14.534c.065.936.952 1.659 1.908 1.42l.261-.065a1.38 1.38 0 0 0 1.012-.965c.22-.816.533-2.512.062-4.51q.205.03.443.051c.713.065 1.669.071 2.516-.211.518-.173.994-.68 1.2-1.272a1.9 1.9 0 0 0-.234-1.734c.058-.118.103-.242.138-.362.077-.27.113-.568.113-.856 0-.29-.036-.586-.113-.857a2 2 0 0 0-.16-.403c.169-.387.107-.82-.003-1.149a3.2 3.2 0 0 0-.488-.9c.054-.153.076-.313.076-.465a1.86 1.86 0 0 0-.253-.912C13.1.757 12.437.28 11.5.28H8c-.605 0-1.07.08-1.466.217a4.8 4.8 0 0 0-.97.485l-.048.029c-.504.308-.999.61-2.068.723C2.682 1.815 2 2.434 2 3.279v4c0 .851.685 1.433 1.357 1.616.849.232 1.574.787 2.132 1.41.56.626.914 1.28 1.039 1.638.199.575.356 1.54.428 2.591\"},\"child\":[]}]})(props);\n};\nexport function BsHandThumbsDown (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.864 15.674c-.956.24-1.843-.484-1.908-1.42-.072-1.05-.23-2.015-.428-2.59-.125-.36-.479-1.012-1.04-1.638-.557-.624-1.282-1.179-2.131-1.41C2.685 8.432 2 7.85 2 7V3c0-.845.682-1.464 1.448-1.546 1.07-.113 1.564-.415 2.068-.723l.048-.029c.272-.166.578-.349.97-.484C6.931.08 7.395 0 8 0h3.5c.937 0 1.599.478 1.934 1.064.164.287.254.607.254.913 0 .152-.023.312-.077.464.201.262.38.577.488.9.11.33.172.762.004 1.15.069.13.12.268.159.403.077.27.113.567.113.856s-.036.586-.113.856c-.035.12-.08.244-.138.363.394.571.418 1.2.234 1.733-.206.592-.682 1.1-1.2 1.272-.847.283-1.803.276-2.516.211a10 10 0 0 1-.443-.05 9.36 9.36 0 0 1-.062 4.51c-.138.508-.55.848-1.012.964zM11.5 1H8c-.51 0-.863.068-1.14.163-.281.097-.506.229-.776.393l-.04.025c-.555.338-1.198.73-2.49.868-.333.035-.554.29-.554.55V7c0 .255.226.543.62.65 1.095.3 1.977.997 2.614 1.709.635.71 1.064 1.475 1.238 1.977.243.7.407 1.768.482 2.85.025.362.36.595.667.518l.262-.065c.16-.04.258-.144.288-.255a8.34 8.34 0 0 0-.145-4.726.5.5 0 0 1 .595-.643h.003l.014.004.058.013a9 9 0 0 0 1.036.157c.663.06 1.457.054 2.11-.163.175-.059.45-.301.57-.651.107-.308.087-.67-.266-1.021L12.793 7l.353-.354c.043-.042.105-.14.154-.315.048-.167.075-.37.075-.581s-.027-.414-.075-.581c-.05-.174-.111-.273-.154-.315l-.353-.354.353-.354c.047-.047.109-.176.005-.488a2.2 2.2 0 0 0-.505-.804l-.353-.354.353-.354c.006-.005.041-.05.041-.17a.9.9 0 0 0-.121-.415C12.4 1.272 12.063 1 11.5 1\"},\"child\":[]}]})(props);\n};\nexport function BsHandThumbsUpFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.956 1.745C7.021.81 7.908.087 8.864.325l.261.066c.463.116.874.456 1.012.965.22.816.533 2.511.062 4.51a10 10 0 0 1 .443-.051c.713-.065 1.669-.072 2.516.21.518.173.994.681 1.2 1.273.184.532.16 1.162-.234 1.733q.086.18.138.363c.077.27.113.567.113.856s-.036.586-.113.856c-.039.135-.09.273-.16.404.169.387.107.819-.003 1.148a3.2 3.2 0 0 1-.488.901c.054.152.076.312.076.465 0 .305-.089.625-.253.912C13.1 15.522 12.437 16 11.5 16H8c-.605 0-1.07-.081-1.466-.218a4.8 4.8 0 0 1-.97-.484l-.048-.03c-.504-.307-.999-.609-2.068-.722C2.682 14.464 2 13.846 2 13V9c0-.85.685-1.432 1.357-1.615.849-.232 1.574-.787 2.132-1.41.56-.627.914-1.28 1.039-1.639.199-.575.356-1.539.428-2.59z\"},\"child\":[]}]})(props);\n};\nexport function BsHandThumbsUp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.864.046C7.908-.193 7.02.53 6.956 1.466c-.072 1.051-.23 2.016-.428 2.59-.125.36-.479 1.013-1.04 1.639-.557.623-1.282 1.178-2.131 1.41C2.685 7.288 2 7.87 2 8.72v4.001c0 .845.682 1.464 1.448 1.545 1.07.114 1.564.415 2.068.723l.048.03c.272.165.578.348.97.484.397.136.861.217 1.466.217h3.5c.937 0 1.599-.477 1.934-1.064a1.86 1.86 0 0 0 .254-.912c0-.152-.023-.312-.077-.464.201-.263.38-.578.488-.901.11-.33.172-.762.004-1.149.069-.13.12-.269.159-.403.077-.27.113-.568.113-.857 0-.288-.036-.585-.113-.856a2 2 0 0 0-.138-.362 1.9 1.9 0 0 0 .234-1.734c-.206-.592-.682-1.1-1.2-1.272-.847-.282-1.803-.276-2.516-.211a10 10 0 0 0-.443.05 9.4 9.4 0 0 0-.062-4.509A1.38 1.38 0 0 0 9.125.111zM11.5 14.721H8c-.51 0-.863-.069-1.14-.164-.281-.097-.506-.228-.776-.393l-.04-.024c-.555-.339-1.198-.731-2.49-.868-.333-.036-.554-.29-.554-.55V8.72c0-.254.226-.543.62-.65 1.095-.3 1.977-.996 2.614-1.708.635-.71 1.064-1.475 1.238-1.978.243-.7.407-1.768.482-2.85.025-.362.36-.594.667-.518l.262.066c.16.04.258.143.288.255a8.34 8.34 0 0 1-.145 4.725.5.5 0 0 0 .595.644l.003-.001.014-.003.058-.014a9 9 0 0 1 1.036-.157c.663-.06 1.457-.054 2.11.164.175.058.45.3.57.65.107.308.087.67-.266 1.022l-.353.353.353.354c.043.043.105.141.154.315.048.167.075.37.075.581 0 .212-.027.414-.075.582-.05.174-.111.272-.154.315l-.353.353.353.354c.047.047.109.177.005.488a2.2 2.2 0 0 1-.505.805l-.353.353.353.354c.006.005.041.05.041.17a.9.9 0 0 1-.121.416c-.165.288-.503.56-1.066.56z\"},\"child\":[]}]})(props);\n};\nexport function BsHandbagFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 1a2 2 0 0 0-2 2v2H5V3a3 3 0 1 1 6 0v2h-1V3a2 2 0 0 0-2-2M5 5H3.36a1.5 1.5 0 0 0-1.483 1.277L.85 13.13A2.5 2.5 0 0 0 3.322 16h9.355a2.5 2.5 0 0 0 2.473-2.87l-1.028-6.853A1.5 1.5 0 0 0 12.64 5H11v1.5a.5.5 0 0 1-1 0V5H6v1.5a.5.5 0 0 1-1 0z\"},\"child\":[]}]})(props);\n};\nexport function BsHandbag (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 1a2 2 0 0 1 2 2v2H6V3a2 2 0 0 1 2-2m3 4V3a3 3 0 1 0-6 0v2H3.36a1.5 1.5 0 0 0-1.483 1.277L.85 13.13A2.5 2.5 0 0 0 3.322 16h9.355a2.5 2.5 0 0 0 2.473-2.87l-1.028-6.853A1.5 1.5 0 0 0 12.64 5zm-1 1v1.5a.5.5 0 0 0 1 0V6h1.639a.5.5 0 0 1 .494.426l1.028 6.851A1.5 1.5 0 0 1 12.678 15H3.322a1.5 1.5 0 0 1-1.483-1.723l1.028-6.851A.5.5 0 0 1 3.36 6H5v1.5a.5.5 0 1 0 1 0V6z\"},\"child\":[]}]})(props);\n};\nexport function BsHash (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.39 12.648a1 1 0 0 0-.015.18c0 .305.21.508.5.508.266 0 .492-.172.555-.477l.554-2.703h1.204c.421 0 .617-.234.617-.547 0-.312-.188-.53-.617-.53h-.985l.516-2.524h1.265c.43 0 .618-.227.618-.547 0-.313-.188-.524-.618-.524h-1.046l.476-2.304a1 1 0 0 0 .016-.164.51.51 0 0 0-.516-.516.54.54 0 0 0-.539.43l-.523 2.554H7.617l.477-2.304c.008-.04.015-.118.015-.164a.51.51 0 0 0-.523-.516.54.54 0 0 0-.531.43L6.53 5.484H5.414c-.43 0-.617.22-.617.532s.187.539.617.539h.906l-.515 2.523H4.609c-.421 0-.609.219-.609.531s.188.547.61.547h.976l-.516 2.492c-.008.04-.015.125-.015.18 0 .305.21.508.5.508.265 0 .492-.172.554-.477l.555-2.703h2.242zm-1-6.109h2.266l-.515 2.563H6.859l.532-2.563z\"},\"child\":[]}]})(props);\n};\nexport function BsHddFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 10a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v1a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm2.5 1a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1m2 0a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1M.91 7.204A3 3 0 0 1 2 7h12c.384 0 .752.072 1.09.204l-1.867-3.422A1.5 1.5 0 0 0 11.906 3H4.094a1.5 1.5 0 0 0-1.317.782z\"},\"child\":[]}]})(props);\n};\nexport function BsHddNetworkFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 2a2 2 0 0 0-2 2v1a2 2 0 0 0 2 2h5.5v3A1.5 1.5 0 0 0 6 11.5H.5a.5.5 0 0 0 0 1H6A1.5 1.5 0 0 0 7.5 14h1a1.5 1.5 0 0 0 1.5-1.5h5.5a.5.5 0 0 0 0-1H10A1.5 1.5 0 0 0 8.5 10V7H14a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2zm.5 3a.5.5 0 1 1 0-1 .5.5 0 0 1 0 1m2 0a.5.5 0 1 1 0-1 .5.5 0 0 1 0 1\"},\"child\":[]}]})(props);\n};\nexport function BsHddNetwork (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4.5 5a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1M3 4.5a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M0 4a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v1a2 2 0 0 1-2 2H8.5v3a1.5 1.5 0 0 1 1.5 1.5h5.5a.5.5 0 0 1 0 1H10A1.5 1.5 0 0 1 8.5 14h-1A1.5 1.5 0 0 1 6 12.5H.5a.5.5 0 0 1 0-1H6A1.5 1.5 0 0 1 7.5 10V7H2a2 2 0 0 1-2-2zm1 0v1a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V4a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1m6 7.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5\"},\"child\":[]}]})(props);\n};\nexport function BsHddRackFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 2a2 2 0 0 0-2 2v1a2 2 0 0 0 2 2h1v2H2a2 2 0 0 0-2 2v1a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-1a2 2 0 0 0-2-2h-1V7h1a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2zm.5 3a.5.5 0 1 1 0-1 .5.5 0 0 1 0 1m2 0a.5.5 0 1 1 0-1 .5.5 0 0 1 0 1m-2 7a.5.5 0 1 1 0-1 .5.5 0 0 1 0 1m2 0a.5.5 0 1 1 0-1 .5.5 0 0 1 0 1M12 7v2H4V7z\"},\"child\":[]}]})(props);\n};\nexport function BsHddRack (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4.5 5a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1M3 4.5a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0m2 7a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0m-2.5.5a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 2a2 2 0 0 0-2 2v1a2 2 0 0 0 2 2h1v2H2a2 2 0 0 0-2 2v1a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-1a2 2 0 0 0-2-2h-1V7h1a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2zm13 2v1a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1m0 7v1a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1v-1a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1m-3-4v2H4V7z\"},\"child\":[]}]})(props);\n};\nexport function BsHddStackFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 9a2 2 0 0 0-2 2v1a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-1a2 2 0 0 0-2-2zm.5 3a.5.5 0 1 1 0-1 .5.5 0 0 1 0 1m2 0a.5.5 0 1 1 0-1 .5.5 0 0 1 0 1M2 2a2 2 0 0 0-2 2v1a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2zm.5 3a.5.5 0 1 1 0-1 .5.5 0 0 1 0 1m2 0a.5.5 0 1 1 0-1 .5.5 0 0 1 0 1\"},\"child\":[]}]})(props);\n};\nexport function BsHddStack (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M14 10a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1v-1a1 1 0 0 1 1-1zM2 9a2 2 0 0 0-2 2v1a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-1a2 2 0 0 0-2-2z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M5 11.5a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0m-2 0a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0M14 3a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1zM2 2a2 2 0 0 0-2 2v1a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M5 4.5a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0m-2 0a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0\"},\"child\":[]}]})(props);\n};\nexport function BsHdd (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4.5 11a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1M3 10.5a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M16 11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V9.51c0-.418.105-.83.305-1.197l2.472-4.531A1.5 1.5 0 0 1 4.094 3h7.812a1.5 1.5 0 0 1 1.317.782l2.472 4.53c.2.368.305.78.305 1.198zM3.655 4.26 1.592 8.043Q1.79 8 2 8h12q.21 0 .408.042L12.345 4.26a.5.5 0 0 0-.439-.26H4.094a.5.5 0 0 0-.44.26zM1 10v1a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1v-1a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1\"},\"child\":[]}]})(props);\n};\nexport function BsHdmiFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M1 5a1 1 0 0 0-1 1v3.293c0 .39.317.707.707.707.188 0 .368.075.5.207l.5.5a1 1 0 0 0 .707.293h11.172a1 1 0 0 0 .707-.293l.5-.5a.7.7 0 0 1 .5-.207c.39 0 .707-.317.707-.707V6a1 1 0 0 0-1-1zm1.5 2h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1 0-1\"},\"child\":[]}]})(props);\n};\nexport function BsHdmi (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2.5 7a.5.5 0 0 0 0 1h11a.5.5 0 0 0 0-1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M1 5a1 1 0 0 0-1 1v3a1 1 0 0 0 1 1h.293l.707.707a1 1 0 0 0 .707.293h10.586a1 1 0 0 0 .707-.293l.707-.707H15a1 1 0 0 0 1-1V6a1 1 0 0 0-1-1zm0 1h14v3h-.293a1 1 0 0 0-.707.293l-.707.707H2.707L2 9.293A1 1 0 0 0 1.293 9H1z\"},\"child\":[]}]})(props);\n};\nexport function BsHeadphones (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 3a5 5 0 0 0-5 5v1h1a1 1 0 0 1 1 1v3a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V8a6 6 0 1 1 12 0v5a1 1 0 0 1-1 1h-1a1 1 0 0 1-1-1v-3a1 1 0 0 1 1-1h1V8a5 5 0 0 0-5-5\"},\"child\":[]}]})(props);\n};\nexport function BsHeadsetVr (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 1.248c1.857 0 3.526.641 4.65 1.794a5 5 0 0 1 2.518 1.09C13.907 1.482 11.295 0 8 0 4.75 0 2.12 1.48.844 4.122a5 5 0 0 1 2.289-1.047C4.236 1.872 5.974 1.248 8 1.248\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M12 12a4 4 0 0 1-2.786-1.13l-.002-.002a1.6 1.6 0 0 0-.276-.167A2.2 2.2 0 0 0 8 10.5c-.414 0-.729.103-.935.201a1.6 1.6 0 0 0-.277.167l-.002.002A4 4 0 1 1 4 4h8a4 4 0 0 1 0 8\"},\"child\":[]}]})(props);\n};\nexport function BsHeadset (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 1a5 5 0 0 0-5 5v1h1a1 1 0 0 1 1 1v3a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V6a6 6 0 1 1 12 0v6a2.5 2.5 0 0 1-2.5 2.5H9.366a1 1 0 0 1-.866.5h-1a1 1 0 1 1 0-2h1a1 1 0 0 1 .866.5H11.5A1.5 1.5 0 0 0 13 12h-1a1 1 0 0 1-1-1V8a1 1 0 0 1 1-1h1V6a5 5 0 0 0-5-5\"},\"child\":[]}]})(props);\n};\nexport function BsHeartArrow (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.707 9h4.364c-.536 1.573 2.028 3.806 4.929-.5-2.9-4.306-5.465-2.073-4.929-.5H6.707L4.854 6.146a.5.5 0 1 0-.708.708L5.293 8h-.586L2.854 6.146a.5.5 0 1 0-.708.708L3.293 8h-.586L.854 6.146a.5.5 0 1 0-.708.708L1.793 8.5.146 10.146a.5.5 0 0 0 .708.708L2.707 9h.586l-1.147 1.146a.5.5 0 0 0 .708.708L4.707 9h.586l-1.147 1.146a.5.5 0 0 0 .708.708z\"},\"child\":[]}]})(props);\n};\nexport function BsHeartFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M8 1.314C12.438-3.248 23.534 4.735 8 15-7.534 4.736 3.562-3.248 8 1.314\"},\"child\":[]}]})(props);\n};\nexport function BsHeartHalf (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 2.748v11.047c3.452-2.368 5.365-4.542 6.286-6.357.955-1.886.838-3.362.314-4.385C13.486.878 10.4.28 8.717 2.01zM8 15C-7.333 4.868 3.279-3.04 7.824 1.143q.09.083.176.171a3 3 0 0 1 .176-.17C12.72-3.042 23.333 4.867 8 15\"},\"child\":[]}]})(props);\n};\nexport function BsHeartPulseFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M1.475 9C2.702 10.84 4.779 12.871 8 15c3.221-2.129 5.298-4.16 6.525-6H12a.5.5 0 0 1-.464-.314l-1.457-3.642-1.598 5.593a.5.5 0 0 1-.945.049L5.889 6.568l-1.473 2.21A.5.5 0 0 1 4 9z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M.88 8C-2.427 1.68 4.41-2 7.823 1.143q.09.083.176.171a3 3 0 0 1 .176-.17C11.59-2 18.426 1.68 15.12 8h-2.783l-1.874-4.686a.5.5 0 0 0-.945.049L7.921 8.956 6.464 5.314a.5.5 0 0 0-.88-.091L3.732 8z\"},\"child\":[]}]})(props);\n};\nexport function BsHeartPulse (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m8 2.748-.717-.737C5.6.281 2.514.878 1.4 3.053.918 3.995.78 5.323 1.508 7H.43c-2.128-5.697 4.165-8.83 7.394-5.857q.09.083.176.171a3 3 0 0 1 .176-.17c3.23-2.974 9.522.159 7.394 5.856h-1.078c.728-1.677.59-3.005.108-3.947C13.486.878 10.4.28 8.717 2.01zM2.212 10h1.315C4.593 11.183 6.05 12.458 8 13.795c1.949-1.337 3.407-2.612 4.473-3.795h1.315c-1.265 1.566-3.14 3.25-5.788 5-2.648-1.75-4.523-3.434-5.788-5\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M10.464 3.314a.5.5 0 0 0-.945.049L7.921 8.956 6.464 5.314a.5.5 0 0 0-.88-.091L3.732 8H.5a.5.5 0 0 0 0 1H4a.5.5 0 0 0 .416-.223l1.473-2.209 1.647 4.118a.5.5 0 0 0 .945-.049l1.598-5.593 1.457 3.642A.5.5 0 0 0 12 9h3.5a.5.5 0 0 0 0-1h-3.162z\"},\"child\":[]}]})(props);\n};\nexport function BsHeart (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m8 2.748-.717-.737C5.6.281 2.514.878 1.4 3.053c-.523 1.023-.641 2.5.314 4.385.92 1.815 2.834 3.989 6.286 6.357 3.452-2.368 5.365-4.542 6.286-6.357.955-1.886.838-3.362.314-4.385C13.486.878 10.4.28 8.717 2.01zM8 15C-7.333 4.868 3.279-3.04 7.824 1.143q.09.083.176.171a3 3 0 0 1 .176-.17C12.72-3.042 23.333 4.867 8 15\"},\"child\":[]}]})(props);\n};\nexport function BsHeartbreakFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.931.586 7 3l1.5 4-2 3L8 15C22.534 5.396 13.757-2.21 8.931.586M7.358.77 5.5 3 7 7l-1.5 3 1.815 4.537C-6.533 4.96 2.685-2.467 7.358.77\"},\"child\":[]}]})(props);\n};\nexport function BsHeartbreak (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.867 14.41c13.308-9.322 4.79-16.563.064-13.824L7 3l1.5 4-2 3L8 15a38 38 0 0 0 .867-.59m-.303-1.01-.971-3.237 1.74-2.608a1 1 0 0 0 .103-.906l-1.3-3.468 1.45-1.813c1.861-.948 4.446.002 5.197 2.11.691 1.94-.055 5.521-6.219 9.922m-1.25 1.137a36 36 0 0 1-1.522-1.116C-5.077 4.97 1.842-1.472 6.454.293c.314.12.618.279.904.477L5.5 3 7 7l-1.5 3zm-2.3-3.06-.442-1.106a1 1 0 0 1 .034-.818l1.305-2.61L4.564 3.35a1 1 0 0 1 .168-.991l1.032-1.24c-1.688-.449-3.7.398-4.456 2.128-.711 1.627-.413 4.55 3.706 8.229Z\"},\"child\":[]}]})(props);\n};\nexport function BsHearts (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M4.931.481c1.627-1.671 5.692 1.254 0 5.015-5.692-3.76-1.626-6.686 0-5.015m6.84 1.794c1.084-1.114 3.795.836 0 3.343-3.795-2.507-1.084-4.457 0-3.343M7.84 7.642c2.71-2.786 9.486 2.09 0 8.358-9.487-6.268-2.71-11.144 0-8.358\"},\"child\":[]}]})(props);\n};\nexport function BsHeptagonFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M7.779.052a.5.5 0 0 1 .442 0l6.015 2.97a.5.5 0 0 1 .267.34l1.485 6.676a.5.5 0 0 1-.093.415l-4.162 5.354a.5.5 0 0 1-.395.193H4.662a.5.5 0 0 1-.395-.193L.105 10.453a.5.5 0 0 1-.093-.415l1.485-6.676a.5.5 0 0 1 .267-.34z\"},\"child\":[]}]})(props);\n};\nexport function BsHeptagonHalf (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.779.052a.5.5 0 0 1 .442 0l6.015 2.97a.5.5 0 0 1 .267.34l1.485 6.676a.5.5 0 0 1-.093.415l-4.162 5.354a.5.5 0 0 1-.395.193H4.662a.5.5 0 0 1-.395-.193L.105 10.453a.5.5 0 0 1-.093-.415l1.485-6.676a.5.5 0 0 1 .267-.34zM8 15h3.093l3.868-4.975-1.383-6.212L8 1.058z\"},\"child\":[]}]})(props);\n};\nexport function BsHeptagon (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.779.052a.5.5 0 0 1 .442 0l6.015 2.97a.5.5 0 0 1 .267.34l1.485 6.676a.5.5 0 0 1-.093.415l-4.162 5.354a.5.5 0 0 1-.395.193H4.662a.5.5 0 0 1-.395-.193L.105 10.453a.5.5 0 0 1-.093-.415l1.485-6.676a.5.5 0 0 1 .267-.34zM2.422 3.813l-1.383 6.212L4.907 15h6.186l3.868-4.975-1.383-6.212L8 1.058z\"},\"child\":[]}]})(props);\n};\nexport function BsHexagonFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M8.5.134a1 1 0 0 0-1 0l-6 3.577a1 1 0 0 0-.5.866v6.846a1 1 0 0 0 .5.866l6 3.577a1 1 0 0 0 1 0l6-3.577a1 1 0 0 0 .5-.866V4.577a1 1 0 0 0-.5-.866z\"},\"child\":[]}]})(props);\n};\nexport function BsHexagonHalf (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M14 4.577v6.846L8 15V1zM8.5.134a1 1 0 0 0-1 0l-6 3.577a1 1 0 0 0-.5.866v6.846a1 1 0 0 0 .5.866l6 3.577a1 1 0 0 0 1 0l6-3.577a1 1 0 0 0 .5-.866V4.577a1 1 0 0 0-.5-.866z\"},\"child\":[]}]})(props);\n};\nexport function BsHexagon (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M14 4.577v6.846L8 15l-6-3.577V4.577L8 1zM8.5.134a1 1 0 0 0-1 0l-6 3.577a1 1 0 0 0-.5.866v6.846a1 1 0 0 0 .5.866l6 3.577a1 1 0 0 0 1 0l6-3.577a1 1 0 0 0 .5-.866V4.577a1 1 0 0 0-.5-.866z\"},\"child\":[]}]})(props);\n};\nexport function BsHighlighter (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M11.096.644a2 2 0 0 1 2.791.036l1.433 1.433a2 2 0 0 1 .035 2.791l-.413.435-8.07 8.995a.5.5 0 0 1-.372.166h-3a.5.5 0 0 1-.234-.058l-.412.412A.5.5 0 0 1 2.5 15h-2a.5.5 0 0 1-.354-.854l1.412-1.412A.5.5 0 0 1 1.5 12.5v-3a.5.5 0 0 1 .166-.372l8.995-8.07zm-.115 1.47L2.727 9.52l3.753 3.753 7.406-8.254zm3.585 2.17.064-.068a1 1 0 0 0-.017-1.396L13.18 1.387a1 1 0 0 0-1.396-.018l-.068.065zM5.293 13.5 2.5 10.707v1.586L3.707 13.5z\"},\"child\":[]}]})(props);\n};\nexport function BsHighlights (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 0 0 8a8 8 0 0 0 16 0m-8 5v1H4.5a.5.5 0 0 0-.093.009A7 7 0 0 1 3.1 13zm0-1H2.255a7 7 0 0 1-.581-1H8zm-6.71-2a7 7 0 0 1-.22-1H8v1zM1 8q0-.51.07-1H8v1zm.29-2q.155-.519.384-1H8v1zm.965-2q.377-.54.846-1H8v1zm2.137-2A6.97 6.97 0 0 1 8 1v1z\"},\"child\":[]}]})(props);\n};\nexport function BsHospitalFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6 0a1 1 0 0 0-1 1v1a1 1 0 0 0-1 1v4H1a1 1 0 0 0-1 1v7a1 1 0 0 0 1 1h6v-2.5a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5V16h6a1 1 0 0 0 1-1V8a1 1 0 0 0-1-1h-3V3a1 1 0 0 0-1-1V1a1 1 0 0 0-1-1zm2.5 5.034v1.1l.953-.55.5.867L9 7l.953.55-.5.866-.953-.55v1.1h-1v-1.1l-.953.55-.5-.866L7 7l-.953-.55.5-.866.953.55v-1.1zM2.25 9h.5a.25.25 0 0 1 .25.25v.5a.25.25 0 0 1-.25.25h-.5A.25.25 0 0 1 2 9.75v-.5A.25.25 0 0 1 2.25 9m0 2h.5a.25.25 0 0 1 .25.25v.5a.25.25 0 0 1-.25.25h-.5a.25.25 0 0 1-.25-.25v-.5a.25.25 0 0 1 .25-.25M2 13.25a.25.25 0 0 1 .25-.25h.5a.25.25 0 0 1 .25.25v.5a.25.25 0 0 1-.25.25h-.5a.25.25 0 0 1-.25-.25zM13.25 9h.5a.25.25 0 0 1 .25.25v.5a.25.25 0 0 1-.25.25h-.5a.25.25 0 0 1-.25-.25v-.5a.25.25 0 0 1 .25-.25M13 11.25a.25.25 0 0 1 .25-.25h.5a.25.25 0 0 1 .25.25v.5a.25.25 0 0 1-.25.25h-.5a.25.25 0 0 1-.25-.25zm.25 1.75h.5a.25.25 0 0 1 .25.25v.5a.25.25 0 0 1-.25.25h-.5a.25.25 0 0 1-.25-.25v-.5a.25.25 0 0 1 .25-.25\"},\"child\":[]}]})(props);\n};\nexport function BsHospital (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.5 5.034v1.1l.953-.55.5.867L9 7l.953.55-.5.866-.953-.55v1.1h-1v-1.1l-.953.55-.5-.866L7 7l-.953-.55.5-.866.953.55v-1.1zM13.25 9a.25.25 0 0 0-.25.25v.5c0 .138.112.25.25.25h.5a.25.25 0 0 0 .25-.25v-.5a.25.25 0 0 0-.25-.25zM13 11.25a.25.25 0 0 1 .25-.25h.5a.25.25 0 0 1 .25.25v.5a.25.25 0 0 1-.25.25h-.5a.25.25 0 0 1-.25-.25zm.25 1.75a.25.25 0 0 0-.25.25v.5c0 .138.112.25.25.25h.5a.25.25 0 0 0 .25-.25v-.5a.25.25 0 0 0-.25-.25zm-11-4a.25.25 0 0 0-.25.25v.5c0 .138.112.25.25.25h.5A.25.25 0 0 0 3 9.75v-.5A.25.25 0 0 0 2.75 9zm0 2a.25.25 0 0 0-.25.25v.5c0 .138.112.25.25.25h.5a.25.25 0 0 0 .25-.25v-.5a.25.25 0 0 0-.25-.25zM2 13.25a.25.25 0 0 1 .25-.25h.5a.25.25 0 0 1 .25.25v.5a.25.25 0 0 1-.25.25h-.5a.25.25 0 0 1-.25-.25z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M5 1a1 1 0 0 1 1-1h4a1 1 0 0 1 1 1v1a1 1 0 0 1 1 1v4h3a1 1 0 0 1 1 1v7a1 1 0 0 1-1 1H1a1 1 0 0 1-1-1V8a1 1 0 0 1 1-1h3V3a1 1 0 0 1 1-1zm2 14h2v-3H7zm3 0h1V3H5v12h1v-3a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1zm0-14H6v1h4zm2 7v7h3V8zm-8 7V8H1v7z\"},\"child\":[]}]})(props);\n};\nexport function BsHourglassBottom (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 1.5a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-1v1a4.5 4.5 0 0 1-2.557 4.06c-.29.139-.443.377-.443.59v.7c0 .213.154.451.443.59A4.5 4.5 0 0 1 12.5 13v1h1a.5.5 0 0 1 0 1h-11a.5.5 0 1 1 0-1h1v-1a4.5 4.5 0 0 1 2.557-4.06c.29-.139.443-.377.443-.59v-.7c0-.213-.154-.451-.443-.59A4.5 4.5 0 0 1 3.5 3V2h-1a.5.5 0 0 1-.5-.5m2.5.5v1a3.5 3.5 0 0 0 1.989 3.158c.533.256 1.011.791 1.011 1.491v.702s.18.149.5.149.5-.15.5-.15v-.7c0-.701.478-1.236 1.011-1.492A3.5 3.5 0 0 0 11.5 3V2z\"},\"child\":[]}]})(props);\n};\nexport function BsHourglassSplit (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2.5 15a.5.5 0 1 1 0-1h1v-1a4.5 4.5 0 0 1 2.557-4.06c.29-.139.443-.377.443-.59v-.7c0-.213-.154-.451-.443-.59A4.5 4.5 0 0 1 3.5 3V2h-1a.5.5 0 0 1 0-1h11a.5.5 0 0 1 0 1h-1v1a4.5 4.5 0 0 1-2.557 4.06c-.29.139-.443.377-.443.59v.7c0 .213.154.451.443.59A4.5 4.5 0 0 1 12.5 13v1h1a.5.5 0 0 1 0 1zm2-13v1c0 .537.12 1.045.337 1.5h6.326c.216-.455.337-.963.337-1.5V2zm3 6.35c0 .701-.478 1.236-1.011 1.492A3.5 3.5 0 0 0 4.5 13s.866-1.299 3-1.48zm1 0v3.17c2.134.181 3 1.48 3 1.48a3.5 3.5 0 0 0-1.989-3.158C8.978 9.586 8.5 9.052 8.5 8.351z\"},\"child\":[]}]})(props);\n};\nexport function BsHourglassTop (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 14.5a.5.5 0 0 0 .5.5h11a.5.5 0 1 0 0-1h-1v-1a4.5 4.5 0 0 0-2.557-4.06c-.29-.139-.443-.377-.443-.59v-.7c0-.213.154-.451.443-.59A4.5 4.5 0 0 0 12.5 3V2h1a.5.5 0 0 0 0-1h-11a.5.5 0 0 0 0 1h1v1a4.5 4.5 0 0 0 2.557 4.06c.29.139.443.377.443.59v.7c0 .213-.154.451-.443.59A4.5 4.5 0 0 0 3.5 13v1h-1a.5.5 0 0 0-.5.5m2.5-.5v-1a3.5 3.5 0 0 1 1.989-3.158c.533-.256 1.011-.79 1.011-1.491v-.702s.18.101.5.101.5-.1.5-.1v.7c0 .701.478 1.236 1.011 1.492A3.5 3.5 0 0 1 11.5 13v1z\"},\"child\":[]}]})(props);\n};\nexport function BsHourglass (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 1.5a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-1v1a4.5 4.5 0 0 1-2.557 4.06c-.29.139-.443.377-.443.59v.7c0 .213.154.451.443.59A4.5 4.5 0 0 1 12.5 13v1h1a.5.5 0 0 1 0 1h-11a.5.5 0 1 1 0-1h1v-1a4.5 4.5 0 0 1 2.557-4.06c.29-.139.443-.377.443-.59v-.7c0-.213-.154-.451-.443-.59A4.5 4.5 0 0 1 3.5 3V2h-1a.5.5 0 0 1-.5-.5m2.5.5v1a3.5 3.5 0 0 0 1.989 3.158c.533.256 1.011.791 1.011 1.491v.702c0 .7-.478 1.235-1.011 1.491A3.5 3.5 0 0 0 4.5 13v1h7v-1a3.5 3.5 0 0 0-1.989-3.158C8.978 9.586 8.5 9.052 8.5 8.351v-.702c0-.7.478-1.235 1.011-1.491A3.5 3.5 0 0 0 11.5 3V2z\"},\"child\":[]}]})(props);\n};\nexport function BsHouseAddFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12.5 16a3.5 3.5 0 1 0 0-7 3.5 3.5 0 0 0 0 7m.5-5v1h1a.5.5 0 0 1 0 1h-1v1a.5.5 0 1 1-1 0v-1h-1a.5.5 0 1 1 0-1h1v-1a.5.5 0 0 1 1 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8.707 1.5a1 1 0 0 0-1.414 0L.646 8.146a.5.5 0 0 0 .708.708L8 2.207l6.646 6.647a.5.5 0 0 0 .708-.708L13 5.793V2.5a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5v1.293z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m8 3.293 4.712 4.712A4.5 4.5 0 0 0 8.758 15H3.5A1.5 1.5 0 0 1 2 13.5V9.293z\"},\"child\":[]}]})(props);\n};\nexport function BsHouseAdd (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.707 1.5a1 1 0 0 0-1.414 0L.646 8.146a.5.5 0 0 0 .708.708L2 8.207V13.5A1.5 1.5 0 0 0 3.5 15h4a.5.5 0 1 0 0-1h-4a.5.5 0 0 1-.5-.5V7.207l5-5 6.646 6.647a.5.5 0 0 0 .708-.708L13 5.793V2.5a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5v1.293z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M16 12.5a3.5 3.5 0 1 1-7 0 3.5 3.5 0 0 1 7 0m-3.5-2a.5.5 0 0 0-.5.5v1h-1a.5.5 0 0 0 0 1h1v1a.5.5 0 1 0 1 0v-1h1a.5.5 0 1 0 0-1h-1v-1a.5.5 0 0 0-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsHouseCheckFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.707 1.5a1 1 0 0 0-1.414 0L.646 8.146a.5.5 0 0 0 .708.708L8 2.207l6.646 6.647a.5.5 0 0 0 .708-.708L13 5.793V2.5a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5v1.293z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m8 3.293 4.712 4.712A4.5 4.5 0 0 0 8.758 15H3.5A1.5 1.5 0 0 1 2 13.5V9.293z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M12.5 16a3.5 3.5 0 1 0 0-7 3.5 3.5 0 0 0 0 7m1.679-4.493-1.335 2.226a.75.75 0 0 1-1.174.144l-.774-.773a.5.5 0 0 1 .708-.707l.547.547 1.17-1.951a.5.5 0 1 1 .858.514\"},\"child\":[]}]})(props);\n};\nexport function BsHouseCheck (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.293 1.5a1 1 0 0 1 1.414 0L11 3.793V2.5a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v3.293l2.354 2.353a.5.5 0 0 1-.708.708L8 2.207l-5 5V13.5a.5.5 0 0 0 .5.5h4a.5.5 0 0 1 0 1h-4A1.5 1.5 0 0 1 2 13.5V8.207l-.646.647a.5.5 0 1 1-.708-.708z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M12.5 16a3.5 3.5 0 1 0 0-7 3.5 3.5 0 0 0 0 7m1.679-4.493-1.335 2.226a.75.75 0 0 1-1.174.144l-.774-.773a.5.5 0 0 1 .708-.707l.547.547 1.17-1.951a.5.5 0 1 1 .858.514\"},\"child\":[]}]})(props);\n};\nexport function BsHouseDashFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.707 1.5a1 1 0 0 0-1.414 0L.646 8.146a.5.5 0 0 0 .708.708L8 2.207l6.646 6.647a.5.5 0 0 0 .708-.708L13 5.793V2.5a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5v1.293z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m8 3.293 4.712 4.712A4.5 4.5 0 0 0 8.758 15H3.5A1.5 1.5 0 0 1 2 13.5V9.293z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M12.5 16a3.5 3.5 0 1 0 0-7 3.5 3.5 0 0 0 0 7M11 12h3a.5.5 0 0 1 0 1h-3a.5.5 0 1 1 0-1\"},\"child\":[]}]})(props);\n};\nexport function BsHouseDash (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12.5 16a3.5 3.5 0 1 0 0-7 3.5 3.5 0 0 0 0 7M11 12h3a.5.5 0 0 1 0 1h-3a.5.5 0 1 1 0-1\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M7.293 1.5a1 1 0 0 1 1.414 0L11 3.793V2.5a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v3.293l2.354 2.353a.5.5 0 0 1-.708.708L8 2.207l-5 5V13.5a.5.5 0 0 0 .5.5h4a.5.5 0 0 1 0 1h-4A1.5 1.5 0 0 1 2 13.5V8.207l-.646.647a.5.5 0 1 1-.708-.708z\"},\"child\":[]}]})(props);\n};\nexport function BsHouseDoorFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.5 14.5v-3.505c0-.245.25-.495.5-.495h2c.25 0 .5.25.5.5v3.5a.5.5 0 0 0 .5.5h4a.5.5 0 0 0 .5-.5v-7a.5.5 0 0 0-.146-.354L13 5.793V2.5a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5v1.293L8.354 1.146a.5.5 0 0 0-.708 0l-6 6A.5.5 0 0 0 1.5 7.5v7a.5.5 0 0 0 .5.5h4a.5.5 0 0 0 .5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsHouseDoor (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.354 1.146a.5.5 0 0 0-.708 0l-6 6A.5.5 0 0 0 1.5 7.5v7a.5.5 0 0 0 .5.5h4.5a.5.5 0 0 0 .5-.5v-4h2v4a.5.5 0 0 0 .5.5H14a.5.5 0 0 0 .5-.5v-7a.5.5 0 0 0-.146-.354L13 5.793V2.5a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5v1.293zM2.5 14V7.707l5.5-5.5 5.5 5.5V14H10v-4a.5.5 0 0 0-.5-.5h-3a.5.5 0 0 0-.5.5v4z\"},\"child\":[]}]})(props);\n};\nexport function BsHouseDownFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12.5 9a3.5 3.5 0 1 1 0 7 3.5 3.5 0 0 1 0-7m.354 5.854 1.5-1.5a.5.5 0 0 0-.708-.707l-.646.646V10.5a.5.5 0 0 0-1 0v2.793l-.646-.646a.5.5 0 0 0-.708.707l1.5 1.5a.5.5 0 0 0 .708 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8.707 1.5a1 1 0 0 0-1.414 0L.646 8.146a.5.5 0 0 0 .708.708L8 2.207l6.646 6.647a.5.5 0 0 0 .708-.708L13 5.793V2.5a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5v1.293z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m8 3.293 4.712 4.712A4.5 4.5 0 0 0 8.758 15H3.5A1.5 1.5 0 0 1 2 13.5V9.293z\"},\"child\":[]}]})(props);\n};\nexport function BsHouseDown (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.293 1.5a1 1 0 0 1 1.414 0L11 3.793V2.5a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v3.293l2.354 2.353a.5.5 0 0 1-.708.708L8 2.207l-5 5V13.5a.5.5 0 0 0 .5.5h4a.5.5 0 0 1 0 1h-4A1.5 1.5 0 0 1 2 13.5V8.207l-.646.647a.5.5 0 1 1-.708-.708z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M12.5 9a3.5 3.5 0 1 1 0 7 3.5 3.5 0 0 1 0-7m.354 5.854 1.5-1.5a.5.5 0 0 0-.708-.707l-.646.646V10.5a.5.5 0 0 0-1 0v2.793l-.646-.646a.5.5 0 0 0-.708.707l1.5 1.5a.5.5 0 0 0 .708 0\"},\"child\":[]}]})(props);\n};\nexport function BsHouseExclamationFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.707 1.5a1 1 0 0 0-1.414 0L.646 8.146a.5.5 0 0 0 .708.708L8 2.207l6.646 6.647a.5.5 0 0 0 .708-.708L13 5.793V2.5a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5v1.293z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m8 3.293 4.712 4.712A4.5 4.5 0 0 0 8.758 15H3.5A1.5 1.5 0 0 1 2 13.5V9.293z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M16 12.5a3.5 3.5 0 1 1-7 0 3.5 3.5 0 0 1 7 0m-3.5-2a.5.5 0 0 0-.5.5v1.5a.5.5 0 1 0 1 0V11a.5.5 0 0 0-.5-.5m0 4a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1\"},\"child\":[]}]})(props);\n};\nexport function BsHouseExclamation (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.293 1.5a1 1 0 0 1 1.414 0L11 3.793V2.5a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v3.293l2.354 2.353a.5.5 0 0 1-.708.708L8 2.207l-5 5V13.5a.5.5 0 0 0 .5.5h4a.5.5 0 0 1 0 1h-4A1.5 1.5 0 0 1 2 13.5V8.207l-.646.647a.5.5 0 1 1-.708-.708z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M16 12.5a3.5 3.5 0 1 1-7 0 3.5 3.5 0 0 1 7 0m-3.5-2a.5.5 0 0 0-.5.5v1.5a.5.5 0 1 0 1 0V11a.5.5 0 0 0-.5-.5m0 4a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1\"},\"child\":[]}]})(props);\n};\nexport function BsHouseFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.707 1.5a1 1 0 0 0-1.414 0L.646 8.146a.5.5 0 0 0 .708.708L8 2.207l6.646 6.647a.5.5 0 0 0 .708-.708L13 5.793V2.5a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5v1.293z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m8 3.293 6 6V13.5a1.5 1.5 0 0 1-1.5 1.5h-9A1.5 1.5 0 0 1 2 13.5V9.293z\"},\"child\":[]}]})(props);\n};\nexport function BsHouseGearFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.293 1.5a1 1 0 0 1 1.414 0L11 3.793V2.5a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v3.293l2.354 2.353a.5.5 0 0 1-.708.708L8 2.207 1.354 8.854a.5.5 0 1 1-.708-.708z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M11.07 9.047a1.5 1.5 0 0 0-1.742.26l-.02.021a1.5 1.5 0 0 0-.261 1.742 1.5 1.5 0 0 0 0 2.86 1.5 1.5 0 0 0-.12 1.07H3.5A1.5 1.5 0 0 1 2 13.5V9.293l6-6 4.724 4.724a1.5 1.5 0 0 0-1.654 1.03\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m13.158 9.608-.043-.148c-.181-.613-1.049-.613-1.23 0l-.043.148a.64.64 0 0 1-.921.382l-.136-.074c-.561-.306-1.175.308-.87.869l.075.136a.64.64 0 0 1-.382.92l-.148.045c-.613.18-.613 1.048 0 1.229l.148.043a.64.64 0 0 1 .382.921l-.074.136c-.306.561.308 1.175.869.87l.136-.075a.64.64 0 0 1 .92.382l.045.149c.18.612 1.048.612 1.229 0l.043-.15a.64.64 0 0 1 .921-.38l.136.074c.561.305 1.175-.309.87-.87l-.075-.136a.64.64 0 0 1 .382-.92l.149-.044c.612-.181.612-1.049 0-1.23l-.15-.043a.64.64 0 0 1-.38-.921l.074-.136c.305-.561-.309-1.175-.87-.87l-.136.075a.64.64 0 0 1-.92-.382ZM12.5 14a1.5 1.5 0 1 1 0-3 1.5 1.5 0 0 1 0 3\"},\"child\":[]}]})(props);\n};\nexport function BsHouseGear (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.293 1.5a1 1 0 0 1 1.414 0L11 3.793V2.5a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v3.293l2.354 2.353a.5.5 0 0 1-.708.708L8 2.207l-5 5V13.5a.5.5 0 0 0 .5.5h4a.5.5 0 0 1 0 1h-4A1.5 1.5 0 0 1 2 13.5V8.207l-.646.647a.5.5 0 1 1-.708-.708z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M11.886 9.46c.18-.613 1.048-.613 1.229 0l.043.148a.64.64 0 0 0 .921.382l.136-.074c.561-.306 1.175.308.87.869l-.075.136a.64.64 0 0 0 .382.92l.149.045c.612.18.612 1.048 0 1.229l-.15.043a.64.64 0 0 0-.38.921l.074.136c.305.561-.309 1.175-.87.87l-.136-.075a.64.64 0 0 0-.92.382l-.045.149c-.18.612-1.048.612-1.229 0l-.043-.15a.64.64 0 0 0-.921-.38l-.136.074c-.561.305-1.175-.309-.87-.87l.075-.136a.64.64 0 0 0-.382-.92l-.148-.044c-.613-.181-.613-1.049 0-1.23l.148-.043a.64.64 0 0 0 .382-.921l-.074-.136c-.306-.561.308-1.175.869-.87l.136.075a.64.64 0 0 0 .92-.382zM14 12.5a1.5 1.5 0 1 0-3 0 1.5 1.5 0 0 0 3 0\"},\"child\":[]}]})(props);\n};\nexport function BsHouseHeartFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.293 1.5a1 1 0 0 1 1.414 0L11 3.793V2.5a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v3.293l2.354 2.353a.5.5 0 0 1-.708.707L8 2.207 1.354 8.853a.5.5 0 1 1-.708-.707z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m14 9.293-6-6-6 6V13.5A1.5 1.5 0 0 0 3.5 15h9a1.5 1.5 0 0 0 1.5-1.5zm-6-.811c1.664-1.673 5.825 1.254 0 5.018-5.825-3.764-1.664-6.691 0-5.018\"},\"child\":[]}]})(props);\n};\nexport function BsHouseHeart (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 6.982C9.664 5.309 13.825 8.236 8 12 2.175 8.236 6.336 5.309 8 6.982\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8.707 1.5a1 1 0 0 0-1.414 0L.646 8.146a.5.5 0 0 0 .708.707L2 8.207V13.5A1.5 1.5 0 0 0 3.5 15h9a1.5 1.5 0 0 0 1.5-1.5V8.207l.646.646a.5.5 0 0 0 .708-.707L13 5.793V2.5a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5v1.293zM13 7.207V13.5a.5.5 0 0 1-.5.5h-9a.5.5 0 0 1-.5-.5V7.207l5-5z\"},\"child\":[]}]})(props);\n};\nexport function BsHouseLockFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.707 1.5a1 1 0 0 0-1.414 0L.646 8.146a.5.5 0 0 0 .708.708L8 2.207l6.646 6.647a.5.5 0 0 0 .708-.708L13 5.793V2.5a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5v1.293z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m8 3.293 4.72 4.72a3 3 0 0 0-2.709 3.248A2 2 0 0 0 9 13v2H3.5A1.5 1.5 0 0 1 2 13.5V9.293z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M13 9a2 2 0 0 0-2 2v1a1 1 0 0 0-1 1v2a1 1 0 0 0 1 1h4a1 1 0 0 0 1-1v-2a1 1 0 0 0-1-1v-1a2 2 0 0 0-2-2m0 1a1 1 0 0 1 1 1v1h-2v-1a1 1 0 0 1 1-1\"},\"child\":[]}]})(props);\n};\nexport function BsHouseLock (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.293 1.5a1 1 0 0 1 1.414 0L11 3.793V2.5a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v3.293l2.354 2.353a.5.5 0 0 1-.708.708L8 2.207l-5 5V13.5a.5.5 0 0 0 .5.5h4a.5.5 0 0 1 0 1h-4A1.5 1.5 0 0 1 2 13.5V8.207l-.646.647a.5.5 0 1 1-.708-.708z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M10 13a1 1 0 0 1 1-1v-1a2 2 0 0 1 4 0v1a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1h-4a1 1 0 0 1-1-1zm3-3a1 1 0 0 0-1 1v1h2v-1a1 1 0 0 0-1-1\"},\"child\":[]}]})(props);\n};\nexport function BsHouseSlashFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.707 1.5a1 1 0 0 0-1.414 0L.646 8.146a.5.5 0 0 0 .708.708L8 2.207l6.646 6.647a.5.5 0 0 0 .708-.708L13 5.793V2.5a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5v1.293z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m8 3.293 4.712 4.712A4.5 4.5 0 0 0 8.758 15H3.5A1.5 1.5 0 0 1 2 13.5V9.293z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M13.879 10.414a2.5 2.5 0 0 0-3.465 3.465zm.707.707-3.465 3.465a2.501 2.501 0 0 0 3.465-3.465m-4.56-1.096a3.5 3.5 0 1 1 4.949 4.95 3.5 3.5 0 0 1-4.95-4.95Z\"},\"child\":[]}]})(props);\n};\nexport function BsHouseSlash (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M13.879 10.414a2.5 2.5 0 0 0-3.465 3.465zm.707.707-3.465 3.465a2.501 2.501 0 0 0 3.465-3.465m-4.56-1.096a3.5 3.5 0 1 1 4.949 4.95 3.5 3.5 0 0 1-4.95-4.95Z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M7.293 1.5a1 1 0 0 1 1.414 0L11 3.793V2.5a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v3.293l2.354 2.353a.5.5 0 0 1-.708.708L8 2.207l-5 5V13.5a.5.5 0 0 0 .5.5h4a.5.5 0 0 1 0 1h-4A1.5 1.5 0 0 1 2 13.5V8.207l-.646.647a.5.5 0 1 1-.708-.708z\"},\"child\":[]}]})(props);\n};\nexport function BsHouseUpFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12.5 16a3.5 3.5 0 1 0 0-7 3.5 3.5 0 0 0 0 7m.354-5.854 1.5 1.5a.5.5 0 0 1-.708.708L13 11.707V14.5a.5.5 0 1 1-1 0v-2.793l-.646.647a.5.5 0 0 1-.708-.707l1.5-1.5a.5.5 0 0 1 .708 0Z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8.707 1.5a1 1 0 0 0-1.414 0L.646 8.146a.5.5 0 0 0 .708.708L8 2.207l6.646 6.647a.5.5 0 0 0 .708-.708L13 5.793V2.5a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5v1.293z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m8 3.293 4.712 4.712A4.5 4.5 0 0 0 8.758 15H3.5A1.5 1.5 0 0 1 2 13.5V9.293z\"},\"child\":[]}]})(props);\n};\nexport function BsHouseUp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.293 1.5a1 1 0 0 1 1.414 0L11 3.793V2.5a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v3.293l2.354 2.353a.5.5 0 0 1-.708.708L8 2.207l-5 5V13.5a.5.5 0 0 0 .5.5h4a.5.5 0 0 1 0 1h-4A1.5 1.5 0 0 1 2 13.5V8.207l-.646.647a.5.5 0 1 1-.708-.708z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M12.5 16a3.5 3.5 0 1 0 0-7 3.5 3.5 0 0 0 0 7m.354-5.854 1.5 1.5a.5.5 0 0 1-.708.708L13 11.707V14.5a.5.5 0 1 1-1 0v-2.793l-.646.647a.5.5 0 0 1-.708-.707l1.5-1.5a.5.5 0 0 1 .708 0Z\"},\"child\":[]}]})(props);\n};\nexport function BsHouseXFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.707 1.5a1 1 0 0 0-1.414 0L.646 8.146a.5.5 0 0 0 .708.708L8 2.207l6.646 6.647a.5.5 0 0 0 .708-.708L13 5.793V2.5a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5v1.293z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m8 3.293 4.712 4.712A4.5 4.5 0 0 0 8.758 15H3.5A1.5 1.5 0 0 1 2 13.5V9.293z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M12.5 16a3.5 3.5 0 1 0 0-7 3.5 3.5 0 0 0 0 7m-.646-4.854.646.647.646-.646a.5.5 0 0 1 .708.707l-.647.646.647.646a.5.5 0 0 1-.708.708l-.646-.647-.646.647a.5.5 0 0 1-.708-.707l.647-.647-.647-.646a.5.5 0 0 1 .708-.707Z\"},\"child\":[]}]})(props);\n};\nexport function BsHouseX (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.293 1.5a1 1 0 0 1 1.414 0L11 3.793V2.5a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v3.293l2.354 2.353a.5.5 0 0 1-.708.708L8 2.207l-5 5V13.5a.5.5 0 0 0 .5.5h4a.5.5 0 0 1 0 1h-4A1.5 1.5 0 0 1 2 13.5V8.207l-.646.647a.5.5 0 1 1-.708-.708z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M12.5 16a3.5 3.5 0 1 0 0-7 3.5 3.5 0 0 0 0 7m-.646-4.854.646.647.646-.646a.5.5 0 0 1 .708.707l-.647.646.647.646a.5.5 0 0 1-.708.708l-.646-.647-.646.647a.5.5 0 0 1-.708-.707l.647-.647-.647-.646a.5.5 0 0 1 .708-.707Z\"},\"child\":[]}]})(props);\n};\nexport function BsHouse (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.707 1.5a1 1 0 0 0-1.414 0L.646 8.146a.5.5 0 0 0 .708.708L2 8.207V13.5A1.5 1.5 0 0 0 3.5 15h9a1.5 1.5 0 0 0 1.5-1.5V8.207l.646.647a.5.5 0 0 0 .708-.708L13 5.793V2.5a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5v1.293zM13 7.207V13.5a.5.5 0 0 1-.5.5h-9a.5.5 0 0 1-.5-.5V7.207l5-5z\"},\"child\":[]}]})(props);\n};\nexport function BsHousesFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.207 1a1 1 0 0 0-1.414 0L.146 6.646a.5.5 0 0 0 .708.708L1 7.207V12.5A1.5 1.5 0 0 0 2.5 14h.55a2.5 2.5 0 0 1-.05-.5V9.415a1.5 1.5 0 0 1-.56-2.475l5.353-5.354z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8.793 2a1 1 0 0 1 1.414 0L12 3.793V2.5a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v3.293l1.854 1.853a.5.5 0 0 1-.708.708L15 8.207V13.5a1.5 1.5 0 0 1-1.5 1.5h-8A1.5 1.5 0 0 1 4 13.5V8.207l-.146.147a.5.5 0 1 1-.708-.708z\"},\"child\":[]}]})(props);\n};\nexport function BsHouses (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5.793 1a1 1 0 0 1 1.414 0l.647.646a.5.5 0 1 1-.708.708L6.5 1.707 2 6.207V12.5a.5.5 0 0 0 .5.5.5.5 0 0 1 0 1A1.5 1.5 0 0 1 1 12.5V7.207l-.146.147a.5.5 0 0 1-.708-.708zm3 1a1 1 0 0 1 1.414 0L12 3.793V2.5a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v3.293l1.854 1.853a.5.5 0 0 1-.708.708L15 8.207V13.5a1.5 1.5 0 0 1-1.5 1.5h-8A1.5 1.5 0 0 1 4 13.5V8.207l-.146.147a.5.5 0 1 1-.708-.708zm.707.707L5 7.207V13.5a.5.5 0 0 0 .5.5h8a.5.5 0 0 0 .5-.5V7.207z\"},\"child\":[]}]})(props);\n};\nexport function BsHr (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12 3H4a1 1 0 0 0-1 1v2.5H2V4a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v2.5h-1V4a1 1 0 0 0-1-1M2 9.5h1V12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V9.5h1V12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2zm-1.5-2a.5.5 0 0 0 0 1h15a.5.5 0 0 0 0-1z\"},\"child\":[]}]})(props);\n};\nexport function BsHurricane (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.999 2.6A5.5 5.5 0 0 1 15 7.5a.5.5 0 0 0 1 0 6.5 6.5 0 1 0-13 0 5 5 0 0 0 6.001 4.9A5.5 5.5 0 0 1 1 7.5a.5.5 0 0 0-1 0 6.5 6.5 0 1 0 13 0 5 5 0 0 0-6.001-4.9M10 7.5a2 2 0 1 1-4 0 2 2 0 0 1 4 0\"},\"child\":[]}]})(props);\n};\nexport function BsHypnotize (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m7.949 7.998.006-.003.003.009zm.025-.028v-.03l.018.01zm0 .015.04-.022.01.006v.04l-.029.016-.021-.012zm.049.057v-.014l-.008.01zm-.05-.008h.006l-.006.004z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M8 0a8 8 0 1 0 0 16A8 8 0 0 0 8 0M4.965 1.69a6.97 6.97 0 0 1 3.861-.642c.722.767 1.177 1.887 1.177 3.135 0 1.656-.802 3.088-1.965 3.766 1.263.24 2.655-.815 3.406-2.742.38-.975.537-2.023.492-2.996a7.03 7.03 0 0 1 2.488 3.003c-.303 1.01-1.046 1.966-2.128 2.59-1.44.832-3.09.85-4.26.173l.008.021.012-.006-.01.01c.42 1.218 2.032 1.9 4.08 1.586a7.4 7.4 0 0 0 2.856-1.081 6.96 6.96 0 0 1-1.358 3.662c-1.03.248-2.235.084-3.322-.544-1.433-.827-2.272-2.236-2.279-3.58l-.012-.003c-.845.972-.63 2.71.666 4.327a7.4 7.4 0 0 0 2.37 1.935 6.97 6.97 0 0 1-3.86.65c-.727-.767-1.186-1.892-1.186-3.146 0-1.658.804-3.091 1.969-3.768l-.002-.007c-1.266-.25-2.666.805-3.42 2.74a7.4 7.4 0 0 0-.49 3.012 7.03 7.03 0 0 1-2.49-3.018C1.87 9.757 2.613 8.8 3.696 8.174c1.438-.83 3.084-.85 4.253-.176l.005-.006C7.538 6.77 5.924 6.085 3.872 6.4c-1.04.16-2.03.55-2.853 1.08a6.96 6.96 0 0 1 1.372-3.667l-.002.003c1.025-.243 2.224-.078 3.306.547 1.43.826 2.269 2.23 2.28 3.573L8 7.941c.837-.974.62-2.706-.673-4.319a7.4 7.4 0 0 0-2.362-1.931Z\"},\"child\":[]}]})(props);\n};\nexport function BsImageAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7 2.5a2.5 2.5 0 1 1-5 0 2.5 2.5 0 0 1 5 0m4.225 4.053a.5.5 0 0 0-.577.093l-3.71 4.71-2.66-2.772a.5.5 0 0 0-.63.062L.002 13v2a1 1 0 0 0 1 1h14a1 1 0 0 0 1-1v-4.5z\"},\"child\":[]}]})(props);\n};\nexport function BsImageFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M.002 3a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v10a2 2 0 0 1-2 2h-12a2 2 0 0 1-2-2zm1 9v1a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V9.5l-3.777-1.947a.5.5 0 0 0-.577.093l-3.71 3.71-2.66-1.772a.5.5 0 0 0-.63.062zm5-6.5a1.5 1.5 0 1 0-3 0 1.5 1.5 0 0 0 3 0\"},\"child\":[]}]})(props);\n};\nexport function BsImage (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.002 5.5a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2.002 1a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V3a2 2 0 0 0-2-2zm12 1a1 1 0 0 1 1 1v6.5l-3.777-1.947a.5.5 0 0 0-.577.093l-3.71 3.71-2.66-1.772a.5.5 0 0 0-.63.062L1.002 12V3a1 1 0 0 1 1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsImages (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4.502 9a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M14.002 13a2 2 0 0 1-2 2h-10a2 2 0 0 1-2-2V5A2 2 0 0 1 2 3a2 2 0 0 1 2-2h10a2 2 0 0 1 2 2v8a2 2 0 0 1-1.998 2M14 2H4a1 1 0 0 0-1 1h9.002a2 2 0 0 1 2 2v7A1 1 0 0 0 15 11V3a1 1 0 0 0-1-1M2.002 4a1 1 0 0 0-1 1v8l2.646-2.354a.5.5 0 0 1 .63-.062l2.66 1.773 3.71-3.71a.5.5 0 0 1 .577-.094l1.777 1.947V5a1 1 0 0 0-1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsInboxFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4.98 4a.5.5 0 0 0-.39.188L1.54 8H6a.5.5 0 0 1 .5.5 1.5 1.5 0 1 0 3 0A.5.5 0 0 1 10 8h4.46l-3.05-3.812A.5.5 0 0 0 11.02 4zm-1.17-.437A1.5 1.5 0 0 1 4.98 3h6.04a1.5 1.5 0 0 1 1.17.563l3.7 4.625a.5.5 0 0 1 .106.374l-.39 3.124A1.5 1.5 0 0 1 14.117 13H1.883a1.5 1.5 0 0 1-1.489-1.314l-.39-3.124a.5.5 0 0 1 .106-.374z\"},\"child\":[]}]})(props);\n};\nexport function BsInbox (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4.98 4a.5.5 0 0 0-.39.188L1.54 8H6a.5.5 0 0 1 .5.5 1.5 1.5 0 1 0 3 0A.5.5 0 0 1 10 8h4.46l-3.05-3.812A.5.5 0 0 0 11.02 4zm9.954 5H10.45a2.5 2.5 0 0 1-4.9 0H1.066l.32 2.562a.5.5 0 0 0 .497.438h12.234a.5.5 0 0 0 .496-.438zM3.809 3.563A1.5 1.5 0 0 1 4.981 3h6.038a1.5 1.5 0 0 1 1.172.563l3.7 4.625a.5.5 0 0 1 .105.374l-.39 3.124A1.5 1.5 0 0 1 14.117 13H1.883a1.5 1.5 0 0 1-1.489-1.314l-.39-3.124a.5.5 0 0 1 .106-.374z\"},\"child\":[]}]})(props);\n};\nexport function BsInboxesFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4.98 1a.5.5 0 0 0-.39.188L1.54 5H6a.5.5 0 0 1 .5.5 1.5 1.5 0 0 0 3 0A.5.5 0 0 1 10 5h4.46l-3.05-3.812A.5.5 0 0 0 11.02 1zM3.81.563A1.5 1.5 0 0 1 4.98 0h6.04a1.5 1.5 0 0 1 1.17.563l3.7 4.625a.5.5 0 0 1 .106.374l-.39 3.124A1.5 1.5 0 0 1 14.117 10H1.883A1.5 1.5 0 0 1 .394 8.686l-.39-3.124a.5.5 0 0 1 .106-.374zM.125 11.17A.5.5 0 0 1 .5 11H6a.5.5 0 0 1 .5.5 1.5 1.5 0 0 0 3 0 .5.5 0 0 1 .5-.5h5.5a.5.5 0 0 1 .496.562l-.39 3.124A1.5 1.5 0 0 1 14.117 16H1.883a1.5 1.5 0 0 1-1.489-1.314l-.39-3.124a.5.5 0 0 1 .121-.393z\"},\"child\":[]}]})(props);\n};\nexport function BsInboxes (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4.98 1a.5.5 0 0 0-.39.188L1.54 5H6a.5.5 0 0 1 .5.5 1.5 1.5 0 0 0 3 0A.5.5 0 0 1 10 5h4.46l-3.05-3.812A.5.5 0 0 0 11.02 1zm9.954 5H10.45a2.5 2.5 0 0 1-4.9 0H1.066l.32 2.562A.5.5 0 0 0 1.884 9h12.234a.5.5 0 0 0 .496-.438zM3.809.563A1.5 1.5 0 0 1 4.981 0h6.038a1.5 1.5 0 0 1 1.172.563l3.7 4.625a.5.5 0 0 1 .105.374l-.39 3.124A1.5 1.5 0 0 1 14.117 10H1.883A1.5 1.5 0 0 1 .394 8.686l-.39-3.124a.5.5 0 0 1 .106-.374zM.125 11.17A.5.5 0 0 1 .5 11H6a.5.5 0 0 1 .5.5 1.5 1.5 0 0 0 3 0 .5.5 0 0 1 .5-.5h5.5a.5.5 0 0 1 .496.562l-.39 3.124A1.5 1.5 0 0 1 14.117 16H1.883a1.5 1.5 0 0 1-1.489-1.314l-.39-3.124a.5.5 0 0 1 .121-.393zm.941.83.32 2.562a.5.5 0 0 0 .497.438h12.234a.5.5 0 0 0 .496-.438l.32-2.562H10.45a2.5 2.5 0 0 1-4.9 0z\"},\"child\":[]}]})(props);\n};\nexport function BsIncognito (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"m4.736 1.968-.892 3.269-.014.058C2.113 5.568 1 6.006 1 6.5 1 7.328 4.134 8 8 8s7-.672 7-1.5c0-.494-1.113-.932-2.83-1.205l-.014-.058-.892-3.27c-.146-.533-.698-.849-1.239-.734C9.411 1.363 8.62 1.5 8 1.5s-1.411-.136-2.025-.267c-.541-.115-1.093.2-1.239.735m.015 3.867a.25.25 0 0 1 .274-.224c.9.092 1.91.143 2.975.143a30 30 0 0 0 2.975-.143.25.25 0 0 1 .05.498c-.918.093-1.944.145-3.025.145s-2.107-.052-3.025-.145a.25.25 0 0 1-.224-.274M3.5 10h2a.5.5 0 0 1 .5.5v1a1.5 1.5 0 0 1-3 0v-1a.5.5 0 0 1 .5-.5m-1.5.5q.001-.264.085-.5H2a.5.5 0 0 1 0-1h3.5a1.5 1.5 0 0 1 1.488 1.312 3.5 3.5 0 0 1 2.024 0A1.5 1.5 0 0 1 10.5 9H14a.5.5 0 0 1 0 1h-.085q.084.236.085.5v1a2.5 2.5 0 0 1-5 0v-.14l-.21-.07a2.5 2.5 0 0 0-1.58 0l-.21.07v.14a2.5 2.5 0 0 1-5 0zm8.5-.5h2a.5.5 0 0 1 .5.5v1a1.5 1.5 0 0 1-3 0v-1a.5.5 0 0 1 .5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsIndent (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M3 8a.5.5 0 0 1 .5-.5h6.793L8.146 5.354a.5.5 0 1 1 .708-.708l3 3a.5.5 0 0 1 0 .708l-3 3a.5.5 0 0 1-.708-.708L10.293 8.5H3.5A.5.5 0 0 1 3 8\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M12.5 4a.5.5 0 0 1 .5.5v7a.5.5 0 0 1-1 0v-7a.5.5 0 0 1 .5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsInfinity (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5.68 5.792 7.345 7.75 5.681 9.708a2.75 2.75 0 1 1 0-3.916ZM8 6.978 6.416 5.113l-.014-.015a3.75 3.75 0 1 0 0 5.304l.014-.015L8 8.522l1.584 1.865.014.015a3.75 3.75 0 1 0 0-5.304l-.014.015zm.656.772 1.663-1.958a2.75 2.75 0 1 1 0 3.916z\"},\"child\":[]}]})(props);\n};\nexport function BsInfoCircleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 16A8 8 0 1 0 8 0a8 8 0 0 0 0 16m.93-9.412-1 4.705c-.07.34.029.533.304.533.194 0 .487-.07.686-.246l-.088.416c-.287.346-.92.598-1.465.598-.703 0-1.002-.422-.808-1.319l.738-3.468c.064-.293.006-.399-.287-.47l-.451-.081.082-.381 2.29-.287zM8 5.5a1 1 0 1 1 0-2 1 1 0 0 1 0 2\"},\"child\":[]}]})(props);\n};\nexport function BsInfoCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14m0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m8.93 6.588-2.29.287-.082.38.45.083c.294.07.352.176.288.469l-.738 3.468c-.194.897.105 1.319.808 1.319.545 0 1.178-.252 1.465-.598l.088-.416c-.2.176-.492.246-.686.246-.275 0-.375-.193-.304-.533zM9 4.5a1 1 0 1 1-2 0 1 1 0 0 1 2 0\"},\"child\":[]}]})(props);\n};\nexport function BsInfoLg (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m9.708 6.075-3.024.379-.108.502.595.108c.387.093.464.232.38.619l-.975 4.577c-.255 1.183.14 1.74 1.067 1.74.72 0 1.554-.332 1.933-.789l.116-.549c-.263.232-.65.325-.905.325-.363 0-.494-.255-.402-.704zm.091-2.755a1.32 1.32 0 1 1-2.64 0 1.32 1.32 0 0 1 2.64 0\"},\"child\":[]}]})(props);\n};\nexport function BsInfoSquareFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 2a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm8.93 4.588-2.29.287-.082.38.45.083c.294.07.352.176.288.469l-.738 3.468c-.194.897.105 1.319.808 1.319.545 0 1.178-.252 1.465-.598l.088-.416c-.2.176-.492.246-.686.246-.275 0-.375-.193-.304-.533zM8 5.5a1 1 0 1 0 0-2 1 1 0 0 0 0 2\"},\"child\":[]}]})(props);\n};\nexport function BsInfoSquare (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M14 1a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1zM2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m8.93 6.588-2.29.287-.082.38.45.083c.294.07.352.176.288.469l-.738 3.468c-.194.897.105 1.319.808 1.319.545 0 1.178-.252 1.465-.598l.088-.416c-.2.176-.492.246-.686.246-.275 0-.375-.193-.304-.533zM9 4.5a1 1 0 1 1-2 0 1 1 0 0 1 2 0\"},\"child\":[]}]})(props);\n};\nexport function BsInfo (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m8.93 6.588-2.29.287-.082.38.45.083c.294.07.352.176.288.469l-.738 3.468c-.194.897.105 1.319.808 1.319.545 0 1.178-.252 1.465-.598l.088-.416c-.2.176-.492.246-.686.246-.275 0-.375-.193-.304-.533zM9 4.5a1 1 0 1 1-2 0 1 1 0 0 1 2 0\"},\"child\":[]}]})(props);\n};\nexport function BsInputCursorText (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M5 2a.5.5 0 0 1 .5-.5c.862 0 1.573.287 2.06.566.174.099.321.198.44.286.119-.088.266-.187.44-.286A4.17 4.17 0 0 1 10.5 1.5a.5.5 0 0 1 0 1c-.638 0-1.177.213-1.564.434a3.5 3.5 0 0 0-.436.294V7.5H9a.5.5 0 0 1 0 1h-.5v4.272c.1.08.248.187.436.294.387.221.926.434 1.564.434a.5.5 0 0 1 0 1 4.17 4.17 0 0 1-2.06-.566A5 5 0 0 1 8 13.65a5 5 0 0 1-.44.285 4.17 4.17 0 0 1-2.06.566.5.5 0 0 1 0-1c.638 0 1.177-.213 1.564-.434.188-.107.335-.214.436-.294V8.5H7a.5.5 0 0 1 0-1h.5V3.228a3.5 3.5 0 0 0-.436-.294A3.17 3.17 0 0 0 5.5 2.5.5.5 0 0 1 5 2\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M10 5h4a1 1 0 0 1 1 1v4a1 1 0 0 1-1 1h-4v1h4a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2h-4zM6 5V4H2a2 2 0 0 0-2 2v4a2 2 0 0 0 2 2h4v-1H2a1 1 0 0 1-1-1V6a1 1 0 0 1 1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsInputCursor (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M10 5h4a1 1 0 0 1 1 1v4a1 1 0 0 1-1 1h-4v1h4a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2h-4zM6 5V4H2a2 2 0 0 0-2 2v4a2 2 0 0 0 2 2h4v-1H2a1 1 0 0 1-1-1V6a1 1 0 0 1 1-1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M8 1a.5.5 0 0 1 .5.5v13a.5.5 0 0 1-1 0v-13A.5.5 0 0 1 8 1\"},\"child\":[]}]})(props);\n};\nexport function BsInstagram (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 0C5.829 0 5.556.01 4.703.048 3.85.088 3.269.222 2.76.42a3.9 3.9 0 0 0-1.417.923A3.9 3.9 0 0 0 .42 2.76C.222 3.268.087 3.85.048 4.7.01 5.555 0 5.827 0 8.001c0 2.172.01 2.444.048 3.297.04.852.174 1.433.372 1.942.205.526.478.972.923 1.417.444.445.89.719 1.416.923.51.198 1.09.333 1.942.372C5.555 15.99 5.827 16 8 16s2.444-.01 3.298-.048c.851-.04 1.434-.174 1.943-.372a3.9 3.9 0 0 0 1.416-.923c.445-.445.718-.891.923-1.417.197-.509.332-1.09.372-1.942C15.99 10.445 16 10.173 16 8s-.01-2.445-.048-3.299c-.04-.851-.175-1.433-.372-1.941a3.9 3.9 0 0 0-.923-1.417A3.9 3.9 0 0 0 13.24.42c-.51-.198-1.092-.333-1.943-.372C10.443.01 10.172 0 7.998 0zm-.717 1.442h.718c2.136 0 2.389.007 3.232.046.78.035 1.204.166 1.486.275.373.145.64.319.92.599s.453.546.598.92c.11.281.24.705.275 1.485.039.843.047 1.096.047 3.231s-.008 2.389-.047 3.232c-.035.78-.166 1.203-.275 1.485a2.5 2.5 0 0 1-.599.919c-.28.28-.546.453-.92.598-.28.11-.704.24-1.485.276-.843.038-1.096.047-3.232.047s-2.39-.009-3.233-.047c-.78-.036-1.203-.166-1.485-.276a2.5 2.5 0 0 1-.92-.598 2.5 2.5 0 0 1-.6-.92c-.109-.281-.24-.705-.275-1.485-.038-.843-.046-1.096-.046-3.233s.008-2.388.046-3.231c.036-.78.166-1.204.276-1.486.145-.373.319-.64.599-.92s.546-.453.92-.598c.282-.11.705-.24 1.485-.276.738-.034 1.024-.044 2.515-.045zm4.988 1.328a.96.96 0 1 0 0 1.92.96.96 0 0 0 0-1.92m-4.27 1.122a4.109 4.109 0 1 0 0 8.217 4.109 4.109 0 0 0 0-8.217m0 1.441a2.667 2.667 0 1 1 0 5.334 2.667 2.667 0 0 1 0-5.334\"},\"child\":[]}]})(props);\n};\nexport function BsIntersect (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 2a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v2h2a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2v-2H2a2 2 0 0 1-2-2zm5 10v2a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V6a1 1 0 0 0-1-1h-2v5a2 2 0 0 1-2 2zm6-8V2a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1v8a1 1 0 0 0 1 1h2V6a2 2 0 0 1 2-2z\"},\"child\":[]}]})(props);\n};\nexport function BsJournalAlbum (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5.5 4a.5.5 0 0 0-.5.5v5a.5.5 0 0 0 .5.5h5a.5.5 0 0 0 .5-.5v-5a.5.5 0 0 0-.5-.5zm1 7a.5.5 0 0 0 0 1h3a.5.5 0 0 0 0-1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3 0h10a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2v-1h1v1a1 1 0 0 0 1 1h10a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H3a1 1 0 0 0-1 1v1H1V2a2 2 0 0 1 2-2\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M1 5v-.5a.5.5 0 0 1 1 0V5h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1zm0 3v-.5a.5.5 0 0 1 1 0V8h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1zm0 3v-.5a.5.5 0 0 1 1 0v.5h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1z\"},\"child\":[]}]})(props);\n};\nexport function BsJournalArrowDown (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M8 5a.5.5 0 0 1 .5.5v3.793l1.146-1.147a.5.5 0 0 1 .708.708l-2 2a.5.5 0 0 1-.708 0l-2-2a.5.5 0 1 1 .708-.708L7.5 9.293V5.5A.5.5 0 0 1 8 5\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3 0h10a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2v-1h1v1a1 1 0 0 0 1 1h10a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H3a1 1 0 0 0-1 1v1H1V2a2 2 0 0 1 2-2\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M1 5v-.5a.5.5 0 0 1 1 0V5h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1zm0 3v-.5a.5.5 0 0 1 1 0V8h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1zm0 3v-.5a.5.5 0 0 1 1 0v.5h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1z\"},\"child\":[]}]})(props);\n};\nexport function BsJournalArrowUp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M8 11a.5.5 0 0 0 .5-.5V6.707l1.146 1.147a.5.5 0 0 0 .708-.708l-2-2a.5.5 0 0 0-.708 0l-2 2a.5.5 0 1 0 .708.708L7.5 6.707V10.5a.5.5 0 0 0 .5.5\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3 0h10a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2v-1h1v1a1 1 0 0 0 1 1h10a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H3a1 1 0 0 0-1 1v1H1V2a2 2 0 0 1 2-2\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M1 5v-.5a.5.5 0 0 1 1 0V5h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1zm0 3v-.5a.5.5 0 0 1 1 0V8h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1zm0 3v-.5a.5.5 0 0 1 1 0v.5h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1z\"},\"child\":[]}]})(props);\n};\nexport function BsJournalBookmarkFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M6 1h6v7a.5.5 0 0 1-.757.429L9 7.083 6.757 8.43A.5.5 0 0 1 6 8z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3 0h10a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2v-1h1v1a1 1 0 0 0 1 1h10a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H3a1 1 0 0 0-1 1v1H1V2a2 2 0 0 1 2-2\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M1 5v-.5a.5.5 0 0 1 1 0V5h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1zm0 3v-.5a.5.5 0 0 1 1 0V8h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1zm0 3v-.5a.5.5 0 0 1 1 0v.5h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1z\"},\"child\":[]}]})(props);\n};\nexport function BsJournalBookmark (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M6 8V1h1v6.117L8.743 6.07a.5.5 0 0 1 .514 0L11 7.117V1h1v7a.5.5 0 0 1-.757.429L9 7.083 6.757 8.43A.5.5 0 0 1 6 8\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3 0h10a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2v-1h1v1a1 1 0 0 0 1 1h10a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H3a1 1 0 0 0-1 1v1H1V2a2 2 0 0 1 2-2\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M1 5v-.5a.5.5 0 0 1 1 0V5h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1zm0 3v-.5a.5.5 0 0 1 1 0V8h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1zm0 3v-.5a.5.5 0 0 1 1 0v.5h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1z\"},\"child\":[]}]})(props);\n};\nexport function BsJournalCheck (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M10.854 6.146a.5.5 0 0 1 0 .708l-3 3a.5.5 0 0 1-.708 0l-1.5-1.5a.5.5 0 1 1 .708-.708L7.5 8.793l2.646-2.647a.5.5 0 0 1 .708 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3 0h10a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2v-1h1v1a1 1 0 0 0 1 1h10a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H3a1 1 0 0 0-1 1v1H1V2a2 2 0 0 1 2-2\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M1 5v-.5a.5.5 0 0 1 1 0V5h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1zm0 3v-.5a.5.5 0 0 1 1 0V8h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1zm0 3v-.5a.5.5 0 0 1 1 0v.5h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1z\"},\"child\":[]}]})(props);\n};\nexport function BsJournalCode (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M8.646 5.646a.5.5 0 0 1 .708 0l2 2a.5.5 0 0 1 0 .708l-2 2a.5.5 0 0 1-.708-.708L10.293 8 8.646 6.354a.5.5 0 0 1 0-.708m-1.292 0a.5.5 0 0 0-.708 0l-2 2a.5.5 0 0 0 0 .708l2 2a.5.5 0 0 0 .708-.708L5.707 8l1.647-1.646a.5.5 0 0 0 0-.708\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3 0h10a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2v-1h1v1a1 1 0 0 0 1 1h10a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H3a1 1 0 0 0-1 1v1H1V2a2 2 0 0 1 2-2\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M1 5v-.5a.5.5 0 0 1 1 0V5h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1zm0 3v-.5a.5.5 0 0 1 1 0V8h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1zm0 3v-.5a.5.5 0 0 1 1 0v.5h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1z\"},\"child\":[]}]})(props);\n};\nexport function BsJournalMedical (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M8 4a.5.5 0 0 1 .5.5v.634l.549-.317a.5.5 0 1 1 .5.866L9 6l.549.317a.5.5 0 1 1-.5.866L8.5 6.866V7.5a.5.5 0 0 1-1 0v-.634l-.549.317a.5.5 0 1 1-.5-.866L7 6l-.549-.317a.5.5 0 0 1 .5-.866l.549.317V4.5A.5.5 0 0 1 8 4M5 9.5a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5m0 2a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3 0h10a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2v-1h1v1a1 1 0 0 0 1 1h10a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H3a1 1 0 0 0-1 1v1H1V2a2 2 0 0 1 2-2\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M1 5v-.5a.5.5 0 0 1 1 0V5h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1zm0 3v-.5a.5.5 0 0 1 1 0V8h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1zm0 3v-.5a.5.5 0 0 1 1 0v.5h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1z\"},\"child\":[]}]})(props);\n};\nexport function BsJournalMinus (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M5.5 8a.5.5 0 0 1 .5-.5h4a.5.5 0 0 1 0 1H6a.5.5 0 0 1-.5-.5\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3 0h10a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2v-1h1v1a1 1 0 0 0 1 1h10a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H3a1 1 0 0 0-1 1v1H1V2a2 2 0 0 1 2-2\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M1 5v-.5a.5.5 0 0 1 1 0V5h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1zm0 3v-.5a.5.5 0 0 1 1 0V8h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1zm0 3v-.5a.5.5 0 0 1 1 0v.5h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1z\"},\"child\":[]}]})(props);\n};\nexport function BsJournalPlus (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M8 5.5a.5.5 0 0 1 .5.5v1.5H10a.5.5 0 0 1 0 1H8.5V10a.5.5 0 0 1-1 0V8.5H6a.5.5 0 0 1 0-1h1.5V6a.5.5 0 0 1 .5-.5\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3 0h10a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2v-1h1v1a1 1 0 0 0 1 1h10a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H3a1 1 0 0 0-1 1v1H1V2a2 2 0 0 1 2-2\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M1 5v-.5a.5.5 0 0 1 1 0V5h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1zm0 3v-.5a.5.5 0 0 1 1 0V8h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1zm0 3v-.5a.5.5 0 0 1 1 0v.5h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1z\"},\"child\":[]}]})(props);\n};\nexport function BsJournalRichtext (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.5 3.75a.75.75 0 1 1-1.5 0 .75.75 0 0 1 1.5 0m-.861 1.542 1.33.886 1.854-1.855a.25.25 0 0 1 .289-.047L11 4.75V7a.5.5 0 0 1-.5.5h-5A.5.5 0 0 1 5 7v-.5s1.54-1.274 1.639-1.208M5 9.5a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5m0 2a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1-.5-.5\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3 0h10a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2v-1h1v1a1 1 0 0 0 1 1h10a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H3a1 1 0 0 0-1 1v1H1V2a2 2 0 0 1 2-2\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M1 5v-.5a.5.5 0 0 1 1 0V5h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1zm0 3v-.5a.5.5 0 0 1 1 0V8h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1zm0 3v-.5a.5.5 0 0 1 1 0v.5h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1z\"},\"child\":[]}]})(props);\n};\nexport function BsJournalText (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5 10.5a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1-.5-.5m0-2a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5m0-2a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5m0-2a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3 0h10a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2v-1h1v1a1 1 0 0 0 1 1h10a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H3a1 1 0 0 0-1 1v1H1V2a2 2 0 0 1 2-2\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M1 5v-.5a.5.5 0 0 1 1 0V5h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1zm0 3v-.5a.5.5 0 0 1 1 0V8h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1zm0 3v-.5a.5.5 0 0 1 1 0v.5h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1z\"},\"child\":[]}]})(props);\n};\nexport function BsJournalX (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M6.146 6.146a.5.5 0 0 1 .708 0L8 7.293l1.146-1.147a.5.5 0 1 1 .708.708L8.707 8l1.147 1.146a.5.5 0 0 1-.708.708L8 8.707 6.854 9.854a.5.5 0 0 1-.708-.708L7.293 8 6.146 6.854a.5.5 0 0 1 0-.708\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3 0h10a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2v-1h1v1a1 1 0 0 0 1 1h10a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H3a1 1 0 0 0-1 1v1H1V2a2 2 0 0 1 2-2\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M1 5v-.5a.5.5 0 0 1 1 0V5h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1zm0 3v-.5a.5.5 0 0 1 1 0V8h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1zm0 3v-.5a.5.5 0 0 1 1 0v.5h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1z\"},\"child\":[]}]})(props);\n};\nexport function BsJournal (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3 0h10a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2v-1h1v1a1 1 0 0 0 1 1h10a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H3a1 1 0 0 0-1 1v1H1V2a2 2 0 0 1 2-2\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M1 5v-.5a.5.5 0 0 1 1 0V5h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1zm0 3v-.5a.5.5 0 0 1 1 0V8h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1zm0 3v-.5a.5.5 0 0 1 1 0v.5h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1z\"},\"child\":[]}]})(props);\n};\nexport function BsJournals (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5 0h8a2 2 0 0 1 2 2v10a2 2 0 0 1-2 2 2 2 0 0 1-2 2H3a2 2 0 0 1-2-2h1a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V4a1 1 0 0 0-1-1H3a1 1 0 0 0-1 1H1a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v9a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H5a1 1 0 0 0-1 1H3a2 2 0 0 1 2-2\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M1 6v-.5a.5.5 0 0 1 1 0V6h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1zm0 3v-.5a.5.5 0 0 1 1 0V9h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1zm0 2.5v.5H.5a.5.5 0 0 0 0 1h2a.5.5 0 0 0 0-1H2v-.5a.5.5 0 0 0-1 0\"},\"child\":[]}]})(props);\n};\nexport function BsJoystick (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M10 2a2 2 0 0 1-1.5 1.937v5.087c.863.083 1.5.377 1.5.726 0 .414-.895.75-2 .75s-2-.336-2-.75c0-.35.637-.643 1.5-.726V3.937A2 2 0 1 1 10 2\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M0 9.665v1.717a1 1 0 0 0 .553.894l6.553 3.277a2 2 0 0 0 1.788 0l6.553-3.277a1 1 0 0 0 .553-.894V9.665c0-.1-.06-.19-.152-.23L9.5 6.715v.993l5.227 2.178a.125.125 0 0 1 .001.23l-5.94 2.546a2 2 0 0 1-1.576 0l-5.94-2.546a.125.125 0 0 1 .001-.23L6.5 7.708l-.013-.988L.152 9.435a.25.25 0 0 0-.152.23\"},\"child\":[]}]})(props);\n};\nexport function BsJustifyLeft (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M2 12.5a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5m0-3a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5m0-3a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5m0-3a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsJustifyRight (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M6 12.5a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5m-4-3a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5m0-3a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5m0-3a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsJustify (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M2 12.5a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5m0-3a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5m0-3a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5m0-3a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsKanbanFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2.5 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h11a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm5 2h1a1 1 0 0 1 1 1v3a1 1 0 0 1-1 1h-1a1 1 0 0 1-1-1V3a1 1 0 0 1 1-1m-5 1a1 1 0 0 1 1-1h1a1 1 0 0 1 1 1v7a1 1 0 0 1-1 1h-1a1 1 0 0 1-1-1zm9-1h1a1 1 0 0 1 1 1v10a1 1 0 0 1-1 1h-1a1 1 0 0 1-1-1V3a1 1 0 0 1 1-1\"},\"child\":[]}]})(props);\n};\nexport function BsKanban (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M13.5 1a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1h-11a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1zm-11-1a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h11a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M6.5 3a1 1 0 0 1 1-1h1a1 1 0 0 1 1 1v3a1 1 0 0 1-1 1h-1a1 1 0 0 1-1-1zm-4 0a1 1 0 0 1 1-1h1a1 1 0 0 1 1 1v7a1 1 0 0 1-1 1h-1a1 1 0 0 1-1-1zm8 0a1 1 0 0 1 1-1h1a1 1 0 0 1 1 1v10a1 1 0 0 1-1 1h-1a1 1 0 0 1-1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsKeyFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3.5 11.5a3.5 3.5 0 1 1 3.163-5H14L15.5 8 14 9.5l-1-1-1 1-1-1-1 1-1-1-1 1H6.663a3.5 3.5 0 0 1-3.163 2M2.5 9a1 1 0 1 0 0-2 1 1 0 0 0 0 2\"},\"child\":[]}]})(props);\n};\nexport function BsKey (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 8a4 4 0 0 1 7.465-2H14a.5.5 0 0 1 .354.146l1.5 1.5a.5.5 0 0 1 0 .708l-1.5 1.5a.5.5 0 0 1-.708 0L13 9.207l-.646.647a.5.5 0 0 1-.708 0L11 9.207l-.646.647a.5.5 0 0 1-.708 0L9 9.207l-.646.647A.5.5 0 0 1 8 10h-.535A4 4 0 0 1 0 8m4-3a3 3 0 1 0 2.712 4.285A.5.5 0 0 1 7.163 9h.63l.853-.854a.5.5 0 0 1 .708 0l.646.647.646-.647a.5.5 0 0 1 .708 0l.646.647.646-.647a.5.5 0 0 1 .708 0l.646.647.793-.793-1-1h-6.63a.5.5 0 0 1-.451-.285A3 3 0 0 0 4 5\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4 8a1 1 0 1 1-2 0 1 1 0 0 1 2 0\"},\"child\":[]}]})(props);\n};\nexport function BsKeyboardFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 6a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v5a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm13 .25v.5c0 .138.112.25.25.25h.5a.25.25 0 0 0 .25-.25v-.5a.25.25 0 0 0-.25-.25h-.5a.25.25 0 0 0-.25.25M2.25 8a.25.25 0 0 0-.25.25v.5c0 .138.112.25.25.25h.5A.25.25 0 0 0 3 8.75v-.5A.25.25 0 0 0 2.75 8zM4 8.25v.5c0 .138.112.25.25.25h.5A.25.25 0 0 0 5 8.75v-.5A.25.25 0 0 0 4.75 8h-.5a.25.25 0 0 0-.25.25M6.25 8a.25.25 0 0 0-.25.25v.5c0 .138.112.25.25.25h.5A.25.25 0 0 0 7 8.75v-.5A.25.25 0 0 0 6.75 8zM8 8.25v.5c0 .138.112.25.25.25h.5A.25.25 0 0 0 9 8.75v-.5A.25.25 0 0 0 8.75 8h-.5a.25.25 0 0 0-.25.25M13.25 8a.25.25 0 0 0-.25.25v.5c0 .138.112.25.25.25h.5a.25.25 0 0 0 .25-.25v-.5a.25.25 0 0 0-.25-.25zm0 2a.25.25 0 0 0-.25.25v.5c0 .138.112.25.25.25h.5a.25.25 0 0 0 .25-.25v-.5a.25.25 0 0 0-.25-.25zm-3-2a.25.25 0 0 0-.25.25v.5c0 .138.112.25.25.25h1.5a.25.25 0 0 0 .25-.25v-.5a.25.25 0 0 0-.25-.25zm.75 2.25v.5c0 .138.112.25.25.25h.5a.25.25 0 0 0 .25-.25v-.5a.25.25 0 0 0-.25-.25h-.5a.25.25 0 0 0-.25.25M11.25 6a.25.25 0 0 0-.25.25v.5c0 .138.112.25.25.25h.5a.25.25 0 0 0 .25-.25v-.5a.25.25 0 0 0-.25-.25zM9 6.25v.5c0 .138.112.25.25.25h.5a.25.25 0 0 0 .25-.25v-.5A.25.25 0 0 0 9.75 6h-.5a.25.25 0 0 0-.25.25M7.25 6a.25.25 0 0 0-.25.25v.5c0 .138.112.25.25.25h.5A.25.25 0 0 0 8 6.75v-.5A.25.25 0 0 0 7.75 6zM5 6.25v.5c0 .138.112.25.25.25h.5A.25.25 0 0 0 6 6.75v-.5A.25.25 0 0 0 5.75 6h-.5a.25.25 0 0 0-.25.25M2.25 6a.25.25 0 0 0-.25.25v.5c0 .138.112.25.25.25h1.5A.25.25 0 0 0 4 6.75v-.5A.25.25 0 0 0 3.75 6zM2 10.25v.5c0 .138.112.25.25.25h.5a.25.25 0 0 0 .25-.25v-.5a.25.25 0 0 0-.25-.25h-.5a.25.25 0 0 0-.25.25M4.25 10a.25.25 0 0 0-.25.25v.5c0 .138.112.25.25.25h5.5a.25.25 0 0 0 .25-.25v-.5a.25.25 0 0 0-.25-.25z\"},\"child\":[]}]})(props);\n};\nexport function BsKeyboard (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M14 5a1 1 0 0 1 1 1v5a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V6a1 1 0 0 1 1-1zM2 4a2 2 0 0 0-2 2v5a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M13 10.25a.25.25 0 0 1 .25-.25h.5a.25.25 0 0 1 .25.25v.5a.25.25 0 0 1-.25.25h-.5a.25.25 0 0 1-.25-.25zm0-2a.25.25 0 0 1 .25-.25h.5a.25.25 0 0 1 .25.25v.5a.25.25 0 0 1-.25.25h-.5a.25.25 0 0 1-.25-.25zm-5 0A.25.25 0 0 1 8.25 8h.5a.25.25 0 0 1 .25.25v.5a.25.25 0 0 1-.25.25h-.5A.25.25 0 0 1 8 8.75zm2 0a.25.25 0 0 1 .25-.25h1.5a.25.25 0 0 1 .25.25v.5a.25.25 0 0 1-.25.25h-1.5a.25.25 0 0 1-.25-.25zm1 2a.25.25 0 0 1 .25-.25h.5a.25.25 0 0 1 .25.25v.5a.25.25 0 0 1-.25.25h-.5a.25.25 0 0 1-.25-.25zm-5-2A.25.25 0 0 1 6.25 8h.5a.25.25 0 0 1 .25.25v.5a.25.25 0 0 1-.25.25h-.5A.25.25 0 0 1 6 8.75zm-2 0A.25.25 0 0 1 4.25 8h.5a.25.25 0 0 1 .25.25v.5a.25.25 0 0 1-.25.25h-.5A.25.25 0 0 1 4 8.75zm-2 0A.25.25 0 0 1 2.25 8h.5a.25.25 0 0 1 .25.25v.5a.25.25 0 0 1-.25.25h-.5A.25.25 0 0 1 2 8.75zm11-2a.25.25 0 0 1 .25-.25h.5a.25.25 0 0 1 .25.25v.5a.25.25 0 0 1-.25.25h-.5a.25.25 0 0 1-.25-.25zm-2 0a.25.25 0 0 1 .25-.25h.5a.25.25 0 0 1 .25.25v.5a.25.25 0 0 1-.25.25h-.5a.25.25 0 0 1-.25-.25zm-2 0A.25.25 0 0 1 9.25 6h.5a.25.25 0 0 1 .25.25v.5a.25.25 0 0 1-.25.25h-.5A.25.25 0 0 1 9 6.75zm-2 0A.25.25 0 0 1 7.25 6h.5a.25.25 0 0 1 .25.25v.5a.25.25 0 0 1-.25.25h-.5A.25.25 0 0 1 7 6.75zm-2 0A.25.25 0 0 1 5.25 6h.5a.25.25 0 0 1 .25.25v.5a.25.25 0 0 1-.25.25h-.5A.25.25 0 0 1 5 6.75zm-3 0A.25.25 0 0 1 2.25 6h1.5a.25.25 0 0 1 .25.25v.5a.25.25 0 0 1-.25.25h-1.5A.25.25 0 0 1 2 6.75zm0 4a.25.25 0 0 1 .25-.25h.5a.25.25 0 0 1 .25.25v.5a.25.25 0 0 1-.25.25h-.5a.25.25 0 0 1-.25-.25zm2 0a.25.25 0 0 1 .25-.25h5.5a.25.25 0 0 1 .25.25v.5a.25.25 0 0 1-.25.25h-5.5a.25.25 0 0 1-.25-.25z\"},\"child\":[]}]})(props);\n};\nexport function BsLadder (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4.5 1a.5.5 0 0 1 .5.5V2h6v-.5a.5.5 0 0 1 1 0v14a.5.5 0 0 1-1 0V15H5v.5a.5.5 0 0 1-1 0v-14a.5.5 0 0 1 .5-.5M5 14h6v-2H5zm0-3h6V9H5zm0-3h6V6H5zm0-3h6V3H5z\"},\"child\":[]}]})(props);\n};\nexport function BsLampFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M5.04.303A.5.5 0 0 1 5.5 0h5c.2 0 .38.12.46.303l3 7a.5.5 0 0 1-.363.687h-.002q-.225.044-.45.081a33 33 0 0 1-4.645.425V13.5a.5.5 0 1 1-1 0V8.495a33 33 0 0 1-4.645-.425q-.225-.036-.45-.08h-.003a.5.5 0 0 1-.362-.688l3-7Z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M6.493 12.574a.5.5 0 0 1-.411.575c-.712.118-1.28.295-1.655.493a1.3 1.3 0 0 0-.37.265.3.3 0 0 0-.052.075l-.001.004-.004.01V14l.002.008.016.033a.6.6 0 0 0 .145.15c.165.13.435.27.813.395.751.25 1.82.414 3.024.414s2.273-.163 3.024-.414c.378-.126.648-.265.813-.395a.6.6 0 0 0 .146-.15l.015-.033L12 14v-.004a.3.3 0 0 0-.057-.09 1.3 1.3 0 0 0-.37-.264c-.376-.198-.943-.375-1.655-.493a.5.5 0 1 1 .164-.986c.77.127 1.452.328 1.957.594C12.5 13 13 13.4 13 14c0 .426-.26.752-.544.977-.29.228-.68.413-1.116.558-.878.293-2.059.465-3.34.465s-2.462-.172-3.34-.465c-.436-.145-.826-.33-1.116-.558C3.26 14.752 3 14.426 3 14c0-.599.5-1 .961-1.243.505-.266 1.187-.467 1.957-.594a.5.5 0 0 1 .575.411\"},\"child\":[]}]})(props);\n};\nexport function BsLamp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M5.04.303A.5.5 0 0 1 5.5 0h5c.2 0 .38.12.46.303l3 7a.5.5 0 0 1-.363.687h-.002q-.225.044-.45.081a33 33 0 0 1-4.645.425V13.5a.5.5 0 1 1-1 0V8.495a33 33 0 0 1-4.645-.425q-.225-.036-.45-.08h-.003a.5.5 0 0 1-.362-.688l3-7ZM3.21 7.116A31 31 0 0 0 8 7.5a31 31 0 0 0 4.791-.384L10.171 1H5.83z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M6.493 12.574a.5.5 0 0 1-.411.575c-.712.118-1.28.295-1.655.493a1.3 1.3 0 0 0-.37.265.3.3 0 0 0-.052.075l-.001.004-.004.01V14l.002.008.016.033a.6.6 0 0 0 .145.15c.165.13.435.27.813.395.751.25 1.82.414 3.024.414s2.273-.163 3.024-.414c.378-.126.648-.265.813-.395a.6.6 0 0 0 .146-.15l.015-.033L12 14v-.004a.3.3 0 0 0-.057-.09 1.3 1.3 0 0 0-.37-.264c-.376-.198-.943-.375-1.655-.493a.5.5 0 1 1 .164-.986c.77.127 1.452.328 1.957.594C12.5 13 13 13.4 13 14c0 .426-.26.752-.544.977-.29.228-.68.413-1.116.558-.878.293-2.059.465-3.34.465s-2.462-.172-3.34-.465c-.436-.145-.826-.33-1.116-.558C3.26 14.752 3 14.426 3 14c0-.599.5-1 .961-1.243.505-.266 1.187-.467 1.957-.594a.5.5 0 0 1 .575.411\"},\"child\":[]}]})(props);\n};\nexport function BsLaptopFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2.5 2A1.5 1.5 0 0 0 1 3.5V12h14V3.5A1.5 1.5 0 0 0 13.5 2zM0 12.5h16a1.5 1.5 0 0 1-1.5 1.5h-13A1.5 1.5 0 0 1 0 12.5\"},\"child\":[]}]})(props);\n};\nexport function BsLaptop (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M13.5 3a.5.5 0 0 1 .5.5V11H2V3.5a.5.5 0 0 1 .5-.5zm-11-1A1.5 1.5 0 0 0 1 3.5V12h14V3.5A1.5 1.5 0 0 0 13.5 2zM0 12.5h16a1.5 1.5 0 0 1-1.5 1.5h-13A1.5 1.5 0 0 1 0 12.5\"},\"child\":[]}]})(props);\n};\nexport function BsLayerBackward (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.354 15.854a.5.5 0 0 1-.708 0l-3-3a.5.5 0 0 1 0-.708l1-1a.5.5 0 0 1 .708 0l.646.647V4H1a1 1 0 0 1-1-1V1a1 1 0 0 1 1-1h14a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1H9v7.793l.646-.647a.5.5 0 0 1 .708 0l1 1a.5.5 0 0 1 0 .708z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M1 9a1 1 0 0 1-1-1V6a1 1 0 0 1 1-1h4.5a.5.5 0 0 1 0 1H1v2h4.5a.5.5 0 0 1 0 1zm9.5 0a.5.5 0 0 1 0-1H15V6h-4.5a.5.5 0 0 1 0-1H15a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1z\"},\"child\":[]}]})(props);\n};\nexport function BsLayerForward (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.354.146a.5.5 0 0 0-.708 0l-3 3a.5.5 0 0 0 0 .708l1 1a.5.5 0 0 0 .708 0L7 4.207V12H1a1 1 0 0 0-1 1v2a1 1 0 0 0 1 1h14a1 1 0 0 0 1-1v-2a1 1 0 0 0-1-1H9V4.207l.646.647a.5.5 0 0 0 .708 0l1-1a.5.5 0 0 0 0-.708z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M1 7a1 1 0 0 0-1 1v2a1 1 0 0 0 1 1h4.5a.5.5 0 0 0 0-1H1V8h4.5a.5.5 0 0 0 0-1zm9.5 0a.5.5 0 0 0 0 1H15v2h-4.5a.5.5 0 0 0 0 1H15a1 1 0 0 0 1-1V8a1 1 0 0 0-1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsLayersFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.765 1.559a.5.5 0 0 1 .47 0l7.5 4a.5.5 0 0 1 0 .882l-7.5 4a.5.5 0 0 1-.47 0l-7.5-4a.5.5 0 0 1 0-.882z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m2.125 8.567-1.86.992a.5.5 0 0 0 0 .882l7.5 4a.5.5 0 0 0 .47 0l7.5-4a.5.5 0 0 0 0-.882l-1.86-.992-5.17 2.756a1.5 1.5 0 0 1-1.41 0z\"},\"child\":[]}]})(props);\n};\nexport function BsLayersHalf (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.235 1.559a.5.5 0 0 0-.47 0l-7.5 4a.5.5 0 0 0 0 .882L3.188 8 .264 9.559a.5.5 0 0 0 0 .882l7.5 4a.5.5 0 0 0 .47 0l7.5-4a.5.5 0 0 0 0-.882L12.813 8l2.922-1.559a.5.5 0 0 0 0-.882zM8 9.433 1.562 6 8 2.567 14.438 6z\"},\"child\":[]}]})(props);\n};\nexport function BsLayers (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.235 1.559a.5.5 0 0 0-.47 0l-7.5 4a.5.5 0 0 0 0 .882L3.188 8 .264 9.559a.5.5 0 0 0 0 .882l7.5 4a.5.5 0 0 0 .47 0l7.5-4a.5.5 0 0 0 0-.882L12.813 8l2.922-1.559a.5.5 0 0 0 0-.882zm3.515 7.008L14.438 10 8 13.433 1.562 10 4.25 8.567l3.515 1.874a.5.5 0 0 0 .47 0zM8 9.433 1.562 6 8 2.567 14.438 6z\"},\"child\":[]}]})(props);\n};\nexport function BsLayoutSidebarInsetReverse (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 2a1 1 0 0 0-1 1v10a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V3a1 1 0 0 0-1-1zm12-1a2 2 0 0 1 2 2v10a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M13 4a1 1 0 0 0-1-1h-2a1 1 0 0 0-1 1v8a1 1 0 0 0 1 1h2a1 1 0 0 0 1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsLayoutSidebarInset (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M14 2a1 1 0 0 1 1 1v10a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V3a1 1 0 0 1 1-1zM2 1a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V3a2 2 0 0 0-2-2z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3 4a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v8a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsLayoutSidebarReverse (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 3a2 2 0 0 0-2-2H2a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2zm-5-1v12H2a1 1 0 0 1-1-1V3a1 1 0 0 1 1-1zm1 0h2a1 1 0 0 1 1 1v10a1 1 0 0 1-1 1h-2z\"},\"child\":[]}]})(props);\n};\nexport function BsLayoutSidebar (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 3a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v10a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm5-1v12h9a1 1 0 0 0 1-1V3a1 1 0 0 0-1-1zM4 2H2a1 1 0 0 0-1 1v10a1 1 0 0 0 1 1h2z\"},\"child\":[]}]})(props);\n};\nexport function BsLayoutSplit (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 3a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v10a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm8.5-1v12H14a1 1 0 0 0 1-1V3a1 1 0 0 0-1-1zm-1 0H2a1 1 0 0 0-1 1v10a1 1 0 0 0 1 1h5.5z\"},\"child\":[]}]})(props);\n};\nexport function BsLayoutTextSidebarReverse (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12.5 3a.5.5 0 0 1 0 1h-5a.5.5 0 0 1 0-1zm0 3a.5.5 0 0 1 0 1h-5a.5.5 0 0 1 0-1zm.5 3.5a.5.5 0 0 0-.5-.5h-5a.5.5 0 0 0 0 1h5a.5.5 0 0 0 .5-.5m-.5 2.5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1 0-1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M16 2a2 2 0 0 0-2-2H2a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2zM4 1v14H2a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1zm1 0h9a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H5z\"},\"child\":[]}]})(props);\n};\nexport function BsLayoutTextSidebar (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3.5 3a.5.5 0 0 0 0 1h5a.5.5 0 0 0 0-1zm0 3a.5.5 0 0 0 0 1h5a.5.5 0 0 0 0-1zM3 9.5a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5m.5 2.5a.5.5 0 0 0 0 1h5a.5.5 0 0 0 0-1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M0 2a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm12-1v14h2a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1zm-1 0H2a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h9z\"},\"child\":[]}]})(props);\n};\nexport function BsLayoutTextWindowReverse (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M13 6.5a.5.5 0 0 0-.5-.5h-5a.5.5 0 0 0 0 1h5a.5.5 0 0 0 .5-.5m0 3a.5.5 0 0 0-.5-.5h-5a.5.5 0 0 0 0 1h5a.5.5 0 0 0 .5-.5m-.5 2.5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1 0-1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M14 0a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2zM2 1a1 1 0 0 0-1 1v1h14V2a1 1 0 0 0-1-1zM1 4v10a1 1 0 0 0 1 1h2V4zm4 0v11h9a1 1 0 0 0 1-1V4z\"},\"child\":[]}]})(props);\n};\nexport function BsLayoutTextWindow (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3 6.5a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5m0 3a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5m.5 2.5a.5.5 0 0 0 0 1h5a.5.5 0 0 0 0-1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm12 1a1 1 0 0 1 1 1v1H1V2a1 1 0 0 1 1-1zm1 3v10a1 1 0 0 1-1 1h-2V4zm-4 0v11H2a1 1 0 0 1-1-1V4z\"},\"child\":[]}]})(props);\n};\nexport function BsLayoutThreeColumns (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 1.5A1.5 1.5 0 0 1 1.5 0h13A1.5 1.5 0 0 1 16 1.5v13a1.5 1.5 0 0 1-1.5 1.5h-13A1.5 1.5 0 0 1 0 14.5zM1.5 1a.5.5 0 0 0-.5.5v13a.5.5 0 0 0 .5.5H5V1zM10 15V1H6v14zm1 0h3.5a.5.5 0 0 0 .5-.5v-13a.5.5 0 0 0-.5-.5H11z\"},\"child\":[]}]})(props);\n};\nexport function BsLayoutWtf (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5 1v8H1V1zM1 0a1 1 0 0 0-1 1v8a1 1 0 0 0 1 1h4a1 1 0 0 0 1-1V1a1 1 0 0 0-1-1zm13 2v5H9V2zM9 1a1 1 0 0 0-1 1v5a1 1 0 0 0 1 1h5a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1zM5 13v2H3v-2zm-2-1a1 1 0 0 0-1 1v2a1 1 0 0 0 1 1h2a1 1 0 0 0 1-1v-2a1 1 0 0 0-1-1zm12-1v2H9v-2zm-6-1a1 1 0 0 0-1 1v2a1 1 0 0 0 1 1h6a1 1 0 0 0 1-1v-2a1 1 0 0 0-1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsLifePreserver (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 16A8 8 0 1 0 8 0a8 8 0 0 0 0 16m6.43-5.228a7.03 7.03 0 0 1-3.658 3.658l-1.115-2.788a4 4 0 0 0 1.985-1.985zM5.228 14.43a7.03 7.03 0 0 1-3.658-3.658l2.788-1.115a4 4 0 0 0 1.985 1.985zm9.202-9.202-2.788 1.115a4 4 0 0 0-1.985-1.985l1.115-2.788a7.03 7.03 0 0 1 3.658 3.658m-8.087-.87a4 4 0 0 0-1.985 1.985L1.57 5.228A7.03 7.03 0 0 1 5.228 1.57zM8 11a3 3 0 1 1 0-6 3 3 0 0 1 0 6\"},\"child\":[]}]})(props);\n};\nexport function BsLightbulbFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 6a6 6 0 1 1 10.174 4.31c-.203.196-.359.4-.453.619l-.762 1.769A.5.5 0 0 1 10.5 13h-5a.5.5 0 0 1-.46-.302l-.761-1.77a2 2 0 0 0-.453-.618A5.98 5.98 0 0 1 2 6m3 8.5a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1l-.224.447a1 1 0 0 1-.894.553H6.618a1 1 0 0 1-.894-.553L5.5 15a.5.5 0 0 1-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsLightbulbOffFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 6c0-.572.08-1.125.23-1.65l8.558 8.559A.5.5 0 0 1 10.5 13h-5a.5.5 0 0 1-.46-.302l-.761-1.77a2 2 0 0 0-.453-.618A5.98 5.98 0 0 1 2 6m10.303 4.181L3.818 1.697a6 6 0 0 1 8.484 8.484zM5 14.5a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1l-.224.447a1 1 0 0 1-.894.553H6.618a1 1 0 0 1-.894-.553L5.5 15a.5.5 0 0 1-.5-.5M2.354 1.646a.5.5 0 1 0-.708.708l12 12a.5.5 0 0 0 .708-.708z\"},\"child\":[]}]})(props);\n};\nexport function BsLightbulbOff (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M2.23 4.35A6 6 0 0 0 2 6c0 1.691.7 3.22 1.826 4.31.203.196.359.4.453.619l.762 1.769A.5.5 0 0 0 5.5 13a.5.5 0 0 0 0 1 .5.5 0 0 0 0 1l.224.447a1 1 0 0 0 .894.553h2.764a1 1 0 0 0 .894-.553L10.5 15a.5.5 0 0 0 0-1 .5.5 0 0 0 0-1 .5.5 0 0 0 .288-.091L9.878 12H5.83l-.632-1.467a3 3 0 0 0-.676-.941 4.98 4.98 0 0 1-1.455-4.405zm1.588-2.653.708.707a5 5 0 0 1 7.07 7.07l.707.707a6 6 0 0 0-8.484-8.484zm-2.172-.051a.5.5 0 0 1 .708 0l12 12a.5.5 0 0 1-.708.708l-12-12a.5.5 0 0 1 0-.708\"},\"child\":[]}]})(props);\n};\nexport function BsLightbulb (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 6a6 6 0 1 1 10.174 4.31c-.203.196-.359.4-.453.619l-.762 1.769A.5.5 0 0 1 10.5 13a.5.5 0 0 1 0 1 .5.5 0 0 1 0 1l-.224.447a1 1 0 0 1-.894.553H6.618a1 1 0 0 1-.894-.553L5.5 15a.5.5 0 0 1 0-1 .5.5 0 0 1 0-1 .5.5 0 0 1-.46-.302l-.761-1.77a2 2 0 0 0-.453-.618A5.98 5.98 0 0 1 2 6m6-5a5 5 0 0 0-3.479 8.592c.263.254.514.564.676.941L5.83 12h4.342l.632-1.467c.162-.377.413-.687.676-.941A5 5 0 0 0 8 1\"},\"child\":[]}]})(props);\n};\nexport function BsLightningChargeFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M11.251.068a.5.5 0 0 1 .227.58L9.677 6.5H13a.5.5 0 0 1 .364.843l-8 8.5a.5.5 0 0 1-.842-.49L6.323 9.5H3a.5.5 0 0 1-.364-.843l8-8.5a.5.5 0 0 1 .615-.09z\"},\"child\":[]}]})(props);\n};\nexport function BsLightningCharge (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M11.251.068a.5.5 0 0 1 .227.58L9.677 6.5H13a.5.5 0 0 1 .364.843l-8 8.5a.5.5 0 0 1-.842-.49L6.323 9.5H3a.5.5 0 0 1-.364-.843l8-8.5a.5.5 0 0 1 .615-.09zM4.157 8.5H7a.5.5 0 0 1 .478.647L6.11 13.59l5.732-6.09H9a.5.5 0 0 1-.478-.647L9.89 2.41z\"},\"child\":[]}]})(props);\n};\nexport function BsLightningFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5.52.359A.5.5 0 0 1 6 0h4a.5.5 0 0 1 .474.658L8.694 6H12.5a.5.5 0 0 1 .395.807l-7 9a.5.5 0 0 1-.873-.454L6.823 9.5H3.5a.5.5 0 0 1-.48-.641z\"},\"child\":[]}]})(props);\n};\nexport function BsLightning (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5.52.359A.5.5 0 0 1 6 0h4a.5.5 0 0 1 .474.658L8.694 6H12.5a.5.5 0 0 1 .395.807l-7 9a.5.5 0 0 1-.873-.454L6.823 9.5H3.5a.5.5 0 0 1-.48-.641zM6.374 1 4.168 8.5H7.5a.5.5 0 0 1 .478.647L6.78 13.04 11.478 7H8a.5.5 0 0 1-.474-.658L9.306 1z\"},\"child\":[]}]})(props);\n};\nexport function BsLine (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 0c4.411 0 8 2.912 8 6.492 0 1.433-.555 2.723-1.715 3.994-1.678 1.932-5.431 4.285-6.285 4.645-.83.35-.734-.197-.696-.413l.003-.018.114-.685c.027-.204.055-.521-.026-.723-.09-.223-.444-.339-.704-.395C2.846 12.39 0 9.701 0 6.492 0 2.912 3.59 0 8 0M5.022 7.686H3.497V4.918a.156.156 0 0 0-.155-.156H2.78a.156.156 0 0 0-.156.156v3.486c0 .041.017.08.044.107v.001l.002.002.002.002a.15.15 0 0 0 .108.043h2.242c.086 0 .155-.07.155-.156v-.56a.156.156 0 0 0-.155-.157m.791-2.924a.156.156 0 0 0-.156.156v3.486c0 .086.07.155.156.155h.562c.086 0 .155-.07.155-.155V4.918a.156.156 0 0 0-.155-.156zm3.863 0a.156.156 0 0 0-.156.156v2.07L7.923 4.832l-.013-.015v-.001l-.01-.01-.003-.003-.011-.009h-.001L7.88 4.79l-.003-.002-.005-.003-.008-.005h-.002l-.003-.002-.01-.004-.004-.002-.01-.003h-.002l-.003-.001-.009-.002h-.006l-.003-.001h-.004l-.002-.001h-.574a.156.156 0 0 0-.156.155v3.486c0 .086.07.155.156.155h.56c.087 0 .157-.07.157-.155v-2.07l1.6 2.16a.2.2 0 0 0 .039.038l.001.001.01.006.004.002.008.004.007.003.005.002.01.003h.003a.2.2 0 0 0 .04.006h.56c.087 0 .157-.07.157-.155V4.918a.156.156 0 0 0-.156-.156zm3.815.717v-.56a.156.156 0 0 0-.155-.157h-2.242a.16.16 0 0 0-.108.044h-.001l-.001.002-.002.003a.16.16 0 0 0-.044.107v3.486c0 .041.017.08.044.107l.002.003.002.002a.16.16 0 0 0 .108.043h2.242c.086 0 .155-.07.155-.156v-.56a.156.156 0 0 0-.155-.157H11.81v-.589h1.525c.086 0 .155-.07.155-.156v-.56a.156.156 0 0 0-.155-.157H11.81v-.589h1.525c.086 0 .155-.07.155-.156Z\"},\"child\":[]}]})(props);\n};\nexport function BsLink45Deg (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4.715 6.542 3.343 7.914a3 3 0 1 0 4.243 4.243l1.828-1.829A3 3 0 0 0 8.586 5.5L8 6.086a1 1 0 0 0-.154.199 2 2 0 0 1 .861 3.337L6.88 11.45a2 2 0 1 1-2.83-2.83l.793-.792a4 4 0 0 1-.128-1.287z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M6.586 4.672A3 3 0 0 0 7.414 9.5l.775-.776a2 2 0 0 1-.896-3.346L9.12 3.55a2 2 0 1 1 2.83 2.83l-.793.792c.112.42.155.855.128 1.287l1.372-1.372a3 3 0 1 0-4.243-4.243z\"},\"child\":[]}]})(props);\n};\nexport function BsLink (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.354 5.5H4a3 3 0 0 0 0 6h3a3 3 0 0 0 2.83-4H9q-.13 0-.25.031A2 2 0 0 1 7 10.5H4a2 2 0 1 1 0-4h1.535c.218-.376.495-.714.82-1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M9 5.5a3 3 0 0 0-2.83 4h1.098A2 2 0 0 1 9 6.5h3a2 2 0 1 1 0 4h-1.535a4 4 0 0 1-.82 1H12a3 3 0 1 0 0-6z\"},\"child\":[]}]})(props);\n};\nexport function BsLinkedin (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 1.146C0 .513.526 0 1.175 0h13.65C15.474 0 16 .513 16 1.146v13.708c0 .633-.526 1.146-1.175 1.146H1.175C.526 16 0 15.487 0 14.854zm4.943 12.248V6.169H2.542v7.225zm-1.2-8.212c.837 0 1.358-.554 1.358-1.248-.015-.709-.52-1.248-1.342-1.248S2.4 3.226 2.4 3.934c0 .694.521 1.248 1.327 1.248zm4.908 8.212V9.359c0-.216.016-.432.08-.586.173-.431.568-.878 1.232-.878.869 0 1.216.662 1.216 1.634v3.865h2.401V9.25c0-2.22-1.184-3.252-2.764-3.252-1.274 0-1.845.7-2.165 1.193v.025h-.016l.016-.025V6.169h-2.4c.03.678 0 7.225 0 7.225z\"},\"child\":[]}]})(props);\n};\nexport function BsListCheck (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M5 11.5a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5m0-4a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5m0-4a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5M3.854 2.146a.5.5 0 0 1 0 .708l-1.5 1.5a.5.5 0 0 1-.708 0l-.5-.5a.5.5 0 1 1 .708-.708L2 3.293l1.146-1.147a.5.5 0 0 1 .708 0m0 4a.5.5 0 0 1 0 .708l-1.5 1.5a.5.5 0 0 1-.708 0l-.5-.5a.5.5 0 1 1 .708-.708L2 7.293l1.146-1.147a.5.5 0 0 1 .708 0m0 4a.5.5 0 0 1 0 .708l-1.5 1.5a.5.5 0 0 1-.708 0l-.5-.5a.5.5 0 0 1 .708-.708l.146.147 1.146-1.147a.5.5 0 0 1 .708 0\"},\"child\":[]}]})(props);\n};\nexport function BsListColumnsReverse (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M0 .5A.5.5 0 0 1 .5 0h2a.5.5 0 0 1 0 1h-2A.5.5 0 0 1 0 .5m4 0a.5.5 0 0 1 .5-.5h10a.5.5 0 0 1 0 1h-10A.5.5 0 0 1 4 .5m-4 2A.5.5 0 0 1 .5 2h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1-.5-.5m4 0a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5m-4 2A.5.5 0 0 1 .5 4h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1-.5-.5m4 0a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5m-4 2A.5.5 0 0 1 .5 6h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1-.5-.5m4 0a.5.5 0 0 1 .5-.5h8a.5.5 0 0 1 0 1h-8a.5.5 0 0 1-.5-.5m-4 2A.5.5 0 0 1 .5 8h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1-.5-.5m4 0a.5.5 0 0 1 .5-.5h8a.5.5 0 0 1 0 1h-8a.5.5 0 0 1-.5-.5m-4 2a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1-.5-.5m4 0a.5.5 0 0 1 .5-.5h10a.5.5 0 0 1 0 1h-10a.5.5 0 0 1-.5-.5m-4 2a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1-.5-.5m4 0a.5.5 0 0 1 .5-.5h6a.5.5 0 0 1 0 1h-6a.5.5 0 0 1-.5-.5m-4 2a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1-.5-.5m4 0a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsListColumns (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M0 .5A.5.5 0 0 1 .5 0h9a.5.5 0 0 1 0 1h-9A.5.5 0 0 1 0 .5m13 0a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1-.5-.5m-13 2A.5.5 0 0 1 .5 2h8a.5.5 0 0 1 0 1h-8a.5.5 0 0 1-.5-.5m13 0a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1-.5-.5m-13 2A.5.5 0 0 1 .5 4h10a.5.5 0 0 1 0 1H.5a.5.5 0 0 1-.5-.5m13 0a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1-.5-.5m-13 2A.5.5 0 0 1 .5 6h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5m13 0a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1-.5-.5m-13 2A.5.5 0 0 1 .5 8h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5m13 0a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1-.5-.5m-13 2a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5m13 0a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1-.5-.5m-13 2a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5m13 0a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1-.5-.5m-13 2a.5.5 0 0 1 .5-.5h10a.5.5 0 0 1 0 1H.5a.5.5 0 0 1-.5-.5m13 0a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsListNested (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M4.5 11.5A.5.5 0 0 1 5 11h10a.5.5 0 0 1 0 1H5a.5.5 0 0 1-.5-.5m-2-4A.5.5 0 0 1 3 7h10a.5.5 0 0 1 0 1H3a.5.5 0 0 1-.5-.5m-2-4A.5.5 0 0 1 1 3h10a.5.5 0 0 1 0 1H1a.5.5 0 0 1-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsListOl (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M5 11.5a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5m0-4a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5m0-4a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M1.713 11.865v-.474H2c.217 0 .363-.137.363-.317 0-.185-.158-.31-.361-.31-.223 0-.367.152-.373.31h-.59c.016-.467.373-.787.986-.787.588-.002.954.291.957.703a.595.595 0 0 1-.492.594v.033a.615.615 0 0 1 .569.631c.003.533-.502.8-1.051.8-.656 0-1-.37-1.008-.794h.582c.008.178.186.306.422.309.254 0 .424-.145.422-.35-.002-.195-.155-.348-.414-.348h-.3zm-.004-4.699h-.604v-.035c0-.408.295-.844.958-.844.583 0 .96.326.96.756 0 .389-.257.617-.476.848l-.537.572v.03h1.054V9H1.143v-.395l.957-.99c.138-.142.293-.304.293-.508 0-.18-.147-.32-.342-.32a.33.33 0 0 0-.342.338zM2.564 5h-.635V2.924h-.031l-.598.42v-.567l.629-.443h.635z\"},\"child\":[]}]})(props);\n};\nexport function BsListStars (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M5 11.5a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5m0-4a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5m0-4a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2.242 2.194a.27.27 0 0 1 .516 0l.162.53c.035.115.14.194.258.194h.551c.259 0 .37.333.164.493l-.468.363a.28.28 0 0 0-.094.3l.173.569c.078.256-.213.462-.423.3l-.417-.324a.27.27 0 0 0-.328 0l-.417.323c-.21.163-.5-.043-.423-.299l.173-.57a.28.28 0 0 0-.094-.299l-.468-.363c-.206-.16-.095-.493.164-.493h.55a.27.27 0 0 0 .259-.194zm0 4a.27.27 0 0 1 .516 0l.162.53c.035.115.14.194.258.194h.551c.259 0 .37.333.164.493l-.468.363a.28.28 0 0 0-.094.3l.173.569c.078.255-.213.462-.423.3l-.417-.324a.27.27 0 0 0-.328 0l-.417.323c-.21.163-.5-.043-.423-.299l.173-.57a.28.28 0 0 0-.094-.299l-.468-.363c-.206-.16-.095-.493.164-.493h.55a.27.27 0 0 0 .259-.194zm0 4a.27.27 0 0 1 .516 0l.162.53c.035.115.14.194.258.194h.551c.259 0 .37.333.164.493l-.468.363a.28.28 0 0 0-.094.3l.173.569c.078.255-.213.462-.423.3l-.417-.324a.27.27 0 0 0-.328 0l-.417.323c-.21.163-.5-.043-.423-.299l.173-.57a.28.28 0 0 0-.094-.299l-.468-.363c-.206-.16-.095-.493.164-.493h.55a.27.27 0 0 0 .259-.194z\"},\"child\":[]}]})(props);\n};\nexport function BsListTask (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M2 2.5a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5V3a.5.5 0 0 0-.5-.5zM3 3H2v1h1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M5 3.5a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5M5.5 7a.5.5 0 0 0 0 1h9a.5.5 0 0 0 0-1zm0 4a.5.5 0 0 0 0 1h9a.5.5 0 0 0 0-1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M1.5 7a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5H2a.5.5 0 0 1-.5-.5zM2 7h1v1H2zm0 3.5a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm1 .5H2v1h1z\"},\"child\":[]}]})(props);\n};\nexport function BsListUl (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M5 11.5a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5m0-4a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5m0-4a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5m-3 1a1 1 0 1 0 0-2 1 1 0 0 0 0 2m0 4a1 1 0 1 0 0-2 1 1 0 0 0 0 2m0 4a1 1 0 1 0 0-2 1 1 0 0 0 0 2\"},\"child\":[]}]})(props);\n};\nexport function BsList (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M2.5 12a.5.5 0 0 1 .5-.5h10a.5.5 0 0 1 0 1H3a.5.5 0 0 1-.5-.5m0-4a.5.5 0 0 1 .5-.5h10a.5.5 0 0 1 0 1H3a.5.5 0 0 1-.5-.5m0-4a.5.5 0 0 1 .5-.5h10a.5.5 0 0 1 0 1H3a.5.5 0 0 1-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsLockFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 1a2 2 0 0 1 2 2v4H6V3a2 2 0 0 1 2-2m3 6V3a3 3 0 0 0-6 0v4a2 2 0 0 0-2 2v5a2 2 0 0 0 2 2h6a2 2 0 0 0 2-2V9a2 2 0 0 0-2-2\"},\"child\":[]}]})(props);\n};\nexport function BsLock (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 1a2 2 0 0 1 2 2v4H6V3a2 2 0 0 1 2-2m3 6V3a3 3 0 0 0-6 0v4a2 2 0 0 0-2 2v5a2 2 0 0 0 2 2h6a2 2 0 0 0 2-2V9a2 2 0 0 0-2-2M5 8h6a1 1 0 0 1 1 1v5a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1V9a1 1 0 0 1 1-1\"},\"child\":[]}]})(props);\n};\nexport function BsLuggageFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 1.5a.5.5 0 0 1 .5-.5h3a.5.5 0 0 1 .5.5V5h.5A1.5 1.5 0 0 1 8 6.5V7H7v-.5a.5.5 0 0 0-.5-.5h-5a.5.5 0 0 0-.5.5v7a.5.5 0 0 0 .5.5H4v1H2.5v.25a.75.75 0 0 1-1.5 0v-.335A1.5 1.5 0 0 1 0 13.5v-7A1.5 1.5 0 0 1 1.5 5H2zM3 5h2V2H3z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2.5 7a.5.5 0 0 1 .5.5v5a.5.5 0 0 1-1 0v-5a.5.5 0 0 1 .5-.5m10 1v-.5A1.5 1.5 0 0 0 11 6h-1a1.5 1.5 0 0 0-1.5 1.5V8H8v8h5V8zM10 7h1a.5.5 0 0 1 .5.5V8h-2v-.5A.5.5 0 0 1 10 7M5 9.5A1.5 1.5 0 0 1 6.5 8H7v8h-.5A1.5 1.5 0 0 1 5 14.5zm9 6.5V8h.5A1.5 1.5 0 0 1 16 9.5v5a1.5 1.5 0 0 1-1.5 1.5z\"},\"child\":[]}]})(props);\n};\nexport function BsLuggage (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2.5 1a.5.5 0 0 0-.5.5V5h-.5A1.5 1.5 0 0 0 0 6.5v7a1.5 1.5 0 0 0 1 1.415v.335a.75.75 0 0 0 1.5 0V15H4v-1H1.5a.5.5 0 0 1-.5-.5v-7a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 .5.5V7h1v-.5A1.5 1.5 0 0 0 6.5 5H6V1.5a.5.5 0 0 0-.5-.5zM5 5H3V2h2z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3 7.5a.5.5 0 0 0-1 0v5a.5.5 0 0 0 1 0zM11 6a1.5 1.5 0 0 1 1.5 1.5V8h2A1.5 1.5 0 0 1 16 9.5v5a1.5 1.5 0 0 1-1.5 1.5h-8A1.5 1.5 0 0 1 5 14.5v-5A1.5 1.5 0 0 1 6.5 8h2v-.5A1.5 1.5 0 0 1 10 6zM9.5 7.5V8h2v-.5A.5.5 0 0 0 11 7h-1a.5.5 0 0 0-.5.5M6 9.5v5a.5.5 0 0 0 .5.5H7V9h-.5a.5.5 0 0 0-.5.5m7 5.5V9H8v6zm1.5 0a.5.5 0 0 0 .5-.5v-5a.5.5 0 0 0-.5-.5H14v6z\"},\"child\":[]}]})(props);\n};\nexport function BsLungsFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 1a.5.5 0 0 1 .5.5v5.243L9 7.1V4.72C9 3.77 9.77 3 10.72 3c.524 0 1.023.27 1.443.592.431.332.847.773 1.216 1.229.736.908 1.347 1.946 1.58 2.48.176.405.393 1.16.556 2.011.165.857.283 1.857.24 2.759-.04.867-.232 1.79-.837 2.33-.67.6-1.622.556-2.741-.004l-1.795-.897A2.5 2.5 0 0 1 9 11.264V8.329l-1-.715-1 .715V7.214c-.1 0-.202.03-.29.093l-2.5 1.786a.5.5 0 1 0 .58.814L7 8.329v2.935A2.5 2.5 0 0 1 5.618 13.5l-1.795.897c-1.12.56-2.07.603-2.741.004-.605-.54-.798-1.463-.838-2.33-.042-.902.076-1.902.24-2.759.164-.852.38-1.606.558-2.012.232-.533.843-1.571 1.579-2.479.37-.456.785-.897 1.216-1.229C4.257 3.27 4.756 3 5.28 3 6.23 3 7 3.77 7 4.72V7.1l.5-.357V1.5A.5.5 0 0 1 8 1m3.21 8.907a.5.5 0 1 0 .58-.814l-2.5-1.786A.5.5 0 0 0 9 7.214V8.33z\"},\"child\":[]}]})(props);\n};\nexport function BsLungs (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.5 1.5a.5.5 0 1 0-1 0v5.243L7 7.1V4.72C7 3.77 6.23 3 5.28 3c-.524 0-1.023.27-1.443.592-.431.332-.847.773-1.216 1.229-.736.908-1.347 1.946-1.58 2.48-.176.405-.393 1.16-.556 2.011-.165.857-.283 1.857-.241 2.759.04.867.233 1.79.838 2.33.67.6 1.622.556 2.741-.004l1.795-.897A2.5 2.5 0 0 0 7 11.264V10.5a.5.5 0 0 0-1 0v.764a1.5 1.5 0 0 1-.83 1.342l-1.794.897c-.978.489-1.415.343-1.628.152-.28-.25-.467-.801-.505-1.63-.037-.795.068-1.71.224-2.525.157-.82.357-1.491.491-1.8.19-.438.75-1.4 1.44-2.25.342-.422.703-.799 1.049-1.065.358-.276.639-.385.833-.385a.72.72 0 0 1 .72.72v3.094l-1.79 1.28a.5.5 0 0 0 .58.813L8 7.614l3.21 2.293a.5.5 0 1 0 .58-.814L10 7.814V4.72a.72.72 0 0 1 .72-.72c.194 0 .475.11.833.385.346.266.706.643 1.05 1.066.688.85 1.248 1.811 1.439 2.249.134.309.334.98.491 1.8.156.814.26 1.73.224 2.525-.038.829-.224 1.38-.505 1.63-.213.19-.65.337-1.628-.152l-1.795-.897A1.5 1.5 0 0 1 10 11.264V10.5a.5.5 0 0 0-1 0v.764a2.5 2.5 0 0 0 1.382 2.236l1.795.897c1.12.56 2.07.603 2.741.004.605-.54.798-1.463.838-2.33.042-.902-.076-1.902-.24-2.759-.164-.852-.38-1.606-.558-2.012-.232-.533-.843-1.571-1.579-2.479-.37-.456-.785-.897-1.216-1.229C11.743 3.27 11.244 3 10.72 3 9.77 3 9 3.77 9 4.72V7.1l-.5-.357z\"},\"child\":[]}]})(props);\n};\nexport function BsMagic (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.5 2.672a.5.5 0 1 0 1 0V.843a.5.5 0 0 0-1 0zm4.5.035A.5.5 0 0 0 13.293 2L12 3.293a.5.5 0 1 0 .707.707zM7.293 4A.5.5 0 1 0 8 3.293L6.707 2A.5.5 0 0 0 6 2.707zm-.621 2.5a.5.5 0 1 0 0-1H4.843a.5.5 0 1 0 0 1zm8.485 0a.5.5 0 1 0 0-1h-1.829a.5.5 0 0 0 0 1zM13.293 10A.5.5 0 1 0 14 9.293L12.707 8a.5.5 0 1 0-.707.707zM9.5 11.157a.5.5 0 0 0 1 0V9.328a.5.5 0 0 0-1 0zm1.854-5.097a.5.5 0 0 0 0-.706l-.708-.708a.5.5 0 0 0-.707 0L8.646 5.94a.5.5 0 0 0 0 .707l.708.708a.5.5 0 0 0 .707 0l1.293-1.293Zm-3 3a.5.5 0 0 0 0-.706l-.708-.708a.5.5 0 0 0-.707 0L.646 13.94a.5.5 0 0 0 0 .707l.708.708a.5.5 0 0 0 .707 0z\"},\"child\":[]}]})(props);\n};\nexport function BsMagnetFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M15 12h-4v3h4zM5 12H1v3h4zM0 8a8 8 0 1 1 16 0v8h-6V8a2 2 0 1 0-4 0v8H0z\"},\"child\":[]}]})(props);\n};\nexport function BsMagnet (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 1a7 7 0 0 0-7 7v3h4V8a3 3 0 0 1 6 0v3h4V8a7 7 0 0 0-7-7m7 11h-4v3h4zM5 12H1v3h4zM0 8a8 8 0 1 1 16 0v8h-6V8a2 2 0 1 0-4 0v8H0z\"},\"child\":[]}]})(props);\n};\nexport function BsMailboxFlag (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M10.5 8.5V3.707l.854-.853A.5.5 0 0 0 11.5 2.5v-2A.5.5 0 0 0 11 0H9.5a.5.5 0 0 0-.5.5v8zM5 7c0 .334-.164.264-.415.157C4.42 7.087 4.218 7 4 7s-.42.086-.585.157C3.164 7.264 3 7.334 3 7a1 1 0 0 1 2 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4 3h4v1H6.646A4 4 0 0 1 8 7v6h7V7a3 3 0 0 0-3-3V3a4 4 0 0 1 4 4v6a1 1 0 0 1-1 1H1a1 1 0 0 1-1-1V7a4 4 0 0 1 4-4m0 1a3 3 0 0 0-3 3v6h6V7a3 3 0 0 0-3-3\"},\"child\":[]}]})(props);\n};\nexport function BsMailbox (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4 4a3 3 0 0 0-3 3v6h6V7a3 3 0 0 0-3-3m0-1h8a4 4 0 0 1 4 4v6a1 1 0 0 1-1 1H1a1 1 0 0 1-1-1V7a4 4 0 0 1 4-4m2.646 1A4 4 0 0 1 8 7v6h7V7a3 3 0 0 0-3-3z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M11.793 8.5H9v-1h5a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.354-.146zM5 7c0 .552-.448 0-1 0s-1 .552-1 0a1 1 0 0 1 2 0\"},\"child\":[]}]})(props);\n};\nexport function BsMailbox2Flag (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M10.5 8.5V3.707l.854-.853A.5.5 0 0 0 11.5 2.5v-2A.5.5 0 0 0 11 0H9.5a.5.5 0 0 0-.5.5v8z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4 3h4v1H6.646A4 4 0 0 1 8 7v6h7V7a3 3 0 0 0-3-3V3a4 4 0 0 1 4 4v6a1 1 0 0 1-1 1H1a1 1 0 0 1-1-1V7a4 4 0 0 1 4-4m.585 4.157C4.836 7.264 5 7.334 5 7a1 1 0 0 0-2 0c0 .334.164.264.415.157C3.58 7.087 3.782 7 4 7s.42.086.585.157\"},\"child\":[]}]})(props);\n};\nexport function BsMailbox2 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9 8.5h2.793l.853.854A.5.5 0 0 0 13 9.5h1a.5.5 0 0 0 .5-.5V8a.5.5 0 0 0-.5-.5H9z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M12 3H4a4 4 0 0 0-4 4v6a1 1 0 0 0 1 1h14a1 1 0 0 0 1-1V7a4 4 0 0 0-4-4M8 7a4 4 0 0 0-1.354-3H12a3 3 0 0 1 3 3v6H8zm-3.415.157C4.42 7.087 4.218 7 4 7s-.42.086-.585.157C3.164 7.264 3 7.334 3 7a1 1 0 0 1 2 0c0 .334-.164.264-.415.157\"},\"child\":[]}]})(props);\n};\nexport function BsMapFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M16 .5a.5.5 0 0 0-.598-.49L10.5.99 5.598.01a.5.5 0 0 0-.196 0l-5 1A.5.5 0 0 0 0 1.5v14a.5.5 0 0 0 .598.49l4.902-.98 4.902.98a.5.5 0 0 0 .196 0l5-1A.5.5 0 0 0 16 14.5zM5 14.09V1.11l.5-.1.5.1v12.98l-.402-.08a.5.5 0 0 0-.196 0zm5 .8V1.91l.402.08a.5.5 0 0 0 .196 0L11 1.91v12.98l-.5.1z\"},\"child\":[]}]})(props);\n};\nexport function BsMap (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M15.817.113A.5.5 0 0 1 16 .5v14a.5.5 0 0 1-.402.49l-5 1a.5.5 0 0 1-.196 0L5.5 15.01l-4.902.98A.5.5 0 0 1 0 15.5v-14a.5.5 0 0 1 .402-.49l5-1a.5.5 0 0 1 .196 0L10.5.99l4.902-.98a.5.5 0 0 1 .415.103M10 1.91l-4-.8v12.98l4 .8zm1 12.98 4-.8V1.11l-4 .8zm-6-.8V1.11l-4 .8v12.98z\"},\"child\":[]}]})(props);\n};\nexport function BsMarkdownFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 4a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm11.5 1a.5.5 0 0 0-.5.5v3.793L9.854 8.146a.5.5 0 1 0-.708.708l2 2a.5.5 0 0 0 .708 0l2-2a.5.5 0 0 0-.708-.708L12 9.293V5.5a.5.5 0 0 0-.5-.5M3.56 7.01h.056l1.428 3.239h.774l1.42-3.24h.056V11h1.073V5.001h-1.2l-1.71 3.894h-.039l-1.71-3.894H2.5V11h1.06z\"},\"child\":[]}]})(props);\n};\nexport function BsMarkdown (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M14 3a1 1 0 0 1 1 1v8a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1zM2 2a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M9.146 8.146a.5.5 0 0 1 .708 0L11.5 9.793l1.646-1.647a.5.5 0 0 1 .708.708l-2 2a.5.5 0 0 1-.708 0l-2-2a.5.5 0 0 1 0-.708\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M11.5 5a.5.5 0 0 1 .5.5v4a.5.5 0 0 1-1 0v-4a.5.5 0 0 1 .5-.5\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3.56 11V7.01h.056l1.428 3.239h.774l1.42-3.24h.056V11h1.073V5.001h-1.2l-1.71 3.894h-.039l-1.71-3.894H2.5V11z\"},\"child\":[]}]})(props);\n};\nexport function BsMarkerTip (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0m-4.5 6.064-1.281-4.696A.5.5 0 0 0 9.736 9H6.264a.5.5 0 0 0-.483.368l-1.28 4.696A6.97 6.97 0 0 0 8 15c1.275 0 2.47-.34 3.5-.936m.873-.598a7 7 0 1 0-8.746 0l1.19-4.36a1.5 1.5 0 0 1 1.31-1.1l1.155-3.851c.213-.713 1.223-.713 1.436 0l1.156 3.851a1.5 1.5 0 0 1 1.31 1.1z\"},\"child\":[]}]})(props);\n};\nexport function BsMask (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.225 1.227A7.5 7.5 0 0 1 10.5 8a7.5 7.5 0 0 1-4.275 6.773 7 7 0 1 0 0-13.546M4.187.966a8 8 0 1 1 7.627 14.069A8 8 0 0 1 4.186.964z\"},\"child\":[]}]})(props);\n};\nexport function BsMastodon (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M11.19 12.195c2.016-.24 3.77-1.475 3.99-2.603.348-1.778.32-4.339.32-4.339 0-3.47-2.286-4.488-2.286-4.488C12.062.238 10.083.017 8.027 0h-.05C5.92.017 3.942.238 2.79.765c0 0-2.285 1.017-2.285 4.488l-.002.662c-.004.64-.007 1.35.011 2.091.083 3.394.626 6.74 3.78 7.57 1.454.383 2.703.463 3.709.408 1.823-.1 2.847-.647 2.847-.647l-.06-1.317s-1.303.41-2.767.36c-1.45-.05-2.98-.156-3.215-1.928a4 4 0 0 1-.033-.496s1.424.346 3.228.428c1.103.05 2.137-.064 3.188-.189zm1.613-2.47H11.13v-4.08c0-.859-.364-1.295-1.091-1.295-.804 0-1.207.517-1.207 1.541v2.233H7.168V5.89c0-1.024-.403-1.541-1.207-1.541-.727 0-1.091.436-1.091 1.296v4.079H3.197V5.522q0-1.288.66-2.046c.456-.505 1.052-.764 1.793-.764.856 0 1.504.328 1.933.983L8 4.39l.417-.695c.429-.655 1.077-.983 1.934-.983.74 0 1.336.259 1.791.764q.662.757.661 2.046z\"},\"child\":[]}]})(props);\n};\nexport function BsMedium (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.025 8c0 2.485-2.02 4.5-4.513 4.5A4.506 4.506 0 0 1 0 8c0-2.486 2.02-4.5 4.512-4.5A4.506 4.506 0 0 1 9.025 8m4.95 0c0 2.34-1.01 4.236-2.256 4.236S9.463 10.339 9.463 8c0-2.34 1.01-4.236 2.256-4.236S13.975 5.661 13.975 8M16 8c0 2.096-.355 3.795-.794 3.795-.438 0-.793-1.7-.793-3.795 0-2.096.355-3.795.794-3.795.438 0 .793 1.699.793 3.795\"},\"child\":[]}]})(props);\n};\nexport function BsMegaphoneFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M13 2.5a1.5 1.5 0 0 1 3 0v11a1.5 1.5 0 0 1-3 0zm-1 .724c-2.067.95-4.539 1.481-7 1.656v6.237a25 25 0 0 1 1.088.085c2.053.204 4.038.668 5.912 1.56zm-8 7.841V4.934c-.68.027-1.399.043-2.008.053A2.02 2.02 0 0 0 0 7v2c0 1.106.896 1.996 1.994 2.009l.496.008a64 64 0 0 1 1.51.048m1.39 1.081q.428.032.85.078l.253 1.69a1 1 0 0 1-.983 1.187h-.548a1 1 0 0 1-.916-.599l-1.314-2.48a66 66 0 0 1 1.692.064q.491.026.966.06\"},\"child\":[]}]})(props);\n};\nexport function BsMegaphone (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M13 2.5a1.5 1.5 0 0 1 3 0v11a1.5 1.5 0 0 1-3 0v-.214c-2.162-1.241-4.49-1.843-6.912-2.083l.405 2.712A1 1 0 0 1 5.51 15.1h-.548a1 1 0 0 1-.916-.599l-1.85-3.49-.202-.003A2.014 2.014 0 0 1 0 9V7a2.02 2.02 0 0 1 1.992-2.013 75 75 0 0 0 2.483-.075c3.043-.154 6.148-.849 8.525-2.199zm1 0v11a.5.5 0 0 0 1 0v-11a.5.5 0 0 0-1 0m-1 1.35c-2.344 1.205-5.209 1.842-8 2.033v4.233q.27.015.537.036c2.568.189 5.093.744 7.463 1.993zm-9 6.215v-4.13a95 95 0 0 1-1.992.052A1.02 1.02 0 0 0 1 7v2c0 .55.448 1.002 1.006 1.009A61 61 0 0 1 4 10.065m-.657.975 1.609 3.037.01.024h.548l-.002-.014-.443-2.966a68 68 0 0 0-1.722-.082z\"},\"child\":[]}]})(props);\n};\nexport function BsMemory (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M1 3a1 1 0 0 0-1 1v8a1 1 0 0 0 1 1h4.586a1 1 0 0 0 .707-.293l.353-.353a.5.5 0 0 1 .708 0l.353.353a1 1 0 0 0 .707.293H15a1 1 0 0 0 1-1V4a1 1 0 0 0-1-1zm.5 1h3a.5.5 0 0 1 .5.5v4a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-4a.5.5 0 0 1 .5-.5m5 0h3a.5.5 0 0 1 .5.5v4a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-4a.5.5 0 0 1 .5-.5m4.5.5a.5.5 0 0 1 .5-.5h3a.5.5 0 0 1 .5.5v4a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5zM2 10v2H1v-2zm2 0v2H3v-2zm2 0v2H5v-2zm3 0v2H8v-2zm2 0v2h-1v-2zm2 0v2h-1v-2zm2 0v2h-1v-2z\"},\"child\":[]}]})(props);\n};\nexport function BsMenuAppFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 1.5A1.5 1.5 0 0 1 1.5 0h2A1.5 1.5 0 0 1 5 1.5v2A1.5 1.5 0 0 1 3.5 5h-2A1.5 1.5 0 0 1 0 3.5zM0 8a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v5a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm1 3v2a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1v-2zm14-1V8a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1v2zM2 8.5a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5m0 4a.5.5 0 0 1 .5-.5h6a.5.5 0 0 1 0 1h-6a.5.5 0 0 1-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsMenuApp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 1.5A1.5 1.5 0 0 1 1.5 0h2A1.5 1.5 0 0 1 5 1.5v2A1.5 1.5 0 0 1 3.5 5h-2A1.5 1.5 0 0 1 0 3.5zM1.5 1a.5.5 0 0 0-.5.5v2a.5.5 0 0 0 .5.5h2a.5.5 0 0 0 .5-.5v-2a.5.5 0 0 0-.5-.5zM0 8a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v5a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm1 3v2a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1v-2zm14-1V8a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1v2zM2 8.5a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5m0 4a.5.5 0 0 1 .5-.5h6a.5.5 0 0 1 0 1h-6a.5.5 0 0 1-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsMenuButtonFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M1.5 0A1.5 1.5 0 0 0 0 1.5v2A1.5 1.5 0 0 0 1.5 5h8A1.5 1.5 0 0 0 11 3.5v-2A1.5 1.5 0 0 0 9.5 0zm5.927 2.427A.25.25 0 0 1 7.604 2h.792a.25.25 0 0 1 .177.427l-.396.396a.25.25 0 0 1-.354 0zM0 8a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v5a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm1 3v2a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1v-2zm14-1V8a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1v2zM2 8.5a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5m0 4a.5.5 0 0 1 .5-.5h6a.5.5 0 0 1 0 1h-6a.5.5 0 0 1-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsMenuButtonWideFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M1.5 0A1.5 1.5 0 0 0 0 1.5v2A1.5 1.5 0 0 0 1.5 5h13A1.5 1.5 0 0 0 16 3.5v-2A1.5 1.5 0 0 0 14.5 0zm1 2h3a.5.5 0 0 1 0 1h-3a.5.5 0 0 1 0-1m9.927.427A.25.25 0 0 1 12.604 2h.792a.25.25 0 0 1 .177.427l-.396.396a.25.25 0 0 1-.354 0zM0 8a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v5a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm1 3v2a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1v-2zm14-1V8a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1v2zM2 8.5a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5m0 4a.5.5 0 0 1 .5-.5h6a.5.5 0 0 1 0 1h-6a.5.5 0 0 1-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsMenuButtonWide (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 1.5A1.5 1.5 0 0 1 1.5 0h13A1.5 1.5 0 0 1 16 1.5v2A1.5 1.5 0 0 1 14.5 5h-13A1.5 1.5 0 0 1 0 3.5zM1.5 1a.5.5 0 0 0-.5.5v2a.5.5 0 0 0 .5.5h13a.5.5 0 0 0 .5-.5v-2a.5.5 0 0 0-.5-.5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 2.5a.5.5 0 0 1 .5-.5h3a.5.5 0 0 1 0 1h-3a.5.5 0 0 1-.5-.5m10.823.323-.396-.396A.25.25 0 0 1 12.604 2h.792a.25.25 0 0 1 .177.427l-.396.396a.25.25 0 0 1-.354 0M0 8a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v5a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm1 3v2a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1v-2zm14-1V8a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1v2zM2 8.5a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5m0 4a.5.5 0 0 1 .5-.5h6a.5.5 0 0 1 0 1h-6a.5.5 0 0 1-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsMenuButton (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 1.5A1.5 1.5 0 0 1 1.5 0h8A1.5 1.5 0 0 1 11 1.5v2A1.5 1.5 0 0 1 9.5 5h-8A1.5 1.5 0 0 1 0 3.5zM1.5 1a.5.5 0 0 0-.5.5v2a.5.5 0 0 0 .5.5h8a.5.5 0 0 0 .5-.5v-2a.5.5 0 0 0-.5-.5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m7.823 2.823-.396-.396A.25.25 0 0 1 7.604 2h.792a.25.25 0 0 1 .177.427l-.396.396a.25.25 0 0 1-.354 0M0 8a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v5a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm1 3v2a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1v-2zm14-1V8a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1v2zM2 8.5a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5m0 4a.5.5 0 0 1 .5-.5h6a.5.5 0 0 1 0 1h-6a.5.5 0 0 1-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsMenuDown (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.646.146a.5.5 0 0 1 .708 0L10.207 2H14a2 2 0 0 1 2 2v9a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h3.793zM1 7v3h14V7zm14-1V4a1 1 0 0 0-1-1h-3.793a1 1 0 0 1-.707-.293L8 1.207l-1.5 1.5A1 1 0 0 1 5.793 3H2a1 1 0 0 0-1 1v2zm0 5H1v2a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1zM2 4.5a.5.5 0 0 1 .5-.5h8a.5.5 0 0 1 0 1h-8a.5.5 0 0 1-.5-.5m0 4a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5m0 4a.5.5 0 0 1 .5-.5h6a.5.5 0 0 1 0 1h-6a.5.5 0 0 1-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsMenuUp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.646 15.854a.5.5 0 0 0 .708 0L10.207 14H14a2 2 0 0 0 2-2V3a2 2 0 0 0-2-2H2a2 2 0 0 0-2 2v9a2 2 0 0 0 2 2h3.793zM1 9V6h14v3zm14 1v2a1 1 0 0 1-1 1h-3.793a1 1 0 0 0-.707.293l-1.5 1.5-1.5-1.5A1 1 0 0 0 5.793 13H2a1 1 0 0 1-1-1v-2zm0-5H1V3a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1zM2 11.5a.5.5 0 0 0 .5.5h8a.5.5 0 0 0 0-1h-8a.5.5 0 0 0-.5.5m0-4a.5.5 0 0 0 .5.5h11a.5.5 0 0 0 0-1h-11a.5.5 0 0 0-.5.5m0-4a.5.5 0 0 0 .5.5h6a.5.5 0 0 0 0-1h-6a.5.5 0 0 0-.5.5\"},\"child\":[]}]})(props);\n};\nexport function BsMessenger (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 7.76C0 3.301 3.493 0 8 0s8 3.301 8 7.76-3.493 7.76-8 7.76c-.81 0-1.586-.107-2.316-.307a.64.64 0 0 0-.427.03l-1.588.702a.64.64 0 0 1-.898-.566l-.044-1.423a.64.64 0 0 0-.215-.456C.956 12.108 0 10.092 0 7.76m5.546-1.459-2.35 3.728c-.225.358.214.761.551.506l2.525-1.916a.48.48 0 0 1 .578-.002l1.869 1.402a1.2 1.2 0 0 0 1.735-.32l2.35-3.728c.226-.358-.214-.761-.551-.506L9.728 7.381a.48.48 0 0 1-.578.002L7.281 5.98a1.2 1.2 0 0 0-1.735.32z\"},\"child\":[]}]})(props);\n};\nexport function BsMeta (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M8.217 5.243C9.145 3.988 10.171 3 11.483 3 13.96 3 16 6.153 16.001 9.907c0 2.29-.986 3.725-2.757 3.725-1.543 0-2.395-.866-3.924-3.424l-.667-1.123-.118-.197a55 55 0 0 0-.53-.877l-1.178 2.08c-1.673 2.925-2.615 3.541-3.923 3.541C1.086 13.632 0 12.217 0 9.973 0 6.388 1.995 3 4.598 3q.477-.001.924.122c.31.086.611.22.913.407.577.359 1.154.915 1.782 1.714m1.516 2.224q-.378-.614-.727-1.133L9 6.326c.845-1.305 1.543-1.954 2.372-1.954 1.723 0 3.102 2.537 3.102 5.653 0 1.188-.39 1.877-1.195 1.877-.773 0-1.142-.51-2.61-2.87zM4.846 4.756c.725.1 1.385.634 2.34 2.001A212 212 0 0 0 5.551 9.3c-1.357 2.126-1.826 2.603-2.581 2.603-.777 0-1.24-.682-1.24-1.9 0-2.602 1.298-5.264 2.846-5.264q.136 0 .27.018Z\"},\"child\":[]}]})(props);\n};\nexport function BsMicFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5 3a3 3 0 0 1 6 0v5a3 3 0 0 1-6 0z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3.5 6.5A.5.5 0 0 1 4 7v1a4 4 0 0 0 8 0V7a.5.5 0 0 1 1 0v1a5 5 0 0 1-4.5 4.975V15h3a.5.5 0 0 1 0 1h-7a.5.5 0 0 1 0-1h3v-2.025A5 5 0 0 1 3 8V7a.5.5 0 0 1 .5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsMicMuteFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M13 8c0 .564-.094 1.107-.266 1.613l-.814-.814A4 4 0 0 0 12 8V7a.5.5 0 0 1 1 0zm-5 4c.818 0 1.578-.245 2.212-.667l.718.719a5 5 0 0 1-2.43.923V15h3a.5.5 0 0 1 0 1h-7a.5.5 0 0 1 0-1h3v-2.025A5 5 0 0 1 3 8V7a.5.5 0 0 1 1 0v1a4 4 0 0 0 4 4m3-9v4.879L5.158 2.037A3.001 3.001 0 0 1 11 3\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M9.486 10.607 5 6.12V8a3 3 0 0 0 4.486 2.607m-7.84-9.253 12 12 .708-.708-12-12z\"},\"child\":[]}]})(props);\n};\nexport function BsMicMute (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M13 8c0 .564-.094 1.107-.266 1.613l-.814-.814A4 4 0 0 0 12 8V7a.5.5 0 0 1 1 0zm-5 4c.818 0 1.578-.245 2.212-.667l.718.719a5 5 0 0 1-2.43.923V15h3a.5.5 0 0 1 0 1h-7a.5.5 0 0 1 0-1h3v-2.025A5 5 0 0 1 3 8V7a.5.5 0 0 1 1 0v1a4 4 0 0 0 4 4m3-9v4.879l-1-1V3a2 2 0 0 0-3.997-.118l-.845-.845A3.001 3.001 0 0 1 11 3\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m9.486 10.607-.748-.748A2 2 0 0 1 6 8v-.878l-1-1V8a3 3 0 0 0 4.486 2.607m-7.84-9.253 12 12 .708-.708-12-12z\"},\"child\":[]}]})(props);\n};\nexport function BsMic (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3.5 6.5A.5.5 0 0 1 4 7v1a4 4 0 0 0 8 0V7a.5.5 0 0 1 1 0v1a5 5 0 0 1-4.5 4.975V15h3a.5.5 0 0 1 0 1h-7a.5.5 0 0 1 0-1h3v-2.025A5 5 0 0 1 3 8V7a.5.5 0 0 1 .5-.5\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M10 8a2 2 0 1 1-4 0V3a2 2 0 1 1 4 0zM8 0a3 3 0 0 0-3 3v5a3 3 0 0 0 6 0V3a3 3 0 0 0-3-3\"},\"child\":[]}]})(props);\n};\nexport function BsMicrosoftTeams (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.186 4.797a2.42 2.42 0 1 0-2.86-2.448h1.178c.929 0 1.682.753 1.682 1.682zm-4.295 7.738h2.613c.929 0 1.682-.753 1.682-1.682V5.58h2.783a.7.7 0 0 1 .682.716v4.294a4.197 4.197 0 0 1-4.093 4.293c-1.618-.04-3-.99-3.667-2.35Zm10.737-9.372a1.674 1.674 0 1 1-3.349 0 1.674 1.674 0 0 1 3.349 0m-2.238 9.488-.12-.002a5.2 5.2 0 0 0 .381-2.07V6.306a1.7 1.7 0 0 0-.15-.725h1.792c.39 0 .707.317.707.707v3.765a2.6 2.6 0 0 1-2.598 2.598z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M.682 3.349h6.822c.377 0 .682.305.682.682v6.822a.68.68 0 0 1-.682.682H.682A.68.68 0 0 1 0 10.853V4.03c0-.377.305-.682.682-.682Zm5.206 2.596v-.72h-3.59v.72h1.357V9.66h.87V5.945z\"},\"child\":[]}]})(props);\n};\nexport function BsMicrosoft (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.462 0H0v7.19h7.462zM16 0H8.538v7.19H16zM7.462 8.211H0V16h7.462zm8.538 0H8.538V16H16z\"},\"child\":[]}]})(props);\n};\nexport function BsMinecartLoaded (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4 15a1 1 0 1 1 0-2 1 1 0 0 1 0 2m0 1a2 2 0 1 0 0-4 2 2 0 0 0 0 4m8-1a1 1 0 1 1 0-2 1 1 0 0 1 0 2m0 1a2 2 0 1 0 0-4 2 2 0 0 0 0 4M.115 3.18A.5.5 0 0 1 .5 3h15a.5.5 0 0 1 .491.592l-1.5 8A.5.5 0 0 1 14 12H2a.5.5 0 0 1-.491-.408l-1.5-8a.5.5 0 0 1 .106-.411zm.987.82 1.313 7h11.17l1.313-7z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M6 1a2.498 2.498 0 0 1 4 0c.818 0 1.545.394 2 1 .67 0 1.552.57 2 1h-2c-.314 0-.611-.15-.8-.4-.274-.365-.71-.6-1.2-.6-.314 0-.611-.15-.8-.4a1.497 1.497 0 0 0-2.4 0c-.189.25-.486.4-.8.4-.507 0-.955.251-1.228.638q-.136.194-.308.362H3c.13-.147.401-.432.562-.545a1.6 1.6 0 0 0 .393-.393A2.5 2.5 0 0 1 6 1\"},\"child\":[]}]})(props);\n};\nexport function BsMinecart (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4 15a1 1 0 1 1 0-2 1 1 0 0 1 0 2m0 1a2 2 0 1 0 0-4 2 2 0 0 0 0 4m8-1a1 1 0 1 1 0-2 1 1 0 0 1 0 2m0 1a2 2 0 1 0 0-4 2 2 0 0 0 0 4M.115 3.18A.5.5 0 0 1 .5 3h15a.5.5 0 0 1 .491.592l-1.5 8A.5.5 0 0 1 14 12H2a.5.5 0 0 1-.491-.408l-1.5-8a.5.5 0 0 1 .106-.411zm.987.82 1.313 7h11.17l1.313-7z\"},\"child\":[]}]})(props);\n};\nexport function BsModemFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7 0a1.5 1.5 0 0 0-1.5 1.5v11a1.5 1.5 0 0 0 1.404 1.497c-.35.305-.872.678-1.628 1.056A.5.5 0 0 0 5.5 16h5a.5.5 0 0 0 .224-.947c-.756-.378-1.278-.75-1.628-1.056A1.5 1.5 0 0 0 10.5 12.5v-11A1.5 1.5 0 0 0 9 0zm1 3a.5.5 0 1 1 0-1 .5.5 0 0 1 0 1m0 2a.5.5 0 1 1 0-1 .5.5 0 0 1 0 1m.5 1.5a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0M8 9a.5.5 0 1 1 0-1 .5.5 0 0 1 0 1\"},\"child\":[]}]})(props);\n};\nexport function BsModem (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5.5 1.5A1.5 1.5 0 0 1 7 0h2a1.5 1.5 0 0 1 1.5 1.5v11a1.5 1.5 0 0 1-1.404 1.497c.35.305.872.678 1.628 1.056A.5.5 0 0 1 10.5 16h-5a.5.5 0 0 1-.224-.947c.756-.378 1.277-.75 1.628-1.056A1.5 1.5 0 0 1 5.5 12.5zM7 1a.5.5 0 0 0-.5.5v11a.5.5 0 0 0 .5.5h2a.5.5 0 0 0 .5-.5v-11A.5.5 0 0 0 9 1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8.5 2.5a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0m0 2a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0m0 2a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0m0 2a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0\"},\"child\":[]}]})(props);\n};\nexport function BsMoisture (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M13.5 0a.5.5 0 0 0 0 1H15v2.75h-.5a.5.5 0 0 0 0 1h.5V7.5h-1.5a.5.5 0 0 0 0 1H15v2.75h-.5a.5.5 0 0 0 0 1h.5V15h-1.5a.5.5 0 0 0 0 1h2a.5.5 0 0 0 .5-.5V.5a.5.5 0 0 0-.5-.5zM7 1.5l.364-.343a.5.5 0 0 0-.728 0l-.002.002-.006.007-.022.023-.08.088a29 29 0 0 0-1.274 1.517c-.769.983-1.714 2.325-2.385 3.727C2.368 7.564 2 8.682 2 9.733 2 12.614 4.212 15 7 15s5-2.386 5-5.267c0-1.05-.368-2.169-.867-3.212-.671-1.402-1.616-2.744-2.385-3.727a29 29 0 0 0-1.354-1.605l-.022-.023-.006-.007-.002-.001zm0 0-.364-.343zm-.016.766L7 2.247l.016.019c.24.274.572.667.944 1.144.611.781 1.32 1.776 1.901 2.827H4.14c.58-1.051 1.29-2.046 1.9-2.827.373-.477.706-.87.945-1.144zM3 9.733c0-.755.244-1.612.638-2.496h6.724c.395.884.638 1.741.638 2.496C11 12.117 9.182 14 7 14s-4-1.883-4-4.267\"},\"child\":[]}]})(props);\n};\nexport function BsMoonFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6 .278a.77.77 0 0 1 .08.858 7.2 7.2 0 0 0-.878 3.46c0 4.021 3.278 7.277 7.318 7.277q.792-.001 1.533-.16a.79.79 0 0 1 .81.316.73.73 0 0 1-.031.893A8.35 8.35 0 0 1 8.344 16C3.734 16 0 12.286 0 7.71 0 4.266 2.114 1.312 5.124.06A.75.75 0 0 1 6 .278\"},\"child\":[]}]})(props);\n};\nexport function BsMoonStarsFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6 .278a.77.77 0 0 1 .08.858 7.2 7.2 0 0 0-.878 3.46c0 4.021 3.278 7.277 7.318 7.277q.792-.001 1.533-.16a.79.79 0 0 1 .81.316.73.73 0 0 1-.031.893A8.35 8.35 0 0 1 8.344 16C3.734 16 0 12.286 0 7.71 0 4.266 2.114 1.312 5.124.06A.75.75 0 0 1 6 .278\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M10.794 3.148a.217.217 0 0 1 .412 0l.387 1.162c.173.518.579.924 1.097 1.097l1.162.387a.217.217 0 0 1 0 .412l-1.162.387a1.73 1.73 0 0 0-1.097 1.097l-.387 1.162a.217.217 0 0 1-.412 0l-.387-1.162A1.73 1.73 0 0 0 9.31 6.593l-1.162-.387a.217.217 0 0 1 0-.412l1.162-.387a1.73 1.73 0 0 0 1.097-1.097zM13.863.099a.145.145 0 0 1 .274 0l.258.774c.115.346.386.617.732.732l.774.258a.145.145 0 0 1 0 .274l-.774.258a1.16 1.16 0 0 0-.732.732l-.258.774a.145.145 0 0 1-.274 0l-.258-.774a1.16 1.16 0 0 0-.732-.732l-.774-.258a.145.145 0 0 1 0-.274l.774-.258c.346-.115.617-.386.732-.732z\"},\"child\":[]}]})(props);\n};\nexport function BsMoonStars (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6 .278a.77.77 0 0 1 .08.858 7.2 7.2 0 0 0-.878 3.46c0 4.021 3.278 7.277 7.318 7.277q.792-.001 1.533-.16a.79.79 0 0 1 .81.316.73.73 0 0 1-.031.893A8.35 8.35 0 0 1 8.344 16C3.734 16 0 12.286 0 7.71 0 4.266 2.114 1.312 5.124.06A.75.75 0 0 1 6 .278M4.858 1.311A7.27 7.27 0 0 0 1.025 7.71c0 4.02 3.279 7.276 7.319 7.276a7.32 7.32 0 0 0 5.205-2.162q-.506.063-1.029.063c-4.61 0-8.343-3.714-8.343-8.29 0-1.167.242-2.278.681-3.286\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M10.794 3.148a.217.217 0 0 1 .412 0l.387 1.162c.173.518.579.924 1.097 1.097l1.162.387a.217.217 0 0 1 0 .412l-1.162.387a1.73 1.73 0 0 0-1.097 1.097l-.387 1.162a.217.217 0 0 1-.412 0l-.387-1.162A1.73 1.73 0 0 0 9.31 6.593l-1.162-.387a.217.217 0 0 1 0-.412l1.162-.387a1.73 1.73 0 0 0 1.097-1.097zM13.863.099a.145.145 0 0 1 .274 0l.258.774c.115.346.386.617.732.732l.774.258a.145.145 0 0 1 0 .274l-.774.258a1.16 1.16 0 0 0-.732.732l-.258.774a.145.145 0 0 1-.274 0l-.258-.774a1.16 1.16 0 0 0-.732-.732l-.774-.258a.145.145 0 0 1 0-.274l.774-.258c.346-.115.617-.386.732-.732z\"},\"child\":[]}]})(props);\n};\nexport function BsMoon (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6 .278a.77.77 0 0 1 .08.858 7.2 7.2 0 0 0-.878 3.46c0 4.021 3.278 7.277 7.318 7.277q.792-.001 1.533-.16a.79.79 0 0 1 .81.316.73.73 0 0 1-.031.893A8.35 8.35 0 0 1 8.344 16C3.734 16 0 12.286 0 7.71 0 4.266 2.114 1.312 5.124.06A.75.75 0 0 1 6 .278M4.858 1.311A7.27 7.27 0 0 0 1.025 7.71c0 4.02 3.279 7.276 7.319 7.276a7.32 7.32 0 0 0 5.205-2.162q-.506.063-1.029.063c-4.61 0-8.343-3.714-8.343-8.29 0-1.167.242-2.278.681-3.286\"},\"child\":[]}]})(props);\n};\nexport function BsMortarboardFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.211 2.047a.5.5 0 0 0-.422 0l-7.5 3.5a.5.5 0 0 0 .025.917l7.5 3a.5.5 0 0 0 .372 0L14 7.14V13a1 1 0 0 0-1 1v2h3v-2a1 1 0 0 0-1-1V6.739l.686-.275a.5.5 0 0 0 .025-.917z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4.176 9.032a.5.5 0 0 0-.656.327l-.5 1.7a.5.5 0 0 0 .294.605l4.5 1.8a.5.5 0 0 0 .372 0l4.5-1.8a.5.5 0 0 0 .294-.605l-.5-1.7a.5.5 0 0 0-.656-.327L8 10.466z\"},\"child\":[]}]})(props);\n};\nexport function BsMortarboard (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.211 2.047a.5.5 0 0 0-.422 0l-7.5 3.5a.5.5 0 0 0 .025.917l7.5 3a.5.5 0 0 0 .372 0L14 7.14V13a1 1 0 0 0-1 1v2h3v-2a1 1 0 0 0-1-1V6.739l.686-.275a.5.5 0 0 0 .025-.917zM8 8.46 1.758 5.965 8 3.052l6.242 2.913z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4.176 9.032a.5.5 0 0 0-.656.327l-.5 1.7a.5.5 0 0 0 .294.605l4.5 1.8a.5.5 0 0 0 .372 0l4.5-1.8a.5.5 0 0 0 .294-.605l-.5-1.7a.5.5 0 0 0-.656-.327L8 10.466zm-.068 1.873.22-.748 3.496 1.311a.5.5 0 0 0 .352 0l3.496-1.311.22.748L8 12.46z\"},\"child\":[]}]})(props);\n};\nexport function BsMotherboardFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5 7h3V4H5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M1 2a2 2 0 0 1 2-2h11a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2v-2H.5a.5.5 0 0 1-.5-.5v-1A.5.5 0 0 1 .5 9H1V8H.5a.5.5 0 0 1-.5-.5v-1A.5.5 0 0 1 .5 6H1V5H.5a.5.5 0 0 1-.5-.5v-2A.5.5 0 0 1 .5 2zm11 .5a.5.5 0 0 0-1 0v7a.5.5 0 0 0 1 0zm2 0a.5.5 0 0 0-1 0v7a.5.5 0 0 0 1 0zM3.5 10a.5.5 0 0 0 0 1h6a.5.5 0 0 0 0-1zm0 2a.5.5 0 0 0 0 1h6a.5.5 0 0 0 0-1zM4 4h-.5a.5.5 0 0 0 0 1H4v1h-.5a.5.5 0 0 0 0 1H4a1 1 0 0 0 1 1v.5a.5.5 0 0 0 1 0V8h1v.5a.5.5 0 0 0 1 0V8a1 1 0 0 0 1-1h.5a.5.5 0 0 0 0-1H9V5h.5a.5.5 0 0 0 0-1H9a1 1 0 0 0-1-1v-.5a.5.5 0 0 0-1 0V3H6v-.5a.5.5 0 0 0-1 0V3a1 1 0 0 0-1 1m7 7.5v1a.5.5 0 0 0 .5.5h2a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-2a.5.5 0 0 0-.5.5\"},\"child\":[]}]})(props);\n};\nexport function BsMotherboard (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M11.5 2a.5.5 0 0 1 .5.5v7a.5.5 0 0 1-1 0v-7a.5.5 0 0 1 .5-.5m2 0a.5.5 0 0 1 .5.5v7a.5.5 0 0 1-1 0v-7a.5.5 0 0 1 .5-.5m-10 8a.5.5 0 0 0 0 1h6a.5.5 0 0 0 0-1zm0 2a.5.5 0 0 0 0 1h6a.5.5 0 0 0 0-1zM5 3a1 1 0 0 0-1 1h-.5a.5.5 0 0 0 0 1H4v1h-.5a.5.5 0 0 0 0 1H4a1 1 0 0 0 1 1v.5a.5.5 0 0 0 1 0V8h1v.5a.5.5 0 0 0 1 0V8a1 1 0 0 0 1-1h.5a.5.5 0 0 0 0-1H9V5h.5a.5.5 0 0 0 0-1H9a1 1 0 0 0-1-1v-.5a.5.5 0 0 0-1 0V3H6v-.5a.5.5 0 0 0-1 0zm0 1h3v3H5zm6.5 7a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h2a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M1 2a2 2 0 0 1 2-2h11a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2v-2H.5a.5.5 0 0 1-.5-.5v-1A.5.5 0 0 1 .5 9H1V8H.5a.5.5 0 0 1-.5-.5v-1A.5.5 0 0 1 .5 6H1V5H.5a.5.5 0 0 1-.5-.5v-2A.5.5 0 0 1 .5 2zm1 11a1 1 0 0 0 1 1h11a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H3a1 1 0 0 0-1 1z\"},\"child\":[]}]})(props);\n};\nexport function BsMouseFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3 5a5 5 0 0 1 10 0v6a5 5 0 0 1-10 0zm5.5-1.5a.5.5 0 0 0-1 0v2a.5.5 0 0 0 1 0z\"},\"child\":[]}]})(props);\n};\nexport function BsMouse (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 3a.5.5 0 0 1 .5.5v2a.5.5 0 0 1-1 0v-2A.5.5 0 0 1 8 3m4 8a4 4 0 0 1-8 0V5a4 4 0 1 1 8 0zM8 0a5 5 0 0 0-5 5v6a5 5 0 0 0 10 0V5a5 5 0 0 0-5-5\"},\"child\":[]}]})(props);\n};\nexport function BsMouse2Fill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.5.026C4.958.286 3 2.515 3 5.188V5.5h4.5zm1 0V5.5H13v-.312C13 2.515 11.042.286 8.5.026M13 6.5H3v4.313C3 13.658 5.22 16 8 16s5-2.342 5-5.188z\"},\"child\":[]}]})(props);\n};\nexport function BsMouse2 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3 5.188C3 2.341 5.22 0 8 0s5 2.342 5 5.188v5.625C13 13.658 10.78 16 8 16s-5-2.342-5-5.188V5.189zm4.5-4.155C5.541 1.289 4 3.035 4 5.188V5.5h3.5zm1 0V5.5H12v-.313c0-2.152-1.541-3.898-3.5-4.154M12 6.5H4v4.313C4 13.145 5.81 15 8 15s4-1.855 4-4.188z\"},\"child\":[]}]})(props);\n};\nexport function BsMouse3Fill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.5.069A15 15 0 0 0 7 0q-.891.002-1.527.463c-.418.302-.717.726-.93 1.208-.386.873-.522 2.01-.54 3.206l4.497 1zM3.71 5.836 3.381 6A2.5 2.5 0 0 0 2 8.236v2.576C2 13.659 4.22 16 7 16h2c2.78 0 5-2.342 5-5.188V8.123l-9-2v.003l.008.353c.007.3.023.715.053 1.175.063.937.186 2.005.413 2.688a.5.5 0 1 1-.948.316c-.273-.817-.4-2-.462-2.937A30 30 0 0 1 4 6.003q0-.05.01-.1zM14 7.1V5.187c0-1.13-.272-2.044-.748-2.772-.474-.726-1.13-1.235-1.849-1.59A7.5 7.5 0 0 0 9.5.212v5.887l4.5 1z\"},\"child\":[]}]})(props);\n};\nexport function BsMouse3 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7 0q-.891.002-1.527.463c-.418.302-.717.726-.93 1.208C4.123 2.619 4 3.879 4 5.187v.504L3.382 6A2.5 2.5 0 0 0 2 8.236v2.576C2 13.659 4.22 16 7 16h2c2.78 0 5-2.342 5-5.188V5.186c0-1.13-.272-2.044-.748-2.772-.474-.726-1.13-1.235-1.849-1.59C9.981.123 8.26 0 7 0m2.5 6.099V1.232c.51.11 1.008.267 1.46.49.596.293 1.099.694 1.455 1.24.355.543.585 1.262.585 2.225v1.69zm-1-5.025v4.803L5 5.099c.006-1.242.134-2.293.457-3.024.162-.366.363-.63.602-.801C6.292 1.105 6.593 1 7 1c.468 0 .98.018 1.5.074M5 6.124 13 7.9v2.912C13 13.145 11.19 15 9 15H7c-2.19 0-4-1.855-4-4.188V8.236a1.5 1.5 0 0 1 .83-1.342l.187-.093c.01.265.024.58.047.92.062.938.19 2.12.462 2.937a.5.5 0 1 0 .948-.316c-.227-.683-.35-1.75-.413-2.688a29 29 0 0 1-.06-1.528v-.002z\"},\"child\":[]}]})(props);\n};\nexport function BsMusicNoteBeamed (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6 13c0 1.105-1.12 2-2.5 2S1 14.105 1 13s1.12-2 2.5-2 2.5.896 2.5 2m9-2c0 1.105-1.12 2-2.5 2s-2.5-.895-2.5-2 1.12-2 2.5-2 2.5.895 2.5 2\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M14 11V2h1v9zM6 3v10H5V3z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M5 2.905a1 1 0 0 1 .9-.995l8-.8a1 1 0 0 1 1.1.995V3L5 4z\"},\"child\":[]}]})(props);\n};\nexport function BsMusicNoteList (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12 13c0 1.105-1.12 2-2.5 2S7 14.105 7 13s1.12-2 2.5-2 2.5.895 2.5 2\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M12 3v10h-1V3z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M11 2.82a1 1 0 0 1 .804-.98l3-.6A1 1 0 0 1 16 2.22V4l-5 1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M0 11.5a.5.5 0 0 1 .5-.5H4a.5.5 0 0 1 0 1H.5a.5.5 0 0 1-.5-.5m0-4A.5.5 0 0 1 .5 7H8a.5.5 0 0 1 0 1H.5a.5.5 0 0 1-.5-.5m0-4A.5.5 0 0 1 .5 3H8a.5.5 0 0 1 0 1H.5a.5.5 0 0 1-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsMusicNote (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9 13c0 1.105-1.12 2-2.5 2S4 14.105 4 13s1.12-2 2.5-2 2.5.895 2.5 2\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M9 3v10H8V3z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8 2.82a1 1 0 0 1 .804-.98l3-.6A1 1 0 0 1 13 2.22V4L8 5z\"},\"child\":[]}]})(props);\n};\nexport function BsMusicPlayerFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 12a1 1 0 1 0 0-2 1 1 0 0 0 0 2\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm1 2h6a1 1 0 0 1 1 1v2.5a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1V3a1 1 0 0 1 1-1m3 12a3 3 0 1 1 0-6 3 3 0 0 1 0 6\"},\"child\":[]}]})(props);\n};\nexport function BsMusicPlayer (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4 3a1 1 0 0 1 1-1h6a1 1 0 0 1 1 1v3a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1zm1 0v3h6V3zm3 9a1 1 0 1 0 0-2 1 1 0 0 0 0 2\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M11 11a3 3 0 1 1-6 0 3 3 0 0 1 6 0m-3 2a2 2 0 1 0 0-4 2 2 0 0 0 0 4\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 2a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2zm2-1a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsNewspaper (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 2.5A1.5 1.5 0 0 1 1.5 1h11A1.5 1.5 0 0 1 14 2.5v10.528c0 .3-.05.654-.238.972h.738a.5.5 0 0 0 .5-.5v-9a.5.5 0 0 1 1 0v9a1.5 1.5 0 0 1-1.5 1.5H1.497A1.497 1.497 0 0 1 0 13.5zM12 14c.37 0 .654-.211.853-.441.092-.106.147-.279.147-.531V2.5a.5.5 0 0 0-.5-.5h-11a.5.5 0 0 0-.5.5v11c0 .278.223.5.497.5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 3h10v2H2zm0 3h4v3H2zm0 4h4v1H2zm0 2h4v1H2zm5-6h2v1H7zm3 0h2v1h-2zM7 8h2v1H7zm3 0h2v1h-2zm-3 2h2v1H7zm3 0h2v1h-2zm-3 2h2v1H7zm3 0h2v1h-2z\"},\"child\":[]}]})(props);\n};\nexport function BsNintendoSwitch (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.34 8.005c0-4.38.01-7.972.023-7.982C9.373.01 10.036 0 10.831 0c1.153 0 1.51.01 1.743.05 1.73.298 3.045 1.6 3.373 3.326.046.242.053.809.053 4.61 0 4.06.005 4.537-.123 4.976-.022.076-.048.15-.08.242a4.14 4.14 0 0 1-3.426 2.767c-.317.033-2.889.046-2.978.013-.05-.02-.053-.752-.053-7.979m4.675.269a1.62 1.62 0 0 0-1.113-1.034 1.61 1.61 0 0 0-1.938 1.073 1.9 1.9 0 0 0-.014.935 1.63 1.63 0 0 0 1.952 1.107c.51-.136.908-.504 1.11-1.028.11-.285.113-.742.003-1.053M3.71 3.317c-.208.04-.526.199-.695.348-.348.301-.52.729-.494 1.232.013.262.03.332.136.544.155.321.39.556.712.715.222.11.278.123.567.133.261.01.354 0 .53-.06.719-.242 1.153-.94 1.03-1.656-.142-.852-.95-1.422-1.786-1.256\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3.425.053a4.14 4.14 0 0 0-3.28 3.015C0 3.628-.01 3.956.005 8.3c.01 3.99.014 4.082.08 4.39.368 1.66 1.548 2.844 3.224 3.235.22.05.497.06 2.29.07 1.856.012 2.048.009 2.097-.04.05-.05.053-.69.053-7.94 0-5.374-.01-7.906-.033-7.952-.033-.06-.09-.063-2.03-.06-1.578.004-2.052.014-2.26.05Zm3 14.665-1.35-.016c-1.242-.013-1.375-.02-1.623-.083a2.81 2.81 0 0 1-2.08-2.167c-.074-.335-.074-8.579-.004-8.907a2.85 2.85 0 0 1 1.716-2.05c.438-.176.64-.196 2.058-.2l1.282-.003v13.426Z\"},\"child\":[]}]})(props);\n};\nexport function BsNodeMinusFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M16 8a5 5 0 0 1-9.975.5H4A1.5 1.5 0 0 1 2.5 10h-1A1.5 1.5 0 0 1 0 8.5v-1A1.5 1.5 0 0 1 1.5 6h1A1.5 1.5 0 0 1 4 7.5h2.025A5 5 0 0 1 16 8m-2 0a.5.5 0 0 0-.5-.5h-5a.5.5 0 0 0 0 1h5A.5.5 0 0 0 14 8\"},\"child\":[]}]})(props);\n};\nexport function BsNodeMinus (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M11 4a4 4 0 1 0 0 8 4 4 0 0 0 0-8M6.025 7.5a5 5 0 1 1 0 1H4A1.5 1.5 0 0 1 2.5 10h-1A1.5 1.5 0 0 1 0 8.5v-1A1.5 1.5 0 0 1 1.5 6h1A1.5 1.5 0 0 1 4 7.5zM1.5 7a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zM8 8a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5A.5.5 0 0 1 8 8\"},\"child\":[]}]})(props);\n};\nexport function BsNodePlusFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M11 13a5 5 0 1 0-4.975-5.5H4A1.5 1.5 0 0 0 2.5 6h-1A1.5 1.5 0 0 0 0 7.5v1A1.5 1.5 0 0 0 1.5 10h1A1.5 1.5 0 0 0 4 8.5h2.025A5 5 0 0 0 11 13m.5-7.5v2h2a.5.5 0 0 1 0 1h-2v2a.5.5 0 0 1-1 0v-2h-2a.5.5 0 0 1 0-1h2v-2a.5.5 0 0 1 1 0\"},\"child\":[]}]})(props);\n};\nexport function BsNodePlus (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M11 4a4 4 0 1 0 0 8 4 4 0 0 0 0-8M6.025 7.5a5 5 0 1 1 0 1H4A1.5 1.5 0 0 1 2.5 10h-1A1.5 1.5 0 0 1 0 8.5v-1A1.5 1.5 0 0 1 1.5 6h1A1.5 1.5 0 0 1 4 7.5zM11 5a.5.5 0 0 1 .5.5v2h2a.5.5 0 0 1 0 1h-2v2a.5.5 0 0 1-1 0v-2h-2a.5.5 0 0 1 0-1h2v-2A.5.5 0 0 1 11 5M1.5 7a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5z\"},\"child\":[]}]})(props);\n};\nexport function BsNoiseReduction (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M13 5.5a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0m-1 1a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0m-1 1a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0m-1 1a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0m-1 1a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0m-1 1a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0m-1 1a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0m-1 1a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0m1 1a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0m.5-.5a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1m1-1a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1m1-1a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1m1-1a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1m1-1a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1m1-1a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1m1-1a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1m-5 7a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1m1.5-1.5a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0m1-1a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0m1-1a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0m1-1a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0m1-1a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0m-3 5a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0m.5-.5a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1m1-1a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1m1-1a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8 0a8 8 0 1 0 0 16A8 8 0 0 0 8 0M1 8a7 7 0 0 1 12.83-3.875.5.5 0 1 0 .15.235q.197.322.359.667a.5.5 0 1 0 .359.932q.201.658.27 1.364a.5.5 0 1 0 .021.282 7 7 0 0 1-.091 1.592.5.5 0 1 0-.172.75 7 7 0 0 1-.418 1.091.5.5 0 0 0-.3.555 7 7 0 0 1-.296.454.5.5 0 0 0-.712.453c0 .111.036.214.098.297a7 7 0 0 1-.3.3.5.5 0 0 0-.75.614 7 7 0 0 1-.455.298.5.5 0 0 0-.555.3 7 7 0 0 1-1.092.417.5.5 0 1 0-.749.172 7 7 0 0 1-1.592.091.5.5 0 1 0-.282-.021 7 7 0 0 1-1.364-.27A.498.498 0 0 0 5.5 14a.5.5 0 0 0-.473.339 7 7 0 0 1-.668-.36A.5.5 0 0 0 5 13.5a.5.5 0 1 0-.875.33A7 7 0 0 1 1 8\"},\"child\":[]}]})(props);\n};\nexport function BsNutFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4.58 1a1 1 0 0 0-.868.504l-3.428 6a1 1 0 0 0 0 .992l3.428 6A1 1 0 0 0 4.58 15h6.84a1 1 0 0 0 .868-.504l3.429-6a1 1 0 0 0 0-.992l-3.429-6A1 1 0 0 0 11.42 1zm5.018 9.696a3 3 0 1 1-3-5.196 3 3 0 0 1 3 5.196\"},\"child\":[]}]})(props);\n};\nexport function BsNut (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m11.42 2 3.428 6-3.428 6H4.58L1.152 8 4.58 2zM4.58 1a1 1 0 0 0-.868.504l-3.428 6a1 1 0 0 0 0 .992l3.428 6A1 1 0 0 0 4.58 15h6.84a1 1 0 0 0 .868-.504l3.429-6a1 1 0 0 0 0-.992l-3.429-6A1 1 0 0 0 11.42 1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M6.848 5.933a2.5 2.5 0 1 0 2.5 4.33 2.5 2.5 0 0 0-2.5-4.33m-1.78 3.915a3.5 3.5 0 1 1 6.061-3.5 3.5 3.5 0 0 1-6.062 3.5z\"},\"child\":[]}]})(props);\n};\nexport function BsNvidia (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M1.635 7.146S3.08 5.012 5.97 4.791v-.774C2.77 4.273 0 6.983 0 6.983s1.57 4.536 5.97 4.952v-.824c-3.23-.406-4.335-3.965-4.335-3.965M5.97 9.475v.753c-2.44-.435-3.118-2.972-3.118-2.972S4.023 5.958 5.97 5.747v.828h-.004c-1.021-.123-1.82.83-1.82.83s.448 1.607 1.824 2.07M6 2l-.03 2.017A7 7 0 0 1 6.252 4c3.637-.123 6.007 2.983 6.007 2.983s-2.722 3.31-5.557 3.31q-.39-.002-.732-.065v.883q.292.039.61.04c2.638 0 4.546-1.348 6.394-2.943.307.246 1.561.842 1.819 1.104-1.757 1.47-5.852 2.657-8.173 2.657a7 7 0 0 1-.65-.034V14H16l.03-12zm-.03 3.747v-.956a6 6 0 0 1 .282-.015c2.616-.082 4.332 2.248 4.332 2.248S8.73 9.598 6.743 9.598c-.286 0-.542-.046-.773-.123v-2.9c1.018.123 1.223.572 1.835 1.593L9.167 7.02s-.994-1.304-2.67-1.304a5 5 0 0 0-.527.031\"},\"child\":[]}]})(props);\n};\nexport function BsNvmeFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6 7H5v2h1zm6 0H9v2h3z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 4a.5.5 0 0 0-.5.5h-1A.5.5 0 0 0 0 5v1a.5.5 0 0 0 .5.5h1a.25.25 0 0 1 0 .5h-1a.5.5 0 0 0-.5.5V11a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5.5h13.5a.5.5 0 0 0 .5-.5V9a.5.5 0 0 0-.5-.5.5.5 0 0 1 0-1A.5.5 0 0 0 16 7V4.5a.5.5 0 0 0-.5-.5zm2 2.5a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 .5.5v3a.5.5 0 0 1-.5.5h-2a.5.5 0 0 1-.5-.5zm4 0a.5.5 0 0 1 .5-.5h4a.5.5 0 0 1 .5.5v3a.5.5 0 0 1-.5.5h-4a.5.5 0 0 1-.5-.5z\"},\"child\":[]}]})(props);\n};\nexport function BsNvme (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M1.5 4.5A.5.5 0 0 1 2 4h13.5a.5.5 0 0 1 .5.5V7a.5.5 0 0 1-.5.5.5.5 0 0 0 0 1 .5.5 0 0 1 .5.5v2.5a.5.5 0 0 1-.5.5H2a.5.5 0 0 1-.5-.5h-1A.5.5 0 0 1 0 11V7.5A.5.5 0 0 1 .5 7h1a.25.25 0 0 0 0-.5h-1A.5.5 0 0 1 0 6V5a.5.5 0 0 1 .5-.5zm1 .5a.5.5 0 0 1-.5.5h-.5a1.25 1.25 0 1 1 0 2.5H1v2.5h1a.5.5 0 0 1 .5.5H15V9.415a1.5 1.5 0 0 1 0-2.83V5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4 6.5a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 .5.5v3a.5.5 0 0 1-.5.5h-2a.5.5 0 0 1-.5-.5zM5 7v2h1V7zm3-.5a.5.5 0 0 1 .5-.5h4a.5.5 0 0 1 .5.5v3a.5.5 0 0 1-.5.5h-4a.5.5 0 0 1-.5-.5zM9 7v2h3V7z\"},\"child\":[]}]})(props);\n};\nexport function BsOctagonFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M11.107 0a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146A.5.5 0 0 1 4.893 0z\"},\"child\":[]}]})(props);\n};\nexport function BsOctagonHalf (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353zM8 15h2.9l4.1-4.1V5.1L10.9 1H8z\"},\"child\":[]}]})(props);\n};\nexport function BsOctagon (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1z\"},\"child\":[]}]})(props);\n};\nexport function BsOpencollective (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillOpacity\":\".4\",\"d\":\"M12.995 8.195c0 .937-.312 1.912-.78 2.693l1.99 1.99c.976-1.327 1.6-2.966 1.6-4.683 0-1.795-.624-3.434-1.561-4.76l-2.068 2.028c.468.781.78 1.679.78 2.732z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8 13.151a4.995 4.995 0 1 1 0-9.99c1.015 0 1.951.273 2.732.82l1.95-2.03a7.805 7.805 0 1 0 .04 12.449l-1.951-2.03a5.07 5.07 0 0 1-2.732.781z\"},\"child\":[]}]})(props);\n};\nexport function BsOpticalAudioFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 6a3 3 0 1 1 0 6 3 3 0 0 1 0-6m1 3a1 1 0 1 0-2 0 1 1 0 0 0 2 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2.5 15a.5.5 0 0 1-.5-.5v-3.05a2.5 2.5 0 0 1 0-4.9V4.5a.5.5 0 0 1 .146-.354l2-2A.5.5 0 0 1 4.5 2h7a.5.5 0 0 1 .354.146l2 2A.5.5 0 0 1 14 4.5v2.05a2.5 2.5 0 0 1 0 4.9v3.05a.5.5 0 0 1-.5.5zM8 5a4 4 0 1 0 0 8 4 4 0 0 0 0-8\"},\"child\":[]}]})(props);\n};\nexport function BsOpticalAudio (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 10a1 1 0 1 0 0-2 1 1 0 0 0 0 2\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4.5 9a3.5 3.5 0 1 1 7 0 3.5 3.5 0 0 1-7 0M8 6.5a2.5 2.5 0 1 0 0 5 2.5 2.5 0 0 0 0-5\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 14.5a.5.5 0 0 0 .5.5h11a.5.5 0 0 0 .5-.5v-3.05a2.5 2.5 0 0 0 0-4.9V4.5a.5.5 0 0 0-.146-.354l-2-2A.5.5 0 0 0 11.5 2h-7a.5.5 0 0 0-.354.146l-2 2A.5.5 0 0 0 2 4.5v2.05a2.5 2.5 0 0 0 0 4.9zm1-.5v-3a.5.5 0 0 0-.5-.5 1.5 1.5 0 1 1 0-3A.5.5 0 0 0 3 7V4.707L4.707 3h6.586L13 4.707V7a.5.5 0 0 0 .5.5 1.5 1.5 0 0 1 0 3 .5.5 0 0 0-.5.5v3z\"},\"child\":[]}]})(props);\n};\nexport function BsOption (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M1 2.5a.5.5 0 0 1 .5-.5h3.797a.5.5 0 0 1 .439.26L11 13h3.5a.5.5 0 0 1 0 1h-3.797a.5.5 0 0 1-.439-.26L5 3H1.5a.5.5 0 0 1-.5-.5m10 0a.5.5 0 0 1 .5-.5h3a.5.5 0 0 1 0 1h-3a.5.5 0 0 1-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsOutlet (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3.34 2.994c.275-.338.68-.494 1.074-.494h7.172c.393 0 .798.156 1.074.494.578.708 1.84 2.534 1.84 5.006s-1.262 4.297-1.84 5.006c-.276.338-.68.494-1.074.494H4.414c-.394 0-.799-.156-1.074-.494C2.762 12.297 1.5 10.472 1.5 8s1.262-4.297 1.84-5.006m1.074.506a.38.38 0 0 0-.299.126C3.599 4.259 2.5 5.863 2.5 8s1.099 3.74 1.615 4.374c.06.073.163.126.3.126h7.17c.137 0 .24-.053.3-.126.516-.633 1.615-2.237 1.615-4.374s-1.099-3.74-1.615-4.374a.38.38 0 0 0-.3-.126h-7.17z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M6 5.5a.5.5 0 0 1 .5.5v1.5a.5.5 0 0 1-1 0V6a.5.5 0 0 1 .5-.5m4 0a.5.5 0 0 1 .5.5v1.5a.5.5 0 0 1-1 0V6a.5.5 0 0 1 .5-.5M7 10v1h2v-1a1 1 0 0 0-2 0\"},\"child\":[]}]})(props);\n};\nexport function BsPCircleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0M5.5 4.002V12h1.283V9.164h1.668C10.033 9.164 11 8.08 11 6.586c0-1.482-.955-2.584-2.538-2.584zm2.77 4.072c.893 0 1.419-.545 1.419-1.488s-.526-1.482-1.42-1.482H6.778v2.97z\"},\"child\":[]}]})(props);\n};\nexport function BsPCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M1 8a7 7 0 1 0 14 0A7 7 0 0 0 1 8m15 0A8 8 0 1 1 0 8a8 8 0 0 1 16 0M5.5 4.002h2.962C10.045 4.002 11 5.104 11 6.586c0 1.494-.967 2.578-2.55 2.578H6.784V12H5.5zm2.77 4.072c.893 0 1.419-.545 1.419-1.488s-.526-1.482-1.42-1.482H6.778v2.97z\"},\"child\":[]}]})(props);\n};\nexport function BsPSquareFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.27 8.074c.893 0 1.419-.545 1.419-1.488s-.526-1.482-1.42-1.482H6.778v2.97z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm3.5 4.002h2.962C10.045 4.002 11 5.104 11 6.586c0 1.494-.967 2.578-2.55 2.578H6.784V12H5.5z\"},\"child\":[]}]})(props);\n};\nexport function BsPSquare (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5.5 4.002h2.962C10.045 4.002 11 5.104 11 6.586c0 1.494-.967 2.578-2.55 2.578H6.784V12H5.5zm2.77 4.072c.893 0 1.419-.545 1.419-1.488s-.526-1.482-1.42-1.482H6.778v2.97z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M0 2a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm15 0a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsPaintBucket (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.192 2.78c-.458-.677-.927-1.248-1.35-1.643a3 3 0 0 0-.71-.515c-.217-.104-.56-.205-.882-.02-.367.213-.427.63-.43.896-.003.304.064.664.173 1.044.196.687.556 1.528 1.035 2.402L.752 8.22c-.277.277-.269.656-.218.918.055.283.187.593.36.903.348.627.92 1.361 1.626 2.068.707.707 1.441 1.278 2.068 1.626.31.173.62.305.903.36.262.05.64.059.918-.218l5.615-5.615c.118.257.092.512.05.939-.03.292-.068.665-.073 1.176v.123h.003a1 1 0 0 0 1.993 0H14v-.057a1 1 0 0 0-.004-.117c-.055-1.25-.7-2.738-1.86-3.494a4 4 0 0 0-.211-.434c-.349-.626-.92-1.36-1.627-2.067S8.857 3.052 8.23 2.704c-.31-.172-.62-.304-.903-.36-.262-.05-.64-.058-.918.219zM4.16 1.867c.381.356.844.922 1.311 1.632l-.704.705c-.382-.727-.66-1.402-.813-1.938a3.3 3.3 0 0 1-.131-.673q.137.09.337.274m.394 3.965c.54.852 1.107 1.567 1.607 2.033a.5.5 0 1 0 .682-.732c-.453-.422-1.017-1.136-1.564-2.027l1.088-1.088q.081.181.183.365c.349.627.92 1.361 1.627 2.068.706.707 1.44 1.278 2.068 1.626q.183.103.365.183l-4.861 4.862-.068-.01c-.137-.027-.342-.104-.608-.252-.524-.292-1.186-.8-1.846-1.46s-1.168-1.32-1.46-1.846c-.147-.265-.225-.47-.251-.607l-.01-.068zm2.87-1.935a2.4 2.4 0 0 1-.241-.561c.135.033.324.11.562.241.524.292 1.186.8 1.846 1.46.45.45.83.901 1.118 1.31a3.5 3.5 0 0 0-1.066.091 11 11 0 0 1-.76-.694c-.66-.66-1.167-1.322-1.458-1.847z\"},\"child\":[]}]})(props);\n};\nexport function BsPaletteFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12.433 10.07C14.133 10.585 16 11.15 16 8a8 8 0 1 0-8 8c1.996 0 1.826-1.504 1.649-3.08-.124-1.101-.252-2.237.351-2.92.465-.527 1.42-.237 2.433.07M8 5a1.5 1.5 0 1 1 0-3 1.5 1.5 0 0 1 0 3m4.5 3a1.5 1.5 0 1 1 0-3 1.5 1.5 0 0 1 0 3M5 6.5a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0m.5 6.5a1.5 1.5 0 1 1 0-3 1.5 1.5 0 0 1 0 3\"},\"child\":[]}]})(props);\n};\nexport function BsPalette (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 5a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3m4 3a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3M5.5 7a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0m.5 6a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8c0 3.15-1.866 2.585-3.567 2.07C11.42 9.763 10.465 9.473 10 10c-.603.683-.475 1.819-.351 2.92C9.826 14.495 9.996 16 8 16a8 8 0 1 1 8-8m-8 7c.611 0 .654-.171.655-.176.078-.146.124-.464.07-1.119-.014-.168-.037-.37-.061-.591-.052-.464-.112-1.005-.118-1.462-.01-.707.083-1.61.704-2.314.369-.417.845-.578 1.272-.618.404-.038.812.026 1.16.104.343.077.702.186 1.025.284l.028.008c.346.105.658.199.953.266.653.148.904.083.991.024C14.717 9.38 15 9.161 15 8a7 7 0 1 0-7 7\"},\"child\":[]}]})(props);\n};\nexport function BsPalette2 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 .5A.5.5 0 0 1 .5 0h5a.5.5 0 0 1 .5.5v5.277l4.147-4.131a.5.5 0 0 1 .707 0l3.535 3.536a.5.5 0 0 1 0 .708L10.261 10H15.5a.5.5 0 0 1 .5.5v5a.5.5 0 0 1-.5.5H3a3 3 0 0 1-2.121-.879A3 3 0 0 1 0 13.044m6-.21 7.328-7.3-2.829-2.828L6 7.188zM4.5 13a1.5 1.5 0 1 0-3 0 1.5 1.5 0 0 0 3 0M15 15v-4H9.258l-4.015 4zM0 .5v12.495zm0 12.495V13z\"},\"child\":[]}]})(props);\n};\nexport function BsPaperclip (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4.5 3a2.5 2.5 0 0 1 5 0v9a1.5 1.5 0 0 1-3 0V5a.5.5 0 0 1 1 0v7a.5.5 0 0 0 1 0V3a1.5 1.5 0 1 0-3 0v9a2.5 2.5 0 0 0 5 0V5a.5.5 0 0 1 1 0v7a3.5 3.5 0 1 1-7 0z\"},\"child\":[]}]})(props);\n};\nexport function BsParagraph (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M10.5 15a.5.5 0 0 1-.5-.5V2H9v12.5a.5.5 0 0 1-1 0V9H7a4 4 0 1 1 0-8h5.5a.5.5 0 0 1 0 1H11v12.5a.5.5 0 0 1-.5.5\"},\"child\":[]}]})(props);\n};\nexport function BsPassFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M10 0a2 2 0 1 1-4 0H3.5A1.5 1.5 0 0 0 2 1.5v13A1.5 1.5 0 0 0 3.5 16h9a1.5 1.5 0 0 0 1.5-1.5v-13A1.5 1.5 0 0 0 12.5 0zM4.5 5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1 0-1m0 2h4a.5.5 0 0 1 0 1h-4a.5.5 0 0 1 0-1\"},\"child\":[]}]})(props);\n};\nexport function BsPass (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5.5 5a.5.5 0 0 0 0 1h5a.5.5 0 0 0 0-1zm0 2a.5.5 0 0 0 0 1h3a.5.5 0 0 0 0-1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8 2a2 2 0 0 0 2-2h2.5A1.5 1.5 0 0 1 14 1.5v13a1.5 1.5 0 0 1-1.5 1.5h-9A1.5 1.5 0 0 1 2 14.5v-13A1.5 1.5 0 0 1 3.5 0H6a2 2 0 0 0 2 2m0 1a3 3 0 0 1-2.83-2H3.5a.5.5 0 0 0-.5.5v13a.5.5 0 0 0 .5.5h9a.5.5 0 0 0 .5-.5v-13a.5.5 0 0 0-.5-.5h-1.67A3 3 0 0 1 8 3\"},\"child\":[]}]})(props);\n};\nexport function BsPassportFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 6a2 2 0 1 0 0 4 2 2 0 0 0 0-4\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 3.252a1.5 1.5 0 0 1 1.232-1.476l8-1.454A1.5 1.5 0 0 1 13 1.797v.47A2 2 0 0 1 14 4v10a2 2 0 0 1-2 2H4a2 2 0 0 1-1.51-.688 1.5 1.5 0 0 1-.49-1.11V3.253ZM5 8a3 3 0 1 0 6 0 3 3 0 0 0-6 0m0 4.5a.5.5 0 0 0 .5.5h5a.5.5 0 0 0 0-1h-5a.5.5 0 0 0-.5.5\"},\"child\":[]}]})(props);\n};\nexport function BsPassport (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 5a3 3 0 1 0 0 6 3 3 0 0 0 0-6M6 8a2 2 0 1 1 4 0 2 2 0 0 1-4 0m-.5 4a.5.5 0 0 0 0 1h5a.5.5 0 0 0 0-1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3.232 1.776A1.5 1.5 0 0 0 2 3.252v10.95c0 .445.191.838.49 1.11.367.422.908.688 1.51.688h8a2 2 0 0 0 2-2V4a2 2 0 0 0-1-1.732v-.47A1.5 1.5 0 0 0 11.232.321l-8 1.454ZM4 3h8a1 1 0 0 1 1 1v10a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1\"},\"child\":[]}]})(props);\n};\nexport function BsPatchCheckFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M10.067.87a2.89 2.89 0 0 0-4.134 0l-.622.638-.89-.011a2.89 2.89 0 0 0-2.924 2.924l.01.89-.636.622a2.89 2.89 0 0 0 0 4.134l.637.622-.011.89a2.89 2.89 0 0 0 2.924 2.924l.89-.01.622.636a2.89 2.89 0 0 0 4.134 0l.622-.637.89.011a2.89 2.89 0 0 0 2.924-2.924l-.01-.89.636-.622a2.89 2.89 0 0 0 0-4.134l-.637-.622.011-.89a2.89 2.89 0 0 0-2.924-2.924l-.89.01zm.287 5.984-3 3a.5.5 0 0 1-.708 0l-1.5-1.5a.5.5 0 1 1 .708-.708L7 8.793l2.646-2.647a.5.5 0 0 1 .708.708\"},\"child\":[]}]})(props);\n};\nexport function BsPatchCheck (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M10.354 6.146a.5.5 0 0 1 0 .708l-3 3a.5.5 0 0 1-.708 0l-1.5-1.5a.5.5 0 1 1 .708-.708L7 8.793l2.646-2.647a.5.5 0 0 1 .708 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m10.273 2.513-.921-.944.715-.698.622.637.89-.011a2.89 2.89 0 0 1 2.924 2.924l-.01.89.636.622a2.89 2.89 0 0 1 0 4.134l-.637.622.011.89a2.89 2.89 0 0 1-2.924 2.924l-.89-.01-.622.636a2.89 2.89 0 0 1-4.134 0l-.622-.637-.89.011a2.89 2.89 0 0 1-2.924-2.924l.01-.89-.636-.622a2.89 2.89 0 0 1 0-4.134l.637-.622-.011-.89a2.89 2.89 0 0 1 2.924-2.924l.89.01.622-.636a2.89 2.89 0 0 1 4.134 0l-.715.698a1.89 1.89 0 0 0-2.704 0l-.92.944-1.32-.016a1.89 1.89 0 0 0-1.911 1.912l.016 1.318-.944.921a1.89 1.89 0 0 0 0 2.704l.944.92-.016 1.32a1.89 1.89 0 0 0 1.912 1.911l1.318-.016.921.944a1.89 1.89 0 0 0 2.704 0l.92-.944 1.32.016a1.89 1.89 0 0 0 1.911-1.912l-.016-1.318.944-.921a1.89 1.89 0 0 0 0-2.704l-.944-.92.016-1.32a1.89 1.89 0 0 0-1.912-1.911z\"},\"child\":[]}]})(props);\n};\nexport function BsPatchExclamationFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M10.067.87a2.89 2.89 0 0 0-4.134 0l-.622.638-.89-.011a2.89 2.89 0 0 0-2.924 2.924l.01.89-.636.622a2.89 2.89 0 0 0 0 4.134l.637.622-.011.89a2.89 2.89 0 0 0 2.924 2.924l.89-.01.622.636a2.89 2.89 0 0 0 4.134 0l.622-.637.89.011a2.89 2.89 0 0 0 2.924-2.924l-.01-.89.636-.622a2.89 2.89 0 0 0 0-4.134l-.637-.622.011-.89a2.89 2.89 0 0 0-2.924-2.924l-.89.01zM8 4c.535 0 .954.462.9.995l-.35 3.507a.552.552 0 0 1-1.1 0L7.1 4.995A.905.905 0 0 1 8 4m.002 6a1 1 0 1 1 0 2 1 1 0 0 1 0-2\"},\"child\":[]}]})(props);\n};\nexport function BsPatchExclamation (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.001 11a1 1 0 1 1 2 0 1 1 0 0 1-2 0M7.1 4.995a.905.905 0 1 1 1.8 0l-.35 3.507a.553.553 0 0 1-1.1 0z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m10.273 2.513-.921-.944.715-.698.622.637.89-.011a2.89 2.89 0 0 1 2.924 2.924l-.01.89.636.622a2.89 2.89 0 0 1 0 4.134l-.637.622.011.89a2.89 2.89 0 0 1-2.924 2.924l-.89-.01-.622.636a2.89 2.89 0 0 1-4.134 0l-.622-.637-.89.011a2.89 2.89 0 0 1-2.924-2.924l.01-.89-.636-.622a2.89 2.89 0 0 1 0-4.134l.637-.622-.011-.89a2.89 2.89 0 0 1 2.924-2.924l.89.01.622-.636a2.89 2.89 0 0 1 4.134 0l-.715.698a1.89 1.89 0 0 0-2.704 0l-.92.944-1.32-.016a1.89 1.89 0 0 0-1.911 1.912l.016 1.318-.944.921a1.89 1.89 0 0 0 0 2.704l.944.92-.016 1.32a1.89 1.89 0 0 0 1.912 1.911l1.318-.016.921.944a1.89 1.89 0 0 0 2.704 0l.92-.944 1.32.016a1.89 1.89 0 0 0 1.911-1.912l-.016-1.318.944-.921a1.89 1.89 0 0 0 0-2.704l-.944-.92.016-1.32a1.89 1.89 0 0 0-1.912-1.911z\"},\"child\":[]}]})(props);\n};\nexport function BsPatchMinusFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M10.067.87a2.89 2.89 0 0 0-4.134 0l-.622.638-.89-.011a2.89 2.89 0 0 0-2.924 2.924l.01.89-.636.622a2.89 2.89 0 0 0 0 4.134l.637.622-.011.89a2.89 2.89 0 0 0 2.924 2.924l.89-.01.622.636a2.89 2.89 0 0 0 4.134 0l.622-.637.89.011a2.89 2.89 0 0 0 2.924-2.924l-.01-.89.636-.622a2.89 2.89 0 0 0 0-4.134l-.637-.622.011-.89a2.89 2.89 0 0 0-2.924-2.924l-.89.01zM6 7.5h4a.5.5 0 0 1 0 1H6a.5.5 0 0 1 0-1\"},\"child\":[]}]})(props);\n};\nexport function BsPatchMinus (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M5.5 8a.5.5 0 0 1 .5-.5h4a.5.5 0 0 1 0 1H6a.5.5 0 0 1-.5-.5\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m10.273 2.513-.921-.944.715-.698.622.637.89-.011a2.89 2.89 0 0 1 2.924 2.924l-.01.89.636.622a2.89 2.89 0 0 1 0 4.134l-.637.622.011.89a2.89 2.89 0 0 1-2.924 2.924l-.89-.01-.622.636a2.89 2.89 0 0 1-4.134 0l-.622-.637-.89.011a2.89 2.89 0 0 1-2.924-2.924l.01-.89-.636-.622a2.89 2.89 0 0 1 0-4.134l.637-.622-.011-.89a2.89 2.89 0 0 1 2.924-2.924l.89.01.622-.636a2.89 2.89 0 0 1 4.134 0l-.715.698a1.89 1.89 0 0 0-2.704 0l-.92.944-1.32-.016a1.89 1.89 0 0 0-1.911 1.912l.016 1.318-.944.921a1.89 1.89 0 0 0 0 2.704l.944.92-.016 1.32a1.89 1.89 0 0 0 1.912 1.911l1.318-.016.921.944a1.89 1.89 0 0 0 2.704 0l.92-.944 1.32.016a1.89 1.89 0 0 0 1.911-1.912l-.016-1.318.944-.921a1.89 1.89 0 0 0 0-2.704l-.944-.92.016-1.32a1.89 1.89 0 0 0-1.912-1.911z\"},\"child\":[]}]})(props);\n};\nexport function BsPatchPlusFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M10.067.87a2.89 2.89 0 0 0-4.134 0l-.622.638-.89-.011a2.89 2.89 0 0 0-2.924 2.924l.01.89-.636.622a2.89 2.89 0 0 0 0 4.134l.637.622-.011.89a2.89 2.89 0 0 0 2.924 2.924l.89-.01.622.636a2.89 2.89 0 0 0 4.134 0l.622-.637.89.011a2.89 2.89 0 0 0 2.924-2.924l-.01-.89.636-.622a2.89 2.89 0 0 0 0-4.134l-.637-.622.011-.89a2.89 2.89 0 0 0-2.924-2.924l-.89.01zM8.5 6v1.5H10a.5.5 0 0 1 0 1H8.5V10a.5.5 0 0 1-1 0V8.5H6a.5.5 0 0 1 0-1h1.5V6a.5.5 0 0 1 1 0\"},\"child\":[]}]})(props);\n};\nexport function BsPatchPlus (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M8 5.5a.5.5 0 0 1 .5.5v1.5H10a.5.5 0 0 1 0 1H8.5V10a.5.5 0 0 1-1 0V8.5H6a.5.5 0 0 1 0-1h1.5V6a.5.5 0 0 1 .5-.5\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m10.273 2.513-.921-.944.715-.698.622.637.89-.011a2.89 2.89 0 0 1 2.924 2.924l-.01.89.636.622a2.89 2.89 0 0 1 0 4.134l-.637.622.011.89a2.89 2.89 0 0 1-2.924 2.924l-.89-.01-.622.636a2.89 2.89 0 0 1-4.134 0l-.622-.637-.89.011a2.89 2.89 0 0 1-2.924-2.924l.01-.89-.636-.622a2.89 2.89 0 0 1 0-4.134l.637-.622-.011-.89a2.89 2.89 0 0 1 2.924-2.924l.89.01.622-.636a2.89 2.89 0 0 1 4.134 0l-.715.698a1.89 1.89 0 0 0-2.704 0l-.92.944-1.32-.016a1.89 1.89 0 0 0-1.911 1.912l.016 1.318-.944.921a1.89 1.89 0 0 0 0 2.704l.944.92-.016 1.32a1.89 1.89 0 0 0 1.912 1.911l1.318-.016.921.944a1.89 1.89 0 0 0 2.704 0l.92-.944 1.32.016a1.89 1.89 0 0 0 1.911-1.912l-.016-1.318.944-.921a1.89 1.89 0 0 0 0-2.704l-.944-.92.016-1.32a1.89 1.89 0 0 0-1.912-1.911z\"},\"child\":[]}]})(props);\n};\nexport function BsPatchQuestionFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5.933.87a2.89 2.89 0 0 1 4.134 0l.622.638.89-.011a2.89 2.89 0 0 1 2.924 2.924l-.01.89.636.622a2.89 2.89 0 0 1 0 4.134l-.637.622.011.89a2.89 2.89 0 0 1-2.924 2.924l-.89-.01-.622.636a2.89 2.89 0 0 1-4.134 0l-.622-.637-.89.011a2.89 2.89 0 0 1-2.924-2.924l.01-.89-.636-.622a2.89 2.89 0 0 1 0-4.134l.637-.622-.011-.89a2.89 2.89 0 0 1 2.924-2.924l.89.01zM7.002 11a1 1 0 1 0 2 0 1 1 0 0 0-2 0m1.602-2.027c.04-.534.198-.815.846-1.26.674-.475 1.05-1.09 1.05-1.986 0-1.325-.92-2.227-2.262-2.227-1.02 0-1.792.492-2.1 1.29A1.7 1.7 0 0 0 6 5.48c0 .393.203.64.545.64.272 0 .455-.147.564-.51.158-.592.525-.915 1.074-.915.61 0 1.03.446 1.03 1.084 0 .563-.208.885-.822 1.325-.619.433-.926.914-.926 1.64v.111c0 .428.208.745.585.745.336 0 .504-.24.554-.627\"},\"child\":[]}]})(props);\n};\nexport function BsPatchQuestion (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.05 9.6c.336 0 .504-.24.554-.627.04-.534.198-.815.847-1.26.673-.475 1.049-1.09 1.049-1.986 0-1.325-.92-2.227-2.262-2.227-1.02 0-1.792.492-2.1 1.29A1.7 1.7 0 0 0 6 5.48c0 .393.203.64.545.64.272 0 .455-.147.564-.51.158-.592.525-.915 1.074-.915.61 0 1.03.446 1.03 1.084 0 .563-.208.885-.822 1.325-.619.433-.926.914-.926 1.64v.111c0 .428.208.745.585.745\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m10.273 2.513-.921-.944.715-.698.622.637.89-.011a2.89 2.89 0 0 1 2.924 2.924l-.01.89.636.622a2.89 2.89 0 0 1 0 4.134l-.637.622.011.89a2.89 2.89 0 0 1-2.924 2.924l-.89-.01-.622.636a2.89 2.89 0 0 1-4.134 0l-.622-.637-.89.011a2.89 2.89 0 0 1-2.924-2.924l.01-.89-.636-.622a2.89 2.89 0 0 1 0-4.134l.637-.622-.011-.89a2.89 2.89 0 0 1 2.924-2.924l.89.01.622-.636a2.89 2.89 0 0 1 4.134 0l-.715.698a1.89 1.89 0 0 0-2.704 0l-.92.944-1.32-.016a1.89 1.89 0 0 0-1.911 1.912l.016 1.318-.944.921a1.89 1.89 0 0 0 0 2.704l.944.92-.016 1.32a1.89 1.89 0 0 0 1.912 1.911l1.318-.016.921.944a1.89 1.89 0 0 0 2.704 0l.92-.944 1.32.016a1.89 1.89 0 0 0 1.911-1.912l-.016-1.318.944-.921a1.89 1.89 0 0 0 0-2.704l-.944-.92.016-1.32a1.89 1.89 0 0 0-1.912-1.911z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M7.001 11a1 1 0 1 1 2 0 1 1 0 0 1-2 0\"},\"child\":[]}]})(props);\n};\nexport function BsPauseBtnFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 12V4a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2m6.25-7C5.56 5 5 5.56 5 6.25v3.5a1.25 1.25 0 1 0 2.5 0v-3.5C7.5 5.56 6.94 5 6.25 5m3.5 0c-.69 0-1.25.56-1.25 1.25v3.5a1.25 1.25 0 1 0 2.5 0v-3.5C11 5.56 10.44 5 9.75 5\"},\"child\":[]}]})(props);\n};\nexport function BsPauseBtn (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.25 5C5.56 5 5 5.56 5 6.25v3.5a1.25 1.25 0 1 0 2.5 0v-3.5C7.5 5.56 6.94 5 6.25 5m3.5 0c-.69 0-1.25.56-1.25 1.25v3.5a1.25 1.25 0 1 0 2.5 0v-3.5C11 5.56 10.44 5 9.75 5\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M0 4a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm15 0a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1v8a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsPauseCircleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0M6.25 5C5.56 5 5 5.56 5 6.25v3.5a1.25 1.25 0 1 0 2.5 0v-3.5C7.5 5.56 6.94 5 6.25 5m3.5 0c-.69 0-1.25.56-1.25 1.25v3.5a1.25 1.25 0 1 0 2.5 0v-3.5C11 5.56 10.44 5 9.75 5\"},\"child\":[]}]})(props);\n};\nexport function BsPauseCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14m0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M5 6.25a1.25 1.25 0 1 1 2.5 0v3.5a1.25 1.25 0 1 1-2.5 0zm3.5 0a1.25 1.25 0 1 1 2.5 0v3.5a1.25 1.25 0 1 1-2.5 0z\"},\"child\":[]}]})(props);\n};\nexport function BsPauseFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5.5 3.5A1.5 1.5 0 0 1 7 5v6a1.5 1.5 0 0 1-3 0V5a1.5 1.5 0 0 1 1.5-1.5m5 0A1.5 1.5 0 0 1 12 5v6a1.5 1.5 0 0 1-3 0V5a1.5 1.5 0 0 1 1.5-1.5\"},\"child\":[]}]})(props);\n};\nexport function BsPause (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6 3.5a.5.5 0 0 1 .5.5v8a.5.5 0 0 1-1 0V4a.5.5 0 0 1 .5-.5m4 0a.5.5 0 0 1 .5.5v8a.5.5 0 0 1-1 0V4a.5.5 0 0 1 .5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsPaypal (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M14.06 3.713c.12-1.071-.093-1.832-.702-2.526C12.628.356 11.312 0 9.626 0H4.734a.7.7 0 0 0-.691.59L2.005 13.509a.42.42 0 0 0 .415.486h2.756l-.202 1.28a.628.628 0 0 0 .62.726H8.14c.429 0 .793-.31.862-.731l.025-.13.48-3.043.03-.164.001-.007a.35.35 0 0 1 .348-.297h.38c1.266 0 2.425-.256 3.345-.91q.57-.403.993-1.005a4.94 4.94 0 0 0 .88-2.195c.242-1.246.13-2.356-.57-3.154a2.7 2.7 0 0 0-.76-.59l-.094-.061ZM6.543 8.82a.7.7 0 0 1 .321-.079H8.3c2.82 0 5.027-1.144 5.672-4.456l.003-.016q.326.186.548.438c.546.623.679 1.535.45 2.71-.272 1.397-.866 2.307-1.663 2.874-.802.57-1.842.815-3.043.815h-.38a.87.87 0 0 0-.863.734l-.03.164-.48 3.043-.024.13-.001.004a.35.35 0 0 1-.348.296H5.595a.106.106 0 0 1-.105-.123l.208-1.32z\"},\"child\":[]}]})(props);\n};\nexport function BsPcDisplayHorizontal (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M1.5 0A1.5 1.5 0 0 0 0 1.5v7A1.5 1.5 0 0 0 1.5 10H6v1H1a1 1 0 0 0-1 1v3a1 1 0 0 0 1 1h14a1 1 0 0 0 1-1v-3a1 1 0 0 0-1-1h-5v-1h4.5A1.5 1.5 0 0 0 16 8.5v-7A1.5 1.5 0 0 0 14.5 0zm0 1h13a.5.5 0 0 1 .5.5v7a.5.5 0 0 1-.5.5h-13a.5.5 0 0 1-.5-.5v-7a.5.5 0 0 1 .5-.5M12 12.5a.5.5 0 1 1 1 0 .5.5 0 0 1-1 0m2 0a.5.5 0 1 1 1 0 .5.5 0 0 1-1 0M1.5 12h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1 0-1M1 14.25a.25.25 0 0 1 .25-.25h5.5a.25.25 0 1 1 0 .5h-5.5a.25.25 0 0 1-.25-.25\"},\"child\":[]}]})(props);\n};\nexport function BsPcDisplay (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 1a1 1 0 0 1 1-1h6a1 1 0 0 1 1 1v14a1 1 0 0 1-1 1H9a1 1 0 0 1-1-1zm1 13.5a.5.5 0 1 0 1 0 .5.5 0 0 0-1 0m2 0a.5.5 0 1 0 1 0 .5.5 0 0 0-1 0M9.5 1a.5.5 0 0 0 0 1h5a.5.5 0 0 0 0-1zM9 3.5a.5.5 0 0 0 .5.5h5a.5.5 0 0 0 0-1h-5a.5.5 0 0 0-.5.5M1.5 2A1.5 1.5 0 0 0 0 3.5v7A1.5 1.5 0 0 0 1.5 12H6v2h-.5a.5.5 0 0 0 0 1H7v-4H1.5a.5.5 0 0 1-.5-.5v-7a.5.5 0 0 1 .5-.5H7V2z\"},\"child\":[]}]})(props);\n};\nexport function BsPcHorizontal (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M1 6a1 1 0 0 0-1 1v3a1 1 0 0 0 1 1h14a1 1 0 0 0 1-1V7a1 1 0 0 0-1-1zm11.5 1a.5.5 0 1 1 0 1 .5.5 0 0 1 0-1m2 0a.5.5 0 1 1 0 1 .5.5 0 0 1 0-1M1 7.5a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5M1.25 9h5.5a.25.25 0 0 1 0 .5h-5.5a.25.25 0 0 1 0-.5\"},\"child\":[]}]})(props);\n};\nexport function BsPc (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5 0a1 1 0 0 0-1 1v14a1 1 0 0 0 1 1h6a1 1 0 0 0 1-1V1a1 1 0 0 0-1-1zm.5 14a.5.5 0 1 1 0 1 .5.5 0 0 1 0-1m2 0a.5.5 0 1 1 0 1 .5.5 0 0 1 0-1M5 1.5a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5M5.5 3h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1 0-1\"},\"child\":[]}]})(props);\n};\nexport function BsPciCardNetwork (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.5 9.5v-2h.214a.5.5 0 0 0 .5-.5v-.5h2.572V7a.5.5 0 0 0 .5.5h.214v2z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M0 1.5A.5.5 0 0 1 .5 1h1a.5.5 0 0 1 .5.5V4h13.5a.5.5 0 0 1 .5.5v7a.5.5 0 0 1-.5.5H2v2.5a.5.5 0 0 1-1 0V2H.5a.5.5 0 0 1-.5-.5m6.714 4a.5.5 0 0 0-.5.5v.5H6a.5.5 0 0 0-.5.5v3a.5.5 0 0 0 .5.5h5a.5.5 0 0 0 .5-.5V7a.5.5 0 0 0-.5-.5h-.214V6a.5.5 0 0 0-.5-.5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3 12.5h3.5v1a.5.5 0 0 1-.5.5H3.5a.5.5 0 0 1-.5-.5zm8 0H7v1a.5.5 0 0 0 .5.5h3a.5.5 0 0 0 .5-.5z\"},\"child\":[]}]})(props);\n};\nexport function BsPciCardSound (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.562 7.39 8 7.04v1.92l-.438-.35a.5.5 0 0 0-.312-.11H6.5v-1h.75a.5.5 0 0 0 .312-.11\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M.5 1a.5.5 0 0 0 0 1H1v12.5a.5.5 0 0 0 1 0V12h13.5a.5.5 0 0 0 .5-.5v-7a.5.5 0 0 0-.5-.5H2V1.5a.5.5 0 0 0-.5-.5zm11.619 3.881q.15.173.28.367c.484.726.768 1.7.768 2.752s-.284 2.026-.768 2.752q-.13.195-.28.367l-.71-.71q.082-.096.158-.212c.36-.54.6-1.315.6-2.197s-.24-1.657-.6-2.198a3 3 0 0 0-.157-.212zm-1.375 4.863L10 9c.057 0 .17-.035.291-.217.12-.178.209-.454.209-.783 0-.33-.09-.605-.209-.783C10.17 7.035 10.057 7 10 7l.744-.744c.15.113.278.254.38.406.242.364.376.839.376 1.338s-.134.974-.377 1.338a1.7 1.7 0 0 1-.379.406M9 6v4a.5.5 0 0 1-.812.39L7.075 9.5H6a.5.5 0 0 1-.5-.5V7a.5.5 0 0 1 .5-.5h1.075l1.113-.89A.5.5 0 0 1 9 6\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M6.5 12.5H3v1a.5.5 0 0 0 .5.5H6a.5.5 0 0 0 .5-.5zm.5 1v-1h4v1a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsPciCard (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 1.5A.5.5 0 0 1 .5 1h1a.5.5 0 0 1 .5.5V4h13.5a.5.5 0 0 1 .5.5v7a.5.5 0 0 1-.5.5H2v2.5a.5.5 0 0 1-1 0V2H.5a.5.5 0 0 1-.5-.5\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3 12.5h3.5v1a.5.5 0 0 1-.5.5H3.5a.5.5 0 0 1-.5-.5zm4 0h4v1a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5z\"},\"child\":[]}]})(props);\n};\nexport function BsPeaceFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M14 13.292A8 8 0 0 0 8.5.015v7.778zm-.708.708L8.5 9.206v6.778a7.97 7.97 0 0 0 4.792-1.986zM7.5 15.985V9.207L2.708 14A7.97 7.97 0 0 0 7.5 15.985M2 13.292A8 8 0 0 1 7.5.015v7.778z\"},\"child\":[]}]})(props);\n};\nexport function BsPeace (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.5 1.018a7 7 0 0 0-4.79 11.566L7.5 7.793zm1 0v6.775l4.79 4.79A7 7 0 0 0 8.5 1.018m4.084 12.273L8.5 9.207v5.775a6.97 6.97 0 0 0 4.084-1.691M7.5 14.982V9.207l-4.084 4.084A6.97 6.97 0 0 0 7.5 14.982M0 8a8 8 0 1 1 16 0A8 8 0 0 1 0 8\"},\"child\":[]}]})(props);\n};\nexport function BsPenFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m13.498.795.149-.149a1.207 1.207 0 1 1 1.707 1.708l-.149.148a1.5 1.5 0 0 1-.059 2.059L4.854 14.854a.5.5 0 0 1-.233.131l-4 1a.5.5 0 0 1-.606-.606l1-4a.5.5 0 0 1 .131-.232l9.642-9.642a.5.5 0 0 0-.642.056L6.854 4.854a.5.5 0 1 1-.708-.708L9.44.854A1.5 1.5 0 0 1 11.5.796a1.5 1.5 0 0 1 1.998-.001\"},\"child\":[]}]})(props);\n};\nexport function BsPen (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m13.498.795.149-.149a1.207 1.207 0 1 1 1.707 1.708l-.149.148a1.5 1.5 0 0 1-.059 2.059L4.854 14.854a.5.5 0 0 1-.233.131l-4 1a.5.5 0 0 1-.606-.606l1-4a.5.5 0 0 1 .131-.232l9.642-9.642a.5.5 0 0 0-.642.056L6.854 4.854a.5.5 0 1 1-.708-.708L9.44.854A1.5 1.5 0 0 1 11.5.796a1.5 1.5 0 0 1 1.998-.001m-.644.766a.5.5 0 0 0-.707 0L1.95 11.756l-.764 3.057 3.057-.764L14.44 3.854a.5.5 0 0 0 0-.708z\"},\"child\":[]}]})(props);\n};\nexport function BsPencilFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12.854.146a.5.5 0 0 0-.707 0L10.5 1.793 14.207 5.5l1.647-1.646a.5.5 0 0 0 0-.708zm.646 6.061L9.793 2.5 3.293 9H3.5a.5.5 0 0 1 .5.5v.5h.5a.5.5 0 0 1 .5.5v.5h.5a.5.5 0 0 1 .5.5v.5h.5a.5.5 0 0 1 .5.5v.207zm-7.468 7.468A.5.5 0 0 1 6 13.5V13h-.5a.5.5 0 0 1-.5-.5V12h-.5a.5.5 0 0 1-.5-.5V11h-.5a.5.5 0 0 1-.5-.5V10h-.5a.5.5 0 0 1-.175-.032l-.179.178a.5.5 0 0 0-.11.168l-2 5a.5.5 0 0 0 .65.65l5-2a.5.5 0 0 0 .168-.11z\"},\"child\":[]}]})(props);\n};\nexport function BsPencilSquare (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M15.502 1.94a.5.5 0 0 1 0 .706L14.459 3.69l-2-2L13.502.646a.5.5 0 0 1 .707 0l1.293 1.293zm-1.75 2.456-2-2L4.939 9.21a.5.5 0 0 0-.121.196l-.805 2.414a.25.25 0 0 0 .316.316l2.414-.805a.5.5 0 0 0 .196-.12l6.813-6.814z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M1 13.5A1.5 1.5 0 0 0 2.5 15h11a1.5 1.5 0 0 0 1.5-1.5v-6a.5.5 0 0 0-1 0v6a.5.5 0 0 1-.5.5h-11a.5.5 0 0 1-.5-.5v-11a.5.5 0 0 1 .5-.5H9a.5.5 0 0 0 0-1H2.5A1.5 1.5 0 0 0 1 2.5z\"},\"child\":[]}]})(props);\n};\nexport function BsPencil (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12.146.146a.5.5 0 0 1 .708 0l3 3a.5.5 0 0 1 0 .708l-10 10a.5.5 0 0 1-.168.11l-5 2a.5.5 0 0 1-.65-.65l2-5a.5.5 0 0 1 .11-.168zM11.207 2.5 13.5 4.793 14.793 3.5 12.5 1.207zm1.586 3L10.5 3.207 4 9.707V10h.5a.5.5 0 0 1 .5.5v.5h.5a.5.5 0 0 1 .5.5v.5h.293zm-9.761 5.175-.106.106-1.528 3.821 3.821-1.528.106-.106A.5.5 0 0 1 5 12.5V12h-.5a.5.5 0 0 1-.5-.5V11h-.5a.5.5 0 0 1-.468-.325\"},\"child\":[]}]})(props);\n};\nexport function BsPentagonFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.685.256a.5.5 0 0 1 .63 0l7.421 6.03a.5.5 0 0 1 .162.538l-2.788 8.827a.5.5 0 0 1-.476.349H3.366a.5.5 0 0 1-.476-.35L.102 6.825a.5.5 0 0 1 .162-.538l7.42-6.03Z\"},\"child\":[]}]})(props);\n};\nexport function BsPentagonHalf (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m8 1.288 6.578 5.345a.5.5 0 0 1 .161.539l-2.362 7.479a.5.5 0 0 1-.476.349H8zm7.898 5.536a.5.5 0 0 0-.162-.538L8.316.256a.5.5 0 0 0-.631 0L.264 6.286a.5.5 0 0 0-.162.538l2.788 8.827a.5.5 0 0 0 .476.349h9.268a.5.5 0 0 0 .476-.35z\"},\"child\":[]}]})(props);\n};\nexport function BsPentagon (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.685 1.545a.5.5 0 0 1 .63 0l6.263 5.088a.5.5 0 0 1 .161.539l-2.362 7.479a.5.5 0 0 1-.476.349H4.099a.5.5 0 0 1-.476-.35L1.26 7.173a.5.5 0 0 1 .161-.54l6.263-5.087Zm8.213 5.28a.5.5 0 0 0-.162-.54L8.316.257a.5.5 0 0 0-.631 0L.264 6.286a.5.5 0 0 0-.162.538l2.788 8.827a.5.5 0 0 0 .476.349h9.268a.5.5 0 0 0 .476-.35l2.788-8.826Z\"},\"child\":[]}]})(props);\n};\nexport function BsPeopleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7 14s-1 0-1-1 1-4 5-4 5 3 5 4-1 1-1 1zm4-6a3 3 0 1 0 0-6 3 3 0 0 0 0 6m-5.784 6A2.24 2.24 0 0 1 5 13c0-1.355.68-2.75 1.936-3.72A6.3 6.3 0 0 0 5 9c-4 0-5 3-5 4s1 1 1 1zM4.5 8a2.5 2.5 0 1 0 0-5 2.5 2.5 0 0 0 0 5\"},\"child\":[]}]})(props);\n};\nexport function BsPeople (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M15 14s1 0 1-1-1-4-5-4-5 3-5 4 1 1 1 1zm-7.978-1L7 12.996c.001-.264.167-1.03.76-1.72C8.312 10.629 9.282 10 11 10c1.717 0 2.687.63 3.24 1.276.593.69.758 1.457.76 1.72l-.008.002-.014.002zM11 7a2 2 0 1 0 0-4 2 2 0 0 0 0 4m3-2a3 3 0 1 1-6 0 3 3 0 0 1 6 0M6.936 9.28a6 6 0 0 0-1.23-.247A7 7 0 0 0 5 9c-4 0-5 3-5 4q0 1 1 1h4.216A2.24 2.24 0 0 1 5 13c0-1.01.377-2.042 1.09-2.904.243-.294.526-.569.846-.816M4.92 10A5.5 5.5 0 0 0 4 13H1c0-.26.164-1.03.76-1.724.545-.636 1.492-1.256 3.16-1.275ZM1.5 5.5a3 3 0 1 1 6 0 3 3 0 0 1-6 0m3-2a2 2 0 1 0 0 4 2 2 0 0 0 0-4\"},\"child\":[]}]})(props);\n};\nexport function BsPercent (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M13.442 2.558a.625.625 0 0 1 0 .884l-10 10a.625.625 0 1 1-.884-.884l10-10a.625.625 0 0 1 .884 0M4.5 6a1.5 1.5 0 1 1 0-3 1.5 1.5 0 0 1 0 3m0 1a2.5 2.5 0 1 0 0-5 2.5 2.5 0 0 0 0 5m7 6a1.5 1.5 0 1 1 0-3 1.5 1.5 0 0 1 0 3m0 1a2.5 2.5 0 1 0 0-5 2.5 2.5 0 0 0 0 5\"},\"child\":[]}]})(props);\n};\nexport function BsPersonAdd (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12.5 16a3.5 3.5 0 1 0 0-7 3.5 3.5 0 0 0 0 7m.5-5v1h1a.5.5 0 0 1 0 1h-1v1a.5.5 0 0 1-1 0v-1h-1a.5.5 0 0 1 0-1h1v-1a.5.5 0 0 1 1 0m-2-6a3 3 0 1 1-6 0 3 3 0 0 1 6 0M8 7a2 2 0 1 0 0-4 2 2 0 0 0 0 4\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8.256 14a4.5 4.5 0 0 1-.229-1.004H3c.001-.246.154-.986.832-1.664C4.484 10.68 5.711 10 8 10q.39 0 .74.025c.226-.341.496-.65.804-.918Q8.844 9.002 8 9c-5 0-6 3-6 4s1 1 1 1z\"},\"child\":[]}]})(props);\n};\nexport function BsPersonArmsUp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 3a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m5.93 6.704-.846 8.451a.768.768 0 0 0 1.523.203l.81-4.865a.59.59 0 0 1 1.165 0l.81 4.865a.768.768 0 0 0 1.523-.203l-.845-8.451A1.5 1.5 0 0 1 10.5 5.5L13 2.284a.796.796 0 0 0-1.239-.998L9.634 3.84a.7.7 0 0 1-.33.235c-.23.074-.665.176-1.304.176-.64 0-1.074-.102-1.305-.176a.7.7 0 0 1-.329-.235L4.239 1.286a.796.796 0 0 0-1.24.998l2.5 3.216c.317.316.475.758.43 1.204Z\"},\"child\":[]}]})(props);\n};\nexport function BsPersonBadgeFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 2a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2zm4.5 0a.5.5 0 0 0 0 1h3a.5.5 0 0 0 0-1zM8 11a3 3 0 1 0 0-6 3 3 0 0 0 0 6m5 2.755C12.146 12.825 10.623 12 8 12s-4.146.826-5 1.755V14a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsPersonBadge (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.5 2a.5.5 0 0 0 0 1h3a.5.5 0 0 0 0-1zM11 8a3 3 0 1 1-6 0 3 3 0 0 1 6 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4.5 0A2.5 2.5 0 0 0 2 2.5V14a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2.5A2.5 2.5 0 0 0 11.5 0zM3 2.5A1.5 1.5 0 0 1 4.5 1h7A1.5 1.5 0 0 1 13 2.5v10.795a4.2 4.2 0 0 0-.776-.492C11.392 12.387 10.063 12 8 12s-3.392.387-4.224.803a4.2 4.2 0 0 0-.776.492z\"},\"child\":[]}]})(props);\n};\nexport function BsPersonBoundingBox (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M1.5 1a.5.5 0 0 0-.5.5v3a.5.5 0 0 1-1 0v-3A1.5 1.5 0 0 1 1.5 0h3a.5.5 0 0 1 0 1zM11 .5a.5.5 0 0 1 .5-.5h3A1.5 1.5 0 0 1 16 1.5v3a.5.5 0 0 1-1 0v-3a.5.5 0 0 0-.5-.5h-3a.5.5 0 0 1-.5-.5M.5 11a.5.5 0 0 1 .5.5v3a.5.5 0 0 0 .5.5h3a.5.5 0 0 1 0 1h-3A1.5 1.5 0 0 1 0 14.5v-3a.5.5 0 0 1 .5-.5m15 0a.5.5 0 0 1 .5.5v3a1.5 1.5 0 0 1-1.5 1.5h-3a.5.5 0 0 1 0-1h3a.5.5 0 0 0 .5-.5v-3a.5.5 0 0 1 .5-.5\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3 14s-1 0-1-1 1-4 6-4 6 3 6 4-1 1-1 1zm8-9a3 3 0 1 1-6 0 3 3 0 0 1 6 0\"},\"child\":[]}]})(props);\n};\nexport function BsPersonCheckFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M15.854 5.146a.5.5 0 0 1 0 .708l-3 3a.5.5 0 0 1-.708 0l-1.5-1.5a.5.5 0 0 1 .708-.708L12.5 7.793l2.646-2.647a.5.5 0 0 1 .708 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M1 14s-1 0-1-1 1-4 6-4 6 3 6 4-1 1-1 1zm5-6a3 3 0 1 0 0-6 3 3 0 0 0 0 6\"},\"child\":[]}]})(props);\n};\nexport function BsPersonCheck (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12.5 16a3.5 3.5 0 1 0 0-7 3.5 3.5 0 0 0 0 7m1.679-4.493-1.335 2.226a.75.75 0 0 1-1.174.144l-.774-.773a.5.5 0 0 1 .708-.708l.547.548 1.17-1.951a.5.5 0 1 1 .858.514M11 5a3 3 0 1 1-6 0 3 3 0 0 1 6 0M8 7a2 2 0 1 0 0-4 2 2 0 0 0 0 4\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8.256 14a4.5 4.5 0 0 1-.229-1.004H3c.001-.246.154-.986.832-1.664C4.484 10.68 5.711 10 8 10q.39 0 .74.025c.226-.341.496-.65.804-.918Q8.844 9.002 8 9c-5 0-6 3-6 4s1 1 1 1z\"},\"child\":[]}]})(props);\n};\nexport function BsPersonCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M11 6a3 3 0 1 1-6 0 3 3 0 0 1 6 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M0 8a8 8 0 1 1 16 0A8 8 0 0 1 0 8m8-7a7 7 0 0 0-5.468 11.37C3.242 11.226 4.805 10 8 10s4.757 1.225 5.468 2.37A7 7 0 0 0 8 1\"},\"child\":[]}]})(props);\n};\nexport function BsPersonDashFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M11 7.5a.5.5 0 0 1 .5-.5h4a.5.5 0 0 1 0 1h-4a.5.5 0 0 1-.5-.5\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M1 14s-1 0-1-1 1-4 6-4 6 3 6 4-1 1-1 1zm5-6a3 3 0 1 0 0-6 3 3 0 0 0 0 6\"},\"child\":[]}]})(props);\n};\nexport function BsPersonDash (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12.5 16a3.5 3.5 0 1 0 0-7 3.5 3.5 0 0 0 0 7M11 12h3a.5.5 0 0 1 0 1h-3a.5.5 0 0 1 0-1m0-7a3 3 0 1 1-6 0 3 3 0 0 1 6 0M8 7a2 2 0 1 0 0-4 2 2 0 0 0 0 4\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8.256 14a4.5 4.5 0 0 1-.229-1.004H3c.001-.246.154-.986.832-1.664C4.484 10.68 5.711 10 8 10q.39 0 .74.025c.226-.341.496-.65.804-.918Q8.844 9.002 8 9c-5 0-6 3-6 4s1 1 1 1z\"},\"child\":[]}]})(props);\n};\nexport function BsPersonDown (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12.5 9a3.5 3.5 0 1 1 0 7 3.5 3.5 0 0 1 0-7m.354 5.854 1.5-1.5a.5.5 0 0 0-.708-.708l-.646.647V10.5a.5.5 0 0 0-1 0v2.793l-.646-.647a.5.5 0 0 0-.708.708l1.5 1.5a.5.5 0 0 0 .708 0M11 5a3 3 0 1 1-6 0 3 3 0 0 1 6 0M8 7a2 2 0 1 0 0-4 2 2 0 0 0 0 4\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8.256 14a4.5 4.5 0 0 1-.229-1.004H3c.001-.246.154-.986.832-1.664C4.484 10.68 5.711 10 8 10q.39 0 .74.025c.226-.341.496-.65.804-.918Q8.844 9.002 8 9c-5 0-6 3-6 4s1 1 1 1z\"},\"child\":[]}]})(props);\n};\nexport function BsPersonExclamation (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M11 5a3 3 0 1 1-6 0 3 3 0 0 1 6 0M8 7a2 2 0 1 0 0-4 2 2 0 0 0 0 4m.256 7a4.5 4.5 0 0 1-.229-1.004H3c.001-.246.154-.986.832-1.664C4.484 10.68 5.711 10 8 10q.39 0 .74.025c.226-.341.496-.65.804-.918Q8.844 9.002 8 9c-5 0-6 3-6 4s1 1 1 1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M16 12.5a3.5 3.5 0 1 1-7 0 3.5 3.5 0 0 1 7 0m-3.5-2a.5.5 0 0 0-.5.5v1.5a.5.5 0 0 0 1 0V11a.5.5 0 0 0-.5-.5m0 4a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1\"},\"child\":[]}]})(props);\n};\nexport function BsPersonFillAdd (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12.5 16a3.5 3.5 0 1 0 0-7 3.5 3.5 0 0 0 0 7m.5-5v1h1a.5.5 0 0 1 0 1h-1v1a.5.5 0 0 1-1 0v-1h-1a.5.5 0 0 1 0-1h1v-1a.5.5 0 0 1 1 0m-2-6a3 3 0 1 1-6 0 3 3 0 0 1 6 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 13c0 1 1 1 1 1h5.256A4.5 4.5 0 0 1 8 12.5a4.5 4.5 0 0 1 1.544-3.393Q8.844 9.002 8 9c-5 0-6 3-6 4\"},\"child\":[]}]})(props);\n};\nexport function BsPersonFillCheck (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12.5 16a3.5 3.5 0 1 0 0-7 3.5 3.5 0 0 0 0 7m1.679-4.493-1.335 2.226a.75.75 0 0 1-1.174.144l-.774-.773a.5.5 0 0 1 .708-.708l.547.548 1.17-1.951a.5.5 0 1 1 .858.514M11 5a3 3 0 1 1-6 0 3 3 0 0 1 6 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 13c0 1 1 1 1 1h5.256A4.5 4.5 0 0 1 8 12.5a4.5 4.5 0 0 1 1.544-3.393Q8.844 9.002 8 9c-5 0-6 3-6 4\"},\"child\":[]}]})(props);\n};\nexport function BsPersonFillDash (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12.5 16a3.5 3.5 0 1 0 0-7 3.5 3.5 0 0 0 0 7M11 12h3a.5.5 0 0 1 0 1h-3a.5.5 0 0 1 0-1m0-7a3 3 0 1 1-6 0 3 3 0 0 1 6 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 13c0 1 1 1 1 1h5.256A4.5 4.5 0 0 1 8 12.5a4.5 4.5 0 0 1 1.544-3.393Q8.844 9.002 8 9c-5 0-6 3-6 4\"},\"child\":[]}]})(props);\n};\nexport function BsPersonFillDown (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12.5 9a3.5 3.5 0 1 1 0 7 3.5 3.5 0 0 1 0-7m.354 5.854 1.5-1.5a.5.5 0 0 0-.708-.708l-.646.647V10.5a.5.5 0 0 0-1 0v2.793l-.646-.647a.5.5 0 0 0-.708.708l1.5 1.5a.5.5 0 0 0 .708 0M11 5a3 3 0 1 1-6 0 3 3 0 0 1 6 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 13c0 1 1 1 1 1h5.256A4.5 4.5 0 0 1 8 12.5a4.5 4.5 0 0 1 1.544-3.393Q8.844 9.002 8 9c-5 0-6 3-6 4\"},\"child\":[]}]})(props);\n};\nexport function BsPersonFillExclamation (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M11 5a3 3 0 1 1-6 0 3 3 0 0 1 6 0m-9 8c0 1 1 1 1 1h5.256A4.5 4.5 0 0 1 8 12.5a4.5 4.5 0 0 1 1.544-3.393Q8.844 9.002 8 9c-5 0-6 3-6 4\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M16 12.5a3.5 3.5 0 1 1-7 0 3.5 3.5 0 0 1 7 0m-3.5-2a.5.5 0 0 0-.5.5v1.5a.5.5 0 0 0 1 0V11a.5.5 0 0 0-.5-.5m0 4a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1\"},\"child\":[]}]})(props);\n};\nexport function BsPersonFillGear (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M11 5a3 3 0 1 1-6 0 3 3 0 0 1 6 0m-9 8c0 1 1 1 1 1h5.256A4.5 4.5 0 0 1 8 12.5a4.5 4.5 0 0 1 1.544-3.393Q8.844 9.002 8 9c-5 0-6 3-6 4m9.886-3.54c.18-.613 1.048-.613 1.229 0l.043.148a.64.64 0 0 0 .921.382l.136-.074c.561-.306 1.175.308.87.869l-.075.136a.64.64 0 0 0 .382.92l.149.045c.612.18.612 1.048 0 1.229l-.15.043a.64.64 0 0 0-.38.921l.074.136c.305.561-.309 1.175-.87.87l-.136-.075a.64.64 0 0 0-.92.382l-.045.149c-.18.612-1.048.612-1.229 0l-.043-.15a.64.64 0 0 0-.921-.38l-.136.074c-.561.305-1.175-.309-.87-.87l.075-.136a.64.64 0 0 0-.382-.92l-.148-.045c-.613-.18-.613-1.048 0-1.229l.148-.043a.64.64 0 0 0 .382-.921l-.074-.136c-.306-.561.308-1.175.869-.87l.136.075a.64.64 0 0 0 .92-.382zM14 12.5a1.5 1.5 0 1 0-3 0 1.5 1.5 0 0 0 3 0\"},\"child\":[]}]})(props);\n};\nexport function BsPersonFillLock (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M11 5a3 3 0 1 1-6 0 3 3 0 0 1 6 0m-9 8c0 1 1 1 1 1h5v-1a2 2 0 0 1 .01-.2 4.49 4.49 0 0 1 1.534-3.693Q8.844 9.002 8 9c-5 0-6 3-6 4m7 0a1 1 0 0 1 1-1v-1a2 2 0 1 1 4 0v1a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1h-4a1 1 0 0 1-1-1zm3-3a1 1 0 0 0-1 1v1h2v-1a1 1 0 0 0-1-1\"},\"child\":[]}]})(props);\n};\nexport function BsPersonFillSlash (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M13.879 10.414a2.501 2.501 0 0 0-3.465 3.465zm.707.707-3.465 3.465a2.501 2.501 0 0 0 3.465-3.465m-4.56-1.096a3.5 3.5 0 1 1 4.949 4.95 3.5 3.5 0 0 1-4.95-4.95ZM11 5a3 3 0 1 1-6 0 3 3 0 0 1 6 0m-9 8c0 1 1 1 1 1h5.256A4.5 4.5 0 0 1 8 12.5a4.5 4.5 0 0 1 1.544-3.393Q8.844 9.002 8 9c-5 0-6 3-6 4\"},\"child\":[]}]})(props);\n};\nexport function BsPersonFillUp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12.5 16a3.5 3.5 0 1 0 0-7 3.5 3.5 0 0 0 0 7m.354-5.854 1.5 1.5a.5.5 0 0 1-.708.708L13 11.707V14.5a.5.5 0 0 1-1 0v-2.793l-.646.647a.5.5 0 0 1-.708-.708l1.5-1.5a.5.5 0 0 1 .708 0M11 5a3 3 0 1 1-6 0 3 3 0 0 1 6 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 13c0 1 1 1 1 1h5.256A4.5 4.5 0 0 1 8 12.5a4.5 4.5 0 0 1 1.544-3.393Q8.844 9.002 8 9c-5 0-6 3-6 4\"},\"child\":[]}]})(props);\n};\nexport function BsPersonFillX (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M11 5a3 3 0 1 1-6 0 3 3 0 0 1 6 0m-9 8c0 1 1 1 1 1h5.256A4.5 4.5 0 0 1 8 12.5a4.5 4.5 0 0 1 1.544-3.393Q8.844 9.002 8 9c-5 0-6 3-6 4\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M12.5 16a3.5 3.5 0 1 0 0-7 3.5 3.5 0 0 0 0 7m-.646-4.854.646.647.646-.647a.5.5 0 0 1 .708.708l-.647.646.647.646a.5.5 0 0 1-.708.708l-.646-.647-.646.647a.5.5 0 0 1-.708-.708l.647-.646-.647-.646a.5.5 0 0 1 .708-.708\"},\"child\":[]}]})(props);\n};\nexport function BsPersonFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3 14s-1 0-1-1 1-4 6-4 6 3 6 4-1 1-1 1zm5-6a3 3 0 1 0 0-6 3 3 0 0 0 0 6\"},\"child\":[]}]})(props);\n};\nexport function BsPersonGear (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M11 5a3 3 0 1 1-6 0 3 3 0 0 1 6 0M8 7a2 2 0 1 0 0-4 2 2 0 0 0 0 4m.256 7a4.5 4.5 0 0 1-.229-1.004H3c.001-.246.154-.986.832-1.664C4.484 10.68 5.711 10 8 10q.39 0 .74.025c.226-.341.496-.65.804-.918Q8.844 9.002 8 9c-5 0-6 3-6 4s1 1 1 1zm3.63-4.54c.18-.613 1.048-.613 1.229 0l.043.148a.64.64 0 0 0 .921.382l.136-.074c.561-.306 1.175.308.87.869l-.075.136a.64.64 0 0 0 .382.92l.149.045c.612.18.612 1.048 0 1.229l-.15.043a.64.64 0 0 0-.38.921l.074.136c.305.561-.309 1.175-.87.87l-.136-.075a.64.64 0 0 0-.92.382l-.045.149c-.18.612-1.048.612-1.229 0l-.043-.15a.64.64 0 0 0-.921-.38l-.136.074c-.561.305-1.175-.309-.87-.87l.075-.136a.64.64 0 0 0-.382-.92l-.148-.045c-.613-.18-.613-1.048 0-1.229l.148-.043a.64.64 0 0 0 .382-.921l-.074-.136c-.306-.561.308-1.175.869-.87l.136.075a.64.64 0 0 0 .92-.382zM14 12.5a1.5 1.5 0 1 0-3 0 1.5 1.5 0 0 0 3 0\"},\"child\":[]}]})(props);\n};\nexport function BsPersonHeart (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9 5a3 3 0 1 1-6 0 3 3 0 0 1 6 0m-9 8c0 1 1 1 1 1h10s1 0 1-1-1-4-6-4-6 3-6 4m13.5-8.09c1.387-1.425 4.855 1.07 0 4.277-4.854-3.207-1.387-5.702 0-4.276Z\"},\"child\":[]}]})(props);\n};\nexport function BsPersonHearts (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M11.5 1.246c.832-.855 2.913.642 0 2.566-2.913-1.924-.832-3.421 0-2.566M9 5a3 3 0 1 1-6 0 3 3 0 0 1 6 0m-9 8c0 1 1 1 1 1h10s1 0 1-1-1-4-6-4-6 3-6 4m13.5-8.09c1.387-1.425 4.855 1.07 0 4.277-4.854-3.207-1.387-5.702 0-4.276ZM15 2.165c.555-.57 1.942.428 0 1.711-1.942-1.283-.555-2.281 0-1.71Z\"},\"child\":[]}]})(props);\n};\nexport function BsPersonLinesFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6 8a3 3 0 1 0 0-6 3 3 0 0 0 0 6m-5 6s-1 0-1-1 1-4 6-4 6 3 6 4-1 1-1 1zM11 3.5a.5.5 0 0 1 .5-.5h4a.5.5 0 0 1 0 1h-4a.5.5 0 0 1-.5-.5m.5 2.5a.5.5 0 0 0 0 1h4a.5.5 0 0 0 0-1zm2 3a.5.5 0 0 0 0 1h2a.5.5 0 0 0 0-1zm0 3a.5.5 0 0 0 0 1h2a.5.5 0 0 0 0-1z\"},\"child\":[]}]})(props);\n};\nexport function BsPersonLock (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M11 5a3 3 0 1 1-6 0 3 3 0 0 1 6 0M8 7a2 2 0 1 0 0-4 2 2 0 0 0 0 4m0 5.996V14H3s-1 0-1-1 1-4 6-4q.845.002 1.544.107a4.5 4.5 0 0 0-.803.918A11 11 0 0 0 8 10c-2.29 0-3.516.68-4.168 1.332-.678.678-.83 1.418-.832 1.664zM9 13a1 1 0 0 1 1-1v-1a2 2 0 1 1 4 0v1a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1h-4a1 1 0 0 1-1-1zm3-3a1 1 0 0 0-1 1v1h2v-1a1 1 0 0 0-1-1\"},\"child\":[]}]})(props);\n};\nexport function BsPersonPlusFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M1 14s-1 0-1-1 1-4 6-4 6 3 6 4-1 1-1 1zm5-6a3 3 0 1 0 0-6 3 3 0 0 0 0 6\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M13.5 5a.5.5 0 0 1 .5.5V7h1.5a.5.5 0 0 1 0 1H14v1.5a.5.5 0 0 1-1 0V8h-1.5a.5.5 0 0 1 0-1H13V5.5a.5.5 0 0 1 .5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsPersonPlus (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6 8a3 3 0 1 0 0-6 3 3 0 0 0 0 6m2-3a2 2 0 1 1-4 0 2 2 0 0 1 4 0m4 8c0 1-1 1-1 1H1s-1 0-1-1 1-4 6-4 6 3 6 4m-1-.004c-.001-.246-.154-.986-.832-1.664C9.516 10.68 8.289 10 6 10s-3.516.68-4.168 1.332c-.678.678-.83 1.418-.832 1.664z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M13.5 5a.5.5 0 0 1 .5.5V7h1.5a.5.5 0 0 1 0 1H14v1.5a.5.5 0 0 1-1 0V8h-1.5a.5.5 0 0 1 0-1H13V5.5a.5.5 0 0 1 .5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsPersonRaisedHand (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6 6.207v9.043a.75.75 0 0 0 1.5 0V10.5a.5.5 0 0 1 1 0v4.75a.75.75 0 0 0 1.5 0v-8.5a.25.25 0 1 1 .5 0v2.5a.75.75 0 0 0 1.5 0V6.5a3 3 0 0 0-3-3H6.236a1 1 0 0 1-.447-.106l-.33-.165A.83.83 0 0 1 5 2.488V.75a.75.75 0 0 0-1.5 0v2.083c0 .715.404 1.37 1.044 1.689L5.5 5c.32.32.5.754.5 1.207\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8 3a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3\"},\"child\":[]}]})(props);\n};\nexport function BsPersonRolodex (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 9.05a2.5 2.5 0 1 0 0-5 2.5 2.5 0 0 0 0 5\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M1 1a1 1 0 0 0-1 1v11a1 1 0 0 0 1 1h.5a.5.5 0 0 0 .5-.5.5.5 0 0 1 1 0 .5.5 0 0 0 .5.5h9a.5.5 0 0 0 .5-.5.5.5 0 0 1 1 0 .5.5 0 0 0 .5.5h.5a1 1 0 0 0 1-1V3a1 1 0 0 0-1-1H6.707L6 1.293A1 1 0 0 0 5.293 1zm0 1h4.293L6 2.707A1 1 0 0 0 6.707 3H15v10h-.085a1.5 1.5 0 0 0-2.4-.63C11.885 11.223 10.554 10 8 10c-2.555 0-3.886 1.224-4.514 2.37a1.5 1.5 0 0 0-2.4.63H1z\"},\"child\":[]}]})(props);\n};\nexport function BsPersonSlash (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M13.879 10.414a2.501 2.501 0 0 0-3.465 3.465zm.707.707-3.465 3.465a2.501 2.501 0 0 0 3.465-3.465m-4.56-1.096a3.5 3.5 0 1 1 4.949 4.95 3.5 3.5 0 0 1-4.95-4.95ZM11 5a3 3 0 1 1-6 0 3 3 0 0 1 6 0M8 7a2 2 0 1 0 0-4 2 2 0 0 0 0 4m.256 7a4.5 4.5 0 0 1-.229-1.004H3c.001-.246.154-.986.832-1.664C4.484 10.68 5.711 10 8 10q.39 0 .74.025c.226-.341.496-.65.804-.918Q8.844 9.002 8 9c-5 0-6 3-6 4s1 1 1 1z\"},\"child\":[]}]})(props);\n};\nexport function BsPersonSquare (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M11 6a3 3 0 1 1-6 0 3 3 0 0 1 6 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm12 1a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1v-1c0-1-1-4-6-4s-6 3-6 4v1a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsPersonStandingDress (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 3a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3m-.5 12.25V12h1v3.25a.75.75 0 0 0 1.5 0V12h1l-1-5v-.215a.285.285 0 0 1 .56-.078l.793 2.777a.711.711 0 1 0 1.364-.405l-1.065-3.461A3 3 0 0 0 8.784 3.5H7.216a3 3 0 0 0-2.868 2.118L3.283 9.079a.711.711 0 1 0 1.365.405l.793-2.777a.285.285 0 0 1 .56.078V7l-1 5h1v3.25a.75.75 0 0 0 1.5 0Z\"},\"child\":[]}]})(props);\n};\nexport function BsPersonStanding (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 3a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3M6 6.75v8.5a.75.75 0 0 0 1.5 0V10.5a.5.5 0 0 1 1 0v4.75a.75.75 0 0 0 1.5 0v-8.5a.25.25 0 1 1 .5 0v2.5a.75.75 0 0 0 1.5 0V6.5a3 3 0 0 0-3-3H7a3 3 0 0 0-3 3v2.75a.75.75 0 0 0 1.5 0v-2.5a.25.25 0 0 1 .5 0\"},\"child\":[]}]})(props);\n};\nexport function BsPersonUp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12.5 16a3.5 3.5 0 1 0 0-7 3.5 3.5 0 0 0 0 7m.354-5.854 1.5 1.5a.5.5 0 0 1-.708.708L13 11.707V14.5a.5.5 0 0 1-1 0v-2.793l-.646.647a.5.5 0 0 1-.708-.708l1.5-1.5a.5.5 0 0 1 .708 0M11 5a3 3 0 1 1-6 0 3 3 0 0 1 6 0M8 7a2 2 0 1 0 0-4 2 2 0 0 0 0 4\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8.256 14a4.5 4.5 0 0 1-.229-1.004H3c.001-.246.154-.986.832-1.664C4.484 10.68 5.711 10 8 10q.39 0 .74.025c.226-.341.496-.65.804-.918Q8.844 9.002 8 9c-5 0-6 3-6 4s1 1 1 1z\"},\"child\":[]}]})(props);\n};\nexport function BsPersonVcardFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 4a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm9 1.5a.5.5 0 0 0 .5.5h4a.5.5 0 0 0 0-1h-4a.5.5 0 0 0-.5.5M9 8a.5.5 0 0 0 .5.5h4a.5.5 0 0 0 0-1h-4A.5.5 0 0 0 9 8m1 2.5a.5.5 0 0 0 .5.5h3a.5.5 0 0 0 0-1h-3a.5.5 0 0 0-.5.5m-1 2C9 10.567 7.21 9 5 9c-2.086 0-3.8 1.398-3.984 3.181A1 1 0 0 0 2 13h6.96q.04-.245.04-.5M7 6a2 2 0 1 0-4 0 2 2 0 0 0 4 0\"},\"child\":[]}]})(props);\n};\nexport function BsPersonVcard (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5 8a2 2 0 1 0 0-4 2 2 0 0 0 0 4m4-2.5a.5.5 0 0 1 .5-.5h4a.5.5 0 0 1 0 1h-4a.5.5 0 0 1-.5-.5M9 8a.5.5 0 0 1 .5-.5h4a.5.5 0 0 1 0 1h-4A.5.5 0 0 1 9 8m1 2.5a.5.5 0 0 1 .5-.5h3a.5.5 0 0 1 0 1h-3a.5.5 0 0 1-.5-.5\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 2a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2zM1 4a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1v8a1 1 0 0 1-1 1H8.96q.04-.245.04-.5C9 10.567 7.21 9 5 9c-2.086 0-3.8 1.398-3.984 3.181A1 1 0 0 1 1 12z\"},\"child\":[]}]})(props);\n};\nexport function BsPersonVideo (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 9.05a2.5 2.5 0 1 0 0-5 2.5 2.5 0 0 0 0 5\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 2a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2zm10.798 11c-.453-1.27-1.76-3-4.798-3-3.037 0-4.345 1.73-4.798 3H2a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1v8a1 1 0 0 1-1 1z\"},\"child\":[]}]})(props);\n};\nexport function BsPersonVideo2 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M10 9.05a2.5 2.5 0 1 0 0-5 2.5 2.5 0 0 0 0 5\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 1a2 2 0 0 0-2 2v9a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V3a2 2 0 0 0-2-2zM1 3a1 1 0 0 1 1-1h2v2H1zm4 10V2h9a1 1 0 0 1 1 1v9c0 .285-.12.543-.31.725C14.15 11.494 12.822 10 10 10c-3.037 0-4.345 1.73-4.798 3zm-4-2h3v2H2a1 1 0 0 1-1-1zm3-1H1V8h3zm0-3H1V5h3z\"},\"child\":[]}]})(props);\n};\nexport function BsPersonVideo3 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M14 9.5a2 2 0 1 1-4 0 2 2 0 0 1 4 0m-6 5.7c0 .8.8.8.8.8h6.4s.8 0 .8-.8-.8-3.2-4-3.2-4 2.4-4 3.2\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 2a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h5.243c.122-.326.295-.668.526-1H2a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1v7.81c.353.23.656.496.91.783Q16 12.312 16 12V4a2 2 0 0 0-2-2z\"},\"child\":[]}]})(props);\n};\nexport function BsPersonWalking (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.5 1.5a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0M6.44 3.752A.75.75 0 0 1 7 3.5h1.445c.742 0 1.32.643 1.243 1.38l-.43 4.083a1.8 1.8 0 0 1-.088.395l-.318.906.213.242a.8.8 0 0 1 .114.175l2 4.25a.75.75 0 1 1-1.357.638l-1.956-4.154-1.68-1.921A.75.75 0 0 1 6 8.96l.138-2.613-.435.489-.464 2.786a.75.75 0 1 1-1.48-.246l.5-3a.75.75 0 0 1 .18-.375l2-2.25Z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M6.25 11.745v-1.418l1.204 1.375.261.524a.8.8 0 0 1-.12.231l-2.5 3.25a.75.75 0 1 1-1.19-.914zm4.22-4.215-.494-.494.205-1.843.006-.067 1.124 1.124h1.44a.75.75 0 0 1 0 1.5H11a.75.75 0 0 1-.531-.22Z\"},\"child\":[]}]})(props);\n};\nexport function BsPersonWheelchair (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12 3a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3m-.663 2.146a1.5 1.5 0 0 0-.47-2.115l-2.5-1.508a1.5 1.5 0 0 0-1.676.086l-2.329 1.75a.866.866 0 0 0 1.051 1.375L7.361 3.37l.922.71-2.038 2.445A4.73 4.73 0 0 0 2.628 7.67l1.064 1.065a3.25 3.25 0 0 1 4.574 4.574l1.064 1.063a4.73 4.73 0 0 0 1.09-3.998l1.043-.292-.187 2.991a.872.872 0 1 0 1.741.098l.206-4.121A1 1 0 0 0 12.224 8h-2.79zM3.023 9.48a3.25 3.25 0 0 0 4.496 4.496l1.077 1.077a4.75 4.75 0 0 1-6.65-6.65z\"},\"child\":[]}]})(props);\n};\nexport function BsPersonWorkspace (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4 16s-1 0-1-1 1-4 5-4 5 3 5 4-1 1-1 1zm4-5.95a2.5 2.5 0 1 0 0-5 2.5 2.5 0 0 0 0 5\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 1a2 2 0 0 0-2 2v9.5A1.5 1.5 0 0 0 1.5 14h.653a5.4 5.4 0 0 1 1.066-2H1V3a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1v9h-2.219c.554.654.89 1.373 1.066 2h.653a1.5 1.5 0 0 0 1.5-1.5V3a2 2 0 0 0-2-2z\"},\"child\":[]}]})(props);\n};\nexport function BsPersonXFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M1 14s-1 0-1-1 1-4 6-4 6 3 6 4-1 1-1 1zm5-6a3 3 0 1 0 0-6 3 3 0 0 0 0 6m6.146-2.854a.5.5 0 0 1 .708 0L14 6.293l1.146-1.147a.5.5 0 0 1 .708.708L14.707 7l1.147 1.146a.5.5 0 0 1-.708.708L14 7.707l-1.146 1.147a.5.5 0 0 1-.708-.708L13.293 7l-1.147-1.146a.5.5 0 0 1 0-.708\"},\"child\":[]}]})(props);\n};\nexport function BsPersonX (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M11 5a3 3 0 1 1-6 0 3 3 0 0 1 6 0M8 7a2 2 0 1 0 0-4 2 2 0 0 0 0 4m.256 7a4.5 4.5 0 0 1-.229-1.004H3c.001-.246.154-.986.832-1.664C4.484 10.68 5.711 10 8 10q.39 0 .74.025c.226-.341.496-.65.804-.918Q8.844 9.002 8 9c-5 0-6 3-6 4s1 1 1 1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M12.5 16a3.5 3.5 0 1 0 0-7 3.5 3.5 0 0 0 0 7m-.646-4.854.646.647.646-.647a.5.5 0 0 1 .708.708l-.647.646.647.646a.5.5 0 0 1-.708.708l-.646-.647-.646.647a.5.5 0 0 1-.708-.708l.647-.646-.647-.646a.5.5 0 0 1 .708-.708\"},\"child\":[]}]})(props);\n};\nexport function BsPerson (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 8a3 3 0 1 0 0-6 3 3 0 0 0 0 6m2-3a2 2 0 1 1-4 0 2 2 0 0 1 4 0m4 8c0 1-1 1-1 1H3s-1 0-1-1 1-4 6-4 6 3 6 4m-1-.004c-.001-.246-.154-.986-.832-1.664C11.516 10.68 10.289 10 8 10s-3.516.68-4.168 1.332c-.678.678-.83 1.418-.832 1.664z\"},\"child\":[]}]})(props);\n};\nexport function BsPhoneFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3 2a2 2 0 0 1 2-2h6a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2zm6 11a1 1 0 1 0-2 0 1 1 0 0 0 2 0\"},\"child\":[]}]})(props);\n};\nexport function BsPhoneFlip (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M11 1H5a1 1 0 0 0-1 1v6a.5.5 0 0 1-1 0V2a2 2 0 0 1 2-2h6a2 2 0 0 1 2 2v6a.5.5 0 0 1-1 0V2a1 1 0 0 0-1-1m1 13a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1v-2a.5.5 0 0 0-1 0v2a2 2 0 0 0 2 2h6a2 2 0 0 0 2-2v-2a.5.5 0 0 0-1 0zM1.713 7.954a.5.5 0 1 0-.419-.908c-.347.16-.654.348-.882.57C.184 7.842 0 8.139 0 8.5c0 .546.408.94.823 1.201.44.278 1.043.51 1.745.696C3.978 10.773 5.898 11 8 11q.148 0 .294-.002l-1.148 1.148a.5.5 0 0 0 .708.708l2-2a.5.5 0 0 0 0-.708l-2-2a.5.5 0 1 0-.708.708l1.145 1.144L8 10c-2.04 0-3.87-.221-5.174-.569-.656-.175-1.151-.374-1.47-.575C1.012 8.639 1 8.506 1 8.5c0-.003 0-.059.112-.17.115-.112.31-.242.6-.376Zm12.993-.908a.5.5 0 0 0-.419.908c.292.134.486.264.6.377.113.11.113.166.113.169s0 .065-.13.187c-.132.122-.352.26-.677.4-.645.28-1.596.523-2.763.687a.5.5 0 0 0 .14.99c1.212-.17 2.26-.43 3.02-.758.38-.164.713-.357.96-.587.246-.229.45-.537.45-.919 0-.362-.184-.66-.412-.883s-.535-.411-.882-.571M7.5 2a.5.5 0 0 0 0 1h1a.5.5 0 0 0 0-1z\"},\"child\":[]}]})(props);\n};\nexport function BsPhoneLandscapeFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 12.5a2 2 0 0 1-2-2v-6a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v6a2 2 0 0 1-2 2zm11-6a1 1 0 1 0 0 2 1 1 0 0 0 0-2\"},\"child\":[]}]})(props);\n};\nexport function BsPhoneLandscape (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M1 4.5a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1v6a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1zm-1 6a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-6a2 2 0 0 0-2-2H2a2 2 0 0 0-2 2z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M14 7.5a1 1 0 1 0-2 0 1 1 0 0 0 2 0\"},\"child\":[]}]})(props);\n};\nexport function BsPhoneVibrateFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4 4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2zm5 7a1 1 0 1 0-2 0 1 1 0 0 0 2 0M1.807 4.734a.5.5 0 1 0-.884-.468A8 8 0 0 0 0 8c0 1.347.334 2.618.923 3.734a.5.5 0 1 0 .884-.468A7 7 0 0 1 1 8c0-1.18.292-2.292.807-3.266m13.27-.468a.5.5 0 0 0-.884.468C14.708 5.708 15 6.819 15 8c0 1.18-.292 2.292-.807 3.266a.5.5 0 0 0 .884.468A8 8 0 0 0 16 8a8 8 0 0 0-.923-3.734M3.34 6.182a.5.5 0 1 0-.93-.364A6 6 0 0 0 2 8c0 .769.145 1.505.41 2.182a.5.5 0 1 0 .93-.364A5 5 0 0 1 3 8c0-.642.12-1.255.34-1.818m10.25-.364a.5.5 0 0 0-.93.364c.22.563.34 1.176.34 1.818s-.12 1.255-.34 1.818a.5.5 0 0 0 .93.364C13.856 9.505 14 8.769 14 8s-.145-1.505-.41-2.182\"},\"child\":[]}]})(props);\n};\nexport function BsPhoneVibrate (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M10 3a1 1 0 0 1 1 1v8a1 1 0 0 1-1 1H6a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1zM6 2a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h4a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8 12a1 1 0 1 0 0-2 1 1 0 0 0 0 2M1.599 4.058a.5.5 0 0 1 .208.676A7 7 0 0 0 1 8c0 1.18.292 2.292.807 3.266a.5.5 0 0 1-.884.468A8 8 0 0 1 0 8c0-1.347.334-2.619.923-3.734a.5.5 0 0 1 .676-.208m12.802 0a.5.5 0 0 1 .676.208A8 8 0 0 1 16 8a8 8 0 0 1-.923 3.734.5.5 0 0 1-.884-.468A7 7 0 0 0 15 8c0-1.18-.292-2.292-.807-3.266a.5.5 0 0 1 .208-.676M3.057 5.534a.5.5 0 0 1 .284.648A5 5 0 0 0 3 8c0 .642.12 1.255.34 1.818a.5.5 0 1 1-.93.364A6 6 0 0 1 2 8c0-.769.145-1.505.41-2.182a.5.5 0 0 1 .647-.284m9.886 0a.5.5 0 0 1 .648.284C13.855 6.495 14 7.231 14 8s-.145 1.505-.41 2.182a.5.5 0 0 1-.93-.364C12.88 9.255 13 8.642 13 8s-.12-1.255-.34-1.818a.5.5 0 0 1 .283-.648\"},\"child\":[]}]})(props);\n};\nexport function BsPhone (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M11 1a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1zM5 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h6a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8 14a1 1 0 1 0 0-2 1 1 0 0 0 0 2\"},\"child\":[]}]})(props);\n};\nexport function BsPieChartFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M15.985 8.5H8.207l-5.5 5.5a8 8 0 0 0 13.277-5.5zM2 13.292A8 8 0 0 1 7.5.015v7.778zM8.5.015V7.5h7.485A8 8 0 0 0 8.5.015\"},\"child\":[]}]})(props);\n};\nexport function BsPieChart (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.5 1.018a7 7 0 0 0-4.79 11.566L7.5 7.793zm1 0V7.5h6.482A7 7 0 0 0 8.5 1.018M14.982 8.5H8.207l-4.79 4.79A7 7 0 0 0 14.982 8.5M0 8a8 8 0 1 1 16 0A8 8 0 0 1 0 8\"},\"child\":[]}]})(props);\n};\nexport function BsPiggyBankFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.964 1.527c-2.977 0-5.571 1.704-6.32 4.125h-.55A1 1 0 0 0 .11 6.824l.254 1.46a1.5 1.5 0 0 0 1.478 1.243h.263c.3.513.688.978 1.145 1.382l-.729 2.477a.5.5 0 0 0 .48.641h2a.5.5 0 0 0 .471-.332l.482-1.351c.635.173 1.31.267 2.011.267.707 0 1.388-.095 2.028-.272l.543 1.372a.5.5 0 0 0 .465.316h2a.5.5 0 0 0 .478-.645l-.761-2.506C13.81 9.895 14.5 8.559 14.5 7.069q0-.218-.02-.431c.261-.11.508-.266.705-.444.315.306.815.306.815-.417 0 .223-.5.223-.461-.026a1 1 0 0 0 .09-.255.7.7 0 0 0-.202-.645.58.58 0 0 0-.707-.098.74.74 0 0 0-.375.562c-.024.243.082.48.32.654a2 2 0 0 1-.259.153c-.534-2.664-3.284-4.595-6.442-4.595m7.173 3.876a.6.6 0 0 1-.098.21l-.044-.025c-.146-.09-.157-.175-.152-.223a.24.24 0 0 1 .117-.173c.049-.027.08-.021.113.012a.2.2 0 0 1 .064.199m-8.999-.65a.5.5 0 1 1-.276-.96A7.6 7.6 0 0 1 7.964 3.5c.763 0 1.497.11 2.18.315a.5.5 0 1 1-.287.958A6.6 6.6 0 0 0 7.964 4.5c-.64 0-1.255.09-1.826.254ZM5 6.25a.75.75 0 1 1-1.5 0 .75.75 0 0 1 1.5 0\"},\"child\":[]}]})(props);\n};\nexport function BsPiggyBank (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5 6.25a.75.75 0 1 1-1.5 0 .75.75 0 0 1 1.5 0m1.138-1.496A6.6 6.6 0 0 1 7.964 4.5c.666 0 1.303.097 1.893.273a.5.5 0 0 0 .286-.958A7.6 7.6 0 0 0 7.964 3.5c-.734 0-1.441.103-2.102.292a.5.5 0 1 0 .276.962\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M7.964 1.527c-2.977 0-5.571 1.704-6.32 4.125h-.55A1 1 0 0 0 .11 6.824l.254 1.46a1.5 1.5 0 0 0 1.478 1.243h.263c.3.513.688.978 1.145 1.382l-.729 2.477a.5.5 0 0 0 .48.641h2a.5.5 0 0 0 .471-.332l.482-1.351c.635.173 1.31.267 2.011.267.707 0 1.388-.095 2.028-.272l.543 1.372a.5.5 0 0 0 .465.316h2a.5.5 0 0 0 .478-.645l-.761-2.506C13.81 9.895 14.5 8.559 14.5 7.069q0-.218-.02-.431c.261-.11.508-.266.705-.444.315.306.815.306.815-.417 0 .223-.5.223-.461-.026a1 1 0 0 0 .09-.255.7.7 0 0 0-.202-.645.58.58 0 0 0-.707-.098.74.74 0 0 0-.375.562c-.024.243.082.48.32.654a2 2 0 0 1-.259.153c-.534-2.664-3.284-4.595-6.442-4.595M2.516 6.26c.455-2.066 2.667-3.733 5.448-3.733 3.146 0 5.536 2.114 5.536 4.542 0 1.254-.624 2.41-1.67 3.248a.5.5 0 0 0-.165.535l.66 2.175h-.985l-.59-1.487a.5.5 0 0 0-.629-.288c-.661.23-1.39.359-2.157.359a6.6 6.6 0 0 1-2.157-.359.5.5 0 0 0-.635.304l-.525 1.471h-.979l.633-2.15a.5.5 0 0 0-.17-.534 4.65 4.65 0 0 1-1.284-1.541.5.5 0 0 0-.446-.275h-.56a.5.5 0 0 1-.492-.414l-.254-1.46h.933a.5.5 0 0 0 .488-.393m12.621-.857a.6.6 0 0 1-.098.21l-.044-.025c-.146-.09-.157-.175-.152-.223a.24.24 0 0 1 .117-.173c.049-.027.08-.021.113.012a.2.2 0 0 1 .064.199\"},\"child\":[]}]})(props);\n};\nexport function BsPinAngleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.828.722a.5.5 0 0 1 .354.146l4.95 4.95a.5.5 0 0 1 0 .707c-.48.48-1.072.588-1.503.588-.177 0-.335-.018-.46-.039l-3.134 3.134a6 6 0 0 1 .16 1.013c.046.702-.032 1.687-.72 2.375a.5.5 0 0 1-.707 0l-2.829-2.828-3.182 3.182c-.195.195-1.219.902-1.414.707s.512-1.22.707-1.414l3.182-3.182-2.828-2.829a.5.5 0 0 1 0-.707c.688-.688 1.673-.767 2.375-.72a6 6 0 0 1 1.013.16l3.134-3.133a3 3 0 0 1-.04-.461c0-.43.108-1.022.589-1.503a.5.5 0 0 1 .353-.146\"},\"child\":[]}]})(props);\n};\nexport function BsPinAngle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.828.722a.5.5 0 0 1 .354.146l4.95 4.95a.5.5 0 0 1 0 .707c-.48.48-1.072.588-1.503.588-.177 0-.335-.018-.46-.039l-3.134 3.134a6 6 0 0 1 .16 1.013c.046.702-.032 1.687-.72 2.375a.5.5 0 0 1-.707 0l-2.829-2.828-3.182 3.182c-.195.195-1.219.902-1.414.707s.512-1.22.707-1.414l3.182-3.182-2.828-2.829a.5.5 0 0 1 0-.707c.688-.688 1.673-.767 2.375-.72a6 6 0 0 1 1.013.16l3.134-3.133a3 3 0 0 1-.04-.461c0-.43.108-1.022.589-1.503a.5.5 0 0 1 .353-.146m.122 2.112v-.002zm0-.002v.002a.5.5 0 0 1-.122.51L6.293 6.878a.5.5 0 0 1-.511.12H5.78l-.014-.004a5 5 0 0 0-.288-.076 5 5 0 0 0-.765-.116c-.422-.028-.836.008-1.175.15l5.51 5.509c.141-.34.177-.753.149-1.175a5 5 0 0 0-.192-1.054l-.004-.013v-.001a.5.5 0 0 1 .12-.512l3.536-3.535a.5.5 0 0 1 .532-.115l.096.022c.087.017.208.034.344.034q.172.002.343-.04L9.927 2.028q-.042.172-.04.343a1.8 1.8 0 0 0 .062.46z\"},\"child\":[]}]})(props);\n};\nexport function BsPinFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4.146.146A.5.5 0 0 1 4.5 0h7a.5.5 0 0 1 .5.5c0 .68-.342 1.174-.646 1.479-.126.125-.25.224-.354.298v4.431l.078.048c.203.127.476.314.751.555C12.36 7.775 13 8.527 13 9.5a.5.5 0 0 1-.5.5h-4v4.5c0 .276-.224 1.5-.5 1.5s-.5-1.224-.5-1.5V10h-4a.5.5 0 0 1-.5-.5c0-.973.64-1.725 1.17-2.189A6 6 0 0 1 5 6.708V2.277a3 3 0 0 1-.354-.298C4.342 1.674 4 1.179 4 .5a.5.5 0 0 1 .146-.354\"},\"child\":[]}]})(props);\n};\nexport function BsPinMapFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M3.1 11.2a.5.5 0 0 1 .4-.2H6a.5.5 0 0 1 0 1H3.75L1.5 15h13l-2.25-3H10a.5.5 0 0 1 0-1h2.5a.5.5 0 0 1 .4.2l3 4a.5.5 0 0 1-.4.8H.5a.5.5 0 0 1-.4-.8z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M4 4a4 4 0 1 1 4.5 3.969V13.5a.5.5 0 0 1-1 0V7.97A4 4 0 0 1 4 3.999z\"},\"child\":[]}]})(props);\n};\nexport function BsPinMap (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M3.1 11.2a.5.5 0 0 1 .4-.2H6a.5.5 0 0 1 0 1H3.75L1.5 15h13l-2.25-3H10a.5.5 0 0 1 0-1h2.5a.5.5 0 0 1 .4.2l3 4a.5.5 0 0 1-.4.8H.5a.5.5 0 0 1-.4-.8z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M8 1a3 3 0 1 0 0 6 3 3 0 0 0 0-6M4 4a4 4 0 1 1 4.5 3.969V13.5a.5.5 0 0 1-1 0V7.97A4 4 0 0 1 4 3.999z\"},\"child\":[]}]})(props);\n};\nexport function BsPin (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4.146.146A.5.5 0 0 1 4.5 0h7a.5.5 0 0 1 .5.5c0 .68-.342 1.174-.646 1.479-.126.125-.25.224-.354.298v4.431l.078.048c.203.127.476.314.751.555C12.36 7.775 13 8.527 13 9.5a.5.5 0 0 1-.5.5h-4v4.5c0 .276-.224 1.5-.5 1.5s-.5-1.224-.5-1.5V10h-4a.5.5 0 0 1-.5-.5c0-.973.64-1.725 1.17-2.189A6 6 0 0 1 5 6.708V2.277a3 3 0 0 1-.354-.298C4.342 1.674 4 1.179 4 .5a.5.5 0 0 1 .146-.354m1.58 1.408-.002-.001zm-.002-.001.002.001A.5.5 0 0 1 6 2v5a.5.5 0 0 1-.276.447h-.002l-.012.007-.054.03a5 5 0 0 0-.827.58c-.318.278-.585.596-.725.936h7.792c-.14-.34-.407-.658-.725-.936a5 5 0 0 0-.881-.61l-.012-.006h-.002A.5.5 0 0 1 10 7V2a.5.5 0 0 1 .295-.458 1.8 1.8 0 0 0 .351-.271c.08-.08.155-.17.214-.271H5.14q.091.15.214.271a1.8 1.8 0 0 0 .37.282\"},\"child\":[]}]})(props);\n};\nexport function BsPinterest (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 0a8 8 0 0 0-2.915 15.452c-.07-.633-.134-1.606.027-2.297.146-.625.938-3.977.938-3.977s-.239-.479-.239-1.187c0-1.113.645-1.943 1.448-1.943.682 0 1.012.512 1.012 1.127 0 .686-.437 1.712-.663 2.663-.188.796.4 1.446 1.185 1.446 1.422 0 2.515-1.5 2.515-3.664 0-1.915-1.377-3.254-3.342-3.254-2.276 0-3.612 1.707-3.612 3.471 0 .688.265 1.425.595 1.826a.24.24 0 0 1 .056.23c-.061.252-.196.796-.222.907-.035.146-.116.177-.268.107-1-.465-1.624-1.926-1.624-3.1 0-2.523 1.834-4.84 5.286-4.84 2.775 0 4.932 1.977 4.932 4.62 0 2.757-1.739 4.976-4.151 4.976-.811 0-1.573-.421-1.834-.919l-.498 1.902c-.181.695-.669 1.566-.995 2.097A8 8 0 1 0 8 0\"},\"child\":[]}]})(props);\n};\nexport function BsPipFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M1.5 2A1.5 1.5 0 0 0 0 3.5v9A1.5 1.5 0 0 0 1.5 14h13a1.5 1.5 0 0 0 1.5-1.5v-9A1.5 1.5 0 0 0 14.5 2zm7 6h5a.5.5 0 0 1 .5.5v3a.5.5 0 0 1-.5.5h-5a.5.5 0 0 1-.5-.5v-3a.5.5 0 0 1 .5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsPip (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 3.5A1.5 1.5 0 0 1 1.5 2h13A1.5 1.5 0 0 1 16 3.5v9a1.5 1.5 0 0 1-1.5 1.5h-13A1.5 1.5 0 0 1 0 12.5zM1.5 3a.5.5 0 0 0-.5.5v9a.5.5 0 0 0 .5.5h13a.5.5 0 0 0 .5-.5v-9a.5.5 0 0 0-.5-.5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8 8.5a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 .5.5v3a.5.5 0 0 1-.5.5h-5a.5.5 0 0 1-.5-.5z\"},\"child\":[]}]})(props);\n};\nexport function BsPlayBtnFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 12V4a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2m6.79-6.907A.5.5 0 0 0 6 5.5v5a.5.5 0 0 0 .79.407l3.5-2.5a.5.5 0 0 0 0-.814z\"},\"child\":[]}]})(props);\n};\nexport function BsPlayBtn (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.79 5.093A.5.5 0 0 0 6 5.5v5a.5.5 0 0 0 .79.407l3.5-2.5a.5.5 0 0 0 0-.814z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M0 4a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm15 0a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1v8a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsPlayCircleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0M6.79 5.093A.5.5 0 0 0 6 5.5v5a.5.5 0 0 0 .79.407l3.5-2.5a.5.5 0 0 0 0-.814z\"},\"child\":[]}]})(props);\n};\nexport function BsPlayCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14m0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M6.271 5.055a.5.5 0 0 1 .52.038l3.5 2.5a.5.5 0 0 1 0 .814l-3.5 2.5A.5.5 0 0 1 6 10.5v-5a.5.5 0 0 1 .271-.445\"},\"child\":[]}]})(props);\n};\nexport function BsPlayFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m11.596 8.697-6.363 3.692c-.54.313-1.233-.066-1.233-.697V4.308c0-.63.692-1.01 1.233-.696l6.363 3.692a.802.802 0 0 1 0 1.393\"},\"child\":[]}]})(props);\n};\nexport function BsPlay (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M10.804 8 5 4.633v6.734zm.792-.696a.802.802 0 0 1 0 1.392l-6.363 3.692C4.713 12.69 4 12.345 4 11.692V4.308c0-.653.713-.998 1.233-.696z\"},\"child\":[]}]})(props);\n};\nexport function BsPlaystation (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M15.858 11.451c-.313.395-1.079.676-1.079.676l-5.696 2.046v-1.509l4.192-1.493c.476-.17.549-.412.162-.538-.386-.127-1.085-.09-1.56.08l-2.794.984v-1.566l.161-.054s.807-.286 1.942-.412c1.135-.125 2.525.017 3.616.43 1.23.39 1.368.962 1.056 1.356M9.625 8.883v-3.86c0-.453-.083-.87-.508-.988-.326-.105-.528.198-.528.65v9.664l-2.606-.827V2c1.108.206 2.722.692 3.59.985 2.207.757 2.955 1.7 2.955 3.825 0 2.071-1.278 2.856-2.903 2.072Zm-8.424 3.625C-.061 12.15-.271 11.41.304 10.984c.532-.394 1.436-.69 1.436-.69l3.737-1.33v1.515l-2.69.963c-.474.17-.547.411-.161.538.386.126 1.085.09 1.56-.08l1.29-.469v1.356l-.257.043a8.45 8.45 0 0 1-4.018-.323Z\"},\"child\":[]}]})(props);\n};\nexport function BsPlugFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6 0a.5.5 0 0 1 .5.5V3h3V.5a.5.5 0 0 1 1 0V3h1a.5.5 0 0 1 .5.5v3A3.5 3.5 0 0 1 8.5 10c-.002.434-.01.845-.04 1.22-.041.514-.126 1.003-.317 1.424a2.08 2.08 0 0 1-.97 1.028C6.725 13.9 6.169 14 5.5 14c-.998 0-1.61.33-1.974.718A1.92 1.92 0 0 0 3 16H2c0-.616.232-1.367.797-1.968C3.374 13.42 4.261 13 5.5 13c.581 0 .962-.088 1.218-.219.241-.123.4-.3.514-.55.121-.266.193-.621.23-1.09.027-.34.035-.718.037-1.141A3.5 3.5 0 0 1 4 6.5v-3a.5.5 0 0 1 .5-.5h1V.5A.5.5 0 0 1 6 0\"},\"child\":[]}]})(props);\n};\nexport function BsPlug (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6 0a.5.5 0 0 1 .5.5V3h3V.5a.5.5 0 0 1 1 0V3h1a.5.5 0 0 1 .5.5v3A3.5 3.5 0 0 1 8.5 10c-.002.434-.01.845-.04 1.22-.041.514-.126 1.003-.317 1.424a2.08 2.08 0 0 1-.97 1.028C6.725 13.9 6.169 14 5.5 14c-.998 0-1.61.33-1.974.718A1.92 1.92 0 0 0 3 16H2c0-.616.232-1.367.797-1.968C3.374 13.42 4.261 13 5.5 13c.581 0 .962-.088 1.218-.219.241-.123.4-.3.514-.55.121-.266.193-.621.23-1.09.027-.34.035-.718.037-1.141A3.5 3.5 0 0 1 4 6.5v-3a.5.5 0 0 1 .5-.5h1V.5A.5.5 0 0 1 6 0M5 4v2.5A2.5 2.5 0 0 0 7.5 9h1A2.5 2.5 0 0 0 11 6.5V4z\"},\"child\":[]}]})(props);\n};\nexport function BsPlugin (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M1 8a7 7 0 1 1 2.898 5.673c-.167-.121-.216-.406-.002-.62l1.8-1.8a3.5 3.5 0 0 0 4.572-.328l1.414-1.415a.5.5 0 0 0 0-.707l-.707-.707 1.559-1.563a.5.5 0 1 0-.708-.706l-1.559 1.562-1.414-1.414 1.56-1.562a.5.5 0 1 0-.707-.706l-1.56 1.56-.707-.706a.5.5 0 0 0-.707 0L5.318 5.975a3.5 3.5 0 0 0-.328 4.571l-1.8 1.8c-.58.58-.62 1.6.121 2.137A8 8 0 1 0 0 8a.5.5 0 0 0 1 0\"},\"child\":[]}]})(props);\n};\nexport function BsPlusCircleDotted (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 0q-.264 0-.523.017l.064.998a7 7 0 0 1 .918 0l.064-.998A8 8 0 0 0 8 0M6.44.152q-.52.104-1.012.27l.321.948q.43-.147.884-.237L6.44.153zm4.132.271a8 8 0 0 0-1.011-.27l-.194.98q.453.09.884.237zm1.873.925a8 8 0 0 0-.906-.524l-.443.896q.413.205.793.459zM4.46.824q-.471.233-.905.524l.556.83a7 7 0 0 1 .793-.458zM2.725 1.985q-.394.346-.74.74l.752.66q.303-.345.648-.648zm11.29.74a8 8 0 0 0-.74-.74l-.66.752q.346.303.648.648zm1.161 1.735a8 8 0 0 0-.524-.905l-.83.556q.254.38.458.793l.896-.443zM1.348 3.555q-.292.433-.524.906l.896.443q.205-.413.459-.793zM.423 5.428a8 8 0 0 0-.27 1.011l.98.194q.09-.453.237-.884zM15.848 6.44a8 8 0 0 0-.27-1.012l-.948.321q.147.43.237.884zM.017 7.477a8 8 0 0 0 0 1.046l.998-.064a7 7 0 0 1 0-.918zM16 8a8 8 0 0 0-.017-.523l-.998.064a7 7 0 0 1 0 .918l.998.064A8 8 0 0 0 16 8M.152 9.56q.104.52.27 1.012l.948-.321a7 7 0 0 1-.237-.884l-.98.194zm15.425 1.012q.168-.493.27-1.011l-.98-.194q-.09.453-.237.884zM.824 11.54a8 8 0 0 0 .524.905l.83-.556a7 7 0 0 1-.458-.793zm13.828.905q.292-.434.524-.906l-.896-.443q-.205.413-.459.793zm-12.667.83q.346.394.74.74l.66-.752a7 7 0 0 1-.648-.648zm11.29.74q.394-.346.74-.74l-.752-.66q-.302.346-.648.648zm-1.735 1.161q.471-.233.905-.524l-.556-.83a7 7 0 0 1-.793.458zm-7.985-.524q.434.292.906.524l.443-.896a7 7 0 0 1-.793-.459zm1.873.925q.493.168 1.011.27l.194-.98a7 7 0 0 1-.884-.237zm4.132.271a8 8 0 0 0 1.012-.27l-.321-.948a7 7 0 0 1-.884.237l.194.98zm-2.083.135a8 8 0 0 0 1.046 0l-.064-.998a7 7 0 0 1-.918 0zM8.5 4.5a.5.5 0 0 0-1 0v3h-3a.5.5 0 0 0 0 1h3v3a.5.5 0 0 0 1 0v-3h3a.5.5 0 0 0 0-1h-3z\"},\"child\":[]}]})(props);\n};\nexport function BsPlusCircleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0M8.5 4.5a.5.5 0 0 0-1 0v3h-3a.5.5 0 0 0 0 1h3v3a.5.5 0 0 0 1 0v-3h3a.5.5 0 0 0 0-1h-3z\"},\"child\":[]}]})(props);\n};\nexport function BsPlusCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14m0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8 4a.5.5 0 0 1 .5.5v3h3a.5.5 0 0 1 0 1h-3v3a.5.5 0 0 1-1 0v-3h-3a.5.5 0 0 1 0-1h3v-3A.5.5 0 0 1 8 4\"},\"child\":[]}]})(props);\n};\nexport function BsPlusLg (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M8 2a.5.5 0 0 1 .5.5v5h5a.5.5 0 0 1 0 1h-5v5a.5.5 0 0 1-1 0v-5h-5a.5.5 0 0 1 0-1h5v-5A.5.5 0 0 1 8 2\"},\"child\":[]}]})(props);\n};\nexport function BsPlusSlashMinus (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m1.854 14.854 13-13a.5.5 0 0 0-.708-.708l-13 13a.5.5 0 0 0 .708.708M4 1a.5.5 0 0 1 .5.5v2h2a.5.5 0 0 1 0 1h-2v2a.5.5 0 0 1-1 0v-2h-2a.5.5 0 0 1 0-1h2v-2A.5.5 0 0 1 4 1m5 11a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5A.5.5 0 0 1 9 12\"},\"child\":[]}]})(props);\n};\nexport function BsPlusSquareDotted (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2.5 0q-.25 0-.487.048l.194.98A1.5 1.5 0 0 1 2.5 1h.458V0zm2.292 0h-.917v1h.917zm1.833 0h-.917v1h.917zm1.833 0h-.916v1h.916zm1.834 0h-.917v1h.917zm1.833 0h-.917v1h.917zM13.5 0h-.458v1h.458q.151 0 .293.029l.194-.981A2.5 2.5 0 0 0 13.5 0m2.079 1.11a2.5 2.5 0 0 0-.69-.689l-.556.831q.248.167.415.415l.83-.556zM1.11.421a2.5 2.5 0 0 0-.689.69l.831.556c.11-.164.251-.305.415-.415zM16 2.5q0-.25-.048-.487l-.98.194q.027.141.028.293v.458h1zM.048 2.013A2.5 2.5 0 0 0 0 2.5v.458h1V2.5q0-.151.029-.293zM0 3.875v.917h1v-.917zm16 .917v-.917h-1v.917zM0 5.708v.917h1v-.917zm16 .917v-.917h-1v.917zM0 7.542v.916h1v-.916zm15 .916h1v-.916h-1zM0 9.375v.917h1v-.917zm16 .917v-.917h-1v.917zm-16 .916v.917h1v-.917zm16 .917v-.917h-1v.917zm-16 .917v.458q0 .25.048.487l.98-.194A1.5 1.5 0 0 1 1 13.5v-.458zm16 .458v-.458h-1v.458q0 .151-.029.293l.981.194Q16 13.75 16 13.5M.421 14.89c.183.272.417.506.69.689l.556-.831a1.5 1.5 0 0 1-.415-.415zm14.469.689c.272-.183.506-.417.689-.69l-.831-.556c-.11.164-.251.305-.415.415l.556.83zm-12.877.373Q2.25 16 2.5 16h.458v-1H2.5q-.151 0-.293-.029zM13.5 16q.25 0 .487-.048l-.194-.98A1.5 1.5 0 0 1 13.5 15h-.458v1zm-9.625 0h.917v-1h-.917zm1.833 0h.917v-1h-.917zm1.834-1v1h.916v-1zm1.833 1h.917v-1h-.917zm1.833 0h.917v-1h-.917zM8.5 4.5a.5.5 0 0 0-1 0v3h-3a.5.5 0 0 0 0 1h3v3a.5.5 0 0 0 1 0v-3h3a.5.5 0 0 0 0-1h-3z\"},\"child\":[]}]})(props);\n};\nexport function BsPlusSquareFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm6.5 4.5v3h3a.5.5 0 0 1 0 1h-3v3a.5.5 0 0 1-1 0v-3h-3a.5.5 0 0 1 0-1h3v-3a.5.5 0 0 1 1 0\"},\"child\":[]}]})(props);\n};\nexport function BsPlusSquare (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M14 1a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1zM2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8 4a.5.5 0 0 1 .5.5v3h3a.5.5 0 0 1 0 1h-3v3a.5.5 0 0 1-1 0v-3h-3a.5.5 0 0 1 0-1h3v-3A.5.5 0 0 1 8 4\"},\"child\":[]}]})(props);\n};\nexport function BsPlus (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 4a.5.5 0 0 1 .5.5v3h3a.5.5 0 0 1 0 1h-3v3a.5.5 0 0 1-1 0v-3h-3a.5.5 0 0 1 0-1h3v-3A.5.5 0 0 1 8 4\"},\"child\":[]}]})(props);\n};\nexport function BsPostageFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4.5 3a.5.5 0 0 0-.5.5v9a.5.5 0 0 0 .5.5h7a.5.5 0 0 0 .5-.5v-9a.5.5 0 0 0-.5-.5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3.5 1a1 1 0 0 0 1-1h1a1 1 0 0 0 2 0h1a1 1 0 0 0 2 0h1a1 1 0 1 0 2 0H15v1a1 1 0 1 0 0 2v1a1 1 0 1 0 0 2v1a1 1 0 1 0 0 2v1a1 1 0 1 0 0 2v1a1 1 0 1 0 0 2v1h-1.5a1 1 0 1 0-2 0h-1a1 1 0 1 0-2 0h-1a1 1 0 1 0-2 0h-1a1 1 0 1 0-2 0H1v-1a1 1 0 1 0 0-2v-1a1 1 0 1 0 0-2V9a1 1 0 1 0 0-2V6a1 1 0 0 0 0-2V3a1 1 0 0 0 0-2V0h1.5a1 1 0 0 0 1 1M3 3v10a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V3a1 1 0 0 0-1-1H4a1 1 0 0 0-1 1\"},\"child\":[]}]})(props);\n};\nexport function BsPostageHeartFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4.5 3a.5.5 0 0 0-.5.5v9a.5.5 0 0 0 .5.5h7a.5.5 0 0 0 .5-.5v-9a.5.5 0 0 0-.5-.5zM8 11C2.175 7.236 6.336 4.31 8 5.982 9.664 4.309 13.825 7.236 8 11\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4.5 0a1 1 0 0 1-2 0H1v1a1 1 0 0 1 0 2v1a1 1 0 0 1 0 2v1a1 1 0 0 1 0 2v1a1 1 0 1 1 0 2v1a1 1 0 1 1 0 2v1h1.5a1 1 0 1 1 2 0h1a1 1 0 1 1 2 0h1a1 1 0 1 1 2 0h1a1 1 0 1 1 2 0H15v-1a1 1 0 1 1 0-2v-1a1 1 0 1 1 0-2V9a1 1 0 1 1 0-2V6a1 1 0 1 1 0-2V3a1 1 0 1 1 0-2V0h-1.5a1 1 0 1 1-2 0h-1a1 1 0 1 1-2 0h-1a1 1 0 0 1-2 0zM4 14a1 1 0 0 1-1-1V3a1 1 0 0 1 1-1h8a1 1 0 0 1 1 1v10a1 1 0 0 1-1 1z\"},\"child\":[]}]})(props);\n};\nexport function BsPostageHeart (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3.5 1a1 1 0 0 0 1-1h1a1 1 0 0 0 2 0h1a1 1 0 0 0 2 0h1a1 1 0 1 0 2 0H15v1a1 1 0 1 0 0 2v1a1 1 0 1 0 0 2v1a1 1 0 1 0 0 2v1a1 1 0 1 0 0 2v1a1 1 0 1 0 0 2v1h-1.5a1 1 0 1 0-2 0h-1a1 1 0 1 0-2 0h-1a1 1 0 1 0-2 0h-1a1 1 0 1 0-2 0H1v-1a1 1 0 1 0 0-2v-1a1 1 0 1 0 0-2V9a1 1 0 1 0 0-2V6a1 1 0 0 0 0-2V3a1 1 0 0 0 0-2V0h1.5a1 1 0 0 0 1 1M3 3v10a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V3a1 1 0 0 0-1-1H4a1 1 0 0 0-1 1\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8 11C2.175 7.236 6.336 4.31 8 5.982 9.664 4.309 13.825 7.236 8 11\"},\"child\":[]}]})(props);\n};\nexport function BsPostage (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4.75 3a.75.75 0 0 0-.75.75v8.5c0 .414.336.75.75.75h6.5a.75.75 0 0 0 .75-.75v-8.5a.75.75 0 0 0-.75-.75zM11 12H5V4h6z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3.5 1a1 1 0 0 0 1-1h1a1 1 0 0 0 2 0h1a1 1 0 0 0 2 0h1a1 1 0 1 0 2 0H15v1a1 1 0 1 0 0 2v1a1 1 0 1 0 0 2v1a1 1 0 1 0 0 2v1a1 1 0 1 0 0 2v1a1 1 0 1 0 0 2v1h-1.5a1 1 0 1 0-2 0h-1a1 1 0 1 0-2 0h-1a1 1 0 1 0-2 0h-1a1 1 0 1 0-2 0H1v-1a1 1 0 1 0 0-2v-1a1 1 0 1 0 0-2V9a1 1 0 1 0 0-2V6a1 1 0 0 0 0-2V3a1 1 0 0 0 0-2V0h1.5a1 1 0 0 0 1 1M3 3v10a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V3a1 1 0 0 0-1-1H4a1 1 0 0 0-1 1\"},\"child\":[]}]})(props);\n};\nexport function BsPostcardFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M11 8h2V6h-2z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M0 4a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm8.5.5a.5.5 0 0 0-1 0v7a.5.5 0 0 0 1 0zM2 5.5a.5.5 0 0 0 .5.5H6a.5.5 0 0 0 0-1H2.5a.5.5 0 0 0-.5.5M2.5 7a.5.5 0 0 0 0 1H6a.5.5 0 0 0 0-1zM2 9.5a.5.5 0 0 0 .5.5H6a.5.5 0 0 0 0-1H2.5a.5.5 0 0 0-.5.5m8-4v3a.5.5 0 0 0 .5.5h3a.5.5 0 0 0 .5-.5v-3a.5.5 0 0 0-.5-.5h-3a.5.5 0 0 0-.5.5\"},\"child\":[]}]})(props);\n};\nexport function BsPostcardHeartFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 2a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2zm6 2.5v7a.5.5 0 0 1-1 0v-7a.5.5 0 0 1 1 0m3.5.878c1.482-1.42 4.795 1.392 0 4.622-4.795-3.23-1.482-6.043 0-4.622M2 5.5a.5.5 0 0 1 .5-.5h3a.5.5 0 0 1 0 1h-3a.5.5 0 0 1-.5-.5m0 2a.5.5 0 0 1 .5-.5h3a.5.5 0 0 1 0 1h-3a.5.5 0 0 1-.5-.5m0 2a.5.5 0 0 1 .5-.5h3a.5.5 0 0 1 0 1h-3a.5.5 0 0 1-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsPostcardHeart (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 4.5a.5.5 0 0 0-1 0v7a.5.5 0 0 0 1 0zm3.5.878c1.482-1.42 4.795 1.392 0 4.622-4.795-3.23-1.482-6.043 0-4.622M2.5 5a.5.5 0 0 0 0 1h3a.5.5 0 0 0 0-1zm0 2a.5.5 0 0 0 0 1h3a.5.5 0 0 0 0-1zm0 2a.5.5 0 0 0 0 1h3a.5.5 0 0 0 0-1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M0 4a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm2-1a1 1 0 0 0-1 1v8a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V4a1 1 0 0 0-1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsPostcard (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M2 2a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2zM1 4a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1v8a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1zm7.5.5a.5.5 0 0 0-1 0v7a.5.5 0 0 0 1 0zM2 5.5a.5.5 0 0 1 .5-.5H6a.5.5 0 0 1 0 1H2.5a.5.5 0 0 1-.5-.5m0 2a.5.5 0 0 1 .5-.5H6a.5.5 0 0 1 0 1H2.5a.5.5 0 0 1-.5-.5m0 2a.5.5 0 0 1 .5-.5H6a.5.5 0 0 1 0 1H2.5a.5.5 0 0 1-.5-.5M10.5 5a.5.5 0 0 0-.5.5v3a.5.5 0 0 0 .5.5h3a.5.5 0 0 0 .5-.5v-3a.5.5 0 0 0-.5-.5zM13 8h-2V6h2z\"},\"child\":[]}]})(props);\n};\nexport function BsPower (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.5 1v7h1V1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3 8.812a5 5 0 0 1 2.578-4.375l-.485-.874A6 6 0 1 0 11 3.616l-.501.865A5 5 0 1 1 3 8.812\"},\"child\":[]}]})(props);\n};\nexport function BsPrescription (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5.5 6a.5.5 0 0 0-.5.5v4a.5.5 0 0 0 1 0V9h.293l2 2-1.147 1.146a.5.5 0 0 0 .708.708L9 11.707l1.146 1.147a.5.5 0 0 0 .708-.708L9.707 11l1.147-1.146a.5.5 0 0 0-.708-.708L9 10.293 7.695 8.987A1.5 1.5 0 0 0 7.5 6zM6 7h1.5a.5.5 0 0 1 0 1H6z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 1a1 1 0 0 1 1-1h10a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1v10.5a1.5 1.5 0 0 1-1.5 1.5h-7A1.5 1.5 0 0 1 3 14.5V4a1 1 0 0 1-1-1zm2 3v10.5a.5.5 0 0 0 .5.5h7a.5.5 0 0 0 .5-.5V4zM3 3h10V1H3z\"},\"child\":[]}]})(props);\n};\nexport function BsPrescription2 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7 6h2v2h2v2H9v2H7v-2H5V8h2z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 1a1 1 0 0 1 1-1h10a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1v10.5a1.5 1.5 0 0 1-1.5 1.5h-7A1.5 1.5 0 0 1 3 14.5V4a1 1 0 0 1-1-1zm2 3v10.5a.5.5 0 0 0 .5.5h7a.5.5 0 0 0 .5-.5V4zM3 3h10V1H3z\"},\"child\":[]}]})(props);\n};\nexport function BsPrinterFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5 1a2 2 0 0 0-2 2v1h10V3a2 2 0 0 0-2-2zm6 8H5a1 1 0 0 0-1 1v3a1 1 0 0 0 1 1h6a1 1 0 0 0 1-1v-3a1 1 0 0 0-1-1\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M0 7a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v3a2 2 0 0 1-2 2h-1v-2a2 2 0 0 0-2-2H5a2 2 0 0 0-2 2v2H2a2 2 0 0 1-2-2zm2.5 1a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1\"},\"child\":[]}]})(props);\n};\nexport function BsPrinter (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2.5 8a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M5 1a2 2 0 0 0-2 2v2H2a2 2 0 0 0-2 2v3a2 2 0 0 0 2 2h1v1a2 2 0 0 0 2 2h6a2 2 0 0 0 2-2v-1h1a2 2 0 0 0 2-2V7a2 2 0 0 0-2-2h-1V3a2 2 0 0 0-2-2zM4 3a1 1 0 0 1 1-1h6a1 1 0 0 1 1 1v2H4zm1 5a2 2 0 0 0-2 2v1H2a1 1 0 0 1-1-1V7a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1v3a1 1 0 0 1-1 1h-1v-1a2 2 0 0 0-2-2zm7 2v3a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1v-3a1 1 0 0 1 1-1h6a1 1 0 0 1 1 1\"},\"child\":[]}]})(props);\n};\nexport function BsProjectorFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 4a2 2 0 0 0-2 2v3a2 2 0 0 0 2 2 1 1 0 0 0 1 1h1a1 1 0 0 0 1-1h6a1 1 0 0 0 1 1h1a1 1 0 0 0 1-1 2 2 0 0 0 2-2V6a2 2 0 0 0-2-2zm.5 2h4a.5.5 0 0 1 0 1h-4a.5.5 0 0 1 0-1M14 7.5a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0m-12 1a.5.5 0 0 1 .5-.5h4a.5.5 0 0 1 0 1h-4a.5.5 0 0 1-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsProjector (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M14 7.5a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0M2.5 6a.5.5 0 0 0 0 1h4a.5.5 0 0 0 0-1zm0 2a.5.5 0 0 0 0 1h4a.5.5 0 0 0 0-1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M0 6a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v3a2 2 0 0 1-2 2 1 1 0 0 1-1 1h-1a1 1 0 0 1-1-1H5a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1 2 2 0 0 1-2-2zm2-1a1 1 0 0 0-1 1v3a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V6a1 1 0 0 0-1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsPuzzleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3.112 3.645A1.5 1.5 0 0 1 4.605 2H7a.5.5 0 0 1 .5.5v.382c0 .696-.497 1.182-.872 1.469a.5.5 0 0 0-.115.118l-.012.025L6.5 4.5v.003l.003.01q.005.015.036.053a.9.9 0 0 0 .27.194C7.09 4.9 7.51 5 8 5c.492 0 .912-.1 1.19-.24a.9.9 0 0 0 .271-.194.2.2 0 0 0 .036-.054l.003-.01v-.008l-.012-.025a.5.5 0 0 0-.115-.118c-.375-.287-.872-.773-.872-1.469V2.5A.5.5 0 0 1 9 2h2.395a1.5 1.5 0 0 1 1.493 1.645L12.645 6.5h.237c.195 0 .42-.147.675-.48.21-.274.528-.52.943-.52.568 0 .947.447 1.154.862C15.877 6.807 16 7.387 16 8s-.123 1.193-.346 1.638c-.207.415-.586.862-1.154.862-.415 0-.733-.246-.943-.52-.255-.333-.48-.48-.675-.48h-.237l.243 2.855A1.5 1.5 0 0 1 11.395 14H9a.5.5 0 0 1-.5-.5v-.382c0-.696.497-1.182.872-1.469a.5.5 0 0 0 .115-.118l.012-.025.001-.006v-.003l-.003-.01a.2.2 0 0 0-.036-.053.9.9 0 0 0-.27-.194C8.91 11.1 8.49 11 8 11s-.912.1-1.19.24a.9.9 0 0 0-.271.194.2.2 0 0 0-.036.054l-.003.01v.002l.001.006.012.025c.016.027.05.068.115.118.375.287.872.773.872 1.469v.382a.5.5 0 0 1-.5.5H4.605a1.5 1.5 0 0 1-1.493-1.645L3.356 9.5h-.238c-.195 0-.42.147-.675.48-.21.274-.528.52-.943.52-.568 0-.947-.447-1.154-.862C.123 9.193 0 8.613 0 8s.123-1.193.346-1.638C.553 5.947.932 5.5 1.5 5.5c.415 0 .733.246.943.52.255.333.48.48.675.48h.238z\"},\"child\":[]}]})(props);\n};\nexport function BsPuzzle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3.112 3.645A1.5 1.5 0 0 1 4.605 2H7a.5.5 0 0 1 .5.5v.382c0 .696-.497 1.182-.872 1.469a.5.5 0 0 0-.115.118l-.012.025L6.5 4.5v.003l.003.01q.005.015.036.053a.9.9 0 0 0 .27.194C7.09 4.9 7.51 5 8 5c.492 0 .912-.1 1.19-.24a.9.9 0 0 0 .271-.194.2.2 0 0 0 .039-.063v-.009l-.012-.025a.5.5 0 0 0-.115-.118c-.375-.287-.872-.773-.872-1.469V2.5A.5.5 0 0 1 9 2h2.395a1.5 1.5 0 0 1 1.493 1.645L12.645 6.5h.237c.195 0 .42-.147.675-.48.21-.274.528-.52.943-.52.568 0 .947.447 1.154.862C15.877 6.807 16 7.387 16 8s-.123 1.193-.346 1.638c-.207.415-.586.862-1.154.862-.415 0-.733-.246-.943-.52-.255-.333-.48-.48-.675-.48h-.237l.243 2.855A1.5 1.5 0 0 1 11.395 14H9a.5.5 0 0 1-.5-.5v-.382c0-.696.497-1.182.872-1.469a.5.5 0 0 0 .115-.118l.012-.025.001-.006v-.003a.2.2 0 0 0-.039-.064.9.9 0 0 0-.27-.193C8.91 11.1 8.49 11 8 11s-.912.1-1.19.24a.9.9 0 0 0-.271.194.2.2 0 0 0-.039.063v.003l.001.006.012.025c.016.027.05.068.115.118.375.287.872.773.872 1.469v.382a.5.5 0 0 1-.5.5H4.605a1.5 1.5 0 0 1-1.493-1.645L3.356 9.5h-.238c-.195 0-.42.147-.675.48-.21.274-.528.52-.943.52-.568 0-.947-.447-1.154-.862C.123 9.193 0 8.613 0 8s.123-1.193.346-1.638C.553 5.947.932 5.5 1.5 5.5c.415 0 .733.246.943.52.255.333.48.48.675.48h.238zM4.605 3a.5.5 0 0 0-.498.55l.001.007.29 3.4A.5.5 0 0 1 3.9 7.5h-.782c-.696 0-1.182-.497-1.469-.872a.5.5 0 0 0-.118-.115l-.025-.012L1.5 6.5h-.003a.2.2 0 0 0-.064.039.9.9 0 0 0-.193.27C1.1 7.09 1 7.51 1 8s.1.912.24 1.19c.07.14.14.225.194.271a.2.2 0 0 0 .063.039H1.5l.006-.001.025-.012a.5.5 0 0 0 .118-.115c.287-.375.773-.872 1.469-.872H3.9a.5.5 0 0 1 .498.542l-.29 3.408a.5.5 0 0 0 .497.55h1.878c-.048-.166-.195-.352-.463-.557-.274-.21-.52-.528-.52-.943 0-.568.447-.947.862-1.154C6.807 10.123 7.387 10 8 10s1.193.123 1.638.346c.415.207.862.586.862 1.154 0 .415-.246.733-.52.943-.268.205-.415.39-.463.557h1.878a.5.5 0 0 0 .498-.55l-.001-.007-.29-3.4A.5.5 0 0 1 12.1 8.5h.782c.696 0 1.182.497 1.469.872.05.065.091.099.118.115l.025.012.006.001h.003a.2.2 0 0 0 .064-.039.9.9 0 0 0 .193-.27c.14-.28.24-.7.24-1.191s-.1-.912-.24-1.19a.9.9 0 0 0-.194-.271.2.2 0 0 0-.063-.039H14.5l-.006.001-.025.012a.5.5 0 0 0-.118.115c-.287.375-.773.872-1.469.872H12.1a.5.5 0 0 1-.498-.543l.29-3.407a.5.5 0 0 0-.497-.55H9.517c.048.166.195.352.463.557.274.21.52.528.52.943 0 .568-.447.947-.862 1.154C9.193 5.877 8.613 6 8 6s-1.193-.123-1.638-.346C5.947 5.447 5.5 5.068 5.5 4.5c0-.415.246-.733.52-.943.268-.205.415-.39.463-.557z\"},\"child\":[]}]})(props);\n};\nexport function BsQrCodeScan (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 .5A.5.5 0 0 1 .5 0h3a.5.5 0 0 1 0 1H1v2.5a.5.5 0 0 1-1 0zm12 0a.5.5 0 0 1 .5-.5h3a.5.5 0 0 1 .5.5v3a.5.5 0 0 1-1 0V1h-2.5a.5.5 0 0 1-.5-.5M.5 12a.5.5 0 0 1 .5.5V15h2.5a.5.5 0 0 1 0 1h-3a.5.5 0 0 1-.5-.5v-3a.5.5 0 0 1 .5-.5m15 0a.5.5 0 0 1 .5.5v3a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1 0-1H15v-2.5a.5.5 0 0 1 .5-.5M4 4h1v1H4z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M7 2H2v5h5zM3 3h3v3H3zm2 8H4v1h1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M7 9H2v5h5zm-4 1h3v3H3zm8-6h1v1h-1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M9 2h5v5H9zm1 1v3h3V3zM8 8v2h1v1H8v1h2v-2h1v2h1v-1h2v-1h-3V8zm2 2H9V9h1zm4 2h-1v1h-2v1h3zm-4 2v-1H8v1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M12 9h2V8h-2z\"},\"child\":[]}]})(props);\n};\nexport function BsQrCode (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 2h2v2H2z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M6 0v6H0V0zM5 1H1v4h4zM4 12H2v2h2z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M6 10v6H0v-6zm-5 1v4h4v-4zm11-9h2v2h-2z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M10 0v6h6V0zm5 1v4h-4V1zM8 1V0h1v2H8v2H7V1zm0 5V4h1v2zM6 8V7h1V6h1v2h1V7h5v1h-4v1H7V8zm0 0v1H2V8H1v1H0V7h3v1zm10 1h-1V7h1zm-1 0h-1v2h2v-1h-1zm-4 0h2v1h-1v1h-1zm2 3v-1h-1v1h-1v1H9v1h3v-2zm0 0h3v1h-2v1h-1zm-4-1v1h1v-2H7v1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M7 12h1v3h4v1H7zm9 2v2h-3v-1h2v-1z\"},\"child\":[]}]})(props);\n};\nexport function BsQuestionCircleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0M5.496 6.033h.825c.138 0 .248-.113.266-.25.09-.656.54-1.134 1.342-1.134.686 0 1.314.343 1.314 1.168 0 .635-.374.927-.965 1.371-.673.489-1.206 1.06-1.168 1.987l.003.217a.25.25 0 0 0 .25.246h.811a.25.25 0 0 0 .25-.25v-.105c0-.718.273-.927 1.01-1.486.609-.463 1.244-.977 1.244-2.056 0-1.511-1.276-2.241-2.673-2.241-1.267 0-2.655.59-2.75 2.286a.237.237 0 0 0 .241.247m2.325 6.443c.61 0 1.029-.394 1.029-.927 0-.552-.42-.94-1.029-.94-.584 0-1.009.388-1.009.94 0 .533.425.927 1.01.927z\"},\"child\":[]}]})(props);\n};\nexport function BsQuestionCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14m0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M5.255 5.786a.237.237 0 0 0 .241.247h.825c.138 0 .248-.113.266-.25.09-.656.54-1.134 1.342-1.134.686 0 1.314.343 1.314 1.168 0 .635-.374.927-.965 1.371-.673.489-1.206 1.06-1.168 1.987l.003.217a.25.25 0 0 0 .25.246h.811a.25.25 0 0 0 .25-.25v-.105c0-.718.273-.927 1.01-1.486.609-.463 1.244-.977 1.244-2.056 0-1.511-1.276-2.241-2.673-2.241-1.267 0-2.655.59-2.75 2.286m1.557 5.763c0 .533.425.927 1.01.927.609 0 1.028-.394 1.028-.927 0-.552-.42-.94-1.029-.94-.584 0-1.009.388-1.009.94\"},\"child\":[]}]})(props);\n};\nexport function BsQuestionDiamondFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.05.435c-.58-.58-1.52-.58-2.1 0L.436 6.95c-.58.58-.58 1.519 0 2.098l6.516 6.516c.58.58 1.519.58 2.098 0l6.516-6.516c.58-.58.58-1.519 0-2.098zM5.495 6.033a.237.237 0 0 1-.24-.247C5.35 4.091 6.737 3.5 8.005 3.5c1.396 0 2.672.73 2.672 2.24 0 1.08-.635 1.594-1.244 2.057-.737.559-1.01.768-1.01 1.486v.105a.25.25 0 0 1-.25.25h-.81a.25.25 0 0 1-.25-.246l-.004-.217c-.038-.927.495-1.498 1.168-1.987.59-.444.965-.736.965-1.371 0-.825-.628-1.168-1.314-1.168-.803 0-1.253.478-1.342 1.134-.018.137-.128.25-.266.25zm2.325 6.443c-.584 0-1.009-.394-1.009-.927 0-.552.425-.94 1.01-.94.609 0 1.028.388 1.028.94 0 .533-.42.927-1.029.927\"},\"child\":[]}]})(props);\n};\nexport function BsQuestionDiamond (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.95.435c.58-.58 1.52-.58 2.1 0l6.515 6.516c.58.58.58 1.519 0 2.098L9.05 15.565c-.58.58-1.519.58-2.098 0L.435 9.05a1.48 1.48 0 0 1 0-2.098zm1.4.7a.495.495 0 0 0-.7 0L1.134 7.65a.495.495 0 0 0 0 .7l6.516 6.516a.495.495 0 0 0 .7 0l6.516-6.516a.495.495 0 0 0 0-.7L8.35 1.134z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M5.255 5.786a.237.237 0 0 0 .241.247h.825c.138 0 .248-.113.266-.25.09-.656.54-1.134 1.342-1.134.686 0 1.314.343 1.314 1.168 0 .635-.374.927-.965 1.371-.673.489-1.206 1.06-1.168 1.987l.003.217a.25.25 0 0 0 .25.246h.811a.25.25 0 0 0 .25-.25v-.105c0-.718.273-.927 1.01-1.486.609-.463 1.244-.977 1.244-2.056 0-1.511-1.276-2.241-2.673-2.241-1.267 0-2.655.59-2.75 2.286m1.557 5.763c0 .533.425.927 1.01.927.609 0 1.028-.394 1.028-.927 0-.552-.42-.94-1.029-.94-.584 0-1.009.388-1.009.94\"},\"child\":[]}]})(props);\n};\nexport function BsQuestionLg (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M4.475 5.458c-.284 0-.514-.237-.47-.517C4.28 3.24 5.576 2 7.825 2c2.25 0 3.767 1.36 3.767 3.215 0 1.344-.665 2.288-1.79 2.973-1.1.659-1.414 1.118-1.414 2.01v.03a.5.5 0 0 1-.5.5h-.77a.5.5 0 0 1-.5-.495l-.003-.2c-.043-1.221.477-2.001 1.645-2.712 1.03-.632 1.397-1.135 1.397-2.028 0-.979-.758-1.698-1.926-1.698-1.009 0-1.71.529-1.938 1.402-.066.254-.278.461-.54.461h-.777ZM7.496 14c.622 0 1.095-.474 1.095-1.09 0-.618-.473-1.092-1.095-1.092-.606 0-1.087.474-1.087 1.091S6.89 14 7.496 14\"},\"child\":[]}]})(props);\n};\nexport function BsQuestionOctagonFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M11.46.146A.5.5 0 0 0 11.107 0H4.893a.5.5 0 0 0-.353.146L.146 4.54A.5.5 0 0 0 0 4.893v6.214a.5.5 0 0 0 .146.353l4.394 4.394a.5.5 0 0 0 .353.146h6.214a.5.5 0 0 0 .353-.146l4.394-4.394a.5.5 0 0 0 .146-.353V4.893a.5.5 0 0 0-.146-.353zM5.496 6.033a.237.237 0 0 1-.24-.247C5.35 4.091 6.737 3.5 8.005 3.5c1.396 0 2.672.73 2.672 2.24 0 1.08-.635 1.594-1.244 2.057-.737.559-1.01.768-1.01 1.486v.105a.25.25 0 0 1-.25.25h-.81a.25.25 0 0 1-.25-.246l-.004-.217c-.038-.927.495-1.498 1.168-1.987.59-.444.965-.736.965-1.371 0-.825-.628-1.168-1.314-1.168-.803 0-1.253.478-1.342 1.134-.018.137-.128.25-.266.25h-.825zm2.325 6.443c-.584 0-1.009-.394-1.009-.927 0-.552.425-.94 1.01-.94.609 0 1.028.388 1.028.94 0 .533-.42.927-1.029.927\"},\"child\":[]}]})(props);\n};\nexport function BsQuestionOctagon (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M5.255 5.786a.237.237 0 0 0 .241.247h.825c.138 0 .248-.113.266-.25.09-.656.54-1.134 1.342-1.134.686 0 1.314.343 1.314 1.168 0 .635-.374.927-.965 1.371-.673.489-1.206 1.06-1.168 1.987l.003.217a.25.25 0 0 0 .25.246h.811a.25.25 0 0 0 .25-.25v-.105c0-.718.273-.927 1.01-1.486.609-.463 1.244-.977 1.244-2.056 0-1.511-1.276-2.241-2.673-2.241-1.267 0-2.655.59-2.75 2.286m1.557 5.763c0 .533.425.927 1.01.927.609 0 1.028-.394 1.028-.927 0-.552-.42-.94-1.029-.94-.584 0-1.009.388-1.009.94\"},\"child\":[]}]})(props);\n};\nexport function BsQuestionSquareFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm3.496 6.033a.237.237 0 0 1-.24-.247C5.35 4.091 6.737 3.5 8.005 3.5c1.396 0 2.672.73 2.672 2.24 0 1.08-.635 1.594-1.244 2.057-.737.559-1.01.768-1.01 1.486v.105a.25.25 0 0 1-.25.25h-.81a.25.25 0 0 1-.25-.246l-.004-.217c-.038-.927.495-1.498 1.168-1.987.59-.444.965-.736.965-1.371 0-.825-.628-1.168-1.314-1.168-.803 0-1.253.478-1.342 1.134-.018.137-.128.25-.266.25h-.825zm2.325 6.443c-.584 0-1.009-.394-1.009-.927 0-.552.425-.94 1.01-.94.609 0 1.028.388 1.028.94 0 .533-.42.927-1.029.927\"},\"child\":[]}]})(props);\n};\nexport function BsQuestionSquare (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M14 1a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1zM2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M5.255 5.786a.237.237 0 0 0 .241.247h.825c.138 0 .248-.113.266-.25.09-.656.54-1.134 1.342-1.134.686 0 1.314.343 1.314 1.168 0 .635-.374.927-.965 1.371-.673.489-1.206 1.06-1.168 1.987l.003.217a.25.25 0 0 0 .25.246h.811a.25.25 0 0 0 .25-.25v-.105c0-.718.273-.927 1.01-1.486.609-.463 1.244-.977 1.244-2.056 0-1.511-1.276-2.241-2.673-2.241-1.267 0-2.655.59-2.75 2.286m1.557 5.763c0 .533.425.927 1.01.927.609 0 1.028-.394 1.028-.927 0-.552-.42-.94-1.029-.94-.584 0-1.009.388-1.009.94\"},\"child\":[]}]})(props);\n};\nexport function BsQuestion (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5.255 5.786a.237.237 0 0 0 .241.247h.825c.138 0 .248-.113.266-.25.09-.656.54-1.134 1.342-1.134.686 0 1.314.343 1.314 1.168 0 .635-.374.927-.965 1.371-.673.489-1.206 1.06-1.168 1.987l.003.217a.25.25 0 0 0 .25.246h.811a.25.25 0 0 0 .25-.25v-.105c0-.718.273-.927 1.01-1.486.609-.463 1.244-.977 1.244-2.056 0-1.511-1.276-2.241-2.673-2.241-1.267 0-2.655.59-2.75 2.286m1.557 5.763c0 .533.425.927 1.01.927.609 0 1.028-.394 1.028-.927 0-.552-.42-.94-1.029-.94-.584 0-1.009.388-1.009.94\"},\"child\":[]}]})(props);\n};\nexport function BsQuora (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.73 12.476c-.554-1.091-1.204-2.193-2.473-2.193-.242 0-.484.04-.707.142l-.43-.863c.525-.45 1.373-.808 2.464-.808 1.697 0 2.568.818 3.26 1.86.41-.89.605-2.093.605-3.584 0-3.724-1.165-5.636-3.885-5.636-2.68 0-3.839 1.912-3.839 5.636 0 3.704 1.159 5.596 3.84 5.596.425 0 .811-.046 1.166-.15Zm.665 1.3a7 7 0 0 1-1.83.244C3.994 14.02.5 11.172.5 7.03.5 2.849 3.995 0 7.564 0c3.63 0 7.09 2.828 7.09 7.03 0 2.337-1.09 4.236-2.675 5.464.512.767 1.04 1.277 1.773 1.277.802 0 1.125-.62 1.179-1.105h1.043c.061.647-.262 3.334-3.178 3.334-1.767 0-2.7-1.024-3.4-2.224Z\"},\"child\":[]}]})(props);\n};\nexport function BsQuote (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12 12a1 1 0 0 0 1-1V8.558a1 1 0 0 0-1-1h-1.388q0-.527.062-1.054.093-.558.31-.992t.559-.683q.34-.279.868-.279V3q-.868 0-1.52.372a3.3 3.3 0 0 0-1.085.992 4.9 4.9 0 0 0-.62 1.458A7.7 7.7 0 0 0 9 7.558V11a1 1 0 0 0 1 1zm-6 0a1 1 0 0 0 1-1V8.558a1 1 0 0 0-1-1H4.612q0-.527.062-1.054.094-.558.31-.992.217-.434.559-.683.34-.279.868-.279V3q-.868 0-1.52.372a3.3 3.3 0 0 0-1.085.992 4.9 4.9 0 0 0-.62 1.458A7.7 7.7 0 0 0 3 7.558V11a1 1 0 0 0 1 1z\"},\"child\":[]}]})(props);\n};\nexport function BsRCircleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0M5.5 4.002V12h1.335V8.924H8.52L9.98 12h1.52L9.856 8.701c.828-.299 1.495-1.101 1.495-2.238 0-1.488-1.03-2.461-2.74-2.461zm1.335 1.09v2.777h1.549c.995 0 1.573-.463 1.573-1.36 0-.913-.596-1.417-1.537-1.417z\"},\"child\":[]}]})(props);\n};\nexport function BsRCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M1 8a7 7 0 1 0 14 0A7 7 0 0 0 1 8m15 0A8 8 0 1 1 0 8a8 8 0 0 1 16 0M5.5 4.002h3.11c1.71 0 2.741.973 2.741 2.46 0 1.138-.667 1.94-1.495 2.24L11.5 12H9.98L8.52 8.924H6.836V12H5.5zm1.335 1.09v2.777h1.549c.995 0 1.573-.463 1.573-1.36 0-.913-.596-1.417-1.537-1.417z\"},\"child\":[]}]})(props);\n};\nexport function BsRSquareFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.835 5.092v2.777h1.549c.995 0 1.573-.463 1.573-1.36 0-.913-.596-1.417-1.537-1.417z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm3.5 4.002h3.11c1.71 0 2.741.973 2.741 2.46 0 1.138-.667 1.94-1.495 2.24L11.5 12H9.98L8.52 8.924H6.836V12H5.5z\"},\"child\":[]}]})(props);\n};\nexport function BsRSquare (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5.5 4.002h3.11c1.71 0 2.741.973 2.741 2.46 0 1.138-.667 1.94-1.495 2.24L11.5 12H9.98L8.52 8.924H6.836V12H5.5zm1.335 1.09v2.777h1.549c.995 0 1.573-.463 1.573-1.36 0-.913-.596-1.417-1.537-1.417z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M0 2a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm15 0a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsRadar (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.634 1.135A7 7 0 0 1 15 8a.5.5 0 0 1-1 0 6 6 0 1 0-6.5 5.98v-1.005A5 5 0 1 1 13 8a.5.5 0 0 1-1 0 4 4 0 1 0-4.5 3.969v-1.011A2.999 2.999 0 1 1 11 8a.5.5 0 0 1-1 0 2 2 0 1 0-2.5 1.936v-1.07a1 1 0 1 1 1 0V15.5a.5.5 0 0 1-1 0v-.518a7 7 0 0 1-.866-13.847\"},\"child\":[]}]})(props);\n};\nexport function BsRadioactive (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 1a7 7 0 1 0 0 14A7 7 0 0 0 8 1M0 8a8 8 0 1 1 16 0A8 8 0 0 1 0 8\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M9.653 5.496A3 3 0 0 0 8 5c-.61 0-1.179.183-1.653.496L4.694 2.992A5.97 5.97 0 0 1 8 2c1.222 0 2.358.365 3.306.992zm1.342 2.324a3 3 0 0 1-.884 2.312 3 3 0 0 1-.769.552l1.342 2.683c.57-.286 1.09-.66 1.538-1.103a6 6 0 0 0 1.767-4.624zm-5.679 5.548 1.342-2.684A3 3 0 0 1 5.005 7.82l-2.994-.18a6 6 0 0 0 3.306 5.728ZM10 8a2 2 0 1 1-4 0 2 2 0 0 1 4 0\"},\"child\":[]}]})(props);\n};\nexport function BsRainbow (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 4.5a7 7 0 0 0-7 7 .5.5 0 0 1-1 0 8 8 0 1 1 16 0 .5.5 0 0 1-1 0 7 7 0 0 0-7-7m0 2a5 5 0 0 0-5 5 .5.5 0 0 1-1 0 6 6 0 1 1 12 0 .5.5 0 0 1-1 0 5 5 0 0 0-5-5m0 2a3 3 0 0 0-3 3 .5.5 0 0 1-1 0 4 4 0 1 1 8 0 .5.5 0 0 1-1 0 3 3 0 0 0-3-3m0 2a1 1 0 0 0-1 1 .5.5 0 0 1-1 0 2 2 0 1 1 4 0 .5.5 0 0 1-1 0 1 1 0 0 0-1-1\"},\"child\":[]}]})(props);\n};\nexport function BsReceiptCutoff (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3 4.5a.5.5 0 0 1 .5-.5h6a.5.5 0 1 1 0 1h-6a.5.5 0 0 1-.5-.5m0 2a.5.5 0 0 1 .5-.5h6a.5.5 0 1 1 0 1h-6a.5.5 0 0 1-.5-.5m0 2a.5.5 0 0 1 .5-.5h6a.5.5 0 1 1 0 1h-6a.5.5 0 0 1-.5-.5m0 2a.5.5 0 0 1 .5-.5h6a.5.5 0 0 1 0 1h-6a.5.5 0 0 1-.5-.5m0 2a.5.5 0 0 1 .5-.5h6a.5.5 0 0 1 0 1h-6a.5.5 0 0 1-.5-.5M11.5 4a.5.5 0 0 0 0 1h1a.5.5 0 0 0 0-1zm0 2a.5.5 0 0 0 0 1h1a.5.5 0 0 0 0-1zm0 2a.5.5 0 0 0 0 1h1a.5.5 0 0 0 0-1zm0 2a.5.5 0 0 0 0 1h1a.5.5 0 0 0 0-1zm0 2a.5.5 0 0 0 0 1h1a.5.5 0 0 0 0-1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2.354.646a.5.5 0 0 0-.801.13l-.5 1A.5.5 0 0 0 1 2v13H.5a.5.5 0 0 0 0 1h15a.5.5 0 0 0 0-1H15V2a.5.5 0 0 0-.053-.224l-.5-1a.5.5 0 0 0-.8-.13L13 1.293l-.646-.647a.5.5 0 0 0-.708 0L11 1.293l-.646-.647a.5.5 0 0 0-.708 0L9 1.293 8.354.646a.5.5 0 0 0-.708 0L7 1.293 6.354.646a.5.5 0 0 0-.708 0L5 1.293 4.354.646a.5.5 0 0 0-.708 0L3 1.293zm-.217 1.198.51.51a.5.5 0 0 0 .707 0L4 1.707l.646.647a.5.5 0 0 0 .708 0L6 1.707l.646.647a.5.5 0 0 0 .708 0L8 1.707l.646.647a.5.5 0 0 0 .708 0L10 1.707l.646.647a.5.5 0 0 0 .708 0L12 1.707l.646.647a.5.5 0 0 0 .708 0l.509-.51.137.274V15H2V2.118z\"},\"child\":[]}]})(props);\n};\nexport function BsReceipt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M1.92.506a.5.5 0 0 1 .434.14L3 1.293l.646-.647a.5.5 0 0 1 .708 0L5 1.293l.646-.647a.5.5 0 0 1 .708 0L7 1.293l.646-.647a.5.5 0 0 1 .708 0L9 1.293l.646-.647a.5.5 0 0 1 .708 0l.646.647.646-.647a.5.5 0 0 1 .708 0l.646.647.646-.647a.5.5 0 0 1 .801.13l.5 1A.5.5 0 0 1 15 2v12a.5.5 0 0 1-.053.224l-.5 1a.5.5 0 0 1-.8.13L13 14.707l-.646.647a.5.5 0 0 1-.708 0L11 14.707l-.646.647a.5.5 0 0 1-.708 0L9 14.707l-.646.647a.5.5 0 0 1-.708 0L7 14.707l-.646.647a.5.5 0 0 1-.708 0L5 14.707l-.646.647a.5.5 0 0 1-.708 0L3 14.707l-.646.647a.5.5 0 0 1-.801-.13l-.5-1A.5.5 0 0 1 1 14V2a.5.5 0 0 1 .053-.224l.5-1a.5.5 0 0 1 .367-.27m.217 1.338L2 2.118v11.764l.137.274.51-.51a.5.5 0 0 1 .707 0l.646.647.646-.646a.5.5 0 0 1 .708 0l.646.646.646-.646a.5.5 0 0 1 .708 0l.646.646.646-.646a.5.5 0 0 1 .708 0l.646.646.646-.646a.5.5 0 0 1 .708 0l.646.646.646-.646a.5.5 0 0 1 .708 0l.509.509.137-.274V2.118l-.137-.274-.51.51a.5.5 0 0 1-.707 0L12 1.707l-.646.647a.5.5 0 0 1-.708 0L10 1.707l-.646.647a.5.5 0 0 1-.708 0L8 1.707l-.646.647a.5.5 0 0 1-.708 0L6 1.707l-.646.647a.5.5 0 0 1-.708 0L4 1.707l-.646.647a.5.5 0 0 1-.708 0z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3 4.5a.5.5 0 0 1 .5-.5h6a.5.5 0 1 1 0 1h-6a.5.5 0 0 1-.5-.5m0 2a.5.5 0 0 1 .5-.5h6a.5.5 0 1 1 0 1h-6a.5.5 0 0 1-.5-.5m0 2a.5.5 0 0 1 .5-.5h6a.5.5 0 1 1 0 1h-6a.5.5 0 0 1-.5-.5m0 2a.5.5 0 0 1 .5-.5h6a.5.5 0 0 1 0 1h-6a.5.5 0 0 1-.5-.5m8-6a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 0 1h-1a.5.5 0 0 1-.5-.5m0 2a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 0 1h-1a.5.5 0 0 1-.5-.5m0 2a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 0 1h-1a.5.5 0 0 1-.5-.5m0 2a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 0 1h-1a.5.5 0 0 1-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsReception0 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 13.5a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1-.5-.5m4 0a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1-.5-.5m4 0a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1-.5-.5m4 0a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsReception1 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 11.5a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 .5.5v2a.5.5 0 0 1-.5.5h-2a.5.5 0 0 1-.5-.5zm4 2a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1-.5-.5m4 0a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1-.5-.5m4 0a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsReception2 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 11.5a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 .5.5v2a.5.5 0 0 1-.5.5h-2a.5.5 0 0 1-.5-.5zm4-3a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 .5.5v5a.5.5 0 0 1-.5.5h-2a.5.5 0 0 1-.5-.5zm4 5a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1-.5-.5m4 0a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsReception3 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 11.5a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 .5.5v2a.5.5 0 0 1-.5.5h-2a.5.5 0 0 1-.5-.5zm4-3a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 .5.5v5a.5.5 0 0 1-.5.5h-2a.5.5 0 0 1-.5-.5zm4-3a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 .5.5v8a.5.5 0 0 1-.5.5h-2a.5.5 0 0 1-.5-.5zm4 8a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsReception4 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 11.5a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 .5.5v2a.5.5 0 0 1-.5.5h-2a.5.5 0 0 1-.5-.5zm4-3a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 .5.5v5a.5.5 0 0 1-.5.5h-2a.5.5 0 0 1-.5-.5zm4-3a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 .5.5v8a.5.5 0 0 1-.5.5h-2a.5.5 0 0 1-.5-.5zm4-3a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 .5.5v11a.5.5 0 0 1-.5.5h-2a.5.5 0 0 1-.5-.5z\"},\"child\":[]}]})(props);\n};\nexport function BsRecordBtnFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 12V4a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2m8-1a3 3 0 1 0 0-6 3 3 0 0 0 0 6\"},\"child\":[]}]})(props);\n};\nexport function BsRecordBtn (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 11a3 3 0 1 0 0-6 3 3 0 0 0 0 6\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M0 4a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm15 0a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1v8a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsRecordCircleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0m-8 3a3 3 0 1 0 0-6 3 3 0 0 0 0 6\"},\"child\":[]}]})(props);\n};\nexport function BsRecordCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14m0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M11 8a3 3 0 1 1-6 0 3 3 0 0 1 6 0\"},\"child\":[]}]})(props);\n};\nexport function BsRecordFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M8 13A5 5 0 1 0 8 3a5 5 0 0 0 0 10\"},\"child\":[]}]})(props);\n};\nexport function BsRecord (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 12a4 4 0 1 1 0-8 4 4 0 0 1 0 8m0 1A5 5 0 1 0 8 3a5 5 0 0 0 0 10\"},\"child\":[]}]})(props);\n};\nexport function BsRecord2Fill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M10 8a2 2 0 1 1-4 0 2 2 0 0 1 4 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8 13A5 5 0 1 0 8 3a5 5 0 0 0 0 10m0-2a3 3 0 1 1 0-6 3 3 0 0 1 0 6\"},\"child\":[]}]})(props);\n};\nexport function BsRecord2 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 12a4 4 0 1 1 0-8 4 4 0 0 1 0 8m0 1A5 5 0 1 0 8 3a5 5 0 0 0 0 10\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M10 8a2 2 0 1 1-4 0 2 2 0 0 1 4 0\"},\"child\":[]}]})(props);\n};\nexport function BsRecycle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.302 1.256a1.5 1.5 0 0 0-2.604 0l-1.704 2.98a.5.5 0 0 0 .869.497l1.703-2.981a.5.5 0 0 1 .868 0l2.54 4.444-1.256-.337a.5.5 0 1 0-.26.966l2.415.647a.5.5 0 0 0 .613-.353l.647-2.415a.5.5 0 1 0-.966-.259l-.333 1.242zM2.973 7.773l-1.255.337a.5.5 0 1 1-.26-.966l2.416-.647a.5.5 0 0 1 .612.353l.647 2.415a.5.5 0 0 1-.966.259l-.333-1.242-2.545 4.454a.5.5 0 0 0 .434.748H5a.5.5 0 0 1 0 1H1.723A1.5 1.5 0 0 1 .421 12.24zm10.89 1.463a.5.5 0 1 0-.868.496l1.716 3.004a.5.5 0 0 1-.434.748h-5.57l.647-.646a.5.5 0 1 0-.708-.707l-1.5 1.5a.5.5 0 0 0 0 .707l1.5 1.5a.5.5 0 1 0 .708-.707l-.647-.647h5.57a1.5 1.5 0 0 0 1.302-2.244z\"},\"child\":[]}]})(props);\n};\nexport function BsReddit (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.167 8a.83.83 0 0 0-.83.83c0 .459.372.84.83.831a.831.831 0 0 0 0-1.661m1.843 3.647c.315 0 1.403-.038 1.976-.611a.23.23 0 0 0 0-.306.213.213 0 0 0-.306 0c-.353.363-1.126.487-1.67.487-.545 0-1.308-.124-1.671-.487a.213.213 0 0 0-.306 0 .213.213 0 0 0 0 .306c.564.563 1.652.61 1.977.61zm.992-2.807c0 .458.373.83.831.83s.83-.381.83-.83a.831.831 0 0 0-1.66 0z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0m-3.828-1.165c-.315 0-.602.124-.812.325-.801-.573-1.9-.945-3.121-.993l.534-2.501 1.738.372a.83.83 0 1 0 .83-.869.83.83 0 0 0-.744.468l-1.938-.41a.2.2 0 0 0-.153.028.2.2 0 0 0-.086.134l-.592 2.788c-1.24.038-2.358.41-3.17.992-.21-.2-.496-.324-.81-.324a1.163 1.163 0 0 0-.478 2.224q-.03.17-.029.353c0 1.795 2.091 3.256 4.669 3.256s4.668-1.451 4.668-3.256c0-.114-.01-.238-.029-.353.401-.181.688-.592.688-1.069 0-.65-.525-1.165-1.165-1.165\"},\"child\":[]}]})(props);\n};\nexport function BsRegex (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M3.05 3.05a7 7 0 0 0 0 9.9.5.5 0 0 1-.707.707 8 8 0 0 1 0-11.314.5.5 0 1 1 .707.707m9.9-.707a.5.5 0 0 1 .707 0 8 8 0 0 1 0 11.314.5.5 0 0 1-.707-.707 7 7 0 0 0 0-9.9.5.5 0 0 1 0-.707M6 11a1 1 0 1 1-2 0 1 1 0 0 1 2 0m5-6.5a.5.5 0 0 0-1 0v2.117L8.257 5.57a.5.5 0 0 0-.514.858L9.528 7.5 7.743 8.571a.5.5 0 1 0 .514.858L10 8.383V10.5a.5.5 0 1 0 1 0V8.383l1.743 1.046a.5.5 0 0 0 .514-.858L11.472 7.5l1.785-1.071a.5.5 0 1 0-.514-.858L11 6.617z\"},\"child\":[]}]})(props);\n};\nexport function BsRepeat1 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M11 4v1.466a.25.25 0 0 0 .41.192l2.36-1.966a.25.25 0 0 0 0-.384l-2.36-1.966a.25.25 0 0 0-.41.192V3H5a5 5 0 0 0-4.48 7.223.5.5 0 0 0 .896-.446A4 4 0 0 1 5 4zm4.48 1.777a.5.5 0 0 0-.896.446A4 4 0 0 1 11 12H5.001v-1.466a.25.25 0 0 0-.41-.192l-2.36 1.966a.25.25 0 0 0 0 .384l2.36 1.966a.25.25 0 0 0 .41-.192V13h6a5 5 0 0 0 4.48-7.223Z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M9 5.5a.5.5 0 0 0-.854-.354l-1.75 1.75a.5.5 0 1 0 .708.708L8 6.707V10.5a.5.5 0 0 0 1 0z\"},\"child\":[]}]})(props);\n};\nexport function BsRepeat (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M11 5.466V4H5a4 4 0 0 0-3.584 5.777.5.5 0 1 1-.896.446A5 5 0 0 1 5 3h6V1.534a.25.25 0 0 1 .41-.192l2.36 1.966c.12.1.12.284 0 .384l-2.36 1.966a.25.25 0 0 1-.41-.192m3.81.086a.5.5 0 0 1 .67.225A5 5 0 0 1 11 13H5v1.466a.25.25 0 0 1-.41.192l-2.36-1.966a.25.25 0 0 1 0-.384l2.36-1.966a.25.25 0 0 1 .41.192V12h6a4 4 0 0 0 3.585-5.777.5.5 0 0 1 .225-.67Z\"},\"child\":[]}]})(props);\n};\nexport function BsReplyAllFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.021 11.9 3.453 8.62a.72.72 0 0 1 0-1.238L8.021 4.1a.716.716 0 0 1 1.079.619V6c1.5 0 6 0 7 8-2.5-4.5-7-4-7-4v1.281c0 .56-.606.898-1.079.62z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M5.232 4.293a.5.5 0 0 1-.106.7L1.114 7.945l-.042.028a.147.147 0 0 0 0 .252l.042.028 4.012 2.954a.5.5 0 1 1-.593.805L.539 9.073a1.147 1.147 0 0 1 0-1.946l3.994-2.94a.5.5 0 0 1 .699.106\"},\"child\":[]}]})(props);\n};\nexport function BsReplyAll (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.098 5.013a.144.144 0 0 1 .202.134V6.3a.5.5 0 0 0 .5.5c.667 0 2.013.005 3.3.822.984.624 1.99 1.76 2.595 3.876-1.02-.983-2.185-1.516-3.205-1.799a8.7 8.7 0 0 0-1.921-.306 7 7 0 0 0-.798.008h-.013l-.005.001h-.001L8.8 9.9l-.05-.498a.5.5 0 0 0-.45.498v1.153c0 .108-.11.176-.202.134L4.114 8.254l-.042-.028a.147.147 0 0 1 0-.252l.042-.028zM9.3 10.386q.102 0 .223.006c.434.02 1.034.086 1.7.271 1.326.368 2.896 1.202 3.94 3.08a.5.5 0 0 0 .933-.305c-.464-3.71-1.886-5.662-3.46-6.66-1.245-.79-2.527-.942-3.336-.971v-.66a1.144 1.144 0 0 0-1.767-.96l-3.994 2.94a1.147 1.147 0 0 0 0 1.946l3.994 2.94a1.144 1.144 0 0 0 1.767-.96z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M5.232 4.293a.5.5 0 0 0-.7-.106L.54 7.127a1.147 1.147 0 0 0 0 1.946l3.994 2.94a.5.5 0 1 0 .593-.805L1.114 8.254l-.042-.028a.147.147 0 0 1 0-.252l.042-.028 4.012-2.954a.5.5 0 0 0 .106-.699\"},\"child\":[]}]})(props);\n};\nexport function BsReplyFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5.921 11.9 1.353 8.62a.72.72 0 0 1 0-1.238L5.921 4.1A.716.716 0 0 1 7 4.719V6c1.5 0 6 0 7 8-2.5-4.5-7-4-7-4v1.281c0 .56-.606.898-1.079.62z\"},\"child\":[]}]})(props);\n};\nexport function BsReply (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.598 5.013a.144.144 0 0 1 .202.134V6.3a.5.5 0 0 0 .5.5c.667 0 2.013.005 3.3.822.984.624 1.99 1.76 2.595 3.876-1.02-.983-2.185-1.516-3.205-1.799a8.7 8.7 0 0 0-1.921-.306 7 7 0 0 0-.798.008h-.013l-.005.001h-.001L7.3 9.9l-.05-.498a.5.5 0 0 0-.45.498v1.153c0 .108-.11.176-.202.134L2.614 8.254l-.042-.028a.147.147 0 0 1 0-.252l.042-.028zM7.8 10.386q.103 0 .223.006c.434.02 1.034.086 1.7.271 1.326.368 2.896 1.202 3.94 3.08a.5.5 0 0 0 .933-.305c-.464-3.71-1.886-5.662-3.46-6.66-1.245-.79-2.527-.942-3.336-.971v-.66a1.144 1.144 0 0 0-1.767-.96l-3.994 2.94a1.147 1.147 0 0 0 0 1.946l3.994 2.94a1.144 1.144 0 0 0 1.767-.96z\"},\"child\":[]}]})(props);\n};\nexport function BsRewindBtnFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 4v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2H2a2 2 0 0 0-2 2m7.729 1.055A.5.5 0 0 1 8 5.5v1.886l3.21-2.293A.5.5 0 0 1 12 5.5v5a.5.5 0 0 1-.79.407L8 8.614V10.5a.5.5 0 0 1-.79.407l-3.5-2.5a.5.5 0 0 1 0-.814l3.5-2.5a.5.5 0 0 1 .519-.038\"},\"child\":[]}]})(props);\n};\nexport function BsRewindBtn (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.21 5.093A.5.5 0 0 1 8 5.5v1.886l3.21-2.293A.5.5 0 0 1 12 5.5v5a.5.5 0 0 1-.79.407L8 8.614V10.5a.5.5 0 0 1-.79.407l-3.5-2.5a.5.5 0 0 1 0-.814z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M0 4a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm15 0a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1v8a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsRewindCircleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 16A8 8 0 1 0 8 0a8 8 0 0 0 0 16M7.729 5.055A.5.5 0 0 1 8 5.5v1.886l3.21-2.293A.5.5 0 0 1 12 5.5v5a.5.5 0 0 1-.79.407L8 8.614V10.5a.5.5 0 0 1-.79.407l-3.5-2.5a.5.5 0 0 1 0-.814l3.5-2.5a.5.5 0 0 1 .519-.038\"},\"child\":[]}]})(props);\n};\nexport function BsRewindCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.729 5.055a.5.5 0 0 0-.52.038l-3.5 2.5a.5.5 0 0 0 0 .814l3.5 2.5A.5.5 0 0 0 8 10.5V8.614l3.21 2.293A.5.5 0 0 0 12 10.5v-5a.5.5 0 0 0-.79-.407L8 7.386V5.5a.5.5 0 0 0-.271-.445\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0M1 8a7 7 0 1 0 14 0A7 7 0 0 0 1 8\"},\"child\":[]}]})(props);\n};\nexport function BsRewindFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.404 7.304a.802.802 0 0 0 0 1.392l6.363 3.692c.52.302 1.233-.043 1.233-.696V4.308c0-.653-.713-.998-1.233-.696z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M.404 7.304a.802.802 0 0 0 0 1.392l6.363 3.692c.52.302 1.233-.043 1.233-.696V4.308c0-.653-.713-.998-1.233-.696z\"},\"child\":[]}]})(props);\n};\nexport function BsRewind (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.196 8 15 4.633v6.734zm-.792-.696a.802.802 0 0 0 0 1.392l6.363 3.692c.52.302 1.233-.043 1.233-.696V4.308c0-.653-.713-.998-1.233-.696z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M1.196 8 7 4.633v6.734zm-.792-.696a.802.802 0 0 0 0 1.392l6.363 3.692c.52.302 1.233-.043 1.233-.696V4.308c0-.653-.713-.998-1.233-.696z\"},\"child\":[]}]})(props);\n};\nexport function BsRobot (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6 12.5a.5.5 0 0 1 .5-.5h3a.5.5 0 0 1 0 1h-3a.5.5 0 0 1-.5-.5M3 8.062C3 6.76 4.235 5.765 5.53 5.886a26.6 26.6 0 0 0 4.94 0C11.765 5.765 13 6.76 13 8.062v1.157a.93.93 0 0 1-.765.935c-.845.147-2.34.346-4.235.346s-3.39-.2-4.235-.346A.93.93 0 0 1 3 9.219zm4.542-.827a.25.25 0 0 0-.217.068l-.92.9a25 25 0 0 1-1.871-.183.25.25 0 0 0-.068.495c.55.076 1.232.149 2.02.193a.25.25 0 0 0 .189-.071l.754-.736.847 1.71a.25.25 0 0 0 .404.062l.932-.97a25 25 0 0 0 1.922-.188.25.25 0 0 0-.068-.495c-.538.074-1.207.145-1.98.189a.25.25 0 0 0-.166.076l-.754.785-.842-1.7a.25.25 0 0 0-.182-.135\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8.5 1.866a1 1 0 1 0-1 0V3h-2A4.5 4.5 0 0 0 1 7.5V8a1 1 0 0 0-1 1v2a1 1 0 0 0 1 1v1a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2v-1a1 1 0 0 0 1-1V9a1 1 0 0 0-1-1v-.5A4.5 4.5 0 0 0 10.5 3h-2zM14 7.5V13a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V7.5A3.5 3.5 0 0 1 5.5 4h5A3.5 3.5 0 0 1 14 7.5\"},\"child\":[]}]})(props);\n};\nexport function BsRocketFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M10.175 1.991c.81 1.312 1.583 3.43 1.778 6.819l1.5 1.83A2.5 2.5 0 0 1 14 12.202V15.5a.5.5 0 0 1-.9.3l-1.125-1.5c-.166-.222-.42-.4-.752-.57-.214-.108-.414-.192-.627-.282l-.196-.083C9.7 13.793 8.85 14 8 14s-1.7-.207-2.4-.635q-.101.044-.198.084c-.211.089-.411.173-.625.281-.332.17-.586.348-.752.57L2.9 15.8a.5.5 0 0 1-.9-.3v-3.298a2.5 2.5 0 0 1 .548-1.562l.004-.005L4.049 8.81c.197-3.323.969-5.434 1.774-6.756.466-.767.94-1.262 1.31-1.57a3.7 3.7 0 0 1 .601-.41A.55.55 0 0 1 8 0c.101 0 .17.027.25.064q.056.025.145.075c.118.066.277.167.463.315.373.297.85.779 1.317 1.537M9.5 6c0-1.105-.672-2-1.5-2s-1.5.895-1.5 2S7.172 8 8 8s1.5-.895 1.5-2\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8 14.5c.5 0 .999-.046 1.479-.139L8.4 15.8a.5.5 0 0 1-.8 0l-1.079-1.439c.48.093.98.139 1.479.139\"},\"child\":[]}]})(props);\n};\nexport function BsRocketTakeoffFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12.17 9.53c2.307-2.592 3.278-4.684 3.641-6.218.21-.887.214-1.58.16-2.065a3.6 3.6 0 0 0-.108-.563 2 2 0 0 0-.078-.23V.453c-.073-.164-.168-.234-.352-.295a2 2 0 0 0-.16-.045 4 4 0 0 0-.57-.093c-.49-.044-1.19-.03-2.08.188-1.536.374-3.618 1.343-6.161 3.604l-2.4.238h-.006a2.55 2.55 0 0 0-1.524.734L.15 7.17a.512.512 0 0 0 .433.868l1.896-.271c.28-.04.592.013.955.132.232.076.437.16.655.248l.203.083c.196.816.66 1.58 1.275 2.195.613.614 1.376 1.08 2.191 1.277l.082.202c.089.218.173.424.249.657.118.363.172.676.132.956l-.271 1.9a.512.512 0 0 0 .867.433l2.382-2.386c.41-.41.668-.949.732-1.526zm.11-3.699c-.797.8-1.93.961-2.528.362-.598-.6-.436-1.733.361-2.532.798-.799 1.93-.96 2.528-.361s.437 1.732-.36 2.531Z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M5.205 10.787a7.6 7.6 0 0 0 1.804 1.352c-1.118 1.007-4.929 2.028-5.054 1.903-.126-.127.737-4.189 1.839-5.18.346.69.837 1.35 1.411 1.925\"},\"child\":[]}]})(props);\n};\nexport function BsRocketTakeoff (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.752 6.193c.599.6 1.73.437 2.528-.362s.96-1.932.362-2.531c-.599-.6-1.73-.438-2.528.361-.798.8-.96 1.933-.362 2.532\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M15.811 3.312c-.363 1.534-1.334 3.626-3.64 6.218l-.24 2.408a2.56 2.56 0 0 1-.732 1.526L8.817 15.85a.51.51 0 0 1-.867-.434l.27-1.899c.04-.28-.013-.593-.131-.956a9 9 0 0 0-.249-.657l-.082-.202c-.815-.197-1.578-.662-2.191-1.277-.614-.615-1.079-1.379-1.275-2.195l-.203-.083a10 10 0 0 0-.655-.248c-.363-.119-.675-.172-.955-.132l-1.896.27A.51.51 0 0 1 .15 7.17l2.382-2.386c.41-.41.947-.67 1.524-.734h.006l2.4-.238C9.005 1.55 11.087.582 12.623.208c.89-.217 1.59-.232 2.08-.188.244.023.435.06.57.093q.1.026.16.045c.184.06.279.13.351.295l.029.073a3.5 3.5 0 0 1 .157.721c.055.485.051 1.178-.159 2.065m-4.828 7.475.04-.04-.107 1.081a1.54 1.54 0 0 1-.44.913l-1.298 1.3.054-.38c.072-.506-.034-.993-.172-1.418a9 9 0 0 0-.164-.45c.738-.065 1.462-.38 2.087-1.006M5.205 5c-.625.626-.94 1.351-1.004 2.09a9 9 0 0 0-.45-.164c-.424-.138-.91-.244-1.416-.172l-.38.054 1.3-1.3c.245-.246.566-.401.91-.44l1.08-.107zm9.406-3.961c-.38-.034-.967-.027-1.746.163-1.558.38-3.917 1.496-6.937 4.521-.62.62-.799 1.34-.687 2.051.107.676.483 1.362 1.048 1.928.564.565 1.25.941 1.924 1.049.71.112 1.429-.067 2.048-.688 3.079-3.083 4.192-5.444 4.556-6.987.183-.771.18-1.345.138-1.713a3 3 0 0 0-.045-.283 3 3 0 0 0-.3-.041Z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M7.009 12.139a7.6 7.6 0 0 1-1.804-1.352A7.6 7.6 0 0 1 3.794 8.86c-1.102.992-1.965 5.054-1.839 5.18.125.126 3.936-.896 5.054-1.902Z\"},\"child\":[]}]})(props);\n};\nexport function BsRocket (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 8c.828 0 1.5-.895 1.5-2S8.828 4 8 4s-1.5.895-1.5 2S7.172 8 8 8\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M11.953 8.81c-.195-3.388-.968-5.507-1.777-6.819C9.707 1.233 9.23.751 8.857.454a3.5 3.5 0 0 0-.463-.315A2 2 0 0 0 8.25.064.55.55 0 0 0 8 0a.55.55 0 0 0-.266.073 2 2 0 0 0-.142.08 4 4 0 0 0-.459.33c-.37.308-.844.803-1.31 1.57-.805 1.322-1.577 3.433-1.774 6.756l-1.497 1.826-.004.005A2.5 2.5 0 0 0 2 12.202V15.5a.5.5 0 0 0 .9.3l1.125-1.5c.166-.222.42-.4.752-.57.214-.108.414-.192.625-.281l.198-.084c.7.428 1.55.635 2.4.635s1.7-.207 2.4-.635q.1.044.196.083c.213.09.413.174.627.282.332.17.586.348.752.57l1.125 1.5a.5.5 0 0 0 .9-.3v-3.298a2.5 2.5 0 0 0-.548-1.562zM12 10.445v.055c0 .866-.284 1.585-.75 2.14.146.064.292.13.425.199.39.197.8.46 1.1.86L13 14v-1.798a1.5 1.5 0 0 0-.327-.935zM4.75 12.64C4.284 12.085 4 11.366 4 10.5v-.054l-.673.82a1.5 1.5 0 0 0-.327.936V14l.225-.3c.3-.4.71-.664 1.1-.861.133-.068.279-.135.425-.199M8.009 1.073q.096.06.226.163c.284.226.683.621 1.09 1.28C10.137 3.836 11 6.237 11 10.5c0 .858-.374 1.48-.943 1.893C9.517 12.786 8.781 13 8 13s-1.517-.214-2.057-.607C5.373 11.979 5 11.358 5 10.5c0-4.182.86-6.586 1.677-7.928.409-.67.81-1.082 1.096-1.32q.136-.113.236-.18Z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M9.479 14.361c-.48.093-.98.139-1.479.139s-.999-.046-1.479-.139L7.6 15.8a.5.5 0 0 0 .8 0z\"},\"child\":[]}]})(props);\n};\nexport function BsRouterFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5.525 3.025a3.5 3.5 0 0 1 4.95 0 .5.5 0 1 0 .707-.707 4.5 4.5 0 0 0-6.364 0 .5.5 0 0 0 .707.707\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M6.94 4.44a1.5 1.5 0 0 1 2.12 0 .5.5 0 0 0 .708-.708 2.5 2.5 0 0 0-3.536 0 .5.5 0 0 0 .707.707Z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2.974 2.342a.5.5 0 1 0-.948.316L3.806 8H1.5A1.5 1.5 0 0 0 0 9.5v2A1.5 1.5 0 0 0 1.5 13H2a.5.5 0 0 0 .5.5h2A.5.5 0 0 0 5 13h6a.5.5 0 0 0 .5.5h2a.5.5 0 0 0 .5-.5h.5a1.5 1.5 0 0 0 1.5-1.5v-2A1.5 1.5 0 0 0 14.5 8h-2.306l1.78-5.342a.5.5 0 1 0-.948-.316L11.14 8H4.86zM2.5 11a.5.5 0 1 1 0-1 .5.5 0 0 1 0 1m4.5-.5a.5.5 0 1 1 1 0 .5.5 0 0 1-1 0m2.5.5a.5.5 0 1 1 0-1 .5.5 0 0 1 0 1m1.5-.5a.5.5 0 1 1 1 0 .5.5 0 0 1-1 0m2 0a.5.5 0 1 1 1 0 .5.5 0 0 1-1 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8.5 5.5a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0\"},\"child\":[]}]})(props);\n};\nexport function BsRouter (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5.525 3.025a3.5 3.5 0 0 1 4.95 0 .5.5 0 1 0 .707-.707 4.5 4.5 0 0 0-6.364 0 .5.5 0 0 0 .707.707\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M6.94 4.44a1.5 1.5 0 0 1 2.12 0 .5.5 0 0 0 .708-.708 2.5 2.5 0 0 0-3.536 0 .5.5 0 0 0 .707.707ZM2.5 11a.5.5 0 1 1 0-1 .5.5 0 0 1 0 1m4.5-.5a.5.5 0 1 0 1 0 .5.5 0 0 0-1 0m2.5.5a.5.5 0 1 1 0-1 .5.5 0 0 1 0 1m1.5-.5a.5.5 0 1 0 1 0 .5.5 0 0 0-1 0m2 0a.5.5 0 1 0 1 0 .5.5 0 0 0-1 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2.974 2.342a.5.5 0 1 0-.948.316L3.806 8H1.5A1.5 1.5 0 0 0 0 9.5v2A1.5 1.5 0 0 0 1.5 13H2a.5.5 0 0 0 .5.5h2A.5.5 0 0 0 5 13h6a.5.5 0 0 0 .5.5h2a.5.5 0 0 0 .5-.5h.5a1.5 1.5 0 0 0 1.5-1.5v-2A1.5 1.5 0 0 0 14.5 8h-2.306l1.78-5.342a.5.5 0 1 0-.948-.316L11.14 8H4.86zM14.5 9a.5.5 0 0 1 .5.5v2a.5.5 0 0 1-.5.5h-13a.5.5 0 0 1-.5-.5v-2a.5.5 0 0 1 .5-.5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8.5 5.5a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0\"},\"child\":[]}]})(props);\n};\nexport function BsRssFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm1.5 2.5c5.523 0 10 4.477 10 10a1 1 0 1 1-2 0 8 8 0 0 0-8-8 1 1 0 0 1 0-2m0 4a6 6 0 0 1 6 6 1 1 0 1 1-2 0 4 4 0 0 0-4-4 1 1 0 0 1 0-2m.5 7a1.5 1.5 0 1 1 0-3 1.5 1.5 0 0 1 0 3\"},\"child\":[]}]})(props);\n};\nexport function BsRss (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M14 1a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1zM2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M5.5 12a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0m-3-8.5a1 1 0 0 1 1-1c5.523 0 10 4.477 10 10a1 1 0 1 1-2 0 8 8 0 0 0-8-8 1 1 0 0 1-1-1m0 4a1 1 0 0 1 1-1 6 6 0 0 1 6 6 1 1 0 1 1-2 0 4 4 0 0 0-4-4 1 1 0 0 1-1-1\"},\"child\":[]}]})(props);\n};\nexport function BsRulers (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M1 0a1 1 0 0 0-1 1v14a1 1 0 0 0 1 1h5v-1H2v-1h4v-1H4v-1h2v-1H2v-1h4V9H4V8h2V7H2V6h4V2h1v4h1V4h1v2h1V2h1v4h1V4h1v2h1V2h1v4h1V1a1 1 0 0 0-1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsSafeFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.778 9.414A2 2 0 1 1 6.95 6.586a2 2 0 0 1 2.828 2.828\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2.5 0A1.5 1.5 0 0 0 1 1.5V3H.5a.5.5 0 0 0 0 1H1v3.5H.5a.5.5 0 0 0 0 1H1V12H.5a.5.5 0 0 0 0 1H1v1.5A1.5 1.5 0 0 0 2.5 16h12a1.5 1.5 0 0 0 1.5-1.5v-13A1.5 1.5 0 0 0 14.5 0zm3.036 4.464 1.09 1.09a3 3 0 0 1 3.476 0l1.09-1.09a.5.5 0 1 1 .707.708l-1.09 1.09c.74 1.037.74 2.44 0 3.476l1.09 1.09a.5.5 0 1 1-.707.708l-1.09-1.09a3 3 0 0 1-3.476 0l-1.09 1.09a.5.5 0 1 1-.708-.708l1.09-1.09a3 3 0 0 1 0-3.476l-1.09-1.09a.5.5 0 1 1 .708-.708M14 6.5v3a.5.5 0 0 1-1 0v-3a.5.5 0 0 1 1 0\"},\"child\":[]}]})(props);\n};\nexport function BsSafe (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M1 1.5A1.5 1.5 0 0 1 2.5 0h12A1.5 1.5 0 0 1 16 1.5v13a1.5 1.5 0 0 1-1.5 1.5h-12A1.5 1.5 0 0 1 1 14.5V13H.5a.5.5 0 0 1 0-1H1V8.5H.5a.5.5 0 0 1 0-1H1V4H.5a.5.5 0 0 1 0-1H1zM2.5 1a.5.5 0 0 0-.5.5v13a.5.5 0 0 0 .5.5h12a.5.5 0 0 0 .5-.5v-13a.5.5 0 0 0-.5-.5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M13.5 6a.5.5 0 0 1 .5.5v3a.5.5 0 0 1-1 0v-3a.5.5 0 0 1 .5-.5M4.828 4.464a.5.5 0 0 1 .708 0l1.09 1.09a3 3 0 0 1 3.476 0l1.09-1.09a.5.5 0 1 1 .707.708l-1.09 1.09c.74 1.037.74 2.44 0 3.476l1.09 1.09a.5.5 0 1 1-.707.708l-1.09-1.09a3 3 0 0 1-3.476 0l-1.09 1.09a.5.5 0 1 1-.708-.708l1.09-1.09a3 3 0 0 1 0-3.476l-1.09-1.09a.5.5 0 0 1 0-.708M6.95 6.586a2 2 0 1 0 2.828 2.828A2 2 0 0 0 6.95 6.586\"},\"child\":[]}]})(props);\n};\nexport function BsSafe2Fill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.563 8H5.035a3.5 3.5 0 0 1 .662-1.596l1.08 1.08q-.142.24-.214.516m.921-1.223-1.08-1.08A3.5 3.5 0 0 1 8 5.035v1.528q-.277.072-.516.214M9 6.563V5.035a3.5 3.5 0 0 1 1.596.662l-1.08 1.08A2 2 0 0 0 9 6.563m1.223.921 1.08-1.08c.343.458.577 1.003.662 1.596h-1.528a2 2 0 0 0-.214-.516M10.437 9h1.528a3.5 3.5 0 0 1-.662 1.596l-1.08-1.08q.142-.24.214-.516m-.921 1.223 1.08 1.08A3.5 3.5 0 0 1 9 11.965v-1.528q.277-.072.516-.214M8 10.437v1.528a3.5 3.5 0 0 1-1.596-.662l1.08-1.08q.24.142.516.214m-1.223-.921-1.08 1.08A3.5 3.5 0 0 1 5.035 9h1.528q.072.277.214.516M7.5 8.5a1 1 0 1 1 2 0 1 1 0 0 1-2 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2.5 1A1.5 1.5 0 0 0 1 2.5V3H.5a.5.5 0 0 0 0 1H1v4H.5a.5.5 0 0 0 0 1H1v4H.5a.5.5 0 0 0 0 1H1v.5A1.5 1.5 0 0 0 2.5 16h12a1.5 1.5 0 0 0 1.5-1.5v-12A1.5 1.5 0 0 0 14.5 1zm6 3a4.5 4.5 0 1 1 0 9 4.5 4.5 0 0 1 0-9\"},\"child\":[]}]})(props);\n};\nexport function BsSafe2 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M1 2.5A1.5 1.5 0 0 1 2.5 1h12A1.5 1.5 0 0 1 16 2.5v12a1.5 1.5 0 0 1-1.5 1.5h-12A1.5 1.5 0 0 1 1 14.5V14H.5a.5.5 0 0 1 0-1H1V9H.5a.5.5 0 0 1 0-1H1V4H.5a.5.5 0 0 1 0-1H1zM2.5 2a.5.5 0 0 0-.5.5v12a.5.5 0 0 0 .5.5h12a.5.5 0 0 0 .5-.5v-12a.5.5 0 0 0-.5-.5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M5.035 8h1.528q.072-.277.214-.516l-1.08-1.08A3.5 3.5 0 0 0 5.035 8m1.369-2.303 1.08 1.08q.24-.142.516-.214V5.035a3.5 3.5 0 0 0-1.596.662M9 5.035v1.528q.277.072.516.214l1.08-1.08A3.5 3.5 0 0 0 9 5.035m2.303 1.369-1.08 1.08q.142.24.214.516h1.528a3.5 3.5 0 0 0-.662-1.596M11.965 9h-1.528q-.072.277-.214.516l1.08 1.08A3.5 3.5 0 0 0 11.965 9m-1.369 2.303-1.08-1.08q-.24.142-.516.214v1.528a3.5 3.5 0 0 0 1.596-.662M8 11.965v-1.528a2 2 0 0 1-.516-.214l-1.08 1.08A3.5 3.5 0 0 0 8 11.965m-2.303-1.369 1.08-1.08A2 2 0 0 1 6.563 9H5.035c.085.593.319 1.138.662 1.596M4 8.5a4.5 4.5 0 1 1 9 0 4.5 4.5 0 0 1-9 0m4.5-1a1 1 0 1 0 0 2 1 1 0 0 0 0-2\"},\"child\":[]}]})(props);\n};\nexport function BsSaveFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.5 1.5A1.5 1.5 0 0 1 10 0h4a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2h6c-.314.418-.5.937-.5 1.5v7.793L4.854 6.646a.5.5 0 1 0-.708.708l3.5 3.5a.5.5 0 0 0 .708 0l3.5-3.5a.5.5 0 0 0-.708-.708L8.5 9.293z\"},\"child\":[]}]})(props);\n};\nexport function BsSave (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 1a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H9.5a1 1 0 0 0-1 1v7.293l2.646-2.647a.5.5 0 0 1 .708.708l-3.5 3.5a.5.5 0 0 1-.708 0l-3.5-3.5a.5.5 0 1 1 .708-.708L7.5 9.293V2a2 2 0 0 1 2-2H14a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2h2.5a.5.5 0 0 1 0 1z\"},\"child\":[]}]})(props);\n};\nexport function BsSave2Fill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.5 1.5A1.5 1.5 0 0 1 10 0h4a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2h6c-.314.418-.5.937-.5 1.5v6h-2a.5.5 0 0 0-.354.854l2.5 2.5a.5.5 0 0 0 .708 0l2.5-2.5A.5.5 0 0 0 10.5 7.5h-2z\"},\"child\":[]}]})(props);\n};\nexport function BsSave2 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 1a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H9.5a1 1 0 0 0-1 1v4.5h2a.5.5 0 0 1 .354.854l-2.5 2.5a.5.5 0 0 1-.708 0l-2.5-2.5A.5.5 0 0 1 5.5 6.5h2V2a2 2 0 0 1 2-2H14a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2h2.5a.5.5 0 0 1 0 1z\"},\"child\":[]}]})(props);\n};\nexport function BsScissors (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3.5 3.5c-.614-.884-.074-1.962.858-2.5L8 7.226 11.642 1c.932.538 1.472 1.616.858 2.5L8.81 8.61l1.556 2.661a2.5 2.5 0 1 1-.794.637L8 9.73l-1.572 2.177a2.5 2.5 0 1 1-.794-.637L7.19 8.61zm2.5 10a1.5 1.5 0 1 0-3 0 1.5 1.5 0 0 0 3 0m7 0a1.5 1.5 0 1 0-3 0 1.5 1.5 0 0 0 3 0\"},\"child\":[]}]})(props);\n};\nexport function BsScooter (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M9 2.5a.5.5 0 0 1 .5-.5h3a.5.5 0 0 1 0 1h-.39l1.4 7a2.5 2.5 0 1 1-.98.195l-.189-.938-2.43 3.527A.5.5 0 0 1 9.5 13H4.95a2.5 2.5 0 1 1 0-1h4.287l2.831-4.11L11.09 3H9.5a.5.5 0 0 1-.5-.5M3.915 12a1.5 1.5 0 1 0 0 1H2.5a.5.5 0 0 1 0-1zm8.817-.789A1.499 1.499 0 0 0 13.5 14a1.5 1.5 0 0 0 .213-2.985l.277 1.387a.5.5 0 0 1-.98.196z\"},\"child\":[]}]})(props);\n};\nexport function BsScrewdriver (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 .995.995 0l3.064 2.19a1 1 0 0 1 .417.809v.07c0 .264.105.517.291.704l5.677 5.676.909-.303a1 1 0 0 1 1.018.24l3.338 3.339a.995.995 0 0 1 0 1.406L14.13 15.71a.995.995 0 0 1-1.406 0l-3.337-3.34a1 1 0 0 1-.24-1.018l.302-.909-5.676-5.677a1 1 0 0 0-.704-.291H3a1 1 0 0 1-.81-.417zm11.293 9.595a.497.497 0 1 0-.703.703l2.984 2.984a.497.497 0 0 0 .703-.703z\"},\"child\":[]}]})(props);\n};\nexport function BsSdCardFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12.5 0H5.914a1.5 1.5 0 0 0-1.06.44L2.439 2.853A1.5 1.5 0 0 0 2 3.914V14.5A1.5 1.5 0 0 0 3.5 16h9a1.5 1.5 0 0 0 1.5-1.5v-13A1.5 1.5 0 0 0 12.5 0m-7 2.75a.75.75 0 0 1 .75.75v2a.75.75 0 0 1-1.5 0v-2a.75.75 0 0 1 .75-.75m2 0a.75.75 0 0 1 .75.75v2a.75.75 0 0 1-1.5 0v-2a.75.75 0 0 1 .75-.75m2.75.75v2a.75.75 0 0 1-1.5 0v-2a.75.75 0 0 1 1.5 0m1.25-.75a.75.75 0 0 1 .75.75v2a.75.75 0 0 1-1.5 0v-2a.75.75 0 0 1 .75-.75\"},\"child\":[]}]})(props);\n};\nexport function BsSdCard (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.25 3.5a.75.75 0 0 0-1.5 0v2a.75.75 0 0 0 1.5 0zm2 0a.75.75 0 0 0-1.5 0v2a.75.75 0 0 0 1.5 0zm2 0a.75.75 0 0 0-1.5 0v2a.75.75 0 0 0 1.5 0zm2 0a.75.75 0 0 0-1.5 0v2a.75.75 0 0 0 1.5 0z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M5.914 0H12.5A1.5 1.5 0 0 1 14 1.5v13a1.5 1.5 0 0 1-1.5 1.5h-9A1.5 1.5 0 0 1 2 14.5V3.914c0-.398.158-.78.44-1.06L4.853.439A1.5 1.5 0 0 1 5.914 0M13 1.5a.5.5 0 0 0-.5-.5H5.914a.5.5 0 0 0-.353.146L3.146 3.561A.5.5 0 0 0 3 3.914V14.5a.5.5 0 0 0 .5.5h9a.5.5 0 0 0 .5-.5z\"},\"child\":[]}]})(props);\n};\nexport function BsSearchHeartFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.5 13a6.47 6.47 0 0 0 3.845-1.258h-.001q.044.06.098.115l3.85 3.85a1 1 0 0 0 1.415-1.414l-3.85-3.85a1 1 0 0 0-.115-.1A6.47 6.47 0 0 0 13 6.5 6.5 6.5 0 0 0 6.5 0a6.5 6.5 0 1 0 0 13m0-8.518c1.664-1.673 5.825 1.254 0 5.018-5.825-3.764-1.664-6.69 0-5.018\"},\"child\":[]}]})(props);\n};\nexport function BsSearchHeart (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.5 4.482c1.664-1.673 5.825 1.254 0 5.018-5.825-3.764-1.664-6.69 0-5.018\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M13 6.5a6.47 6.47 0 0 1-1.258 3.844q.06.044.115.098l3.85 3.85a1 1 0 0 1-1.414 1.415l-3.85-3.85a1 1 0 0 1-.1-.115h.002A6.5 6.5 0 1 1 13 6.5M6.5 12a5.5 5.5 0 1 0 0-11 5.5 5.5 0 0 0 0 11\"},\"child\":[]}]})(props);\n};\nexport function BsSearch (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M11.742 10.344a6.5 6.5 0 1 0-1.397 1.398h-.001q.044.06.098.115l3.85 3.85a1 1 0 0 0 1.415-1.414l-3.85-3.85a1 1 0 0 0-.115-.1zM12 6.5a5.5 5.5 0 1 1-11 0 5.5 5.5 0 0 1 11 0\"},\"child\":[]}]})(props);\n};\nexport function BsSegmentedNav (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 6a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v2a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm6 3h4V5H6zm9-1V6a1 1 0 0 0-1-1h-3v4h3a1 1 0 0 0 1-1\"},\"child\":[]}]})(props);\n};\nexport function BsSendArrowDownFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M15.854.146a.5.5 0 0 1 .11.54L13.026 8.03A4.5 4.5 0 0 0 8 12.5c0 .5 0 1.5-.773.36l-1.59-2.498L.644 7.184l-.002-.001-.41-.261a.5.5 0 0 1 .083-.886l.452-.18.001-.001L15.314.035a.5.5 0 0 1 .54.111M6.637 10.07l7.494-7.494.471-1.178-1.178.471L5.93 9.363l.338.215a.5.5 0 0 1 .154.154z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M12.5 16a3.5 3.5 0 1 0 0-7 3.5 3.5 0 0 0 0 7m.354-1.646a.5.5 0 0 1-.722-.016l-1.149-1.25a.5.5 0 1 1 .737-.676l.28.305V11a.5.5 0 0 1 1 0v1.793l.396-.397a.5.5 0 0 1 .708.708z\"},\"child\":[]}]})(props);\n};\nexport function BsSendArrowDown (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M15.854.146a.5.5 0 0 1 .11.54l-2.8 7a.5.5 0 1 1-.928-.372l1.895-4.738-7.494 7.494 1.376 2.162a.5.5 0 1 1-.844.537l-1.531-2.407L.643 7.184a.75.75 0 0 1 .124-1.33L15.314.037a.5.5 0 0 1 .54.11ZM5.93 9.363l7.494-7.494L1.591 6.602z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M12.5 16a3.5 3.5 0 1 0 0-7 3.5 3.5 0 0 0 0 7m.354-1.646a.5.5 0 0 1-.722-.016l-1.149-1.25a.5.5 0 1 1 .737-.676l.28.305V11a.5.5 0 0 1 1 0v1.793l.396-.397a.5.5 0 0 1 .708.708z\"},\"child\":[]}]})(props);\n};\nexport function BsSendArrowUpFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M15.854.146a.5.5 0 0 1 .11.54L13.026 8.03A4.5 4.5 0 0 0 8 12.5c0 .5 0 1.5-.773.36l-1.59-2.498L.644 7.184l-.002-.001-.41-.261a.5.5 0 0 1 .083-.886l.452-.18.001-.001L15.314.035a.5.5 0 0 1 .54.111M6.637 10.07l7.494-7.494.471-1.178-1.178.471L5.93 9.363l.338.215a.5.5 0 0 1 .154.154z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M12.5 16a3.5 3.5 0 1 0 0-7 3.5 3.5 0 0 0 0 7m.354-5.354a.5.5 0 0 0-.722.016l-1.149 1.25a.5.5 0 1 0 .737.676l.28-.305V14a.5.5 0 0 0 1 0v-1.793l.396.397a.5.5 0 0 0 .708-.708z\"},\"child\":[]}]})(props);\n};\nexport function BsSendArrowUp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M15.854.146a.5.5 0 0 1 .11.54l-2.8 7a.5.5 0 1 1-.928-.372l1.895-4.738-7.494 7.494 1.376 2.162a.5.5 0 1 1-.844.537l-1.531-2.407L.643 7.184a.75.75 0 0 1 .124-1.33L15.314.037a.5.5 0 0 1 .54.11ZM5.93 9.363l7.494-7.494L1.591 6.602z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M12.5 16a3.5 3.5 0 1 0 0-7 3.5 3.5 0 0 0 0 7m.354-5.354a.5.5 0 0 0-.722.016l-1.149 1.25a.5.5 0 1 0 .737.676l.28-.305V14a.5.5 0 0 0 1 0v-1.793l.396.397a.5.5 0 0 0 .708-.708z\"},\"child\":[]}]})(props);\n};\nexport function BsSendCheckFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M15.964.686a.5.5 0 0 0-.65-.65L.767 5.855H.766l-.452.18a.5.5 0 0 0-.082.887l.41.26.001.002 4.995 3.178 1.59 2.498C8 14 8 13 8 12.5a4.5 4.5 0 0 1 5.026-4.47zm-1.833 1.89L6.637 10.07l-.215-.338a.5.5 0 0 0-.154-.154l-.338-.215 7.494-7.494 1.178-.471z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M16 12.5a3.5 3.5 0 1 1-7 0 3.5 3.5 0 0 1 7 0m-1.993-1.679a.5.5 0 0 0-.686.172l-1.17 1.95-.547-.547a.5.5 0 0 0-.708.708l.774.773a.75.75 0 0 0 1.174-.144l1.335-2.226a.5.5 0 0 0-.172-.686\"},\"child\":[]}]})(props);\n};\nexport function BsSendCheck (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M15.964.686a.5.5 0 0 0-.65-.65L.767 5.855a.75.75 0 0 0-.124 1.329l4.995 3.178 1.531 2.406a.5.5 0 0 0 .844-.536L6.637 10.07l7.494-7.494-1.895 4.738a.5.5 0 1 0 .928.372zm-2.54 1.183L5.93 9.363 1.591 6.602z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M16 12.5a3.5 3.5 0 1 1-7 0 3.5 3.5 0 0 1 7 0m-1.993-1.679a.5.5 0 0 0-.686.172l-1.17 1.95-.547-.547a.5.5 0 0 0-.708.708l.774.773a.75.75 0 0 0 1.174-.144l1.335-2.226a.5.5 0 0 0-.172-.686\"},\"child\":[]}]})(props);\n};\nexport function BsSendDashFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M15.964.686a.5.5 0 0 0-.65-.65L.767 5.855H.766l-.452.18a.5.5 0 0 0-.082.887l.41.26.001.002 4.995 3.178 1.59 2.498C8 14 8 13 8 12.5a4.5 4.5 0 0 1 5.026-4.47zm-1.833 1.89L6.637 10.07l-.215-.338a.5.5 0 0 0-.154-.154l-.338-.215 7.494-7.494 1.178-.471z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M16 12.5a3.5 3.5 0 1 1-7 0 3.5 3.5 0 0 1 7 0m-5.5 0a.5.5 0 0 0 .5.5h3a.5.5 0 0 0 0-1h-3a.5.5 0 0 0-.5.5\"},\"child\":[]}]})(props);\n};\nexport function BsSendDash (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M15.964.686a.5.5 0 0 0-.65-.65L.767 5.855a.75.75 0 0 0-.124 1.329l4.995 3.178 1.531 2.406a.5.5 0 0 0 .844-.536L6.637 10.07l7.494-7.494-1.895 4.738a.5.5 0 1 0 .928.372zm-2.54 1.183L5.93 9.363 1.591 6.602z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M16 12.5a3.5 3.5 0 1 1-7 0 3.5 3.5 0 0 1 7 0m-5.5 0a.5.5 0 0 0 .5.5h3a.5.5 0 0 0 0-1h-3a.5.5 0 0 0-.5.5\"},\"child\":[]}]})(props);\n};\nexport function BsSendExclamationFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M15.964.686a.5.5 0 0 0-.65-.65L.767 5.855H.766l-.452.18a.5.5 0 0 0-.082.887l.41.26.001.002 4.995 3.178 1.59 2.498C8 14 8 13 8 12.5a4.5 4.5 0 0 1 5.026-4.47zm-1.833 1.89L6.637 10.07l-.215-.338a.5.5 0 0 0-.154-.154l-.338-.215 7.494-7.494 1.178-.471z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M12.5 16a3.5 3.5 0 1 0 0-7 3.5 3.5 0 0 0 0 7m.5-5v1.5a.5.5 0 0 1-1 0V11a.5.5 0 0 1 1 0m0 3a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0\"},\"child\":[]}]})(props);\n};\nexport function BsSendExclamation (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M15.964.686a.5.5 0 0 0-.65-.65L.767 5.855a.75.75 0 0 0-.124 1.329l4.995 3.178 1.531 2.406a.5.5 0 0 0 .844-.536L6.637 10.07l7.494-7.494-1.895 4.738a.5.5 0 1 0 .928.372zm-2.54 1.183L5.93 9.363 1.591 6.602z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M12.5 16a3.5 3.5 0 1 0 0-7 3.5 3.5 0 0 0 0 7m.5-5v1.5a.5.5 0 0 1-1 0V11a.5.5 0 0 1 1 0m0 3a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0\"},\"child\":[]}]})(props);\n};\nexport function BsSendFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M15.964.686a.5.5 0 0 0-.65-.65L.767 5.855H.766l-.452.18a.5.5 0 0 0-.082.887l.41.26.001.002 4.995 3.178 3.178 4.995.002.002.26.41a.5.5 0 0 0 .886-.083zm-1.833 1.89L6.637 10.07l-.215-.338a.5.5 0 0 0-.154-.154l-.338-.215 7.494-7.494 1.178-.471z\"},\"child\":[]}]})(props);\n};\nexport function BsSendPlusFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M15.964.686a.5.5 0 0 0-.65-.65L.767 5.855H.766l-.452.18a.5.5 0 0 0-.082.887l.41.26.001.002 4.995 3.178 1.59 2.498C8 14 8 13 8 12.5a4.5 4.5 0 0 1 5.026-4.47zm-1.833 1.89L6.637 10.07l-.215-.338a.5.5 0 0 0-.154-.154l-.338-.215 7.494-7.494 1.178-.471z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M16 12.5a3.5 3.5 0 1 1-7 0 3.5 3.5 0 0 1 7 0m-3.5-2a.5.5 0 0 0-.5.5v1h-1a.5.5 0 0 0 0 1h1v1a.5.5 0 0 0 1 0v-1h1a.5.5 0 0 0 0-1h-1v-1a.5.5 0 0 0-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsSendPlus (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M15.964.686a.5.5 0 0 0-.65-.65L.767 5.855a.75.75 0 0 0-.124 1.329l4.995 3.178 1.531 2.406a.5.5 0 0 0 .844-.536L6.637 10.07l7.494-7.494-1.895 4.738a.5.5 0 1 0 .928.372zm-2.54 1.183L5.93 9.363 1.591 6.602z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M16 12.5a3.5 3.5 0 1 1-7 0 3.5 3.5 0 0 1 7 0m-3.5-2a.5.5 0 0 0-.5.5v1h-1a.5.5 0 0 0 0 1h1v1a.5.5 0 0 0 1 0v-1h1a.5.5 0 0 0 0-1h-1v-1a.5.5 0 0 0-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsSendSlashFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M15.964.686a.5.5 0 0 0-.65-.65L.767 5.855H.766l-.452.18a.5.5 0 0 0-.082.887l.41.26.001.002 4.995 3.178 1.59 2.498C8 14 8 13 8 12.5a4.5 4.5 0 0 1 5.026-4.47zm-1.833 1.89L6.637 10.07l-.215-.338a.5.5 0 0 0-.154-.154l-.338-.215 7.494-7.494 1.178-.471z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M14.975 10.025a3.5 3.5 0 1 0-4.95 4.95 3.5 3.5 0 0 0 4.95-4.95m-4.243.707a2.5 2.5 0 0 1 3.147-.318l-3.465 3.465a2.5 2.5 0 0 1 .318-3.147m.39 3.854 3.464-3.465a2.501 2.501 0 0 1-3.465 3.465Z\"},\"child\":[]}]})(props);\n};\nexport function BsSendSlash (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M15.964.686a.5.5 0 0 0-.65-.65L.767 5.855a.75.75 0 0 0-.124 1.329l4.995 3.178 1.531 2.406a.5.5 0 0 0 .844-.536L6.637 10.07l7.494-7.494-1.895 4.738a.5.5 0 1 0 .928.372zm-2.54 1.183L5.93 9.363 1.591 6.602z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M14.975 10.025a3.5 3.5 0 1 0-4.95 4.95 3.5 3.5 0 0 0 4.95-4.95m-4.243.707a2.5 2.5 0 0 1 3.147-.318l-3.465 3.465a2.5 2.5 0 0 1 .318-3.147m.39 3.854 3.464-3.465a2.501 2.501 0 0 1-3.465 3.465Z\"},\"child\":[]}]})(props);\n};\nexport function BsSendXFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M15.964.686a.5.5 0 0 0-.65-.65L.767 5.855H.766l-.452.18a.5.5 0 0 0-.082.887l.41.26.001.002 4.995 3.178 1.59 2.498C8 14 8 13 8 12.5a4.5 4.5 0 0 1 5.026-4.47zm-1.833 1.89L6.637 10.07l-.215-.338a.5.5 0 0 0-.154-.154l-.338-.215 7.494-7.494 1.178-.471z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M16 12.5a3.5 3.5 0 1 1-7 0 3.5 3.5 0 0 1 7 0m-4.854-1.354a.5.5 0 0 0 0 .708l.647.646-.647.646a.5.5 0 0 0 .708.708l.646-.647.646.647a.5.5 0 0 0 .708-.708l-.647-.646.647-.646a.5.5 0 0 0-.708-.708l-.646.647-.646-.647a.5.5 0 0 0-.708 0\"},\"child\":[]}]})(props);\n};\nexport function BsSendX (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M15.964.686a.5.5 0 0 0-.65-.65L.767 5.855a.75.75 0 0 0-.124 1.329l4.995 3.178 1.531 2.406a.5.5 0 0 0 .844-.536L6.637 10.07l7.494-7.494-1.895 4.738a.5.5 0 1 0 .928.372zm-2.54 1.183L5.93 9.363 1.591 6.602z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M16 12.5a3.5 3.5 0 1 1-7 0 3.5 3.5 0 0 1 7 0m-4.854-1.354a.5.5 0 0 0 0 .708l.647.646-.647.646a.5.5 0 0 0 .708.708l.646-.647.646.647a.5.5 0 0 0 .708-.708l-.647-.646.647-.646a.5.5 0 0 0-.708-.708l-.646.647-.646-.647a.5.5 0 0 0-.708 0\"},\"child\":[]}]})(props);\n};\nexport function BsSend (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M15.854.146a.5.5 0 0 1 .11.54l-5.819 14.547a.75.75 0 0 1-1.329.124l-3.178-4.995L.643 7.184a.75.75 0 0 1 .124-1.33L15.314.037a.5.5 0 0 1 .54.11ZM6.636 10.07l2.761 4.338L14.13 2.576zm6.787-8.201L1.591 6.602l4.339 2.76z\"},\"child\":[]}]})(props);\n};\nexport function BsServer (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M1.333 2.667C1.333 1.194 4.318 0 8 0s6.667 1.194 6.667 2.667V4c0 1.473-2.985 2.667-6.667 2.667S1.333 5.473 1.333 4z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M1.333 6.334v3C1.333 10.805 4.318 12 8 12s6.667-1.194 6.667-2.667V6.334a6.5 6.5 0 0 1-1.458.79C11.81 7.684 9.967 8 8 8s-3.809-.317-5.208-.876a6.5 6.5 0 0 1-1.458-.79z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M14.667 11.668a6.5 6.5 0 0 1-1.458.789c-1.4.56-3.242.876-5.21.876-1.966 0-3.809-.316-5.208-.876a6.5 6.5 0 0 1-1.458-.79v1.666C1.333 14.806 4.318 16 8 16s6.667-1.194 6.667-2.667z\"},\"child\":[]}]})(props);\n};\nexport function BsShadows (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0m-8 7a.5.5 0 0 1 0-1h3.5q.048 0 .093.009A7 7 0 0 0 12.9 13H8a.5.5 0 0 1 0-1h5.745q.331-.474.581-1H8a.5.5 0 0 1 0-1h6.71a7 7 0 0 0 .22-1H8a.5.5 0 0 1 0-1h7q0-.51-.07-1H8a.5.5 0 0 1 0-1h6.71a7 7 0 0 0-.384-1H8a.5.5 0 0 1 0-1h5.745a7 7 0 0 0-.846-1H8a.5.5 0 0 1 0-1h3.608A7 7 0 1 0 8 15\"},\"child\":[]}]})(props);\n};\nexport function BsShareFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M11 2.5a2.5 2.5 0 1 1 .603 1.628l-6.718 3.12a2.5 2.5 0 0 1 0 1.504l6.718 3.12a2.5 2.5 0 1 1-.488.876l-6.718-3.12a2.5 2.5 0 1 1 0-3.256l6.718-3.12A2.5 2.5 0 0 1 11 2.5\"},\"child\":[]}]})(props);\n};\nexport function BsShare (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M13.5 1a1.5 1.5 0 1 0 0 3 1.5 1.5 0 0 0 0-3M11 2.5a2.5 2.5 0 1 1 .603 1.628l-6.718 3.12a2.5 2.5 0 0 1 0 1.504l6.718 3.12a2.5 2.5 0 1 1-.488.876l-6.718-3.12a2.5 2.5 0 1 1 0-3.256l6.718-3.12A2.5 2.5 0 0 1 11 2.5m-8.5 4a1.5 1.5 0 1 0 0 3 1.5 1.5 0 0 0 0-3m11 5.5a1.5 1.5 0 1 0 0 3 1.5 1.5 0 0 0 0-3\"},\"child\":[]}]})(props);\n};\nexport function BsShieldCheck (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5.338 1.59a61 61 0 0 0-2.837.856.48.48 0 0 0-.328.39c-.554 4.157.726 7.19 2.253 9.188a10.7 10.7 0 0 0 2.287 2.233c.346.244.652.42.893.533q.18.085.293.118a1 1 0 0 0 .101.025 1 1 0 0 0 .1-.025q.114-.034.294-.118c.24-.113.547-.29.893-.533a10.7 10.7 0 0 0 2.287-2.233c1.527-1.997 2.807-5.031 2.253-9.188a.48.48 0 0 0-.328-.39c-.651-.213-1.75-.56-2.837-.855C9.552 1.29 8.531 1.067 8 1.067c-.53 0-1.552.223-2.662.524zM5.072.56C6.157.265 7.31 0 8 0s1.843.265 2.928.56c1.11.3 2.229.655 2.887.87a1.54 1.54 0 0 1 1.044 1.262c.596 4.477-.787 7.795-2.465 9.99a11.8 11.8 0 0 1-2.517 2.453 7 7 0 0 1-1.048.625c-.28.132-.581.24-.829.24s-.548-.108-.829-.24a7 7 0 0 1-1.048-.625 11.8 11.8 0 0 1-2.517-2.453C1.928 10.487.545 7.169 1.141 2.692A1.54 1.54 0 0 1 2.185 1.43 63 63 0 0 1 5.072.56\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M10.854 5.146a.5.5 0 0 1 0 .708l-3 3a.5.5 0 0 1-.708 0l-1.5-1.5a.5.5 0 1 1 .708-.708L7.5 7.793l2.646-2.647a.5.5 0 0 1 .708 0\"},\"child\":[]}]})(props);\n};\nexport function BsShieldExclamation (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5.338 1.59a61 61 0 0 0-2.837.856.48.48 0 0 0-.328.39c-.554 4.157.726 7.19 2.253 9.188a10.7 10.7 0 0 0 2.287 2.233c.346.244.652.42.893.533q.18.085.293.118a1 1 0 0 0 .101.025 1 1 0 0 0 .1-.025q.114-.034.294-.118c.24-.113.547-.29.893-.533a10.7 10.7 0 0 0 2.287-2.233c1.527-1.997 2.807-5.031 2.253-9.188a.48.48 0 0 0-.328-.39c-.651-.213-1.75-.56-2.837-.855C9.552 1.29 8.531 1.067 8 1.067c-.53 0-1.552.223-2.662.524zM5.072.56C6.157.265 7.31 0 8 0s1.843.265 2.928.56c1.11.3 2.229.655 2.887.87a1.54 1.54 0 0 1 1.044 1.262c.596 4.477-.787 7.795-2.465 9.99a11.8 11.8 0 0 1-2.517 2.453 7 7 0 0 1-1.048.625c-.28.132-.581.24-.829.24s-.548-.108-.829-.24a7 7 0 0 1-1.048-.625 11.8 11.8 0 0 1-2.517-2.453C1.928 10.487.545 7.169 1.141 2.692A1.54 1.54 0 0 1 2.185 1.43 63 63 0 0 1 5.072.56\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M7.001 11a1 1 0 1 1 2 0 1 1 0 0 1-2 0M7.1 4.995a.905.905 0 1 1 1.8 0l-.35 3.507a.553.553 0 0 1-1.1 0z\"},\"child\":[]}]})(props);\n};\nexport function BsShieldFillCheck (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M8 0c-.69 0-1.843.265-2.928.56-1.11.3-2.229.655-2.887.87a1.54 1.54 0 0 0-1.044 1.262c-.596 4.477.787 7.795 2.465 9.99a11.8 11.8 0 0 0 2.517 2.453c.386.273.744.482 1.048.625.28.132.581.24.829.24s.548-.108.829-.24a7 7 0 0 0 1.048-.625 11.8 11.8 0 0 0 2.517-2.453c1.678-2.195 3.061-5.513 2.465-9.99a1.54 1.54 0 0 0-1.044-1.263 63 63 0 0 0-2.887-.87C9.843.266 8.69 0 8 0m2.146 5.146a.5.5 0 0 1 .708.708l-3 3a.5.5 0 0 1-.708 0l-1.5-1.5a.5.5 0 1 1 .708-.708L7.5 7.793z\"},\"child\":[]}]})(props);\n};\nexport function BsShieldFillExclamation (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M8 0c-.69 0-1.843.265-2.928.56-1.11.3-2.229.655-2.887.87a1.54 1.54 0 0 0-1.044 1.262c-.596 4.477.787 7.795 2.465 9.99a11.8 11.8 0 0 0 2.517 2.453c.386.273.744.482 1.048.625.28.132.581.24.829.24s.548-.108.829-.24a7 7 0 0 0 1.048-.625 11.8 11.8 0 0 0 2.517-2.453c1.678-2.195 3.061-5.513 2.465-9.99a1.54 1.54 0 0 0-1.044-1.263 63 63 0 0 0-2.887-.87C9.843.266 8.69 0 8 0m-.55 8.502L7.1 4.995a.905.905 0 1 1 1.8 0l-.35 3.507a.552.552 0 0 1-1.1 0M8.002 12a1 1 0 1 1 0-2 1 1 0 0 1 0 2\"},\"child\":[]}]})(props);\n};\nexport function BsShieldFillMinus (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M8 0c-.69 0-1.843.265-2.928.56-1.11.3-2.229.655-2.887.87a1.54 1.54 0 0 0-1.044 1.262c-.596 4.477.787 7.795 2.465 9.99a11.8 11.8 0 0 0 2.517 2.453c.386.273.744.482 1.048.625.28.132.581.24.829.24s.548-.108.829-.24a7 7 0 0 0 1.048-.625 11.8 11.8 0 0 0 2.517-2.453c1.678-2.195 3.061-5.513 2.465-9.99a1.54 1.54 0 0 0-1.044-1.263 63 63 0 0 0-2.887-.87C9.843.266 8.69 0 8 0M6 7.5a.5.5 0 0 1 0-1h4a.5.5 0 0 1 0 1z\"},\"child\":[]}]})(props);\n};\nexport function BsShieldFillPlus (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M8 0c-.69 0-1.843.265-2.928.56-1.11.3-2.229.655-2.887.87a1.54 1.54 0 0 0-1.044 1.262c-.596 4.477.787 7.795 2.465 9.99a11.8 11.8 0 0 0 2.517 2.453c.386.273.744.482 1.048.625.28.132.581.24.829.24s.548-.108.829-.24a7 7 0 0 0 1.048-.625 11.8 11.8 0 0 0 2.517-2.453c1.678-2.195 3.061-5.513 2.465-9.99a1.54 1.54 0 0 0-1.044-1.263 63 63 0 0 0-2.887-.87C9.843.266 8.69 0 8 0m-.5 5a.5.5 0 0 1 1 0v1.5H10a.5.5 0 0 1 0 1H8.5V9a.5.5 0 0 1-1 0V7.5H6a.5.5 0 0 1 0-1h1.5z\"},\"child\":[]}]})(props);\n};\nexport function BsShieldFillX (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 0c-.69 0-1.843.265-2.928.56-1.11.3-2.229.655-2.887.87a1.54 1.54 0 0 0-1.044 1.262c-.596 4.477.787 7.795 2.465 9.99a11.8 11.8 0 0 0 2.517 2.453c.386.273.744.482 1.048.625.28.132.581.24.829.24s.548-.108.829-.24a7 7 0 0 0 1.048-.625 11.8 11.8 0 0 0 2.517-2.453c1.678-2.195 3.061-5.513 2.465-9.99a1.54 1.54 0 0 0-1.044-1.263 63 63 0 0 0-2.887-.87C9.843.266 8.69 0 8 0M6.854 5.146 8 6.293l1.146-1.147a.5.5 0 1 1 .708.708L8.707 7l1.147 1.146a.5.5 0 0 1-.708.708L8 7.707 6.854 8.854a.5.5 0 1 1-.708-.708L7.293 7 6.146 5.854a.5.5 0 1 1 .708-.708\"},\"child\":[]}]})(props);\n};\nexport function BsShieldFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5.072.56C6.157.265 7.31 0 8 0s1.843.265 2.928.56c1.11.3 2.229.655 2.887.87a1.54 1.54 0 0 1 1.044 1.262c.596 4.477-.787 7.795-2.465 9.99a11.8 11.8 0 0 1-2.517 2.453 7 7 0 0 1-1.048.625c-.28.132-.581.24-.829.24s-.548-.108-.829-.24a7 7 0 0 1-1.048-.625 11.8 11.8 0 0 1-2.517-2.453C1.928 10.487.545 7.169 1.141 2.692A1.54 1.54 0 0 1 2.185 1.43 63 63 0 0 1 5.072.56\"},\"child\":[]}]})(props);\n};\nexport function BsShieldLockFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M8 0c-.69 0-1.843.265-2.928.56-1.11.3-2.229.655-2.887.87a1.54 1.54 0 0 0-1.044 1.262c-.596 4.477.787 7.795 2.465 9.99a11.8 11.8 0 0 0 2.517 2.453c.386.273.744.482 1.048.625.28.132.581.24.829.24s.548-.108.829-.24a7 7 0 0 0 1.048-.625 11.8 11.8 0 0 0 2.517-2.453c1.678-2.195 3.061-5.513 2.465-9.99a1.54 1.54 0 0 0-1.044-1.263 63 63 0 0 0-2.887-.87C9.843.266 8.69 0 8 0m0 5a1.5 1.5 0 0 1 .5 2.915l.385 1.99a.5.5 0 0 1-.491.595h-.788a.5.5 0 0 1-.49-.595l.384-1.99A1.5 1.5 0 0 1 8 5\"},\"child\":[]}]})(props);\n};\nexport function BsShieldLock (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5.338 1.59a61 61 0 0 0-2.837.856.48.48 0 0 0-.328.39c-.554 4.157.726 7.19 2.253 9.188a10.7 10.7 0 0 0 2.287 2.233c.346.244.652.42.893.533q.18.085.293.118a1 1 0 0 0 .101.025 1 1 0 0 0 .1-.025q.114-.034.294-.118c.24-.113.547-.29.893-.533a10.7 10.7 0 0 0 2.287-2.233c1.527-1.997 2.807-5.031 2.253-9.188a.48.48 0 0 0-.328-.39c-.651-.213-1.75-.56-2.837-.855C9.552 1.29 8.531 1.067 8 1.067c-.53 0-1.552.223-2.662.524zM5.072.56C6.157.265 7.31 0 8 0s1.843.265 2.928.56c1.11.3 2.229.655 2.887.87a1.54 1.54 0 0 1 1.044 1.262c.596 4.477-.787 7.795-2.465 9.99a11.8 11.8 0 0 1-2.517 2.453 7 7 0 0 1-1.048.625c-.28.132-.581.24-.829.24s-.548-.108-.829-.24a7 7 0 0 1-1.048-.625 11.8 11.8 0 0 1-2.517-2.453C1.928 10.487.545 7.169 1.141 2.692A1.54 1.54 0 0 1 2.185 1.43 63 63 0 0 1 5.072.56\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M9.5 6.5a1.5 1.5 0 0 1-1 1.415l.385 1.99a.5.5 0 0 1-.491.595h-.788a.5.5 0 0 1-.49-.595l.384-1.99a1.5 1.5 0 1 1 2-1.415\"},\"child\":[]}]})(props);\n};\nexport function BsShieldMinus (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5.338 1.59a61 61 0 0 0-2.837.856.48.48 0 0 0-.328.39c-.554 4.157.726 7.19 2.253 9.188a10.7 10.7 0 0 0 2.287 2.233c.346.244.652.42.893.533q.18.085.293.118a1 1 0 0 0 .101.025 1 1 0 0 0 .1-.025q.114-.034.294-.118c.24-.113.547-.29.893-.533a10.7 10.7 0 0 0 2.287-2.233c1.527-1.997 2.807-5.031 2.253-9.188a.48.48 0 0 0-.328-.39c-.651-.213-1.75-.56-2.837-.855C9.552 1.29 8.531 1.067 8 1.067c-.53 0-1.552.223-2.662.524zM5.072.56C6.157.265 7.31 0 8 0s1.843.265 2.928.56c1.11.3 2.229.655 2.887.87a1.54 1.54 0 0 1 1.044 1.262c.596 4.477-.787 7.795-2.465 9.99a11.8 11.8 0 0 1-2.517 2.453 7 7 0 0 1-1.048.625c-.28.132-.581.24-.829.24s-.548-.108-.829-.24a7 7 0 0 1-1.048-.625 11.8 11.8 0 0 1-2.517-2.453C1.928 10.487.545 7.169 1.141 2.692A1.54 1.54 0 0 1 2.185 1.43 63 63 0 0 1 5.072.56\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M5.5 7a.5.5 0 0 1 .5-.5h4a.5.5 0 0 1 0 1H6a.5.5 0 0 1-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsShieldPlus (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5.338 1.59a61 61 0 0 0-2.837.856.48.48 0 0 0-.328.39c-.554 4.157.726 7.19 2.253 9.188a10.7 10.7 0 0 0 2.287 2.233c.346.244.652.42.893.533q.18.085.293.118a1 1 0 0 0 .101.025 1 1 0 0 0 .1-.025q.114-.034.294-.118c.24-.113.547-.29.893-.533a10.7 10.7 0 0 0 2.287-2.233c1.527-1.997 2.807-5.031 2.253-9.188a.48.48 0 0 0-.328-.39c-.651-.213-1.75-.56-2.837-.855C9.552 1.29 8.531 1.067 8 1.067c-.53 0-1.552.223-2.662.524zM5.072.56C6.157.265 7.31 0 8 0s1.843.265 2.928.56c1.11.3 2.229.655 2.887.87a1.54 1.54 0 0 1 1.044 1.262c.596 4.477-.787 7.795-2.465 9.99a11.8 11.8 0 0 1-2.517 2.453 7 7 0 0 1-1.048.625c-.28.132-.581.24-.829.24s-.548-.108-.829-.24a7 7 0 0 1-1.048-.625 11.8 11.8 0 0 1-2.517-2.453C1.928 10.487.545 7.169 1.141 2.692A1.54 1.54 0 0 1 2.185 1.43 63 63 0 0 1 5.072.56\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8 4.5a.5.5 0 0 1 .5.5v1.5H10a.5.5 0 0 1 0 1H8.5V9a.5.5 0 0 1-1 0V7.5H6a.5.5 0 0 1 0-1h1.5V5a.5.5 0 0 1 .5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsShieldShaded (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M8 14.933a1 1 0 0 0 .1-.025q.114-.034.294-.118c.24-.113.547-.29.893-.533a10.7 10.7 0 0 0 2.287-2.233c1.527-1.997 2.807-5.031 2.253-9.188a.48.48 0 0 0-.328-.39c-.651-.213-1.75-.56-2.837-.855C9.552 1.29 8.531 1.067 8 1.067zM5.072.56C6.157.265 7.31 0 8 0s1.843.265 2.928.56c1.11.3 2.229.655 2.887.87a1.54 1.54 0 0 1 1.044 1.262c.596 4.477-.787 7.795-2.465 9.99a11.8 11.8 0 0 1-2.517 2.453 7 7 0 0 1-1.048.625c-.28.132-.581.24-.829.24s-.548-.108-.829-.24a7 7 0 0 1-1.048-.625 11.8 11.8 0 0 1-2.517-2.453C1.928 10.487.545 7.169 1.141 2.692A1.54 1.54 0 0 1 2.185 1.43 63 63 0 0 1 5.072.56\"},\"child\":[]}]})(props);\n};\nexport function BsShieldSlashFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M1.093 3.093c-.465 4.275.885 7.46 2.513 9.589a11.8 11.8 0 0 0 2.517 2.453c.386.273.744.482 1.048.625.28.132.581.24.829.24s.548-.108.829-.24a7 7 0 0 0 1.048-.625 11.3 11.3 0 0 0 1.733-1.525zm12.215 8.215L3.128 1.128A61 61 0 0 1 5.073.56C6.157.265 7.31 0 8 0s1.843.265 2.928.56c1.11.3 2.229.655 2.887.87a1.54 1.54 0 0 1 1.044 1.262c.483 3.626-.332 6.491-1.551 8.616m.338 3.046-13-13 .708-.708 13 13z\"},\"child\":[]}]})(props);\n};\nexport function BsShieldSlash (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M1.093 3.093c-.465 4.275.885 7.46 2.513 9.589a11.8 11.8 0 0 0 2.517 2.453c.386.273.744.482 1.048.625.28.132.581.24.829.24s.548-.108.829-.24a7 7 0 0 0 1.048-.625 11.3 11.3 0 0 0 1.733-1.525l-.745-.745a10.3 10.3 0 0 1-1.578 1.392c-.346.244-.652.42-.893.533q-.18.085-.293.118a1 1 0 0 1-.101.025 1 1 0 0 1-.1-.025 2 2 0 0 1-.294-.118 6 6 0 0 1-.893-.533 10.7 10.7 0 0 1-2.287-2.233C3.053 10.228 1.879 7.594 2.06 4.06zM3.98 1.98l-.852-.852A59 59 0 0 1 5.072.559C6.157.266 7.31 0 8 0s1.843.265 2.928.56c1.11.3 2.229.655 2.887.87a1.54 1.54 0 0 1 1.044 1.262c.483 3.626-.332 6.491-1.551 8.616l-.77-.77c1.042-1.915 1.72-4.469 1.29-7.702a.48.48 0 0 0-.33-.39c-.65-.213-1.75-.56-2.836-.855C9.552 1.29 8.531 1.067 8 1.067c-.53 0-1.552.223-2.662.524a50 50 0 0 0-1.357.39zm9.666 12.374-13-13 .708-.708 13 13z\"},\"child\":[]}]})(props);\n};\nexport function BsShieldX (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5.338 1.59a61 61 0 0 0-2.837.856.48.48 0 0 0-.328.39c-.554 4.157.726 7.19 2.253 9.188a10.7 10.7 0 0 0 2.287 2.233c.346.244.652.42.893.533q.18.085.293.118a1 1 0 0 0 .101.025 1 1 0 0 0 .1-.025q.114-.034.294-.118c.24-.113.547-.29.893-.533a10.7 10.7 0 0 0 2.287-2.233c1.527-1.997 2.807-5.031 2.253-9.188a.48.48 0 0 0-.328-.39c-.651-.213-1.75-.56-2.837-.855C9.552 1.29 8.531 1.067 8 1.067c-.53 0-1.552.223-2.662.524zM5.072.56C6.157.265 7.31 0 8 0s1.843.265 2.928.56c1.11.3 2.229.655 2.887.87a1.54 1.54 0 0 1 1.044 1.262c.596 4.477-.787 7.795-2.465 9.99a11.8 11.8 0 0 1-2.517 2.453 7 7 0 0 1-1.048.625c-.28.132-.581.24-.829.24s-.548-.108-.829-.24a7 7 0 0 1-1.048-.625 11.8 11.8 0 0 1-2.517-2.453C1.928 10.487.545 7.169 1.141 2.692A1.54 1.54 0 0 1 2.185 1.43 63 63 0 0 1 5.072.56\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M6.146 5.146a.5.5 0 0 1 .708 0L8 6.293l1.146-1.147a.5.5 0 1 1 .708.708L8.707 7l1.147 1.146a.5.5 0 0 1-.708.708L8 7.707 6.854 8.854a.5.5 0 1 1-.708-.708L7.293 7 6.146 5.854a.5.5 0 0 1 0-.708\"},\"child\":[]}]})(props);\n};\nexport function BsShield (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5.338 1.59a61 61 0 0 0-2.837.856.48.48 0 0 0-.328.39c-.554 4.157.726 7.19 2.253 9.188a10.7 10.7 0 0 0 2.287 2.233c.346.244.652.42.893.533q.18.085.293.118a1 1 0 0 0 .101.025 1 1 0 0 0 .1-.025q.114-.034.294-.118c.24-.113.547-.29.893-.533a10.7 10.7 0 0 0 2.287-2.233c1.527-1.997 2.807-5.031 2.253-9.188a.48.48 0 0 0-.328-.39c-.651-.213-1.75-.56-2.837-.855C9.552 1.29 8.531 1.067 8 1.067c-.53 0-1.552.223-2.662.524zM5.072.56C6.157.265 7.31 0 8 0s1.843.265 2.928.56c1.11.3 2.229.655 2.887.87a1.54 1.54 0 0 1 1.044 1.262c.596 4.477-.787 7.795-2.465 9.99a11.8 11.8 0 0 1-2.517 2.453 7 7 0 0 1-1.048.625c-.28.132-.581.24-.829.24s-.548-.108-.829-.24a7 7 0 0 1-1.048-.625 11.8 11.8 0 0 1-2.517-2.453C1.928 10.487.545 7.169 1.141 2.692A1.54 1.54 0 0 1 2.185 1.43 63 63 0 0 1 5.072.56\"},\"child\":[]}]})(props);\n};\nexport function BsShiftFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.27 2.047a1 1 0 0 1 1.46 0l6.345 6.77c.6.638.146 1.683-.73 1.683H11.5v3a1 1 0 0 1-1 1h-5a1 1 0 0 1-1-1v-3H1.654C.78 10.5.326 9.455.924 8.816z\"},\"child\":[]}]})(props);\n};\nexport function BsShift (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.27 2.047a1 1 0 0 1 1.46 0l6.345 6.77c.6.638.146 1.683-.73 1.683H11.5v3a1 1 0 0 1-1 1h-5a1 1 0 0 1-1-1v-3H1.654C.78 10.5.326 9.455.924 8.816zM14.346 9.5 8 2.731 1.654 9.5H4.5a1 1 0 0 1 1 1v3h5v-3a1 1 0 0 1 1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsShopWindow (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2.97 1.35A1 1 0 0 1 3.73 1h8.54a1 1 0 0 1 .76.35l2.609 3.044A1.5 1.5 0 0 1 16 5.37v.255a2.375 2.375 0 0 1-4.25 1.458A2.37 2.37 0 0 1 9.875 8 2.37 2.37 0 0 1 8 7.083 2.37 2.37 0 0 1 6.125 8a2.37 2.37 0 0 1-1.875-.917A2.375 2.375 0 0 1 0 5.625V5.37a1.5 1.5 0 0 1 .361-.976zm1.78 4.275a1.375 1.375 0 0 0 2.75 0 .5.5 0 0 1 1 0 1.375 1.375 0 0 0 2.75 0 .5.5 0 0 1 1 0 1.375 1.375 0 1 0 2.75 0V5.37a.5.5 0 0 0-.12-.325L12.27 2H3.73L1.12 5.045A.5.5 0 0 0 1 5.37v.255a1.375 1.375 0 0 0 2.75 0 .5.5 0 0 1 1 0M1.5 8.5A.5.5 0 0 1 2 9v6h12V9a.5.5 0 0 1 1 0v6h.5a.5.5 0 0 1 0 1H.5a.5.5 0 0 1 0-1H1V9a.5.5 0 0 1 .5-.5m2 .5a.5.5 0 0 1 .5.5V13h8V9.5a.5.5 0 0 1 1 0V13a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V9.5a.5.5 0 0 1 .5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsShop (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2.97 1.35A1 1 0 0 1 3.73 1h8.54a1 1 0 0 1 .76.35l2.609 3.044A1.5 1.5 0 0 1 16 5.37v.255a2.375 2.375 0 0 1-4.25 1.458A2.37 2.37 0 0 1 9.875 8 2.37 2.37 0 0 1 8 7.083 2.37 2.37 0 0 1 6.125 8a2.37 2.37 0 0 1-1.875-.917A2.375 2.375 0 0 1 0 5.625V5.37a1.5 1.5 0 0 1 .361-.976zm1.78 4.275a1.375 1.375 0 0 0 2.75 0 .5.5 0 0 1 1 0 1.375 1.375 0 0 0 2.75 0 .5.5 0 0 1 1 0 1.375 1.375 0 1 0 2.75 0V5.37a.5.5 0 0 0-.12-.325L12.27 2H3.73L1.12 5.045A.5.5 0 0 0 1 5.37v.255a1.375 1.375 0 0 0 2.75 0 .5.5 0 0 1 1 0M1.5 8.5A.5.5 0 0 1 2 9v6h1v-5a1 1 0 0 1 1-1h3a1 1 0 0 1 1 1v5h6V9a.5.5 0 0 1 1 0v6h.5a.5.5 0 0 1 0 1H.5a.5.5 0 0 1 0-1H1V9a.5.5 0 0 1 .5-.5M4 15h3v-5H4zm5-5a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v3a1 1 0 0 1-1 1h-2a1 1 0 0 1-1-1zm3 0h-2v3h2z\"},\"child\":[]}]})(props);\n};\nexport function BsShuffle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M0 3.5A.5.5 0 0 1 .5 3H1c2.202 0 3.827 1.24 4.874 2.418.49.552.865 1.102 1.126 1.532.26-.43.636-.98 1.126-1.532C9.173 4.24 10.798 3 13 3v1c-1.798 0-3.173 1.01-4.126 2.082A9.6 9.6 0 0 0 7.556 8a9.6 9.6 0 0 0 1.317 1.918C9.828 10.99 11.204 12 13 12v1c-2.202 0-3.827-1.24-4.874-2.418A10.6 10.6 0 0 1 7 9.05c-.26.43-.636.98-1.126 1.532C4.827 11.76 3.202 13 1 13H.5a.5.5 0 0 1 0-1H1c1.798 0 3.173-1.01 4.126-2.082A9.6 9.6 0 0 0 6.444 8a9.6 9.6 0 0 0-1.317-1.918C4.172 5.01 2.796 4 1 4H.5a.5.5 0 0 1-.5-.5\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M13 5.466V1.534a.25.25 0 0 1 .41-.192l2.36 1.966c.12.1.12.284 0 .384l-2.36 1.966a.25.25 0 0 1-.41-.192m0 9v-3.932a.25.25 0 0 1 .41-.192l2.36 1.966c.12.1.12.284 0 .384l-2.36 1.966a.25.25 0 0 1-.41-.192\"},\"child\":[]}]})(props);\n};\nexport function BsSignDeadEndFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5.116 6.28h.32c.395 0 .582.24.582.722 0 .48-.186.718-.581.718h-.321zm3.636.066.268.845h-.552l.27-.845zm1.327-.066h.32c.394 0 .582.24.582.722 0 .48-.186.718-.582.718h-.32zm-.792 3h.32c.395 0 .582.24.582.722 0 .48-.186.718-.581.718h-.32z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M9.05.435c-.58-.58-1.52-.58-2.1 0L.436 6.95c-.58.58-.58 1.519 0 2.098l6.516 6.516c.58.58 1.519.58 2.098 0l6.516-6.516c.58-.58.58-1.519 0-2.098zM4.782 6h.69c.596 0 .886.355.886.998S6.066 8 5.473 8h-.69zM7.82 7.72V8H6.571V6H7.82v.28h-.917v.57h.863v.268h-.863v.602zm.397.28h-.34l.688-2h.371l.689 2h-.352l-.177-.554h-.702L8.216 8Zm1.53-2h.69c.596 0 .886.355.886.998S11.03 8 10.436 8h-.69zm-2.923 4.72V11H5.575V9h1.248v.28h-.917v.57h.863v.268h-.863v.602zm.572.28h-.32V9h.294l.933 1.436h.014V9h.32v2h-.292l-.936-1.44h-.013zm1.56-2h.69c.596 0 .886.355.886.998S10.238 11 9.645 11h-.69z\"},\"child\":[]}]})(props);\n};\nexport function BsSignDeadEnd (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4.783 6v2h.69c.593 0 .886-.359.886-1.002S6.07 6 5.473 6zm.333.28h.32c.395 0 .582.24.582.722 0 .48-.186.718-.581.718h-.321zM7.82 7.72h-.918v-.602h.863V6.85h-.863v-.57h.917V6H6.571v2H7.82zm.573-.274L8.216 8h-.34l.688-2h.371l.689 2h-.352l-.177-.554zm.627-.255-.268-.845h-.015l-.27.845zM9.746 6v2h.69c.593 0 .886-.359.886-1.002S11.032 6 10.436 6zm.333.28h.32c.394 0 .582.24.582.722 0 .48-.186.718-.582.718h-.32zm-4.173 4.44h.917V11H5.575V9h1.248v.28h-.917v.57h.863v.268h-.863zm1.489.28V9.56h.013L8.344 11h.292V9h-.32v1.436h-.014L7.369 9h-.293v2zm1.56 0V9h.69c.596 0 .886.355.886.998S10.238 11 9.645 11zm.653-1.72h-.32v1.44h.32c.395 0 .581-.239.581-.718 0-.481-.187-.722-.581-.722\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M9.05.435c-.58-.58-1.52-.58-2.1 0L.436 6.95c-.58.58-.58 1.519 0 2.098l6.516 6.516c.58.58 1.519.58 2.098 0l6.516-6.516c.58-.58.58-1.519 0-2.098zm-1.4.7a.495.495 0 0 1 .7 0l6.516 6.515a.495.495 0 0 1 0 .7L8.35 14.866a.495.495 0 0 1-.7 0L1.134 8.35a.495.495 0 0 1 0-.7L7.65 1.134Z\"},\"child\":[]}]})(props);\n};\nexport function BsSignDoNotEnterFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4.237 4.28h-.32v1.44h.32c.396 0 .582-.239.582-.718 0-.481-.188-.722-.582-.722m2.392.859v-.277c0-.413-.211-.617-.494-.617-.285 0-.495.204-.495.617v.277c0 .414.21.618.495.618.283 0 .494-.204.494-.618m4.163 0v-.277c0-.413-.211-.617-.494-.617-.285 0-.495.204-.495.617v.277c0 .414.21.618.495.618.283 0 .494-.204.494-.618m.006 5.828v-.694h.39c.231 0 .378.126.378.354 0 .225-.142.34-.387.34z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8 16A8 8 0 1 0 8 0a8 8 0 0 0 0 16M3.584 6V4h.69c.596 0 .886.355.886.998S4.867 6 4.274 6zm3.382-1.135v.272c0 .566-.318.903-.83.903-.513 0-.833-.337-.833-.903v-.272c0-.569.32-.904.832-.904.513 0 .83.337.83.904Zm1.021-.305V6h-.319V4h.293l.933 1.436h.015V4h.319v2h-.291L8 4.56zm3.142.305v.272c0 .566-.318.903-.83.903-.513 0-.833-.337-.833-.903v-.272c0-.569.32-.904.832-.904.513 0 .83.337.83.904Zm.899-.58V6h-.333V4.285h-.584V4h1.503v.285zM5.413 11.72V12H4.165v-2h1.248v.28h-.917v.57h.862v.268h-.862v.602zm.572.28h-.32v-2h.294l.933 1.436h.014v-1.435h.32V12h-.292l-.936-1.44h-.013zm2.279 0H7.93v-1.715h-.584V10H8.85v.284h-.586zm1.953-.28V12H8.97v-2h1.248v.28H9.3v.57h.863v.268H9.3v.602zM11.235 10c.42 0 .674.244.674.616a.575.575 0 0 1-.368.56l.404.824h-.373l-.36-.769h-.414V12h-.328v-2zM3.5 7h9a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-9a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsSignDoNotEnter (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3.584 6V4h.69c.596 0 .886.355.886.998S4.867 6 4.274 6zm.653-1.72h-.32v1.44h.32c.396 0 .582-.239.582-.718 0-.481-.188-.722-.582-.722m2.729.585v.272c0 .566-.318.903-.83.903-.513 0-.833-.337-.833-.903v-.272c0-.569.32-.904.832-.904.513 0 .83.337.83.904Zm-.337.274v-.277c0-.413-.211-.617-.494-.617-.285 0-.495.204-.495.617v.277c0 .414.21.618.495.618.283 0 .494-.204.494-.618m1.358-.579V6h-.319V4h.293l.933 1.436h.015V4h.319v2h-.291L8 4.56zm3.142.305v.272c0 .566-.318.903-.83.903-.513 0-.833-.337-.833-.903v-.272c0-.569.32-.904.832-.904.513 0 .83.337.83.904Zm-.337.274v-.277c0-.413-.211-.617-.494-.617-.285 0-.495.204-.495.617v.277c0 .414.21.618.495.618.283 0 .494-.204.494-.618m1.236-.854V6h-.333V4.285h-.584V4h1.503v.285zM4.496 11.72h.917V12H4.165v-2h1.248v.28h-.917v.57h.862v.268h-.862zm1.489-1.16V12h-.32v-2h.294l.933 1.436h.014v-1.435h.32V12h-.292l-.936-1.44zm2.279-.275V12H7.93v-1.715h-.584V10H8.85v.284zM9.3 11.72h.917V12H8.97v-2h1.248v.28H9.3v.57h.863v.268H9.3zM10.47 10h.765c.42 0 .674.244.674.616a.575.575 0 0 1-.368.56l.404.824h-.373l-.36-.769h-.414V12h-.328zm.328.273v.694h.381c.245 0 .387-.115.387-.34 0-.228-.147-.354-.378-.354zM3.5 7a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h9a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8 16A8 8 0 1 0 8 0a8 8 0 0 0 0 16m0-1A7 7 0 1 1 8 1a7 7 0 0 1 0 14\"},\"child\":[]}]})(props);\n};\nexport function BsSignIntersectionFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.05.435c-.58-.58-1.52-.58-2.1 0L.436 6.95c-.58.58-.58 1.519 0 2.098l6.516 6.516c.58.58 1.519.58 2.098 0l6.516-6.516c.58-.58.58-1.519 0-2.098zM7.25 4h1.5v3.25H12v1.5H8.75V12h-1.5V8.75H4v-1.5h3.25z\"},\"child\":[]}]})(props);\n};\nexport function BsSignIntersectionSideFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.05.435c-.58-.58-1.52-.58-2.1 0L.436 6.95c-.58.58-.58 1.519 0 2.098l6.516 6.516c.58.58 1.519.58 2.098 0l6.516-6.516c.58-.58.58-1.519 0-2.098zM6.25 4h1.5v3.25H11v1.5H7.75V12h-1.5z\"},\"child\":[]}]})(props);\n};\nexport function BsSignIntersectionSide (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.25 4v8h1.5V8.75H11v-1.5H7.75V4z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M9.05.435c-.58-.58-1.52-.58-2.1 0L.436 6.95c-.58.58-.58 1.519 0 2.098l6.516 6.516c.58.58 1.519.58 2.098 0l6.516-6.516c.58-.58.58-1.519 0-2.098zm-1.4.7a.495.495 0 0 1 .7 0l6.516 6.515a.495.495 0 0 1 0 .7L8.35 14.866a.495.495 0 0 1-.7 0L1.134 8.35a.495.495 0 0 1 0-.7L7.65 1.134Z\"},\"child\":[]}]})(props);\n};\nexport function BsSignIntersectionTFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.05.435c-.58-.58-1.52-.58-2.1 0L.436 6.95c-.58.58-.58 1.519 0 2.098l6.516 6.516c.58.58 1.519.58 2.098 0l6.516-6.516c.58-.58.58-1.519 0-2.098zM5 5h6v1.5H8.75V12h-1.5V6.5H5z\"},\"child\":[]}]})(props);\n};\nexport function BsSignIntersectionT (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5 5v1.5h2.25V12h1.5V6.5H11V5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M9.05.435c-.58-.58-1.52-.58-2.1 0L.436 6.95c-.58.58-.58 1.519 0 2.098l6.516 6.516c.58.58 1.519.58 2.098 0l6.516-6.516c.58-.58.58-1.519 0-2.098zm-1.4.7a.495.495 0 0 1 .7 0l6.516 6.515a.495.495 0 0 1 0 .7L8.35 14.866a.495.495 0 0 1-.7 0L1.134 8.35a.495.495 0 0 1 0-.7L7.65 1.134Z\"},\"child\":[]}]})(props);\n};\nexport function BsSignIntersectionYFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.05.435c-.58-.58-1.52-.58-2.1 0L.436 6.95c-.58.58-.58 1.519 0 2.098l6.516 6.516c.58.58 1.519.58 2.098 0l6.516-6.516c.58-.58.58-1.519 0-2.098zm1.443 4.762 1.014 1.106L8.75 8.83V12h-1.5V8.83L4.493 6.303l1.014-1.106L8 7.483z\"},\"child\":[]}]})(props);\n};\nexport function BsSignIntersectionY (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M10.493 5.197 8 7.483 5.507 5.197 4.493 6.303 7.25 8.83V12h1.5V8.83l2.757-2.527z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M9.05.435c-.58-.58-1.52-.58-2.1 0L.436 6.95c-.58.58-.58 1.519 0 2.098l6.516 6.516c.58.58 1.519.58 2.098 0l6.516-6.516c.58-.58.58-1.519 0-2.098zm-1.4.7a.495.495 0 0 1 .7 0l6.516 6.515a.495.495 0 0 1 0 .7L8.35 14.866a.495.495 0 0 1-.7 0L1.134 8.35a.495.495 0 0 1 0-.7L7.65 1.134Z\"},\"child\":[]}]})(props);\n};\nexport function BsSignIntersection (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.25 4v3.25H4v1.5h3.25V12h1.5V8.75H12v-1.5H8.75V4z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M9.05.435c-.58-.58-1.52-.58-2.1 0L.436 6.95c-.58.58-.58 1.519 0 2.098l6.516 6.516c.58.58 1.519.58 2.098 0l6.516-6.516c.58-.58.58-1.519 0-2.098zm-1.4.7a.495.495 0 0 1 .7 0l6.516 6.515a.495.495 0 0 1 0 .7L8.35 14.866a.495.495 0 0 1-.7 0L1.134 8.35a.495.495 0 0 1 0-.7L7.65 1.134Z\"},\"child\":[]}]})(props);\n};\nexport function BsSignMergeLeftFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.05.435c-.58-.58-1.52-.58-2.1 0L.436 6.95c-.58.58-.58 1.519 0 2.098l6.516 6.516c.58.58 1.519.58 2.098 0l6.516-6.516c.58-.58.58-1.519 0-2.098zM7.25 6H6.034a.25.25 0 0 1-.192-.41l1.966-2.36a.25.25 0 0 1 .384 0l1.966 2.36a.25.25 0 0 1-.192.41H8.75v6h-1.5V8.823c-.551.686-1.229 1.363-1.88 2.015l-.016.016-.708-.708c.757-.756 1.48-1.48 2.016-2.196q.377-.499.588-.95z\"},\"child\":[]}]})(props);\n};\nexport function BsSignMergeLeft (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.25 6v1q-.211.451-.588.95c-.537.716-1.259 1.44-2.016 2.196l.708.708.015-.016c.652-.652 1.33-1.33 1.881-2.015V12h1.5V6h1.216a.25.25 0 0 0 .192-.41L8.192 3.23a.25.25 0 0 0-.384 0L5.842 5.59a.25.25 0 0 0 .192.41z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M9.05.435c-.58-.58-1.52-.58-2.1 0L.436 6.95c-.58.58-.58 1.519 0 2.098l6.516 6.516c.58.58 1.519.58 2.098 0l6.516-6.516c.58-.58.58-1.519 0-2.098zm-1.4.7a.495.495 0 0 1 .7 0l6.516 6.515a.495.495 0 0 1 0 .7L8.35 14.866a.495.495 0 0 1-.7 0L1.134 8.35a.495.495 0 0 1 0-.7L7.65 1.134Z\"},\"child\":[]}]})(props);\n};\nexport function BsSignMergeRightFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.05.435c-.58-.58-1.52-.58-2.1 0L.436 6.95c-.58.58-.58 1.519 0 2.098l6.516 6.516c.58.58 1.519.58 2.098 0l6.516-6.516c.58-.58.58-1.519 0-2.098zM8.75 6v1q.211.451.588.95c.537.716 1.259 1.44 2.016 2.196l-.708.708-.015-.016c-.652-.652-1.33-1.33-1.881-2.015V12h-1.5V6H6.034a.25.25 0 0 1-.192-.41l1.966-2.36a.25.25 0 0 1 .384 0l1.966 2.36a.25.25 0 0 1-.192.41z\"},\"child\":[]}]})(props);\n};\nexport function BsSignMergeRight (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.75 6v1q.211.451.588.95c.537.716 1.259 1.44 2.016 2.196l-.708.708-.015-.016c-.652-.652-1.33-1.33-1.881-2.015V12h-1.5V6H6.034a.25.25 0 0 1-.192-.41l1.966-2.36a.25.25 0 0 1 .384 0l1.966 2.36a.25.25 0 0 1-.192.41z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M9.05.435c-.58-.58-1.52-.58-2.1 0L.436 6.95c-.58.58-.58 1.519 0 2.098l6.516 6.516c.58.58 1.519.58 2.098 0l6.516-6.516c.58-.58.58-1.519 0-2.098zm-1.4.7a.495.495 0 0 1 .7 0l6.516 6.515a.495.495 0 0 1 0 .7L8.35 14.866a.495.495 0 0 1-.7 0L1.134 8.35a.495.495 0 0 1 0-.7L7.65 1.134Z\"},\"child\":[]}]})(props);\n};\nexport function BsSignNoLeftTurnFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 13.292A8 8 0 0 1 13.293 2L9.195 6.099A2.5 2.5 0 0 0 8.5 6H7V4.534a.25.25 0 0 0-.41-.192L4.23 6.308a.25.25 0 0 0 0 .384l2.36 1.966.026.02zm.708.708A8 8 0 0 0 14 2.707l-3.885 3.884C10.656 7.05 11 7.735 11 8.5V11h-1V8.5c0-.489-.234-.923-.596-1.197l-6.696 6.696Z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8.293 7 7 8.293V7z\"},\"child\":[]}]})(props);\n};\nexport function BsSignNoLeftTurn (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 8a8 8 0 1 0 16 0A8 8 0 0 0 0 8m3.416 5.29 5.988-5.987c.362.274.596.708.596 1.197V11h1V8.5c0-.765-.344-1.45-.885-1.908l3.176-3.176a7 7 0 0 1-9.874 9.874Zm-.707-.706a7 7 0 0 1 9.874-9.874L9.196 6.097A2.5 2.5 0 0 0 8.5 6H7V4.534a.25.25 0 0 0-.41-.192L4.23 6.308a.25.25 0 0 0 0 .384l2.36 1.966.026.02zM8.293 7 7 8.293V7z\"},\"child\":[]}]})(props);\n};\nexport function BsSignNoParkingFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M13.292 14A8 8 0 0 1 2 2.707l3.5 3.5V12h1.283V9.164h1.674zm.708-.708-4.37-4.37C10.5 8.524 11 7.662 11 6.587c0-1.482-.955-2.584-2.538-2.584H5.5v.79L2.708 2.002A8 8 0 0 1 14 13.293Z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M6.777 7.485v.59h.59zm1.949.535L6.777 6.07v-.966H8.27c.893 0 1.419.539 1.419 1.482 0 .769-.35 1.273-.963 1.433Z\"},\"child\":[]}]})(props);\n};\nexport function BsSignNoParking (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 16A8 8 0 1 0 8 0a8 8 0 0 0 0 16m5.29-3.416L9.63 8.923C10.5 8.523 11 7.66 11 6.586c0-1.482-.955-2.584-2.538-2.584H5.5v.79L3.416 2.71a7 7 0 0 1 9.874 9.874m-.706.707A7 7 0 0 1 2.71 3.417l2.79 2.79V12h1.283V9.164h1.674zM8.726 8.019 6.777 6.07v-.966H8.27c.893 0 1.419.539 1.419 1.482 0 .769-.35 1.273-.963 1.433m-1.949-.534.59.59h-.59z\"},\"child\":[]}]})(props);\n};\nexport function BsSignNoRightTurnFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M14 13.292A8 8 0 0 0 2.707 2l4.097 4.098Q7.137 6.001 7.5 6H9V4.534a.25.25 0 0 1 .41-.192l2.36 1.966c.12.1.12.284 0 .384L9.41 8.658l-.026.02zm-.708.708A8 8 0 0 1 2 2.707l3.885 3.884A2.5 2.5 0 0 0 5 8.5V11h1V8.5c0-.489.234-.923.596-1.197l6.696 6.696Z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M7.707 7 9 8.293V7z\"},\"child\":[]}]})(props);\n};\nexport function BsSignNoRightTurn (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0m-3.416 5.29L6.596 7.304A1.5 1.5 0 0 0 6 8.5V11H5V8.5c0-.765.344-1.45.885-1.908L2.709 3.416a7 7 0 0 0 9.874 9.874Zm.707-.706A7 7 0 0 0 3.417 2.71l3.388 3.388Q7.137 6.001 7.5 6H9V4.534a.25.25 0 0 1 .41-.192l2.36 1.966c.12.1.12.284 0 .384L9.41 8.658l-.026.02zM7.707 7 9 8.293V7z\"},\"child\":[]}]})(props);\n};\nexport function BsSignRailroadFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.05.435c-.58-.58-1.52-.58-2.1 0L4.224 3.162 8 6.94l3.777-3.777L9.049.435Zm3.274 7.425v-.862h.467c.28 0 .467.154.467.44 0 .28-.182.421-.475.421h-.459Z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M12.838 4.223 9.06 8l3.777 3.777 2.727-2.728c.58-.58.58-1.519 0-2.098zm.03 2.361c.591 0 .935.334.935.844a.79.79 0 0 1-.485.748l.536 1.074h-.59l-.467-.994h-.473v.994h-.521V6.584h1.064Zm-1.091 6.254L8 9.06l-3.777 3.777 2.728 2.727c.58.58 1.519.58 2.098 0zm-8.953-5.84v.861h.46c.292 0 .474-.14.474-.421 0-.286-.188-.44-.467-.44z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3.162 11.777 6.94 8 3.162 4.223.435 6.951c-.58.58-.58 1.519 0 2.098zm-.86-5.193h1.065c.592 0 .936.334.936.844 0 .39-.242.654-.485.748l.536 1.074h-.59l-.467-.994h-.473v.994h-.521V6.584Z\"},\"child\":[]}]})(props);\n};\nexport function BsSignRailroad (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M11.303 6.584h1.064c.592 0 .936.334.936.844a.79.79 0 0 1-.485.748l.536 1.074h-.59l-.467-.994h-.473v.994h-.521zm.521.414v.861h.46c.292 0 .474-.14.474-.421 0-.286-.188-.44-.467-.44zm-8.771-.414h1.064c.592 0 .936.334.936.844 0 .39-.242.654-.485.748l.536 1.074h-.59l-.467-.994h-.473v.994h-.521zm.521.414v.861h.46c.292 0 .474-.14.474-.421 0-.286-.188-.44-.467-.44z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M6.95.435c.58-.58 1.52-.58 2.1 0l6.515 6.516c.58.58.58 1.519 0 2.098L9.05 15.565c-.58.58-1.519.58-2.098 0L.435 9.05a1.48 1.48 0 0 1 0-2.098zm1.4.7a.495.495 0 0 0-.7 0L4.923 3.861 8 6.939l3.078-3.077L8.35 1.134Zm3.788 3.788L9.061 8l3.077 3.078 2.728-2.728a.495.495 0 0 0 0-.7zm-1.06 7.215L8 9.061l-3.077 3.077 2.727 2.728a.495.495 0 0 0 .7 0zm-7.216-1.06L6.939 8 3.862 4.923 1.134 7.65a.495.495 0 0 0 0 .7z\"},\"child\":[]}]})(props);\n};\nexport function BsSignStopFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M10.371 8.277v-.553c0-.827-.422-1.234-.987-1.234-.572 0-.99.407-.99 1.234v.553c0 .83.418 1.237.99 1.237.565 0 .987-.408.987-1.237m2.586-.24c.463 0 .735-.272.735-.744s-.272-.741-.735-.741h-.774v1.485z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4.893 0a.5.5 0 0 0-.353.146L.146 4.54A.5.5 0 0 0 0 4.893v6.214a.5.5 0 0 0 .146.353l4.394 4.394a.5.5 0 0 0 .353.146h6.214a.5.5 0 0 0 .353-.146l4.394-4.394a.5.5 0 0 0 .146-.353V4.893a.5.5 0 0 0-.146-.353L11.46.146A.5.5 0 0 0 11.107 0zM3.16 10.08c-.931 0-1.447-.493-1.494-1.132h.653c.065.346.396.583.891.583.524 0 .83-.246.83-.62 0-.303-.203-.467-.637-.572l-.656-.164c-.61-.147-.978-.51-.978-1.078 0-.706.597-1.184 1.444-1.184.853 0 1.386.475 1.436 1.087h-.645c-.064-.32-.352-.542-.797-.542-.472 0-.77.246-.77.6 0 .261.196.437.553.522l.654.161c.673.164 1.06.487 1.06 1.11 0 .736-.574 1.228-1.544 1.228Zm3.427-3.51V10h-.665V6.57H4.753V6h3.006v.568H6.587Zm4.458 1.16v.544c0 1.131-.636 1.805-1.661 1.805-1.026 0-1.664-.674-1.664-1.805V7.73c0-1.136.638-1.807 1.664-1.807s1.66.674 1.66 1.807ZM11.52 6h1.535c.82 0 1.316.55 1.316 1.292 0 .747-.501 1.289-1.321 1.289h-.865V10h-.665V6.001Z\"},\"child\":[]}]})(props);\n};\nexport function BsSignStopLightsFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 6a1 1 0 1 0 0-2 1 1 0 0 0 0 2m0 3a1 1 0 1 0 0-2 1 1 0 0 0 0 2m1 2a1 1 0 1 1-2 0 1 1 0 0 1 2 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M9.05.435c-.58-.58-1.52-.58-2.1 0L.436 6.95c-.58.58-.58 1.519 0 2.098l6.516 6.516c.58.58 1.519.58 2.098 0l6.516-6.516c.58-.58.58-1.519 0-2.098zM6 4a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v8a1 1 0 0 1-1 1H7a1 1 0 0 1-1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsSignStopLights (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6 4a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v8a1 1 0 0 1-1 1H7a1 1 0 0 1-1-1zm2 2a1 1 0 1 0 0-2 1 1 0 0 0 0 2m0 3a1 1 0 1 0 0-2 1 1 0 0 0 0 2m1 2a1 1 0 1 0-2 0 1 1 0 0 0 2 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M9.05.435c-.58-.58-1.52-.58-2.1 0L.436 6.95c-.58.58-.58 1.519 0 2.098l6.516 6.516c.58.58 1.519.58 2.098 0l6.516-6.516c.58-.58.58-1.519 0-2.098zm-1.4.7a.495.495 0 0 1 .7 0l6.516 6.515a.495.495 0 0 1 0 .7L8.35 14.866a.495.495 0 0 1-.7 0L1.134 8.35a.495.495 0 0 1 0-.7L7.65 1.134Z\"},\"child\":[]}]})(props);\n};\nexport function BsSignStop (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3.16 10.08c-.931 0-1.447-.493-1.494-1.132h.653c.065.346.396.583.891.583.524 0 .83-.246.83-.62 0-.303-.203-.467-.637-.572l-.656-.164c-.61-.147-.978-.51-.978-1.078 0-.706.597-1.184 1.444-1.184.853 0 1.386.475 1.436 1.087h-.645c-.064-.32-.352-.542-.797-.542-.472 0-.77.246-.77.6 0 .261.196.437.553.522l.654.161c.673.164 1.06.487 1.06 1.11 0 .736-.574 1.228-1.544 1.228Zm3.427-3.51V10h-.665V6.57H4.753V6h3.006v.568H6.587Z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M11.045 7.73v.544c0 1.131-.636 1.805-1.661 1.805-1.026 0-1.664-.674-1.664-1.805V7.73c0-1.136.638-1.807 1.664-1.807s1.66.674 1.66 1.807Zm-.674.547v-.553c0-.827-.422-1.234-.987-1.234-.572 0-.99.407-.99 1.234v.553c0 .83.418 1.237.99 1.237.565 0 .987-.408.987-1.237m1.15-2.276h1.535c.82 0 1.316.55 1.316 1.292 0 .747-.501 1.289-1.321 1.289h-.865V10h-.665zm1.436 2.036c.463 0 .735-.272.735-.744s-.272-.741-.735-.741h-.774v1.485z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M4.893 0a.5.5 0 0 0-.353.146L.146 4.54A.5.5 0 0 0 0 4.893v6.214a.5.5 0 0 0 .146.353l4.394 4.394a.5.5 0 0 0 .353.146h6.214a.5.5 0 0 0 .353-.146l4.394-4.394a.5.5 0 0 0 .146-.353V4.893a.5.5 0 0 0-.146-.353L11.46.146A.5.5 0 0 0 11.107 0zM1 5.1 5.1 1h5.8L15 5.1v5.8L10.9 15H5.1L1 10.9z\"},\"child\":[]}]})(props);\n};\nexport function BsSignTurnLeftFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.05.435c-.58-.58-1.52-.58-2.1 0L.436 6.95c-.58.58-.58 1.519 0 2.098l6.516 6.516c.58.58 1.519.58 2.098 0l6.516-6.516c.58-.58.58-1.519 0-2.098zM7 8.466a.25.25 0 0 1-.41.192L4.23 6.692a.25.25 0 0 1 0-.384l2.36-1.966a.25.25 0 0 1 .41.192V6h1.5A2.5 2.5 0 0 1 11 8.5V11h-1V8.5A1.5 1.5 0 0 0 8.5 7H7z\"},\"child\":[]}]})(props);\n};\nexport function BsSignTurnLeft (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M11 8.5A2.5 2.5 0 0 0 8.5 6H7V4.534a.25.25 0 0 0-.41-.192L4.23 6.308a.25.25 0 0 0 0 .384l2.36 1.966A.25.25 0 0 0 7 8.466V7h1.5A1.5 1.5 0 0 1 10 8.5V11h1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M6.95.435c.58-.58 1.52-.58 2.1 0l6.515 6.516c.58.58.58 1.519 0 2.098L9.05 15.565c-.58.58-1.519.58-2.098 0L.435 9.05a1.48 1.48 0 0 1 0-2.098zm1.4.7a.495.495 0 0 0-.7 0L1.134 7.65a.495.495 0 0 0 0 .7l6.516 6.516a.495.495 0 0 0 .7 0l6.516-6.516a.495.495 0 0 0 0-.7L8.35 1.134Z\"},\"child\":[]}]})(props);\n};\nexport function BsSignTurnRightFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.05.435c-.58-.58-1.52-.58-2.1 0L.436 6.95c-.58.58-.58 1.519 0 2.098l6.516 6.516c.58.58 1.519.58 2.098 0l6.516-6.516c.58-.58.58-1.519 0-2.098zM9 8.466V7H7.5A1.5 1.5 0 0 0 6 8.5V11H5V8.5A2.5 2.5 0 0 1 7.5 6H9V4.534a.25.25 0 0 1 .41-.192l2.36 1.966c.12.1.12.284 0 .384L9.41 8.658A.25.25 0 0 1 9 8.466\"},\"child\":[]}]})(props);\n};\nexport function BsSignTurnRight (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5 8.5A2.5 2.5 0 0 1 7.5 6H9V4.534a.25.25 0 0 1 .41-.192l2.36 1.966c.12.1.12.284 0 .384L9.41 8.658A.25.25 0 0 1 9 8.466V7H7.5A1.5 1.5 0 0 0 6 8.5V11H5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M6.95.435c.58-.58 1.52-.58 2.1 0l6.515 6.516c.58.58.58 1.519 0 2.098L9.05 15.565c-.58.58-1.519.58-2.098 0L.435 9.05a1.48 1.48 0 0 1 0-2.098zm1.4.7a.495.495 0 0 0-.7 0L1.134 7.65a.495.495 0 0 0 0 .7l6.516 6.516a.495.495 0 0 0 .7 0l6.516-6.516a.495.495 0 0 0 0-.7L8.35 1.134Z\"},\"child\":[]}]})(props);\n};\nexport function BsSignTurnSlightLeftFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.05.435c-.58-.58-1.52-.58-2.1 0L.436 6.95c-.58.58-.58 1.519 0 2.098l6.516 6.516c.58.58 1.519.58 2.098 0l6.516-6.516c.58-.58.58-1.519 0-2.098zM6.864 8.368a.25.25 0 0 1-.451-.039l-1.06-2.882a.25.25 0 0 1 .192-.333l3.026-.523a.25.25 0 0 1 .26.371l-.667 1.154.621.373A2.5 2.5 0 0 1 10 8.632V11H9V8.632a1.5 1.5 0 0 0-.728-1.286l-.607-.364-.8 1.386Z\"},\"child\":[]}]})(props);\n};\nexport function BsSignTurnSlightLeft (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m7.665 6.982-.8 1.386a.25.25 0 0 1-.451-.039l-1.06-2.882a.25.25 0 0 1 .192-.333l3.026-.523a.25.25 0 0 1 .26.371l-.667 1.154.621.373A2.5 2.5 0 0 1 10 8.632V11H9V8.632a1.5 1.5 0 0 0-.728-1.286z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M6.95.435c.58-.58 1.52-.58 2.1 0l6.515 6.516c.58.58.58 1.519 0 2.098L9.05 15.565c-.58.58-1.519.58-2.098 0L.435 9.05a1.48 1.48 0 0 1 0-2.098zm1.4.7a.495.495 0 0 0-.7 0L1.134 7.65a.495.495 0 0 0 0 .7l6.516 6.516a.495.495 0 0 0 .7 0l6.516-6.516a.495.495 0 0 0 0-.7L8.35 1.134Z\"},\"child\":[]}]})(props);\n};\nexport function BsSignTurnSlightRightFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.95.435c.58-.58 1.52-.58 2.1 0l6.515 6.516c.58.58.58 1.519 0 2.098L9.05 15.565c-.58.58-1.519.58-2.098 0L.435 9.05a1.48 1.48 0 0 1 0-2.098zm1.385 6.547.8 1.386a.25.25 0 0 0 .451-.039l1.06-2.882a.25.25 0 0 0-.192-.333l-3.026-.523a.25.25 0 0 0-.26.371l.667 1.154-.621.373A2.5 2.5 0 0 0 6 8.632V11h1V8.632a1.5 1.5 0 0 1 .728-1.286z\"},\"child\":[]}]})(props);\n};\nexport function BsSignTurnSlightRight (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m8.335 6.982.8 1.386a.25.25 0 0 0 .451-.039l1.06-2.882a.25.25 0 0 0-.192-.333l-3.026-.523a.25.25 0 0 0-.26.371l.667 1.154-.621.373A2.5 2.5 0 0 0 6 8.632V11h1V8.632a1.5 1.5 0 0 1 .728-1.286z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M6.95.435c.58-.58 1.52-.58 2.1 0l6.515 6.516c.58.58.58 1.519 0 2.098L9.05 15.565c-.58.58-1.519.58-2.098 0L.435 9.05a1.48 1.48 0 0 1 0-2.098zm1.4.7a.495.495 0 0 0-.7 0L1.134 7.65a.495.495 0 0 0 0 .7l6.516 6.516a.495.495 0 0 0 .7 0l6.516-6.516a.495.495 0 0 0 0-.7L8.35 1.134Z\"},\"child\":[]}]})(props);\n};\nexport function BsSignYieldFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M10.48 5.323h-.28v1.353h.28c.372 0 .54-.222.54-.674 0-.45-.169-.68-.54-.68Z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M7.022 14.434a1.131 1.131 0 0 0 1.96 0l6.857-11.667c.457-.778-.092-1.767-.98-1.767H1.144c-.889 0-1.437.99-.98 1.767zM5.506 6.232V7H5.11v-.76L4.44 5h.44l.424.849h.016L5.748 5h.428zM6.628 5v2h-.396V5zm.684 1.676h.895V7H6.919V5h1.288v.324h-.895v.513h.842v.303h-.842zm1.521-.013h.848V7H8.437V5h.396zm.97.337V5h.73c.608 0 .895.364.895.995 0 .636-.291 1.005-.895 1.005z\"},\"child\":[]}]})(props);\n};\nexport function BsSignYield (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5.506 6.232V7H5.11v-.76L4.44 5h.44l.424.849h.016L5.748 5h.428zM6.628 5v2h-.396V5zm.684 1.676h.895V7H6.919V5h1.288v.324h-.895v.513h.842v.303h-.842zm1.521-.013h.848V7H8.437V5h.396z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M9.804 7V5h.73c.607 0 .894.364.894.995 0 .636-.291 1.005-.895 1.005zm.676-1.677h-.28v1.353h.28c.372 0 .54-.222.54-.674 0-.45-.169-.68-.54-.68Z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M7.022 14.434a1.131 1.131 0 0 0 1.96 0l6.857-11.667c.457-.778-.092-1.767-.98-1.767H1.144c-.889 0-1.437.99-.98 1.767zm.98-.434a.13.13 0 0 1-.064-.016.15.15 0 0 1-.054-.057L1.027 2.26a.18.18 0 0 1-.002-.183.2.2 0 0 1 .054-.06A.1.1 0 0 1 1.145 2h13.713a.12.12 0 0 1 .066.017q.028.015.055.06a.18.18 0 0 1-.003.183L8.12 13.927a.15.15 0 0 1-.054.057.13.13 0 0 1-.063.016Z\"},\"child\":[]}]})(props);\n};\nexport function BsSignal (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m6.08.234.179.727a7.3 7.3 0 0 0-2.01.832l-.383-.643A7.9 7.9 0 0 1 6.079.234zm3.84 0L9.742.96a7.3 7.3 0 0 1 2.01.832l.388-.643A8 8 0 0 0 9.92.234m-8.77 3.63a8 8 0 0 0-.916 2.215l.727.18a7.3 7.3 0 0 1 .832-2.01l-.643-.386zM.75 8a7 7 0 0 1 .081-1.086L.091 6.8a8 8 0 0 0 0 2.398l.74-.112A7 7 0 0 1 .75 8m11.384 6.848-.384-.64a7.2 7.2 0 0 1-2.007.831l.18.728a8 8 0 0 0 2.211-.919M15.251 8q0 .547-.082 1.086l.74.112a8 8 0 0 0 0-2.398l-.74.114q.082.54.082 1.086m.516 1.918-.728-.18a7.3 7.3 0 0 1-.832 2.012l.643.387a8 8 0 0 0 .917-2.219m-6.68 5.25c-.72.11-1.453.11-2.173 0l-.112.742a8 8 0 0 0 2.396 0l-.112-.741zm4.75-2.868a7.2 7.2 0 0 1-1.537 1.534l.446.605a8 8 0 0 0 1.695-1.689zM12.3 2.163c.587.432 1.105.95 1.537 1.537l.604-.45a8 8 0 0 0-1.69-1.691zM2.163 3.7A7.2 7.2 0 0 1 3.7 2.163l-.45-.604a8 8 0 0 0-1.691 1.69l.604.45zm12.688.163-.644.387c.377.623.658 1.3.832 2.007l.728-.18a8 8 0 0 0-.916-2.214M6.913.831a7.3 7.3 0 0 1 2.172 0l.112-.74a8 8 0 0 0-2.396 0zM2.547 14.64 1 15l.36-1.549-.729-.17-.361 1.548a.75.75 0 0 0 .9.902l1.548-.357zM.786 12.612l.732.168.25-1.073A7.2 7.2 0 0 1 .96 9.74l-.727.18a8 8 0 0 0 .736 1.902l-.184.79zm3.5 1.623-1.073.25.17.731.79-.184c.6.327 1.239.574 1.902.737l.18-.728a7.2 7.2 0 0 1-1.962-.811zM8 1.5a6.5 6.5 0 0 0-6.498 6.502 6.5 6.5 0 0 0 .998 3.455l-.625 2.668L4.54 13.5a6.502 6.502 0 0 0 6.93-11A6.5 6.5 0 0 0 8 1.5\"},\"child\":[]}]})(props);\n};\nexport function BsSignpost2Fill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.293.707A1 1 0 0 0 7 1.414V2H2a1 1 0 0 0-1 1v2a1 1 0 0 0 1 1h5v1H2.5a1 1 0 0 0-.8.4L.725 8.7a.5.5 0 0 0 0 .6l.975 1.3a1 1 0 0 0 .8.4H7v5h2v-5h5a1 1 0 0 0 1-1V8a1 1 0 0 0-1-1H9V6h4.5a1 1 0 0 0 .8-.4l.975-1.3a.5.5 0 0 0 0-.6L14.3 2.4a1 1 0 0 0-.8-.4H9v-.586A1 1 0 0 0 7.293.707\"},\"child\":[]}]})(props);\n};\nexport function BsSignpost2 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7 1.414V2H2a1 1 0 0 0-1 1v2a1 1 0 0 0 1 1h5v1H2.5a1 1 0 0 0-.8.4L.725 8.7a.5.5 0 0 0 0 .6l.975 1.3a1 1 0 0 0 .8.4H7v5h2v-5h5a1 1 0 0 0 1-1V8a1 1 0 0 0-1-1H9V6h4.5a1 1 0 0 0 .8-.4l.975-1.3a.5.5 0 0 0 0-.6L14.3 2.4a1 1 0 0 0-.8-.4H9v-.586a1 1 0 0 0-2 0M13.5 3l.75 1-.75 1H2V3zm.5 5v2H2.5l-.75-1 .75-1z\"},\"child\":[]}]})(props);\n};\nexport function BsSignpostFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.293.707A1 1 0 0 0 7 1.414V4H2a1 1 0 0 0-1 1v4a1 1 0 0 0 1 1h5v6h2v-6h3.532a1 1 0 0 0 .768-.36l1.933-2.32a.5.5 0 0 0 0-.64L13.3 4.36a1 1 0 0 0-.768-.36H9V1.414A1 1 0 0 0 7.293.707\"},\"child\":[]}]})(props);\n};\nexport function BsSignpostSplitFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7 16h2V6h5a1 1 0 0 0 .8-.4l.975-1.3a.5.5 0 0 0 0-.6L14.8 2.4A1 1 0 0 0 14 2H9v-.586a1 1 0 0 0-2 0V7H2a1 1 0 0 0-.8.4L.225 8.7a.5.5 0 0 0 0 .6l.975 1.3a1 1 0 0 0 .8.4h5z\"},\"child\":[]}]})(props);\n};\nexport function BsSignpostSplit (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7 7V1.414a1 1 0 0 1 2 0V2h5a1 1 0 0 1 .8.4l.975 1.3a.5.5 0 0 1 0 .6L14.8 5.6a1 1 0 0 1-.8.4H9v10H7v-5H2a1 1 0 0 1-.8-.4L.225 9.3a.5.5 0 0 1 0-.6L1.2 7.4A1 1 0 0 1 2 7zm1 3V8H2l-.75 1L2 10zm0-5h6l.75-1L14 3H8z\"},\"child\":[]}]})(props);\n};\nexport function BsSignpost (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7 1.414V4H2a1 1 0 0 0-1 1v4a1 1 0 0 0 1 1h5v6h2v-6h3.532a1 1 0 0 0 .768-.36l1.933-2.32a.5.5 0 0 0 0-.64L13.3 4.36a1 1 0 0 0-.768-.36H9V1.414a1 1 0 0 0-2 0M12.532 5l1.666 2-1.666 2H2V5z\"},\"child\":[]}]})(props);\n};\nexport function BsSimFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5 4.5a.5.5 0 0 1 .5-.5h2v2H5zM8.5 6V4h2a.5.5 0 0 1 .5.5V6zM5 7h6v2H5zm3.5 3H11v1.5a.5.5 0 0 1-.5.5h-2zm-1 0v2h-2a.5.5 0 0 1-.5-.5V10z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3.5 0A1.5 1.5 0 0 0 2 1.5v13A1.5 1.5 0 0 0 3.5 16h9a1.5 1.5 0 0 0 1.5-1.5V3.414a1.5 1.5 0 0 0-.44-1.06L11.647.439A1.5 1.5 0 0 0 10.586 0zm2 3h5A1.5 1.5 0 0 1 12 4.5v7a1.5 1.5 0 0 1-1.5 1.5h-5A1.5 1.5 0 0 1 4 11.5v-7A1.5 1.5 0 0 1 5.5 3\"},\"child\":[]}]})(props);\n};\nexport function BsSimSlashFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m11.646.44.897.896-1.703 1.703A1.5 1.5 0 0 0 10.5 3h-5A1.5 1.5 0 0 0 4 4.5v5.379l-2 2V1.5A1.5 1.5 0 0 1 3.5 0h7.086a1.5 1.5 0 0 1 1.06.44M8.5 5.378 9.879 4H8.5zM5 8.879 6.879 7H5zm6-1.758L9.121 9H11zm-3.5 3.5L6.121 12H7.5zM5.5 13q-.175 0-.34-.039L2.502 15.62c.265.236.615.38.998.38h9a1.5 1.5 0 0 0 1.5-1.5V4.121l-2 2V11.5a1.5 1.5 0 0 1-1.5 1.5zM5 4.5a.5.5 0 0 1 .5-.5h2v2H5zM8.5 10H11v1.5a.5.5 0 0 1-.5.5h-2zm6.354-8.146a.5.5 0 0 0-.708-.708l-13 13a.5.5 0 0 0 .708.708z\"},\"child\":[]}]})(props);\n};\nexport function BsSimSlash (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m11.646.44.897.896-.707.707-.897-.897A.5.5 0 0 0 10.586 1H3.5a.5.5 0 0 0-.5.5v9.379l-1 1V1.5A1.5 1.5 0 0 1 3.5 0h7.086a1.5 1.5 0 0 1 1.06.44M10.5 3q.175 0 .34.039L9.879 4H8.5v1.379L6.879 7H5v1.879l-1 1V4.5A1.5 1.5 0 0 1 5.5 3zM12 6.121l-1 1V9H9.121L7.5 10.621V12H6.121l-.961.961q.165.039.34.039h5a1.5 1.5 0 0 0 1.5-1.5zM3.5 15a.5.5 0 0 1-.288-.091l-.71.71c.265.237.615.381.998.381h9a1.5 1.5 0 0 0 1.5-1.5V4.121l-1 1V14.5a.5.5 0 0 1-.5.5zm2-11a.5.5 0 0 0-.5.5V6h2.5V4zm5.5 6v1.5a.5.5 0 0 1-.5.5h-2v-2zm3.854-8.146a.5.5 0 0 0-.708-.708l-13 13a.5.5 0 0 0 .708.708z\"},\"child\":[]}]})(props);\n};\nexport function BsSim (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 1.5A1.5 1.5 0 0 1 3.5 0h7.086a1.5 1.5 0 0 1 1.06.44l1.915 1.914A1.5 1.5 0 0 1 14 3.414V14.5a1.5 1.5 0 0 1-1.5 1.5h-9A1.5 1.5 0 0 1 2 14.5zM3.5 1a.5.5 0 0 0-.5.5v13a.5.5 0 0 0 .5.5h9a.5.5 0 0 0 .5-.5V3.414a.5.5 0 0 0-.146-.353l-1.915-1.915A.5.5 0 0 0 10.586 1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M5.5 4a.5.5 0 0 0-.5.5V6h2.5V4zm3 0v2H11V4.5a.5.5 0 0 0-.5-.5zM11 7H5v2h6zm0 3H8.5v2h2a.5.5 0 0 0 .5-.5zm-3.5 2v-2H5v1.5a.5.5 0 0 0 .5.5zM4 4.5A1.5 1.5 0 0 1 5.5 3h5A1.5 1.5 0 0 1 12 4.5v7a1.5 1.5 0 0 1-1.5 1.5h-5A1.5 1.5 0 0 1 4 11.5z\"},\"child\":[]}]})(props);\n};\nexport function BsSinaWeibo (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M10.878 1.093a4.23 4.23 0 0 1 4.031 1.305 4.22 4.22 0 0 1 .886 4.14v.001a.612.612 0 0 1-1.166-.377 3.01 3.01 0 0 0-3.495-3.873.611.611 0 1 1-.256-1.196M3.753 9.465c.548-1.11 1.972-1.74 3.233-1.411 1.304.338 1.971 1.568 1.437 2.764-.541 1.221-2.095 1.875-3.416 1.449-1.271-.411-1.812-1.67-1.254-2.802m2.658.567c.16.066.365-.009.458-.168.088-.16.03-.34-.129-.397-.156-.062-.353.013-.446.168-.09.154-.041.333.117.397m-1.607 1.314c.413.188.963.009 1.219-.4.252-.413.12-.883-.296-1.062-.41-.172-.94.005-1.194.402-.256.4-.135.874.271 1.06\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m12.014 7.238.005.001c.919.285 1.941.974 1.939 2.188 0 2.007-2.895 4.535-7.246 4.535C3.393 13.962 0 12.352 0 9.708c0-1.385.876-2.985 2.384-4.493C4.4 3.199 6.751 2.28 7.634 3.165c.39.392.427 1.065.177 1.87-.132.405.38.182.38.182 1.63-.682 3.051-.722 3.57.02.278.397.252.951-.004 1.594-.116.293.035.34.257.407m-10.4 3.101c.172 1.738 2.46 2.936 5.109 2.674 2.647-.26 4.656-1.883 4.482-3.623-.17-1.738-2.458-2.937-5.107-2.674-2.647.263-4.656 1.883-4.484 3.623m11.681-6.484a2.06 2.06 0 0 0-1.962-.634.526.526 0 1 0 .219 1.031 1.008 1.008 0 0 1 1.17 1.296.528.528 0 0 0 1.005.325 2.06 2.06 0 0 0-.432-2.018\"},\"child\":[]}]})(props);\n};\nexport function BsSkipBackwardBtnFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 12V4a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2m11.21-6.907L8.5 7.028V5.5a.5.5 0 0 0-.79-.407L5 7.028V5.5a.5.5 0 0 0-1 0v5a.5.5 0 0 0 1 0V8.972l2.71 1.935a.5.5 0 0 0 .79-.407V8.972l2.71 1.935A.5.5 0 0 0 12 10.5v-5a.5.5 0 0 0-.79-.407\"},\"child\":[]}]})(props);\n};\nexport function BsSkipBackwardBtn (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M11.21 5.093A.5.5 0 0 1 12 5.5v5a.5.5 0 0 1-.79.407L8.5 8.972V10.5a.5.5 0 0 1-.79.407L5 8.972V10.5a.5.5 0 0 1-1 0v-5a.5.5 0 0 1 1 0v1.528l2.71-1.935a.5.5 0 0 1 .79.407v1.528z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M0 4a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm15 0a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1v8a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsSkipBackwardCircleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0m-4.79-2.907L8.5 7.028V5.5a.5.5 0 0 0-.79-.407L5 7.028V5.5a.5.5 0 0 0-1 0v5a.5.5 0 0 0 1 0V8.972l2.71 1.935a.5.5 0 0 0 .79-.407V8.972l2.71 1.935A.5.5 0 0 0 12 10.5v-5a.5.5 0 0 0-.79-.407\"},\"child\":[]}]})(props);\n};\nexport function BsSkipBackwardCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14m0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M11.729 5.055a.5.5 0 0 0-.52.038L8.5 7.028V5.5a.5.5 0 0 0-.79-.407L5 7.028V5.5a.5.5 0 0 0-1 0v5a.5.5 0 0 0 1 0V8.972l2.71 1.935a.5.5 0 0 0 .79-.407V8.972l2.71 1.935A.5.5 0 0 0 12 10.5v-5a.5.5 0 0 0-.271-.445\"},\"child\":[]}]})(props);\n};\nexport function BsSkipBackwardFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M.5 3.5A.5.5 0 0 0 0 4v8a.5.5 0 0 0 1 0V8.753l6.267 3.636c.54.313 1.233-.066 1.233-.697v-2.94l6.267 3.636c.54.314 1.233-.065 1.233-.696V4.308c0-.63-.693-1.01-1.233-.696L8.5 7.248v-2.94c0-.63-.692-1.01-1.233-.696L1 7.248V4a.5.5 0 0 0-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsSkipBackward (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M.5 3.5A.5.5 0 0 1 1 4v3.248l6.267-3.636c.52-.302 1.233.043 1.233.696v2.94l6.267-3.636c.52-.302 1.233.043 1.233.696v7.384c0 .653-.713.998-1.233.696L8.5 8.752v2.94c0 .653-.713.998-1.233.696L1 8.752V12a.5.5 0 0 1-1 0V4a.5.5 0 0 1 .5-.5m7 1.133L1.696 8 7.5 11.367zm7.5 0L9.196 8 15 11.367z\"},\"child\":[]}]})(props);\n};\nexport function BsSkipEndBtnFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 12V4a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2m6.79-6.907A.5.5 0 0 0 6 5.5v5a.5.5 0 0 0 .79.407L9.5 8.972V10.5a.5.5 0 0 0 1 0v-5a.5.5 0 0 0-1 0v1.528z\"},\"child\":[]}]})(props);\n};\nexport function BsSkipEndBtn (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.79 5.093 9.5 7.028V5.5a.5.5 0 0 1 1 0v5a.5.5 0 0 1-1 0V8.972l-2.71 1.935A.5.5 0 0 1 6 10.5v-5a.5.5 0 0 1 .79-.407\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M0 4a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm15 0a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1v8a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsSkipEndCircleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0M6.79 5.093A.5.5 0 0 0 6 5.5v5a.5.5 0 0 0 .79.407L9.5 8.972V10.5a.5.5 0 0 0 1 0v-5a.5.5 0 0 0-1 0v1.528z\"},\"child\":[]}]})(props);\n};\nexport function BsSkipEndCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14m0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M6.271 5.055a.5.5 0 0 1 .52.038L9.5 7.028V5.5a.5.5 0 0 1 1 0v5a.5.5 0 0 1-1 0V8.972l-2.71 1.935A.5.5 0 0 1 6 10.5v-5a.5.5 0 0 1 .271-.445\"},\"child\":[]}]})(props);\n};\nexport function BsSkipEndFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12.5 4a.5.5 0 0 0-1 0v3.248L5.233 3.612C4.693 3.3 4 3.678 4 4.308v7.384c0 .63.692 1.01 1.233.697L11.5 8.753V12a.5.5 0 0 0 1 0z\"},\"child\":[]}]})(props);\n};\nexport function BsSkipEnd (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12.5 4a.5.5 0 0 0-1 0v3.248L5.233 3.612C4.713 3.31 4 3.655 4 4.308v7.384c0 .653.713.998 1.233.696L11.5 8.752V12a.5.5 0 0 0 1 0zM5 4.633 10.804 8 5 11.367z\"},\"child\":[]}]})(props);\n};\nexport function BsSkipForwardBtnFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 12V4a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2m4.79-6.907A.5.5 0 0 0 4 5.5v5a.5.5 0 0 0 .79.407L7.5 8.972V10.5a.5.5 0 0 0 .79.407L11 8.972V10.5a.5.5 0 0 0 1 0v-5a.5.5 0 0 0-1 0v1.528L8.29 5.093a.5.5 0 0 0-.79.407v1.528z\"},\"child\":[]}]})(props);\n};\nexport function BsSkipForwardBtn (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4.79 5.093A.5.5 0 0 0 4 5.5v5a.5.5 0 0 0 .79.407L7.5 8.972V10.5a.5.5 0 0 0 .79.407L11 8.972V10.5a.5.5 0 0 0 1 0v-5a.5.5 0 0 0-1 0v1.528L8.29 5.093a.5.5 0 0 0-.79.407v1.528z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M0 4a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm15 0a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1v8a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsSkipForwardCircleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0M4.79 5.093A.5.5 0 0 0 4 5.5v5a.5.5 0 0 0 .79.407L7.5 8.972V10.5a.5.5 0 0 0 .79.407L11 8.972V10.5a.5.5 0 0 0 1 0v-5a.5.5 0 0 0-1 0v1.528L8.29 5.093a.5.5 0 0 0-.79.407v1.528z\"},\"child\":[]}]})(props);\n};\nexport function BsSkipForwardCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14m0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4.271 5.055a.5.5 0 0 1 .52.038L7.5 7.028V5.5a.5.5 0 0 1 .79-.407L11 7.028V5.5a.5.5 0 0 1 1 0v5a.5.5 0 0 1-1 0V8.972l-2.71 1.935a.5.5 0 0 1-.79-.407V8.972l-2.71 1.935A.5.5 0 0 1 4 10.5v-5a.5.5 0 0 1 .271-.445\"},\"child\":[]}]})(props);\n};\nexport function BsSkipForwardFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M15.5 3.5a.5.5 0 0 1 .5.5v8a.5.5 0 0 1-1 0V8.753l-6.267 3.636c-.54.313-1.233-.066-1.233-.697v-2.94l-6.267 3.636C.693 12.703 0 12.324 0 11.693V4.308c0-.63.693-1.01 1.233-.696L7.5 7.248v-2.94c0-.63.693-1.01 1.233-.696L15 7.248V4a.5.5 0 0 1 .5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsSkipForward (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M15.5 3.5a.5.5 0 0 1 .5.5v8a.5.5 0 0 1-1 0V8.752l-6.267 3.636c-.52.302-1.233-.043-1.233-.696v-2.94l-6.267 3.636C.713 12.69 0 12.345 0 11.692V4.308c0-.653.713-.998 1.233-.696L7.5 7.248v-2.94c0-.653.713-.998 1.233-.696L15 7.248V4a.5.5 0 0 1 .5-.5M1 4.633v6.734L6.804 8zm7.5 0v6.734L14.304 8z\"},\"child\":[]}]})(props);\n};\nexport function BsSkipStartBtnFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 12V4a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2m9.71-6.907L7 7.028V5.5a.5.5 0 0 0-1 0v5a.5.5 0 0 0 1 0V8.972l2.71 1.935a.5.5 0 0 0 .79-.407v-5a.5.5 0 0 0-.79-.407\"},\"child\":[]}]})(props);\n};\nexport function BsSkipStartBtn (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.71 5.093a.5.5 0 0 1 .79.407v5a.5.5 0 0 1-.79.407L7 8.972V10.5a.5.5 0 0 1-1 0v-5a.5.5 0 0 1 1 0v1.528z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M0 4a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm15 0a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1v8a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsSkipStartCircleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0M9.71 5.093 7 7.028V5.5a.5.5 0 0 0-1 0v5a.5.5 0 0 0 1 0V8.972l2.71 1.935a.5.5 0 0 0 .79-.407v-5a.5.5 0 0 0-.79-.407\"},\"child\":[]}]})(props);\n};\nexport function BsSkipStartCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14m0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M10.229 5.055a.5.5 0 0 0-.52.038L7 7.028V5.5a.5.5 0 0 0-1 0v5a.5.5 0 0 0 1 0V8.972l2.71 1.935a.5.5 0 0 0 .79-.407v-5a.5.5 0 0 0-.271-.445\"},\"child\":[]}]})(props);\n};\nexport function BsSkipStartFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4 4a.5.5 0 0 1 1 0v3.248l6.267-3.636c.54-.313 1.232.066 1.232.696v7.384c0 .63-.692 1.01-1.232.697L5 8.753V12a.5.5 0 0 1-1 0z\"},\"child\":[]}]})(props);\n};\nexport function BsSkipStart (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4 4a.5.5 0 0 1 1 0v3.248l6.267-3.636c.52-.302 1.233.043 1.233.696v7.384c0 .653-.713.998-1.233.696L5 8.752V12a.5.5 0 0 1-1 0zm7.5.633L5.696 8l5.804 3.367z\"},\"child\":[]}]})(props);\n};\nexport function BsSkype (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4.671 0c.88 0 1.733.247 2.468.702a7.42 7.42 0 0 1 6.02 2.118 7.37 7.37 0 0 1 2.167 5.215q0 .517-.072 1.026a4.66 4.66 0 0 1 .6 2.281 4.64 4.64 0 0 1-1.37 3.294A4.67 4.67 0 0 1 11.18 16c-.84 0-1.658-.226-2.37-.644a7.42 7.42 0 0 1-6.114-2.107A7.37 7.37 0 0 1 .529 8.035q0-.545.08-1.081a4.644 4.644 0 0 1 .76-5.59A4.68 4.68 0 0 1 4.67 0zm.447 7.01c.18.309.43.572.729.769a7 7 0 0 0 1.257.653q.737.308 1.145.523c.229.112.437.264.615.448.135.142.21.331.21.528a.87.87 0 0 1-.335.723c-.291.196-.64.289-.99.264a2.6 2.6 0 0 1-1.048-.206 11 11 0 0 1-.532-.253 1.3 1.3 0 0 0-.587-.15.72.72 0 0 0-.501.176.63.63 0 0 0-.195.491.8.8 0 0 0 .148.482 1.2 1.2 0 0 0 .456.354 5.1 5.1 0 0 0 2.212.419 4.6 4.6 0 0 0 1.624-.265 2.3 2.3 0 0 0 1.08-.801c.267-.39.402-.855.386-1.327a2.1 2.1 0 0 0-.279-1.101 2.5 2.5 0 0 0-.772-.792A7 7 0 0 0 8.486 7.3a1 1 0 0 0-.145-.058 18 18 0 0 1-1.013-.447 1.8 1.8 0 0 1-.54-.387.73.73 0 0 1-.2-.508.8.8 0 0 1 .385-.723 1.76 1.76 0 0 1 .968-.247c.26-.003.52.03.772.096q.412.119.802.293c.105.049.22.075.336.076a.6.6 0 0 0 .453-.19.7.7 0 0 0 .18-.496.72.72 0 0 0-.17-.476 1.4 1.4 0 0 0-.556-.354 3.7 3.7 0 0 0-.708-.183 6 6 0 0 0-1.022-.078 4.5 4.5 0 0 0-1.536.258 2.7 2.7 0 0 0-1.174.784 1.9 1.9 0 0 0-.45 1.287c-.01.37.076.736.25 1.063\"},\"child\":[]}]})(props);\n};\nexport function BsSlack (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3.362 10.11c0 .926-.756 1.681-1.681 1.681S0 11.036 0 10.111.756 8.43 1.68 8.43h1.682zm.846 0c0-.924.756-1.68 1.681-1.68s1.681.756 1.681 1.68v4.21c0 .924-.756 1.68-1.68 1.68a1.685 1.685 0 0 1-1.682-1.68zM5.89 3.362c-.926 0-1.682-.756-1.682-1.681S4.964 0 5.89 0s1.68.756 1.68 1.68v1.682zm0 .846c.924 0 1.68.756 1.68 1.681S6.814 7.57 5.89 7.57H1.68C.757 7.57 0 6.814 0 5.89c0-.926.756-1.682 1.68-1.682zm6.749 1.682c0-.926.755-1.682 1.68-1.682S16 4.964 16 5.889s-.756 1.681-1.68 1.681h-1.681zm-.848 0c0 .924-.755 1.68-1.68 1.68A1.685 1.685 0 0 1 8.43 5.89V1.68C8.43.757 9.186 0 10.11 0c.926 0 1.681.756 1.681 1.68zm-1.681 6.748c.926 0 1.682.756 1.682 1.681S11.036 16 10.11 16s-1.681-.756-1.681-1.68v-1.682h1.68zm0-.847c-.924 0-1.68-.755-1.68-1.68s.756-1.681 1.68-1.681h4.21c.924 0 1.68.756 1.68 1.68 0 .926-.756 1.681-1.68 1.681z\"},\"child\":[]}]})(props);\n};\nexport function BsSlashCircleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0m-4.646-2.646a.5.5 0 0 0-.708-.708l-6 6a.5.5 0 0 0 .708.708z\"},\"child\":[]}]})(props);\n};\nexport function BsSlashCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14m0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M11.354 4.646a.5.5 0 0 0-.708 0l-6 6a.5.5 0 0 0 .708.708l6-6a.5.5 0 0 0 0-.708\"},\"child\":[]}]})(props);\n};\nexport function BsSlashLg (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M13.854 2.146a.5.5 0 0 1 0 .708l-11 11a.5.5 0 0 1-.708-.708l11-11a.5.5 0 0 1 .708 0\"},\"child\":[]}]})(props);\n};\nexport function BsSlashSquareFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm9.354 5.354-6 6a.5.5 0 0 1-.708-.708l6-6a.5.5 0 0 1 .708.708\"},\"child\":[]}]})(props);\n};\nexport function BsSlashSquare (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M14 1a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1zM2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M11.354 4.646a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708l6-6a.5.5 0 0 1 .708 0\"},\"child\":[]}]})(props);\n};\nexport function BsSlash (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M11.354 4.646a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708l6-6a.5.5 0 0 1 .708 0\"},\"child\":[]}]})(props);\n};\nexport function BsSliders (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M11.5 2a1.5 1.5 0 1 0 0 3 1.5 1.5 0 0 0 0-3M9.05 3a2.5 2.5 0 0 1 4.9 0H16v1h-2.05a2.5 2.5 0 0 1-4.9 0H0V3zM4.5 7a1.5 1.5 0 1 0 0 3 1.5 1.5 0 0 0 0-3M2.05 8a2.5 2.5 0 0 1 4.9 0H16v1H6.95a2.5 2.5 0 0 1-4.9 0H0V8zm9.45 4a1.5 1.5 0 1 0 0 3 1.5 1.5 0 0 0 0-3m-2.45 1a2.5 2.5 0 0 1 4.9 0H16v1h-2.05a2.5 2.5 0 0 1-4.9 0H0v-1z\"},\"child\":[]}]})(props);\n};\nexport function BsSliders2Vertical (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M0 10.5a.5.5 0 0 0 .5.5h4a.5.5 0 0 0 0-1H3V1.5a.5.5 0 0 0-1 0V10H.5a.5.5 0 0 0-.5.5M2.5 12a.5.5 0 0 0-.5.5v2a.5.5 0 0 0 1 0v-2a.5.5 0 0 0-.5-.5m3-6.5A.5.5 0 0 0 6 6h1.5v8.5a.5.5 0 0 0 1 0V6H10a.5.5 0 0 0 0-1H6a.5.5 0 0 0-.5.5M8 1a.5.5 0 0 0-.5.5v2a.5.5 0 0 0 1 0v-2A.5.5 0 0 0 8 1m3 9.5a.5.5 0 0 0 .5.5h4a.5.5 0 0 0 0-1H14V1.5a.5.5 0 0 0-1 0V10h-1.5a.5.5 0 0 0-.5.5m2.5 1.5a.5.5 0 0 0-.5.5v2a.5.5 0 0 0 1 0v-2a.5.5 0 0 0-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsSliders2 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M10.5 1a.5.5 0 0 1 .5.5v4a.5.5 0 0 1-1 0V4H1.5a.5.5 0 0 1 0-1H10V1.5a.5.5 0 0 1 .5-.5M12 3.5a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1-.5-.5m-6.5 2A.5.5 0 0 1 6 6v1.5h8.5a.5.5 0 0 1 0 1H6V10a.5.5 0 0 1-1 0V6a.5.5 0 0 1 .5-.5M1 8a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1h-2A.5.5 0 0 1 1 8m9.5 2a.5.5 0 0 1 .5.5v4a.5.5 0 0 1-1 0V13H1.5a.5.5 0 0 1 0-1H10v-1.5a.5.5 0 0 1 .5-.5m1.5 2.5a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsSmartwatch (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9 5a.5.5 0 0 0-1 0v3H6a.5.5 0 0 0 0 1h2.5a.5.5 0 0 0 .5-.5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4 1.667v.383A2.5 2.5 0 0 0 2 4.5v7a2.5 2.5 0 0 0 2 2.45v.383C4 15.253 4.746 16 5.667 16h4.666c.92 0 1.667-.746 1.667-1.667v-.383a2.5 2.5 0 0 0 2-2.45V8h.5a.5.5 0 0 0 .5-.5v-2a.5.5 0 0 0-.5-.5H14v-.5a2.5 2.5 0 0 0-2-2.45v-.383C12 .747 11.254 0 10.333 0H5.667C4.747 0 4 .746 4 1.667M4.5 3h7A1.5 1.5 0 0 1 13 4.5v7a1.5 1.5 0 0 1-1.5 1.5h-7A1.5 1.5 0 0 1 3 11.5v-7A1.5 1.5 0 0 1 4.5 3\"},\"child\":[]}]})(props);\n};\nexport function BsSnapchat (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M15.943 11.526c-.111-.303-.323-.465-.564-.599a1 1 0 0 0-.123-.064l-.219-.111c-.752-.399-1.339-.902-1.746-1.498a3.4 3.4 0 0 1-.3-.531c-.034-.1-.032-.156-.008-.207a.3.3 0 0 1 .097-.1c.129-.086.262-.173.352-.231.162-.104.289-.187.371-.245.309-.216.525-.446.66-.702a1.4 1.4 0 0 0 .069-1.16c-.205-.538-.713-.872-1.329-.872a1.8 1.8 0 0 0-.487.065c.006-.368-.002-.757-.035-1.139-.116-1.344-.587-2.048-1.077-2.61a4.3 4.3 0 0 0-1.095-.881C9.764.216 8.92 0 7.999 0s-1.76.216-2.505.641c-.412.232-.782.53-1.097.883-.49.562-.96 1.267-1.077 2.61-.033.382-.04.772-.036 1.138a1.8 1.8 0 0 0-.487-.065c-.615 0-1.124.335-1.328.873a1.4 1.4 0 0 0 .067 1.161c.136.256.352.486.66.701.082.058.21.14.371.246l.339.221a.4.4 0 0 1 .109.11c.026.053.027.11-.012.217a3.4 3.4 0 0 1-.295.52c-.398.583-.968 1.077-1.696 1.472-.385.204-.786.34-.955.8-.128.348-.044.743.28 1.075q.18.189.409.31a4.4 4.4 0 0 0 1 .4.7.7 0 0 1 .202.09c.118.104.102.26.259.488q.12.178.296.3c.33.229.701.243 1.095.258.355.014.758.03 1.217.18.19.064.389.186.618.328.55.338 1.305.802 2.566.802 1.262 0 2.02-.466 2.576-.806.227-.14.424-.26.609-.321.46-.152.863-.168 1.218-.181.393-.015.764-.03 1.095-.258a1.14 1.14 0 0 0 .336-.368c.114-.192.11-.327.217-.42a.6.6 0 0 1 .19-.087 4.5 4.5 0 0 0 1.014-.404c.16-.087.306-.2.429-.336l.004-.005c.304-.325.38-.709.256-1.047m-1.121.602c-.684.378-1.139.337-1.493.565-.3.193-.122.61-.34.76-.269.186-1.061-.012-2.085.326-.845.279-1.384 1.082-2.903 1.082s-2.045-.801-2.904-1.084c-1.022-.338-1.816-.14-2.084-.325-.218-.15-.041-.568-.341-.761-.354-.228-.809-.187-1.492-.563-.436-.24-.189-.39-.044-.46 2.478-1.199 2.873-3.05 2.89-3.188.022-.166.045-.297-.138-.466-.177-.164-.962-.65-1.18-.802-.36-.252-.52-.503-.402-.812.082-.214.281-.295.49-.295a1 1 0 0 1 .197.022c.396.086.78.285 1.002.338q.04.01.082.011c.118 0 .16-.06.152-.195-.026-.433-.087-1.277-.019-2.066.094-1.084.444-1.622.859-2.097.2-.229 1.137-1.22 2.93-1.22 1.792 0 2.732.987 2.931 1.215.416.475.766 1.013.859 2.098.068.788.009 1.632-.019 2.065-.01.142.034.195.152.195a.4.4 0 0 0 .082-.01c.222-.054.607-.253 1.002-.338a1 1 0 0 1 .197-.023c.21 0 .409.082.49.295.117.309-.04.56-.401.812-.218.152-1.003.638-1.18.802-.184.169-.16.3-.139.466.018.14.413 1.991 2.89 3.189.147.073.394.222-.041.464\"},\"child\":[]}]})(props);\n};\nexport function BsSnow (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 16a.5.5 0 0 1-.5-.5v-1.293l-.646.647a.5.5 0 0 1-.707-.708L7.5 12.793V8.866l-3.4 1.963-.496 1.85a.5.5 0 1 1-.966-.26l.237-.882-1.12.646a.5.5 0 0 1-.5-.866l1.12-.646-.884-.237a.5.5 0 1 1 .26-.966l1.848.495L7 8 3.6 6.037l-1.85.495a.5.5 0 0 1-.258-.966l.883-.237-1.12-.646a.5.5 0 1 1 .5-.866l1.12.646-.237-.883a.5.5 0 1 1 .966-.258l.495 1.849L7.5 7.134V3.207L6.147 1.854a.5.5 0 1 1 .707-.708l.646.647V.5a.5.5 0 1 1 1 0v1.293l.647-.647a.5.5 0 1 1 .707.708L8.5 3.207v3.927l3.4-1.963.496-1.85a.5.5 0 1 1 .966.26l-.236.882 1.12-.646a.5.5 0 0 1 .5.866l-1.12.646.883.237a.5.5 0 1 1-.26.966l-1.848-.495L9 8l3.4 1.963 1.849-.495a.5.5 0 0 1 .259.966l-.883.237 1.12.646a.5.5 0 0 1-.5.866l-1.12-.646.236.883a.5.5 0 1 1-.966.258l-.495-1.849-3.4-1.963v3.927l1.353 1.353a.5.5 0 0 1-.707.708l-.647-.647V15.5a.5.5 0 0 1-.5.5z\"},\"child\":[]}]})(props);\n};\nexport function BsSnow2 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 16a.5.5 0 0 1-.5-.5v-1.293l-.646.647a.5.5 0 0 1-.707-.708L7.5 12.793v-1.086l-.646.647a.5.5 0 0 1-.707-.708L7.5 10.293V8.866l-1.236.713-.495 1.85a.5.5 0 1 1-.966-.26l.237-.882-.94.542-.496 1.85a.5.5 0 1 1-.966-.26l.237-.882-1.12.646a.5.5 0 0 1-.5-.866l1.12-.646-.884-.237a.5.5 0 1 1 .26-.966l1.848.495.94-.542-.882-.237a.5.5 0 1 1 .258-.966l1.85.495L7 8l-1.236-.713-1.849.495a.5.5 0 1 1-.258-.966l.883-.237-.94-.542-1.85.495a.5.5 0 0 1-.258-.966l.883-.237-1.12-.646a.5.5 0 1 1 .5-.866l1.12.646-.237-.883a.5.5 0 0 1 .966-.258l.495 1.849.94.542-.236-.883a.5.5 0 0 1 .966-.258l.495 1.849 1.236.713V5.707L6.147 4.354a.5.5 0 1 1 .707-.708l.646.647V3.207L6.147 1.854a.5.5 0 1 1 .707-.708l.646.647V.5a.5.5 0 0 1 1 0v1.293l.647-.647a.5.5 0 1 1 .707.708L8.5 3.207v1.086l.647-.647a.5.5 0 1 1 .707.708L8.5 5.707v1.427l1.236-.713.495-1.85a.5.5 0 1 1 .966.26l-.236.882.94-.542.495-1.85a.5.5 0 1 1 .966.26l-.236.882 1.12-.646a.5.5 0 0 1 .5.866l-1.12.646.883.237a.5.5 0 1 1-.26.966l-1.848-.495-.94.542.883.237a.5.5 0 1 1-.26.966l-1.848-.495L9 8l1.236.713 1.849-.495a.5.5 0 0 1 .259.966l-.883.237.94.542 1.849-.495a.5.5 0 0 1 .259.966l-.883.237 1.12.646a.5.5 0 0 1-.5.866l-1.12-.646.236.883a.5.5 0 1 1-.966.258l-.495-1.849-.94-.542.236.883a.5.5 0 0 1-.966.258L9.736 9.58 8.5 8.866v1.427l1.354 1.353a.5.5 0 0 1-.707.708l-.647-.647v1.086l1.354 1.353a.5.5 0 0 1-.707.708l-.647-.647V15.5a.5.5 0 0 1-.5.5\"},\"child\":[]}]})(props);\n};\nexport function BsSnow3 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 7.5a.5.5 0 1 0 0 1 .5.5 0 0 0 0-1\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8 16a.5.5 0 0 1-.5-.5v-1.293l-.646.647a.5.5 0 0 1-.707-.708L7.5 12.793v-1.51l-2.053-1.232-1.348.778-.495 1.85a.5.5 0 1 1-.966-.26l.237-.882-1.12.646a.5.5 0 0 1-.5-.866l1.12-.646-.883-.237a.5.5 0 1 1 .258-.966l1.85.495L5 9.155v-2.31l-1.4-.808-1.85.495a.5.5 0 1 1-.259-.966l.884-.237-1.12-.646a.5.5 0 0 1 .5-.866l1.12.646-.237-.883a.5.5 0 1 1 .966-.258l.495 1.849 1.348.778L7.5 4.717v-1.51L6.147 1.854a.5.5 0 1 1 .707-.708l.646.647V.5a.5.5 0 0 1 1 0v1.293l.647-.647a.5.5 0 1 1 .707.708L8.5 3.207v1.51l2.053 1.232 1.348-.778.495-1.85a.5.5 0 1 1 .966.26l-.236.882 1.12-.646a.5.5 0 0 1 .5.866l-1.12.646.883.237a.5.5 0 1 1-.26.966l-1.848-.495-1.4.808v2.31l1.4.808 1.849-.495a.5.5 0 1 1 .259.966l-.883.237 1.12.646a.5.5 0 0 1-.5.866l-1.12-.646.236.883a.5.5 0 1 1-.966.258l-.495-1.849-1.348-.778L8.5 11.283v1.51l1.354 1.353a.5.5 0 0 1-.707.708l-.647-.647V15.5a.5.5 0 0 1-.5.5m2-6.783V6.783l-2-1.2-2 1.2v2.434l2 1.2z\"},\"child\":[]}]})(props);\n};\nexport function BsSortAlphaDownAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12.96 7H9.028v-.691l2.579-3.72v-.054H9.098v-.867h3.785v.691l-2.567 3.72v.054h2.645z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M10.082 12.629 9.664 14H8.598l1.789-5.332h1.234L13.402 14h-1.12l-.419-1.371zm1.57-.785L11 9.688h-.047l-.652 2.156z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4.5 2.5a.5.5 0 0 0-1 0v9.793l-1.146-1.147a.5.5 0 0 0-.708.708l2 1.999.007.007a.497.497 0 0 0 .7-.006l2-2a.5.5 0 0 0-.707-.708L4.5 12.293z\"},\"child\":[]}]})(props);\n};\nexport function BsSortAlphaDown (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M10.082 5.629 9.664 7H8.598l1.789-5.332h1.234L13.402 7h-1.12l-.419-1.371zm1.57-.785L11 2.687h-.047l-.652 2.157z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M12.96 14H9.028v-.691l2.579-3.72v-.054H9.098v-.867h3.785v.691l-2.567 3.72v.054h2.645zM4.5 2.5a.5.5 0 0 0-1 0v9.793l-1.146-1.147a.5.5 0 0 0-.708.708l2 1.999.007.007a.497.497 0 0 0 .7-.006l2-2a.5.5 0 0 0-.707-.708L4.5 12.293z\"},\"child\":[]}]})(props);\n};\nexport function BsSortAlphaUpAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12.96 7H9.028v-.691l2.579-3.72v-.054H9.098v-.867h3.785v.691l-2.567 3.72v.054h2.645z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M10.082 12.629 9.664 14H8.598l1.789-5.332h1.234L13.402 14h-1.12l-.419-1.371zm1.57-.785L11 9.688h-.047l-.652 2.156z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4.5 13.5a.5.5 0 0 1-1 0V3.707L2.354 4.854a.5.5 0 1 1-.708-.708l2-1.999.007-.007a.5.5 0 0 1 .7.006l2 2a.5.5 0 1 1-.707.708L4.5 3.707z\"},\"child\":[]}]})(props);\n};\nexport function BsSortAlphaUp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M10.082 5.629 9.664 7H8.598l1.789-5.332h1.234L13.402 7h-1.12l-.419-1.371zm1.57-.785L11 2.687h-.047l-.652 2.157z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M12.96 14H9.028v-.691l2.579-3.72v-.054H9.098v-.867h3.785v.691l-2.567 3.72v.054h2.645zm-8.46-.5a.5.5 0 0 1-1 0V3.707L2.354 4.854a.5.5 0 1 1-.708-.708l2-1.999.007-.007a.5.5 0 0 1 .7.006l2 2a.5.5 0 1 1-.707.708L4.5 3.707z\"},\"child\":[]}]})(props);\n};\nexport function BsSortDownAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3.5 3.5a.5.5 0 0 0-1 0v8.793l-1.146-1.147a.5.5 0 0 0-.708.708l2 1.999.007.007a.497.497 0 0 0 .7-.006l2-2a.5.5 0 0 0-.707-.708L3.5 12.293zm4 .5a.5.5 0 0 1 0-1h1a.5.5 0 0 1 0 1zm0 3a.5.5 0 0 1 0-1h3a.5.5 0 0 1 0 1zm0 3a.5.5 0 0 1 0-1h5a.5.5 0 0 1 0 1zM7 12.5a.5.5 0 0 0 .5.5h7a.5.5 0 0 0 0-1h-7a.5.5 0 0 0-.5.5\"},\"child\":[]}]})(props);\n};\nexport function BsSortDown (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3.5 2.5a.5.5 0 0 0-1 0v8.793l-1.146-1.147a.5.5 0 0 0-.708.708l2 1.999.007.007a.497.497 0 0 0 .7-.006l2-2a.5.5 0 0 0-.707-.708L3.5 11.293zm3.5 1a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5M7.5 6a.5.5 0 0 0 0 1h5a.5.5 0 0 0 0-1zm0 3a.5.5 0 0 0 0 1h3a.5.5 0 0 0 0-1zm0 3a.5.5 0 0 0 0 1h1a.5.5 0 0 0 0-1z\"},\"child\":[]}]})(props);\n};\nexport function BsSortNumericDownAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M11.36 7.098c-1.137 0-1.708-.657-1.762-1.278h1.004c.058.223.343.45.773.45.824 0 1.164-.829 1.133-1.856h-.059c-.148.39-.57.742-1.261.742-.91 0-1.72-.613-1.72-1.758 0-1.148.848-1.836 1.973-1.836 1.09 0 2.063.637 2.063 2.688 0 1.867-.723 2.848-2.145 2.848zm.062-2.735c.504 0 .933-.336.933-.972 0-.633-.398-1.008-.94-1.008-.52 0-.927.375-.927 1 0 .64.418.98.934.98\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M12.438 8.668V14H11.39V9.684h-.051l-1.211.859v-.969l1.262-.906h1.046zM4.5 2.5a.5.5 0 0 0-1 0v9.793l-1.146-1.147a.5.5 0 0 0-.708.708l2 1.999.007.007a.497.497 0 0 0 .7-.006l2-2a.5.5 0 0 0-.707-.708L4.5 12.293z\"},\"child\":[]}]})(props);\n};\nexport function BsSortNumericDown (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12.438 1.668V7H11.39V2.684h-.051l-1.211.859v-.969l1.262-.906h1.046z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M11.36 14.098c-1.137 0-1.708-.657-1.762-1.278h1.004c.058.223.343.45.773.45.824 0 1.164-.829 1.133-1.856h-.059c-.148.39-.57.742-1.261.742-.91 0-1.72-.613-1.72-1.758 0-1.148.848-1.835 1.973-1.835 1.09 0 2.063.636 2.063 2.687 0 1.867-.723 2.848-2.145 2.848zm.062-2.735c.504 0 .933-.336.933-.972 0-.633-.398-1.008-.94-1.008-.52 0-.927.375-.927 1 0 .64.418.98.934.98\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4.5 2.5a.5.5 0 0 0-1 0v9.793l-1.146-1.147a.5.5 0 0 0-.708.708l2 1.999.007.007a.497.497 0 0 0 .7-.006l2-2a.5.5 0 0 0-.707-.708L4.5 12.293z\"},\"child\":[]}]})(props);\n};\nexport function BsSortNumericUpAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M11.36 7.098c-1.137 0-1.708-.657-1.762-1.278h1.004c.058.223.343.45.773.45.824 0 1.164-.829 1.133-1.856h-.059c-.148.39-.57.742-1.261.742-.91 0-1.72-.613-1.72-1.758 0-1.148.848-1.836 1.973-1.836 1.09 0 2.063.637 2.063 2.688 0 1.867-.723 2.848-2.145 2.848zm.062-2.735c.504 0 .933-.336.933-.972 0-.633-.398-1.008-.94-1.008-.52 0-.927.375-.927 1 0 .64.418.98.934.98\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M12.438 8.668V14H11.39V9.684h-.051l-1.211.859v-.969l1.262-.906h1.046zM4.5 13.5a.5.5 0 0 1-1 0V3.707L2.354 4.854a.5.5 0 1 1-.708-.708l2-1.999.007-.007a.5.5 0 0 1 .7.006l2 2a.5.5 0 1 1-.707.708L4.5 3.707z\"},\"child\":[]}]})(props);\n};\nexport function BsSortNumericUp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12.438 1.668V7H11.39V2.684h-.051l-1.211.859v-.969l1.262-.906h1.046z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M11.36 14.098c-1.137 0-1.708-.657-1.762-1.278h1.004c.058.223.343.45.773.45.824 0 1.164-.829 1.133-1.856h-.059c-.148.39-.57.742-1.261.742-.91 0-1.72-.613-1.72-1.758 0-1.148.848-1.835 1.973-1.835 1.09 0 2.063.636 2.063 2.687 0 1.867-.723 2.848-2.145 2.848zm.062-2.735c.504 0 .933-.336.933-.972 0-.633-.398-1.008-.94-1.008-.52 0-.927.375-.927 1 0 .64.418.98.934.98\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4.5 13.5a.5.5 0 0 1-1 0V3.707L2.354 4.854a.5.5 0 1 1-.708-.708l2-1.999.007-.007a.5.5 0 0 1 .7.006l2 2a.5.5 0 1 1-.707.708L4.5 3.707z\"},\"child\":[]}]})(props);\n};\nexport function BsSortUpAlt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3.5 13.5a.5.5 0 0 1-1 0V4.707L1.354 5.854a.5.5 0 1 1-.708-.708l2-1.999.007-.007a.5.5 0 0 1 .7.006l2 2a.5.5 0 1 1-.707.708L3.5 4.707zm4-9.5a.5.5 0 0 1 0-1h1a.5.5 0 0 1 0 1zm0 3a.5.5 0 0 1 0-1h3a.5.5 0 0 1 0 1zm0 3a.5.5 0 0 1 0-1h5a.5.5 0 0 1 0 1zM7 12.5a.5.5 0 0 0 .5.5h7a.5.5 0 0 0 0-1h-7a.5.5 0 0 0-.5.5\"},\"child\":[]}]})(props);\n};\nexport function BsSortUp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3.5 12.5a.5.5 0 0 1-1 0V3.707L1.354 4.854a.5.5 0 1 1-.708-.708l2-1.999.007-.007a.5.5 0 0 1 .7.006l2 2a.5.5 0 1 1-.707.708L3.5 3.707zm3.5-9a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5M7.5 6a.5.5 0 0 0 0 1h5a.5.5 0 0 0 0-1zm0 3a.5.5 0 0 0 0 1h3a.5.5 0 0 0 0-1zm0 3a.5.5 0 0 0 0 1h1a.5.5 0 0 0 0-1z\"},\"child\":[]}]})(props);\n};\nexport function BsSoundwave (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M8.5 2a.5.5 0 0 1 .5.5v11a.5.5 0 0 1-1 0v-11a.5.5 0 0 1 .5-.5m-2 2a.5.5 0 0 1 .5.5v7a.5.5 0 0 1-1 0v-7a.5.5 0 0 1 .5-.5m4 0a.5.5 0 0 1 .5.5v7a.5.5 0 0 1-1 0v-7a.5.5 0 0 1 .5-.5m-6 1.5A.5.5 0 0 1 5 6v4a.5.5 0 0 1-1 0V6a.5.5 0 0 1 .5-.5m8 0a.5.5 0 0 1 .5.5v4a.5.5 0 0 1-1 0V6a.5.5 0 0 1 .5-.5m-10 1A.5.5 0 0 1 3 7v2a.5.5 0 0 1-1 0V7a.5.5 0 0 1 .5-.5m12 0a.5.5 0 0 1 .5.5v2a.5.5 0 0 1-1 0V7a.5.5 0 0 1 .5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsSourceforge (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.13 8.43c0-2.604-.929-3.79-1.42-4.24a.14.14 0 0 0-.232.123c.095 1.472-1.762 1.84-1.762 4.144v.013c0 1.404 1.065 2.55 2.376 2.55s2.377-1.146 2.377-2.55v-.013c0-.655-.246-1.282-.492-1.745-.055-.096-.191-.055-.178.027.451 1.99-.669 3.217-.669 1.69Z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M6.303 13.923a.25.25 0 0 1-.164-.068L.061 7.789c-.081-.082-.081-.232 0-.327l6.42-6.407A.3.3 0 0 1 6.63 1h1.844c.109 0 .177.068.204.136a.22.22 0 0 1-.054.246L2.602 7.407a.304.304 0 0 0 0 .436l4.766 4.771c.082.082.082.232 0 .328l-.915.927a.3.3 0 0 1-.15.054m1.216 1.063a.22.22 0 0 1-.15-.382l6.036-6.025a.32.32 0 0 0 .096-.218.27.27 0 0 0-.096-.218l-4.78-4.771c-.082-.082-.082-.232 0-.327l.929-.927a.23.23 0 0 1 .163-.068c.069 0 .11.04.15.081l6.065 6.067c.04.04.068.095.068.163a.23.23 0 0 1-.068.164l-6.42 6.407A.23.23 0 0 1 9.35 15H7.52z\"},\"child\":[]}]})(props);\n};\nexport function BsSpeakerFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9 4a1 1 0 1 1-2 0 1 1 0 0 1 2 0m-2.5 6.5a1.5 1.5 0 1 1 3 0 1.5 1.5 0 0 1-3 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm6 4a2 2 0 1 1-4 0 2 2 0 0 1 4 0M8 7a3.5 3.5 0 1 1 0 7 3.5 3.5 0 0 1 0-7\"},\"child\":[]}]})(props);\n};\nexport function BsSpeaker (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12 1a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1zM4 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8 4.75a.75.75 0 1 1 0-1.5.75.75 0 0 1 0 1.5M8 6a2 2 0 1 0 0-4 2 2 0 0 0 0 4m0 3a1.5 1.5 0 1 0 0 3 1.5 1.5 0 0 0 0-3m-3.5 1.5a3.5 3.5 0 1 1 7 0 3.5 3.5 0 0 1-7 0\"},\"child\":[]}]})(props);\n};\nexport function BsSpeedometer (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 2a.5.5 0 0 1 .5.5V4a.5.5 0 0 1-1 0V2.5A.5.5 0 0 1 8 2M3.732 3.732a.5.5 0 0 1 .707 0l.915.914a.5.5 0 1 1-.708.708l-.914-.915a.5.5 0 0 1 0-.707M2 8a.5.5 0 0 1 .5-.5h1.586a.5.5 0 0 1 0 1H2.5A.5.5 0 0 1 2 8m9.5 0a.5.5 0 0 1 .5-.5h1.5a.5.5 0 0 1 0 1H12a.5.5 0 0 1-.5-.5m.754-4.246a.39.39 0 0 0-.527-.02L7.547 7.31A.91.91 0 1 0 8.85 8.569l3.434-4.297a.39.39 0 0 0-.029-.518z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M6.664 15.889A8 8 0 1 1 9.336.11a8 8 0 0 1-2.672 15.78zm-4.665-4.283A11.95 11.95 0 0 1 8 10c2.186 0 4.236.585 6.001 1.606a7 7 0 1 0-12.002 0\"},\"child\":[]}]})(props);\n};\nexport function BsSpeedometer2 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 4a.5.5 0 0 1 .5.5V6a.5.5 0 0 1-1 0V4.5A.5.5 0 0 1 8 4M3.732 5.732a.5.5 0 0 1 .707 0l.915.914a.5.5 0 1 1-.708.708l-.914-.915a.5.5 0 0 1 0-.707M2 10a.5.5 0 0 1 .5-.5h1.586a.5.5 0 0 1 0 1H2.5A.5.5 0 0 1 2 10m9.5 0a.5.5 0 0 1 .5-.5h1.5a.5.5 0 0 1 0 1H12a.5.5 0 0 1-.5-.5m.754-4.246a.39.39 0 0 0-.527-.02L7.547 9.31a.91.91 0 1 0 1.302 1.258l3.434-4.297a.39.39 0 0 0-.029-.518z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M0 10a8 8 0 1 1 15.547 2.661c-.442 1.253-1.845 1.602-2.932 1.25C11.309 13.488 9.475 13 8 13c-1.474 0-3.31.488-4.615.911-1.087.352-2.49.003-2.932-1.25A8 8 0 0 1 0 10m8-7a7 7 0 0 0-6.603 9.329c.203.575.923.876 1.68.63C4.397 12.533 6.358 12 8 12s3.604.532 4.923.96c.757.245 1.477-.056 1.68-.631A7 7 0 0 0 8 3\"},\"child\":[]}]})(props);\n};\nexport function BsSpellcheck (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.217 11.068c1.216 0 1.948-.869 1.948-2.31v-.702c0-1.44-.727-2.305-1.929-2.305-.742 0-1.328.347-1.499.889h-.063V3.983h-1.29V11h1.27v-.791h.064c.21.532.776.86 1.499.86zm-.43-1.025c-.66 0-1.113-.518-1.113-1.28V8.12c0-.825.42-1.343 1.098-1.343.684 0 1.075.518 1.075 1.416v.45c0 .888-.386 1.401-1.06 1.401zm-5.583 1.035c.767 0 1.201-.356 1.406-.737h.059V11h1.216V7.519c0-1.314-.947-1.783-2.11-1.783C1.355 5.736.75 6.42.69 7.27h1.216c.064-.323.313-.552.84-.552s.864.249.864.771v.464H2.346C1.145 7.953.5 8.568.5 9.496c0 .977.693 1.582 1.704 1.582m.42-.947c-.44 0-.845-.235-.845-.718 0-.395.269-.684.84-.684h.991v.538c0 .503-.444.864-.986.864m8.897.567c-.577-.4-.9-1.088-.9-1.983v-.65c0-1.42.894-2.338 2.305-2.338 1.352 0 2.119.82 2.139 1.806h-1.187c-.04-.351-.283-.776-.918-.776-.674 0-1.045.517-1.045 1.328v.625c0 .468.121.834.343 1.067z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M14.469 9.414a.75.75 0 0 1 .117 1.055l-4 5a.75.75 0 0 1-1.116.061l-2.5-2.5a.75.75 0 1 1 1.06-1.06l1.908 1.907 3.476-4.346a.75.75 0 0 1 1.055-.117\"},\"child\":[]}]})(props);\n};\nexport function BsSpotify (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 0a8 8 0 1 0 0 16A8 8 0 0 0 8 0m3.669 11.538a.5.5 0 0 1-.686.165c-1.879-1.147-4.243-1.407-7.028-.77a.499.499 0 0 1-.222-.973c3.048-.696 5.662-.397 7.77.892a.5.5 0 0 1 .166.686m.979-2.178a.624.624 0 0 1-.858.205c-2.15-1.321-5.428-1.704-7.972-.932a.625.625 0 0 1-.362-1.194c2.905-.881 6.517-.454 8.986 1.063a.624.624 0 0 1 .206.858m.084-2.268C10.154 5.56 5.9 5.419 3.438 6.166a.748.748 0 1 1-.434-1.432c2.825-.857 7.523-.692 10.492 1.07a.747.747 0 1 1-.764 1.288\"},\"child\":[]}]})(props);\n};\nexport function BsSquareFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 2a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2z\"},\"child\":[]}]})(props);\n};\nexport function BsSquareHalf (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 15V1h6a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1zm6 1a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2z\"},\"child\":[]}]})(props);\n};\nexport function BsSquare (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M14 1a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1zM2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2z\"},\"child\":[]}]})(props);\n};\nexport function BsStackOverflow (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12.412 14.572V10.29h1.428V16H1v-5.71h1.428v4.282z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3.857 13.145h7.137v-1.428H3.857zM10.254 0 9.108.852l4.26 5.727 1.146-.852zm-3.54 3.377 5.484 4.567.913-1.097L7.627 2.28l-.914 1.097zM4.922 6.55l6.47 3.013.603-1.294-6.47-3.013zm-.925 3.344 6.985 1.469.294-1.398-6.985-1.468z\"},\"child\":[]}]})(props);\n};\nexport function BsStack (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m14.12 10.163 1.715.858c.22.11.22.424 0 .534L8.267 15.34a.6.6 0 0 1-.534 0L.165 11.555a.299.299 0 0 1 0-.534l1.716-.858 5.317 2.659c.505.252 1.1.252 1.604 0l5.317-2.66zM7.733.063a.6.6 0 0 1 .534 0l7.568 3.784a.3.3 0 0 1 0 .535L8.267 8.165a.6.6 0 0 1-.534 0L.165 4.382a.299.299 0 0 1 0-.535z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m14.12 6.576 1.715.858c.22.11.22.424 0 .534l-7.568 3.784a.6.6 0 0 1-.534 0L.165 7.968a.299.299 0 0 1 0-.534l1.716-.858 5.317 2.659c.505.252 1.1.252 1.604 0z\"},\"child\":[]}]})(props);\n};\nexport function BsStarFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3.612 15.443c-.386.198-.824-.149-.746-.592l.83-4.73L.173 6.765c-.329-.314-.158-.888.283-.95l4.898-.696L7.538.792c.197-.39.73-.39.927 0l2.184 4.327 4.898.696c.441.062.612.636.282.95l-3.522 3.356.83 4.73c.078.443-.36.79-.746.592L8 13.187l-4.389 2.256z\"},\"child\":[]}]})(props);\n};\nexport function BsStarHalf (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5.354 5.119 7.538.792A.52.52 0 0 1 8 .5c.183 0 .366.097.465.292l2.184 4.327 4.898.696A.54.54 0 0 1 16 6.32a.55.55 0 0 1-.17.445l-3.523 3.356.83 4.73c.078.443-.36.79-.746.592L8 13.187l-4.389 2.256a.5.5 0 0 1-.146.05c-.342.06-.668-.254-.6-.642l.83-4.73L.173 6.765a.55.55 0 0 1-.172-.403.6.6 0 0 1 .085-.302.51.51 0 0 1 .37-.245zM8 12.027a.5.5 0 0 1 .232.056l3.686 1.894-.694-3.957a.56.56 0 0 1 .162-.505l2.907-2.77-4.052-.576a.53.53 0 0 1-.393-.288L8.001 2.223 8 2.226z\"},\"child\":[]}]})(props);\n};\nexport function BsStar (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2.866 14.85c-.078.444.36.791.746.593l4.39-2.256 4.389 2.256c.386.198.824-.149.746-.592l-.83-4.73 3.522-3.356c.33-.314.16-.888-.282-.95l-4.898-.696L8.465.792a.513.513 0 0 0-.927 0L5.354 5.12l-4.898.696c-.441.062-.612.636-.283.95l3.523 3.356-.83 4.73zm4.905-2.767-3.686 1.894.694-3.957a.56.56 0 0 0-.163-.505L1.71 6.745l4.052-.576a.53.53 0 0 0 .393-.288L8 2.223l1.847 3.658a.53.53 0 0 0 .393.288l4.052.575-2.906 2.77a.56.56 0 0 0-.163.506l.694 3.957-3.686-1.894a.5.5 0 0 0-.461 0z\"},\"child\":[]}]})(props);\n};\nexport function BsStars (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.657 6.247c.11-.33.576-.33.686 0l.645 1.937a2.89 2.89 0 0 0 1.829 1.828l1.936.645c.33.11.33.576 0 .686l-1.937.645a2.89 2.89 0 0 0-1.828 1.829l-.645 1.936a.361.361 0 0 1-.686 0l-.645-1.937a2.89 2.89 0 0 0-1.828-1.828l-1.937-.645a.361.361 0 0 1 0-.686l1.937-.645a2.89 2.89 0 0 0 1.828-1.828zM3.794 1.148a.217.217 0 0 1 .412 0l.387 1.162c.173.518.579.924 1.097 1.097l1.162.387a.217.217 0 0 1 0 .412l-1.162.387A1.73 1.73 0 0 0 4.593 5.69l-.387 1.162a.217.217 0 0 1-.412 0L3.407 5.69A1.73 1.73 0 0 0 2.31 4.593l-1.162-.387a.217.217 0 0 1 0-.412l1.162-.387A1.73 1.73 0 0 0 3.407 2.31zM10.863.099a.145.145 0 0 1 .274 0l.258.774c.115.346.386.617.732.732l.774.258a.145.145 0 0 1 0 .274l-.774.258a1.16 1.16 0 0 0-.732.732l-.258.774a.145.145 0 0 1-.274 0l-.258-.774a1.16 1.16 0 0 0-.732-.732L9.1 2.137a.145.145 0 0 1 0-.274l.774-.258c.346-.115.617-.386.732-.732z\"},\"child\":[]}]})(props);\n};\nexport function BsSteam (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M.329 10.333A8.01 8.01 0 0 0 7.99 16C12.414 16 16 12.418 16 8s-3.586-8-8.009-8A8.006 8.006 0 0 0 0 7.468l.003.006 4.304 1.769A2.2 2.2 0 0 1 5.62 8.88l1.96-2.844-.001-.04a3.046 3.046 0 0 1 3.042-3.043 3.046 3.046 0 0 1 3.042 3.043 3.047 3.047 0 0 1-3.111 3.044l-2.804 2a2.223 2.223 0 0 1-3.075 2.11 2.22 2.22 0 0 1-1.312-1.568L.33 10.333Z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4.868 12.683a1.715 1.715 0 0 0 1.318-3.165 1.7 1.7 0 0 0-1.263-.02l1.023.424a1.261 1.261 0 1 1-.97 2.33l-.99-.41a1.7 1.7 0 0 0 .882.84Zm3.726-6.687a2.03 2.03 0 0 0 2.027 2.029 2.03 2.03 0 0 0 2.027-2.029 2.03 2.03 0 0 0-2.027-2.027 2.03 2.03 0 0 0-2.027 2.027m2.03-1.527a1.524 1.524 0 1 1-.002 3.048 1.524 1.524 0 0 1 .002-3.048\"},\"child\":[]}]})(props);\n};\nexport function BsStickiesFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 1.5V13a1 1 0 0 0 1 1V1.5a.5.5 0 0 1 .5-.5H14a1 1 0 0 0-1-1H1.5A1.5 1.5 0 0 0 0 1.5\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3.5 2A1.5 1.5 0 0 0 2 3.5v11A1.5 1.5 0 0 0 3.5 16h6.086a1.5 1.5 0 0 0 1.06-.44l4.915-4.914A1.5 1.5 0 0 0 16 9.586V3.5A1.5 1.5 0 0 0 14.5 2zm6 8.5a1 1 0 0 1 1-1h4.396a.25.25 0 0 1 .177.427l-5.146 5.146a.25.25 0 0 1-.427-.177z\"},\"child\":[]}]})(props);\n};\nexport function BsStickies (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M1.5 0A1.5 1.5 0 0 0 0 1.5V13a1 1 0 0 0 1 1V1.5a.5.5 0 0 1 .5-.5H14a1 1 0 0 0-1-1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3.5 2A1.5 1.5 0 0 0 2 3.5v11A1.5 1.5 0 0 0 3.5 16h6.086a1.5 1.5 0 0 0 1.06-.44l4.915-4.914A1.5 1.5 0 0 0 16 9.586V3.5A1.5 1.5 0 0 0 14.5 2zM3 3.5a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 .5.5V9h-4.5A1.5 1.5 0 0 0 9 10.5V15H3.5a.5.5 0 0 1-.5-.5zm7 11.293V10.5a.5.5 0 0 1 .5-.5h4.293z\"},\"child\":[]}]})(props);\n};\nexport function BsStickyFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2.5 1A1.5 1.5 0 0 0 1 2.5v11A1.5 1.5 0 0 0 2.5 15h6.086a1.5 1.5 0 0 0 1.06-.44l4.915-4.914A1.5 1.5 0 0 0 15 8.586V2.5A1.5 1.5 0 0 0 13.5 1zm6 8.5a1 1 0 0 1 1-1h4.396a.25.25 0 0 1 .177.427l-5.146 5.146a.25.25 0 0 1-.427-.177z\"},\"child\":[]}]})(props);\n};\nexport function BsSticky (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2.5 1A1.5 1.5 0 0 0 1 2.5v11A1.5 1.5 0 0 0 2.5 15h6.086a1.5 1.5 0 0 0 1.06-.44l4.915-4.914A1.5 1.5 0 0 0 15 8.586V2.5A1.5 1.5 0 0 0 13.5 1zM2 2.5a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 .5.5V8H9.5A1.5 1.5 0 0 0 8 9.5V14H2.5a.5.5 0 0 1-.5-.5zm7 11.293V9.5a.5.5 0 0 1 .5-.5h4.293z\"},\"child\":[]}]})(props);\n};\nexport function BsStopBtnFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 12V4a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2m6.5-7A1.5 1.5 0 0 0 5 6.5v3A1.5 1.5 0 0 0 6.5 11h3A1.5 1.5 0 0 0 11 9.5v-3A1.5 1.5 0 0 0 9.5 5z\"},\"child\":[]}]})(props);\n};\nexport function BsStopBtn (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.5 5A1.5 1.5 0 0 0 5 6.5v3A1.5 1.5 0 0 0 6.5 11h3A1.5 1.5 0 0 0 11 9.5v-3A1.5 1.5 0 0 0 9.5 5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M0 4a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm15 0a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1v8a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsStopCircleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0M6.5 5A1.5 1.5 0 0 0 5 6.5v3A1.5 1.5 0 0 0 6.5 11h3A1.5 1.5 0 0 0 11 9.5v-3A1.5 1.5 0 0 0 9.5 5z\"},\"child\":[]}]})(props);\n};\nexport function BsStopCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14m0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M5 6.5A1.5 1.5 0 0 1 6.5 5h3A1.5 1.5 0 0 1 11 6.5v3A1.5 1.5 0 0 1 9.5 11h-3A1.5 1.5 0 0 1 5 9.5z\"},\"child\":[]}]})(props);\n};\nexport function BsStopFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5 3.5h6A1.5 1.5 0 0 1 12.5 5v6a1.5 1.5 0 0 1-1.5 1.5H5A1.5 1.5 0 0 1 3.5 11V5A1.5 1.5 0 0 1 5 3.5\"},\"child\":[]}]})(props);\n};\nexport function BsStop (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3.5 5A1.5 1.5 0 0 1 5 3.5h6A1.5 1.5 0 0 1 12.5 5v6a1.5 1.5 0 0 1-1.5 1.5H5A1.5 1.5 0 0 1 3.5 11zM5 4.5a.5.5 0 0 0-.5.5v6a.5.5 0 0 0 .5.5h6a.5.5 0 0 0 .5-.5V5a.5.5 0 0 0-.5-.5z\"},\"child\":[]}]})(props);\n};\nexport function BsStoplightsFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M6 0a2 2 0 0 0-2 2H2c.167.5.8 1.6 2 2v2H2c.167.5.8 1.6 2 2v2H2c.167.5.8 1.6 2 2v1a2 2 0 0 0 2 2h4a2 2 0 0 0 2-2v-1c1.2-.4 1.833-1.5 2-2h-2V8c1.2-.4 1.833-1.5 2-2h-2V4c1.2-.4 1.833-1.5 2-2h-2a2 2 0 0 0-2-2zm3.5 3.5a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0m0 4a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0M8 13a1.5 1.5 0 1 1 0-3 1.5 1.5 0 0 1 0 3\"},\"child\":[]}]})(props);\n};\nexport function BsStoplights (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 5a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3m0 4a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3m1.5 2.5a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4 2a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2h2c-.167.5-.8 1.6-2 2v2h2c-.167.5-.8 1.6-2 2v2h2c-.167.5-.8 1.6-2 2v1a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2v-1c-1.2-.4-1.833-1.5-2-2h2V8c-1.2-.4-1.833-1.5-2-2h2V4c-1.2-.4-1.833-1.5-2-2zm2-1a1 1 0 0 0-1 1v11a1 1 0 0 0 1 1h4a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsStopwatchFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.5 0a.5.5 0 0 0 0 1H7v1.07A7.001 7.001 0 0 0 8 16a7 7 0 0 0 5.29-11.584l.013-.012.354-.354.353.354a.5.5 0 1 0 .707-.707l-1.414-1.415a.5.5 0 1 0-.707.707l.354.354-.354.354-.012.012A6.97 6.97 0 0 0 9 2.071V1h.5a.5.5 0 0 0 0-1zm2 5.6V9a.5.5 0 0 1-.5.5H4.5a.5.5 0 0 1 0-1h3V5.6a.5.5 0 1 1 1 0\"},\"child\":[]}]})(props);\n};\nexport function BsStopwatch (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.5 5.6a.5.5 0 1 0-1 0v2.9h-3a.5.5 0 0 0 0 1H8a.5.5 0 0 0 .5-.5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M6.5 1A.5.5 0 0 1 7 .5h2a.5.5 0 0 1 0 1v.57c1.36.196 2.594.78 3.584 1.64l.012-.013.354-.354-.354-.353a.5.5 0 0 1 .707-.708l1.414 1.415a.5.5 0 1 1-.707.707l-.353-.354-.354.354-.013.012A7 7 0 1 1 7 2.071V1.5a.5.5 0 0 1-.5-.5M8 3a6 6 0 1 0 .001 12A6 6 0 0 0 8 3\"},\"child\":[]}]})(props);\n};\nexport function BsStrava (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.731 0 2 9.125h2.788L6.73 5.497l1.93 3.628h2.766zm4.694 9.125-1.372 2.756L8.66 9.125H6.547L10.053 16l3.484-6.875z\"},\"child\":[]}]})(props);\n};\nexport function BsStripe (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm6.226 5.385c-.584 0-.937.164-.937.593 0 .468.607.674 1.36.93 1.228.415 2.844.963 2.851 2.993C11.5 11.868 9.924 13 7.63 13a7.7 7.7 0 0 1-3.009-.626V9.758c.926.506 2.095.88 3.01.88.617 0 1.058-.165 1.058-.671 0-.518-.658-.755-1.453-1.041C6.026 8.49 4.5 7.94 4.5 6.11 4.5 4.165 5.988 3 8.226 3a7.3 7.3 0 0 1 2.734.505v2.583c-.838-.45-1.896-.703-2.734-.703\"},\"child\":[]}]})(props);\n};\nexport function BsSubscript (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m3.266 12.496.96-2.853H7.76l.96 2.853H10L6.62 3H5.38L2 12.496zm2.748-8.063 1.419 4.23h-2.88l1.426-4.23zm6.132 7.203v-.075c0-.332.234-.618.619-.618.354 0 .618.256.618.58 0 .362-.271.649-.52.898l-1.788 1.832V15h3.59v-.958h-1.923v-.045l.973-1.04c.415-.438.867-.845.867-1.547 0-.8-.701-1.41-1.787-1.41-1.23 0-1.795.8-1.795 1.576v.06z\"},\"child\":[]}]})(props);\n};\nexport function BsSubstack (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M15 3.604H1v1.891h14v-1.89ZM1 7.208V16l7-3.926L15 16V7.208zM15 0H1v1.89h14z\"},\"child\":[]}]})(props);\n};\nexport function BsSubtract (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 2a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v2h2a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2v-2H2a2 2 0 0 1-2-2zm2-1a1 1 0 0 0-1 1v8a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsSuitClubFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M11.5 12.5a3.5 3.5 0 0 1-2.684-1.254 20 20 0 0 0 1.582 2.907c.231.35-.02.847-.438.847H6.04c-.419 0-.67-.497-.438-.847a20 20 0 0 0 1.582-2.907 3.5 3.5 0 1 1-2.538-5.743 3.5 3.5 0 1 1 6.708 0A3.5 3.5 0 1 1 11.5 12.5\"},\"child\":[]}]})(props);\n};\nexport function BsSuitClub (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 1a3.25 3.25 0 0 0-3.25 3.25c0 .186 0 .29.016.41.014.12.045.27.12.527l.19.665-.692-.028a3.25 3.25 0 1 0 2.357 5.334.5.5 0 0 1 .844.518l-.003.005-.006.015-.024.055a22 22 0 0 1-.438.92 22 22 0 0 1-1.266 2.197c-.013.018-.02.05.001.09q.016.029.03.036A.04.04 0 0 0 5.9 15h4.2q.014 0 .022-.006a.1.1 0 0 0 .029-.035c.02-.04.014-.073.001-.091a23 23 0 0 1-1.704-3.117l-.024-.054-.006-.015-.002-.004a.5.5 0 0 1 .838-.524c.601.7 1.516 1.168 2.496 1.168a3.25 3.25 0 1 0-.139-6.498l-.699.03.199-.671c.14-.47.14-.745.139-.927V4.25A3.25 3.25 0 0 0 8 1m2.207 12.024c.225.405.487.848.78 1.294C11.437 15 10.975 16 10.1 16H5.9c-.876 0-1.338-1-.887-1.683.291-.442.552-.88.776-1.283a4.25 4.25 0 1 1-2.007-8.187l-.009-.064c-.023-.187-.023-.348-.023-.52V4.25a4.25 4.25 0 0 1 8.5 0c0 .14 0 .333-.04.596a4.25 4.25 0 0 1-.46 8.476 4.2 4.2 0 0 1-1.543-.298\"},\"child\":[]}]})(props);\n};\nexport function BsSuitDiamondFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2.45 7.4 7.2 1.067a1 1 0 0 1 1.6 0L13.55 7.4a1 1 0 0 1 0 1.2L8.8 14.933a1 1 0 0 1-1.6 0L2.45 8.6a1 1 0 0 1 0-1.2\"},\"child\":[]}]})(props);\n};\nexport function BsSuitDiamond (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.384 1.226a.463.463 0 0 0-.768 0l-4.56 6.468a.54.54 0 0 0 0 .612l4.56 6.469a.463.463 0 0 0 .768 0l4.56-6.469a.54.54 0 0 0 0-.612zM6.848.613a1.39 1.39 0 0 1 2.304 0l4.56 6.468a1.61 1.61 0 0 1 0 1.838l-4.56 6.468a1.39 1.39 0 0 1-2.304 0L2.288 8.92a1.61 1.61 0 0 1 0-1.838z\"},\"child\":[]}]})(props);\n};\nexport function BsSuitHeartFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4 1c2.21 0 4 1.755 4 3.92C8 2.755 9.79 1 12 1s4 1.755 4 3.92c0 3.263-3.234 4.414-7.608 9.608a.513.513 0 0 1-.784 0C3.234 9.334 0 8.183 0 4.92 0 2.755 1.79 1 4 1\"},\"child\":[]}]})(props);\n};\nexport function BsSuitHeart (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m8 6.236-.894-1.789c-.222-.443-.607-1.08-1.152-1.595C5.418 2.345 4.776 2 4 2 2.324 2 1 3.326 1 4.92c0 1.211.554 2.066 1.868 3.37.337.334.721.695 1.146 1.093C5.122 10.423 6.5 11.717 8 13.447c1.5-1.73 2.878-3.024 3.986-4.064.425-.398.81-.76 1.146-1.093C14.446 6.986 15 6.131 15 4.92 15 3.326 13.676 2 12 2c-.777 0-1.418.345-1.954.852-.545.515-.93 1.152-1.152 1.595zm.392 8.292a.513.513 0 0 1-.784 0c-1.601-1.902-3.05-3.262-4.243-4.381C1.3 8.208 0 6.989 0 4.92 0 2.755 1.79 1 4 1c1.6 0 2.719 1.05 3.404 2.008.26.365.458.716.596.992a7.6 7.6 0 0 1 .596-.992C9.281 2.049 10.4 1 12 1c2.21 0 4 1.755 4 3.92 0 2.069-1.3 3.288-3.365 5.227-1.193 1.12-2.642 2.48-4.243 4.38z\"},\"child\":[]}]})(props);\n};\nexport function BsSuitSpadeFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.184 11.246A3.5 3.5 0 0 1 1 9c0-1.602 1.14-2.633 2.66-4.008C4.986 3.792 6.602 2.33 8 0c1.398 2.33 3.014 3.792 4.34 4.992C13.86 6.367 15 7.398 15 9a3.5 3.5 0 0 1-6.184 2.246 20 20 0 0 0 1.582 2.907c.231.35-.02.847-.438.847H6.04c-.419 0-.67-.497-.438-.847a20 20 0 0 0 1.582-2.907\"},\"child\":[]}]})(props);\n};\nexport function BsSuitSpade (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 0a.5.5 0 0 1 .429.243c1.359 2.265 2.925 3.682 4.25 4.882q.144.128.282.255C14.308 6.604 15.5 7.747 15.5 9.5a4 4 0 0 1-5.406 3.746c.235.39.491.782.722 1.131.434.659-.01 1.623-.856 1.623H6.04c-.845 0-1.29-.964-.856-1.623.263-.397.51-.777.728-1.134A4 4 0 0 1 .5 9.5c0-1.753 1.192-2.896 2.539-4.12l.281-.255c1.326-1.2 2.892-2.617 4.251-4.882A.5.5 0 0 1 8 0M3.711 6.12C2.308 7.396 1.5 8.253 1.5 9.5a3 3 0 0 0 5.275 1.956.5.5 0 0 1 .868.43c-.094.438-.33.932-.611 1.428a29 29 0 0 1-1.013 1.614.03.03 0 0 0-.005.018.07.07 0 0 0 .024.054h3.924a.07.07 0 0 0 .024-.054.03.03 0 0 0-.005-.018c-.3-.455-.658-1.005-.96-1.535-.294-.514-.57-1.064-.664-1.507a.5.5 0 0 1 .868-.43A3 3 0 0 0 14.5 9.5c0-1.247-.808-2.104-2.211-3.38L12 5.86c-1.196-1.084-2.668-2.416-4-4.424-1.332 2.008-2.804 3.34-4 4.422l-.289.261z\"},\"child\":[]}]})(props);\n};\nexport function BsSuitcaseFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6 .5a.5.5 0 0 1 .5-.5h3a.5.5 0 0 1 .5.5V3h1.5A1.5 1.5 0 0 1 13 4.5v9a1.5 1.5 0 0 1-1.004 1.416A1 1 0 1 1 10 15H6a1 1 0 1 1-1.997-.084A1.5 1.5 0 0 1 3 13.5v-9A1.5 1.5 0 0 1 4.5 3H6zM9 1H7v2h2zM6 5.5a.5.5 0 0 0-1 0v7a.5.5 0 0 0 1 0zm2.5 0a.5.5 0 0 0-1 0v7a.5.5 0 0 0 1 0zm2.5 0a.5.5 0 0 0-1 0v7a.5.5 0 0 0 1 0z\"},\"child\":[]}]})(props);\n};\nexport function BsSuitcaseLgFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7 0a2 2 0 0 0-2 2H1.5A1.5 1.5 0 0 0 0 3.5v9A1.5 1.5 0 0 0 1.5 14H2a.5.5 0 0 0 1 0h10a.5.5 0 0 0 1 0h.5a1.5 1.5 0 0 0 1.5-1.5v-9A1.5 1.5 0 0 0 14.5 2H11a2 2 0 0 0-2-2zM6 2a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1zM3 13V3h1v10zm9 0V3h1v10z\"},\"child\":[]}]})(props);\n};\nexport function BsSuitcaseLg (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5 2a2 2 0 0 1 2-2h2a2 2 0 0 1 2 2h3.5A1.5 1.5 0 0 1 16 3.5v9a1.5 1.5 0 0 1-1.5 1.5H14a.5.5 0 0 1-1 0H3a.5.5 0 0 1-1 0h-.5A1.5 1.5 0 0 1 0 12.5v-9A1.5 1.5 0 0 1 1.5 2zm1 0h4a1 1 0 0 0-1-1H7a1 1 0 0 0-1 1M1.5 3a.5.5 0 0 0-.5.5v9a.5.5 0 0 0 .5.5H3V3zM15 12.5v-9a.5.5 0 0 0-.5-.5H13v10h1.5a.5.5 0 0 0 .5-.5m-3 .5V3H4v10z\"},\"child\":[]}]})(props);\n};\nexport function BsSuitcase (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6 5a.5.5 0 0 1 .5.5v7a.5.5 0 0 1-1 0v-7A.5.5 0 0 1 6 5m2 0a.5.5 0 0 1 .5.5v7a.5.5 0 0 1-1 0v-7A.5.5 0 0 1 8 5m2 0a.5.5 0 0 1 .5.5v7a.5.5 0 0 1-1 0v-7A.5.5 0 0 1 10 5\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M6.5 0a.5.5 0 0 0-.5.5V3H5a2 2 0 0 0-2 2v8a2 2 0 0 0 1.031 1.75A1.003 1.003 0 0 0 5 16a1 1 0 0 0 1-1h4a1 1 0 1 0 1.969-.25A2 2 0 0 0 13 13V5a2 2 0 0 0-2-2h-1V.5a.5.5 0 0 0-.5-.5zM9 3H7V1h2zm3 10a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1V5a1 1 0 0 1 1-1h6a1 1 0 0 1 1 1z\"},\"child\":[]}]})(props);\n};\nexport function BsSuitcase2Fill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.5 0a.5.5 0 0 0-.5.5V3H4.5A1.5 1.5 0 0 0 3 4.5v9a1.5 1.5 0 0 0 1.003 1.416A1 1 0 1 0 6 15h4a1 1 0 1 0 1.996-.084A1.5 1.5 0 0 0 13 13.5v-9A1.5 1.5 0 0 0 11.5 3H10V.5a.5.5 0 0 0-.5-.5zM9 3H7V1h2zM4 7V6h8v1z\"},\"child\":[]}]})(props);\n};\nexport function BsSuitcase2 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.5 0a.5.5 0 0 0-.5.5V3H5a2 2 0 0 0-2 2v8a2 2 0 0 0 1.031 1.75A1.003 1.003 0 0 0 5 16a1 1 0 0 0 1-1h4a1 1 0 1 0 1.969-.25A2 2 0 0 0 13 13V5a2 2 0 0 0-2-2h-1V.5a.5.5 0 0 0-.5-.5zM9 3H7V1h2zm3 10a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1V7h8zM5 4h6a1 1 0 0 1 1 1v1H4V5a1 1 0 0 1 1-1\"},\"child\":[]}]})(props);\n};\nexport function BsSunFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 12a4 4 0 1 0 0-8 4 4 0 0 0 0 8M8 0a.5.5 0 0 1 .5.5v2a.5.5 0 0 1-1 0v-2A.5.5 0 0 1 8 0m0 13a.5.5 0 0 1 .5.5v2a.5.5 0 0 1-1 0v-2A.5.5 0 0 1 8 13m8-5a.5.5 0 0 1-.5.5h-2a.5.5 0 0 1 0-1h2a.5.5 0 0 1 .5.5M3 8a.5.5 0 0 1-.5.5h-2a.5.5 0 0 1 0-1h2A.5.5 0 0 1 3 8m10.657-5.657a.5.5 0 0 1 0 .707l-1.414 1.415a.5.5 0 1 1-.707-.708l1.414-1.414a.5.5 0 0 1 .707 0m-9.193 9.193a.5.5 0 0 1 0 .707L3.05 13.657a.5.5 0 0 1-.707-.707l1.414-1.414a.5.5 0 0 1 .707 0m9.193 2.121a.5.5 0 0 1-.707 0l-1.414-1.414a.5.5 0 0 1 .707-.707l1.414 1.414a.5.5 0 0 1 0 .707M4.464 4.465a.5.5 0 0 1-.707 0L2.343 3.05a.5.5 0 1 1 .707-.707l1.414 1.414a.5.5 0 0 1 0 .708\"},\"child\":[]}]})(props);\n};\nexport function BsSun (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 11a3 3 0 1 1 0-6 3 3 0 0 1 0 6m0 1a4 4 0 1 0 0-8 4 4 0 0 0 0 8M8 0a.5.5 0 0 1 .5.5v2a.5.5 0 0 1-1 0v-2A.5.5 0 0 1 8 0m0 13a.5.5 0 0 1 .5.5v2a.5.5 0 0 1-1 0v-2A.5.5 0 0 1 8 13m8-5a.5.5 0 0 1-.5.5h-2a.5.5 0 0 1 0-1h2a.5.5 0 0 1 .5.5M3 8a.5.5 0 0 1-.5.5h-2a.5.5 0 0 1 0-1h2A.5.5 0 0 1 3 8m10.657-5.657a.5.5 0 0 1 0 .707l-1.414 1.415a.5.5 0 1 1-.707-.708l1.414-1.414a.5.5 0 0 1 .707 0m-9.193 9.193a.5.5 0 0 1 0 .707L3.05 13.657a.5.5 0 0 1-.707-.707l1.414-1.414a.5.5 0 0 1 .707 0m9.193 2.121a.5.5 0 0 1-.707 0l-1.414-1.414a.5.5 0 0 1 .707-.707l1.414 1.414a.5.5 0 0 1 0 .707M4.464 4.465a.5.5 0 0 1-.707 0L2.343 3.05a.5.5 0 1 1 .707-.707l1.414 1.414a.5.5 0 0 1 0 .708\"},\"child\":[]}]})(props);\n};\nexport function BsSunglasses (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3 5a2 2 0 0 0-2 2v.5H.5a.5.5 0 0 0 0 1H1V9a2 2 0 0 0 2 2h1a3 3 0 0 0 3-3 1 1 0 1 1 2 0 3 3 0 0 0 3 3h1a2 2 0 0 0 2-2v-.5h.5a.5.5 0 0 0 0-1H15V7a2 2 0 0 0-2-2h-2a2 2 0 0 0-1.888 1.338A2 2 0 0 0 8 6a2 2 0 0 0-1.112.338A2 2 0 0 0 5 5zm0 1h.941c.264 0 .348.356.112.474l-.457.228a2 2 0 0 0-.894.894l-.228.457C2.356 8.289 2 8.205 2 7.94V7a1 1 0 0 1 1-1\"},\"child\":[]}]})(props);\n};\nexport function BsSunriseFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.646 1.146a.5.5 0 0 1 .708 0l1.5 1.5a.5.5 0 0 1-.708.708L8.5 2.707V4.5a.5.5 0 0 1-1 0V2.707l-.646.647a.5.5 0 1 1-.708-.708zM2.343 4.343a.5.5 0 0 1 .707 0l1.414 1.414a.5.5 0 0 1-.707.707L2.343 5.05a.5.5 0 0 1 0-.707m11.314 0a.5.5 0 0 1 0 .707l-1.414 1.414a.5.5 0 1 1-.707-.707l1.414-1.414a.5.5 0 0 1 .707 0M11.709 11.5a4 4 0 1 0-7.418 0H.5a.5.5 0 0 0 0 1h15a.5.5 0 0 0 0-1h-3.79zM0 10a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1h-2A.5.5 0 0 1 0 10m13 0a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsSunrise (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.646 1.146a.5.5 0 0 1 .708 0l1.5 1.5a.5.5 0 0 1-.708.708L8.5 2.707V4.5a.5.5 0 0 1-1 0V2.707l-.646.647a.5.5 0 1 1-.708-.708zM2.343 4.343a.5.5 0 0 1 .707 0l1.414 1.414a.5.5 0 0 1-.707.707L2.343 5.05a.5.5 0 0 1 0-.707m11.314 0a.5.5 0 0 1 0 .707l-1.414 1.414a.5.5 0 1 1-.707-.707l1.414-1.414a.5.5 0 0 1 .707 0M8 7a3 3 0 0 1 2.599 4.5H5.4A3 3 0 0 1 8 7m3.71 4.5a4 4 0 1 0-7.418 0H.499a.5.5 0 0 0 0 1h15a.5.5 0 0 0 0-1h-3.79zM0 10a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1h-2A.5.5 0 0 1 0 10m13 0a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsSunsetFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.646 4.854a.5.5 0 0 0 .708 0l1.5-1.5a.5.5 0 0 0-.708-.708l-.646.647V1.5a.5.5 0 0 0-1 0v1.793l-.646-.647a.5.5 0 1 0-.708.708zm-5.303-.51a.5.5 0 0 1 .707 0l1.414 1.413a.5.5 0 0 1-.707.707L2.343 5.05a.5.5 0 0 1 0-.707zm11.314 0a.5.5 0 0 1 0 .706l-1.414 1.414a.5.5 0 1 1-.707-.707l1.414-1.414a.5.5 0 0 1 .707 0zM11.709 11.5a4 4 0 1 0-7.418 0H.5a.5.5 0 0 0 0 1h15a.5.5 0 0 0 0-1h-3.79zM0 10a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1h-2A.5.5 0 0 1 0 10m13 0a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsSunset (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.646 4.854a.5.5 0 0 0 .708 0l1.5-1.5a.5.5 0 0 0-.708-.708l-.646.647V1.5a.5.5 0 0 0-1 0v1.793l-.646-.647a.5.5 0 1 0-.708.708zm-5.303-.51a.5.5 0 0 1 .707 0l1.414 1.413a.5.5 0 0 1-.707.707L2.343 5.05a.5.5 0 0 1 0-.707zm11.314 0a.5.5 0 0 1 0 .706l-1.414 1.414a.5.5 0 1 1-.707-.707l1.414-1.414a.5.5 0 0 1 .707 0zM8 7a3 3 0 0 1 2.599 4.5H5.4A3 3 0 0 1 8 7m3.71 4.5a4 4 0 1 0-7.418 0H.499a.5.5 0 0 0 0 1h15a.5.5 0 0 0 0-1h-3.79zM0 10a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1h-2A.5.5 0 0 1 0 10m13 0a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsSuperscript (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m4.266 12.496.96-2.853H8.76l.96 2.853H11L7.62 3H6.38L3 12.496zm2.748-8.063 1.419 4.23h-2.88l1.426-4.23zm5.132-1.797v-.075c0-.332.234-.618.619-.618.354 0 .618.256.618.58 0 .362-.271.649-.52.898l-1.788 1.832V6h3.59v-.958h-1.923v-.045l.973-1.04c.415-.438.867-.845.867-1.547 0-.8-.701-1.41-1.787-1.41C11.565 1 11 1.8 11 2.576v.06z\"},\"child\":[]}]})(props);\n};\nexport function BsSymmetryHorizontal (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M13.5 7a.5.5 0 0 0 .24-.939l-11-6A.5.5 0 0 0 2 .5v6a.5.5 0 0 0 .5.5zm.485 2.376a.5.5 0 0 1-.246.563l-11 6A.5.5 0 0 1 2 15.5v-6a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 .485.376M11.539 10H3v4.658z\"},\"child\":[]}]})(props);\n};\nexport function BsSymmetryVertical (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7 2.5a.5.5 0 0 0-.939-.24l-6 11A.5.5 0 0 0 .5 14h6a.5.5 0 0 0 .5-.5zm2.376-.484a.5.5 0 0 1 .563.245l6 11A.5.5 0 0 1 15.5 14h-6a.5.5 0 0 1-.5-.5v-11a.5.5 0 0 1 .376-.484M10 4.46V13h4.658z\"},\"child\":[]}]})(props);\n};\nexport function BsTable (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 2a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm15 2h-4v3h4zm0 4h-4v3h4zm0 4h-4v3h3a1 1 0 0 0 1-1zm-5 3v-3H6v3zm-5 0v-3H1v2a1 1 0 0 0 1 1zm-4-4h4V8H1zm0-4h4V4H1zm5-3v3h4V4zm4 4H6v3h4z\"},\"child\":[]}]})(props);\n};\nexport function BsTabletFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 2a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2zm7 11a1 1 0 1 0-2 0 1 1 0 0 0 2 0\"},\"child\":[]}]})(props);\n};\nexport function BsTabletLandscapeFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 14a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2zm11-7a1 1 0 1 0 0 2 1 1 0 0 0 0-2\"},\"child\":[]}]})(props);\n};\nexport function BsTabletLandscape (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M1 4a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1v8a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1zm-1 8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2H2a2 2 0 0 0-2 2z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M14 8a1 1 0 1 0-2 0 1 1 0 0 0 2 0\"},\"child\":[]}]})(props);\n};\nexport function BsTablet (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12 1a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1zM4 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8 14a1 1 0 1 0 0-2 1 1 0 0 0 0 2\"},\"child\":[]}]})(props);\n};\nexport function BsTagFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 1a1 1 0 0 0-1 1v4.586a1 1 0 0 0 .293.707l7 7a1 1 0 0 0 1.414 0l4.586-4.586a1 1 0 0 0 0-1.414l-7-7A1 1 0 0 0 6.586 1zm4 3.5a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0\"},\"child\":[]}]})(props);\n};\nexport function BsTag (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6 4.5a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0m-1 0a.5.5 0 1 0-1 0 .5.5 0 0 0 1 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 1h4.586a1 1 0 0 1 .707.293l7 7a1 1 0 0 1 0 1.414l-4.586 4.586a1 1 0 0 1-1.414 0l-7-7A1 1 0 0 1 1 6.586V2a1 1 0 0 1 1-1m0 5.586 7 7L13.586 9l-7-7H2z\"},\"child\":[]}]})(props);\n};\nexport function BsTagsFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 2a1 1 0 0 1 1-1h4.586a1 1 0 0 1 .707.293l7 7a1 1 0 0 1 0 1.414l-4.586 4.586a1 1 0 0 1-1.414 0l-7-7A1 1 0 0 1 2 6.586zm3.5 4a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M1.293 7.793A1 1 0 0 1 1 7.086V2a1 1 0 0 0-1 1v4.586a1 1 0 0 0 .293.707l7 7a1 1 0 0 0 1.414 0l.043-.043z\"},\"child\":[]}]})(props);\n};\nexport function BsTags (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3 2v4.586l7 7L14.586 9l-7-7zM2 2a1 1 0 0 1 1-1h4.586a1 1 0 0 1 .707.293l7 7a1 1 0 0 1 0 1.414l-4.586 4.586a1 1 0 0 1-1.414 0l-7-7A1 1 0 0 1 2 6.586z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M5.5 5a.5.5 0 1 1 0-1 .5.5 0 0 1 0 1m0 1a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3M1 7.086a1 1 0 0 0 .293.707L8.75 15.25l-.043.043a1 1 0 0 1-1.414 0l-7-7A1 1 0 0 1 0 7.586V3a1 1 0 0 1 1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsTaxiFrontFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6 1a1 1 0 0 0-1 1v1h-.181A2.5 2.5 0 0 0 2.52 4.515l-.792 1.848a.8.8 0 0 1-.38.404c-.5.25-.855.715-.965 1.262L.05 9.708a2.5 2.5 0 0 0-.049.49v.413c0 .814.39 1.543 1 1.997V14.5a.5.5 0 0 0 .5.5h2a.5.5 0 0 0 .5-.5v-1.338c1.292.048 2.745.088 4 .088s2.708-.04 4-.088V14.5a.5.5 0 0 0 .5.5h2a.5.5 0 0 0 .5-.5v-1.892c.61-.454 1-1.183 1-1.997v-.413q0-.248-.049-.49l-.335-1.68a1.8 1.8 0 0 0-.964-1.261.8.8 0 0 1-.381-.404l-.792-1.848A2.5 2.5 0 0 0 11.181 3H11V2a1 1 0 0 0-1-1zM4.309 4h7.382a.5.5 0 0 1 .447.276l.956 1.913a.51.51 0 0 1-.497.731c-.91-.073-3.35-.17-4.597-.17s-3.688.097-4.597.17a.51.51 0 0 1-.497-.731l.956-1.913A.5.5 0 0 1 4.309 4M4 10a1 1 0 1 1-2 0 1 1 0 0 1 2 0m10 0a1 1 0 1 1-2 0 1 1 0 0 1 2 0m-9 0a1 1 0 0 1 1-1h4a1 1 0 1 1 0 2H6a1 1 0 0 1-1-1\"},\"child\":[]}]})(props);\n};\nexport function BsTaxiFront (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4.862 5.276 3.906 7.19a.51.51 0 0 0 .497.731c.91-.073 2.35-.17 3.597-.17s2.688.097 3.597.17a.51.51 0 0 0 .497-.731l-.956-1.913A.5.5 0 0 0 10.691 5H5.309a.5.5 0 0 0-.447.276M4 10a1 1 0 1 1-2 0 1 1 0 0 1 2 0m10 0a1 1 0 1 1-2 0 1 1 0 0 1 2 0m-9 0a1 1 0 0 1 1-1h4a1 1 0 1 1 0 2H6a1 1 0 0 1-1-1\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M6 1a1 1 0 0 0-1 1v1h-.181A2.5 2.5 0 0 0 2.52 4.515l-.792 1.848a.8.8 0 0 1-.38.404c-.5.25-.855.715-.965 1.262L.05 9.708a2.5 2.5 0 0 0-.049.49v.413c0 .814.39 1.543 1 1.997V14.5a.5.5 0 0 0 .5.5h2a.5.5 0 0 0 .5-.5v-1.338c1.292.048 2.745.088 4 .088s2.708-.04 4-.088V14.5a.5.5 0 0 0 .5.5h2a.5.5 0 0 0 .5-.5v-1.892c.61-.454 1-1.183 1-1.997v-.413q0-.248-.049-.49l-.335-1.68a1.8 1.8 0 0 0-.964-1.261.8.8 0 0 1-.381-.404l-.792-1.848A2.5 2.5 0 0 0 11.181 3H11V2a1 1 0 0 0-1-1zM4.819 4h6.362a1.5 1.5 0 0 1 1.379.91l.792 1.847a1.8 1.8 0 0 0 .853.904c.222.112.381.32.43.564l.336 1.679q.03.146.029.294v.413a1.48 1.48 0 0 1-1.408 1.484c-1.555.07-3.786.155-5.592.155s-4.037-.084-5.592-.155A1.48 1.48 0 0 1 1 10.611v-.413q0-.148.03-.294l.335-1.68a.8.8 0 0 1 .43-.563c.383-.19.685-.511.853-.904l.792-1.848A1.5 1.5 0 0 1 4.82 4Z\"},\"child\":[]}]})(props);\n};\nexport function BsTelegram (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0M8.287 5.906q-1.168.486-4.666 2.01-.567.225-.595.442c-.03.243.275.339.69.47l.175.055c.408.133.958.288 1.243.294q.39.01.868-.32 3.269-2.206 3.374-2.23c.05-.012.12-.026.166.016s.042.12.037.141c-.03.129-1.227 1.241-1.846 1.817-.193.18-.33.307-.358.336a8 8 0 0 1-.188.186c-.38.366-.664.64.015 1.088.327.216.589.393.85.571.284.194.568.387.936.629q.14.092.27.187c.331.236.63.448.997.414.214-.02.435-.22.547-.82.265-1.417.786-4.486.906-5.751a1.4 1.4 0 0 0-.013-.315.34.34 0 0 0-.114-.217.53.53 0 0 0-.31-.093c-.3.005-.763.166-2.984 1.09\"},\"child\":[]}]})(props);\n};\nexport function BsTelephoneFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M1.885.511a1.745 1.745 0 0 1 2.61.163L6.29 2.98c.329.423.445.974.315 1.494l-.547 2.19a.68.68 0 0 0 .178.643l2.457 2.457a.68.68 0 0 0 .644.178l2.189-.547a1.75 1.75 0 0 1 1.494.315l2.306 1.794c.829.645.905 1.87.163 2.611l-1.034 1.034c-.74.74-1.846 1.065-2.877.702a18.6 18.6 0 0 1-7.01-4.42 18.6 18.6 0 0 1-4.42-7.009c-.362-1.03-.037-2.137.703-2.877z\"},\"child\":[]}]})(props);\n};\nexport function BsTelephoneForwardFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M1.885.511a1.745 1.745 0 0 1 2.61.163L6.29 2.98c.329.423.445.974.315 1.494l-.547 2.19a.68.68 0 0 0 .178.643l2.457 2.457a.68.68 0 0 0 .644.178l2.189-.547a1.75 1.75 0 0 1 1.494.315l2.306 1.794c.829.645.905 1.87.163 2.611l-1.034 1.034c-.74.74-1.846 1.065-2.877.702a18.6 18.6 0 0 1-7.01-4.42 18.6 18.6 0 0 1-4.42-7.009c-.362-1.03-.037-2.137.703-2.877zm10.761.135a.5.5 0 0 1 .708 0l2.5 2.5a.5.5 0 0 1 0 .708l-2.5 2.5a.5.5 0 0 1-.708-.708L14.293 4H9.5a.5.5 0 0 1 0-1h4.793l-1.647-1.646a.5.5 0 0 1 0-.708\"},\"child\":[]}]})(props);\n};\nexport function BsTelephoneForward (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3.654 1.328a.678.678 0 0 0-1.015-.063L1.605 2.3c-.483.484-.661 1.169-.45 1.77a17.6 17.6 0 0 0 4.168 6.608 17.6 17.6 0 0 0 6.608 4.168c.601.211 1.286.033 1.77-.45l1.034-1.034a.678.678 0 0 0-.063-1.015l-2.307-1.794a.68.68 0 0 0-.58-.122l-2.19.547a1.75 1.75 0 0 1-1.657-.459L5.482 8.062a1.75 1.75 0 0 1-.46-1.657l.548-2.19a.68.68 0 0 0-.122-.58zM1.884.511a1.745 1.745 0 0 1 2.612.163L6.29 2.98c.329.423.445.974.315 1.494l-.547 2.19a.68.68 0 0 0 .178.643l2.457 2.457a.68.68 0 0 0 .644.178l2.189-.547a1.75 1.75 0 0 1 1.494.315l2.306 1.794c.829.645.905 1.87.163 2.611l-1.034 1.034c-.74.74-1.846 1.065-2.877.702a18.6 18.6 0 0 1-7.01-4.42 18.6 18.6 0 0 1-4.42-7.009c-.362-1.03-.037-2.137.703-2.877zm10.762.135a.5.5 0 0 1 .708 0l2.5 2.5a.5.5 0 0 1 0 .708l-2.5 2.5a.5.5 0 0 1-.708-.708L14.293 4H9.5a.5.5 0 0 1 0-1h4.793l-1.647-1.646a.5.5 0 0 1 0-.708\"},\"child\":[]}]})(props);\n};\nexport function BsTelephoneInboundFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M1.885.511a1.745 1.745 0 0 1 2.61.163L6.29 2.98c.329.423.445.974.315 1.494l-.547 2.19a.68.68 0 0 0 .178.643l2.457 2.457a.68.68 0 0 0 .644.178l2.189-.547a1.75 1.75 0 0 1 1.494.315l2.306 1.794c.829.645.905 1.87.163 2.611l-1.034 1.034c-.74.74-1.846 1.065-2.877.702a18.6 18.6 0 0 1-7.01-4.42 18.6 18.6 0 0 1-4.42-7.009c-.362-1.03-.037-2.137.703-2.877zM15.854.146a.5.5 0 0 1 0 .708L11.707 5H14.5a.5.5 0 0 1 0 1h-4a.5.5 0 0 1-.5-.5v-4a.5.5 0 0 1 1 0v2.793L15.146.146a.5.5 0 0 1 .708 0\"},\"child\":[]}]})(props);\n};\nexport function BsTelephoneInbound (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M15.854.146a.5.5 0 0 1 0 .708L11.707 5H14.5a.5.5 0 0 1 0 1h-4a.5.5 0 0 1-.5-.5v-4a.5.5 0 0 1 1 0v2.793L15.146.146a.5.5 0 0 1 .708 0m-12.2 1.182a.678.678 0 0 0-1.015-.063L1.605 2.3c-.483.484-.661 1.169-.45 1.77a17.6 17.6 0 0 0 4.168 6.608 17.6 17.6 0 0 0 6.608 4.168c.601.211 1.286.033 1.77-.45l1.034-1.034a.678.678 0 0 0-.063-1.015l-2.307-1.794a.68.68 0 0 0-.58-.122l-2.19.547a1.75 1.75 0 0 1-1.657-.459L5.482 8.062a1.75 1.75 0 0 1-.46-1.657l.548-2.19a.68.68 0 0 0-.122-.58zM1.884.511a1.745 1.745 0 0 1 2.612.163L6.29 2.98c.329.423.445.974.315 1.494l-.547 2.19a.68.68 0 0 0 .178.643l2.457 2.457a.68.68 0 0 0 .644.178l2.189-.547a1.75 1.75 0 0 1 1.494.315l2.306 1.794c.829.645.905 1.87.163 2.611l-1.034 1.034c-.74.74-1.846 1.065-2.877.702a18.6 18.6 0 0 1-7.01-4.42 18.6 18.6 0 0 1-4.42-7.009c-.362-1.03-.037-2.137.703-2.877z\"},\"child\":[]}]})(props);\n};\nexport function BsTelephoneMinusFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M1.885.511a1.745 1.745 0 0 1 2.61.163L6.29 2.98c.329.423.445.974.315 1.494l-.547 2.19a.68.68 0 0 0 .178.643l2.457 2.457a.68.68 0 0 0 .644.178l2.189-.547a1.75 1.75 0 0 1 1.494.315l2.306 1.794c.829.645.905 1.87.163 2.611l-1.034 1.034c-.74.74-1.846 1.065-2.877.702a18.6 18.6 0 0 1-7.01-4.42 18.6 18.6 0 0 1-4.42-7.009c-.362-1.03-.037-2.137.703-2.877zM10 3.5a.5.5 0 0 1 .5-.5h4a.5.5 0 0 1 0 1h-4a.5.5 0 0 1-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsTelephoneMinus (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M10 3.5a.5.5 0 0 1 .5-.5h4a.5.5 0 0 1 0 1h-4a.5.5 0 0 1-.5-.5\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3.654 1.328a.678.678 0 0 0-1.015-.063L1.605 2.3c-.483.484-.661 1.169-.45 1.77a17.6 17.6 0 0 0 4.168 6.608 17.6 17.6 0 0 0 6.608 4.168c.601.211 1.286.033 1.77-.45l1.034-1.034a.678.678 0 0 0-.063-1.015l-2.307-1.794a.68.68 0 0 0-.58-.122l-2.19.547a1.75 1.75 0 0 1-1.657-.459L5.482 8.062a1.75 1.75 0 0 1-.46-1.657l.548-2.19a.68.68 0 0 0-.122-.58zM1.884.511a1.745 1.745 0 0 1 2.612.163L6.29 2.98c.329.423.445.974.315 1.494l-.547 2.19a.68.68 0 0 0 .178.643l2.457 2.457a.68.68 0 0 0 .644.178l2.189-.547a1.75 1.75 0 0 1 1.494.315l2.306 1.794c.829.645.905 1.87.163 2.611l-1.034 1.034c-.74.74-1.846 1.065-2.877.702a18.6 18.6 0 0 1-7.01-4.42 18.6 18.6 0 0 1-4.42-7.009c-.362-1.03-.037-2.137.703-2.877z\"},\"child\":[]}]})(props);\n};\nexport function BsTelephoneOutboundFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M1.885.511a1.745 1.745 0 0 1 2.61.163L6.29 2.98c.329.423.445.974.315 1.494l-.547 2.19a.68.68 0 0 0 .178.643l2.457 2.457a.68.68 0 0 0 .644.178l2.189-.547a1.75 1.75 0 0 1 1.494.315l2.306 1.794c.829.645.905 1.87.163 2.611l-1.034 1.034c-.74.74-1.846 1.065-2.877.702a18.6 18.6 0 0 1-7.01-4.42 18.6 18.6 0 0 1-4.42-7.009c-.362-1.03-.037-2.137.703-2.877zM11 .5a.5.5 0 0 1 .5-.5h4a.5.5 0 0 1 .5.5v4a.5.5 0 0 1-1 0V1.707l-4.146 4.147a.5.5 0 0 1-.708-.708L14.293 1H11.5a.5.5 0 0 1-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsTelephoneOutbound (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3.654 1.328a.678.678 0 0 0-1.015-.063L1.605 2.3c-.483.484-.661 1.169-.45 1.77a17.6 17.6 0 0 0 4.168 6.608 17.6 17.6 0 0 0 6.608 4.168c.601.211 1.286.033 1.77-.45l1.034-1.034a.678.678 0 0 0-.063-1.015l-2.307-1.794a.68.68 0 0 0-.58-.122l-2.19.547a1.75 1.75 0 0 1-1.657-.459L5.482 8.062a1.75 1.75 0 0 1-.46-1.657l.548-2.19a.68.68 0 0 0-.122-.58zM1.884.511a1.745 1.745 0 0 1 2.612.163L6.29 2.98c.329.423.445.974.315 1.494l-.547 2.19a.68.68 0 0 0 .178.643l2.457 2.457a.68.68 0 0 0 .644.178l2.189-.547a1.75 1.75 0 0 1 1.494.315l2.306 1.794c.829.645.905 1.87.163 2.611l-1.034 1.034c-.74.74-1.846 1.065-2.877.702a18.6 18.6 0 0 1-7.01-4.42 18.6 18.6 0 0 1-4.42-7.009c-.362-1.03-.037-2.137.703-2.877zM11 .5a.5.5 0 0 1 .5-.5h4a.5.5 0 0 1 .5.5v4a.5.5 0 0 1-1 0V1.707l-4.146 4.147a.5.5 0 0 1-.708-.708L14.293 1H11.5a.5.5 0 0 1-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsTelephonePlusFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M1.885.511a1.745 1.745 0 0 1 2.61.163L6.29 2.98c.329.423.445.974.315 1.494l-.547 2.19a.68.68 0 0 0 .178.643l2.457 2.457a.68.68 0 0 0 .644.178l2.189-.547a1.75 1.75 0 0 1 1.494.315l2.306 1.794c.829.645.905 1.87.163 2.611l-1.034 1.034c-.74.74-1.846 1.065-2.877.702a18.6 18.6 0 0 1-7.01-4.42 18.6 18.6 0 0 1-4.42-7.009c-.362-1.03-.037-2.137.703-2.877zM12.5 1a.5.5 0 0 1 .5.5V3h1.5a.5.5 0 0 1 0 1H13v1.5a.5.5 0 0 1-1 0V4h-1.5a.5.5 0 0 1 0-1H12V1.5a.5.5 0 0 1 .5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsTelephonePlus (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3.654 1.328a.678.678 0 0 0-1.015-.063L1.605 2.3c-.483.484-.661 1.169-.45 1.77a17.6 17.6 0 0 0 4.168 6.608 17.6 17.6 0 0 0 6.608 4.168c.601.211 1.286.033 1.77-.45l1.034-1.034a.678.678 0 0 0-.063-1.015l-2.307-1.794a.68.68 0 0 0-.58-.122l-2.19.547a1.75 1.75 0 0 1-1.657-.459L5.482 8.062a1.75 1.75 0 0 1-.46-1.657l.548-2.19a.68.68 0 0 0-.122-.58zM1.884.511a1.745 1.745 0 0 1 2.612.163L6.29 2.98c.329.423.445.974.315 1.494l-.547 2.19a.68.68 0 0 0 .178.643l2.457 2.457a.68.68 0 0 0 .644.178l2.189-.547a1.75 1.75 0 0 1 1.494.315l2.306 1.794c.829.645.905 1.87.163 2.611l-1.034 1.034c-.74.74-1.846 1.065-2.877.702a18.6 18.6 0 0 1-7.01-4.42 18.6 18.6 0 0 1-4.42-7.009c-.362-1.03-.037-2.137.703-2.877z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M12.5 1a.5.5 0 0 1 .5.5V3h1.5a.5.5 0 0 1 0 1H13v1.5a.5.5 0 0 1-1 0V4h-1.5a.5.5 0 0 1 0-1H12V1.5a.5.5 0 0 1 .5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsTelephoneXFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M1.885.511a1.745 1.745 0 0 1 2.61.163L6.29 2.98c.329.423.445.974.315 1.494l-.547 2.19a.68.68 0 0 0 .178.643l2.457 2.457a.68.68 0 0 0 .644.178l2.189-.547a1.75 1.75 0 0 1 1.494.315l2.306 1.794c.829.645.905 1.87.163 2.611l-1.034 1.034c-.74.74-1.846 1.065-2.877.702a18.6 18.6 0 0 1-7.01-4.42 18.6 18.6 0 0 1-4.42-7.009c-.362-1.03-.037-2.137.703-2.877zm9.261 1.135a.5.5 0 0 1 .708 0L13 2.793l1.146-1.147a.5.5 0 0 1 .708.708L13.707 3.5l1.147 1.146a.5.5 0 0 1-.708.708L13 4.207l-1.146 1.147a.5.5 0 0 1-.708-.708L12.293 3.5l-1.147-1.146a.5.5 0 0 1 0-.708\"},\"child\":[]}]})(props);\n};\nexport function BsTelephoneX (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3.654 1.328a.678.678 0 0 0-1.015-.063L1.605 2.3c-.483.484-.661 1.169-.45 1.77a17.6 17.6 0 0 0 4.168 6.608 17.6 17.6 0 0 0 6.608 4.168c.601.211 1.286.033 1.77-.45l1.034-1.034a.678.678 0 0 0-.063-1.015l-2.307-1.794a.68.68 0 0 0-.58-.122l-2.19.547a1.75 1.75 0 0 1-1.657-.459L5.482 8.062a1.75 1.75 0 0 1-.46-1.657l.548-2.19a.68.68 0 0 0-.122-.58zM1.884.511a1.745 1.745 0 0 1 2.612.163L6.29 2.98c.329.423.445.974.315 1.494l-.547 2.19a.68.68 0 0 0 .178.643l2.457 2.457a.68.68 0 0 0 .644.178l2.189-.547a1.75 1.75 0 0 1 1.494.315l2.306 1.794c.829.645.905 1.87.163 2.611l-1.034 1.034c-.74.74-1.846 1.065-2.877.702a18.6 18.6 0 0 1-7.01-4.42 18.6 18.6 0 0 1-4.42-7.009c-.362-1.03-.037-2.137.703-2.877z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M11.146 1.646a.5.5 0 0 1 .708 0L13 2.793l1.146-1.147a.5.5 0 0 1 .708.708L13.707 3.5l1.147 1.146a.5.5 0 0 1-.708.708L13 4.207l-1.146 1.147a.5.5 0 0 1-.708-.708L12.293 3.5l-1.147-1.146a.5.5 0 0 1 0-.708\"},\"child\":[]}]})(props);\n};\nexport function BsTelephone (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3.654 1.328a.678.678 0 0 0-1.015-.063L1.605 2.3c-.483.484-.661 1.169-.45 1.77a17.6 17.6 0 0 0 4.168 6.608 17.6 17.6 0 0 0 6.608 4.168c.601.211 1.286.033 1.77-.45l1.034-1.034a.678.678 0 0 0-.063-1.015l-2.307-1.794a.68.68 0 0 0-.58-.122l-2.19.547a1.75 1.75 0 0 1-1.657-.459L5.482 8.062a1.75 1.75 0 0 1-.46-1.657l.548-2.19a.68.68 0 0 0-.122-.58zM1.884.511a1.745 1.745 0 0 1 2.612.163L6.29 2.98c.329.423.445.974.315 1.494l-.547 2.19a.68.68 0 0 0 .178.643l2.457 2.457a.68.68 0 0 0 .644.178l2.189-.547a1.75 1.75 0 0 1 1.494.315l2.306 1.794c.829.645.905 1.87.163 2.611l-1.034 1.034c-.74.74-1.846 1.065-2.877.702a18.6 18.6 0 0 1-7.01-4.42 18.6 18.6 0 0 1-4.42-7.009c-.362-1.03-.037-2.137.703-2.877z\"},\"child\":[]}]})(props);\n};\nexport function BsTencentQq (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.048 3.323c.022.277-.13.523-.338.55-.21.026-.397-.176-.419-.453s.13-.523.338-.55c.21-.026.397.176.42.453Zm2.265-.24c-.603-.146-.894.256-.936.333-.027.048-.008.117.037.15.045.035.092.025.119-.003.361-.39.751-.172.829-.129l.011.007c.053.024.147.028.193-.098.023-.063.017-.11-.006-.142-.016-.023-.089-.08-.247-.118\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M11.727 6.719c0-.022.01-.375.01-.557 0-3.07-1.45-6.156-5.015-6.156S1.708 3.092 1.708 6.162c0 .182.01.535.01.557l-.72 1.795a26 26 0 0 0-.534 1.508c-.68 2.187-.46 3.093-.292 3.113.36.044 1.401-1.647 1.401-1.647 0 .979.504 2.256 1.594 3.179-.408.126-.907.319-1.228.556-.29.213-.253.43-.201.518.228.386 3.92.246 4.985.126 1.065.12 4.756.26 4.984-.126.052-.088.088-.305-.2-.518-.322-.237-.822-.43-1.23-.557 1.09-.922 1.594-2.2 1.594-3.178 0 0 1.041 1.69 1.401 1.647.168-.02.388-.926-.292-3.113a26 26 0 0 0-.534-1.508l-.72-1.795ZM9.773 5.53a.1.1 0 0 1-.009.096c-.109.159-1.554.943-3.033.943h-.017c-1.48 0-2.925-.784-3.034-.943a.1.1 0 0 1-.018-.055q0-.022.01-.04c.13-.287 1.43-.606 3.042-.606h.017c1.611 0 2.912.319 3.042.605m-4.32-.989c-.483.022-.896-.529-.922-1.229s.344-1.286.828-1.308c.483-.022.896.529.922 1.23.027.7-.344 1.286-.827 1.307Zm2.538 0c-.484-.022-.854-.607-.828-1.308.027-.7.44-1.25.923-1.23.483.023.853.608.827 1.309-.026.7-.439 1.251-.922 1.23ZM2.928 8.99q.32.063.639.117v2.336s1.104.222 2.21.068V9.363q.49.027.937.023h.017c1.117.013 2.474-.136 3.786-.396.097.622.151 1.386.097 2.284-.146 2.45-1.6 3.99-3.846 4.012h-.091c-2.245-.023-3.7-1.562-3.846-4.011-.054-.9 0-1.663.097-2.285\"},\"child\":[]}]})(props);\n};\nexport function BsTerminalDash (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 3a1 1 0 0 0-1 1v8a1 1 0 0 0 1 1h5.5a.5.5 0 0 1 0 1H2a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h11a2 2 0 0 1 2 2v4a.5.5 0 0 1-1 0V4a1 1 0 0 0-1-1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3.146 5.146a.5.5 0 0 1 .708 0L5.177 6.47a.75.75 0 0 1 0 1.06L3.854 8.854a.5.5 0 1 1-.708-.708L4.293 7 3.146 5.854a.5.5 0 0 1 0-.708M5.5 9a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1H6a.5.5 0 0 1-.5-.5M16 12.5a3.5 3.5 0 1 1-7 0 3.5 3.5 0 0 1 7 0m-5.5 0a.5.5 0 0 0 .5.5h3a.5.5 0 0 0 0-1h-3a.5.5 0 0 0-.5.5\"},\"child\":[]}]})(props);\n};\nexport function BsTerminalFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 3a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v10a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm9.5 5.5h-3a.5.5 0 0 0 0 1h3a.5.5 0 0 0 0-1m-6.354-.354a.5.5 0 1 0 .708.708l2-2a.5.5 0 0 0 0-.708l-2-2a.5.5 0 1 0-.708.708L4.793 6.5z\"},\"child\":[]}]})(props);\n};\nexport function BsTerminalPlus (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 3a1 1 0 0 0-1 1v8a1 1 0 0 0 1 1h5.5a.5.5 0 0 1 0 1H2a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h11a2 2 0 0 1 2 2v4a.5.5 0 0 1-1 0V4a1 1 0 0 0-1-1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3.146 5.146a.5.5 0 0 1 .708 0L5.177 6.47a.75.75 0 0 1 0 1.06L3.854 8.854a.5.5 0 1 1-.708-.708L4.293 7 3.146 5.854a.5.5 0 0 1 0-.708M5.5 9a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1H6a.5.5 0 0 1-.5-.5M16 12.5a3.5 3.5 0 1 1-7 0 3.5 3.5 0 0 1 7 0m-3.5-2a.5.5 0 0 0-.5.5v1h-1a.5.5 0 0 0 0 1h1v1a.5.5 0 0 0 1 0v-1h1a.5.5 0 0 0 0-1h-1v-1a.5.5 0 0 0-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsTerminalSplit (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2.146 3.146a.5.5 0 0 1 .708 0l.823.824a.75.75 0 0 1 0 1.06l-.823.824a.5.5 0 1 1-.708-.708l.647-.646-.647-.646a.5.5 0 0 1 0-.708M4 6a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 0 1h-1A.5.5 0 0 1 4 6m6.354-2.854a.5.5 0 0 0-.708.708l.647.646-.647.646a.5.5 0 1 0 .708.708l.823-.824a.75.75 0 0 0 0-1.06zM12 5.5a.5.5 0 0 0 0 1h1a.5.5 0 0 0 0-1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M0 3a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v10a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm2-1a1 1 0 0 0-1 1v10a1 1 0 0 0 1 1h5.5V2zm6.5 0v12H14a1 1 0 0 0 1-1V3a1 1 0 0 0-1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsTerminalX (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 3a1 1 0 0 0-1 1v8a1 1 0 0 0 1 1h5.5a.5.5 0 0 1 0 1H2a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h11a2 2 0 0 1 2 2v4a.5.5 0 0 1-1 0V4a1 1 0 0 0-1-1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3.146 5.146a.5.5 0 0 1 .708 0L5.177 6.47a.75.75 0 0 1 0 1.06L3.854 8.854a.5.5 0 1 1-.708-.708L4.293 7 3.146 5.854a.5.5 0 0 1 0-.708M5.5 9a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1H6a.5.5 0 0 1-.5-.5M16 12.5a3.5 3.5 0 1 1-7 0 3.5 3.5 0 0 1 7 0m-4.854-1.354a.5.5 0 0 0 0 .708l.647.646-.647.646a.5.5 0 0 0 .708.708l.646-.647.646.647a.5.5 0 0 0 .708-.708l-.647-.646.647-.646a.5.5 0 0 0-.708-.708l-.646.647-.646-.647a.5.5 0 0 0-.708 0\"},\"child\":[]}]})(props);\n};\nexport function BsTerminal (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6 9a.5.5 0 0 1 .5-.5h3a.5.5 0 0 1 0 1h-3A.5.5 0 0 1 6 9M3.854 4.146a.5.5 0 1 0-.708.708L4.793 6.5 3.146 8.146a.5.5 0 1 0 .708.708l2-2a.5.5 0 0 0 0-.708z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 1a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V3a2 2 0 0 0-2-2zm12 1a1 1 0 0 1 1 1v10a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V3a1 1 0 0 1 1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsTextCenter (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M4 12.5a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5m-2-3a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5m2-3a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5m-2-3a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsTextIndentLeft (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 3.5a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5m.646 2.146a.5.5 0 0 1 .708 0l2 2a.5.5 0 0 1 0 .708l-2 2a.5.5 0 0 1-.708-.708L4.293 8 2.646 6.354a.5.5 0 0 1 0-.708M7 6.5a.5.5 0 0 1 .5-.5h6a.5.5 0 0 1 0 1h-6a.5.5 0 0 1-.5-.5m0 3a.5.5 0 0 1 .5-.5h6a.5.5 0 0 1 0 1h-6a.5.5 0 0 1-.5-.5m-5 3a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsTextIndentRight (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 3.5a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5m10.646 2.146a.5.5 0 0 1 .708.708L11.707 8l1.647 1.646a.5.5 0 0 1-.708.708l-2-2a.5.5 0 0 1 0-.708zM2 6.5a.5.5 0 0 1 .5-.5h6a.5.5 0 0 1 0 1h-6a.5.5 0 0 1-.5-.5m0 3a.5.5 0 0 1 .5-.5h6a.5.5 0 0 1 0 1h-6a.5.5 0 0 1-.5-.5m0 3a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsTextLeft (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M2 12.5a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5m0-3a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5m0-3a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5m0-3a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsTextParagraph (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M2 12.5a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5m0-3a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5m0-3a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5m4-3a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsTextRight (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M6 12.5a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5m-4-3a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5m4-3a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5m-4-3a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsTextWrap (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M2 3.5a.5.5 0 0 1 .5-.5h11a.5.5 0 0 1 0 1h-11a.5.5 0 0 1-.5-.5m0 4a.5.5 0 0 1 .5-.5h9a2.5 2.5 0 0 1 0 5h-1.293l.647.646a.5.5 0 0 1-.708.708l-1.5-1.5a.5.5 0 0 1 0-.708l1.5-1.5a.5.5 0 0 1 .708.708l-.647.646H11.5a1.5 1.5 0 0 0 0-3h-9a.5.5 0 0 1-.5-.5m0 4a.5.5 0 0 1 .5-.5H7a.5.5 0 0 1 0 1H2.5a.5.5 0 0 1-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsTextareaResize (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 4.5A2.5 2.5 0 0 1 2.5 2h11A2.5 2.5 0 0 1 16 4.5v7a2.5 2.5 0 0 1-2.5 2.5h-11A2.5 2.5 0 0 1 0 11.5zM2.5 3A1.5 1.5 0 0 0 1 4.5v7A1.5 1.5 0 0 0 2.5 13h11a1.5 1.5 0 0 0 1.5-1.5v-7A1.5 1.5 0 0 0 13.5 3zm10.854 4.646a.5.5 0 0 1 0 .708l-3 3a.5.5 0 0 1-.708-.708l3-3a.5.5 0 0 1 .708 0m0 2.5a.5.5 0 0 1 0 .708l-.5.5a.5.5 0 0 1-.708-.708l.5-.5a.5.5 0 0 1 .708 0\"},\"child\":[]}]})(props);\n};\nexport function BsTextareaT (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M1.5 2.5A1.5 1.5 0 0 1 3 1h10a1.5 1.5 0 0 1 1.5 1.5v3.563a2 2 0 0 1 0 3.874V13.5A1.5 1.5 0 0 1 13 15H3a1.5 1.5 0 0 1-1.5-1.5V9.937a2 2 0 0 1 0-3.874zm1 3.563a2 2 0 0 1 0 3.874V13.5a.5.5 0 0 0 .5.5h10a.5.5 0 0 0 .5-.5V9.937a2 2 0 0 1 0-3.874V2.5A.5.5 0 0 0 13 2H3a.5.5 0 0 0-.5.5zM2 7a1 1 0 1 0 0 2 1 1 0 0 0 0-2m12 0a1 1 0 1 0 0 2 1 1 0 0 0 0-2\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M11.434 4H4.566L4.5 5.994h.386c.21-1.252.612-1.446 2.173-1.495l.343-.011v6.343c0 .537-.116.665-1.049.748V12h3.294v-.421c-.938-.083-1.054-.21-1.054-.748V4.488l.348.01c1.56.05 1.963.244 2.173 1.496h.386z\"},\"child\":[]}]})(props);\n};\nexport function BsTextarea (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M1.5 2.5A1.5 1.5 0 0 1 3 1h10a1.5 1.5 0 0 1 1.5 1.5v3.563a2 2 0 0 1 0 3.874V13.5A1.5 1.5 0 0 1 13 15H3a1.5 1.5 0 0 1-1.5-1.5V9.937a2 2 0 0 1 0-3.874zm1 3.563a2 2 0 0 1 0 3.874V13.5a.5.5 0 0 0 .5.5h10a.5.5 0 0 0 .5-.5V9.937a2 2 0 0 1 0-3.874V2.5A.5.5 0 0 0 13 2H3a.5.5 0 0 0-.5.5zM2 7a1 1 0 1 0 0 2 1 1 0 0 0 0-2m12 0a1 1 0 1 0 0 2 1 1 0 0 0 0-2\"},\"child\":[]}]})(props);\n};\nexport function BsThermometerHalf (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.5 12.5a1.5 1.5 0 1 1-2-1.415V6.5a.5.5 0 0 1 1 0v4.585a1.5 1.5 0 0 1 1 1.415\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M5.5 2.5a2.5 2.5 0 0 1 5 0v7.55a3.5 3.5 0 1 1-5 0zM8 1a1.5 1.5 0 0 0-1.5 1.5v7.987l-.167.15a2.5 2.5 0 1 0 3.333 0l-.166-.15V2.5A1.5 1.5 0 0 0 8 1\"},\"child\":[]}]})(props);\n};\nexport function BsThermometerHigh (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.5 12.5a1.5 1.5 0 1 1-2-1.415V2.5a.5.5 0 0 1 1 0v8.585a1.5 1.5 0 0 1 1 1.415\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M5.5 2.5a2.5 2.5 0 0 1 5 0v7.55a3.5 3.5 0 1 1-5 0zM8 1a1.5 1.5 0 0 0-1.5 1.5v7.987l-.167.15a2.5 2.5 0 1 0 3.333 0l-.166-.15V2.5A1.5 1.5 0 0 0 8 1\"},\"child\":[]}]})(props);\n};\nexport function BsThermometerLow (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.5 12.5a1.5 1.5 0 1 1-2-1.415V9.5a.5.5 0 0 1 1 0v1.585a1.5 1.5 0 0 1 1 1.415\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M5.5 2.5a2.5 2.5 0 0 1 5 0v7.55a3.5 3.5 0 1 1-5 0zM8 1a1.5 1.5 0 0 0-1.5 1.5v7.987l-.167.15a2.5 2.5 0 1 0 3.333 0l-.166-.15V2.5A1.5 1.5 0 0 0 8 1\"},\"child\":[]}]})(props);\n};\nexport function BsThermometerSnow (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5 12.5a1.5 1.5 0 1 1-2-1.415V9.5a.5.5 0 0 1 1 0v1.585A1.5 1.5 0 0 1 5 12.5\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M1 2.5a2.5 2.5 0 0 1 5 0v7.55a3.5 3.5 0 1 1-5 0zM3.5 1A1.5 1.5 0 0 0 2 2.5v7.987l-.167.15a2.5 2.5 0 1 0 3.333 0L5 10.486V2.5A1.5 1.5 0 0 0 3.5 1m5 1a.5.5 0 0 1 .5.5v1.293l.646-.647a.5.5 0 0 1 .708.708L9 5.207v1.927l1.669-.963.495-1.85a.5.5 0 1 1 .966.26l-.237.882 1.12-.646a.5.5 0 0 1 .5.866l-1.12.646.884.237a.5.5 0 1 1-.26.966l-1.848-.495L9.5 8l1.669.963 1.849-.495a.5.5 0 1 1 .258.966l-.883.237 1.12.646a.5.5 0 0 1-.5.866l-1.12-.646.237.883a.5.5 0 1 1-.966.258L10.67 9.83 9 8.866v1.927l1.354 1.353a.5.5 0 0 1-.708.708L9 12.207V13.5a.5.5 0 0 1-1 0v-11a.5.5 0 0 1 .5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsThermometerSun (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5 12.5a1.5 1.5 0 1 1-2-1.415V2.5a.5.5 0 0 1 1 0v8.585A1.5 1.5 0 0 1 5 12.5\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M1 2.5a2.5 2.5 0 0 1 5 0v7.55a3.5 3.5 0 1 1-5 0zM3.5 1A1.5 1.5 0 0 0 2 2.5v7.987l-.167.15a2.5 2.5 0 1 0 3.333 0L5 10.486V2.5A1.5 1.5 0 0 0 3.5 1m5 1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-1 0v-1a.5.5 0 0 1 .5-.5m4.243 1.757a.5.5 0 0 1 0 .707l-.707.708a.5.5 0 1 1-.708-.708l.708-.707a.5.5 0 0 1 .707 0M8 5.5a.5.5 0 0 1 .5-.5 3 3 0 1 1 0 6 .5.5 0 0 1 0-1 2 2 0 0 0 0-4 .5.5 0 0 1-.5-.5M12.5 8a.5.5 0 0 1 .5-.5h1a.5.5 0 1 1 0 1h-1a.5.5 0 0 1-.5-.5m-1.172 2.828a.5.5 0 0 1 .708 0l.707.708a.5.5 0 0 1-.707.707l-.708-.707a.5.5 0 0 1 0-.708M8.5 12a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-1 0v-1a.5.5 0 0 1 .5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsThermometer (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 14a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8 0a2.5 2.5 0 0 0-2.5 2.5v7.55a3.5 3.5 0 1 0 5 0V2.5A2.5 2.5 0 0 0 8 0M6.5 2.5a1.5 1.5 0 1 1 3 0v7.987l.167.15a2.5 2.5 0 1 1-3.333 0l.166-.15z\"},\"child\":[]}]})(props);\n};\nexport function BsThreadsFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.81 9.204c0-.41.197-1.062 1.727-1.062.469 0 .758.034 1.146.121-.124 1.606-.91 1.818-1.674 1.818-.418 0-1.2-.218-1.2-.877Z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2.59 16h10.82A2.59 2.59 0 0 0 16 13.41V2.59A2.59 2.59 0 0 0 13.41 0H2.59A2.59 2.59 0 0 0 0 2.59v10.82A2.59 2.59 0 0 0 2.59 16M5.866 5.91c.567-.81 1.315-1.126 2.35-1.126.73 0 1.351.246 1.795.711.443.466.696 1.132.754 1.983q.368.154.678.363c.832.559 1.29 1.395 1.29 2.353 0 2.037-1.67 3.806-4.692 3.806-2.595 0-5.291-1.51-5.291-6.004C2.75 3.526 5.361 2 8.033 2c1.234 0 4.129.182 5.217 3.777l-1.02.264c-.842-2.56-2.607-2.968-4.224-2.968-2.675 0-4.187 1.628-4.187 5.093 0 3.107 1.69 4.757 4.222 4.757 2.083 0 3.636-1.082 3.636-2.667 0-1.079-.906-1.595-.953-1.595-.177.925-.651 2.482-2.733 2.482-1.213 0-2.26-.838-2.26-1.936 0-1.568 1.488-2.136 2.663-2.136.44 0 .97.03 1.247.086 0-.478-.404-1.296-1.426-1.296-.911 0-1.16.288-1.45.624l-.024.027c-.202-.135-.875-.601-.875-.601Z\"},\"child\":[]}]})(props);\n};\nexport function BsThreads (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.321 6.016c-.27-.18-1.166-.802-1.166-.802.756-1.081 1.753-1.502 3.132-1.502.975 0 1.803.327 2.394.948s.928 1.509 1.005 2.644q.492.207.905.484c1.109.745 1.719 1.86 1.719 3.137 0 2.716-2.226 5.075-6.256 5.075C4.594 16 1 13.987 1 7.994 1 2.034 4.482 0 8.044 0 9.69 0 13.55.243 15 5.036l-1.36.353C12.516 1.974 10.163 1.43 8.006 1.43c-3.565 0-5.582 2.171-5.582 6.79 0 4.143 2.254 6.343 5.63 6.343 2.777 0 4.847-1.443 4.847-3.556 0-1.438-1.208-2.127-1.27-2.127-.236 1.234-.868 3.31-3.644 3.31-1.618 0-3.013-1.118-3.013-2.582 0-2.09 1.984-2.847 3.55-2.847.586 0 1.294.04 1.663.114 0-.637-.54-1.728-1.9-1.728-1.25 0-1.566.405-1.967.868ZM8.716 8.19c-2.04 0-2.304.87-2.304 1.416 0 .878 1.043 1.168 1.6 1.168 1.02 0 2.067-.282 2.232-2.423a6.2 6.2 0 0 0-1.528-.161\"},\"child\":[]}]})(props);\n};\nexport function BsThreeDotsVertical (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.5 13a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0m0-5a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0m0-5a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0\"},\"child\":[]}]})(props);\n};\nexport function BsThreeDots (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3 9.5a1.5 1.5 0 1 1 0-3 1.5 1.5 0 0 1 0 3m5 0a1.5 1.5 0 1 1 0-3 1.5 1.5 0 0 1 0 3m5 0a1.5 1.5 0 1 1 0-3 1.5 1.5 0 0 1 0 3\"},\"child\":[]}]})(props);\n};\nexport function BsThunderboltFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M1 3a1 1 0 0 0-1 1v7.293A1 1 0 0 0 .293 12L2 13.707a1 1 0 0 0 .707.293h10.586a1 1 0 0 0 .707-.293L15.707 12a1 1 0 0 0 .293-.707V4a1 1 0 0 0-1-1zm2.5 3h9a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-9a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsThunderbolt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3.5 7a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h9a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M1 3a1 1 0 0 0-1 1v7.293A1 1 0 0 0 .293 12L2 13.707a1 1 0 0 0 .707.293h10.586a1 1 0 0 0 .707-.293L15.707 12a1 1 0 0 0 .293-.707V4a1 1 0 0 0-1-1zm0 1h14v7.293L13.293 13H2.707L1 11.293z\"},\"child\":[]}]})(props);\n};\nexport function BsTicketDetailedFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 4.5A1.5 1.5 0 0 1 1.5 3h13A1.5 1.5 0 0 1 16 4.5V6a.5.5 0 0 1-.5.5 1.5 1.5 0 0 0 0 3 .5.5 0 0 1 .5.5v1.5a1.5 1.5 0 0 1-1.5 1.5h-13A1.5 1.5 0 0 1 0 11.5V10a.5.5 0 0 1 .5-.5 1.5 1.5 0 1 0 0-3A.5.5 0 0 1 0 6zm4 1a.5.5 0 0 0 .5.5h7a.5.5 0 0 0 0-1h-7a.5.5 0 0 0-.5.5m0 5a.5.5 0 0 0 .5.5h7a.5.5 0 0 0 0-1h-7a.5.5 0 0 0-.5.5M4 8a1 1 0 0 0 1 1h6a1 1 0 1 0 0-2H5a1 1 0 0 0-1 1\"},\"child\":[]}]})(props);\n};\nexport function BsTicketDetailed (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4 5.5a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5m0 5a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5M5 7a1 1 0 0 0 0 2h6a1 1 0 1 0 0-2z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M0 4.5A1.5 1.5 0 0 1 1.5 3h13A1.5 1.5 0 0 1 16 4.5V6a.5.5 0 0 1-.5.5 1.5 1.5 0 0 0 0 3 .5.5 0 0 1 .5.5v1.5a1.5 1.5 0 0 1-1.5 1.5h-13A1.5 1.5 0 0 1 0 11.5V10a.5.5 0 0 1 .5-.5 1.5 1.5 0 1 0 0-3A.5.5 0 0 1 0 6zM1.5 4a.5.5 0 0 0-.5.5v1.05a2.5 2.5 0 0 1 0 4.9v1.05a.5.5 0 0 0 .5.5h13a.5.5 0 0 0 .5-.5v-1.05a2.5 2.5 0 0 1 0-4.9V4.5a.5.5 0 0 0-.5-.5z\"},\"child\":[]}]})(props);\n};\nexport function BsTicketFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M1.5 3A1.5 1.5 0 0 0 0 4.5V6a.5.5 0 0 0 .5.5 1.5 1.5 0 1 1 0 3 .5.5 0 0 0-.5.5v1.5A1.5 1.5 0 0 0 1.5 13h13a1.5 1.5 0 0 0 1.5-1.5V10a.5.5 0 0 0-.5-.5 1.5 1.5 0 0 1 0-3A.5.5 0 0 0 16 6V4.5A1.5 1.5 0 0 0 14.5 3z\"},\"child\":[]}]})(props);\n};\nexport function BsTicketPerforatedFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 4.5A1.5 1.5 0 0 1 1.5 3h13A1.5 1.5 0 0 1 16 4.5V6a.5.5 0 0 1-.5.5 1.5 1.5 0 0 0 0 3 .5.5 0 0 1 .5.5v1.5a1.5 1.5 0 0 1-1.5 1.5h-13A1.5 1.5 0 0 1 0 11.5V10a.5.5 0 0 1 .5-.5 1.5 1.5 0 1 0 0-3A.5.5 0 0 1 0 6zm4-1v1h1v-1zm1 3v-1H4v1zm7 0v-1h-1v1zm-1-2h1v-1h-1zm-6 3H4v1h1zm7 1v-1h-1v1zm-7 1H4v1h1zm7 1v-1h-1v1zm-8 1v1h1v-1zm7 1h1v-1h-1z\"},\"child\":[]}]})(props);\n};\nexport function BsTicketPerforated (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4 4.85v.9h1v-.9zm7 0v.9h1v-.9zm-7 1.8v.9h1v-.9zm7 0v.9h1v-.9zm-7 1.8v.9h1v-.9zm7 0v.9h1v-.9zm-7 1.8v.9h1v-.9zm7 0v.9h1v-.9z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M1.5 3A1.5 1.5 0 0 0 0 4.5V6a.5.5 0 0 0 .5.5 1.5 1.5 0 1 1 0 3 .5.5 0 0 0-.5.5v1.5A1.5 1.5 0 0 0 1.5 13h13a1.5 1.5 0 0 0 1.5-1.5V10a.5.5 0 0 0-.5-.5 1.5 1.5 0 0 1 0-3A.5.5 0 0 0 16 6V4.5A1.5 1.5 0 0 0 14.5 3zM1 4.5a.5.5 0 0 1 .5-.5h13a.5.5 0 0 1 .5.5v1.05a2.5 2.5 0 0 0 0 4.9v1.05a.5.5 0 0 1-.5.5h-13a.5.5 0 0 1-.5-.5v-1.05a2.5 2.5 0 0 0 0-4.9z\"},\"child\":[]}]})(props);\n};\nexport function BsTicket (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 4.5A1.5 1.5 0 0 1 1.5 3h13A1.5 1.5 0 0 1 16 4.5V6a.5.5 0 0 1-.5.5 1.5 1.5 0 0 0 0 3 .5.5 0 0 1 .5.5v1.5a1.5 1.5 0 0 1-1.5 1.5h-13A1.5 1.5 0 0 1 0 11.5V10a.5.5 0 0 1 .5-.5 1.5 1.5 0 1 0 0-3A.5.5 0 0 1 0 6zM1.5 4a.5.5 0 0 0-.5.5v1.05a2.5 2.5 0 0 1 0 4.9v1.05a.5.5 0 0 0 .5.5h13a.5.5 0 0 0 .5-.5v-1.05a2.5 2.5 0 0 1 0-4.9V4.5a.5.5 0 0 0-.5-.5z\"},\"child\":[]}]})(props);\n};\nexport function BsTiktok (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9 0h1.98c.144.715.54 1.617 1.235 2.512C12.895 3.389 13.797 4 15 4v2c-1.753 0-3.07-.814-4-1.829V11a5 5 0 1 1-5-5v2a3 3 0 1 0 3 3z\"},\"child\":[]}]})(props);\n};\nexport function BsToggleOff (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M11 4a4 4 0 0 1 0 8H8a5 5 0 0 0 2-4 5 5 0 0 0-2-4zm-6 8a4 4 0 1 1 0-8 4 4 0 0 1 0 8M0 8a5 5 0 0 0 5 5h6a5 5 0 0 0 0-10H5a5 5 0 0 0-5 5\"},\"child\":[]}]})(props);\n};\nexport function BsToggleOn (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5 3a5 5 0 0 0 0 10h6a5 5 0 0 0 0-10zm6 9a4 4 0 1 1 0-8 4 4 0 0 1 0 8\"},\"child\":[]}]})(props);\n};\nexport function BsToggle2Off (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9 11c.628-.836 1-1.874 1-3a4.98 4.98 0 0 0-1-3h4a3 3 0 1 1 0 6z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M5 12a4 4 0 1 1 0-8 4 4 0 0 1 0 8m0 1A5 5 0 1 0 5 3a5 5 0 0 0 0 10\"},\"child\":[]}]})(props);\n};\nexport function BsToggle2On (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7 5H3a3 3 0 0 0 0 6h4a5 5 0 0 1-.584-1H3a2 2 0 1 1 0-4h3.416q.235-.537.584-1\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A5 5 0 1 1 6 8a5 5 0 0 1 10 0\"},\"child\":[]}]})(props);\n};\nexport function BsToggles (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4.5 9a3.5 3.5 0 1 0 0 7h7a3.5 3.5 0 1 0 0-7zm7 6a2.5 2.5 0 1 1 0-5 2.5 2.5 0 0 1 0 5m-7-14a2.5 2.5 0 1 0 0 5 2.5 2.5 0 0 0 0-5m2.45 0A3.5 3.5 0 0 1 8 3.5 3.5 3.5 0 0 1 6.95 6h4.55a2.5 2.5 0 0 0 0-5zM4.5 0h7a3.5 3.5 0 1 1 0 7h-7a3.5 3.5 0 1 1 0-7\"},\"child\":[]}]})(props);\n};\nexport function BsToggles2 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.465 10H12a2 2 0 1 1 0 4H9.465c.34-.588.535-1.271.535-2s-.195-1.412-.535-2\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M6 15a3 3 0 1 0 0-6 3 3 0 0 0 0 6m0 1a4 4 0 1 1 0-8 4 4 0 0 1 0 8m.535-10a4 4 0 0 1-.409-1H4a1 1 0 0 1 0-2h2.126q.138-.534.41-1H4a2 2 0 1 0 0 4z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M14 4a4 4 0 1 1-8 0 4 4 0 0 1 8 0\"},\"child\":[]}]})(props);\n};\nexport function BsTools (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M1 0 0 1l2.2 3.081a1 1 0 0 0 .815.419h.07a1 1 0 0 1 .708.293l2.675 2.675-2.617 2.654A3.003 3.003 0 0 0 0 13a3 3 0 1 0 5.878-.851l2.654-2.617.968.968-.305.914a1 1 0 0 0 .242 1.023l3.27 3.27a.997.997 0 0 0 1.414 0l1.586-1.586a.997.997 0 0 0 0-1.414l-3.27-3.27a1 1 0 0 0-1.023-.242L10.5 9.5l-.96-.96 2.68-2.643A3.005 3.005 0 0 0 16 3q0-.405-.102-.777l-2.14 2.141L12 4l-.364-1.757L13.777.102a3 3 0 0 0-3.675 3.68L7.462 6.46 4.793 3.793a1 1 0 0 1-.293-.707v-.071a1 1 0 0 0-.419-.814zm9.646 10.646a.5.5 0 0 1 .708 0l2.914 2.915a.5.5 0 0 1-.707.707l-2.915-2.914a.5.5 0 0 1 0-.708M3 11l.471.242.529.026.287.445.445.287.026.529L5 13l-.242.471-.026.529-.445.287-.287.445-.529.026L3 15l-.471-.242L2 14.732l-.287-.445L1.268 14l-.026-.529L1 13l.242-.471.026-.529.445-.287.287-.445.529-.026z\"},\"child\":[]}]})(props);\n};\nexport function BsTornado (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M1.125 2.45A.9.9 0 0 1 1 2c0-.26.116-.474.258-.634a1.9 1.9 0 0 1 .513-.389c.387-.21.913-.385 1.52-.525C4.514.17 6.18 0 8 0c1.821 0 3.486.17 4.709.452.607.14 1.133.314 1.52.525.193.106.374.233.513.389.141.16.258.374.258.634 0 1.011-.35 1.612-.634 2.102l-.116.203a2.6 2.6 0 0 0-.313.809 3 3 0 0 0-.011.891.5.5 0 0 1 .428.849q-.091.09-.215.195c.204 1.116.088 1.99-.3 2.711-.453.84-1.231 1.383-2.02 1.856q-.307.183-.62.364c-1.444.832-2.928 1.689-3.735 3.706a.5.5 0 0 1-.748.226l-.001-.001-.002-.001-.004-.003-.01-.008a2 2 0 0 1-.147-.115 4.1 4.1 0 0 1-1.179-1.656 3.8 3.8 0 0 1-.247-1.296A.5.5 0 0 1 5 12.5v-.018l.008-.079a.73.73 0 0 1 .188-.386c.09-.489.272-1.014.573-1.574a.5.5 0 0 1 .073-.918 3.3 3.3 0 0 1 .617-.144l.15-.193c.285-.356.404-.639.437-.861a.95.95 0 0 0-.122-.619c-.249-.455-.815-.903-1.613-1.43q-.291-.19-.609-.394l-.119-.076a12 12 0 0 1-1.241-.334.5.5 0 0 1-.285-.707l-.23-.18C2.117 4.01 1.463 3.32 1.125 2.45m1.973 1.051q.17.156.358.308c.472.381.99.722 1.515 1.06 1.54.317 3.632.5 5.43.14a.5.5 0 0 1 .197.981c-1.216.244-2.537.26-3.759.157.399.326.744.682.963 1.081.203.373.302.79.233 1.247q-.077.494-.39.985l.22.053.006.002c.481.12.863.213 1.47.01a.5.5 0 1 1 .317.95c-.888.295-1.505.141-2.023.012l-.006-.002a4 4 0 0 0-.644-.123c-.37.55-.598 1.05-.726 1.497q.212.068.465.194a.5.5 0 1 1-.448.894 3 3 0 0 0-.148-.07c.012.345.084.643.18.895.14.369.342.666.528.886.992-1.903 2.583-2.814 3.885-3.56q.305-.173.584-.34c.775-.464 1.34-.89 1.653-1.472.212-.393.33-.9.26-1.617A6.74 6.74 0 0 1 10 8.5a.5.5 0 0 1 0-1 5.76 5.76 0 0 0 3.017-.872l-.007-.03c-.135-.673-.14-1.207-.056-1.665.084-.46.253-.81.421-1.113l.131-.23q.098-.167.182-.327c-.29.107-.62.202-.98.285C11.487 3.83 9.822 4 8 4c-1.821 0-3.486-.17-4.709-.452q-.098-.022-.193-.047M13.964 2a1 1 0 0 0-.214-.145c-.272-.148-.697-.297-1.266-.428C11.354 1.166 9.769 1 8 1s-3.354.166-4.484.427c-.569.13-.994.28-1.266.428A1 1 0 0 0 2.036 2q.058.058.214.145c.272.148.697.297 1.266.428C4.646 2.834 6.231 3 8 3s3.354-.166 4.484-.427c.569-.13.994-.28 1.266-.428A1 1 0 0 0 13.964 2\"},\"child\":[]}]})(props);\n};\nexport function BsTrainFreightFrontFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5.736 0a1.5 1.5 0 0 0-.67.158L1.828 1.776A1.5 1.5 0 0 0 1 3.118v5.51l2-.6V5a1 1 0 0 1 1-1h8a1 1 0 0 1 1 1v3.028l2 .6v-5.51a1.5 1.5 0 0 0-.83-1.342L10.936.158A1.5 1.5 0 0 0 10.264 0zM15 9.672l-5.503-1.65A.5.5 0 0 0 9.353 8H8.5v8h4a2.5 2.5 0 0 0 2.5-2.5zM7.5 16V8h-.853a.5.5 0 0 0-.144.021L1 9.672V13.5A2.5 2.5 0 0 0 3.5 16zm-1-14h3a.5.5 0 0 1 0 1h-3a.5.5 0 0 1 0-1M12 5v2.728l-2.216-.665A1.5 1.5 0 0 0 9.354 7H8.5V5zM7.5 5v2h-.853a1.5 1.5 0 0 0-.431.063L4 7.728V5zm-4 5a.5.5 0 1 1 0 1 .5.5 0 0 1 0-1m9 0a.5.5 0 1 1 0 1 .5.5 0 0 1 0-1M5 13a1 1 0 1 1-2 0 1 1 0 0 1 2 0m7 1a1 1 0 1 1 0-2 1 1 0 0 1 0 2\"},\"child\":[]}]})(props);\n};\nexport function BsTrainFreightFront (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5.065.158A1.5 1.5 0 0 1 5.736 0h4.528a1.5 1.5 0 0 1 .67.158l3.237 1.618a1.5 1.5 0 0 1 .83 1.342V13.5a2.5 2.5 0 0 1-2.5 2.5h-9A2.5 2.5 0 0 1 1 13.5V3.118a1.5 1.5 0 0 1 .828-1.342zM2 9.372V13.5A1.5 1.5 0 0 0 3.5 15h4V8h-.853a.5.5 0 0 0-.144.021zM8.5 15h4a1.5 1.5 0 0 0 1.5-1.5V9.372l-4.503-1.35A.5.5 0 0 0 9.353 8H8.5zM14 8.328v-5.21a.5.5 0 0 0-.276-.447l-3.236-1.618A.5.5 0 0 0 10.264 1H5.736a.5.5 0 0 0-.223.053L2.277 2.67A.5.5 0 0 0 2 3.118v5.21l1-.3V5a1 1 0 0 1 1-1h8a1 1 0 0 1 1 1v3.028zm-2-.6V5H8.5v2h.853a1.5 1.5 0 0 1 .431.063zM7.5 7V5H4v2.728l2.216-.665A1.5 1.5 0 0 1 6.646 7zm-1-5a.5.5 0 0 0 0 1h3a.5.5 0 0 0 0-1zm-3 8a.5.5 0 1 0 0 1 .5.5 0 0 0 0-1m9 0a.5.5 0 1 0 0 1 .5.5 0 0 0 0-1M5 13a1 1 0 1 1-2 0 1 1 0 0 1 2 0m7 1a1 1 0 1 0 0-2 1 1 0 0 0 0 2\"},\"child\":[]}]})(props);\n};\nexport function BsTrainFrontFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M10.621.515C8.647.02 7.353.02 5.38.515c-.924.23-1.982.766-2.78 1.22C1.566 2.322 1 3.432 1 4.582V13.5A2.5 2.5 0 0 0 3.5 16h9a2.5 2.5 0 0 0 2.5-2.5V4.583c0-1.15-.565-2.26-1.6-2.849-.797-.453-1.855-.988-2.779-1.22ZM6.5 2h3a.5.5 0 0 1 0 1h-3a.5.5 0 0 1 0-1m-2 2h7A1.5 1.5 0 0 1 13 5.5v2A1.5 1.5 0 0 1 11.5 9h-7A1.5 1.5 0 0 1 3 7.5v-2A1.5 1.5 0 0 1 4.5 4m.5 9a1 1 0 1 1-2 0 1 1 0 0 1 2 0m0 0a1 1 0 1 1 2 0 1 1 0 0 1-2 0m8 0a1 1 0 1 1-2 0 1 1 0 0 1 2 0m-3-1a1 1 0 1 1 0 2 1 1 0 0 1 0-2M4 5.5a.5.5 0 0 1 .5-.5h3v3h-3a.5.5 0 0 1-.5-.5zM8.5 8V5h3a.5.5 0 0 1 .5.5v2a.5.5 0 0 1-.5.5z\"},\"child\":[]}]})(props);\n};\nexport function BsTrainFront (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5.621 1.485c1.815-.454 2.943-.454 4.758 0 .784.196 1.743.673 2.527 1.119.688.39 1.094 1.148 1.094 1.979V13.5a1.5 1.5 0 0 1-1.5 1.5h-9A1.5 1.5 0 0 1 2 13.5V4.583c0-.831.406-1.588 1.094-1.98.784-.445 1.744-.922 2.527-1.118m5-.97C8.647.02 7.353.02 5.38.515c-.924.23-1.982.766-2.78 1.22C1.566 2.322 1 3.432 1 4.582V13.5A2.5 2.5 0 0 0 3.5 16h9a2.5 2.5 0 0 0 2.5-2.5V4.583c0-1.15-.565-2.26-1.6-2.849-.797-.453-1.855-.988-2.779-1.22ZM5 13a1 1 0 1 1-2 0 1 1 0 0 1 2 0m0 0a1 1 0 1 1 2 0 1 1 0 0 1-2 0m7 1a1 1 0 1 0-1-1 1 1 0 1 0-2 0 1 1 0 0 0 2 0 1 1 0 0 0 1 1M4.5 5a.5.5 0 0 0-.5.5v2a.5.5 0 0 0 .5.5h3V5zm4 0v3h3a.5.5 0 0 0 .5-.5v-2a.5.5 0 0 0-.5-.5zM3 5.5A1.5 1.5 0 0 1 4.5 4h7A1.5 1.5 0 0 1 13 5.5v2A1.5 1.5 0 0 1 11.5 9h-7A1.5 1.5 0 0 1 3 7.5zM6.5 2a.5.5 0 0 0 0 1h3a.5.5 0 0 0 0-1z\"},\"child\":[]}]})(props);\n};\nexport function BsTrainLightrailFrontFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.5 0a.5.5 0 0 0 0 1h1v1.011c-1.525.064-3.346.394-4.588.655C1.775 2.904 1 3.915 1 5.055V13.5A2.5 2.5 0 0 0 3.5 16h9a2.5 2.5 0 0 0 2.5-2.5V5.055c0-1.14-.775-2.15-1.912-2.39-1.242-.26-3.063-.59-4.588-.654V1h1a.5.5 0 0 0 0-1zM8 4c1.136 0 2.645.2 3.604.346.825.126 1.356.9 1.244 1.697q-.034.24-.07.522C12.643 7.596 12.5 8.949 12.5 10c0 .428.024.933.062 1.464.066.93.174 1.92.266 2.682.042.34.08.634.109.854h-1.01a63 63 0 0 1-.327-3H9.354c-.36 0-.704-.143-.958-.396a.35.35 0 0 0-.25-.104h-.292a.35.35 0 0 0-.25.104 1.35 1.35 0 0 1-.958.396H4.4a63 63 0 0 1-.328 3H3.064c.029-.22.067-.514.108-.854.092-.761.2-1.752.266-2.682.038-.531.062-1.036.062-1.464 0-1.051-.143-2.404-.278-3.435l-.07-.522c-.112-.798.42-1.571 1.244-1.697C5.356 4.199 6.864 4 8 4m-1.354 7H4.47c.019-.353.03-.692.03-1 0-.927-.104-2.051-.216-3h7.432c-.112.949-.216 2.073-.216 3 0 .308.011.647.03 1H9.354a.35.35 0 0 1-.25-.104 1.35 1.35 0 0 0-.958-.396h-.292c-.36 0-.704.143-.958.396a.35.35 0 0 1-.25.104m5.199-5h-7.69l-.013-.096a.497.497 0 0 1 .405-.57C5.505 5.188 6.947 5 8 5s2.495.188 3.453.334a.497.497 0 0 1 .405.57zM6 13.5a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0m0 0a.5.5 0 1 1 1 0 .5.5 0 0 1-1 0m4 0a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0m0 0a.5.5 0 1 1 1 0 .5.5 0 0 1-1 0\"},\"child\":[]}]})(props);\n};\nexport function BsTrainLightrailFront (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.5 0a.5.5 0 0 0 0 1h1v1.011c-1.525.064-3.346.394-4.588.655C1.775 2.904 1 3.915 1 5.055V13.5A2.5 2.5 0 0 0 3.5 16h9a2.5 2.5 0 0 0 2.5-2.5V5.055c0-1.14-.775-2.15-1.912-2.39-1.242-.26-3.063-.59-4.588-.654V1h1a.5.5 0 0 0 0-1zM8 3c1.497 0 3.505.356 4.883.644.653.137 1.117.722 1.117 1.411V13.5a1.5 1.5 0 0 1-1.072 1.438 76 76 0 0 1-.1-.792c-.092-.761-.2-1.752-.266-2.682A21 21 0 0 1 12.5 10c0-1.051.143-2.404.278-3.435l.07-.522c.112-.798-.42-1.571-1.244-1.697C10.644 4.199 9.136 4 8 4s-2.645.2-3.604.346c-.825.126-1.356.9-1.244 1.697q.034.24.07.522C3.357 7.596 3.5 8.949 3.5 10c0 .428-.024.933-.062 1.464a57 57 0 0 1-.266 2.682c-.038.31-.072.58-.1.792A1.5 1.5 0 0 1 2 13.5V5.055c0-.69.464-1.274 1.117-1.41C4.495 3.354 6.503 3 8 3m3.835 11.266c.034.28.066.53.093.734H4.072a63 63 0 0 0 .328-3h2.246c.36 0 .704-.143.958-.396a.35.35 0 0 1 .25-.104h.292a.35.35 0 0 1 .25.104c.254.253.599.396.958.396H11.6c.068.808.158 1.621.236 2.266ZM6 13.5a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0m0 0a.5.5 0 1 1 1 0 .5.5 0 0 1-1 0m3.5.5a.5.5 0 0 0 .5-.5.5.5 0 1 0 1 0 .5.5 0 0 0-1 0 .5.5 0 1 0-.5.5m-5.03-3c.019-.353.03-.692.03-1 0-.927-.104-2.051-.216-3h7.432c-.112.949-.216 2.073-.216 3 0 .308.011.647.03 1H9.354a.35.35 0 0 1-.25-.104 1.35 1.35 0 0 0-.958-.396h-.292c-.36 0-.704.143-.958.396a.35.35 0 0 1-.25.104zm-.315-5-.013-.096a.497.497 0 0 1 .405-.57C5.505 5.188 6.947 5 8 5s2.495.188 3.453.334a.497.497 0 0 1 .405.57L11.845 6z\"},\"child\":[]}]})(props);\n};\nexport function BsTranslate (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4.545 6.714 4.11 8H3l1.862-5h1.284L8 8H6.833l-.435-1.286zm1.634-.736L5.5 3.956h-.049l-.679 2.022z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M0 2a2 2 0 0 1 2-2h7a2 2 0 0 1 2 2v3h3a2 2 0 0 1 2 2v7a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2v-3H2a2 2 0 0 1-2-2zm2-1a1 1 0 0 0-1 1v7a1 1 0 0 0 1 1h7a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1zm7.138 9.995q.289.451.63.846c-.748.575-1.673 1.001-2.768 1.292.178.217.451.635.555.867 1.125-.359 2.08-.844 2.886-1.494.777.665 1.739 1.165 2.93 1.472.133-.254.414-.673.629-.89-1.125-.253-2.057-.694-2.82-1.284.681-.747 1.222-1.651 1.621-2.757H14V8h-3v1.047h.765c-.318.844-.74 1.546-1.272 2.13a6 6 0 0 1-.415-.492 2 2 0 0 1-.94.31\"},\"child\":[]}]})(props);\n};\nexport function BsTransparency (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 6.5a6.5 6.5 0 0 1 12.346-2.846 6.5 6.5 0 1 1-8.691 8.691A6.5 6.5 0 0 1 0 6.5m5.144 6.358a5.5 5.5 0 1 0 7.714-7.714 6.5 6.5 0 0 1-7.714 7.714m-.733-1.269q.546.226 1.144.33l-1.474-1.474q.104.597.33 1.144m2.614.386a5.5 5.5 0 0 0 1.173-.242L4.374 7.91a6 6 0 0 0-.296 1.118zm2.157-.672q.446-.25.838-.576L5.418 6.126a6 6 0 0 0-.587.826zm1.545-1.284q.325-.39.576-.837L6.953 4.83a6 6 0 0 0-.827.587l4.6 4.602Zm1.006-1.822q.183-.562.242-1.172L9.028 4.078q-.58.096-1.118.296l3.823 3.824Zm.186-2.642a5.5 5.5 0 0 0-.33-1.144 5.5 5.5 0 0 0-1.144-.33z\"},\"child\":[]}]})(props);\n};\nexport function BsTrashFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2.5 1a1 1 0 0 0-1 1v1a1 1 0 0 0 1 1H3v9a2 2 0 0 0 2 2h6a2 2 0 0 0 2-2V4h.5a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H10a1 1 0 0 0-1-1H7a1 1 0 0 0-1 1zm3 4a.5.5 0 0 1 .5.5v7a.5.5 0 0 1-1 0v-7a.5.5 0 0 1 .5-.5M8 5a.5.5 0 0 1 .5.5v7a.5.5 0 0 1-1 0v-7A.5.5 0 0 1 8 5m3 .5v7a.5.5 0 0 1-1 0v-7a.5.5 0 0 1 1 0\"},\"child\":[]}]})(props);\n};\nexport function BsTrash (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5.5 5.5A.5.5 0 0 1 6 6v6a.5.5 0 0 1-1 0V6a.5.5 0 0 1 .5-.5m2.5 0a.5.5 0 0 1 .5.5v6a.5.5 0 0 1-1 0V6a.5.5 0 0 1 .5-.5m3 .5a.5.5 0 0 0-1 0v6a.5.5 0 0 0 1 0z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M14.5 3a1 1 0 0 1-1 1H13v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V4h-.5a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1H6a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1h3.5a1 1 0 0 1 1 1zM4.118 4 4 4.059V13a1 1 0 0 0 1 1h6a1 1 0 0 0 1-1V4.059L11.882 4zM2.5 3h11V2h-11z\"},\"child\":[]}]})(props);\n};\nexport function BsTrash2Fill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2.037 3.225A.7.7 0 0 1 2 3c0-1.105 2.686-2 6-2s6 .895 6 2a.7.7 0 0 1-.037.225l-1.684 10.104A2 2 0 0 1 10.305 15H5.694a2 2 0 0 1-1.973-1.671zm9.89-.69C10.966 2.214 9.578 2 8 2c-1.58 0-2.968.215-3.926.534-.477.16-.795.327-.975.466.18.14.498.307.975.466C5.032 3.786 6.42 4 8 4s2.967-.215 3.926-.534c.477-.16.795-.327.975-.466-.18-.14-.498-.307-.975-.466z\"},\"child\":[]}]})(props);\n};\nexport function BsTrash2 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M14 3a.7.7 0 0 1-.037.225l-1.684 10.104A2 2 0 0 1 10.305 15H5.694a2 2 0 0 1-1.973-1.671L2.037 3.225A.7.7 0 0 1 2 3c0-1.105 2.686-2 6-2s6 .895 6 2M3.215 4.207l1.493 8.957a1 1 0 0 0 .986.836h4.612a1 1 0 0 0 .986-.836l1.493-8.957C11.69 4.689 9.954 5 8 5s-3.69-.311-4.785-.793\"},\"child\":[]}]})(props);\n};\nexport function BsTrash3Fill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M11 1.5v1h3.5a.5.5 0 0 1 0 1h-.538l-.853 10.66A2 2 0 0 1 11.115 16h-6.23a2 2 0 0 1-1.994-1.84L2.038 3.5H1.5a.5.5 0 0 1 0-1H5v-1A1.5 1.5 0 0 1 6.5 0h3A1.5 1.5 0 0 1 11 1.5m-5 0v1h4v-1a.5.5 0 0 0-.5-.5h-3a.5.5 0 0 0-.5.5M4.5 5.029l.5 8.5a.5.5 0 1 0 .998-.06l-.5-8.5a.5.5 0 1 0-.998.06m6.53-.528a.5.5 0 0 0-.528.47l-.5 8.5a.5.5 0 0 0 .998.058l.5-8.5a.5.5 0 0 0-.47-.528M8 4.5a.5.5 0 0 0-.5.5v8.5a.5.5 0 0 0 1 0V5a.5.5 0 0 0-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsTrash3 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.5 1h3a.5.5 0 0 1 .5.5v1H6v-1a.5.5 0 0 1 .5-.5M11 2.5v-1A1.5 1.5 0 0 0 9.5 0h-3A1.5 1.5 0 0 0 5 1.5v1H1.5a.5.5 0 0 0 0 1h.538l.853 10.66A2 2 0 0 0 4.885 16h6.23a2 2 0 0 0 1.994-1.84l.853-10.66h.538a.5.5 0 0 0 0-1zm1.958 1-.846 10.58a1 1 0 0 1-.997.92h-6.23a1 1 0 0 1-.997-.92L3.042 3.5zm-7.487 1a.5.5 0 0 1 .528.47l.5 8.5a.5.5 0 0 1-.998.06L5 5.03a.5.5 0 0 1 .47-.53Zm5.058 0a.5.5 0 0 1 .47.53l-.5 8.5a.5.5 0 1 1-.998-.06l.5-8.5a.5.5 0 0 1 .528-.47M8 4.5a.5.5 0 0 1 .5.5v8.5a.5.5 0 0 1-1 0V5a.5.5 0 0 1 .5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsTreeFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.416.223a.5.5 0 0 0-.832 0l-3 4.5A.5.5 0 0 0 5 5.5h.098L3.076 8.735A.5.5 0 0 0 3.5 9.5h.191l-1.638 3.276a.5.5 0 0 0 .447.724H7V16h2v-2.5h4.5a.5.5 0 0 0 .447-.724L12.31 9.5h.191a.5.5 0 0 0 .424-.765L10.902 5.5H11a.5.5 0 0 0 .416-.777z\"},\"child\":[]}]})(props);\n};\nexport function BsTree (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.416.223a.5.5 0 0 0-.832 0l-3 4.5A.5.5 0 0 0 5 5.5h.098L3.076 8.735A.5.5 0 0 0 3.5 9.5h.191l-1.638 3.276a.5.5 0 0 0 .447.724H7V16h2v-2.5h4.5a.5.5 0 0 0 .447-.724L12.31 9.5h.191a.5.5 0 0 0 .424-.765L10.902 5.5H11a.5.5 0 0 0 .416-.777zM6.437 4.758A.5.5 0 0 0 6 4.5h-.066L8 1.401 10.066 4.5H10a.5.5 0 0 0-.424.765L11.598 8.5H11.5a.5.5 0 0 0-.447.724L12.69 12.5H3.309l1.638-3.276A.5.5 0 0 0 4.5 8.5h-.098l2.022-3.235a.5.5 0 0 0 .013-.507\"},\"child\":[]}]})(props);\n};\nexport function BsTrello (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M14.1 0H1.903C.852 0 .002.85 0 1.9v12.19A1.9 1.9 0 0 0 1.902 16h12.199A1.9 1.9 0 0 0 16 14.09V1.9A1.9 1.9 0 0 0 14.1 0M7 11.367a.636.636 0 0 1-.64.633H3.593a.633.633 0 0 1-.63-.633V3.583c0-.348.281-.631.63-.633h2.765c.35.002.632.284.633.633zm6.052-3.5a.633.633 0 0 1-.64.633h-2.78A.636.636 0 0 1 9 7.867V3.583a.636.636 0 0 1 .633-.633h2.778c.35.002.631.285.631.633z\"},\"child\":[]}]})(props);\n};\nexport function BsTriangleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M7.022 1.566a1.13 1.13 0 0 1 1.96 0l6.857 11.667c.457.778-.092 1.767-.98 1.767H1.144c-.889 0-1.437-.99-.98-1.767z\"},\"child\":[]}]})(props);\n};\nexport function BsTriangleHalf (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.065 2.016A.13.13 0 0 0 8.002 2v11.983l6.856.017a.12.12 0 0 0 .066-.017.2.2 0 0 0 .054-.06.18.18 0 0 0-.002-.183L8.12 2.073a.15.15 0 0 0-.054-.057zm-1.043-.45a1.13 1.13 0 0 1 1.96 0l6.856 11.667c.458.778-.091 1.767-.98 1.767H1.146c-.889 0-1.437-.99-.98-1.767z\"},\"child\":[]}]})(props);\n};\nexport function BsTriangle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.938 2.016A.13.13 0 0 1 8.002 2a.13.13 0 0 1 .063.016.15.15 0 0 1 .054.057l6.857 11.667c.036.06.035.124.002.183a.2.2 0 0 1-.054.06.1.1 0 0 1-.066.017H1.146a.1.1 0 0 1-.066-.017.2.2 0 0 1-.054-.06.18.18 0 0 1 .002-.183L7.884 2.073a.15.15 0 0 1 .054-.057m1.044-.45a1.13 1.13 0 0 0-1.96 0L.165 13.233c-.457.778.091 1.767.98 1.767h13.713c.889 0 1.438-.99.98-1.767z\"},\"child\":[]}]})(props);\n};\nexport function BsTrophyFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2.5.5A.5.5 0 0 1 3 0h10a.5.5 0 0 1 .5.5q0 .807-.034 1.536a3 3 0 1 1-1.133 5.89c-.79 1.865-1.878 2.777-2.833 3.011v2.173l1.425.356c.194.048.377.135.537.255L13.3 15.1a.5.5 0 0 1-.3.9H3a.5.5 0 0 1-.3-.9l1.838-1.379c.16-.12.343-.207.537-.255L6.5 13.11v-2.173c-.955-.234-2.043-1.146-2.833-3.012a3 3 0 1 1-1.132-5.89A33 33 0 0 1 2.5.5m.099 2.54a2 2 0 0 0 .72 3.935c-.333-1.05-.588-2.346-.72-3.935m10.083 3.935a2 2 0 0 0 .72-3.935c-.133 1.59-.388 2.885-.72 3.935\"},\"child\":[]}]})(props);\n};\nexport function BsTrophy (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2.5.5A.5.5 0 0 1 3 0h10a.5.5 0 0 1 .5.5q0 .807-.034 1.536a3 3 0 1 1-1.133 5.89c-.79 1.865-1.878 2.777-2.833 3.011v2.173l1.425.356c.194.048.377.135.537.255L13.3 15.1a.5.5 0 0 1-.3.9H3a.5.5 0 0 1-.3-.9l1.838-1.379c.16-.12.343-.207.537-.255L6.5 13.11v-2.173c-.955-.234-2.043-1.146-2.833-3.012a3 3 0 1 1-1.132-5.89A33 33 0 0 1 2.5.5m.099 2.54a2 2 0 0 0 .72 3.935c-.333-1.05-.588-2.346-.72-3.935m10.083 3.935a2 2 0 0 0 .72-3.935c-.133 1.59-.388 2.885-.72 3.935M3.504 1q.01.775.056 1.469c.13 2.028.457 3.546.87 4.667C5.294 9.48 6.484 10 7 10a.5.5 0 0 1 .5.5v2.61a1 1 0 0 1-.757.97l-1.426.356a.5.5 0 0 0-.179.085L4.5 15h7l-.638-.479a.5.5 0 0 0-.18-.085l-1.425-.356a1 1 0 0 1-.757-.97V10.5A.5.5 0 0 1 9 10c.516 0 1.706-.52 2.57-2.864.413-1.12.74-2.64.87-4.667q.045-.694.056-1.469z\"},\"child\":[]}]})(props);\n};\nexport function BsTropicalStorm (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 9.5a2 2 0 1 0 0-4 2 2 0 0 0 0 4\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M9.5 2c-.9 0-1.75.216-2.501.6A5 5 0 0 1 13 7.5a6.5 6.5 0 1 1-13 0 .5.5 0 0 1 1 0 5.5 5.5 0 0 0 8.001 4.9A5 5 0 0 1 3 7.5a6.5 6.5 0 0 1 13 0 .5.5 0 0 1-1 0A5.5 5.5 0 0 0 9.5 2M8 3.5a4 4 0 1 0 0 8 4 4 0 0 0 0-8\"},\"child\":[]}]})(props);\n};\nexport function BsTruckFlatbed (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M11.5 4a.5.5 0 0 1 .5.5V5h1.02a1.5 1.5 0 0 1 1.17.563l1.481 1.85a1.5 1.5 0 0 1 .329.938V10.5a1.5 1.5 0 0 1-1.5 1.5H14a2 2 0 1 1-4 0H5a2 2 0 1 1-4 0 1 1 0 0 1-1-1v-1h11V4.5a.5.5 0 0 1 .5-.5M3 11a1 1 0 1 0 0 2 1 1 0 0 0 0-2m9 0a1 1 0 1 0 0 2 1 1 0 0 0 0-2m1.732 0h.768a.5.5 0 0 0 .5-.5V8.35a.5.5 0 0 0-.11-.312l-1.48-1.85A.5.5 0 0 0 13.02 6H12v4a2 2 0 0 1 1.732 1\"},\"child\":[]}]})(props);\n};\nexport function BsTruckFrontFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3.5 0A2.5 2.5 0 0 0 1 2.5v9c0 .818.393 1.544 1 2v2a.5.5 0 0 0 .5.5h2a.5.5 0 0 0 .5-.5V14h6v1.5a.5.5 0 0 0 .5.5h2a.5.5 0 0 0 .5-.5v-2c.607-.456 1-1.182 1-2v-9A2.5 2.5 0 0 0 12.5 0zM3 3a1 1 0 0 1 1-1h8a1 1 0 0 1 1 1v3.9c0 .625-.562 1.092-1.17.994C10.925 7.747 9.208 7.5 8 7.5s-2.925.247-3.83.394A1.008 1.008 0 0 1 3 6.9zm1 9a1 1 0 1 1 0-2 1 1 0 0 1 0 2m8 0a1 1 0 1 1 0-2 1 1 0 0 1 0 2m-5-2h2a1 1 0 1 1 0 2H7a1 1 0 1 1 0-2\"},\"child\":[]}]})(props);\n};\nexport function BsTruckFront (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5 11a1 1 0 1 1-2 0 1 1 0 0 1 2 0m8 0a1 1 0 1 1-2 0 1 1 0 0 1 2 0m-6-1a1 1 0 1 0 0 2h2a1 1 0 1 0 0-2zM4 2a1 1 0 0 0-1 1v3.9c0 .625.562 1.092 1.17.994C5.075 7.747 6.792 7.5 8 7.5s2.925.247 3.83.394A1.008 1.008 0 0 0 13 6.9V3a1 1 0 0 0-1-1zm0 1h8v3.9q0 .002 0 0l-.002.004-.005.002h-.004C11.088 6.761 9.299 6.5 8 6.5s-3.088.26-3.99.406h-.003l-.005-.002L4 6.9q0 .002 0 0z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M1 2.5A2.5 2.5 0 0 1 3.5 0h9A2.5 2.5 0 0 1 15 2.5v9c0 .818-.393 1.544-1 2v2a.5.5 0 0 1-.5.5h-2a.5.5 0 0 1-.5-.5V14H5v1.5a.5.5 0 0 1-.5.5h-2a.5.5 0 0 1-.5-.5v-2a2.5 2.5 0 0 1-1-2zM3.5 1A1.5 1.5 0 0 0 2 2.5v9A1.5 1.5 0 0 0 3.5 13h9a1.5 1.5 0 0 0 1.5-1.5v-9A1.5 1.5 0 0 0 12.5 1z\"},\"child\":[]}]})(props);\n};\nexport function BsTruck (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 3.5A1.5 1.5 0 0 1 1.5 2h9A1.5 1.5 0 0 1 12 3.5V5h1.02a1.5 1.5 0 0 1 1.17.563l1.481 1.85a1.5 1.5 0 0 1 .329.938V10.5a1.5 1.5 0 0 1-1.5 1.5H14a2 2 0 1 1-4 0H5a2 2 0 1 1-3.998-.085A1.5 1.5 0 0 1 0 10.5zm1.294 7.456A2 2 0 0 1 4.732 11h5.536a2 2 0 0 1 .732-.732V3.5a.5.5 0 0 0-.5-.5h-9a.5.5 0 0 0-.5.5v7a.5.5 0 0 0 .294.456M12 10a2 2 0 0 1 1.732 1h.768a.5.5 0 0 0 .5-.5V8.35a.5.5 0 0 0-.11-.312l-1.48-1.85A.5.5 0 0 0 13.02 6H12zm-9 1a1 1 0 1 0 0 2 1 1 0 0 0 0-2m9 0a1 1 0 1 0 0 2 1 1 0 0 0 0-2\"},\"child\":[]}]})(props);\n};\nexport function BsTsunami (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M.036 12.314a.5.5 0 0 1 .65-.278l1.757.703a1.5 1.5 0 0 0 1.114 0l1.014-.406a2.5 2.5 0 0 1 1.857 0l1.015.406a1.5 1.5 0 0 0 1.114 0l1.014-.406a2.5 2.5 0 0 1 1.857 0l1.015.406a1.5 1.5 0 0 0 1.114 0l1.757-.703a.5.5 0 1 1 .372.928l-1.758.703a2.5 2.5 0 0 1-1.857 0l-1.014-.406a1.5 1.5 0 0 0-1.114 0l-1.015.406a2.5 2.5 0 0 1-1.857 0l-1.014-.406a1.5 1.5 0 0 0-1.114 0l-1.015.406a2.5 2.5 0 0 1-1.857 0l-1.757-.703a.5.5 0 0 1-.278-.65m0 2a.5.5 0 0 1 .65-.278l1.757.703a1.5 1.5 0 0 0 1.114 0l1.014-.406a2.5 2.5 0 0 1 1.857 0l1.015.406a1.5 1.5 0 0 0 1.114 0l1.014-.406a2.5 2.5 0 0 1 1.857 0l1.015.406a1.5 1.5 0 0 0 1.114 0l1.757-.703a.5.5 0 1 1 .372.928l-1.758.703a2.5 2.5 0 0 1-1.857 0l-1.014-.406a1.5 1.5 0 0 0-1.114 0l-1.015.406a2.5 2.5 0 0 1-1.857 0l-1.014-.406a1.5 1.5 0 0 0-1.114 0l-1.015.406a2.5 2.5 0 0 1-1.857 0l-1.757-.703a.5.5 0 0 1-.278-.65M2.662 8.08c-.456 1.063-.994 2.098-1.842 2.804a.5.5 0 0 1-.64-.768c.652-.544 1.114-1.384 1.564-2.43.14-.328.281-.68.427-1.044.302-.754.624-1.559 1.01-2.308C3.763 3.2 4.528 2.105 5.7 1.299 6.877.49 8.418 0 10.5 0c1.463 0 2.511.4 3.179 1.058.67.66.893 1.518.819 2.302-.074.771-.441 1.516-1.02 1.965a1.88 1.88 0 0 1-1.904.27c-.65.642-.907 1.679-.71 2.614C11.076 9.215 11.784 10 13 10h2.5a.5.5 0 0 1 0 1H13c-1.784 0-2.826-1.215-3.114-2.585-.232-1.1.005-2.373.758-3.284L10.5 5.06l-.777.388a.5.5 0 0 1-.447 0l-1-.5a.5.5 0 0 1 .447-.894l.777.388.776-.388a.5.5 0 0 1 .447 0l1 .5.034.018c.44.264.81.195 1.108-.036.328-.255.586-.729.637-1.27.05-.529-.1-1.076-.525-1.495s-1.19-.77-2.477-.77c-1.918 0-3.252.448-4.232 1.123C5.283 2.8 4.61 3.738 4.07 4.79c-.365.71-.655 1.433-.945 2.16-.15.376-.301.753-.463 1.13\"},\"child\":[]}]})(props);\n};\nexport function BsTvFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2.5 13.5A.5.5 0 0 1 3 13h10a.5.5 0 0 1 0 1H3a.5.5 0 0 1-.5-.5M2 2h12s2 0 2 2v6s0 2-2 2H2s-2 0-2-2V4s0-2 2-2\"},\"child\":[]}]})(props);\n};\nexport function BsTv (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2.5 13.5A.5.5 0 0 1 3 13h10a.5.5 0 0 1 0 1H3a.5.5 0 0 1-.5-.5M13.991 3l.024.001a1.5 1.5 0 0 1 .538.143.76.76 0 0 1 .302.254c.067.1.145.277.145.602v5.991l-.001.024a1.5 1.5 0 0 1-.143.538.76.76 0 0 1-.254.302c-.1.067-.277.145-.602.145H2.009l-.024-.001a1.5 1.5 0 0 1-.538-.143.76.76 0 0 1-.302-.254C1.078 10.502 1 10.325 1 10V4.009l.001-.024a1.5 1.5 0 0 1 .143-.538.76.76 0 0 1 .254-.302C1.498 3.078 1.675 3 2 3zM14 2H2C0 2 0 4 0 4v6c0 2 2 2 2 2h12c2 0 2-2 2-2V4c0-2-2-2-2-2\"},\"child\":[]}]})(props);\n};\nexport function BsTwitch (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3.857 0 1 2.857v10.286h3.429V16l2.857-2.857H9.57L14.714 8V0zm9.714 7.429-2.285 2.285H9l-2 2v-2H4.429V1.143h9.142z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M11.857 3.143h-1.143V6.57h1.143zm-3.143 0H7.571V6.57h1.143z\"},\"child\":[]}]})(props);\n};\nexport function BsTwitterX (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12.6.75h2.454l-5.36 6.142L16 15.25h-4.937l-3.867-5.07-4.425 5.07H.316l5.733-6.57L0 .75h5.063l3.495 4.633L12.601.75Zm-.86 13.028h1.36L4.323 2.145H2.865z\"},\"child\":[]}]})(props);\n};\nexport function BsTwitter (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5.026 15c6.038 0 9.341-5.003 9.341-9.334q.002-.211-.006-.422A6.7 6.7 0 0 0 16 3.542a6.7 6.7 0 0 1-1.889.518 3.3 3.3 0 0 0 1.447-1.817 6.5 6.5 0 0 1-2.087.793A3.286 3.286 0 0 0 7.875 6.03a9.32 9.32 0 0 1-6.767-3.429 3.29 3.29 0 0 0 1.018 4.382A3.3 3.3 0 0 1 .64 6.575v.045a3.29 3.29 0 0 0 2.632 3.218 3.2 3.2 0 0 1-.865.115 3 3 0 0 1-.614-.057 3.28 3.28 0 0 0 3.067 2.277A6.6 6.6 0 0 1 .78 13.58a6 6 0 0 1-.78-.045A9.34 9.34 0 0 0 5.026 15\"},\"child\":[]}]})(props);\n};\nexport function BsTypeBold (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.21 13c2.106 0 3.412-1.087 3.412-2.823 0-1.306-.984-2.283-2.324-2.386v-.055a2.176 2.176 0 0 0 1.852-2.14c0-1.51-1.162-2.46-3.014-2.46H3.843V13zM5.908 4.674h1.696c.963 0 1.517.451 1.517 1.244 0 .834-.629 1.32-1.73 1.32H5.908V4.673zm0 6.788V8.598h1.73c1.217 0 1.88.492 1.88 1.415 0 .943-.643 1.449-1.832 1.449H5.907z\"},\"child\":[]}]})(props);\n};\nexport function BsTypeH1 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.648 13V3H6.3v4.234H1.348V3H0v10h1.348V8.421H6.3V13zM14 13V3h-1.333l-2.381 1.766V6.12L12.6 4.443h.066V13z\"},\"child\":[]}]})(props);\n};\nexport function BsTypeH2 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.495 13V3.201H6.174v4.15H1.32V3.2H0V13h1.32V8.513h4.854V13zm3.174-7.071v-.05c0-.934.66-1.752 1.801-1.752 1.005 0 1.76.639 1.76 1.651 0 .898-.582 1.58-1.12 2.19l-3.69 4.2V13h6.331v-1.149h-4.458v-.079L13.9 8.786c.919-1.048 1.666-1.874 1.666-3.101C15.565 4.149 14.35 3 12.499 3 10.46 3 9.384 4.393 9.384 5.879v.05z\"},\"child\":[]}]})(props);\n};\nexport function BsTypeH3 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M11.07 8.4h1.049c1.174 0 1.99.69 2.004 1.724s-.802 1.786-2.068 1.779c-1.11-.007-1.905-.605-1.99-1.357h-1.21C8.926 11.91 10.116 13 12.028 13c1.99 0 3.439-1.188 3.404-2.87-.028-1.553-1.287-2.221-2.096-2.313v-.07c.724-.127 1.814-.935 1.772-2.293-.035-1.392-1.21-2.468-3.038-2.454-1.927.007-2.94 1.196-2.981 2.426h1.23c.064-.71.732-1.336 1.744-1.336 1.027 0 1.744.64 1.744 1.568.007.95-.738 1.639-1.744 1.639h-.991V8.4ZM7.495 13V3.201H6.174v4.15H1.32V3.2H0V13h1.32V8.513h4.854V13z\"},\"child\":[]}]})(props);\n};\nexport function BsTypeH4 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M13.007 3H15v10h-1.29v-2.051H8.854v-1.18C10.1 7.513 11.586 5.256 13.007 3m-2.82 6.777h3.524v-5.62h-.074a95 95 0 0 0-3.45 5.554zM7.495 13V3.201H6.174v4.15H1.32V3.2H0V13h1.32V8.513h4.854V13z\"},\"child\":[]}]})(props);\n};\nexport function BsTypeH5 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9 10.516h1.264c.193.976 1.112 1.364 2.01 1.364 1.005 0 2.067-.782 2.067-2.247 0-1.292-.983-2.082-2.089-2.082-1.012 0-1.658.596-1.924 1.077h-1.12L9.646 3h5.535v1.141h-4.415L10.5 7.28h.072c.201-.316.883-.84 1.967-.84 1.709 0 3.13 1.177 3.13 3.158 0 2.025-1.407 3.403-3.475 3.403-1.809 0-3.1-1.048-3.194-2.484ZM7.495 13V3.201H6.174v4.15H1.32V3.2H0V13h1.32V8.512h4.854V13z\"},\"child\":[]}]})(props);\n};\nexport function BsTypeH6 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M15.596 5.178H14.3c-.106-.444-.62-1.072-1.706-1.072-1.332 0-2.325 1.269-2.325 3.947h.07c.268-.67 1.043-1.445 2.445-1.445 1.494 0 3.017 1.064 3.017 3.073C15.8 11.795 14.37 13 12.48 13c-1.036 0-2.093-.36-2.77-1.452C9.276 10.836 9 9.808 9 8.37 9 4.656 10.494 3 12.636 3c1.812 0 2.883 1.113 2.96 2.178m-5.151 4.566c0 1.367.944 2.15 2.043 2.15 1.128 0 2.037-.684 2.037-2.136 0-1.41-1-2.065-2.03-2.065-1.19 0-2.05.853-2.05 2.051M7.495 13V3.201H6.174v4.15H1.32V3.2H0V13h1.32V8.513h4.854V13z\"},\"child\":[]}]})(props);\n};\nexport function BsTypeItalic (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.991 11.674 9.53 4.455c.123-.595.246-.71 1.347-.807l.11-.52H7.211l-.11.52c1.06.096 1.128.212 1.005.807L6.57 11.674c-.123.595-.246.71-1.346.806l-.11.52h3.774l.11-.52c-1.06-.095-1.129-.211-1.006-.806z\"},\"child\":[]}]})(props);\n};\nexport function BsTypeStrikethrough (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.333 5.686c0 .31.083.581.27.814H5.166a2.8 2.8 0 0 1-.099-.76c0-1.627 1.436-2.768 3.48-2.768 1.969 0 3.39 1.175 3.445 2.85h-1.23c-.11-1.08-.964-1.743-2.25-1.743-1.23 0-2.18.602-2.18 1.607zm2.194 7.478c-2.153 0-3.589-1.107-3.705-2.81h1.23c.144 1.06 1.129 1.703 2.544 1.703 1.34 0 2.31-.705 2.31-1.675 0-.827-.547-1.374-1.914-1.675L8.046 8.5H1v-1h14v1h-3.504c.468.437.675.994.675 1.697 0 1.826-1.436 2.967-3.644 2.967\"},\"child\":[]}]})(props);\n};\nexport function BsTypeUnderline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5.313 3.136h-1.23V9.54c0 2.105 1.47 3.623 3.917 3.623s3.917-1.518 3.917-3.623V3.136h-1.23v6.323c0 1.49-.978 2.57-2.687 2.57s-2.687-1.08-2.687-2.57zM12.5 15h-9v-1h9z\"},\"child\":[]}]})(props);\n};\nexport function BsType (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m2.244 13.081.943-2.803H6.66l.944 2.803H8.86L5.54 3.75H4.322L1 13.081zm2.7-7.923L6.34 9.314H3.51l1.4-4.156zm9.146 7.027h.035v.896h1.128V8.125c0-1.51-1.114-2.345-2.646-2.345-1.736 0-2.59.916-2.666 2.174h1.108c.068-.718.595-1.19 1.517-1.19.971 0 1.518.52 1.518 1.464v.731H12.19c-1.647.007-2.522.8-2.522 2.058 0 1.319.957 2.18 2.345 2.18 1.06 0 1.716-.43 2.078-1.011zm-1.763.035c-.752 0-1.456-.397-1.456-1.244 0-.65.424-1.115 1.408-1.115h1.805v.834c0 .896-.752 1.525-1.757 1.525\"},\"child\":[]}]})(props);\n};\nexport function BsUbuntu (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2.273 9.53a2.273 2.273 0 1 0 0-4.546 2.273 2.273 0 0 0 0 4.547Zm9.467-4.984a2.273 2.273 0 1 0 0-4.546 2.273 2.273 0 0 0 0 4.546M7.4 13.108a5.54 5.54 0 0 1-3.775-2.88 3.27 3.27 0 0 1-1.944.24 7.4 7.4 0 0 0 5.328 4.465c.53.113 1.072.169 1.614.166a3.25 3.25 0 0 1-.666-1.9 6 6 0 0 1-.557-.091m3.828 2.285a2.273 2.273 0 1 0 0-4.546 2.273 2.273 0 0 0 0 4.546m3.163-3.108a7.44 7.44 0 0 0 .373-8.726 3.3 3.3 0 0 1-1.278 1.498 5.57 5.57 0 0 1-.183 5.535 3.26 3.26 0 0 1 1.088 1.693M2.098 3.998a3.3 3.3 0 0 1 1.897.486 5.54 5.54 0 0 1 4.464-2.388c.037-.67.277-1.313.69-1.843a7.47 7.47 0 0 0-7.051 3.745\"},\"child\":[]}]})(props);\n};\nexport function BsUiChecksGrid (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 10h3a1 1 0 0 1 1 1v3a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1v-3a1 1 0 0 1 1-1m9-9h3a1 1 0 0 1 1 1v3a1 1 0 0 1-1 1h-3a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1m0 9a1 1 0 0 0-1 1v3a1 1 0 0 0 1 1h3a1 1 0 0 0 1-1v-3a1 1 0 0 0-1-1zm0-10a2 2 0 0 0-2 2v3a2 2 0 0 0 2 2h3a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zM2 9a2 2 0 0 0-2 2v3a2 2 0 0 0 2 2h3a2 2 0 0 0 2-2v-3a2 2 0 0 0-2-2zm7 2a2 2 0 0 1 2-2h3a2 2 0 0 1 2 2v3a2 2 0 0 1-2 2h-3a2 2 0 0 1-2-2zM0 2a2 2 0 0 1 2-2h3a2 2 0 0 1 2 2v3a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm5.354.854a.5.5 0 1 0-.708-.708L3 3.793l-.646-.647a.5.5 0 1 0-.708.708l1 1a.5.5 0 0 0 .708 0z\"},\"child\":[]}]})(props);\n};\nexport function BsUiChecks (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7 2.5a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-7a.5.5 0 0 1-.5-.5zM2 1a2 2 0 0 0-2 2v2a2 2 0 0 0 2 2h2a2 2 0 0 0 2-2V3a2 2 0 0 0-2-2zm0 8a2 2 0 0 0-2 2v2a2 2 0 0 0 2 2h2a2 2 0 0 0 2-2v-2a2 2 0 0 0-2-2zm.854-3.646a.5.5 0 0 1-.708 0l-1-1a.5.5 0 1 1 .708-.708l.646.647 1.646-1.647a.5.5 0 1 1 .708.708zm0 8a.5.5 0 0 1-.708 0l-1-1a.5.5 0 0 1 .708-.708l.646.647 1.646-1.647a.5.5 0 0 1 .708.708zM7 10.5a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-7a.5.5 0 0 1-.5-.5zm0-5a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5m0 8a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsUiRadiosGrid (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3.5 15a2.5 2.5 0 1 0 0-5 2.5 2.5 0 0 0 0 5m9-9a2.5 2.5 0 1 0 0-5 2.5 2.5 0 0 0 0 5m0 9a2.5 2.5 0 1 1 0-5 2.5 2.5 0 0 1 0 5M16 3.5a3.5 3.5 0 1 1-7 0 3.5 3.5 0 0 1 7 0m-9 9a3.5 3.5 0 1 1-7 0 3.5 3.5 0 0 1 7 0m5.5 3.5a3.5 3.5 0 1 0 0-7 3.5 3.5 0 0 0 0 7m-9-11a1.5 1.5 0 1 1 0-3 1.5 1.5 0 0 1 0 3m0 2a3.5 3.5 0 1 0 0-7 3.5 3.5 0 0 0 0 7\"},\"child\":[]}]})(props);\n};\nexport function BsUiRadios (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7 2.5a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-7a.5.5 0 0 1-.5-.5zM0 12a3 3 0 1 1 6 0 3 3 0 0 1-6 0m7-1.5a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-7a.5.5 0 0 1-.5-.5zm0-5a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5m0 8a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5M3 1a3 3 0 1 0 0 6 3 3 0 0 0 0-6m0 4.5a1.5 1.5 0 1 1 0-3 1.5 1.5 0 0 1 0 3\"},\"child\":[]}]})(props);\n};\nexport function BsUmbrellaFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M8 0a.5.5 0 0 1 .5.5v.514C12.625 1.238 16 4.22 16 8c0 0 0 .5-.5.5-.149 0-.352-.145-.352-.145l-.004-.004-.025-.023a3.5 3.5 0 0 0-.555-.394A3.17 3.17 0 0 0 13 7.5c-.638 0-1.178.213-1.564.434a3.5 3.5 0 0 0-.555.394l-.025.023-.003.003s-.204.146-.353.146-.352-.145-.352-.145l-.004-.004-.025-.023a3.5 3.5 0 0 0-.555-.394 3.3 3.3 0 0 0-1.064-.39V13.5H8h.5v.039l-.005.083a3 3 0 0 1-.298 1.102 2.26 2.26 0 0 1-.763.88C7.06 15.851 6.587 16 6 16s-1.061-.148-1.434-.396a2.26 2.26 0 0 1-.763-.88 3 3 0 0 1-.302-1.185v-.025l-.001-.009v-.003s0-.002.5-.002h-.5V13a.5.5 0 0 1 1 0v.506l.003.044a2 2 0 0 0 .195.726c.095.191.23.367.423.495.19.127.466.229.879.229s.689-.102.879-.229c.193-.128.328-.304.424-.495a2 2 0 0 0 .197-.77V7.544a3.3 3.3 0 0 0-1.064.39 3.5 3.5 0 0 0-.58.417l-.004.004S5.65 8.5 5.5 8.5s-.352-.145-.352-.145l-.004-.004a3.5 3.5 0 0 0-.58-.417A3.17 3.17 0 0 0 3 7.5c-.638 0-1.177.213-1.564.434a3.5 3.5 0 0 0-.58.417l-.004.004S.65 8.5.5 8.5C0 8.5 0 8 0 8c0-3.78 3.375-6.762 7.5-6.986V.5A.5.5 0 0 1 8 0\"},\"child\":[]}]})(props);\n};\nexport function BsUmbrella (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 0a.5.5 0 0 1 .5.5v.514C12.625 1.238 16 4.22 16 8c0 0 0 .5-.5.5-.149 0-.352-.145-.352-.145l-.004-.004-.025-.023a3.5 3.5 0 0 0-.555-.394A3.17 3.17 0 0 0 13 7.5c-.638 0-1.178.213-1.564.434a3.5 3.5 0 0 0-.555.394l-.025.023-.003.003s-.204.146-.353.146-.352-.145-.352-.145l-.004-.004-.025-.023a3.5 3.5 0 0 0-.555-.394 3.3 3.3 0 0 0-1.064-.39V13.5H8h.5v.039l-.005.083a3 3 0 0 1-.298 1.102 2.26 2.26 0 0 1-.763.88C7.06 15.851 6.587 16 6 16s-1.061-.148-1.434-.396a2.26 2.26 0 0 1-.763-.88 3 3 0 0 1-.302-1.185v-.025l-.001-.009v-.003s0-.002.5-.002h-.5V13a.5.5 0 0 1 1 0v.506l.003.044a2 2 0 0 0 .195.726c.095.191.23.367.423.495.19.127.466.229.879.229s.689-.102.879-.229c.193-.128.328-.304.424-.495a2 2 0 0 0 .197-.77V7.544a3.3 3.3 0 0 0-1.064.39 3.5 3.5 0 0 0-.58.417l-.004.004S5.65 8.5 5.5 8.5s-.352-.145-.352-.145l-.004-.004a3.5 3.5 0 0 0-.58-.417A3.17 3.17 0 0 0 3 7.5c-.638 0-1.177.213-1.564.434a3.5 3.5 0 0 0-.58.417l-.004.004S.65 8.5.5 8.5C0 8.5 0 8 0 8c0-3.78 3.375-6.762 7.5-6.986V.5A.5.5 0 0 1 8 0M6.577 2.123c-2.833.5-4.99 2.458-5.474 4.854A4.1 4.1 0 0 1 3 6.5c.806 0 1.48.25 1.962.511a9.7 9.7 0 0 1 .344-2.358c.242-.868.64-1.765 1.271-2.53m-.615 4.93A4.16 4.16 0 0 1 8 6.5a4.16 4.16 0 0 1 2.038.553 8.7 8.7 0 0 0-.307-2.13C9.434 3.858 8.898 2.83 8 2.117c-.898.712-1.434 1.74-1.731 2.804a8.7 8.7 0 0 0-.307 2.131zm3.46-4.93c.631.765 1.03 1.662 1.272 2.53.233.833.328 1.66.344 2.358A4.14 4.14 0 0 1 13 6.5c.77 0 1.42.23 1.897.477-.484-2.396-2.641-4.355-5.474-4.854z\"},\"child\":[]}]})(props);\n};\nexport function BsUnindent (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M13 8a.5.5 0 0 0-.5-.5H5.707l2.147-2.146a.5.5 0 1 0-.708-.708l-3 3a.5.5 0 0 0 0 .708l3 3a.5.5 0 0 0 .708-.708L5.707 8.5H12.5A.5.5 0 0 0 13 8\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M3.5 4a.5.5 0 0 0-.5.5v7a.5.5 0 0 0 1 0v-7a.5.5 0 0 0-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsUnion (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 2a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v2h2a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2v-2H2a2 2 0 0 1-2-2z\"},\"child\":[]}]})(props);\n};\nexport function BsUnity (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M15 11.2V3.733L8.61 0v2.867l2.503 1.466c.099.067.099.2 0 .234L8.148 6.3c-.099.067-.197.033-.263 0L4.92 4.567c-.099-.034-.099-.2 0-.234l2.504-1.466V0L1 3.733V11.2v-.033.033l2.438-1.433V6.833c0-.1.131-.166.197-.133L6.6 8.433c.099.067.132.134.132.234v3.466c0 .1-.132.167-.198.134L4.031 10.8l-2.438 1.433L7.983 16l6.391-3.733-2.438-1.434L9.434 12.3c-.099.067-.198 0-.198-.133V8.7c0-.1.066-.2.132-.233l2.965-1.734c.099-.066.197 0 .197.134V9.8z\"},\"child\":[]}]})(props);\n};\nexport function BsUniversalAccessCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 4.143A1.071 1.071 0 1 0 8 2a1.071 1.071 0 0 0 0 2.143m-4.668 1.47 3.24.316v2.5l-.323 4.585A.383.383 0 0 0 7 13.14l.826-4.017c.045-.18.301-.18.346 0L9 13.139a.383.383 0 0 0 .752-.125L9.43 8.43v-2.5l3.239-.316a.38.38 0 0 0-.047-.756H3.379a.38.38 0 0 0-.047.756Z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8 0a8 8 0 1 0 0 16A8 8 0 0 0 8 0M1 8a7 7 0 1 1 14 0A7 7 0 0 1 1 8\"},\"child\":[]}]})(props);\n};\nexport function BsUniversalAccess (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.5 1.5a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0M6 5.5l-4.535-.442A.531.531 0 0 1 1.531 4H14.47a.531.531 0 0 1 .066 1.058L10 5.5V9l.452 6.42a.535.535 0 0 1-1.053.174L8.243 9.97c-.064-.252-.422-.252-.486 0l-1.156 5.624a.535.535 0 0 1-1.053-.174L6 9z\"},\"child\":[]}]})(props);\n};\nexport function BsUnlockFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M11 1a2 2 0 0 0-2 2v4a2 2 0 0 1 2 2v5a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2V9a2 2 0 0 1 2-2h5V3a3 3 0 0 1 6 0v4a.5.5 0 0 1-1 0V3a2 2 0 0 0-2-2\"},\"child\":[]}]})(props);\n};\nexport function BsUnlock (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M11 1a2 2 0 0 0-2 2v4a2 2 0 0 1 2 2v5a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2V9a2 2 0 0 1 2-2h5V3a3 3 0 0 1 6 0v4a.5.5 0 0 1-1 0V3a2 2 0 0 0-2-2M3 8a1 1 0 0 0-1 1v5a1 1 0 0 0 1 1h6a1 1 0 0 0 1-1V9a1 1 0 0 0-1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsUpcScan (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M1.5 1a.5.5 0 0 0-.5.5v3a.5.5 0 0 1-1 0v-3A1.5 1.5 0 0 1 1.5 0h3a.5.5 0 0 1 0 1zM11 .5a.5.5 0 0 1 .5-.5h3A1.5 1.5 0 0 1 16 1.5v3a.5.5 0 0 1-1 0v-3a.5.5 0 0 0-.5-.5h-3a.5.5 0 0 1-.5-.5M.5 11a.5.5 0 0 1 .5.5v3a.5.5 0 0 0 .5.5h3a.5.5 0 0 1 0 1h-3A1.5 1.5 0 0 1 0 14.5v-3a.5.5 0 0 1 .5-.5m15 0a.5.5 0 0 1 .5.5v3a1.5 1.5 0 0 1-1.5 1.5h-3a.5.5 0 0 1 0-1h3a.5.5 0 0 0 .5-.5v-3a.5.5 0 0 1 .5-.5M3 4.5a.5.5 0 0 1 1 0v7a.5.5 0 0 1-1 0zm2 0a.5.5 0 0 1 1 0v7a.5.5 0 0 1-1 0zm2 0a.5.5 0 0 1 1 0v7a.5.5 0 0 1-1 0zm2 0a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v7a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5zm3 0a.5.5 0 0 1 1 0v7a.5.5 0 0 1-1 0z\"},\"child\":[]}]})(props);\n};\nexport function BsUpc (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3 4.5a.5.5 0 0 1 1 0v7a.5.5 0 0 1-1 0zm2 0a.5.5 0 0 1 1 0v7a.5.5 0 0 1-1 0zm2 0a.5.5 0 0 1 1 0v7a.5.5 0 0 1-1 0zm2 0a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v7a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5zm3 0a.5.5 0 0 1 1 0v7a.5.5 0 0 1-1 0z\"},\"child\":[]}]})(props);\n};\nexport function BsUpload (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M.5 9.9a.5.5 0 0 1 .5.5v2.5a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1v-2.5a.5.5 0 0 1 1 0v2.5a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2v-2.5a.5.5 0 0 1 .5-.5\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M7.646 1.146a.5.5 0 0 1 .708 0l3 3a.5.5 0 0 1-.708.708L8.5 2.707V11.5a.5.5 0 0 1-1 0V2.707L5.354 4.854a.5.5 0 1 1-.708-.708z\"},\"child\":[]}]})(props);\n};\nexport function BsUsbCFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3 5a3 3 0 0 0 0 6h10a3 3 0 1 0 0-6zm.5 2.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1 0-1\"},\"child\":[]}]})(props);\n};\nexport function BsUsbC (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3.5 7.5a.5.5 0 0 0 0 1h9a.5.5 0 0 0 0-1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M0 8a3 3 0 0 1 3-3h10a3 3 0 1 1 0 6H3a3 3 0 0 1-3-3m3-2a2 2 0 1 0 0 4h10a2 2 0 1 0 0-4z\"},\"child\":[]}]})(props);\n};\nexport function BsUsbDriveFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6 .5a.5.5 0 0 1 .5-.5h4a.5.5 0 0 1 .5.5v4H6zM7 1v1h1V1zm2 0v1h1V1zM5.5 5a.5.5 0 0 0-.5.5V15a1 1 0 0 0 1 1h5a1 1 0 0 0 1-1V5.5a.5.5 0 0 0-.5-.5z\"},\"child\":[]}]})(props);\n};\nexport function BsUsbDrive (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6 .5a.5.5 0 0 1 .5-.5h4a.5.5 0 0 1 .5.5v4H6zM7 1v1h1V1zm2 0v1h1V1zM6 5a1 1 0 0 0-1 1v8.5A1.5 1.5 0 0 0 6.5 16h4a1.5 1.5 0 0 0 1.5-1.5V6a1 1 0 0 0-1-1zm0 1h5v8.5a.5.5 0 0 1-.5.5h-4a.5.5 0 0 1-.5-.5z\"},\"child\":[]}]})(props);\n};\nexport function BsUsbFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M.5 5a.5.5 0 0 0-.5.5v5a.5.5 0 0 0 .5.5h15a.5.5 0 0 0 .5-.5v-5a.5.5 0 0 0-.5-.5zm1.75 1.5h11.5a.25.25 0 0 1 .25.25v1a.25.25 0 0 1-.25.25H2.25A.25.25 0 0 1 2 7.75v-1a.25.25 0 0 1 .25-.25\"},\"child\":[]}]})(props);\n};\nexport function BsUsbMicroFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2.707 4A1 1 0 0 0 2 4.293L.293 6A1 1 0 0 0 0 6.707V11a1 1 0 0 0 1 1h14a1 1 0 0 0 1-1V6.707A1 1 0 0 0 15.707 6L14 4.293A1 1 0 0 0 13.293 4zM4.5 7h7a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-7a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsUsbMicro (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4.5 7a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h7a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2.707 4A1 1 0 0 0 2 4.293L.293 6A1 1 0 0 0 0 6.707V11a1 1 0 0 0 1 1h14a1 1 0 0 0 1-1V6.707A1 1 0 0 0 15.707 6L14 4.293A1 1 0 0 0 13.293 4zm0 1h10.586L15 6.707V11H1V6.707z\"},\"child\":[]}]})(props);\n};\nexport function BsUsbMiniFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3 3a1 1 0 0 0-1 1v1.293L.293 7A1 1 0 0 0 0 7.707V12a1 1 0 0 0 1 1h14a1 1 0 0 0 1-1V7.707A1 1 0 0 0 15.707 7L14 5.293V4a1 1 0 0 0-1-1zm.5 5h9a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-9a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsUsbMini (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3.5 8a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h9a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M3 3a1 1 0 0 0-1 1v1.293L.293 7A1 1 0 0 0 0 7.707V12a1 1 0 0 0 1 1h14a1 1 0 0 0 1-1V7.707A1 1 0 0 0 15.707 7L14 5.293V4a1 1 0 0 0-1-1zm0 1h10v1.293a1 1 0 0 0 .293.707L15 7.707V12H1V7.707L2.707 6A1 1 0 0 0 3 5.293z\"},\"child\":[]}]})(props);\n};\nexport function BsUsbPlugFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6 .5a.5.5 0 0 1 .5-.5h4a.5.5 0 0 1 .5.5v4H6zM7 1v1h1V1zm2 0v1h1V1zM5.5 5a.5.5 0 0 0-.5.5v4.894a2 2 0 0 0 .336 1.11l.83 1.245c.544.816.834 1.774.834 2.754 0 .275.222.497.497.497h2.006a.497.497 0 0 0 .497-.497c0-.98.29-1.938.834-2.754l.83-1.245a2 2 0 0 0 .336-1.11V5.5a.5.5 0 0 0-.5-.5z\"},\"child\":[]}]})(props);\n};\nexport function BsUsbPlug (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6 .5a.5.5 0 0 1 .5-.5h4a.5.5 0 0 1 .5.5v4H6zM7 1v1h1V1zm2 0v1h1V1zM6 5a1 1 0 0 0-1 1v4.394c0 .494.146.976.42 1.387l1.038 1.558c.354.53.542 1.152.542 1.789 0 .481.39.872.872.872h1.256c.481 0 .872-.39.872-.872 0-.637.188-1.26.541-1.789l1.04-1.558A2.5 2.5 0 0 0 12 10.394V6a1 1 0 0 0-1-1zm0 1h5v4.394a1.5 1.5 0 0 1-.252.832L9.71 12.784A4.2 4.2 0 0 0 9.002 15H7.998a4.2 4.2 0 0 0-.707-2.216l-1.04-1.558A1.5 1.5 0 0 1 6 10.394z\"},\"child\":[]}]})(props);\n};\nexport function BsUsbSymbol (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m7.792.312-1.533 2.3A.25.25 0 0 0 6.467 3H7.5v7.319a2.5 2.5 0 0 0-.515-.298L5.909 9.56A1.5 1.5 0 0 1 5 8.18v-.266a1.5 1.5 0 1 0-1 0v.266a2.5 2.5 0 0 0 1.515 2.298l1.076.461a1.5 1.5 0 0 1 .888 1.129 2.001 2.001 0 1 0 1.021-.006v-.902a1.5 1.5 0 0 1 .756-1.303l1.484-.848A2.5 2.5 0 0 0 11.995 7h.755a.25.25 0 0 0 .25-.25v-2.5a.25.25 0 0 0-.25-.25h-2.5a.25.25 0 0 0-.25.25v2.5c0 .138.112.25.25.25h.741a1.5 1.5 0 0 1-.747 1.142L8.76 8.99a3 3 0 0 0-.26.17V3h1.033a.25.25 0 0 0 .208-.389L8.208.312a.25.25 0 0 0-.416 0\"},\"child\":[]}]})(props);\n};\nexport function BsUsb (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2.25 7a.25.25 0 0 0-.25.25v1c0 .138.112.25.25.25h11.5a.25.25 0 0 0 .25-.25v-1a.25.25 0 0 0-.25-.25z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M0 5.5A.5.5 0 0 1 .5 5h15a.5.5 0 0 1 .5.5v5a.5.5 0 0 1-.5.5H.5a.5.5 0 0 1-.5-.5zM1 10h14V6H1z\"},\"child\":[]}]})(props);\n};\nexport function BsValentine (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 5.993c1.664-1.711 5.825 1.283 0 5.132-5.825-3.85-1.664-6.843 0-5.132M2.25 4a.25.25 0 0 0-.25.25v1.5a.25.25 0 0 0 .5 0V4.5h1.25a.25.25 0 0 0 0-.5zm10 0a.25.25 0 1 0 0 .5h1.25v1.25a.25.25 0 1 0 .5 0v-1.5a.25.25 0 0 0-.25-.25zM2.5 10.25a.25.25 0 1 0-.5 0v1.5c0 .138.112.25.25.25h1.5a.25.25 0 1 0 0-.5H2.5zm11.5 0a.25.25 0 1 0-.5 0v1.25h-1.25a.25.25 0 1 0 0 .5h1.5a.25.25 0 0 0 .25-.25z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M0 2.994v-.06a1 1 0 0 1 .859-.99l13-1.857a1 1 0 0 1 1.141.99V2a1 1 0 0 1 1 1v10a1 1 0 0 1-1 1H1a1 1 0 0 1-1-1zM1 3v10h14V3z\"},\"child\":[]}]})(props);\n};\nexport function BsValentine2 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 6.493c1.664-1.711 5.825 1.283 0 5.132-5.825-3.85-1.664-6.843 0-5.132M4.25 3a.25.25 0 0 0-.25.25v1.5a.25.25 0 0 0 .5 0V3.5h1.25a.25.25 0 0 0 0-.5zm6 0a.25.25 0 1 0 0 .5h1.25v1.25a.25.25 0 1 0 .5 0v-1.5a.25.25 0 0 0-.25-.25zM4.5 12.25a.25.25 0 1 0-.5 0v1.5c0 .138.112.25.25.25h1.5a.25.25 0 0 0 0-.5H4.5zm7.5 0a.25.25 0 1 0-.5 0v1.25h-1.25a.25.25 0 1 0 0 .5h1.5a.25.25 0 0 0 .25-.25z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M2 1.994v-.042a1 1 0 0 1 .9-.995l9-.9A1 1 0 0 1 13 1a1 1 0 0 1 1 1v13a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1zM3 2v13h10V2z\"},\"child\":[]}]})(props);\n};\nexport function BsVectorPen (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M10.646.646a.5.5 0 0 1 .708 0l4 4a.5.5 0 0 1 0 .708l-1.902 1.902-.829 3.313a1.5 1.5 0 0 1-1.024 1.073L1.254 14.746 4.358 4.4A1.5 1.5 0 0 1 5.43 3.377l3.313-.828zm-1.8 2.908-3.173.793a.5.5 0 0 0-.358.342l-2.57 8.565 8.567-2.57a.5.5 0 0 0 .34-.357l.794-3.174-3.6-3.6z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M2.832 13.228 8 9a1 1 0 1 0-1-1l-4.228 5.168-.026.086z\"},\"child\":[]}]})(props);\n};\nexport function BsViewList (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3 4.5h10a2 2 0 0 1 2 2v3a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2v-3a2 2 0 0 1 2-2m0 1a1 1 0 0 0-1 1v3a1 1 0 0 0 1 1h10a1 1 0 0 0 1-1v-3a1 1 0 0 0-1-1zM1 2a.5.5 0 0 1 .5-.5h13a.5.5 0 0 1 0 1h-13A.5.5 0 0 1 1 2m0 12a.5.5 0 0 1 .5-.5h13a.5.5 0 0 1 0 1h-13A.5.5 0 0 1 1 14\"},\"child\":[]}]})(props);\n};\nexport function BsViewStacked (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3 0h10a2 2 0 0 1 2 2v3a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2m0 1a1 1 0 0 0-1 1v3a1 1 0 0 0 1 1h10a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1zm0 8h10a2 2 0 0 1 2 2v3a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2v-3a2 2 0 0 1 2-2m0 1a1 1 0 0 0-1 1v3a1 1 0 0 0 1 1h10a1 1 0 0 0 1-1v-3a1 1 0 0 0-1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsVignette (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 1a7 7 0 1 0 0 14A7 7 0 0 0 8 1M0 8a8 8 0 1 1 16 0A8 8 0 0 1 0 8\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8.5 4.5a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0m0 7a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0m1.683-6.281a.5.5 0 1 1-.866-.5.5.5 0 0 1 .866.5m-3.5 6.062a.5.5 0 1 1-.866-.5.5.5 0 0 1 .866.5m4.598-4.598a.5.5 0 1 1-.5-.866.5.5 0 0 1 .5.866m-6.062 3.5a.5.5 0 1 1-.5-.866.5.5 0 0 1 .5.866M11.5 8.5a.5.5 0 1 1 0-1 .5.5 0 0 1 0 1m-7 0a.5.5 0 1 1 0-1 .5.5 0 0 1 0 1m6.281 1.683a.5.5 0 1 1 .5-.866.5.5 0 0 1-.5.866m-6.062-3.5a.5.5 0 1 1 .5-.866.5.5 0 0 1-.5.866m4.598 4.598a.5.5 0 1 1 .866-.5.5.5 0 0 1-.866.5m-3.5-6.062a.5.5 0 1 1 .866-.5.5.5 0 0 1-.866.5\"},\"child\":[]}]})(props);\n};\nexport function BsVimeo (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M15.992 4.204q-.106 2.334-3.262 6.393-3.263 4.243-5.522 4.243-1.4 0-2.367-2.583L3.55 7.523Q2.83 4.939 2.007 4.94q-.178.001-1.254.754L0 4.724a210 210 0 0 0 2.334-2.081q1.581-1.364 2.373-1.437 1.865-.185 2.298 2.553.466 2.952.646 3.666.54 2.447 1.186 2.445.5 0 1.508-1.587 1.006-1.587 1.077-2.415.144-1.37-1.077-1.37a3 3 0 0 0-1.185.261q1.183-3.86 4.508-3.756 2.466.075 2.324 3.2z\"},\"child\":[]}]})(props);\n};\nexport function BsVinylFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 6a2 2 0 1 0 0 4 2 2 0 0 0 0-4m0 3a1 1 0 1 1 0-2 1 1 0 0 1 0 2\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0M4 8a4 4 0 1 0 8 0 4 4 0 0 0-8 0\"},\"child\":[]}]})(props);\n};\nexport function BsVinyl (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14m0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8 6a2 2 0 1 0 0 4 2 2 0 0 0 0-4M4 8a4 4 0 1 1 8 0 4 4 0 0 1-8 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M9 8a1 1 0 1 1-2 0 1 1 0 0 1 2 0\"},\"child\":[]}]})(props);\n};\nexport function BsVirus (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 0a1 1 0 0 1 1 1v1.402c0 .511.677.693.933.25l.7-1.214a1 1 0 0 1 1.733 1l-.701 1.214c-.256.443.24.939.683.683l1.214-.701a1 1 0 0 1 1 1.732l-1.214.701c-.443.256-.262.933.25.933H15a1 1 0 1 1 0 2h-1.402c-.512 0-.693.677-.25.933l1.214.701a1 1 0 1 1-1 1.732l-1.214-.7c-.443-.257-.939.24-.683.682l.701 1.214a1 1 0 1 1-1.732 1l-.701-1.214c-.256-.443-.933-.262-.933.25V15a1 1 0 1 1-2 0v-1.402c0-.512-.677-.693-.933-.25l-.701 1.214a1 1 0 0 1-1.732-1l.7-1.214c.257-.443-.24-.939-.682-.683l-1.214.701a1 1 0 1 1-1-1.732l1.214-.701c.443-.256.261-.933-.25-.933H1a1 1 0 1 1 0-2h1.402c.511 0 .693-.677.25-.933l-1.214-.701a1 1 0 1 1 1-1.732l1.214.701c.443.256.939-.24.683-.683l-.701-1.214a1 1 0 0 1 1.732-1l.701 1.214c.256.443.933.261.933-.25V1a1 1 0 0 1 1-1m2 5a1 1 0 1 0-2 0 1 1 0 0 0 2 0M6 7a1 1 0 1 0-2 0 1 1 0 0 0 2 0m1 4a1 1 0 1 0 0-2 1 1 0 0 0 0 2m5-3a1 1 0 1 0-2 0 1 1 0 0 0 2 0\"},\"child\":[]}]})(props);\n};\nexport function BsVirus2 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 0a1 1 0 0 0-1 1v1.143c0 .557-.407 1.025-.921 1.24-.514.214-1.12.162-1.513-.231l-.809-.809a1 1 0 1 0-1.414 1.414l.809.809c.394.394.445.999.23 1.513C3.169 6.593 2.7 7 2.144 7H1a1 1 0 0 0 0 2h1.143c.557 0 1.025.407 1.24.921.214.514.163 1.12-.231 1.513l-.809.809a1 1 0 0 0 1.414 1.414l.809-.809c.394-.394.999-.445 1.513-.23.514.214.921.682.921 1.24V15a1 1 0 1 0 2 0v-1.143c0-.557.407-1.025.921-1.24.514-.214 1.12-.162 1.513.231l.809.809a1 1 0 0 0 1.414-1.414l-.809-.809c-.393-.394-.445-.999-.23-1.513.214-.514.682-.921 1.24-.921H15a1 1 0 1 0 0-2h-1.143c-.557 0-1.025-.407-1.24-.921-.214-.514-.162-1.12.231-1.513l.809-.809a1 1 0 0 0-1.414-1.414l-.809.809c-.394.393-.999.445-1.513.23-.514-.214-.92-.682-.92-1.24V1a1 1 0 0 0-1-1Zm2 5a1 1 0 1 1-2 0 1 1 0 0 1 2 0M7 7a1 1 0 1 1-2 0 1 1 0 0 1 2 0m1 5a1 1 0 1 1 0-2 1 1 0 0 1 0 2m4-4a1 1 0 1 1-2 0 1 1 0 0 1 2 0\"},\"child\":[]}]})(props);\n};\nexport function BsVoicemail (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7 8.5A3.5 3.5 0 0 1 5.95 11h4.1a3.5 3.5 0 1 1 2.45 1h-9A3.5 3.5 0 1 1 7 8.5m-6 0a2.5 2.5 0 1 0 5 0 2.5 2.5 0 0 0-5 0m14 0a2.5 2.5 0 1 0-5 0 2.5 2.5 0 0 0 5 0\"},\"child\":[]}]})(props);\n};\nexport function BsVolumeDownFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9 4a.5.5 0 0 0-.812-.39L5.825 5.5H3.5A.5.5 0 0 0 3 6v4a.5.5 0 0 0 .5.5h2.325l2.363 1.89A.5.5 0 0 0 9 12zm3.025 4a4.5 4.5 0 0 1-1.318 3.182L10 10.475A3.5 3.5 0 0 0 11.025 8 3.5 3.5 0 0 0 10 5.525l.707-.707A4.5 4.5 0 0 1 12.025 8\"},\"child\":[]}]})(props);\n};\nexport function BsVolumeDown (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9 4a.5.5 0 0 0-.812-.39L5.825 5.5H3.5A.5.5 0 0 0 3 6v4a.5.5 0 0 0 .5.5h2.325l2.363 1.89A.5.5 0 0 0 9 12zM6.312 6.39 8 5.04v5.92L6.312 9.61A.5.5 0 0 0 6 9.5H4v-3h2a.5.5 0 0 0 .312-.11M12.025 8a4.5 4.5 0 0 1-1.318 3.182L10 10.475A3.5 3.5 0 0 0 11.025 8 3.5 3.5 0 0 0 10 5.525l.707-.707A4.5 4.5 0 0 1 12.025 8\"},\"child\":[]}]})(props);\n};\nexport function BsVolumeMuteFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.717 3.55A.5.5 0 0 1 7 4v8a.5.5 0 0 1-.812.39L3.825 10.5H1.5A.5.5 0 0 1 1 10V6a.5.5 0 0 1 .5-.5h2.325l2.363-1.89a.5.5 0 0 1 .529-.06m7.137 2.096a.5.5 0 0 1 0 .708L12.207 8l1.647 1.646a.5.5 0 0 1-.708.708L11.5 8.707l-1.646 1.647a.5.5 0 0 1-.708-.708L10.793 8 9.146 6.354a.5.5 0 1 1 .708-.708L11.5 7.293l1.646-1.647a.5.5 0 0 1 .708 0\"},\"child\":[]}]})(props);\n};\nexport function BsVolumeMute (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.717 3.55A.5.5 0 0 1 7 4v8a.5.5 0 0 1-.812.39L3.825 10.5H1.5A.5.5 0 0 1 1 10V6a.5.5 0 0 1 .5-.5h2.325l2.363-1.89a.5.5 0 0 1 .529-.06M6 5.04 4.312 6.39A.5.5 0 0 1 4 6.5H2v3h2a.5.5 0 0 1 .312.11L6 10.96zm7.854.606a.5.5 0 0 1 0 .708L12.207 8l1.647 1.646a.5.5 0 0 1-.708.708L11.5 8.707l-1.646 1.647a.5.5 0 0 1-.708-.708L10.793 8 9.146 6.354a.5.5 0 1 1 .708-.708L11.5 7.293l1.646-1.647a.5.5 0 0 1 .708 0\"},\"child\":[]}]})(props);\n};\nexport function BsVolumeOffFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M10.717 3.55A.5.5 0 0 1 11 4v8a.5.5 0 0 1-.812.39L7.825 10.5H5.5A.5.5 0 0 1 5 10V6a.5.5 0 0 1 .5-.5h2.325l2.363-1.89a.5.5 0 0 1 .529-.06\"},\"child\":[]}]})(props);\n};\nexport function BsVolumeOff (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M10.717 3.55A.5.5 0 0 1 11 4v8a.5.5 0 0 1-.812.39L7.825 10.5H5.5A.5.5 0 0 1 5 10V6a.5.5 0 0 1 .5-.5h2.325l2.363-1.89a.5.5 0 0 1 .529-.06M10 5.04 8.312 6.39A.5.5 0 0 1 8 6.5H6v3h2a.5.5 0 0 1 .312.11L10 10.96z\"},\"child\":[]}]})(props);\n};\nexport function BsVolumeUpFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M11.536 14.01A8.47 8.47 0 0 0 14.026 8a8.47 8.47 0 0 0-2.49-6.01l-.708.707A7.48 7.48 0 0 1 13.025 8c0 2.071-.84 3.946-2.197 5.303z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M10.121 12.596A6.48 6.48 0 0 0 12.025 8a6.48 6.48 0 0 0-1.904-4.596l-.707.707A5.48 5.48 0 0 1 11.025 8a5.48 5.48 0 0 1-1.61 3.89z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8.707 11.182A4.5 4.5 0 0 0 10.025 8a4.5 4.5 0 0 0-1.318-3.182L8 5.525A3.5 3.5 0 0 1 9.025 8 3.5 3.5 0 0 1 8 10.475zM6.717 3.55A.5.5 0 0 1 7 4v8a.5.5 0 0 1-.812.39L3.825 10.5H1.5A.5.5 0 0 1 1 10V6a.5.5 0 0 1 .5-.5h2.325l2.363-1.89a.5.5 0 0 1 .529-.06\"},\"child\":[]}]})(props);\n};\nexport function BsVolumeUp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M11.536 14.01A8.47 8.47 0 0 0 14.026 8a8.47 8.47 0 0 0-2.49-6.01l-.708.707A7.48 7.48 0 0 1 13.025 8c0 2.071-.84 3.946-2.197 5.303z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M10.121 12.596A6.48 6.48 0 0 0 12.025 8a6.48 6.48 0 0 0-1.904-4.596l-.707.707A5.48 5.48 0 0 1 11.025 8a5.48 5.48 0 0 1-1.61 3.89z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M10.025 8a4.5 4.5 0 0 1-1.318 3.182L8 10.475A3.5 3.5 0 0 0 9.025 8c0-.966-.392-1.841-1.025-2.475l.707-.707A4.5 4.5 0 0 1 10.025 8M7 4a.5.5 0 0 0-.812-.39L3.825 5.5H1.5A.5.5 0 0 0 1 6v4a.5.5 0 0 0 .5.5h2.325l2.363 1.89A.5.5 0 0 0 7 12zM4.312 6.39 6 5.04v5.92L4.312 9.61A.5.5 0 0 0 4 9.5H2v-3h2a.5.5 0 0 0 .312-.11\"},\"child\":[]}]})(props);\n};\nexport function BsVr (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3 12V4a1 1 0 0 1 1-1h2.5V2H4a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h2.5v-1H4a1 1 0 0 1-1-1m6.5 1v1H12a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2H9.5v1H12a1 1 0 0 1 1 1v8a1 1 0 0 1-1 1zM8 16a.5.5 0 0 1-.5-.5V.5a.5.5 0 0 1 1 0v15a.5.5 0 0 1-.5.5\"},\"child\":[]}]})(props);\n};\nexport function BsWalletFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M1.5 2A1.5 1.5 0 0 0 0 3.5v2h6a.5.5 0 0 1 .5.5c0 .253.08.644.306.958.207.288.557.542 1.194.542s.987-.254 1.194-.542C9.42 6.644 9.5 6.253 9.5 6a.5.5 0 0 1 .5-.5h6v-2A1.5 1.5 0 0 0 14.5 2z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M16 6.5h-5.551a2.7 2.7 0 0 1-.443 1.042C9.613 8.088 8.963 8.5 8 8.5s-1.613-.412-2.006-.958A2.7 2.7 0 0 1 5.551 6.5H0v6A1.5 1.5 0 0 0 1.5 14h13a1.5 1.5 0 0 0 1.5-1.5z\"},\"child\":[]}]})(props);\n};\nexport function BsWallet (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 3a2 2 0 0 1 2-2h13.5a.5.5 0 0 1 0 1H15v2a1 1 0 0 1 1 1v8.5a1.5 1.5 0 0 1-1.5 1.5h-12A2.5 2.5 0 0 1 0 12.5zm1 1.732V12.5A1.5 1.5 0 0 0 2.5 14h12a.5.5 0 0 0 .5-.5V5H2a2 2 0 0 1-1-.268M1 3a1 1 0 0 0 1 1h12V2H2a1 1 0 0 0-1 1\"},\"child\":[]}]})(props);\n};\nexport function BsWallet2 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12.136.326A1.5 1.5 0 0 1 14 1.78V3h.5A1.5 1.5 0 0 1 16 4.5v9a1.5 1.5 0 0 1-1.5 1.5h-13A1.5 1.5 0 0 1 0 13.5v-9a1.5 1.5 0 0 1 1.432-1.499zM5.562 3H13V1.78a.5.5 0 0 0-.621-.484zM1.5 4a.5.5 0 0 0-.5.5v9a.5.5 0 0 0 .5.5h13a.5.5 0 0 0 .5-.5v-9a.5.5 0 0 0-.5-.5z\"},\"child\":[]}]})(props);\n};\nexport function BsWatch (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.5 5a.5.5 0 0 0-1 0v2.5H6a.5.5 0 0 0 0 1h2a.5.5 0 0 0 .5-.5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M5.667 16C4.747 16 4 15.254 4 14.333v-1.86A6 6 0 0 1 2 8c0-1.777.772-3.374 2-4.472V1.667C4 .747 4.746 0 5.667 0h4.666C11.253 0 12 .746 12 1.667v1.86a6 6 0 0 1 1.918 3.48.502.502 0 0 1 .582.493v1a.5.5 0 0 1-.582.493A6 6 0 0 1 12 12.473v1.86c0 .92-.746 1.667-1.667 1.667zM13 8A5 5 0 1 0 3 8a5 5 0 0 0 10 0\"},\"child\":[]}]})(props);\n};\nexport function BsWater (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M.036 3.314a.5.5 0 0 1 .65-.278l1.757.703a1.5 1.5 0 0 0 1.114 0l1.014-.406a2.5 2.5 0 0 1 1.857 0l1.015.406a1.5 1.5 0 0 0 1.114 0l1.014-.406a2.5 2.5 0 0 1 1.857 0l1.015.406a1.5 1.5 0 0 0 1.114 0l1.757-.703a.5.5 0 1 1 .372.928l-1.758.703a2.5 2.5 0 0 1-1.857 0l-1.014-.406a1.5 1.5 0 0 0-1.114 0l-1.015.406a2.5 2.5 0 0 1-1.857 0l-1.014-.406a1.5 1.5 0 0 0-1.114 0l-1.015.406a2.5 2.5 0 0 1-1.857 0L.314 3.964a.5.5 0 0 1-.278-.65m0 3a.5.5 0 0 1 .65-.278l1.757.703a1.5 1.5 0 0 0 1.114 0l1.014-.406a2.5 2.5 0 0 1 1.857 0l1.015.406a1.5 1.5 0 0 0 1.114 0l1.014-.406a2.5 2.5 0 0 1 1.857 0l1.015.406a1.5 1.5 0 0 0 1.114 0l1.757-.703a.5.5 0 1 1 .372.928l-1.758.703a2.5 2.5 0 0 1-1.857 0l-1.014-.406a1.5 1.5 0 0 0-1.114 0l-1.015.406a2.5 2.5 0 0 1-1.857 0l-1.014-.406a1.5 1.5 0 0 0-1.114 0l-1.015.406a2.5 2.5 0 0 1-1.857 0L.314 6.964a.5.5 0 0 1-.278-.65m0 3a.5.5 0 0 1 .65-.278l1.757.703a1.5 1.5 0 0 0 1.114 0l1.014-.406a2.5 2.5 0 0 1 1.857 0l1.015.406a1.5 1.5 0 0 0 1.114 0l1.014-.406a2.5 2.5 0 0 1 1.857 0l1.015.406a1.5 1.5 0 0 0 1.114 0l1.757-.703a.5.5 0 1 1 .372.928l-1.758.703a2.5 2.5 0 0 1-1.857 0l-1.014-.406a1.5 1.5 0 0 0-1.114 0l-1.015.406a2.5 2.5 0 0 1-1.857 0l-1.014-.406a1.5 1.5 0 0 0-1.114 0l-1.015.406a2.5 2.5 0 0 1-1.857 0L.314 9.964a.5.5 0 0 1-.278-.65m0 3a.5.5 0 0 1 .65-.278l1.757.703a1.5 1.5 0 0 0 1.114 0l1.014-.406a2.5 2.5 0 0 1 1.857 0l1.015.406a1.5 1.5 0 0 0 1.114 0l1.014-.406a2.5 2.5 0 0 1 1.857 0l1.015.406a1.5 1.5 0 0 0 1.114 0l1.757-.703a.5.5 0 1 1 .372.928l-1.758.703a2.5 2.5 0 0 1-1.857 0l-1.014-.406a1.5 1.5 0 0 0-1.114 0l-1.015.406a2.5 2.5 0 0 1-1.857 0l-1.014-.406a1.5 1.5 0 0 0-1.114 0l-1.015.406a2.5 2.5 0 0 1-1.857 0l-1.757-.703a.5.5 0 0 1-.278-.65\"},\"child\":[]}]})(props);\n};\nexport function BsWebcamFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.644 11.094a.5.5 0 0 1 .356-.15h2a.5.5 0 0 1 .356.15c.175.177.39.347.603.496a7 7 0 0 0 .752.456l.01.006h.003A.5.5 0 0 1 10.5 13h-5a.5.5 0 0 1-.224-.947l.002-.001.01-.006a4 4 0 0 0 .214-.116 8 8 0 0 0 .539-.34c.214-.15.428-.319.603-.496M7 6.5a1 1 0 1 1 2 0 1 1 0 0 1-2 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 3a2 2 0 0 0-2 2v3a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V5a2 2 0 0 0-2-2zm6 1.5a2 2 0 1 1 0 4 2 2 0 0 1 0-4M12.5 7a.5.5 0 1 1 0-1 .5.5 0 0 1 0 1\"},\"child\":[]}]})(props);\n};\nexport function BsWebcam (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 6a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v3a2 2 0 0 1-2 2H9.269c.144.162.33.324.531.475a7 7 0 0 0 .907.57l.014.006.003.002A.5.5 0 0 1 10.5 13h-5a.5.5 0 0 1-.224-.947l.003-.002.014-.007a5 5 0 0 0 .268-.148 7 7 0 0 0 .639-.421c.2-.15.387-.313.531-.475H2a2 2 0 0 1-2-2zm2-1a1 1 0 0 0-1 1v3a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V6a1 1 0 0 0-1-1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8 6.5a1 1 0 1 0 0 2 1 1 0 0 0 0-2m-2 1a2 2 0 1 1 4 0 2 2 0 0 1-4 0m7 0a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0\"},\"child\":[]}]})(props);\n};\nexport function BsWechat (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M11.176 14.429c-2.665 0-4.826-1.8-4.826-4.018 0-2.22 2.159-4.02 4.824-4.02S16 8.191 16 10.411c0 1.21-.65 2.301-1.666 3.036a.32.32 0 0 0-.12.366l.218.81a.6.6 0 0 1 .029.117.166.166 0 0 1-.162.162.2.2 0 0 1-.092-.03l-1.057-.61a.5.5 0 0 0-.256-.074.5.5 0 0 0-.142.021 5.7 5.7 0 0 1-1.576.22M9.064 9.542a.647.647 0 1 0 .557-1 .645.645 0 0 0-.646.647.6.6 0 0 0 .09.353Zm3.232.001a.646.646 0 1 0 .546-1 .645.645 0 0 0-.644.644.63.63 0 0 0 .098.356\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M0 6.826c0 1.455.781 2.765 2.001 3.656a.385.385 0 0 1 .143.439l-.161.6-.1.373a.5.5 0 0 0-.032.14.19.19 0 0 0 .193.193q.06 0 .111-.029l1.268-.733a.6.6 0 0 1 .308-.088q.088 0 .171.025a6.8 6.8 0 0 0 1.625.26 4.5 4.5 0 0 1-.177-1.251c0-2.936 2.785-5.02 5.824-5.02l.15.002C10.587 3.429 8.392 2 5.796 2 2.596 2 0 4.16 0 6.826m4.632-1.555a.77.77 0 1 1-1.54 0 .77.77 0 0 1 1.54 0m3.875 0a.77.77 0 1 1-1.54 0 .77.77 0 0 1 1.54 0\"},\"child\":[]}]})(props);\n};\nexport function BsWhatsapp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M13.601 2.326A7.85 7.85 0 0 0 7.994 0C3.627 0 .068 3.558.064 7.926c0 1.399.366 2.76 1.057 3.965L0 16l4.204-1.102a7.9 7.9 0 0 0 3.79.965h.004c4.368 0 7.926-3.558 7.93-7.93A7.9 7.9 0 0 0 13.6 2.326zM7.994 14.521a6.6 6.6 0 0 1-3.356-.92l-.24-.144-2.494.654.666-2.433-.156-.251a6.56 6.56 0 0 1-1.007-3.505c0-3.626 2.957-6.584 6.591-6.584a6.56 6.56 0 0 1 4.66 1.931 6.56 6.56 0 0 1 1.928 4.66c-.004 3.639-2.961 6.592-6.592 6.592m3.615-4.934c-.197-.099-1.17-.578-1.353-.646-.182-.065-.315-.099-.445.099-.133.197-.513.646-.627.775-.114.133-.232.148-.43.05-.197-.1-.836-.308-1.592-.985-.59-.525-.985-1.175-1.103-1.372-.114-.198-.011-.304.088-.403.087-.088.197-.232.296-.346.1-.114.133-.198.198-.33.065-.134.034-.248-.015-.347-.05-.099-.445-1.076-.612-1.47-.16-.389-.323-.335-.445-.34-.114-.007-.247-.007-.38-.007a.73.73 0 0 0-.529.247c-.182.198-.691.677-.691 1.654s.71 1.916.81 2.049c.098.133 1.394 2.132 3.383 2.992.47.205.84.326 1.129.418.475.152.904.129 1.246.08.38-.058 1.171-.48 1.338-.943.164-.464.164-.86.114-.943-.049-.084-.182-.133-.38-.232\"},\"child\":[]}]})(props);\n};\nexport function BsWifi1 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M11.046 10.454c.226-.226.185-.605-.1-.75A6.5 6.5 0 0 0 8 9c-1.06 0-2.062.254-2.946.704-.285.145-.326.524-.1.75l.015.015c.16.16.407.19.611.09A5.5 5.5 0 0 1 8 10c.868 0 1.69.201 2.42.56.203.1.45.07.611-.091zM9.06 12.44c.196-.196.198-.52-.04-.66A2 2 0 0 0 8 11.5a2 2 0 0 0-1.02.28c-.238.14-.236.464-.04.66l.706.706a.5.5 0 0 0 .707 0l.708-.707z\"},\"child\":[]}]})(props);\n};\nexport function BsWifi2 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M13.229 8.271c.216-.216.194-.578-.063-.745A9.46 9.46 0 0 0 8 6c-1.905 0-3.68.56-5.166 1.526a.48.48 0 0 0-.063.745.525.525 0 0 0 .652.065A8.46 8.46 0 0 1 8 7a8.46 8.46 0 0 1 4.577 1.336c.205.132.48.108.652-.065m-2.183 2.183c.226-.226.185-.605-.1-.75A6.5 6.5 0 0 0 8 9c-1.06 0-2.062.254-2.946.704-.285.145-.326.524-.1.75l.015.015c.16.16.408.19.611.09A5.5 5.5 0 0 1 8 10c.868 0 1.69.201 2.42.56.203.1.45.07.611-.091zM9.06 12.44c.196-.196.198-.52-.04-.66A2 2 0 0 0 8 11.5a2 2 0 0 0-1.02.28c-.238.14-.236.464-.04.66l.706.706a.5.5 0 0 0 .708 0l.707-.707z\"},\"child\":[]}]})(props);\n};\nexport function BsWifiOff (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M10.706 3.294A12.6 12.6 0 0 0 8 3C5.259 3 2.723 3.882.663 5.379a.485.485 0 0 0-.048.736.52.52 0 0 0 .668.05A11.45 11.45 0 0 1 8 4q.946 0 1.852.148zM8 6c-1.905 0-3.68.56-5.166 1.526a.48.48 0 0 0-.063.745.525.525 0 0 0 .652.065 8.45 8.45 0 0 1 3.51-1.27zm2.596 1.404.785-.785q.947.362 1.785.907a.482.482 0 0 1 .063.745.525.525 0 0 1-.652.065 8.5 8.5 0 0 0-1.98-.932zM8 10l.933-.933a6.5 6.5 0 0 1 2.013.637c.285.145.326.524.1.75l-.015.015a.53.53 0 0 1-.611.09A5.5 5.5 0 0 0 8 10m4.905-4.905.747-.747q.886.451 1.685 1.03a.485.485 0 0 1 .047.737.52.52 0 0 1-.668.05 11.5 11.5 0 0 0-1.811-1.07M9.02 11.78c.238.14.236.464.04.66l-.707.706a.5.5 0 0 1-.707 0l-.707-.707c-.195-.195-.197-.518.04-.66A2 2 0 0 1 8 11.5c.374 0 .723.102 1.021.28zm4.355-9.905a.53.53 0 0 1 .75.75l-10.75 10.75a.53.53 0 0 1-.75-.75z\"},\"child\":[]}]})(props);\n};\nexport function BsWifi (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M15.384 6.115a.485.485 0 0 0-.047-.736A12.44 12.44 0 0 0 8 3C5.259 3 2.723 3.882.663 5.379a.485.485 0 0 0-.048.736.52.52 0 0 0 .668.05A11.45 11.45 0 0 1 8 4c2.507 0 4.827.802 6.716 2.164.205.148.49.13.668-.049\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M13.229 8.271a.482.482 0 0 0-.063-.745A9.46 9.46 0 0 0 8 6c-1.905 0-3.68.56-5.166 1.526a.48.48 0 0 0-.063.745.525.525 0 0 0 .652.065A8.46 8.46 0 0 1 8 7a8.46 8.46 0 0 1 4.576 1.336c.206.132.48.108.653-.065m-2.183 2.183c.226-.226.185-.605-.1-.75A6.5 6.5 0 0 0 8 9c-1.06 0-2.062.254-2.946.704-.285.145-.326.524-.1.75l.015.015c.16.16.407.19.611.09A5.5 5.5 0 0 1 8 10c.868 0 1.69.201 2.42.56.203.1.45.07.61-.091zM9.06 12.44c.196-.196.198-.52-.04-.66A2 2 0 0 0 8 11.5a2 2 0 0 0-1.02.28c-.238.14-.236.464-.04.66l.706.706a.5.5 0 0 0 .707 0l.707-.707z\"},\"child\":[]}]})(props);\n};\nexport function BsWikipedia (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.835 3.003c.828-.006 2.688 0 2.688 0l.033.03v.288q0 .12-.133.12c-.433.02-.522.063-.68.29-.087.126-.258.393-.435.694l-1.52 2.843-.043.089 1.858 3.801.113.031 2.926-6.946q.152-.42-.044-.595c-.132-.114-.224-.18-.563-.195l-.275-.014a.16.16 0 0 1-.096-.035.1.1 0 0 1-.046-.084v-.289l.042-.03h3.306l.034.03v.29q0 .117-.133.117-.65.03-.962.281a1.64 1.64 0 0 0-.488.704s-2.691 6.16-3.612 8.208c-.353.672-.7.61-1.004-.019A224 224 0 0 1 8.044 8.81c-.623 1.285-1.475 3.026-1.898 3.81-.411.715-.75.622-1.02.019-.45-1.065-1.131-2.519-1.817-3.982-.735-1.569-1.475-3.149-1.943-4.272-.167-.4-.293-.657-.412-.759q-.18-.15-.746-.18Q0 3.421 0 3.341v-.303l.034-.03c.615-.003 3.594 0 3.594 0l.034.03v.288q0 .119-.15.118l-.375.016q-.483.02-.483.288-.002.125.109.4c.72 1.753 3.207 6.998 3.207 6.998l.091.023 1.603-3.197-.32-.71L6.24 5.095s-.213-.433-.286-.577l-.098-.196c-.387-.77-.411-.82-.865-.88-.137-.017-.208-.035-.208-.102v-.304l.041-.03h2.853l.075.024v.303q0 .104-.15.104l-.206.03c-.523.04-.438.254-.09.946l1.057 2.163 1.17-2.332c.195-.427.155-.534.074-.633-.046-.055-.202-.144-.54-.158l-.133-.015a.16.16 0 0 1-.096-.034.1.1 0 0 1-.045-.085v-.288l.041-.03Z\"},\"child\":[]}]})(props);\n};\nexport function BsWind (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12.5 2A2.5 2.5 0 0 0 10 4.5a.5.5 0 0 1-1 0A3.5 3.5 0 1 1 12.5 8H.5a.5.5 0 0 1 0-1h12a2.5 2.5 0 0 0 0-5m-7 1a1 1 0 0 0-1 1 .5.5 0 0 1-1 0 2 2 0 1 1 2 2h-5a.5.5 0 0 1 0-1h5a1 1 0 0 0 0-2M0 9.5A.5.5 0 0 1 .5 9h10.042a3 3 0 1 1-3 3 .5.5 0 0 1 1 0 2 2 0 1 0 2-2H.5a.5.5 0 0 1-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsWindowDash (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2.5 5a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1M4 5a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1m2-.5a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M0 4a2 2 0 0 1 2-2h11a2 2 0 0 1 2 2v4a.5.5 0 0 1-1 0V7H1v5a1 1 0 0 0 1 1h5.5a.5.5 0 0 1 0 1H2a2 2 0 0 1-2-2zm1 2h13V4a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M16 12.5a3.5 3.5 0 1 1-7 0 3.5 3.5 0 0 1 7 0m-5.5 0a.5.5 0 0 0 .5.5h3a.5.5 0 0 0 0-1h-3a.5.5 0 0 0-.5.5\"},\"child\":[]}]})(props);\n};\nexport function BsWindowDesktop (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3.5 11a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h9a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2.375 1A2.366 2.366 0 0 0 0 3.357v9.286A2.366 2.366 0 0 0 2.375 15h11.25A2.366 2.366 0 0 0 16 12.643V3.357A2.366 2.366 0 0 0 13.625 1zM1 3.357C1 2.612 1.611 2 2.375 2h11.25C14.389 2 15 2.612 15 3.357V4H1zM1 5h14v7.643c0 .745-.611 1.357-1.375 1.357H2.375A1.366 1.366 0 0 1 1 12.643z\"},\"child\":[]}]})(props);\n};\nexport function BsWindowDock (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3.5 11a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm3.5.5a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5zm4.5-.5a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M14 1a2 2 0 0 1 2 2v10a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2zM2 14h12a1 1 0 0 0 1-1V5H1v8a1 1 0 0 0 1 1M2 2a1 1 0 0 0-1 1v1h14V3a1 1 0 0 0-1-1z\"},\"child\":[]}]})(props);\n};\nexport function BsWindowFullscreen (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M3 3.5a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0m1.5 0a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0m1 .5a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M.5 1a.5.5 0 0 0-.5.5v13a.5.5 0 0 0 .5.5h15a.5.5 0 0 0 .5-.5v-13a.5.5 0 0 0-.5-.5zM1 5V2h14v3zm0 1h14v8H1z\"},\"child\":[]}]})(props);\n};\nexport function BsWindowPlus (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2.5 5a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1M4 5a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1m2-.5a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M0 4a2 2 0 0 1 2-2h11a2 2 0 0 1 2 2v4a.5.5 0 0 1-1 0V7H1v5a1 1 0 0 0 1 1h5.5a.5.5 0 0 1 0 1H2a2 2 0 0 1-2-2zm1 2h13V4a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M16 12.5a3.5 3.5 0 1 1-7 0 3.5 3.5 0 0 1 7 0m-3.5-2a.5.5 0 0 0-.5.5v1h-1a.5.5 0 0 0 0 1h1v1a.5.5 0 0 0 1 0v-1h1a.5.5 0 0 0 0-1h-1v-1a.5.5 0 0 0-.5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsWindowSidebar (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2.5 4a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1m2-.5a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0m1 .5a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 1a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V3a2 2 0 0 0-2-2zm12 1a1 1 0 0 1 1 1v2H1V3a1 1 0 0 1 1-1zM1 13V6h4v8H2a1 1 0 0 1-1-1m5 1V6h9v7a1 1 0 0 1-1 1z\"},\"child\":[]}]})(props);\n};\nexport function BsWindowSplit (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2.5 4a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1m2-.5a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0m1 .5a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 1a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V3a2 2 0 0 0-2-2zm12 1a1 1 0 0 1 1 1v2H1V3a1 1 0 0 1 1-1zM1 13V6h6.5v8H2a1 1 0 0 1-1-1m7.5 1V6H15v7a1 1 0 0 1-1 1z\"},\"child\":[]}]})(props);\n};\nexport function BsWindowStack (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4.5 6a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1M6 6a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1m2-.5a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M12 1a2 2 0 0 1 2 2 2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2 2 2 0 0 1-2-2V3a2 2 0 0 1 2-2zM2 12V5a2 2 0 0 1 2-2h9a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1v8a1 1 0 0 0 1 1m1-4v5a1 1 0 0 0 1 1h10a1 1 0 0 0 1-1V8zm12-1V5a1 1 0 0 0-1-1H4a1 1 0 0 0-1 1v2z\"},\"child\":[]}]})(props);\n};\nexport function BsWindowX (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2.5 5a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1M4 5a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1m2-.5a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M0 4a2 2 0 0 1 2-2h11a2 2 0 0 1 2 2v4a.5.5 0 0 1-1 0V7H1v5a1 1 0 0 0 1 1h5.5a.5.5 0 0 1 0 1H2a2 2 0 0 1-2-2zm1 2h13V4a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M16 12.5a3.5 3.5 0 1 1-7 0 3.5 3.5 0 0 1 7 0m-4.854-1.354a.5.5 0 0 0 0 .708l.647.646-.647.646a.5.5 0 0 0 .708.708l.646-.647.646.647a.5.5 0 0 0 .708-.708l-.647-.646.647-.646a.5.5 0 0 0-.708-.708l-.646.647-.646-.647a.5.5 0 0 0-.708 0\"},\"child\":[]}]})(props);\n};\nexport function BsWindow (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2.5 4a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1m2-.5a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0m1 .5a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M2 1a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V3a2 2 0 0 0-2-2zm13 2v2H1V3a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1M2 14a1 1 0 0 1-1-1V6h14v7a1 1 0 0 1-1 1z\"},\"child\":[]}]})(props);\n};\nexport function BsWindows (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.555 1.375 0 2.237v5.45h6.555zM0 13.795l6.555.933V8.313H0zm7.278-5.4.026 6.378L16 16V8.395zM16 0 7.33 1.244v6.414H16z\"},\"child\":[]}]})(props);\n};\nexport function BsWordpress (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12.633 7.653c0-.848-.305-1.435-.566-1.892l-.08-.13c-.317-.51-.594-.958-.594-1.48 0-.63.478-1.218 1.152-1.218q.03 0 .058.003l.031.003A6.84 6.84 0 0 0 8 1.137 6.86 6.86 0 0 0 2.266 4.23c.16.005.313.009.442.009.717 0 1.828-.087 1.828-.087.37-.022.414.521.044.565 0 0-.371.044-.785.065l2.5 7.434 1.5-4.506-1.07-2.929c-.369-.022-.719-.065-.719-.065-.37-.022-.326-.588.043-.566 0 0 1.134.087 1.808.087.718 0 1.83-.087 1.83-.087.37-.022.413.522.043.566 0 0-.372.043-.785.065l2.48 7.377.684-2.287.054-.173c.27-.86.469-1.495.469-2.046zM1.137 8a6.86 6.86 0 0 0 3.868 6.176L1.73 5.206A6.8 6.8 0 0 0 1.137 8\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M6.061 14.583 8.121 8.6l2.109 5.78q.02.05.049.094a6.85 6.85 0 0 1-4.218.109m7.96-9.876q.046.328.047.706c0 .696-.13 1.479-.522 2.458l-2.096 6.06a6.86 6.86 0 0 0 2.572-9.224z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M0 8c0-4.411 3.589-8 8-8s8 3.589 8 8-3.59 8-8 8-8-3.589-8-8m.367 0c0 4.209 3.424 7.633 7.633 7.633S15.632 12.209 15.632 8C15.632 3.79 12.208.367 8 .367 3.79.367.367 3.79.367 8\"},\"child\":[]}]})(props);\n};\nexport function BsWrenchAdjustableCircleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M6.705 8.139a.25.25 0 0 0-.288-.376l-1.5.5.159.474.808-.27-.595.894a.25.25 0 0 0 .287.376l.808-.27-.595.894a.25.25 0 0 0 .287.376l1.5-.5-.159-.474-.808.27.596-.894a.25.25 0 0 0-.288-.376l-.808.27z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8 16A8 8 0 1 0 8 0a8 8 0 0 0 0 16m-6.202-4.751 1.988-1.657a4.5 4.5 0 0 1 7.537-4.623L7.497 6.5l1 2.5 1.333 3.11c-.56.251-1.18.39-1.833.39a4.5 4.5 0 0 1-1.592-.29L4.747 14.2a7.03 7.03 0 0 1-2.949-2.951M12.496 8a4.5 4.5 0 0 1-1.703 3.526L9.497 8.5l2.959-1.11q.04.3.04.61\"},\"child\":[]}]})(props);\n};\nexport function BsWrenchAdjustableCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M12.496 8a4.5 4.5 0 0 1-1.703 3.526L9.497 8.5l2.959-1.11q.04.3.04.61\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0m-1 0a7 7 0 1 0-13.202 3.249l1.988-1.657a4.5 4.5 0 0 1 7.537-4.623L7.497 6.5l1 2.5 1.333 3.11c-.56.251-1.18.39-1.833.39a4.5 4.5 0 0 1-1.592-.29L4.747 14.2A7 7 0 0 0 15 8m-8.295.139a.25.25 0 0 0-.288-.376l-1.5.5.159.474.808-.27-.595.894a.25.25 0 0 0 .287.376l.808-.27-.595.894a.25.25 0 0 0 .287.376l1.5-.5-.159-.474-.808.27.596-.894a.25.25 0 0 0-.288-.376l-.808.27z\"},\"child\":[]}]})(props);\n};\nexport function BsWrenchAdjustable (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 4.5a4.5 4.5 0 0 1-1.703 3.526L13 5l2.959-1.11q.04.3.041.61\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M11.5 9c.653 0 1.273-.139 1.833-.39L12 5.5 11 3l3.826-1.53A4.5 4.5 0 0 0 7.29 6.092l-6.116 5.096a2.583 2.583 0 1 0 3.638 3.638L9.908 8.71A4.5 4.5 0 0 0 11.5 9m-1.292-4.361-.596.893.809-.27a.25.25 0 0 1 .287.377l-.596.893.809-.27.158.475-1.5.5a.25.25 0 0 1-.287-.376l.596-.893-.809.27a.25.25 0 0 1-.287-.377l.596-.893-.809.27-.158-.475 1.5-.5a.25.25 0 0 1 .287.376M3 14a1 1 0 1 1 0-2 1 1 0 0 1 0 2\"},\"child\":[]}]})(props);\n};\nexport function BsWrench (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M.102 2.223A3.004 3.004 0 0 0 3.78 5.897l6.341 6.252A3.003 3.003 0 0 0 13 16a3 3 0 1 0-.851-5.878L5.897 3.781A3.004 3.004 0 0 0 2.223.1l2.141 2.142L4 4l-1.757.364zm13.37 9.019.528.026.287.445.445.287.026.529L15 13l-.242.471-.026.529-.445.287-.287.445-.529.026L13 15l-.471-.242-.529-.026-.287-.445-.445-.287-.026-.529L11 13l.242-.471.026-.529.445-.287.287-.445.529-.026L13 11z\"},\"child\":[]}]})(props);\n};\nexport function BsXCircleFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0M5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293z\"},\"child\":[]}]})(props);\n};\nexport function BsXCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14m0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4.646 4.646a.5.5 0 0 1 .708 0L8 7.293l2.646-2.647a.5.5 0 0 1 .708.708L8.707 8l2.647 2.646a.5.5 0 0 1-.708.708L8 8.707l-2.646 2.647a.5.5 0 0 1-.708-.708L7.293 8 4.646 5.354a.5.5 0 0 1 0-.708\"},\"child\":[]}]})(props);\n};\nexport function BsXDiamondFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.05.435c-.58-.58-1.52-.58-2.1 0L4.047 3.339 8 7.293l3.954-3.954L9.049.435zm3.61 3.611L8.708 8l3.954 3.954 2.904-2.905c.58-.58.58-1.519 0-2.098l-2.904-2.905zm-.706 8.614L8 8.708l-3.954 3.954 2.905 2.904c.58.58 1.519.58 2.098 0l2.905-2.904zm-8.614-.706L7.292 8 3.339 4.046.435 6.951c-.58.58-.58 1.519 0 2.098z\"},\"child\":[]}]})(props);\n};\nexport function BsXDiamond (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.987 16a1.53 1.53 0 0 1-1.07-.448L.45 9.082a1.53 1.53 0 0 1 0-2.165L6.917.45a1.53 1.53 0 0 1 2.166 0l6.469 6.468A1.53 1.53 0 0 1 16 8.013a1.53 1.53 0 0 1-.448 1.07l-6.47 6.469A1.53 1.53 0 0 1 7.988 16zM7.639 1.17 4.766 4.044 8 7.278l3.234-3.234L8.361 1.17a.51.51 0 0 0-.722 0M8.722 8l3.234 3.234 2.873-2.873c.2-.2.2-.523 0-.722l-2.873-2.873zM8 8.722l-3.234 3.234 2.873 2.873c.2.2.523.2.722 0l2.873-2.873zM7.278 8 4.044 4.766 1.17 7.639a.51.51 0 0 0 0 .722l2.874 2.873z\"},\"child\":[]}]})(props);\n};\nexport function BsXLg (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2.146 2.854a.5.5 0 1 1 .708-.708L8 7.293l5.146-5.147a.5.5 0 0 1 .708.708L8.707 8l5.147 5.146a.5.5 0 0 1-.708.708L8 8.707l-5.146 5.147a.5.5 0 0 1-.708-.708L7.293 8z\"},\"child\":[]}]})(props);\n};\nexport function BsXOctagonFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M11.46.146A.5.5 0 0 0 11.107 0H4.893a.5.5 0 0 0-.353.146L.146 4.54A.5.5 0 0 0 0 4.893v6.214a.5.5 0 0 0 .146.353l4.394 4.394a.5.5 0 0 0 .353.146h6.214a.5.5 0 0 0 .353-.146l4.394-4.394a.5.5 0 0 0 .146-.353V4.893a.5.5 0 0 0-.146-.353zm-6.106 4.5L8 7.293l2.646-2.647a.5.5 0 0 1 .708.708L8.707 8l2.647 2.646a.5.5 0 0 1-.708.708L8 8.707l-2.646 2.647a.5.5 0 0 1-.708-.708L7.293 8 4.646 5.354a.5.5 0 1 1 .708-.708\"},\"child\":[]}]})(props);\n};\nexport function BsXOctagon (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353zM5.1 1 1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4.646 4.646a.5.5 0 0 1 .708 0L8 7.293l2.646-2.647a.5.5 0 0 1 .708.708L8.707 8l2.647 2.646a.5.5 0 0 1-.708.708L8 8.707l-2.646 2.647a.5.5 0 0 1-.708-.708L7.293 8 4.646 5.354a.5.5 0 0 1 0-.708\"},\"child\":[]}]})(props);\n};\nexport function BsXSquareFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm3.354 4.646L8 7.293l2.646-2.647a.5.5 0 0 1 .708.708L8.707 8l2.647 2.646a.5.5 0 0 1-.708.708L8 8.707l-2.646 2.647a.5.5 0 0 1-.708-.708L7.293 8 4.646 5.354a.5.5 0 1 1 .708-.708\"},\"child\":[]}]})(props);\n};\nexport function BsXSquare (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M14 1a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1zM2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M4.646 4.646a.5.5 0 0 1 .708 0L8 7.293l2.646-2.647a.5.5 0 0 1 .708.708L8.707 8l2.647 2.646a.5.5 0 0 1-.708.708L8 8.707l-2.646 2.647a.5.5 0 0 1-.708-.708L7.293 8 4.646 5.354a.5.5 0 0 1 0-.708\"},\"child\":[]}]})(props);\n};\nexport function BsX (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M4.646 4.646a.5.5 0 0 1 .708 0L8 7.293l2.646-2.647a.5.5 0 0 1 .708.708L8.707 8l2.647 2.646a.5.5 0 0 1-.708.708L8 8.707l-2.646 2.647a.5.5 0 0 1-.708-.708L7.293 8 4.646 5.354a.5.5 0 0 1 0-.708\"},\"child\":[]}]})(props);\n};\nexport function BsXbox (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M7.202 15.967a8 8 0 0 1-3.552-1.26c-.898-.585-1.101-.826-1.101-1.306 0-.965 1.062-2.656 2.879-4.583C6.459 7.723 7.897 6.44 8.052 6.475c.302.068 2.718 2.423 3.622 3.531 1.43 1.753 2.088 3.189 1.754 3.829-.254.486-1.83 1.437-2.987 1.802-.954.301-2.207.429-3.239.33m-5.866-3.57C.589 11.253.212 10.127.03 8.497c-.06-.539-.038-.846.137-1.95.218-1.377 1.002-2.97 1.945-3.95.401-.417.437-.427.926-.263.595.2 1.23.638 2.213 1.528l.574.519-.313.385C4.056 6.553 2.52 9.086 1.94 10.653c-.315.852-.442 1.707-.306 2.063.091.24.007.15-.3-.319Zm13.101.195c.074-.36-.019-1.02-.238-1.687-.473-1.443-2.055-4.128-3.508-5.953l-.457-.575.494-.454c.646-.593 1.095-.948 1.58-1.25.381-.237.927-.448 1.161-.448.145 0 .654.528 1.065 1.104a8.4 8.4 0 0 1 1.343 3.102c.153.728.166 2.286.024 3.012a9.5 9.5 0 0 1-.6 1.893c-.179.393-.624 1.156-.82 1.404-.1.128-.1.127-.043-.148ZM7.335 1.952c-.67-.34-1.704-.705-2.276-.803a4 4 0 0 0-.759-.043c-.471.024-.45 0 .306-.358A7.8 7.8 0 0 1 6.47.128c.8-.169 2.306-.17 3.094-.005.85.18 1.853.552 2.418.9l.168.103-.385-.02c-.766-.038-1.88.27-3.078.853-.361.176-.676.316-.699.312a12 12 0 0 1-.654-.319Z\"},\"child\":[]}]})(props);\n};\nexport function BsYelp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m4.188 10.095.736-.17.073-.02A.813.813 0 0 0 5.45 8.65a1 1 0 0 0-.3-.258 3 3 0 0 0-.428-.198l-.808-.295a76 76 0 0 0-1.364-.493C2.253 7.3 2 7.208 1.783 7.14c-.041-.013-.087-.025-.124-.038a2.1 2.1 0 0 0-.606-.116.72.72 0 0 0-.572.245 2 2 0 0 0-.105.132 1.6 1.6 0 0 0-.155.309c-.15.443-.225.908-.22 1.376.002.423.013.966.246 1.334a.8.8 0 0 0 .22.24c.166.114.333.129.507.141.26.019.513-.045.764-.103l2.447-.566zm8.219-3.911a4.2 4.2 0 0 0-.8-1.14 1.6 1.6 0 0 0-.275-.21 2 2 0 0 0-.15-.073.72.72 0 0 0-.621.031c-.142.07-.294.182-.496.37-.028.028-.063.06-.094.089-.167.156-.353.35-.574.575q-.51.516-1.01 1.042l-.598.62a3 3 0 0 0-.298.365 1 1 0 0 0-.157.364.8.8 0 0 0 .007.301q0 .007.003.013a.81.81 0 0 0 .945.616l.074-.014 3.185-.736c.251-.058.506-.112.732-.242.151-.088.295-.175.394-.35a.8.8 0 0 0 .093-.313c.05-.434-.178-.927-.36-1.308M6.706 7.523c.23-.29.23-.722.25-1.075.07-1.181.143-2.362.201-3.543.022-.448.07-.89.044-1.34-.022-.372-.025-.799-.26-1.104C6.528-.077 5.644-.033 5.04.05q-.278.038-.553.104a8 8 0 0 0-.543.149c-.58.19-1.393.537-1.53 1.204-.078.377.106.763.249 1.107.173.417.41.792.625 1.185.57 1.036 1.15 2.066 1.728 3.097.172.308.36.697.695.857q.033.015.068.025c.15.057.313.068.469.032l.028-.007a.8.8 0 0 0 .377-.226zm-.276 3.161a.74.74 0 0 0-.923-.234 1 1 0 0 0-.145.09 2 2 0 0 0-.346.354c-.026.033-.05.077-.08.104l-.512.705q-.435.591-.861 1.193c-.185.26-.346.479-.472.673l-.072.11c-.152.235-.238.406-.282.559a.7.7 0 0 0-.03.314c.013.11.05.217.108.312q.046.07.1.138a1.6 1.6 0 0 0 .257.237 4.5 4.5 0 0 0 2.196.76 1.6 1.6 0 0 0 .349-.027 2 2 0 0 0 .163-.048.8.8 0 0 0 .278-.178.7.7 0 0 0 .17-.266c.059-.147.098-.335.123-.613l.012-.13c.02-.231.03-.502.045-.821q.037-.735.06-1.469l.033-.87a2.1 2.1 0 0 0-.055-.623 1 1 0 0 0-.117-.27Zm5.783 1.362a2.2 2.2 0 0 0-.498-.378l-.112-.067c-.199-.12-.438-.246-.719-.398q-.644-.353-1.295-.695l-.767-.407c-.04-.012-.08-.04-.118-.059a2 2 0 0 0-.466-.166 1 1 0 0 0-.17-.018.74.74 0 0 0-.725.616 1 1 0 0 0 .01.293c.038.204.13.406.224.583l.41.768q.341.65.696 1.294c.152.28.28.52.398.719q.036.057.068.112c.145.239.261.39.379.497a.73.73 0 0 0 .596.201 2 2 0 0 0 .168-.029 1.6 1.6 0 0 0 .325-.129 4 4 0 0 0 .855-.64c.306-.3.577-.63.788-1.006q.045-.08.076-.165a2 2 0 0 0 .051-.161q.019-.083.029-.168a.8.8 0 0 0-.038-.327.7.7 0 0 0-.165-.27\"},\"child\":[]}]})(props);\n};\nexport function BsYinYang (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M9.167 4.5a1.167 1.167 0 1 1-2.334 0 1.167 1.167 0 0 1 2.334 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M8 0a8 8 0 1 0 0 16A8 8 0 0 0 8 0M1 8a7 7 0 0 1 7-7 3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 0 0 7 7 7 0 0 1-7-7m7 4.667a1.167 1.167 0 1 1 0-2.334 1.167 1.167 0 0 1 0 2.334\"},\"child\":[]}]})(props);\n};\nexport function BsYoutube (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M8.051 1.999h.089c.822.003 4.987.033 6.11.335a2.01 2.01 0 0 1 1.415 1.42c.101.38.172.883.22 1.402l.01.104.022.26.008.104c.065.914.073 1.77.074 1.957v.075c-.001.194-.01 1.108-.082 2.06l-.008.105-.009.104c-.05.572-.124 1.14-.235 1.558a2.01 2.01 0 0 1-1.415 1.42c-1.16.312-5.569.334-6.18.335h-.142c-.309 0-1.587-.006-2.927-.052l-.17-.006-.087-.004-.171-.007-.171-.007c-1.11-.049-2.167-.128-2.654-.26a2.01 2.01 0 0 1-1.415-1.419c-.111-.417-.185-.986-.235-1.558L.09 9.82l-.008-.104A31 31 0 0 1 0 7.68v-.123c.002-.215.01-.958.064-1.778l.007-.103.003-.052.008-.104.022-.26.01-.104c.048-.519.119-1.023.22-1.402a2.01 2.01 0 0 1 1.415-1.42c.487-.13 1.544-.21 2.654-.26l.17-.007.172-.006.086-.003.171-.007A100 100 0 0 1 7.858 2zM6.4 5.209v4.818l4.157-2.408z\"},\"child\":[]}]})(props);\n};\nexport function BsZoomIn (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M6.5 12a5.5 5.5 0 1 0 0-11 5.5 5.5 0 0 0 0 11M13 6.5a6.5 6.5 0 1 1-13 0 6.5 6.5 0 0 1 13 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M10.344 11.742q.044.06.098.115l3.85 3.85a1 1 0 0 0 1.415-1.414l-3.85-3.85a1 1 0 0 0-.115-.1 6.5 6.5 0 0 1-1.398 1.4z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M6.5 3a.5.5 0 0 1 .5.5V6h2.5a.5.5 0 0 1 0 1H7v2.5a.5.5 0 0 1-1 0V7H3.5a.5.5 0 0 1 0-1H6V3.5a.5.5 0 0 1 .5-.5\"},\"child\":[]}]})(props);\n};\nexport function BsZoomOut (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"fill\":\"currentColor\",\"viewBox\":\"0 0 16 16\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M6.5 12a5.5 5.5 0 1 0 0-11 5.5 5.5 0 0 0 0 11M13 6.5a6.5 6.5 0 1 1-13 0 6.5 6.5 0 0 1 13 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M10.344 11.742q.044.06.098.115l3.85 3.85a1 1 0 0 0 1.415-1.414l-3.85-3.85a1 1 0 0 0-.115-.1 6.5 6.5 0 0 1-1.398 1.4z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M3 6.5a.5.5 0 0 1 .5-.5h6a.5.5 0 0 1 0 1h-6a.5.5 0 0 1-.5-.5\"},\"child\":[]}]})(props);\n};\n","import { XCircleFillIcon } from \"@primer/octicons-react\";\r\n\r\ninterface IProps {\r\n title?: string | undefined;\r\n toolTip?: string | undefined;\r\n showContainer: boolean;\r\n items: Array;\r\n getItemTitle: (item: any) => string;\r\n getItemTooltip?: (item: any) => string | undefined;\r\n onItemRemoved: (item: any) => void;\r\n onItemsCleared: () => void;\r\n}\r\n\r\nexport default function SelectedItems(props: IProps): React.JSX.Element {\r\n const selections = props.items.map((i) => (\r\n \r\n props.onItemRemoved(i)}\r\n />\r\n \r\n ));\r\n\r\n function ShowSelections(): React.JSX.Element {\r\n return (\r\n <>\r\n {selections.length === 0 ? (\r\n No selections have been made.\r\n ) : (\r\n
\r\n {selections}\r\n {selections.length > 0 && (\r\n props.onItemsCleared()} />\r\n )}\r\n
\r\n )}\r\n \r\n );\r\n }\r\n\r\n if (props.showContainer) {\r\n return (\r\n
\r\n
{props.title ? `Selected ${props.title}s` : \"Selections\"}
\r\n
\r\n \r\n
\r\n
\r\n );\r\n } else {\r\n return ;\r\n }\r\n}\r\n\r\nfunction SelectionButton(props: { itemName: string; title: string; onClick: () => void; buttonStyle: \"primary\" | \"secondary\" }): JSX.Element {\r\n return (\r\n \r\n
\r\n {props.itemName}\r\n \r\n
\r\n
\r\n );\r\n}\r\n","import { useEffect } from \"react\";\r\nimport { Link } from \"react-router-dom\";\r\nimport { BsBasket3Fill } from \"react-icons/bs\";\r\nimport * as RouteHelper from \"../../routeHelper\";\r\nimport SelectedItems from \"../../../common/selectedItems/SelectedItems\";\r\nimport { useDispatch } from \"react-redux\";\r\nimport { INopimsBasketItemModel } from \"../redux/model\";\r\nimport * as Actions from \"../redux/actions\";\r\nimport { useNopimsBasket } from \"../redux/reducers\";\r\nimport { useUserToken } from \"../../../common/shell/shellHelper\";\r\n\r\nexport default function Controller(): React.JSX.Element {\r\n const dispatch = useDispatch();\r\n const nopimsBasketModel = useNopimsBasket();\r\n const userToken = useUserToken();\r\n\r\n const onFocus = () => {\r\n // reload the basket from the service\r\n dispatch(Actions.initialise());\r\n };\r\n\r\n useEffect(() => {\r\n // on mount load the basket from the service\r\n dispatch(Actions.setUser(userToken));\r\n dispatch(Actions.initialise());\r\n\r\n // register a event handler to reinitialise the basket on window focus\r\n window.addEventListener(\"focus\", onFocus);\r\n // and remove the event handler on unload\r\n return () => {\r\n window.removeEventListener(\"focus\", onFocus);\r\n };\r\n }, []); // eslint-disable-line react-hooks/exhaustive-deps\r\n\r\n function onItemRemoved(item: INopimsBasketItemModel): void {\r\n dispatch(Actions.itemsRemoved([item]));\r\n }\r\n\r\n function onItemsCleared(): void {\r\n dispatch(Actions.itemsRemoved(nopimsBasketModel.items));\r\n }\r\n\r\n return (\r\n <>\r\n
\r\n
\r\n Manage Basket\r\n
\r\n \r\n \r\n \r\n {nopimsBasketModel.items.length}\r\n
\r\n
\r\n
\r\n i.dataDescription}\r\n getItemTooltip={(i: INopimsBasketItemModel) => i.activity + \"'s Document from the Basket\"}\r\n onItemRemoved={onItemRemoved}\r\n onItemsCleared={onItemsCleared}\r\n >\r\n
\r\n
\r\n \r\n );\r\n}\r\n","import React from \"react\";\r\nimport PageLayout from \"../../common/shell/PageLayout\";\r\nimport NopimsLhsNav, { nopimsLhsNavItemEnum } from \"./NopimsLhsNav\";\r\nimport ShoppingCartSummaryController from \"../basket/summary/Controller\";\r\nimport { usePortalLink } from \"../../common/shell/shellHelper\";\r\nimport { ExternalLinkEnum } from \"../../api/Client\";\r\n\r\ninterface IProps {\r\n title: (string | undefined)[];\r\n titleReactNode?: React.ReactNode | undefined;\r\n children: React.ReactNode;\r\n lhsNavItem?: nopimsLhsNavItemEnum | undefined;\r\n showGuidance?: boolean;\r\n}\r\n\r\nexport default function NopimsPageLayout(props: IProps): React.JSX.Element {\r\n const helpUrl = usePortalLink(ExternalLinkEnum.NeatsNopimsPublicPortalGuidance);\r\n\r\n return (\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n {props.children}{\" \"}\r\n \r\n
\r\n
\r\n
\r\n );\r\n}\r\n","import { CompositeFilterDescriptor, FilterDescriptor, State, toODataString } from \"@progress/kendo-data-query\";\r\nimport { getServicesUri } from \"../../api/uriHelper\";\r\nimport { clone } from \"lodash\";\r\nimport { ICustomFilterExpression } from \"./ODataReader\";\r\n\r\nexport function getUrl(\r\n url: string,\r\n dataState: State,\r\n additionalQueries: string[] | undefined,\r\n customFilterExpressions: Array | undefined,\r\n additionalFilters: CompositeFilterDescriptor | undefined,\r\n suppressSkipAndTake: boolean\r\n): string {\r\n if (!dataState || !dataState.filter) throw new Error();\r\n\r\n // so - the Kendo 'toODataString' has lots of limitations\r\n // to avoid generating malformed requests based on incomplete query structures, we remove any empty expression groups\r\n // this is to work around a kendo bug; it is clear they have not performed rudimentary testing\r\n // there are also many expressions they cannot/do not generate properly, so we need to patch in 'custom expressions'\r\n // yes, it is very very hacky but has been done out of necessity until we can get kendo to help us with this\r\n // unfortunately their documentation is severely lacking\r\n // TODO work with Kendo on a better solution here\r\n\r\n const customExpressions = customFilterExpressions ? getCustomExpressions(dataState.filter!, customFilterExpressions) : [];\r\n\r\n // filter the filters, keeping only what we want to use, and inject placeholders for custom expressions\r\n const filter = getFilter(dataState.filter!, customExpressions, additionalFilters);\r\n\r\n // generate OData query string (using Kendo's standard logic)\r\n // - clone the data state so we can manipulate it without mutating the parameter passed in\r\n // - we may need to clear the skip/take parameters\r\n const dataStateClone = clone(dataState);\r\n dataStateClone.filter = filter;\r\n if (suppressSkipAndTake) {\r\n dataStateClone.skip = undefined;\r\n dataStateClone.take = undefined;\r\n }\r\n let query = toODataString(dataStateClone);\r\n\r\n // inject custom expressions\r\n // - find and replace expression placeholders\r\n query = replaceCustomExpressionPlaceholders(query, customExpressions);\r\n\r\n // add any additional query options\r\n // - this can be used to expand navigation properties\r\n if (additionalQueries) {\r\n for (const q of additionalQueries!) query = query + \"&\" + q;\r\n }\r\n\r\n // add 'count=true' as this is needed for the paging control\r\n query = query + \"&$count=true\";\r\n\r\n // return the final query\r\n query = getServicesUri() + \"/\" + url + \"?\" + encodeURI(query);\r\n return query;\r\n\r\n function getCustomExpressions(\r\n compositeFilterDescriptor: CompositeFilterDescriptor,\r\n customFilterExpressions: Array\r\n ): { key: string; name: string; expression: string | undefined }[] {\r\n // generates OData expressions for any supplied custom filters\r\n // the key identifies the custom expression instance\r\n\r\n if (!compositeFilterDescriptor) throw new Error(\"compositeFilterDescriptor is required!\");\r\n if (!customFilterExpressions) throw new Error(\"customFilterExpressions is required!\");\r\n if (customFilterExpressions.find((e) => !e.name.startsWith(\"@\"))) throw new Error(\"customFilterExpressions must all use a name that starts with '@'!\");\r\n if (customFilterExpressions.find((e) => customFilterExpressions.filter((e2) => e.name === e2.name).length > 1)) throw new Error(\"customFilterExpression names must be unique!\");\r\n\r\n let result: { key: string; name: string; expression: string | undefined }[] = [];\r\n\r\n // walk the supplied filter hierarchy and detect where we need to build custom expressions\r\n\r\n for (const f of compositeFilterDescriptor.filters) {\r\n if (isFilterDescriptor(f)) {\r\n // process filters\r\n // - ignore expressions that won't require a custom expression\r\n // - only add unique expressions\r\n const fd = f as FilterDescriptor;\r\n const customFilterExpression = customFilterExpressions.find((cfe) => cfe.name === fd.field);\r\n if (!customFilterExpression) continue;\r\n const expression = customFilterExpression.expression(fd.value, fd.operator);\r\n const key = getCustomExpressionKey(fd);\r\n if (!result.find((e) => e.key === key)) result.push({ key: key, name: customFilterExpression.name, expression: expression });\r\n }\r\n\r\n // process composite filters (filter groups)\r\n // - recursive\r\n // - ignore empty groups\r\n // - only add unique expressions\r\n if (isCompositeFilterDescriptor(f)) {\r\n const cf = f as CompositeFilterDescriptor;\r\n if (getNumberOfFiltersUnderCompositeFilterDescriptor(cf) === 0) continue;\r\n const childResult = getCustomExpressions(cf, customFilterExpressions);\r\n for (const r of childResult) {\r\n if (result.find((e) => e.key === r.key)) continue;\r\n result.push(r);\r\n }\r\n }\r\n }\r\n\r\n return result;\r\n }\r\n\r\n function getFilter(\r\n compositeFilterDescriptor: CompositeFilterDescriptor,\r\n customExpressions: { key: string; name: string; expression: string | undefined }[],\r\n additionalFilters: CompositeFilterDescriptor | undefined\r\n ): CompositeFilterDescriptor {\r\n if (!compositeFilterDescriptor) throw new Error(\"compositeFilterDescriptor is required!\");\r\n if (!customExpressions) throw new Error(\"customExpressions is required!\");\r\n\r\n const result: CompositeFilterDescriptor = { logic: compositeFilterDescriptor.logic, filters: [] };\r\n\r\n // walk the supplied filter hierarchy and build an alternate hierarchy\r\n\r\n for (const f of compositeFilterDescriptor.filters) {\r\n if (isFilterDescriptor(f)) {\r\n // process filters\r\n // - inject placeholder expressions for custom expressions\r\n // - ignore custom expressions that return 'undefined'\r\n // - add normal field expressions\r\n const fd = f as FilterDescriptor;\r\n const fieldName = fd.field as string;\r\n if (!fieldName) throw new Error(\"The field name must contain a value!\");\r\n // custom expression\r\n const ce = customExpressions.find((ce2) => ce2.key === getCustomExpressionKey(fd));\r\n if (fieldName.startsWith(\"@\") && !ce) throw new Error(`A custom expression is missing for field '${fieldName}'!`);\r\n if (ce) {\r\n if (!ce.expression) continue;\r\n result.filters.push({ field: fd.field, operator: \"eq\", value: ce.key } as FilterDescriptor);\r\n continue;\r\n }\r\n // add it!\r\n result.filters.push(f);\r\n }\r\n\r\n // process composite filters (filter groups)\r\n // - recursive\r\n // - ignore empty groups\r\n if (isCompositeFilterDescriptor(f)) {\r\n const cf = f as CompositeFilterDescriptor;\r\n const children = getFilter(cf, customExpressions, undefined);\r\n if (getNumberOfFiltersUnderCompositeFilterDescriptor(children) === 0) continue;\r\n result.filters.push(children);\r\n }\r\n }\r\n\r\n // If we have additional filters, apply at the top level.\r\n if (additionalFilters) {\r\n if (result.filters.length === 0) return additionalFilters;\r\n else return { logic: \"and\", filters: [result, additionalFilters] };\r\n }\r\n\r\n return result;\r\n }\r\n\r\n function getCustomExpressionKey(filterDescriptor: FilterDescriptor): string {\r\n // generates a unique key for the supplied expression\r\n // - one considered alternative to the approach used below is to generate an alphanumeric sequence from the raw hex data, which would avoid being escaped\r\n return JSON.stringify({ name: filterDescriptor.field!, operator: filterDescriptor.operator, value: filterDescriptor.value });\r\n }\r\n\r\n function replaceCustomExpressionPlaceholders(query: string, customExpressions: { key: string; name: string; expression: string | undefined }[]): string {\r\n // inject custom expressions\r\n // - find and replace expressions based on the the keys embedded in the placeholder expressions\r\n\r\n /*\r\n // for debugging only!\r\n console.log(\"BEFORE INJECTION\");\r\n console.log(query);\r\n console.log(customExpressions);\r\n */\r\n\r\n let result = query;\r\n for (const ce of customExpressions) {\r\n // don't inject custom expressions where there is no expression to inject\r\n if (!ce.expression) continue;\r\n\r\n // replace all instances of the given expression\r\n // - note that kendo uses 'encodeURIComponent' to format the key\r\n const placeholderExpression = ce.name + \" eq '\" + encodeURIComponent(ce.key) + \"'\";\r\n const newQuery = result.replaceAll(placeholderExpression, ce.expression);\r\n if (newQuery === query) throw new Error(`The custom expression for '${ce.name}' was not replaced!`);\r\n result = newQuery;\r\n }\r\n\r\n /*\r\n // for debugging only!\r\n console.log(\"AFTER INJECTION\");\r\n console.log(result);\r\n */\r\n\r\n return result;\r\n }\r\n}\r\n\r\nfunction getNumberOfFiltersUnderCompositeFilterDescriptor(compositeFilterDescriptor: CompositeFilterDescriptor): number {\r\n if (!compositeFilterDescriptor.filters || compositeFilterDescriptor.filters.length === 0) return 0;\r\n\r\n let result = 0;\r\n for (let i = 0; i < compositeFilterDescriptor.filters.length; i++) {\r\n const f = compositeFilterDescriptor.filters[i];\r\n\r\n // count FilterDescriptors\r\n if (isFilterDescriptor(f)) result++;\r\n\r\n // count FilterDescriptors under CompositeFilterDescriptors\r\n if (isCompositeFilterDescriptor(f)) {\r\n const cf = f as CompositeFilterDescriptor;\r\n result += getNumberOfFiltersUnderCompositeFilterDescriptor(cf);\r\n }\r\n }\r\n return result;\r\n}\r\n\r\nfunction isFilterDescriptor(filter: CompositeFilterDescriptor | FilterDescriptor | undefined): boolean {\r\n // the FilterDescriptor contains a mandatory 'Operator' field that we check for\r\n if (!filter) return false;\r\n const f: any = filter!;\r\n return !!f.operator;\r\n}\r\n\r\nfunction isCompositeFilterDescriptor(filter: CompositeFilterDescriptor | FilterDescriptor | undefined): boolean {\r\n // the CompositeFilterDescriptor contains a mandatory 'Logic' field that we check for\r\n if (!filter) return false;\r\n const f: any = filter!;\r\n return !!f.logic;\r\n}\r\n\r\nconst maximumFilters = 15;\r\nconst maximumValueLength = 100;\r\n\r\nexport function getDataStateFilterValidationMessages(compositeFilterDescriptor: CompositeFilterDescriptor | undefined): string | undefined {\r\n if (!compositeFilterDescriptor) return undefined;\r\n\r\n if (filterExpressionContainsLongValues(compositeFilterDescriptor!)) {\r\n return `The filter criteria contains values that exceed ${maximumValueLength} characters; please adjust your filter criteria and try again.`;\r\n }\r\n\r\n if (filterExpressionContainsTooManyNodes(compositeFilterDescriptor!)) {\r\n return \"Your filter criteria is too complex; please adjust your filter criteria and try again.\";\r\n }\r\n\r\n return undefined;\r\n}\r\n\r\nfunction filterExpressionContainsLongValues(compositeFilterDescriptor: CompositeFilterDescriptor): boolean {\r\n // verifies the length of values supplied aren't too long\r\n\r\n // - verify filters\r\n const filterDescriptorResults = compositeFilterDescriptor.filters.filter((f: any) => f.value && f.value.toString().length > maximumValueLength);\r\n if (filterDescriptorResults.length > 0) return true;\r\n\r\n // - verify composite filters\r\n if (!compositeFilterDescriptor.filters) return false;\r\n const compositeFilterDescriptorResults = compositeFilterDescriptor.filters.filter((f: any) => f.filters && filterExpressionContainsLongValues(f));\r\n if (compositeFilterDescriptorResults.length > 0) return true;\r\n\r\n // - all good!\r\n return false;\r\n}\r\n\r\nfunction filterExpressionContainsTooManyNodes(compositeFilterDescriptor: CompositeFilterDescriptor): boolean {\r\n // verifies we don't have too many filters defined\r\n const numberOfFilters = getNumberOfFiltersUnderCompositeFilterDescriptor(compositeFilterDescriptor);\r\n return numberOfFilters > maximumFilters;\r\n}\r\n","// framework\r\nimport { useEffect, useState } from \"react\";\r\nimport { Dialog, DialogActionsBar } from \"@progress/kendo-react-dialogs\";\r\nimport { CompositeFilterDescriptor, State } from \"@progress/kendo-data-query\";\r\n// other\r\nimport { getServicesUri } from \"../../api/uriHelper\";\r\nimport { LinkIcon } from \"@primer/octicons-react\";\r\nimport SimpleAlert from \"../simpleAlerts/SimpleAlertView\";\r\nimport { ICustomFilterExpression } from \"./ODataReader\";\r\nimport * as Helper from \"./helper\";\r\n\r\ninterface IProps {\r\n title: string;\r\n url: string | undefined;\r\n dataState?: State | undefined;\r\n additionalFilters?: CompositeFilterDescriptor | undefined; // for additional filter expressions, which are injected, that the user cannot control\r\n customFilterExpressions?: Array | undefined; // for custom expressions filter expressions\r\n additionalQueries?: string[] | undefined; // for additional odata query to add to the string (i.e. $expand). not great for $filter as the additional expressions may clash.\r\n}\r\n\r\nexport default function ODataCopyLinkButton(props: IProps) {\r\n const [showDialog, setShowDialog] = useState(false);\r\n const [showCopied, setShowCopied] = useState(false);\r\n let isDynamic = false;\r\n\r\n useEffect(() => {\r\n setShowCopied(false);\r\n }, [showDialog]);\r\n\r\n // we can choose to use the URL that comes in\r\n // if we attach dataState then we want to transform the URL dynamically based on the query parameters\r\n // also ensure the url is an absolute url\r\n let url: string | undefined;\r\n if (!props.url) {\r\n url = undefined;\r\n } else if (!props.dataState) {\r\n url = isAbsoluteUrl(props.url!) ? props.url! : getServicesUri() + props.url;\r\n } else {\r\n const isValid = Helper.getDataStateFilterValidationMessages(props.dataState.filter) === undefined;\r\n url = isValid ? Helper.getUrl(props.url!, props.dataState!, props.additionalQueries, props.customFilterExpressions, props.additionalFilters, true) : undefined;\r\n isDynamic = true;\r\n }\r\n\r\n function copyLinkDialog() {\r\n return (\r\n setShowDialog(false)} width={600}>\r\n {showCopied && }\r\n {isDynamic && (\r\n \r\n

This link will return the full set of data based on your search parameters.

\r\n

Please note this link is temporary and the data returned is subject to change.

\r\n
\r\n )}\r\n {!isDynamic && (\r\n \r\n

This link will return the full set of data.

\r\n

Please note the data returned is subject to change.

\r\n
\r\n )}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n );\r\n }\r\n\r\n function copyLinkTextToClipboard() {\r\n navigator.clipboard.writeText(url!).then(() => setShowCopied(true));\r\n }\r\n\r\n return (\r\n <>\r\n \r\n {showDialog && copyLinkDialog()}\r\n \r\n );\r\n}\r\n\r\nfunction isAbsoluteUrl(url: string): boolean {\r\n try {\r\n new URL(url);\r\n return true;\r\n } catch (_) {\r\n return false;\r\n }\r\n}\r\n","import NopimsPageLayout from \"../shell/NopimsPageLayout\";\r\nimport { nopimsLhsNavItemEnum } from \"../shell/NopimsLhsNav\";\r\nimport React from \"react\";\r\nimport ExternalLinkView from \"../../common/externalLink/ExternalLinkView\";\r\nimport EmailLinkView from \"../../common/externalLink/EmailLinkView\";\r\nimport ODataCopyLinkButton from \"../../common/odata/ODataCopyLinkButton\";\r\nimport HelpView from \"../../common/help/HelpView\";\r\nimport { formatDate } from \"@telerik/kendo-intl\";\r\n\r\nexport default function Controller(): React.JSX.Element {\r\n const dateLastYear = new Date();\r\n dateLastYear.setFullYear(dateLastYear.getFullYear() - 1);\r\n const documentFilterReleasedDateBetweenLastYearAndNow = `$filter=ReleasedDate%20ge%20${formatDate(dateLastYear, \"yyyy-MM-dd\")}&ReleasedDate%20le%20${formatDate(new Date(), \"yyyy-MM-dd\")}`;\r\n\r\n return (\r\n \r\n
\r\n

Welcome to the National Offshore Petroleum Information Management System

\r\n

\r\n The National Offshore Petroleum Information Management System (NOPIMS) provides access to disclosable public information concerning offshore petroleum and greenhouse gas storage\r\n activities, submitted under the Offshore Petroleum and Greenhouse Gas Storage Act 2006, in accordance with the Offshore Petroleum and Greenhouse Gas Storage (Resource\r\n Management and Administration) Regulations 2011 (the RMA Regulations) and predecessors.\r\n

\r\n

\r\n NOPIMS has been re-developed by NOPTA and is now integrated with NEATS. The integration of these two systems will continue over time. Partnerships with Geoscience Australia (GA)\r\n and the Western Australian Department of Energy, Mines, Industry Regulation and Safety (DEMIRS) remain in place with the agencies working collaboratively under the National\r\n Offshore Petroleum Data Core Repository agreement, providing services for physical sample access and data.\r\n

\r\n

The key features of NOPIMS include:

\r\n
    \r\n
  • The ability to search for well data, survey and reprocessed survey data using a range of search criteria.
  • \r\n
  • Discovery of activities conducted under the RMA Regulations upon commencement of an activity and prior to the release of that information.
  • \r\n
  • Download data for activities that are releasable under the RMA Regulations following the expiration of specified confidentiality periods.
  • \r\n
  • An interactive map representing the activities within NOPIMS.
  • \r\n
\r\n\r\n
\r\n

Metadata Export using OData

\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n

Microsoft Excel has the ability to load data from Open Data Protocol (OData) sources. This allows you to load, sort and filter the data.

\r\n

To open this data in Microsoft Excel:

\r\n
    \r\n
  1. \r\n Select the Data menu,\r\n
  2. \r\n
  3. \r\n Select{\" \"}\r\n \r\n Get Data {\"\\u2192\"} From Other Sources {\"\\u2192\"} From OData Feed\r\n \r\n ,\r\n
  4. \r\n
  5. \r\n Paste in the URL and select OK,\r\n
  6. \r\n
  7. \r\n Choose Load to load the data.\r\n
  8. \r\n
\r\n

\r\n If you experience issues with loading the data then you may need to clear the OData cache in Excel.\r\n
\r\n This can be achieved by navigating to: Data menu {\"\\u2192\"} Get Data {\"\\u2192\"} Query Options {\"\\u2192\"} Global section {\"\\u2192\"} Data Load {\"\\u2192\"} Data Cache\r\n Management Options {\"\\u2192\"} Clear Cache.\r\n

\r\n
\r\n
\r\n
\r\n\r\n
\r\n

Related Links and Contacts

\r\n

\r\n \r\n Please use the Feedback Request for data specific and general system feedback, such as data availability,\r\n missing data, data quality, and user queries.\r\n \r\n

\r\n\r\n

\r\n For more information on the public release of data, please visit{\" \"}\r\n \r\n www.nopta.gov.au/maps-and-public-data/public-release.html\r\n \r\n . For general data submission enquiries, please contact .\r\n

\r\n

\r\n For NOPIMS system enquiries, accessibility and technical support, please email . NOPIMS will continue to be enhanced\r\n over time. If you would like to be involved in workshops on the future development of NOPIMS, please register via .\r\n

\r\n

\r\n To request publicly released well and survey data not available via NOPIMS, such as survey field data, or a personalised data package, please use the add to Basket{\" \"}\r\n function, or contact Geoscience Australia at .\r\n

\r\n

\r\n To learn more about the services, data and projects provided by GA, please visit{\" \"}\r\n \r\n www.ga.gov.au\r\n \r\n .\r\n

\r\n

\r\n To learn more about NOPTA and to access links to legislation, regulations and other guidance material, please visit{\" \"}\r\n \r\n www.nopta.gov.au\r\n \r\n .\r\n

\r\n
\r\n
\r\n
\r\n );\r\n}\r\n","import { getSessionCorrelation } from \"../../api/clientFactory\";\r\nimport { getServicesUri } from \"../../api/uriHelper\";\r\nimport { logError } from \"../LogHelper\";\r\nimport { useRef, useEffect } from \"react\";\r\n\r\ninterface IDataLoaderProps {\r\n url: string;\r\n payload: any;\r\n onActioned: () => void;\r\n}\r\n\r\nexport default function ODataAction(props: IDataLoaderProps): JSX.Element {\r\n const requestUrl = getUrl(props.url);\r\n const requestBody = JSON.stringify(props.payload);\r\n const lastSuccessfulAction = useRef(\"\");\r\n const runningAction = useRef(\"\");\r\n const isMounted = useRef(true);\r\n\r\n useEffect(() => {\r\n isMounted.current = true;\r\n return () => {\r\n isMounted.current = false;\r\n };\r\n });\r\n\r\n function invokeActionIfNeeded(): void {\r\n // skip the action if one is running or it's the same as one that has completed\r\n if (runningAction.current || requestBody === lastSuccessfulAction.current) {\r\n return;\r\n }\r\n\r\n // initiate a fetch operation to load the data\r\n runningAction.current = requestBody;\r\n fetch(requestUrl, { method: \"POST\", body: requestBody, headers: { \"Session-Correlation\": getSessionCorrelation() } })\r\n .then((response) => {\r\n if (response.ok) return;\r\n throw new Error();\r\n })\r\n .then(() => {\r\n // mark as successful and clear the running action\r\n lastSuccessfulAction.current = runningAction.current;\r\n runningAction.current = \"\";\r\n props.onActioned();\r\n\r\n // if we've since unmounted then abandon the operation\r\n if (!isMounted.current) return;\r\n\r\n // request a new action if it doesn't match what the user has now asked for\r\n if (requestBody !== lastSuccessfulAction.current) {\r\n invokeActionIfNeeded();\r\n return;\r\n }\r\n })\r\n .catch((e) => {\r\n // on failure, stop all actions until a change is requested\r\n // we can expand on this later if needed\r\n lastSuccessfulAction.current = runningAction.current;\r\n runningAction.current = \"\";\r\n logError(e); // <-- this will ensure we see the events in application insights\r\n });\r\n }\r\n\r\n // initiate action\r\n invokeActionIfNeeded();\r\n\r\n return <>;\r\n\r\n function getUrl(url: string): string {\r\n return getServicesUri() + `/${url}`;\r\n }\r\n}\r\n","export default class SelectedItemsHelper {\r\n constructor(items: Array, setItems: (items: Array) => void, comparer: (item1: T, item2: T) => boolean) {\r\n this._items = items;\r\n this._comparer = comparer;\r\n this._setItems = setItems;\r\n }\r\n\r\n private _items: Array;\r\n private _setItems: (items: Array) => void;\r\n private _comparer: (item1: T, item2: T) => boolean;\r\n\r\n TryAdd(item: T): void {\r\n if (this._items.find((i) => this._comparer(i, item))) return;\r\n\r\n const newItems = this._items.concat([item]);\r\n this._setItems(newItems);\r\n }\r\n\r\n TryAddAll(items: T[] | undefined): void {\r\n if (!items) return;\r\n\r\n let newItems = [...this._items];\r\n for (var i = 0; i < items.length; i++) {\r\n const item = items[i];\r\n\r\n if (this._items.find((i) => this._comparer(i, item))) continue;\r\n newItems = newItems.concat([item]);\r\n }\r\n if (this._items !== newItems) this._setItems(newItems);\r\n }\r\n\r\n TryRemove(item: T): void {\r\n let newItems = [...this._items];\r\n newItems = newItems.filter((i) => !this._comparer(i, item));\r\n if (this._items !== newItems) this._setItems(newItems);\r\n }\r\n\r\n Clear(): void {\r\n if (this._items.length === 0) return;\r\n this._setItems([]);\r\n }\r\n}\r\n","// THIS FILE IS AUTO GENERATED\nimport { GenIcon } from '../lib/index.mjs';\nexport function IoAccessibilityOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"56\",\"r\":\"40\",\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M204.23 274.44c2.9-18.06 4.2-35.52-.5-47.59-4-10.38-12.7-16.19-23.2-20.15L88 176.76c-12-4-23.21-10.7-24-23.94-1-17 14-28 29-24 0 0 88 31.14 163 31.14s162-31 162-31c18-5 30 9 30 23.79 0 14.21-11 19.21-24 23.94l-88 31.91c-8 3-21 9-26 18.18-6 10.75-5 29.53-2.1 47.59l5.9 29.63 37.41 163.9c2.8 13.15-6.3 25.44-19.4 27.74S308 489 304.12 476.28l-37.56-115.93q-2.71-8.34-4.8-16.87L256 320l-5.3 21.65q-2.52 10.35-5.8 20.48L208 476.18c-4 12.85-14.5 21.75-27.6 19.46s-22.4-15.59-19.46-27.74l37.39-163.83z\"},\"child\":[]}]})(props);\n};\nexport function IoAccessibilitySharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M448 112c-66.82 17.92-119.55 32-192 32s-125.18-14.08-192-32l-16 51c48 20.53 96.71 35.16 147.2 53.2L144 496l56.4 16L246 336h20l45.6 176 56.4-16-51.2-279.8C367.26 199.93 416 183.53 464 164zm-192 0a56 56 0 1 1 56-56 56.06 56.06 0 0 1-56 56z\"},\"child\":[]}]})(props);\n};\nexport function IoAccessibility (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 112a56 56 0 1 1 56-56 56.06 56.06 0 0 1-56 56z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m432 112.8-.45.12-.42.13c-1 .28-2 .58-3 .89-18.61 5.46-108.93 30.92-172.56 30.92-59.13 0-141.28-22-167.56-29.47a73.79 73.79 0 0 0-8-2.58c-19-5-32 14.3-32 31.94 0 17.47 15.7 25.79 31.55 31.76v.28l95.22 29.74c9.73 3.73 12.33 7.54 13.6 10.84 4.13 10.59.83 31.56-.34 38.88l-5.8 45-32.19 176.19q-.15.72-.27 1.47l-.23 1.27c-2.32 16.15 9.54 31.82 32 31.82 19.6 0 28.25-13.53 32-31.94s28-157.57 42-157.57 42.84 157.57 42.84 157.57c3.75 18.41 12.4 31.94 32 31.94 22.52 0 34.38-15.74 32-31.94a57.17 57.17 0 0 0-.76-4.06L329 301.27l-5.79-45c-4.19-26.21-.82-34.87.32-36.9a1.09 1.09 0 0 0 .08-.15c1.08-2 6-6.48 17.48-10.79l89.28-31.21a16.9 16.9 0 0 0 1.62-.52c16-6 32-14.3 32-31.93S451 107.81 432 112.8z\"},\"child\":[]}]})(props);\n};\nexport function IoAddCircleOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M448 256c0-106-86-192-192-192S64 150 64 256s86 192 192 192 192-86 192-192z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M256 176v160m80-80H176\"},\"child\":[]}]})(props);\n};\nexport function IoAddCircleSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 48C141.31 48 48 141.31 48 256s93.31 208 208 208 208-93.31 208-208S370.69 48 256 48zm96 224h-80v80h-32v-80h-80v-32h80v-80h32v80h80z\"},\"child\":[]}]})(props);\n};\nexport function IoAddCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 48C141.31 48 48 141.31 48 256s93.31 208 208 208 208-93.31 208-208S370.69 48 256 48zm80 224h-64v64a16 16 0 0 1-32 0v-64h-64a16 16 0 0 1 0-32h64v-64a16 16 0 0 1 32 0v64h64a16 16 0 0 1 0 32z\"},\"child\":[]}]})(props);\n};\nexport function IoAddOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M256 112v288m144-144H112\"},\"child\":[]}]})(props);\n};\nexport function IoAddSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"square\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M256 112v288m144-144H112\"},\"child\":[]}]})(props);\n};\nexport function IoAdd (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M256 112v288m144-144H112\"},\"child\":[]}]})(props);\n};\nexport function IoAirplaneOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M407.72 224c-3.4 0-14.79.1-18 .3l-64.9 1.7a1.83 1.83 0 0 1-1.69-.9L193.55 67.56a9 9 0 0 0-6.66-3.56H160l73 161a2.35 2.35 0 0 1-2.26 3.35l-121.69 1.8a8.06 8.06 0 0 1-6.6-3.1l-37-45c-3-3.9-8.62-6-13.51-6H33.08c-1.29 0-1.1 1.21-.75 2.43l19.84 71.42a16.3 16.3 0 0 1 0 11.9L32.31 333c-.59 1.95-.52 3 1.77 3H52c8.14 0 9.25-1.06 13.41-6.3l37.7-45.7a8.19 8.19 0 0 1 6.6-3.1l120.68 2.7a2.7 2.7 0 0 1 2.43 3.74L160 448h26.64a9 9 0 0 0 6.65-3.55L323.14 287c.39-.6 2-.9 2.69-.9l63.9 1.7c3.3.2 14.59.3 18 .3C452 288.1 480 275.93 480 256s-27.88-32-72.28-32z\"},\"child\":[]}]})(props);\n};\nexport function IoAirplaneSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M407.72 208c-2.72 0-14.44.08-18.67.31l-57.77 1.52L198.06 48h-62.81l74.59 164.61-97.31 1.44L68.25 160H16.14l20.61 94.18c.15.54.33 1.07.53 1.59a.26.26 0 0 1 0 .15 15.42 15.42 0 0 0-.53 1.58L15.86 352h51.78l45.45-55 96.77 2.17L135.24 464h63l133-161.75 57.77 1.54c4.29.23 16 .31 18.66.31 24.35 0 44.27-3.34 59.21-9.94C492.22 283 496 265.46 496 256c0-30.06-33-48-88.28-48zm-71.29 87.9z\"},\"child\":[]}]})(props);\n};\nexport function IoAirplane (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M186.62 464H160a16 16 0 0 1-14.57-22.6l64.46-142.25L113.1 297l-35.3 42.77C71.07 348.23 65.7 352 52 352H34.08a17.66 17.66 0 0 1-14.7-7.06c-2.38-3.21-4.72-8.65-2.44-16.41l19.82-71c.15-.53.33-1.06.53-1.58a.38.38 0 0 0 0-.15 14.82 14.82 0 0 1-.53-1.59l-19.84-71.45c-2.15-7.61.2-12.93 2.56-16.06a16.83 16.83 0 0 1 13.6-6.7H52c10.23 0 20.16 4.59 26 12l34.57 42.05 97.32-1.44-64.44-142A16 16 0 0 1 160 48h26.91a25 25 0 0 1 19.35 9.8l125.05 152 57.77-1.52c4.23-.23 15.95-.31 18.66-.31C463 208 496 225.94 496 256c0 9.46-3.78 27-29.07 38.16-14.93 6.6-34.85 9.94-59.21 9.94-2.68 0-14.37-.08-18.66-.31l-57.76-1.54-125.36 152a25 25 0 0 1-19.32 9.75z\"},\"child\":[]}]})(props);\n};\nexport function IoAlarmOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M416.07 272a160 160 0 1 0-160 160 160 160 0 0 0 160-160zM142.12 91.21A46.67 46.67 0 0 0 112 80l-2.79.08C83.66 81.62 64 104 64.07 131c0 13.21 4.66 19.37 10.88 27.23a4.55 4.55 0 0 0 3.24 1.77h.88a3.23 3.23 0 0 0 2.54-1.31L142.38 99a5.38 5.38 0 0 0 1.55-4 5.26 5.26 0 0 0-1.81-3.79zm227.76 0A46.67 46.67 0 0 1 400 80l2.79.08C428.34 81.62 448 104 447.93 131c0 13.21-4.66 19.37-10.88 27.23a4.55 4.55 0 0 1-3.24 1.76h-.88a3.23 3.23 0 0 1-2.54-1.31L369.62 99a5.38 5.38 0 0 1-1.55-4 5.26 5.26 0 0 1 1.81-3.79z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M256.07 160v112h-80m240 160-40-40m-280 40 40-40\"},\"child\":[]}]})(props);\n};\nexport function IoAlarmSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m403.79 64.11-3.27-.1H400c-14.73 0-28.55 5.91-40.52 15S344 96 344 96l88 86s11.25-5.71 17.61-13.85 14.28-18.08 14.32-37.11c.07-35.49-26.33-64.89-60.14-66.93zm-295.58 0 3.27-.1h.52c14.73 0 28.55 5.91 40.52 15S168 96 168 96l-88 86s-11.25-5.71-17.61-13.85S48.11 150.07 48.07 131C48 95.55 74.4 66.15 108.21 64.11z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M391.3 384.6a.06.06 0 0 1 0-.08C425 344 441 288.24 427 229.23c-13.64-57.52-72.67-115.69-130.34-128.66C182 74.79 80.07 161.71 80.07 272a175.15 175.15 0 0 0 40.78 112.52.06.06 0 0 1 0 .08L73 432a.06.06 0 0 0 0 .08l23 22.51a.06.06 0 0 0 .08 0l47.43-47.37a.06.06 0 0 1 .08 0 175.64 175.64 0 0 0 225.05 0h.07L416 454.59a.06.06 0 0 0 .08 0L440 432zM272.07 288H160v-31.9l.05-.05h80V144h32z\"},\"child\":[]}]})(props);\n};\nexport function IoAlarm (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M153.59 110.46A21.41 21.41 0 0 0 152.48 79 62.67 62.67 0 0 0 112 64l-3.27.09h-.48C74.4 66.15 48 95.55 48.07 131c0 19 8 29.06 14.32 37.11a20.61 20.61 0 0 0 14.7 7.8c.26 0 .7.05 2 .05a19.06 19.06 0 0 0 13.75-5.89zm250.2-46.35-3.27-.1H400a62.67 62.67 0 0 0-40.52 15 21.41 21.41 0 0 0-1.11 31.44l60.77 59.65a19.06 19.06 0 0 0 13.79 5.9c1.28 0 1.72 0 2-.05a20.61 20.61 0 0 0 14.69-7.8c6.36-8.05 14.28-18.08 14.32-37.11.06-35.49-26.34-64.89-60.15-66.93z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M256.07 96c-97 0-176 78.95-176 176a175.23 175.23 0 0 0 40.81 112.56l-36.12 36.13a16 16 0 1 0 22.63 22.62l36.12-36.12a175.63 175.63 0 0 0 225.12 0l36.13 36.12a16 16 0 1 0 22.63-22.62l-36.13-36.13A175.17 175.17 0 0 0 432.07 272c0-97-78.95-176-176-176zm16 176a16 16 0 0 1-16 16h-80a16 16 0 0 1 0-32h64v-96a16 16 0 0 1 32 0z\"},\"child\":[]}]})(props);\n};\nexport function IoAlbumsOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"rect\",\"attr\":{\"width\":\"384\",\"height\":\"256\",\"x\":\"64\",\"y\":\"176\",\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"rx\":\"28.87\",\"ry\":\"28.87\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M144 80h224m-256 48h288\"},\"child\":[]}]})(props);\n};\nexport function IoAlbumsSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M128 64h256v32H128zm-32 48h320v32H96zm368 336H48V160h416z\"},\"child\":[]}]})(props);\n};\nexport function IoAlbums (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M368 96H144a16 16 0 0 1 0-32h224a16 16 0 0 1 0 32zm32 48H112a16 16 0 0 1 0-32h288a16 16 0 0 1 0 32zm19.13 304H92.87A44.92 44.92 0 0 1 48 403.13V204.87A44.92 44.92 0 0 1 92.87 160h326.26A44.92 44.92 0 0 1 464 204.87v198.26A44.92 44.92 0 0 1 419.13 448z\"},\"child\":[]}]})(props);\n};\nexport function IoAlertCircleOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M448 256c0-106-86-192-192-192S64 150 64 256s86 192 192 192 192-86 192-192z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M250.26 166.05 256 288l5.73-121.95a5.74 5.74 0 0 0-5.79-6h0a5.74 5.74 0 0 0-5.68 6z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M256 367.91a20 20 0 1 1 20-20 20 20 0 0 1-20 20z\"},\"child\":[]}]})(props);\n};\nexport function IoAlertCircleSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"d\":\"M240 304h32l6-160h-44l6 160z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M256 48C141.31 48 48 141.31 48 256s93.31 208 208 208 208-93.31 208-208S370.69 48 256 48zm20 319.91h-40v-40h40zM272 304h-32l-6-160h44z\"},\"child\":[]}]})(props);\n};\nexport function IoAlertCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 48C141.31 48 48 141.31 48 256s93.31 208 208 208 208-93.31 208-208S370.69 48 256 48zm0 319.91a20 20 0 1 1 20-20 20 20 0 0 1-20 20zm21.72-201.15-5.74 122a16 16 0 0 1-32 0l-5.74-121.94v-.05a21.74 21.74 0 1 1 43.44 0z\"},\"child\":[]}]})(props);\n};\nexport function IoAlertOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M256 80c-8.66 0-16.58 7.36-16 16l8 216a8 8 0 0 0 8 8h0a8 8 0 0 0 8-8l8-216c.58-8.64-7.34-16-16-16z\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"416\",\"r\":\"16\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\"},\"child\":[]}]})(props);\n};\nexport function IoAlertSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"square\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"m240 80 8 240h16l8-240h-32zm0 320h32v32h-32z\"},\"child\":[]}]})(props);\n};\nexport function IoAlert (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M256 80c-8.66 0-16.58 7.36-16 16l8 216a8 8 0 0 0 8 8h0a8 8 0 0 0 8-8l8-216c.58-8.64-7.34-16-16-16z\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"416\",\"r\":\"16\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\"},\"child\":[]}]})(props);\n};\nexport function IoAmericanFootballOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"ellipse\",\"attr\":{\"cx\":\"256\",\"cy\":\"256\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"rx\":\"267.57\",\"ry\":\"173.44\",\"transform\":\"rotate(-45 256 256.002)\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M334.04 177.96 177.96 334.04M278.3 278.3l-44.6-44.6m89.19 0-44.59-44.59m178.38 22.29L300.6 55.32m-89.2 401.36L55.32 300.6m178.38 22.29-44.59-44.59\"},\"child\":[]}]})(props);\n};\nexport function IoAmericanFootballSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M120.9 120.51c-44.75 44.56-67.29 101.05-78.64 145.9l202.31 201.44c45.05-11.3 101.78-33.74 146.53-78.3s67.29-101.05 78.64-145.91L267.43 42.21C222.38 53.51 165.65 76 120.9 120.51zm259 257.83zm-45-224.2 22.52 22.42-33.78 33.63 22.52 22.42L323.55 255 301 232.61 278.52 255 301 277.45l-22.51 22.42L256 277.45l-22.52 22.42L256 322.29l-22.52 22.42L211 322.29l-33.78 33.63-22.55-22.42 33.78-33.63-22.52-22.42L188.45 255 211 277.45 233.48 255 211 232.61l22.51-22.42L256 232.61l22.52-22.42L256 187.77l22.52-22.42L301 187.77zm143.58 44.27C485.85 143.65 464 48.05 464 48.05s-96.14-21.88-151.14-14.54c-2.54.33-5.21.72-8 1.14l172.47 171.71c.43-2.76.81-5.42 1.15-7.95zM33.52 311.65C26.15 366.41 48.05 464 48.05 464s60 16 99.86 16a391.92 391.92 0 0 0 51.23-3.45c2.54-.33 5.21-.72 8-1.15L34.67 303.7c-.43 2.76-.81 5.42-1.15 7.95z\"},\"child\":[]}]})(props);\n};\nexport function IoAmericanFootball (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M122.06 122.06c-44.37 44.37-66.71 100.61-78 145.28l200.6 200.56c44.67-11.25 100.91-33.59 145.28-78s66.71-100.61 78-145.28L267.34 44.1c-44.67 11.25-100.91 33.59-145.28 77.96zm256.73 256.72zM300.65 189 323 166.71A15.78 15.78 0 0 1 345.29 189L323 211.35l11.16 11.17a15.78 15.78 0 0 1-22.32 22.32l-11.16-11.16L278.32 256l11.16 11.16a15.78 15.78 0 1 1-22.32 22.32L256 278.32l-22.32 22.33 11.16 11.16a15.78 15.78 0 1 1-22.32 22.32L211.35 323 189 345.29A15.78 15.78 0 0 1 166.71 323L189 300.65l-11.16-11.17a15.78 15.78 0 0 1 22.32-22.32l11.16 11.16L233.68 256l-11.16-11.16a15.78 15.78 0 1 1 22.32-22.32L256 233.68l22.32-22.33-11.16-11.16a15.78 15.78 0 0 1 22.32-22.32zm175.92 10.63c7.31-54.53 4-120.26-20-144.21s-89.68-27.3-144.21-20c-2.51.34-5.16.72-7.91 1.15l171 171c.4-2.78.78-5.43 1.12-7.94zM35.43 312.37c-7.31 54.53-4 120.26 20 144.21C72.17 473.33 109.34 480 148.84 480a387 387 0 0 0 50.79-3.43c2.51-.34 5.16-.72 7.91-1.15l-171-171c-.39 2.79-.77 5.44-1.11 7.95z\"},\"child\":[]}]})(props);\n};\nexport function IoAnalyticsOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"m344 280 88-88m-200 24 64 64M80 320l104-104\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"456\",\"cy\":\"168\",\"r\":\"24\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"320\",\"cy\":\"304\",\"r\":\"24\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"208\",\"cy\":\"192\",\"r\":\"24\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"56\",\"cy\":\"344\",\"r\":\"24\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\"},\"child\":[]}]})(props);\n};\nexport function IoAnalyticsSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M450 128a46 46 0 0 0-44.11 59l-71.37 71.36a45.88 45.88 0 0 0-29 0l-52.91-52.91a46 46 0 1 0-89.12 0L75 293.88A46.08 46.08 0 1 0 106.11 325l87.37-87.36a45.85 45.85 0 0 0 29 0l52.92 52.92a46 46 0 1 0 89.12 0L437 218.12A46 46 0 1 0 450 128z\"},\"child\":[]}]})(props);\n};\nexport function IoAnalytics (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M456 128a40 40 0 0 0-37.23 54.6l-84.17 84.17a39.86 39.86 0 0 0-29.2 0l-60.17-60.17a40 40 0 1 0-74.46 0L70.6 306.77a40 40 0 1 0 22.63 22.63L193.4 229.23a39.86 39.86 0 0 0 29.2 0l60.17 60.17a40 40 0 1 0 74.46 0l84.17-84.17A40 40 0 1 0 456 128z\"},\"child\":[]}]})(props);\n};\nexport function IoApertureOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M448 256c0-106-86-192-192-192S64 150 64 256s86 192 192 192 192-86 192-192z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M360 94.59V296m83.13-83.13L296 360m121.41 0H216m83.13 83.13-144-144M152 416V216m-83.13 83.13 144-144M94.59 152H288m-75.13-83.13L360 216\"},\"child\":[]}]})(props);\n};\nexport function IoApertureSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m216 48 129.49 128.18V48H216zm-34.53 10.38L80 134h176l-74.53-75.62zM336 344h128V216L336 344zm118-162L378 80v176l76-74zM48 166v128l128-128H48zm282 288 102-76H256l74 76zM58 330l76 102V256l-76 74zm287.49-107.88-55.55-55.46h-67.88l-55.55 55.46v67.76l55.62 55.52c.44 0 .88-.06 1.33-.06h66.48l55.55-55.46zM165.98 336.09 166 464h128L165.98 336.09z\"},\"child\":[]}]})(props);\n};\nexport function IoAperture (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m250.54 129.17-67.8-67.8A209.65 209.65 0 0 0 86.32 136h161.4a4 4 0 0 0 2.82-6.83zM167.72 168H67.63a207.34 207.34 0 0 0-16.15 125.9l119.06-119.07a4 4 0 0 0-2.82-6.83zm176.28-.28V67.56a207.82 207.82 0 0 0-125.89-16.08l119.06 119.06a4 4 0 0 0 6.83-2.82zm116.52 50.38L341.46 337.17a4 4 0 0 0 2.82 6.83h100.09a207.34 207.34 0 0 0 16.15-125.9zm-77.69 32.44 67.83-67.82A209.08 209.08 0 0 0 376 86.2v161.52a4 4 0 0 0 6.83 2.82zm-161.15 91.23a8 8 0 0 0 5.54 2.23h59.66a8 8 0 0 0 5.7-2.39l49.18-50a8 8 0 0 0 2.3-5.62l-.06-60.81a8 8 0 0 0-2.38-5.69l-50-49.25a8 8 0 0 0-5.63-2.3l-60.84.06a8 8 0 0 0-5.69 2.38l-49.25 50a8 8 0 0 0-2.3 5.63l.06 60.78a8 8 0 0 0 2.45 5.76zm39.78 41.06 67.8 67.8A209.65 209.65 0 0 0 425.68 376h-161.4a4 4 0 0 0-2.82 6.83zM168 344.28v100.16a207.82 207.82 0 0 0 125.89 16.08L174.83 341.46a4 4 0 0 0-6.83 2.82zm-38.83-82.82-67.83 67.83A209.1 209.1 0 0 0 136 425.8V264.28a4 4 0 0 0-6.83-2.82z\"},\"child\":[]}]})(props);\n};\nexport function IoAppsOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"rect\",\"attr\":{\"width\":\"80\",\"height\":\"80\",\"x\":\"64\",\"y\":\"64\",\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"rx\":\"40\",\"ry\":\"40\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"80\",\"height\":\"80\",\"x\":\"216\",\"y\":\"64\",\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"rx\":\"40\",\"ry\":\"40\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"80\",\"height\":\"80\",\"x\":\"368\",\"y\":\"64\",\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"rx\":\"40\",\"ry\":\"40\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"80\",\"height\":\"80\",\"x\":\"64\",\"y\":\"216\",\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"rx\":\"40\",\"ry\":\"40\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"80\",\"height\":\"80\",\"x\":\"216\",\"y\":\"216\",\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"rx\":\"40\",\"ry\":\"40\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"80\",\"height\":\"80\",\"x\":\"368\",\"y\":\"216\",\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"rx\":\"40\",\"ry\":\"40\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"80\",\"height\":\"80\",\"x\":\"64\",\"y\":\"368\",\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"rx\":\"40\",\"ry\":\"40\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"80\",\"height\":\"80\",\"x\":\"216\",\"y\":\"368\",\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"rx\":\"40\",\"ry\":\"40\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"80\",\"height\":\"80\",\"x\":\"368\",\"y\":\"368\",\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"rx\":\"40\",\"ry\":\"40\"},\"child\":[]}]})(props);\n};\nexport function IoAppsSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"rect\",\"attr\":{\"width\":\"112\",\"height\":\"112\",\"x\":\"48\",\"y\":\"48\",\"rx\":\"8\",\"ry\":\"8\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"112\",\"height\":\"112\",\"x\":\"200\",\"y\":\"48\",\"rx\":\"8\",\"ry\":\"8\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"112\",\"height\":\"112\",\"x\":\"352\",\"y\":\"48\",\"rx\":\"8\",\"ry\":\"8\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"112\",\"height\":\"112\",\"x\":\"48\",\"y\":\"200\",\"rx\":\"8\",\"ry\":\"8\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"112\",\"height\":\"112\",\"x\":\"200\",\"y\":\"200\",\"rx\":\"8\",\"ry\":\"8\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"112\",\"height\":\"112\",\"x\":\"352\",\"y\":\"200\",\"rx\":\"8\",\"ry\":\"8\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"112\",\"height\":\"112\",\"x\":\"48\",\"y\":\"352\",\"rx\":\"8\",\"ry\":\"8\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"112\",\"height\":\"112\",\"x\":\"200\",\"y\":\"352\",\"rx\":\"8\",\"ry\":\"8\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"112\",\"height\":\"112\",\"x\":\"352\",\"y\":\"352\",\"rx\":\"8\",\"ry\":\"8\"},\"child\":[]}]})(props);\n};\nexport function IoApps (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M104 160a56 56 0 1 1 56-56 56.06 56.06 0 0 1-56 56zm152 0a56 56 0 1 1 56-56 56.06 56.06 0 0 1-56 56zm152 0a56 56 0 1 1 56-56 56.06 56.06 0 0 1-56 56zM104 312a56 56 0 1 1 56-56 56.06 56.06 0 0 1-56 56zm152 0a56 56 0 1 1 56-56 56.06 56.06 0 0 1-56 56zm152 0a56 56 0 1 1 56-56 56.06 56.06 0 0 1-56 56zM104 464a56 56 0 1 1 56-56 56.06 56.06 0 0 1-56 56zm152 0a56 56 0 1 1 56-56 56.06 56.06 0 0 1-56 56zm152 0a56 56 0 1 1 56-56 56.06 56.06 0 0 1-56 56z\"},\"child\":[]}]})(props);\n};\nexport function IoArchiveOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M80 152v256a40.12 40.12 0 0 0 40 40h272a40.12 40.12 0 0 0 40-40V152\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"416\",\"height\":\"80\",\"x\":\"48\",\"y\":\"64\",\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"rx\":\"28\",\"ry\":\"28\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"m320 304-64 64-64-64m64 41.89V224\"},\"child\":[]}]})(props);\n};\nexport function IoArchiveSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"rect\",\"attr\":{\"width\":\"448\",\"height\":\"80\",\"x\":\"32\",\"y\":\"48\",\"rx\":\"12\",\"ry\":\"12\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M64 160v280a24 24 0 0 0 24 24h336a24 24 0 0 0 24-24V160zm192 230.63L169.32 304 192 281.32l48 48.05V208h32v121.37l48.07-48.07 22.61 22.64z\"},\"child\":[]}]})(props);\n};\nexport function IoArchive (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M64 164v244a56 56 0 0 0 56 56h272a56 56 0 0 0 56-56V164a4 4 0 0 0-4-4H68a4 4 0 0 0-4 4zm267 151.63-63.69 63.68a16 16 0 0 1-22.62 0L181 315.63c-6.09-6.09-6.65-16-.85-22.38a16 16 0 0 1 23.16-.56L240 329.37V224.45c0-8.61 6.62-16 15.23-16.43A16 16 0 0 1 272 224v105.37l36.69-36.68a16 16 0 0 1 23.16.56c5.8 6.37 5.24 16.29-.85 22.38z\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"448\",\"height\":\"80\",\"x\":\"32\",\"y\":\"48\",\"rx\":\"32\",\"ry\":\"32\"},\"child\":[]}]})(props);\n};\nexport function IoArrowBackCircleOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M249.38 336 170 256l79.38-80m-68.35 80H342\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M448 256c0-106-86-192-192-192S64 150 64 256s86 192 192 192 192-86 192-192z\"},\"child\":[]}]})(props);\n};\nexport function IoArrowBackCircleSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M48 256c0 114.87 93.13 208 208 208s208-93.13 208-208S370.87 48 256 48 48 141.13 48 256zm224-80.09L208.42 240H358v32H208.42L272 336.09l-22.7 22.54L147.46 256 249.3 153.37z\"},\"child\":[]}]})(props);\n};\nexport function IoArrowBackCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M48 256c0 114.87 93.13 208 208 208s208-93.13 208-208S370.87 48 256 48 48 141.13 48 256zm212.65-91.36a16 16 0 0 1 .09 22.63L208.42 240H342a16 16 0 0 1 0 32H208.42l52.32 52.73A16 16 0 1 1 238 347.27l-79.39-80a16 16 0 0 1 0-22.54l79.39-80a16 16 0 0 1 22.65-.09z\"},\"child\":[]}]})(props);\n};\nexport function IoArrowBackOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"48\",\"d\":\"M244 400 100 256l144-144M120 256h292\"},\"child\":[]}]})(props);\n};\nexport function IoArrowBackSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"square\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"48\",\"d\":\"M244 400 100 256l144-144M120 256h292\"},\"child\":[]}]})(props);\n};\nexport function IoArrowBack (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"48\",\"d\":\"M244 400 100 256l144-144M120 256h292\"},\"child\":[]}]})(props);\n};\nexport function IoArrowDownCircleOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M176 262.62 256 342l80-79.38m-80 68.35V170\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M256 64C150 64 64 150 64 256s86 192 192 192 192-86 192-192S362 64 256 64z\"},\"child\":[]}]})(props);\n};\nexport function IoArrowDownCircleSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 464c114.87 0 208-93.13 208-208S370.87 48 256 48 48 141.13 48 256s93.13 208 208 208zm-80.09-224L240 303.58V154h32v149.58L336.09 240l22.54 22.71L256 364.54 153.37 262.7z\"},\"child\":[]}]})(props);\n};\nexport function IoArrowDownCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 464c114.87 0 208-93.13 208-208S370.87 48 256 48 48 141.13 48 256s93.13 208 208 208zm-91.36-212.65a16 16 0 0 1 22.63-.09L240 303.58V170a16 16 0 0 1 32 0v133.58l52.73-52.32A16 16 0 1 1 347.27 274l-80 79.39a16 16 0 0 1-22.54 0l-80-79.39a16 16 0 0 1-.09-22.65z\"},\"child\":[]}]})(props);\n};\nexport function IoArrowDownOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"48\",\"d\":\"m112 268 144 144 144-144M256 392V100\"},\"child\":[]}]})(props);\n};\nexport function IoArrowDownSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"square\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"48\",\"d\":\"m112 268 144 144 144-144M256 392V100\"},\"child\":[]}]})(props);\n};\nexport function IoArrowDown (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"48\",\"d\":\"m112 268 144 144 144-144M256 392V100\"},\"child\":[]}]})(props);\n};\nexport function IoArrowForwardCircleOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M262.62 336 342 256l-79.38-80m68.35 80H170\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M256 448c106 0 192-86 192-192S362 64 256 64 64 150 64 256s86 192 192 192z\"},\"child\":[]}]})(props);\n};\nexport function IoArrowForwardCircleSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M464 256c0-114.87-93.13-208-208-208S48 141.13 48 256s93.13 208 208 208 208-93.13 208-208zm-224 80.09L303.58 272H154v-32h149.58L240 175.91l22.71-22.54L364.54 256 262.7 358.63z\"},\"child\":[]}]})(props);\n};\nexport function IoArrowForwardCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M464 256c0-114.87-93.13-208-208-208S48 141.13 48 256s93.13 208 208 208 208-93.13 208-208zm-212.65 91.36a16 16 0 0 1-.09-22.63L303.58 272H170a16 16 0 0 1 0-32h133.58l-52.32-52.73A16 16 0 1 1 274 164.73l79.39 80a16 16 0 0 1 0 22.54l-79.39 80a16 16 0 0 1-22.65.09z\"},\"child\":[]}]})(props);\n};\nexport function IoArrowForwardOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"48\",\"d\":\"m268 112 144 144-144 144m124-144H100\"},\"child\":[]}]})(props);\n};\nexport function IoArrowForwardSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"square\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"48\",\"d\":\"m268 112 144 144-144 144m124-144H100\"},\"child\":[]}]})(props);\n};\nexport function IoArrowForward (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"48\",\"d\":\"m268 112 144 144-144 144m124-144H100\"},\"child\":[]}]})(props);\n};\nexport function IoArrowRedoCircleOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M266.91 327.74v-37.32c-57.07 0-84.51 13.47-108.58 38.68-5.4 5.65-15 1.32-14.29-6.43 5.45-61.45 34.14-117.09 122.87-117.09v-37.32a8.32 8.32 0 0 1 14-6L365.42 242a8.2 8.2 0 0 1 0 11.94L281 333.71a8.32 8.32 0 0 1-14.09-5.97z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M64 256c0 106 86 192 192 192s192-86 192-192S362 64 256 64 64 150 64 256z\"},\"child\":[]}]})(props);\n};\nexport function IoArrowRedoCircleSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M48 256c0 114.87 93.13 208 208 208s208-93.13 208-208S370.87 48 256 48 48 141.13 48 256zm98 88c0-68.13 22.67-137.14 119.17-137.14V152L366 248l-100.83 96v-54.86c-66.69 0-91.32 19.29-119.17 54.86z\"},\"child\":[]}]})(props);\n};\nexport function IoArrowRedoCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M48 256c0 114.87 93.13 208 208 208s208-93.13 208-208S370.87 48 256 48 48 141.13 48 256zm96 66.67c5.45-61.45 34.14-117.09 122.87-117.09v-37.32a8.32 8.32 0 0 1 14-6L365.42 242a8.2 8.2 0 0 1 0 11.94L281 333.71a8.32 8.32 0 0 1-14-6v-37.29c-57.07 0-84.51 13.47-108.58 38.68-5.49 5.65-15.07 1.32-14.42-6.43z\"},\"child\":[]}]})(props);\n};\nexport function IoArrowRedoOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M448 256 272 88v96C103.57 184 64 304.77 64 424c48.61-62.24 91.6-96 208-96v96z\"},\"child\":[]}]})(props);\n};\nexport function IoArrowRedoSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M48 399.26C48 335.19 62.44 284 90.91 247c34.38-44.67 88.68-68.77 161.56-71.75V72L464 252 252.47 432V329.35c-44.25 1.19-77.66 7.58-104.27 19.84-28.75 13.25-49.6 33.05-72.08 58.7L48 440z\"},\"child\":[]}]})(props);\n};\nexport function IoArrowRedo (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M58.79 439.13A16 16 0 0 1 48 424c0-73.1 14.68-131.56 43.65-173.77 35-51 90.21-78.46 164.35-81.87V88a16 16 0 0 1 27.05-11.57l176 168a16 16 0 0 1 0 23.14l-176 168A16 16 0 0 1 256 424v-79.77c-45 1.36-79 8.65-106.07 22.64-29.25 15.12-50.46 37.71-73.32 67a16 16 0 0 1-17.82 5.28z\"},\"child\":[]}]})(props);\n};\nexport function IoArrowUndoCircleOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M245.09 327.74v-37.32c57.07 0 84.51 13.47 108.58 38.68 5.4 5.65 15 1.32 14.29-6.43-5.45-61.45-34.14-117.09-122.87-117.09v-37.32a8.32 8.32 0 0 0-14.05-6L146.58 242a8.2 8.2 0 0 0 0 11.94L231 333.71a8.32 8.32 0 0 0 14.09-5.97z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M256 64C150 64 64 150 64 256s86 192 192 192 192-86 192-192S362 64 256 64z\"},\"child\":[]}]})(props);\n};\nexport function IoArrowUndoCircleSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 48C141.13 48 48 141.13 48 256s93.13 208 208 208 208-93.13 208-208S370.87 48 256 48zm-9.17 241.14V344L146 248l100.83-96v54.86c96.5 0 119.17 69 119.17 137.14-27.85-35.57-52.48-54.86-119.17-54.86z\"},\"child\":[]}]})(props);\n};\nexport function IoArrowUndoCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 48C141.13 48 48 141.13 48 256s93.13 208 208 208 208-93.13 208-208S370.87 48 256 48zm97.67 281.1c-24.07-25.21-51.51-38.68-108.58-38.68v37.32a8.32 8.32 0 0 1-14.05 6L146.58 254a8.2 8.2 0 0 1 0-11.94L231 162.29a8.32 8.32 0 0 1 14.05 6v37.32c88.73 0 117.42 55.64 122.87 117.09.73 7.72-8.85 12.05-14.25 6.4z\"},\"child\":[]}]})(props);\n};\nexport function IoArrowUndoOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M240 424v-96c116.4 0 159.39 33.76 208 96 0-119.23-39.57-240-208-240V88L64 256z\"},\"child\":[]}]})(props);\n};\nexport function IoArrowUndoSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m464 440-28.12-32.11c-22.48-25.65-43.33-45.45-72.08-58.7-26.61-12.26-60-18.65-104.27-19.84V432L48 252 259.53 72v103.21c72.88 3 127.18 27.08 161.56 71.75C449.56 284 464 335.19 464 399.26z\"},\"child\":[]}]})(props);\n};\nexport function IoArrowUndo (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M448 440a16 16 0 0 1-12.61-6.15c-22.86-29.27-44.07-51.86-73.32-67C335 352.88 301 345.59 256 344.23V424a16 16 0 0 1-27 11.57l-176-168a16 16 0 0 1 0-23.14l176-168A16 16 0 0 1 256 88v80.36c74.14 3.41 129.38 30.91 164.35 81.87C449.32 292.44 464 350.9 464 424a16 16 0 0 1-16 16z\"},\"child\":[]}]})(props);\n};\nexport function IoArrowUpCircleOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M176 249.38 256 170l80 79.38m-80-68.35V342\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M448 256c0-106-86-192-192-192S64 150 64 256s86 192 192 192 192-86 192-192z\"},\"child\":[]}]})(props);\n};\nexport function IoArrowUpCircleSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 48C141.13 48 48 141.13 48 256s93.13 208 208 208 208-93.13 208-208S370.87 48 256 48zm80.09 224L272 208.42V358h-32V208.42L175.91 272l-22.54-22.7L256 147.46 358.63 249.3z\"},\"child\":[]}]})(props);\n};\nexport function IoArrowUpCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 48C141.13 48 48 141.13 48 256s93.13 208 208 208 208-93.13 208-208S370.87 48 256 48zm91.36 212.65a16 16 0 0 1-22.63.09L272 208.42V342a16 16 0 0 1-32 0V208.42l-52.73 52.32A16 16 0 1 1 164.73 238l80-79.39a16 16 0 0 1 22.54 0l80 79.39a16 16 0 0 1 .09 22.65z\"},\"child\":[]}]})(props);\n};\nexport function IoArrowUpOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"48\",\"d\":\"m112 244 144-144 144 144M256 120v292\"},\"child\":[]}]})(props);\n};\nexport function IoArrowUpSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"square\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"48\",\"d\":\"m112 244 144-144 144 144M256 120v292\"},\"child\":[]}]})(props);\n};\nexport function IoArrowUp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"48\",\"d\":\"m112 244 144-144 144 144M256 120v292\"},\"child\":[]}]})(props);\n};\nexport function IoAtCircleOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M448.08 256.08c0-106-86-192-192-192s-192 86-192 192 86 192 192 192 192-85.97 192-192z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"28\",\"d\":\"M300.81 358.29c-20.83 7.42-34.05 9.59-54.19 9.59-61.17 0-106.39-50.07-101-111.84S205 144.21 266.14 144.21c68.92 0 106.79 45.55 101.47 106.55-4 45.54-32.8 58.66-47.89 56-14.2-2.55-25.92-15.52-23.75-40.35l5.62-44.66c-7.58-9.17-28.11-18-49.93-14.54C231.77 210.3 209 228 206.56 256s14.49 50.84 39.93 50.84 47.86-18.39 50.69-50.84\"},\"child\":[]}]})(props);\n};\nexport function IoAtCircleSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256.41 48.74c-114.85 0-208 93.11-208 208s93.12 208 208 208 208-93.12 208-208-93.16-208-208-208zM381.22 252c-2.85 32.63-16.78 49.7-28 58.26s-24.69 12.34-36.33 10.26a41.63 41.63 0 0 1-27-17.52 60.84 60.84 0 0 1-43.72 17.9 51.65 51.65 0 0 1-38.55-16.83c-11.39-12.42-17-30.36-15.33-49.23 3.05-35 30.92-57.39 56.87-61.48 27.21-4.29 52.24 6.54 62.91 19.46l3.84 4.66-6.34 50.38c-1.19 14.34 3.29 23.48 12.29 25.1 2.39.42 8.11-.13 14.38-4.93 6.72-5.15 15.14-16 17.1-38.47 2.32-26.55-4.35-49.19-19.28-65.49-15.5-16.9-39.1-25.84-68.24-25.84-54 0-101.81 44.43-106.57 99-2.29 26.2 5.66 50.68 22.39 68.93C198 344 221 353.88 246.29 353.88c19 0 30.61-2.05 49.49-8.78l13.22-4.69 9.39 26.37-13.19 4.7c-21.82 7.77-36.68 10.4-58.88 10.4-33.28 0-63.57-13.06-85.3-36.77-22.09-24.11-32.62-56.17-29.65-90.29 2.91-33.33 18.46-64.63 43.77-88.12s57.57-36.49 90.7-36.49c37.2 0 67.94 12.08 88.88 34.93 20.05 21.91 29.48 52.75 26.5 86.86z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M253.51 221c-14.83 2.33-31.55 15.84-33.34 36.26-1 11.06 2 21.22 8.08 27.87a23.63 23.63 0 0 0 17.91 7.75c19.7 0 33.8-14.79 36.8-38.59l1.75-13.89h.09l1.65-13.11a49.63 49.63 0 0 0-32.94-6.3z\"},\"child\":[]}]})(props);\n};\nexport function IoAtCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M255.46 48.74c-114.84 0-208 93.11-208 208s93.12 208 208 208 208-93.12 208-208-93.15-208-208-208zM380.28 252c-2.85 32.63-16.79 49.7-28 58.26S327.61 322.58 316 320.5a41.61 41.61 0 0 1-26.82-17.19 62.06 62.06 0 0 1-44 17.57 51.66 51.66 0 0 1-38.55-16.83c-11.38-12.42-17-30.36-15.32-49.23 3-35 30.91-57.39 56.87-61.48 27.2-4.29 52.23 6.54 62.9 19.46l3.85 4.66-6.34 50.38c-1.19 14.34 3.28 23.48 12.29 25.1 2.39.42 8.1-.13 14.37-4.93 6.72-5.15 15.14-16 17.1-38.47 2.35-26.54-4.35-49.19-19.25-65.49-15.49-16.9-39.09-25.84-68.23-25.84-54 0-101.81 44.43-106.58 99-2.28 26.2 5.67 50.68 22.4 68.93 16.36 17.86 39.31 27.74 64.66 27.74 19 0 30.61-2.05 49.48-8.78a14 14 0 0 1 9.4 26.38c-21.82 7.77-36.68 10.4-58.88 10.4-33.28 0-63.57-13.06-85.3-36.77C138 321 127.42 288.94 130.4 254.82c2.91-33.33 18.45-64.63 43.77-88.12s57.57-36.49 90.7-36.49c37.2 0 67.93 12.08 88.87 34.93 20.09 21.91 29.51 52.75 26.54 86.86z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M252.57 221c-14.83 2.33-31.56 15.84-33.34 36.26-1 11.06 2 21.22 8.07 27.87a23.65 23.65 0 0 0 17.91 7.75c20.31 0 34.73-14.94 36.75-38.06a14 14 0 0 1 .34-2.07l3.2-25.45a49.61 49.61 0 0 0-32.93-6.3z\"},\"child\":[]}]})(props);\n};\nexport function IoAtOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M320 254.27c-4.5 51-40.12 80-80.55 80s-67.34-35.82-63.45-80 37.12-80 77.55-80 70.33 36 66.45 80z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M319.77 415.77c-28.56 12-47.28 14.5-79.28 14.5-97.2 0-169-78.8-160.49-176s94.31-176 191.51-176C381 78.27 441.19 150 432.73 246c-6.31 71.67-52.11 92.32-76.09 88.07-22.56-4-41.18-24.42-37.74-63.5l8.48-96.25\"},\"child\":[]}]})(props);\n};\nexport function IoAtSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M407.6 115.78c-32.07-35-79.47-53.51-137.09-53.51-51 0-100.69 19.8-139.82 55.76s-63.13 83.84-67.63 134.83c-4.55 51.67 11.41 100.29 44.94 136.9 33.37 36.44 80.07 56.51 131.49 56.51 32.52 0 53.61-2.36 85.48-15.75l14.75-6.2-12.4-29.5-14.75 6.18c-27.15 11.4-43.78 13.25-73.08 13.25-42.34 0-80.65-16.38-107.89-46.12-27.4-29.92-40.42-69.86-36.66-112.48 7.84-89 86.6-161.4 175.57-161.4 48.4 0 87.65 14.91 113.49 43.13 24.61 26.87 35.6 63.92 31.79 107.15-3.29 37.35-17.76 55.74-29.32 64.6-11 8.44-22 10.18-28 9.11-17.68-3.13-26.87-20.46-24.59-46.29l9.93-109.12L311.9 160l-2 22.29a79.69 79.69 0 0 0-57.32-24c-23.8 0-46.54 10.07-64 28.37-16.77 17.53-27.23 41.05-29.45 66.22-2.45 27.87 5.75 54.34 22.51 72.64a76.14 76.14 0 0 0 56.88 24.77A93 93 0 0 0 310 318a60 60 0 0 0 42.88 31.81c16.89 3 36.73-2.69 53.08-15.21 30.19-23.13 39.36-60.19 41.74-87.2 4.52-51.7-9.7-98.4-40.1-131.62zm-126.34 186a62.19 62.19 0 0 1-42.81 16.53 43.94 43.94 0 0 1-33.28-14.38c-10.71-11.7-15.9-29.27-14.23-48.22 3.23-36.68 30.29-65.4 61.61-65.4a48.16 48.16 0 0 1 35.88 15.82c10.87 11.87 16.2 28.87 14.63 46.73-1.78 20.28-9.33 37.14-21.8 48.88z\"},\"child\":[]}]})(props);\n};\nexport function IoAt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M320 254.27c-4.5 51-40.12 80-80.55 80s-67.34-35.82-63.45-80 37.12-80 77.55-80 70.33 36 66.45 80z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M319.77 415.77c-28.56 12-47.28 14.5-79.28 14.5-97.2 0-169-78.8-160.49-176s94.31-176 191.51-176C381 78.27 441.19 150 432.73 246c-6.31 71.67-52.11 92.32-76.09 88.07-22.56-4-41.18-24.42-37.74-63.5l8.48-96.25\"},\"child\":[]}]})(props);\n};\nexport function IoAttachOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M216.08 192v143.85a40.08 40.08 0 0 0 80.15 0l.13-188.55a67.94 67.94 0 1 0-135.87 0v189.82a95.51 95.51 0 1 0 191 0V159.74\"},\"child\":[]}]})(props);\n};\nexport function IoAttachSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"square\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M216.08 192v143.55a40.08 40.08 0 0 0 80.15 0l.13-188.55a67.94 67.94 0 1 0-135.87 0v189.82a95.51 95.51 0 0 0 191 0V159.44\"},\"child\":[]}]})(props);\n};\nexport function IoAttach (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M216.08 192v143.85a40.08 40.08 0 0 0 80.15 0l.13-188.55a67.94 67.94 0 1 0-135.87 0v189.82a95.51 95.51 0 1 0 191 0V159.74\"},\"child\":[]}]})(props);\n};\nexport function IoBackspaceOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M135.19 390.14a28.79 28.79 0 0 0 21.68 9.86h246.26A29 29 0 0 0 432 371.13V140.87A29 29 0 0 0 403.13 112H156.87a28.84 28.84 0 0 0-21.67 9.84L46.33 256l88.86 134.11z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M336.67 192.33 206.66 322.34m130.01 0L206.66 192.33m130.01 0L206.66 322.34m130.01 0L206.66 192.33\"},\"child\":[]}]})(props);\n};\nexport function IoBackspaceSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M144 96 32 256l112 160h304V96zm215.3 226.34L336.67 345l-65-65-65 65L184 322.34l65-65-65-65 22.63-22.63 65 65 65-65 22.63 22.63-65 65z\"},\"child\":[]}]})(props);\n};\nexport function IoBackspace (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M403.13 96H156.87a44.9 44.9 0 0 0-33.68 15.27 15.88 15.88 0 0 0-1.91 2.7L32 247.75a16 16 0 0 0 0 16.5l89.15 133.57a16.24 16.24 0 0 0 2 2.88 44.89 44.89 0 0 0 33.7 15.3h246.28A44.92 44.92 0 0 0 448 371.13V140.87A44.92 44.92 0 0 0 403.13 96zM348 311a16 16 0 1 1-22.63 22.62L271.67 280 218 333.65A16 16 0 0 1 195.35 311L249 257.33l-53.69-53.69A16 16 0 0 1 218 181l53.69 53.7 53.67-53.7A16 16 0 0 1 348 203.64l-53.7 53.69z\"},\"child\":[]}]})(props);\n};\nexport function IoBagAddOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M256 256v128m64-64H192M80 176a16 16 0 0 0-16 16v216c0 30.24 25.76 56 56 56h272c30.24 0 56-24.51 56-54.75V192a16 16 0 0 0-16-16zm80 0v-32a96 96 0 0 1 96-96h0a96 96 0 0 1 96 96v32\"},\"child\":[]}]})(props);\n};\nexport function IoBagAddSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M460 160h-88v-12A116.13 116.13 0 0 0 258.89 32h-5.78A116.13 116.13 0 0 0 140 148v12H52a4 4 0 0 0-4 4v300a16 16 0 0 0 16 16h384a16 16 0 0 0 16-16V164a4 4 0 0 0-4-4zm-280-11c0-41.84 33.41-76.56 75.25-77A76.08 76.08 0 0 1 332 148v12H180zm156 187h-64v64h-32v-64h-64v-32h64v-64h32v64h64z\"},\"child\":[]}]})(props);\n};\nexport function IoBagAdd (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M454.66 169.4A31.86 31.86 0 0 0 432 160h-64v-16a112 112 0 0 0-224 0v16H80a32 32 0 0 0-32 32v216c0 39 33 72 72 72h272a72.22 72.22 0 0 0 50.48-20.55 69.48 69.48 0 0 0 21.52-50.2V192a31.78 31.78 0 0 0-9.34-22.6zM320 336h-48v48a16 16 0 0 1-32 0v-48h-48a16 16 0 0 1 0-32h48v-48a16 16 0 0 1 32 0v48h48a16 16 0 0 1 0 32zm16-176H176v-16a80 80 0 0 1 160 0z\"},\"child\":[]}]})(props);\n};\nexport function IoBagCheckOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"m320 264-89.6 112-38.4-44.88\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M80 176a16 16 0 0 0-16 16v216c0 30.24 25.76 56 56 56h272c30.24 0 56-24.51 56-54.75V192a16 16 0 0 0-16-16zm80 0v-32a96 96 0 0 1 96-96h0a96 96 0 0 1 96 96v32\"},\"child\":[]}]})(props);\n};\nexport function IoBagCheckSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M460 160h-88v-12A116.13 116.13 0 0 0 258.89 32h-5.78A116.13 116.13 0 0 0 140 148v12H52a4 4 0 0 0-4 4v300a16 16 0 0 0 16 16h384a16 16 0 0 0 16-16V164a4 4 0 0 0-4-4zm-280-11c0-41.84 33.41-76.56 75.25-77A76.08 76.08 0 0 1 332 148v12H180zm50.81 252.12-61.37-71.72 24.31-20.81L230 350.91l87.51-109.4 25 20z\"},\"child\":[]}]})(props);\n};\nexport function IoBagCheck (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M454.65 169.4A31.82 31.82 0 0 0 432 160h-64v-16a112 112 0 0 0-224 0v16H80a32 32 0 0 0-32 32v216c0 39 33 72 72 72h272a72.22 72.22 0 0 0 50.48-20.55 69.48 69.48 0 0 0 21.52-50.2V192a31.75 31.75 0 0 0-9.35-22.6zM332.49 274l-89.6 112a16 16 0 0 1-12.23 6h-.26a16 16 0 0 1-12.16-5.6l-38.4-44.88a16 16 0 1 1 24.32-20.8L230 350.91 307.51 254a16 16 0 0 1 25 20zM336 160H176v-16a80 80 0 0 1 160 0z\"},\"child\":[]}]})(props);\n};\nexport function IoBagHandleOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M80 176a16 16 0 0 0-16 16v216c0 30.24 25.76 56 56 56h272c30.24 0 56-24.51 56-54.75V192a16 16 0 0 0-16-16zm80 0v-32a96 96 0 0 1 96-96h0a96 96 0 0 1 96 96v32\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M160 224v16a96 96 0 0 0 96 96h0a96 96 0 0 0 96-96v-16\"},\"child\":[]}]})(props);\n};\nexport function IoBagHandleSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M460 160h-88v-12A116.13 116.13 0 0 0 258.89 32h-5.78A116.13 116.13 0 0 0 140 148v12H52a4 4 0 0 0-4 4v300a16 16 0 0 0 16 16h384a16 16 0 0 0 16-16V164a4 4 0 0 0-4-4zm-280-11c0-41.84 33.41-76.56 75.25-77A76.08 76.08 0 0 1 332 148v12H180zm188 91a112 112 0 0 1-224 0v-32h32v32a80 80 0 0 0 160 0v-32h32z\"},\"child\":[]}]})(props);\n};\nexport function IoBagHandle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M454.65 169.4A31.82 31.82 0 0 0 432 160h-64v-16a112 112 0 0 0-224 0v16H80a32 32 0 0 0-32 32v216c0 39 33 72 72 72h272a72.22 72.22 0 0 0 50.48-20.55 69.48 69.48 0 0 0 21.52-50.2V192a31.75 31.75 0 0 0-9.35-22.6zM176 144a80 80 0 0 1 160 0v16H176zm192 96a112 112 0 0 1-224 0v-16a16 16 0 0 1 32 0v16a80 80 0 0 0 160 0v-16a16 16 0 0 1 32 0z\"},\"child\":[]}]})(props);\n};\nexport function IoBagOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M80 176a16 16 0 0 0-16 16v216c0 30.24 25.76 56 56 56h272c30.24 0 56-24.51 56-54.75V192a16 16 0 0 0-16-16zm80 0v-32a96 96 0 0 1 96-96h0a96 96 0 0 1 96 96v32\"},\"child\":[]}]})(props);\n};\nexport function IoBagRemoveOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M320 320H192M80 176a16 16 0 0 0-16 16v216c0 30.24 25.76 56 56 56h272c30.24 0 56-24.51 56-54.75V192a16 16 0 0 0-16-16zm80 0v-32a96 96 0 0 1 96-96h0a96 96 0 0 1 96 96v32\"},\"child\":[]}]})(props);\n};\nexport function IoBagRemoveSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M460 160h-88v-12A116.13 116.13 0 0 0 258.89 32h-5.78A116.13 116.13 0 0 0 140 148v12H52a4 4 0 0 0-4 4v300a16 16 0 0 0 16 16h384a16 16 0 0 0 16-16V164a4 4 0 0 0-4-4zm-280-11c0-41.84 33.41-76.56 75.25-77A76.08 76.08 0 0 1 332 148v12H180zm156 187H176v-32h160z\"},\"child\":[]}]})(props);\n};\nexport function IoBagRemove (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M454.66 169.4A31.86 31.86 0 0 0 432 160h-64v-16a112 112 0 0 0-224 0v16H80a32 32 0 0 0-32 32v216c0 39 33 72 72 72h272a72.22 72.22 0 0 0 50.48-20.55 69.48 69.48 0 0 0 21.52-50.2V192a31.78 31.78 0 0 0-9.34-22.6zM320 336H192a16 16 0 0 1 0-32h128a16 16 0 0 1 0 32zm16-176H176v-16a80 80 0 0 1 160 0z\"},\"child\":[]}]})(props);\n};\nexport function IoBagSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M372 160v-12A116.13 116.13 0 0 0 258.89 32h-5.78A116.13 116.13 0 0 0 140 148v12H52a4 4 0 0 0-4 4v300a16 16 0 0 0 16 16h384a16 16 0 0 0 16-16V164a4 4 0 0 0-4-4zm-40 0H180v-11c0-41.84 33.41-76.56 75.25-77A76.08 76.08 0 0 1 332 148z\"},\"child\":[]}]})(props);\n};\nexport function IoBag (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M454.65 169.4A31.82 31.82 0 0 0 432 160h-64v-16a112 112 0 0 0-224 0v16H80a32 32 0 0 0-32 32v216c0 39 33 72 72 72h272a72.22 72.22 0 0 0 50.48-20.55 69.48 69.48 0 0 0 21.52-50.2V192a31.75 31.75 0 0 0-9.35-22.6zM176 144a80 80 0 0 1 160 0v16H176z\"},\"child\":[]}]})(props);\n};\nexport function IoBalloonOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M414.11 153.82C429.66 264.4 345.85 357.09 282.54 366s-169.48-57.5-185-167.68a159.82 159.82 0 1 1 316.53-44.49z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M236.06 308.05c-32.83-13-67.08-43.1-82.27-85.46M367.7 495.78c-32.83-13-63.31-40.06-78.5-82.41\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"m266.71 368.21-9.17 49.61 63.31-8.9-22.49-45.16-31.65 4.45z\"},\"child\":[]}]})(props);\n};\nexport function IoBalloonSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M391 307.27c32.75-46.35 46.59-101.63 39-155.68C416.47 55.59 327.38-11.54 231.38 2S68.24 104.53 81.73 200.53c7.57 53.89 36.12 103.16 80.37 138.74 26.91 21.64 57.59 36.1 86.05 41.33l-8.36 45.23a8 8 0 0 0 9 9.38L279 431c15.9 35.87 41.65 60.48 78.41 75l14.88 5.88 11.77-29.75-14.88-5.89c-26.35-10.42-44.48-26.16-57-49.92l21.84-3.07a8 8 0 0 0 6.05-11.49l-20.49-41.16c25.98-12.87 51.49-35.18 71.42-63.33zm-160.82 15.66c-41.26-16.32-76.3-52.7-91.45-94.94l-5.4-15.06 30.12-10.8 5.4 15.06c14.5 40.44 47.27 65.77 73.1 76l14.88 5.88-11.77 29.76z\"},\"child\":[]}]})(props);\n};\nexport function IoBalloon (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M391 307.27c32.75-46.35 46.59-101.63 39-155.68A175.82 175.82 0 0 0 231.38 2c-96 13.49-163.14 102.58-149.65 198.58 7.57 53.89 36.12 103.16 80.37 138.74 24.58 19.68 52.31 33.5 78.62 39.68a8 8 0 0 1 6 9.22l-4.87 26.38a16.29 16.29 0 0 0 1.48 10.57 16 16 0 0 0 14.2 8.61 15.21 15.21 0 0 0 2.23-.16l17.81-2.5a2 2 0 0 1 2.09 1.14c16.72 36.31 45.46 63.85 82.15 78.36a16 16 0 0 0 21-9.65c2.83-8.18-1.64-17.07-9.68-20.28a118.57 118.57 0 0 1-59.3-51.88 2 2 0 0 1 1.45-3l7.4-1a16.54 16.54 0 0 0 10.08-5.23 16 16 0 0 0 2.39-17.8l-12.06-24.23a8 8 0 0 1 3.26-10.55c23.59-13.17 46.45-34 64.65-59.73zm-154.9 16.78a16 16 0 0 1-5.88-1.12c-41.26-16.32-76.3-52.7-91.45-94.94a16 16 0 1 1 30.12-10.8c14.5 40.44 47.27 65.77 73.1 76a16 16 0 0 1-5.89 30.88z\"},\"child\":[]}]})(props);\n};\nexport function IoBanOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"256\",\"r\":\"208\",\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"m108.92 108.92 294.16 294.16\"},\"child\":[]}]})(props);\n};\nexport function IoBanSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M414.39 97.61A224 224 0 1 0 97.61 414.39 224 224 0 1 0 414.39 97.61zM432 256a175.09 175.09 0 0 1-35.8 106.26L149.74 115.8A175.09 175.09 0 0 1 256 80c97.05 0 176 79 176 176zm-352 0a175.09 175.09 0 0 1 35.8-106.26L362.26 396.2A175.09 175.09 0 0 1 256 432c-97 0-176-78.95-176-176z\"},\"child\":[]}]})(props);\n};\nexport function IoBan (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"256\",\"r\":\"200\",\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"48\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"48\",\"d\":\"m114.58 114.58 282.84 282.84\"},\"child\":[]}]})(props);\n};\nexport function IoBandageOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"rect\",\"attr\":{\"width\":\"560.87\",\"height\":\"176.25\",\"x\":\"-24.43\",\"y\":\"167.88\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"rx\":\"88.12\",\"ry\":\"88.12\",\"transform\":\"rotate(-45 256 256.002)\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"176\",\"height\":\"196\",\"x\":\"169.41\",\"y\":\"156.59\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"rx\":\"32\",\"ry\":\"32\",\"transform\":\"rotate(45 257.409 254.582)\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"208\",\"r\":\"16\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"304\",\"cy\":\"256\",\"r\":\"16\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"208\",\"cy\":\"256\",\"r\":\"16\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"304\",\"r\":\"16\"},\"child\":[]}]})(props);\n};\nexport function IoBandageSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M27.71 337.1a40 40 0 0 0 0 56.54l90.65 90.65a40 40 0 0 0 56.54 0l75.1-75.1L102.81 262zM496 147.1a39.87 39.87 0 0 0-11.75-28.38l-91-91a40.14 40.14 0 0 0-56.75 0L264 100.28 411.72 248l72.53-72.53A39.85 39.85 0 0 0 496 147.1zM273.06 386.19l116-116L241.77 123l-116 116zm19.63-141.5a16 16 0 1 1 0 22.62 16 16 0 0 1 0-22.62zm-48-48a16 16 0 1 1 0 22.62 16 16 0 0 1 0-22.62zm0 96a16 16 0 1 1 0 22.62 16 16 0 0 1 0-22.62zm-25.38-48a16 16 0 1 1-22.62 0 16 16 0 0 1 22.62 0z\"},\"child\":[]}]})(props);\n};\nexport function IoBandage (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"d\":\"M275.8 157a16 16 0 0 0-22.63 0l-93.34 93.34a16 16 0 0 0 0 22.63l79.2 79.2a16 16 0 0 0 22.63 0L355 258.83a16 16 0 0 0 0-22.63zM137.21 295.6a47.81 47.81 0 0 1-9.43-13.38L69 341a72.2 72.2 0 0 0 0 102 72.37 72.37 0 0 0 102 0l58.77-58.76a47.81 47.81 0 0 1-13.38-9.43zM392 48a71.55 71.55 0 0 0-51 21l-55.92 55.91a48.05 48.05 0 0 1 13.36 9.45l79.19 79.19a48.05 48.05 0 0 1 9.45 13.36L443 171a72 72 0 0 0-51-123z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M275.8 157a16 16 0 0 0-22.63 0l-93.34 93.34a16 16 0 0 0 0 22.63l79.2 79.2a16 16 0 0 0 22.63 0L355 258.83a16 16 0 0 0 0-22.63zm-56.49 110.31a16 16 0 1 1 0-22.62 16 16 0 0 1 0 22.62zm48 48a16 16 0 1 1 0-22.62 16 16 0 0 1 0 22.62zm0-96a16 16 0 1 1 0-22.62 16 16 0 0 1 0 22.62zm48 48a16 16 0 1 1 0-22.62 16 16 0 0 1 0 22.62zm150.3-220.92a104.38 104.38 0 0 0-147.25 0l-69.76 69.89a4 4 0 0 0 4.2 6.58 35.74 35.74 0 0 1 11.69-2.54 47.7 47.7 0 0 1 33.94 14.06l79.19 79.19a47.7 47.7 0 0 1 14.06 33.94 35.68 35.68 0 0 1-2.54 11.69 4 4 0 0 0 6.58 4.2l69.89-69.76a104.38 104.38 0 0 0 0-147.25z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M254.34 386.83a47.91 47.91 0 0 1-33.94-14l-79.19-79.23a47.81 47.81 0 0 1-9.43-13.38c-4.59-9.7-1.39-25 2.48-36.9a4 4 0 0 0-6.64-4l-77.23 77.04a104.12 104.12 0 0 0 147.25 147.25l72.75-72.88a4 4 0 0 0-4.21-6.58c-4.18 1.58-8.4 2.68-11.84 2.68z\"},\"child\":[]}]})(props);\n};\nexport function IoBarChartOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M32 32v432a16 16 0 0 0 16 16h432\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"80\",\"height\":\"192\",\"x\":\"96\",\"y\":\"224\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"rx\":\"20\",\"ry\":\"20\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"80\",\"height\":\"240\",\"x\":\"240\",\"y\":\"176\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"rx\":\"20\",\"ry\":\"20\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"80\",\"height\":\"304\",\"x\":\"383.64\",\"y\":\"112\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"rx\":\"20\",\"ry\":\"20\"},\"child\":[]}]})(props);\n};\nexport function IoBarChartSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M496 496H16V16h32v448h448v32z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M192 432H80V208h112zm144 0H224V160h112zm143.64 0h-112V96h112z\"},\"child\":[]}]})(props);\n};\nexport function IoBarChart (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M480 496H48a32 32 0 0 1-32-32V32a16 16 0 0 1 32 0v432h432a16 16 0 0 1 0 32z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M156 432h-40a36 36 0 0 1-36-36V244a36 36 0 0 1 36-36h40a36 36 0 0 1 36 36v152a36 36 0 0 1-36 36zm144 0h-40a36 36 0 0 1-36-36V196a36 36 0 0 1 36-36h40a36 36 0 0 1 36 36v200a36 36 0 0 1-36 36zm143.64 0h-40a36 36 0 0 1-36-36V132a36 36 0 0 1 36-36h40a36 36 0 0 1 36 36v264a36 36 0 0 1-36 36z\"},\"child\":[]}]})(props);\n};\nexport function IoBarbellOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M48 256h416\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"32\",\"height\":\"256\",\"x\":\"384\",\"y\":\"128\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"rx\":\"16\",\"ry\":\"16\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"32\",\"height\":\"256\",\"x\":\"96\",\"y\":\"128\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"rx\":\"16\",\"ry\":\"16\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"16\",\"height\":\"128\",\"x\":\"32\",\"y\":\"192\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"rx\":\"8\",\"ry\":\"8\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"16\",\"height\":\"128\",\"x\":\"464\",\"y\":\"192\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"rx\":\"8\",\"ry\":\"8\"},\"child\":[]}]})(props);\n};\nexport function IoBarbellSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M496 176h-58v-64h-76v122H150V112H74v64H16v160h58v64h76V278h212v122h76v-64h58V176z\"},\"child\":[]}]})(props);\n};\nexport function IoBarbell (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M467 176a29.94 29.94 0 0 0-25.32 12.5 2 2 0 0 1-3.64-1.14v-36.65c0-20.75-16.34-38.21-37.08-38.7A38 38 0 0 0 362 150v82a2 2 0 0 1-2 2H152a2 2 0 0 1-2-2v-81.29c0-20.75-16.34-38.21-37.08-38.7A38 38 0 0 0 74 150v37.38a2 2 0 0 1-3.64 1.14A29.94 29.94 0 0 0 45 176c-16.3.51-29 14.31-29 30.62v98.72c0 16.31 12.74 30.11 29 30.62a29.94 29.94 0 0 0 25.32-12.5 2 2 0 0 1 3.68 1.16v36.67C74 382 90.34 399.5 111.08 400A38 38 0 0 0 150 362v-82a2 2 0 0 1 2-2h208a2 2 0 0 1 2 2v81.29c0 20.75 16.34 38.21 37.08 38.7A38 38 0 0 0 438 362v-37.38a2 2 0 0 1 3.64-1.14A29.94 29.94 0 0 0 467 336c16.3-.51 29-14.31 29-30.62v-98.74c0-16.31-12.74-30.11-29-30.64z\"},\"child\":[]}]})(props);\n};\nexport function IoBarcodeOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"m384 400.33 35.13-.33A29 29 0 0 0 448 371.13V140.87A29 29 0 0 0 419.13 112l-35.13.33M128 112l-36.8.33c-15.88 0-27.2 13-27.2 28.87v230.27c0 15.87 11.32 28.86 27.2 28.86L128 400m256-208v128m-64-160v192m-64-176v160m-64-176v192m-64-160v128\"},\"child\":[]}]})(props);\n};\nexport function IoBarcodeSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"square\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"m400 400.33 48-.33V112l-48 .33M112 112l-48 .33v288l48-.33m272-208v128m-64-160v192m-64-176v160m-64-176v192m-64-160v128\"},\"child\":[]}]})(props);\n};\nexport function IoBarcode (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M419.13 96H419l-35.05.33L128 96h-.16l-36.74.33C66.93 96.38 48 116.07 48 141.2v230.27c0 25.15 19 44.86 43.2 44.86h.15l36.71-.33 255.92.33h.17l35.07-.33A44.91 44.91 0 0 0 464 371.13V140.87A44.92 44.92 0 0 0 419.13 96zM144 320a16 16 0 0 1-32 0V192a16 16 0 0 1 32 0zm64 32a16 16 0 0 1-32 0V160a16 16 0 0 1 32 0zm64-16a16 16 0 0 1-32 0V176a16 16 0 0 1 32 0zm64 16a16 16 0 0 1-32 0V160a16 16 0 0 1 32 0zm64-32a16 16 0 0 1-32 0V192a16 16 0 0 1 32 0z\"},\"child\":[]}]})(props);\n};\nexport function IoBaseballOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"m294.25 108.6-60.57 17.59m83.45 29.92-51.5 36.4m90.26 2.36-36.4 51.5m83.91-28.62-17.59 60.57\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"256\",\"r\":\"192\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M432.94 255.05a192 192 0 0 1-176.31-180.7M108.54 294.31l17.59-60.57m29.92 83.45 36.4-51.5m2.36 90.26 51.5-36.4m-28.62 83.91 60.57-17.59M255 433.61A192 192 0 0 0 74.29 256.69\"},\"child\":[]}]})(props);\n};\nexport function IoBaseballSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M302.16 56.2a13.88 13.88 0 0 1-3.42 8.91l-.11 5.13-27.71-.57c0 1.3.09 2.61.16 3.91a177.33 177.33 0 0 0 3.45 26.31l24.72-7.18 7.81 26.88-24.71 7.18a177.21 177.21 0 0 0 13.34 27.69l21.27-15 16.16 22.86-21.29 15.05q5.25 6.33 11.11 12.19c3.91 3.91 8 7.6 12.2 11.1l15.71-22.22 22.86 16.16L358 216.75a178.78 178.78 0 0 0 27.68 13.32l7.49-25.8 26.89 7.81-7.5 25.83a177.8 177.8 0 0 0 31 3.67l-.41-24.67 17.41-.29A208 208 0 0 0 301.82 52.93a13.65 13.65 0 0 1 .34 3.27zM214 441.64l27.91.49a177.46 177.46 0 0 0-3.62-29.95l-24.14 7-7.81-26.88 24.11-7a177.92 177.92 0 0 0-13.33-27.68L196.79 372l-16.16-22.86L201 334.73c-3.49-4.22-7.19-8.3-11.09-12.2s-8-7.62-12.19-11.12l-13.91 19.68L141 314.93l13.9-19.66a177.26 177.26 0 0 0-27.7-13.33l-6.37 21.94-26.89-7.81 6.38-22a177.32 177.32 0 0 0-26.32-3.4c-1.59-.09-3.18-.16-4.78-.2l.4 22.34-17.71.32a207.88 207.88 0 0 0 161.81 166.48z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m444.65 302.67-.55-33.06a206 206 0 0 1-39.33-4.74L397 291.8l-26.94-7.8 7.83-27a206.91 206.91 0 0 1-36.06-17.35l-16.36 23.15-22.86-16.16 16.33-23.11a204.21 204.21 0 0 1-30-30l-22.19 15.67-16.16-22.87 22.17-15.67a206 206 0 0 1-17.38-36.06l-25.75 7.48-7.81-26.89 25.73-7.47q-2-9.21-3.18-18.64h-.47l-.78-14-.33-6-17.94-.32a13.38 13.38 0 0 1-1.79-.16l-6.35-.13.06-2.47a14 14 0 0 1-5.66-11.49 13.27 13.27 0 0 1 .13-1.67A208 208 0 0 0 52.16 217.43l16.1-.28.45 25.18 6.83.38 14 .77v.48q9.42 1.17 18.64 3.18l6.68-23L141.7 232l-6.7 23a205.3 205.3 0 0 1 36.06 17.38l14.53-20.56L208.47 268 194 288.5a203.5 203.5 0 0 1 30 30l21.3-15 16.16 22.86-21.36 15.05a206.86 206.86 0 0 1 17.34 36.06l25.27-7.33 7.81 26.86-25.24 7.33a205.9 205.9 0 0 1 4.72 38.3l29.42.53-.29 16.48a207.94 207.94 0 0 0 160-157.21z\"},\"child\":[]}]})(props);\n};\nexport function IoBaseball (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m444 295.67-.47-26.07a205.42 205.42 0 0 1-39.27-4.73l-5 17.35a14 14 0 1 1-26.88-7.81l5-17.38a206.47 206.47 0 0 1-36.05-17.35l-10.44 14.77a14 14 0 0 1-22.87-16.16l10.41-14.73a204.8 204.8 0 0 1-30-30L273.71 204a14 14 0 0 1-16.16-22.87l14.74-10.42a205.3 205.3 0 0 1-17.38-36.06l-17.32 5a14 14 0 1 1-7.81-26.89l17.3-5a205.88 205.88 0 0 1-4.43-32.59q-.17-3-.24-6l-18.22-.33a14 14 0 0 1-13.74-14A208 208 0 0 0 55 202.42a16 16 0 0 1 15 15.66l.44 24.43c1.58.05 3.16.11 4.73.2a205.88 205.88 0 0 1 32.59 4.43l5-17.3a14 14 0 0 1 26.89 7.81l-5 17.32a205.21 205.21 0 0 1 36 17.38L181 257.61a14 14 0 0 1 22.87 16.16l-10.39 14.73a205.65 205.65 0 0 1 15.79 14.23 203.79 203.79 0 0 1 14.23 15.79l14.73-10.41A14 14 0 0 1 254.39 331l-14.76 10.43A206.86 206.86 0 0 1 257 377.47l17.38-5.05a14 14 0 0 1 7.81 26.89l-17.35 5a205.89 205.89 0 0 1 4.7 38.28l18.27.33a16 16 0 0 1 15.71 16.28 11.69 11.69 0 0 1-.08 1.19 208 208 0 0 0 153.39-151.03A14 14 0 0 1 444 295.67z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M301.49 56.2A14 14 0 0 1 287.5 70h-.25l-16.81-.3c.05 1.31.1 2.62.17 3.93a178.83 178.83 0 0 0 3.44 26.31l16.29-4.74a14 14 0 0 1 7.81 26.8l-16.27 4.73a178.06 178.06 0 0 0 13.33 27.69l13.84-9.78a14 14 0 1 1 16.16 22.87l-13.86 9.79q5.25 6.33 11.12 12.19c3.9 3.91 8 7.6 12.2 11.1l9.78-13.84A14 14 0 1 1 367.32 203l-9.76 13.8a178.83 178.83 0 0 0 27.68 13.33l4.76-16.28a14 14 0 0 1 26.89 7.81l-4.73 16.26a177.72 177.72 0 0 0 30.95 3.65l-.16-9a14 14 0 0 1 13.75-14.24h.25a14.67 14.67 0 0 1 2.59.25 208 208 0 0 0-158-163.51c-.06.4-.04.76-.05 1.13zm-93.05 401.35a16 16 0 0 1 16.28-15.71l16.76.29a178.49 178.49 0 0 0-3.62-29.95l-16.26 4.72a14 14 0 1 1-7.81-26.9l16.21-4.7a177.92 177.92 0 0 0-13.33-27.68l-13.8 9.76a14 14 0 1 1-16.16-22.87l13.84-9.78c-3.5-4.22-7.19-8.3-11.1-12.2s-8-7.62-12.19-11.12l-9.79 13.86a14 14 0 1 1-22.87-16.16l9.78-13.84a177.16 177.16 0 0 0-27.69-13.33L122 298.21a14 14 0 1 1-26.9-7.81l4.73-16.29a177.32 177.32 0 0 0-26.31-3.44c-.89-.05-1.79-.08-2.68-.12l.16 10.59a16 16 0 0 1-15.71 16.28H55a16 16 0 0 1-3.94-.51 208 208 0 0 0 157.65 163.87 15.72 15.72 0 0 1-.27-3.23z\"},\"child\":[]}]})(props);\n};\nexport function IoBasketOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M68.4 192A20.38 20.38 0 0 0 48 212.2a17.87 17.87 0 0 0 .8 5.5L100.5 400a40.46 40.46 0 0 0 39.1 29.5h232.8a40.88 40.88 0 0 0 39.3-29.5l51.7-182.3.6-5.5a20.38 20.38 0 0 0-20.4-20.2H68.4zm193.32 160.07A42.07 42.07 0 1 1 304 310a42.27 42.27 0 0 1-42.28 42.07z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"m160 192 96-128 96 128\"},\"child\":[]}]})(props);\n};\nexport function IoBasketSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M339.2 217.6 256 106.67 172.8 217.6l-25.6-19.2 96-128a16 16 0 0 1 25.6 0l96 128z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M441.59 192H70.41a12 12 0 0 0-11.68 14.77L112.59 434h286.82l53.86-227.23A12 12 0 0 0 441.59 192zM256 351.66A37.71 37.71 0 1 1 293.89 314 37.88 37.88 0 0 1 256 351.66z\"},\"child\":[]}]})(props);\n};\nexport function IoBasket (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M424.11 192H360L268.8 70.4a16 16 0 0 0-25.6 0L152 192H87.89a32.57 32.57 0 0 0-32.62 32.44 30.3 30.3 0 0 0 1.31 9l46.27 163.14a50.72 50.72 0 0 0 48.84 36.91h208.62a51.21 51.21 0 0 0 49-36.86l46.33-163.36a15.62 15.62 0 0 0 .46-2.36l.53-4.93a13.3 13.3 0 0 0 .09-1.55A32.57 32.57 0 0 0 424.11 192zM256 106.67 320 192H192zm0 245a37.7 37.7 0 1 1 37.88-37.7A37.87 37.87 0 0 1 256 351.63z\"},\"child\":[]}]})(props);\n};\nexport function IoBasketballOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"256\",\"r\":\"192\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M432.94 255.05a192 192 0 0 1-176.31-180.7M255 433.61A192 192 0 0 0 74.29 256.69m45.95-136.45 271.52 271.52m-271.52 0 271.52-271.52\"},\"child\":[]}]})(props);\n};\nexport function IoBasketballSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m256 233.37 34.45-34.45a207.08 207.08 0 0 1-50.12-135.25c0-5 .19-10.05.54-15A207.09 207.09 0 0 0 120.67 98zm57.14-57.14L391.33 98A207.07 207.07 0 0 0 273 48.8c-.41 4.9-.64 9.86-.64 14.87a175.25 175.25 0 0 0 40.78 112.56zm22.63 22.63a175.25 175.25 0 0 0 112.56 40.81c5 0 10-.23 14.87-.64A207.07 207.07 0 0 0 414 120.67zM176.23 313.14a175.23 175.23 0 0 0-112.56-40.81q-7.52 0-14.87.64A207.07 207.07 0 0 0 98 391.33zM256 278.63l-34.45 34.45a207.08 207.08 0 0 1 50.12 135.25c0 5-.19 10.05-.54 15A207.06 207.06 0 0 0 391.33 414zm192.33-6.96a207.08 207.08 0 0 1-135.25-50.12L278.63 256 414 391.33a207.09 207.09 0 0 0 49.39-120.2c-5.01.35-10.02.54-15.06.54zM233.37 256 98 120.67a207.06 207.06 0 0 0-49.39 120.2c5-.35 10-.54 15-.54a207.08 207.08 0 0 1 135.25 50.12zm-112.7 158A207.07 207.07 0 0 0 239 463.2q.63-7.35.64-14.87a175.23 175.23 0 0 0-40.81-112.56z\"},\"child\":[]}]})(props);\n};\nexport function IoBasketball (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m256 233.37 34.45-34.45a207.08 207.08 0 0 1-50.12-135.25c0-5 .19-10.05.54-15A207.09 207.09 0 0 0 120.67 98zm57.14-57.14L391.33 98A207.07 207.07 0 0 0 273 48.8c-.41 4.9-.64 9.86-.64 14.87a175.25 175.25 0 0 0 40.78 112.56zm22.63 22.63a175.25 175.25 0 0 0 112.56 40.81c5 0 10-.23 14.87-.64A207.07 207.07 0 0 0 414 120.67zM176.23 313.14a175.23 175.23 0 0 0-112.56-40.81q-7.52 0-14.87.64A207.07 207.07 0 0 0 98 391.33zM256 278.63l-34.45 34.45a207.08 207.08 0 0 1 50.12 135.25c0 5-.19 10.05-.54 15A207.06 207.06 0 0 0 391.33 414zm192.33-6.96a207.08 207.08 0 0 1-135.25-50.12L278.63 256 414 391.33a207.09 207.09 0 0 0 49.39-120.2c-5.01.35-10.02.54-15.06.54zM233.37 256 98 120.67a207.06 207.06 0 0 0-49.39 120.2c5-.35 10-.54 15-.54a207.08 207.08 0 0 1 135.25 50.12zm-112.7 158A207.07 207.07 0 0 0 239 463.2q.63-7.35.64-14.87a175.23 175.23 0 0 0-40.81-112.56z\"},\"child\":[]}]})(props);\n};\nexport function IoBatteryChargingOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M48 322.3V189.7A29.74 29.74 0 0 1 77.7 160h137.44l24.4-32H77.7A61.77 61.77 0 0 0 16 189.7v132.6A61.77 61.77 0 0 0 77.7 384h96.85a22.57 22.57 0 0 1 .26-7.32l.15-.75.21-.73 6.5-23.2H77.7A29.74 29.74 0 0 1 48 322.3zM386.3 128h-98.64a22.69 22.69 0 0 1-.27 7.2l-.15.74-.21.73-6.54 23.33H386.3a29.74 29.74 0 0 1 29.7 29.7v132.6a29.74 29.74 0 0 1-29.7 29.7H247l-24.42 32H386.3a61.77 61.77 0 0 0 61.7-61.7V189.7a61.77 61.77 0 0 0-61.7-61.7z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M162.65 294.16a24.37 24.37 0 0 1-21.56-13 25 25 0 0 1 1.42-25.83l.31-.46.33-.44L197.62 183H89.69a20 20 0 0 0-20 20v106a20 20 0 0 0 20 20h98.42l9.78-34.86z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m276.07 280.89 27.07-35.49a5.2 5.2 0 0 0 .77-1.91 5 5 0 0 0 .08-.66 5 5 0 0 0-.08-1.29 5.11 5.11 0 0 0-.68-1.75 4.76 4.76 0 0 0-.78-.95 3.48 3.48 0 0 0-.48-.38 4 4 0 0 0-1.11-.55 4.28 4.28 0 0 0-1.31-.2h-61.62l12.12-43.21 3.23-11.5 6.21-22.16.51-1.84 7.79-27.76a3.51 3.51 0 0 0 .05-.55v-.16c0-.05 0-.26-.05-.38s0-.09 0-.14a2.2 2.2 0 0 0-.17-.45 3.77 3.77 0 0 0-.26-.39l-.09-.1a2.73 2.73 0 0 0-.25-.23l-.1-.08a3.14 3.14 0 0 0-.39-.24 2 2 0 0 0-.41-.14h-.59a2.3 2.3 0 0 0-.45 0 1.9 1.9 0 0 0-.42.15l-.13.07-.3.21-.11.1a2.4 2.4 0 0 0-.36.41l-18 23.63-13.14 17.22-9.85 12.83-63.71 83.55a5.72 5.72 0 0 0-.44.8 4.78 4.78 0 0 0-.35 1.09 4.7 4.7 0 0 0-.08 1.29 4.86 4.86 0 0 0 2 3.71 4.74 4.74 0 0 0 .54.31 4.31 4.31 0 0 0 1.89.43h61.62L194.42 380.6a3.64 3.64 0 0 0 0 .56v.15a2.32 2.32 0 0 0 .06.38.58.58 0 0 0 0 .14 2.2 2.2 0 0 0 .17.45 3.62 3.62 0 0 0 .26.38l.09.1.25.24a.39.39 0 0 1 .1.08 2.22 2.22 0 0 0 .39.23 2.83 2.83 0 0 0 .41.14h.13a1.86 1.86 0 0 0 .33 0h.13a2.32 2.32 0 0 0 .45-.06 2.05 2.05 0 0 0 .41-.16l.13-.07.3-.21.11-.09a2.4 2.4 0 0 0 .36-.41L221.82 352l17.53-23z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m319.5 256.93-.46.6L264.51 329h109.8a20 20 0 0 0 20-20V203a20 20 0 0 0-20-20H274.05l-9.74 34.73h35.24A24.35 24.35 0 0 1 321 230.5a25.21 25.21 0 0 1-1 25.79zM480 202.67a16 16 0 0 0-16 16v74.66a16 16 0 0 0 32 0v-74.66a16 16 0 0 0-16-16z\"},\"child\":[]}]})(props);\n};\nexport function IoBatteryChargingSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M306.68 237.62h-66.5l15.33-54.7 6.43-22.92 3.94-14 4.29-15.33a3.56 3.56 0 0 0 .06-.44v-.19a1.85 1.85 0 0 0 0-.23 2 2 0 0 0 0-.24v-.14c0-.1-.07-.19-.11-.29v-.05a2.33 2.33 0 0 0-2-1.35h-.1a2.25 2.25 0 0 0-1.8 1l-12.5 17.15-18.82 25.55-8.36 11.48-35.41 48.6L160 274.26h66.44l-30 107a3.93 3.93 0 0 0-.06.48v.1a1.94 1.94 0 0 0 0 .34.29.29 0 0 0 0 .09 3 3 0 0 0 .07.32v.06a1.83 1.83 0 0 0 .14.32 2.38 2.38 0 0 0 1.52 1.16h.57a2.1 2.1 0 0 0 1.31-.5l.06-.05a2.6 2.6 0 0 0 .42-.45L223.3 352l13-17.82z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m289.78 134.55-.14.74-.21.73-6.72 24H417V352H248.05l-23.33 32H449V128H290.13a22.62 22.62 0 0 1-.35 6.55zM49 160h169.49l23.31-32H17v256h159.49a22.73 22.73 0 0 1 .34-6.67l.15-.75.2-.73 6.69-23.85H49z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M264.76 329.08h130.55V182.92H276.28l-9.73 34.7H346l-23.16 31.78-58.08 79.68zM160 294.26h-39.31l23.15-31.78 57.95-79.56H70.69v146.16h119.6l9.77-34.82H160zm305-91.59h32v106.67h-32z\"},\"child\":[]}]})(props);\n};\nexport function IoBatteryCharging (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M48 322.3V189.7A29.74 29.74 0 0 1 77.7 160h137.44l24.4-32H77.7A61.77 61.77 0 0 0 16 189.7v132.6A61.77 61.77 0 0 0 77.7 384h96.85a22.57 22.57 0 0 1 .26-7.32l.15-.75.21-.73 6.5-23.2H77.7A29.74 29.74 0 0 1 48 322.3zM386.3 128h-98.64a22.69 22.69 0 0 1-.27 7.2l-.15.74-.21.73-6.54 23.33H386.3a29.74 29.74 0 0 1 29.7 29.7v132.6a29.74 29.74 0 0 1-29.7 29.7H247l-24.42 32H386.3a61.77 61.77 0 0 0 61.7-61.7V189.7a61.77 61.77 0 0 0-61.7-61.7z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M162.65 294.16a24.37 24.37 0 0 1-21.56-13 25 25 0 0 1 1.42-25.83l.31-.46.33-.44L197.62 183H89.69a20 20 0 0 0-20 20v106a20 20 0 0 0 20 20h98.42l9.78-34.86z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m276.07 280.89 27.07-35.49a5.2 5.2 0 0 0 .77-1.91 5 5 0 0 0 .08-.66 5 5 0 0 0-.08-1.29 5.11 5.11 0 0 0-.68-1.75 4.76 4.76 0 0 0-.78-.95 3.48 3.48 0 0 0-.48-.38 4 4 0 0 0-1.11-.55 4.28 4.28 0 0 0-1.31-.2h-61.62l12.12-43.21 3.23-11.5 6.21-22.16.51-1.84 7.79-27.76a3.51 3.51 0 0 0 .05-.55v-.16c0-.05 0-.26-.05-.38s0-.09 0-.14a2.2 2.2 0 0 0-.17-.45 3.77 3.77 0 0 0-.26-.39l-.09-.1a2.73 2.73 0 0 0-.25-.23l-.1-.08a3.14 3.14 0 0 0-.39-.24 2 2 0 0 0-.41-.14h-.59a2.3 2.3 0 0 0-.45 0 1.9 1.9 0 0 0-.42.15l-.13.07-.3.21-.11.1a2.4 2.4 0 0 0-.36.41l-18 23.63-13.14 17.22-9.85 12.83-63.71 83.55a5.72 5.72 0 0 0-.44.8 4.78 4.78 0 0 0-.35 1.09 4.7 4.7 0 0 0-.08 1.29 4.86 4.86 0 0 0 2 3.71 4.74 4.74 0 0 0 .54.31 4.31 4.31 0 0 0 1.89.43h61.62L194.42 380.6a3.64 3.64 0 0 0 0 .56v.15a2.32 2.32 0 0 0 .06.38.58.58 0 0 0 0 .14 2.2 2.2 0 0 0 .17.45 3.62 3.62 0 0 0 .26.38l.09.1.25.24a.39.39 0 0 1 .1.08 2.22 2.22 0 0 0 .39.23 2.83 2.83 0 0 0 .41.14h.13a1.86 1.86 0 0 0 .33 0h.13a2.32 2.32 0 0 0 .45-.06 2.05 2.05 0 0 0 .41-.16l.13-.07.3-.21.11-.09a2.4 2.4 0 0 0 .36-.41L221.82 352l17.53-23z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m319.5 256.93-.46.6L264.51 329h109.8a20 20 0 0 0 20-20V203a20 20 0 0 0-20-20H274.05l-9.74 34.73h35.24A24.35 24.35 0 0 1 321 230.5a25.21 25.21 0 0 1-1 25.79zM480 202.67a16 16 0 0 0-16 16v74.66a16 16 0 0 0 32 0v-74.66a16 16 0 0 0-16-16z\"},\"child\":[]}]})(props);\n};\nexport function IoBatteryDeadOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"rect\",\"attr\":{\"width\":\"400\",\"height\":\"224\",\"x\":\"31\",\"y\":\"144\",\"fill\":\"none\",\"strokeLinecap\":\"square\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"rx\":\"45.7\",\"ry\":\"45.7\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M479 218.67v74.66\"},\"child\":[]}]})(props);\n};\nexport function IoBatteryDeadSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"square\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M32 144h400v224H32zm448 74.67v74.66\"},\"child\":[]}]})(props);\n};\nexport function IoBatteryDead (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"rect\",\"attr\":{\"width\":\"400\",\"height\":\"224\",\"x\":\"31\",\"y\":\"144\",\"fill\":\"none\",\"strokeLinecap\":\"square\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"rx\":\"45.7\",\"ry\":\"45.7\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M479 218.67v74.66\"},\"child\":[]}]})(props);\n};\nexport function IoBatteryFullOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"rect\",\"attr\":{\"width\":\"400\",\"height\":\"224\",\"x\":\"32\",\"y\":\"144\",\"fill\":\"none\",\"strokeLinecap\":\"square\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"rx\":\"45.7\",\"ry\":\"45.7\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"292.63\",\"height\":\"114.14\",\"x\":\"85.69\",\"y\":\"198.93\",\"strokeLinecap\":\"square\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"rx\":\"4\",\"ry\":\"4\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M480 218.67v74.66\"},\"child\":[]}]})(props);\n};\nexport function IoBatteryFullSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M17 384h432V128H17zm32-224h368v192H49z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M70.69 182.94h324.63v146.13H70.69zM465 202.67h32v106.67h-32z\"},\"child\":[]}]})(props);\n};\nexport function IoBatteryFull (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"rect\",\"attr\":{\"width\":\"400\",\"height\":\"224\",\"x\":\"32\",\"y\":\"144\",\"fill\":\"none\",\"strokeLinecap\":\"square\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"rx\":\"45.7\",\"ry\":\"45.7\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"292.63\",\"height\":\"114.14\",\"x\":\"85.69\",\"y\":\"198.93\",\"strokeLinecap\":\"square\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"rx\":\"4\",\"ry\":\"4\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M480 218.67v74.66\"},\"child\":[]}]})(props);\n};\nexport function IoBatteryHalfOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"rect\",\"attr\":{\"width\":\"400\",\"height\":\"224\",\"x\":\"32\",\"y\":\"144\",\"fill\":\"none\",\"strokeLinecap\":\"square\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"rx\":\"45.7\",\"ry\":\"45.7\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"154.31\",\"height\":\"114.13\",\"x\":\"85.69\",\"y\":\"198.93\",\"strokeLinecap\":\"square\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"rx\":\"4\",\"ry\":\"4\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M480 218.67v74.66\"},\"child\":[]}]})(props);\n};\nexport function IoBatteryHalfSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M17 384h432V128H17zm32-224h368v192H49z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M70.69 182.92H256v146.16H70.69zM465 202.67h32v106.67h-32z\"},\"child\":[]}]})(props);\n};\nexport function IoBatteryHalf (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"rect\",\"attr\":{\"width\":\"400\",\"height\":\"224\",\"x\":\"32\",\"y\":\"144\",\"fill\":\"none\",\"strokeLinecap\":\"square\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"rx\":\"45.7\",\"ry\":\"45.7\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"154.31\",\"height\":\"114.13\",\"x\":\"85.69\",\"y\":\"198.93\",\"strokeLinecap\":\"square\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"rx\":\"4\",\"ry\":\"4\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M480 218.67v74.66\"},\"child\":[]}]})(props);\n};\nexport function IoBeakerOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M445.2 48.05 398 48H128c-54.3 0-64 35.7-64 48 30.3 4.2 48 8 48 40v264a64 64 0 0 0 64 64h192a64 64 0 0 0 64-64V96c0-19 11.5-38.35 12.6-40 1.2-1.9 3.4-4.4 3.4-5.5s-.3-2.45-2.8-2.45zM112 176h320\"},\"child\":[]}]})(props);\n};\nexport function IoBeakerSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M453.55 54.7 464 32H128.4c-27.74 0-49 6.57-63.31 19.51C54.39 61.27 48 74.89 48 88v24h16c31 0 32 16.79 32 35v313a20 20 0 0 0 20 20h312a20 20 0 0 0 20-20V96c0-17.16 2.28-34.14 5.55-41.3zM416 96v64H128v-22c0-36.15-21-51-41.77-53.46C89 70 105.7 64.05 128.4 64.05h289.92A221.83 221.83 0 0 0 416 96z\"},\"child\":[]}]})(props);\n};\nexport function IoBeaker (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M444 32H128c-19.38 0-45.9 4.34-64.11 24.77C52.17 69.92 48 85.66 48 96a16 16 0 0 0 13.8 15.85C91.7 116 96 117.79 96 136v264a80.07 80.07 0 0 0 80 80h192a80.11 80.11 0 0 0 80-80V96c0-12.55 7.46-27.25 10-31.36l.1-.14c.22-.35.5-.72.78-1.1 2-2.79 5.09-7 5.09-12.95C464 39.79 454.89 32 444 32zM84.11 83.08c5.24-8.87 17.17-19 44.29-19h294.43C419.3 72.87 416 84.27 416 96v64H128v-24c0-37.32-21.35-48.14-43.89-52.92z\"},\"child\":[]}]})(props);\n};\nexport function IoBedOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M384 240H96V136a40.12 40.12 0 0 1 40-40h240a40.12 40.12 0 0 1 40 40v104zM48 416V304a64.19 64.19 0 0 1 64-64h288a64.19 64.19 0 0 1 64 64v112\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M48 416v-8a24.07 24.07 0 0 1 24-24h368a24.07 24.07 0 0 1 24 24v8M112 240v-16a32.09 32.09 0 0 1 32-32h80a32.09 32.09 0 0 1 32 32v16m0 0v-16a32.09 32.09 0 0 1 32-32h80a32.09 32.09 0 0 1 32 32v16\"},\"child\":[]}]})(props);\n};\nexport function IoBedSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M432 224V96a16 16 0 0 0-16-16H96a16 16 0 0 0-16 16v128a48 48 0 0 0-48 48v160h36v-32h376v32h36V272a48 48 0 0 0-48-48zm-192 0H120v-32a16 16 0 0 1 16-16h88a16 16 0 0 1 16 16zm32-32a16 16 0 0 1 16-16h88a16 16 0 0 1 16 16v32H272z\"},\"child\":[]}]})(props);\n};\nexport function IoBed (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M432 230.7a79.44 79.44 0 0 0-32-6.7H112a79.51 79.51 0 0 0-32 6.69A80.09 80.09 0 0 0 32 304v112a16 16 0 0 0 32 0v-8a8.1 8.1 0 0 1 8-8h368a8.1 8.1 0 0 1 8 8v8a16 16 0 0 0 32 0V304a80.09 80.09 0 0 0-48-73.3zM376 80H136a56 56 0 0 0-56 56v72a4 4 0 0 0 5.11 3.84A95.5 95.5 0 0 1 112 208h4.23a4 4 0 0 0 4-3.55A32 32 0 0 1 152 176h56a32 32 0 0 1 31.8 28.45 4 4 0 0 0 4 3.55h24.46a4 4 0 0 0 4-3.55A32 32 0 0 1 304 176h56a32 32 0 0 1 31.8 28.45 4 4 0 0 0 4 3.55h4.2a95.51 95.51 0 0 1 26.89 3.85A4 4 0 0 0 432 208v-72a56 56 0 0 0-56-56z\"},\"child\":[]}]})(props);\n};\nexport function IoBeerOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M352 200v240a40.12 40.12 0 0 1-40 40H136a40.12 40.12 0 0 1-40-40V224\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M352 224h40a56.16 56.16 0 0 1 56 56v80a56.16 56.16 0 0 1-56 56h-40\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M224 256v160m64-160v160M160 256v160m160-304a48 48 0 0 1 0 96c-13.25 0-29.31-7.31-38-16H160c-8 22-27 32-48 32a48 48 0 0 1 0-96 47.91 47.91 0 0 1 26 9\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M91.86 132.43a40 40 0 1 1 60.46-52S160 91 160 96m-14.17-31.29C163.22 44.89 187.57 32 216 32c52.38 0 94 42.84 94 95.21a95 95 0 0 1-1.67 17.79\"},\"child\":[]}]})(props);\n};\nexport function IoBeerSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M448 208h-80v-5.74A63.93 63.93 0 0 0 321.65 96a111 111 0 0 0-27.59-47.29A108.62 108.62 0 0 0 216 16c-29.91 0-57.78 12.28-79 34.67a56 56 0 0 0-67.51 77.51c-1 .86-1.91 1.74-2.83 2.66A63.56 63.56 0 0 0 48 176.26a62.65 62.65 0 0 0 20.77 46.54A65 65 0 0 0 80 231v249a16 16 0 0 0 16 16h256a16 16 0 0 0 16-16v-48h80a16 16 0 0 0 16-16V224a16 16 0 0 0-16-16zM176 432h-32V240h32zm64 0h-32V240h32zm64 0h-32V240h32zm16-240c-8.33 0-20.55-5.18-26.69-11.31l-4.68-4.69H148.79L145 186.53c-5.81 16-18.83 20.41-28.73 21.29a34.08 34.08 0 0 1-25.91-8.67 31 31 0 0 1-10.32-23 31.8 31.8 0 0 1 9.33-22.71c.16-.17.33-.32.5-.49A31.78 31.78 0 0 1 112 144c.09 0 9.12.34 16.4 5.8l12.8 9.6 19.2-25.6-12.8-9.6A63.69 63.69 0 0 0 112 112a64.79 64.79 0 0 0-14 1.55 24 24 0 0 1 41.4-23.68l.23.35.4.46a35.78 35.78 0 0 1 5 8.94l5.62 15 30-11.24-5.62-15a68.2 68.2 0 0 0-10-17.74c-.38-.52-.79-1-1.19-1.51C178.38 55.45 196.64 48 216 48a76.86 76.86 0 0 1 55.23 23.18A80.2 80.2 0 0 1 292.61 142l-3 15.72 31.43 6 3-15.72a111.78 111.78 0 0 0 1.96-19.43 32 32 0 0 1-6 63.43zm112 208h-64V240h64z\"},\"child\":[]}]})(props);\n};\nexport function IoBeer (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M392 208h-24v-5.74A63.93 63.93 0 0 0 321.65 96a111 111 0 0 0-27.59-47.29A108.62 108.62 0 0 0 216 16c-29.91 0-57.78 12.28-79 34.68a56 56 0 0 0-67.51 77.54A63.91 63.91 0 0 0 80 231.39V440a56.06 56.06 0 0 0 56 56h176a56.06 56.06 0 0 0 56-56v-8h24a72.08 72.08 0 0 0 72-72v-80a72.08 72.08 0 0 0-72-72zM176 416a16 16 0 0 1-32 0V256a16 16 0 0 1 32 0zm64 0a16 16 0 0 1-32 0V256a16 16 0 0 1 32 0zm64 0a16 16 0 0 1-32 0V256a16 16 0 0 1 32 0zm16-224c-8.33 0-20.55-5.18-26.69-11.31A16 16 0 0 0 282 176H160a16 16 0 0 0-15 10.53c-6.83 18.68-23.6 21.47-33 21.47a32 32 0 0 1 0-64c.09 0 9.12.34 16.4 5.8a16 16 0 1 0 19.2-25.6A63.69 63.69 0 0 0 112 112a63.55 63.55 0 0 0-14 1.57A24 24 0 0 1 120 80a23.78 23.78 0 0 1 19.38 9.84 51.35 51.35 0 0 1 4.71 7.9A16 16 0 0 0 176 96c0-6.77-3.61-15.17-10.76-25-.46-.63-1-1.25-1.45-1.86C178.39 55.44 196.64 48 216 48a76.86 76.86 0 0 1 55.23 23.18A80.2 80.2 0 0 1 292.61 142a16 16 0 0 0 12.73 18.71 16.29 16.29 0 0 0 3 .28 16 16 0 0 0 15.7-13 111.78 111.78 0 0 0 1.96-19.42 32 32 0 0 1-6 63.43zm112 168a40 40 0 0 1-40 40h-24V240h24a40 40 0 0 1 40 40z\"},\"child\":[]}]})(props);\n};\nexport function IoBicycleOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M388 288a76 76 0 1 0 76 76 76.24 76.24 0 0 0-76-76zm-264 0a76 76 0 1 0 76 76 76.24 76.24 0 0 0-76-76z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M256 360v-86l-64-42 80-88 40 72h56\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M320 136a31.89 31.89 0 0 0 32-32.1A31.55 31.55 0 0 0 320.2 72a32 32 0 1 0-.2 64z\"},\"child\":[]}]})(props);\n};\nexport function IoBicycleSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m320 192-29.5-60.1C284.32 118 284.32 118 264 118c-13.26 0-14.76 0-23 7.3l-71.7 69.1c-8.3 8.45-9.3 9.45-9.3 26.6 0 12.67 3.78 14.61 18.51 22.9L240 278v90h32V254s-29-17-48.3-30l48.9-51.5c18.7 28.5 27.3 51.5 38 51.5H384v-32z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M388 448a92 92 0 1 1 92-92 92.1 92.1 0 0 1-92 92zm0-152a60 60 0 1 0 60 60 60.07 60.07 0 0 0-60-60zM124 448a92 92 0 1 1 92-92 92.1 92.1 0 0 1-92 92zm0-152a60 60 0 1 0 60 60 60.07 60.07 0 0 0-60-60zm196-168a31.89 31.89 0 0 0 32-32.1A31.55 31.55 0 0 0 320.2 64a32 32 0 1 0-.2 64z\"},\"child\":[]}]})(props);\n};\nexport function IoBicycle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M388 448a92 92 0 1 1 92-92 92.1 92.1 0 0 1-92 92zm0-152a60 60 0 1 0 60 60 60.07 60.07 0 0 0-60-60zM124 448a92 92 0 1 1 92-92 92.1 92.1 0 0 1-92 92zm0-152a60 60 0 1 0 60 60 60.07 60.07 0 0 0-60-60zm196-168a31.89 31.89 0 0 0 32-32.1A31.55 31.55 0 0 0 320.2 64a32 32 0 1 0-.2 64z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M367.55 192h-43.76a4 4 0 0 1-3.51-2.08l-31.74-58.17a31 31 0 0 0-49.38-7.75l-69.86 70.4a32.56 32.56 0 0 0-9.3 22.4c0 17.4 12.6 23.6 18.5 27.1 28.5 16.42 48.57 28.43 59.58 35.1a4 4 0 0 1 1.92 3.41v69.12c0 8.61 6.62 16 15.23 16.43A16 16 0 0 0 272 352v-86a16 16 0 0 0-6.66-13l-37-26.61a4 4 0 0 1-.58-6l42-44.79a4 4 0 0 1 6.42.79L298 215.77a16 16 0 0 0 14 8.23h56a16 16 0 0 0 16-16.77c-.42-8.61-7.84-15.23-16.45-15.23z\"},\"child\":[]}]})(props);\n};\nexport function IoBluetoothOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"m144 352 224-192L256 48v416l112-112-224-192\"},\"child\":[]}]})(props);\n};\nexport function IoBluetoothSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M397.41 161.13 236-.28v212.8l-94.17-80.72-26 30.37L225.27 256 115.8 349.83l26 30.37 94.2-80.72v212.8l161.41-161.41L286.73 256zM276 96.28l62.59 62.59L276 212.52zm62.58 256.85L276 415.72V299.48z\"},\"child\":[]}]})(props);\n};\nexport function IoBluetooth (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M388 160.77a20 20 0 0 0-5.85-14.91l-112-112A20 20 0 0 0 236 48v164.52l-79-67.71a20 20 0 0 0-26 30.38L225.27 256 131 336.81a20 20 0 1 0 26 30.38l79-67.71V464a20 20 0 0 0 34.14 14.14l112-112a20 20 0 0 0-1.14-29.33L286.73 256 381 175.19a20 20 0 0 0 7-14.42zm-49.42 192.36L276 415.72V299.49zM276 212.52V96.28l62.59 62.59z\"},\"child\":[]}]})(props);\n};\nexport function IoBoatOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M461.93 261.05c-2-4.76-6.71-7.83-11.67-9.49l-187.18-74.48a23.78 23.78 0 0 0-14.17 0l-187 74.52c-5 1.56-9.83 4.77-11.81 9.53s-2.94 9.37-1 15.08l46.53 119.15a7.46 7.46 0 0 0 7.47 4.64c26.69-1.68 50.31-15.23 68.38-32.5a7.66 7.66 0 0 1 10.49 0C201.29 386 227 400 256 400s54.56-14 73.88-32.54a7.67 7.67 0 0 1 10.5 0c18.07 17.28 41.69 30.86 68.38 32.54a7.45 7.45 0 0 0 7.46-4.61l46.7-119.16c1.98-4.78.99-10.41-.99-15.18z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M416 473.14a6.84 6.84 0 0 0-3.56-6c-27.08-14.55-51.77-36.82-62.63-48a10.05 10.05 0 0 0-12.72-1.51c-50.33 32.42-111.61 32.44-161.95.05a10.09 10.09 0 0 0-12.82 1.56c-10.77 11.28-35.19 33.3-62.43 47.75a7.15 7.15 0 0 0-3.89 5.73 6.73 6.73 0 0 0 7.92 7.15c20.85-4.18 41-13.68 60.2-23.83a8.71 8.71 0 0 1 8-.06A185.14 185.14 0 0 0 340 456a8.82 8.82 0 0 1 8.09.06c19.1 10 39.22 19.59 60 23.8a6.72 6.72 0 0 0 7.95-6.71z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M320 96V72a24.07 24.07 0 0 0-24-24h-80a24.07 24.07 0 0 0-24 24v24m224 137v-89a48.14 48.14 0 0 0-48-48H144a48.14 48.14 0 0 0-48 48v92m160-52.4v212.85\"},\"child\":[]}]})(props);\n};\nexport function IoBoatSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M477.77 246.42c-2.13-6-7.23-9.55-12.56-11.95L432 221.38V92a20 20 0 0 0-20-20h-76V40a16 16 0 0 0-16-16H192a16 16 0 0 0-16 16v32h-76a20 20 0 0 0-20 20v129.46l-33.08 13.06c-5.33 2.4-10.58 6-12.72 12s-3.16 11.81-1 19L84.25 415.7h1.06c34.12 0 64-17.41 85.31-43.82 21.32 26.41 51.18 42.12 85.3 42.12s64-15.76 85.31-42.17c21.32 26.41 51.18 43.87 85.3 43.87h1.06l51.25-150.17c2.16-6 1.07-13.1-1.07-19.11zM256 152l-144 56.83V108a4 4 0 0 1 4-4h280a4 4 0 0 1 4 4v100.76z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M345.22 407c-52.25 36.26-126.35 36.25-178.6 0 0 0-45.64 63-94.64 63l13.33 1c29.86 0 58.65-11.73 85.31-25.59a185.33 185.33 0 0 0 170.6 0c26.66 13.87 55.45 25.6 85.31 25.6l13.33-1C392.21 470 345.22 407 345.22 407z\"},\"child\":[]}]})(props);\n};\nexport function IoBoat (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M416 473.14a6.83 6.83 0 0 0-3.57-6c-27.07-14.55-51.76-36.82-62.62-48a10.05 10.05 0 0 0-12.72-1.51c-50.33 32.42-111.61 32.44-161.95.05a10.09 10.09 0 0 0-12.82 1.56c-10.77 11.28-35.19 33.3-62.43 47.75a7.11 7.11 0 0 0-3.89 5.73 6.73 6.73 0 0 0 7.92 7.15c20.85-4.18 41-13.68 60.2-23.83a8.71 8.71 0 0 1 8-.06 185.14 185.14 0 0 0 167.81 0 8.82 8.82 0 0 1 8.09.06c19.1 10 39.22 19.59 60 23.8a6.73 6.73 0 0 0 8-6.71zm60.71-226.23c-3.49-8.39-10.9-14.89-20.9-18.35L432 219.08V136a64 64 0 0 0-64-64h-32v-8a40 40 0 0 0-40-40h-80a40 40 0 0 0-40 40v8h-32a64 64 0 0 0-64 64v83.15l-23.58 9.39c-9.94 3.3-17.63 10-21.15 18.44-2.45 5.89-5.25 15-1.3 26.46l.1.3 46.66 119.44A23.33 23.33 0 0 0 102.58 408c.5 0 1 0 1.53-.05 31.32-2 56-17.27 72.6-31.61C200.42 396.81 228.31 408 256 408s55.43-11.2 79.14-31.7c16.59 14.36 41.3 29.67 72.61 31.65a23.36 23.36 0 0 0 23.37-14.74l46.65-119c3.28-8.09 2.9-17.76-1.06-27.3zM269 154.21l-1.14-.4a39.53 39.53 0 0 0-23.73 0l-.58.18-126.07 50.23a4 4 0 0 1-5.48-3.72V136a32 32 0 0 1 32-32h224a32 32 0 0 1 32 32v64.44a4 4 0 0 1-5.48 3.72z\"},\"child\":[]}]})(props);\n};\nexport function IoBodyOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"56\",\"r\":\"40\",\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"m199.3 295.62-30.4 172.2a24 24 0 0 0 19.5 27.8 23.76 23.76 0 0 0 27.6-19.5l21-119.9v.2s5.2-32.5 17.5-32.5h3.1c12.5 0 17.5 32.5 17.5 32.5v-.1l21 119.9a23.92 23.92 0 1 0 47.1-8.4l-30.4-172.2-4.9-29.7c-2.9-18.1-4.2-47.6.5-59.7 4-10.4 14.13-14.2 23.2-14.2H424a24 24 0 0 0 0-48H88a24 24 0 0 0 0 48h92.5c9.23 0 19.2 3.8 23.2 14.2 4.7 12.1 3.4 41.6.5 59.7z\"},\"child\":[]}]})(props);\n};\nexport function IoBodySharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"56\",\"r\":\"56\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M464 128H48v52h144l-32 325.13 51 6.87 21.65-192h47.02L301 512l51-6.98L320 180h144v-52z\"},\"child\":[]}]})(props);\n};\nexport function IoBody (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"56\",\"r\":\"56\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M437 128H75a27 27 0 0 0 0 54h101.88c6.91 0 15 3.09 19.58 15 5.35 13.83 2.73 40.54-.57 61.23l-4.32 24.45a.42.42 0 0 1-.12.35l-34.6 196.81A27.43 27.43 0 0 0 179 511.58a27.06 27.06 0 0 0 31.42-22.29l23.91-136.8S242 320 256 320c14.23 0 21.74 32.49 21.74 32.49l23.91 136.92a27.24 27.24 0 1 0 53.62-9.6L320.66 283a.45.45 0 0 0-.11-.35l-4.33-24.45c-3.3-20.69-5.92-47.4-.57-61.23 4.56-11.88 12.91-15 19.28-15H437a27 27 0 0 0 0-54z\"},\"child\":[]}]})(props);\n};\nexport function IoBonfireOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M273.38 368.33c-.81-9.23-8.86-16.44-18.55-16.44a18.63 18.63 0 0 0-18.2 14.11l-18.2 88.38a35.75 35.75 0 0 0-.93 7.88c0 19.93 16.68 33.78 37.33 33.78s37.34-13.85 37.34-33.78a36.16 36.16 0 0 0-1.29-9.45zm137.67 39.53a41.78 41.78 0 0 0-5.95-4.35l-69.53-48.59c-6.77-4.25-14-4.13-19.25 1a13.53 13.53 0 0 0-2 17.2l52.5 69a36.57 36.57 0 0 0 4 4.69c9.1 10.17 29.28 10.73 40.37 0 10.94-10.91 10.81-30.35-.14-38.95zm52.25-71.98h-70.42c-4.55 0-8.88 3.35-8.88 8.16s2.95 7.85 6.92 9.16l66.43 20.55C467 376 480 367.4 480 356.66c0-13.66-7.6-20.78-16.7-20.78zM128.22 344c0-5-4.55-8.16-9.45-8.16H48.35c-8.87 0-16.35 9.58-16.35 20.32S44.62 376 54.3 373.75l67.43-20.55c4.39-1.31 6.49-4.2 6.49-9.2zm48.33 11L107 403.38a32.34 32.34 0 0 0-6 4.35 26.33 26.33 0 0 0 0 38.56 29.39 29.39 0 0 0 40.36 0 30.75 30.75 0 0 0 4-4.68L197.9 373c3.5-5.58 2.92-12.49-2-17.06a15 15 0 0 0-19.35-.94z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M368 125.09c0-55.7-49.22-89.16-94.2-93.06a8 8 0 0 0-8.69 7.71c-3.12 76-109.38 110.69-119.87 178.68-7 45.4 16.65 72.37 34.31 85.78a15.94 15.94 0 0 0 23.93-5.62c22.5-45.86 74.33-63.49 109.72-85.94 42.88-27.2 54.8-56.44 54.8-87.55z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M240 95.7c-12.82-23-30.51-31-59.16-31.63a3.86 3.86 0 0 0-4.06 3.51c-.95 34.22-32.78 44.85-32.78 73.15 0 19.37 5.39 29 17.16 39.28m191.29-1.25c8.6 14.31 15.55 30.08 15.55 48 0 52.52-42.47 93.1-94.86 93.1a94.42 94.42 0 0 1-65.14-26\"},\"child\":[]}]})(props);\n};\nexport function IoBonfireSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m199.89 336-15.25-5.62a100.35 100.35 0 0 1-32-23.08c-13.93-14.9-29.29-40.71-23.38-79.11 5.2-33.73 44.2-74.21 69.34-97.87 27.24-25.62 66-65.85 64.15-99.15L262 16h15.18C328.53 16 384 53.62 384 114.41c0 45.57-22 77.61-68.91 106.9-8 5-16.44 9.66-25.42 14.53-30.63 16.62-75.29 49.83-85.73 85.32zm-18.7-222.41C201 95 218.91 78.15 227.62 59.79q-2.76-1.68-5.7-3.09c-11.87-5.69-26.1-8.34-44.76-8.34h-16.94l.56 16.49c.47 14.06-6.06 22.51-14.33 33.21C137.8 109.26 128 121.94 128 141c0 10.23 1.29 18.76 4.2 26.36q3.5-5.31 7.61-10.63c12.19-15.73 27.05-29.68 41.38-43.14z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M330.34 239.85c-9.31 5.9-19 11.14-29.25 16.71-32.65 17.69-63.48 34.44-73.23 67.44l-.6 2a110.5 110.5 0 0 0 45.87 10c29.66 0 57.45-11.13 78.24-31.36A107.38 107.38 0 0 0 384 227a92.39 92.39 0 0 0-5.59-31c-11.35 16.18-27.14 30.58-48.07 43.85zM268.72 360h-25.44a4 4 0 0 0-3.92 3.22l-25.36 128a4 4 0 0 0 3.92 4.78h76.26a4 4 0 0 0 3.92-4.78l-25.41-128a4 4 0 0 0-3.97-3.22zm56.96-5.68-11.36 11.36a4 4 0 0 0-.5 5.05l59.47 89.21a4 4 0 0 0 6.16.61l41.1-41.1a4 4 0 0 0-.61-6.16l-89.21-59.47a4 4 0 0 0-5.05.5zM388 336a4 4 0 0 0-4 4v8.61a4 4 0 0 0 3.34 3.95l88 14.66a4 4 0 0 0 4.66-3.94V340a4 4 0 0 0-4-4zm-201.68 18.32 11.36 11.36a4 4 0 0 1 .5 5.05l-59.47 89.21a4 4 0 0 1-6.16.61l-41.1-41.1a4 4 0 0 1 .61-6.16l89.21-59.47a4 4 0 0 1 5.05.5zM124 336H36a4 4 0 0 0-4 4v23.28a4 4 0 0 0 4.66 3.94l88-14.66a4 4 0 0 0 3.34-3.95V340a4 4 0 0 0-4-4z\"},\"child\":[]}]})(props);\n};\nexport function IoBonfire (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M273.38 368.37c-.81-9.23-8.86-16.44-18.55-16.44a18.63 18.63 0 0 0-18.2 14.07l-18.2 88.36a35.59 35.59 0 0 0-.93 7.87c0 19.93 16.68 33.77 37.33 33.77s37.34-13.84 37.34-33.77a36.16 36.16 0 0 0-1.29-9.45zm137.67 39.52a42.66 42.66 0 0 0-5.95-4.36L335.57 355c-6.77-4.24-14-4.13-19.25 1a13.52 13.52 0 0 0-2 17.19l52.5 69a38 38 0 0 0 4 4.69c9.1 10.16 29.28 10.72 40.37 0 10.94-10.96 10.81-30.39-.14-38.99zm52.25-71.96h-70.42c-4.55 0-8.88 3.35-8.88 8.15s2.95 7.85 6.92 9.16l66.43 20.55C467 376 480 367.44 480 356.71c0-13.63-7.6-20.78-16.7-20.78zm-335.08 8.15c0-4.95-4.55-8.15-9.45-8.15H48.35c-8.87 0-16.35 9.58-16.35 20.31S44.62 376 54.3 373.79l67.43-20.55c4.39-1.31 6.49-4.24 6.49-9.16zm48.33 10.97L107 403.41a32.29 32.29 0 0 0-6 4.34 26.33 26.33 0 0 0 0 38.56 29.41 29.41 0 0 0 40.36 0 30.75 30.75 0 0 0 4-4.68L197.9 373c3.5-5.57 2.92-12.48-2-17a15 15 0 0 0-19.35-.95zm116.91-112.66c10-5.42 19.45-10.54 28.31-16.16 42.46-26.92 62.23-59 62.23-101 0-64.66-56.07-104.4-108.82-109-6.49-.57-15-.42-19.91 3.88s-5.88 12.56-6.15 19.1c-1.38 33.61-28.38 59-57 85.86-28 26.3-56.93 53.49-62.71 91-8.41 54.68 21.74 86.71 40.46 100.93a31.88 31.88 0 0 0 19.3 6.51 32.32 32.32 0 0 0 7.41-.87 31.75 31.75 0 0 0 21.27-16.95c14.91-30.39 45.77-47.12 75.61-63.3z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M139.82 156.57c12.22-15.76 27-29.68 41.37-43.15 19.92-18.72 37.81-35.58 46.5-53.86-12.24-7.37-27.36-11.36-46.51-11.36-17.79 0-20.39 5.18-20.39 19.06 0 12.56-6.53 20.54-14.34 30.65C137.8 109.1 128 121.77 128 140.84c0 10.23 1.29 18.77 4.2 26.37q3.5-5.32 7.62-10.64zm190.52 83.17c-9.33 5.92-19 11.16-29.25 16.71-28.91 15.68-56.21 30.48-68.88 56.28a62.6 62.6 0 0 1-1.88 3.61 8 8 0 0 0 3.89 11.3c12.31 5.1 25.13 8.27 38.91 8.27a111.42 111.42 0 0 0 78.24-31.37A107.45 107.45 0 0 0 384 226.85a86.56 86.56 0 0 0-1.33-15 8 8 0 0 0-13.8-4c-10.18 11.47-22.93 22-38.53 31.89z\"},\"child\":[]}]})(props);\n};\nexport function IoBookOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M256 160c16-63.16 76.43-95.41 208-96a15.94 15.94 0 0 1 16 16v288a16 16 0 0 1-16 16c-128 0-177.45 25.81-208 64-30.37-38-80-64-208-64-9.88 0-16-8.05-16-17.93V80a15.94 15.94 0 0 1 16-16c131.57.59 192 32.84 208 96zm0 0v288\"},\"child\":[]}]})(props);\n};\nexport function IoBookSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M464 48c-67.61.29-117.87 9.6-154.24 25.69-27.14 12-37.76 21.08-37.76 51.84V448c41.57-37.5 78.46-48 224-48V48zM48 48c67.61.29 117.87 9.6 154.24 25.69 27.14 12 37.76 21.08 37.76 51.84V448c-41.57-37.5-78.46-48-224-48V48z\"},\"child\":[]}]})(props);\n};\nexport function IoBook (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M202.24 74C166.11 56.75 115.61 48.3 48 48a31.36 31.36 0 0 0-17.92 5.33A32 32 0 0 0 16 79.9V366c0 19.34 13.76 33.93 32 33.93 71.07 0 142.36 6.64 185.06 47a4.11 4.11 0 0 0 6.94-3V106.82a15.89 15.89 0 0 0-5.46-12A143 143 0 0 0 202.24 74zm279.68-20.7A31.33 31.33 0 0 0 464 48c-67.61.3-118.11 8.71-154.24 26a143.31 143.31 0 0 0-32.31 20.78 15.93 15.93 0 0 0-5.45 12v337.13a3.93 3.93 0 0 0 6.68 2.81c25.67-25.5 70.72-46.82 185.36-46.81a32 32 0 0 0 32-32v-288a32 32 0 0 0-14.12-26.61z\"},\"child\":[]}]})(props);\n};\nexport function IoBookmarkOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M352 48H160a48 48 0 0 0-48 48v368l144-128 144 128V96a48 48 0 0 0-48-48z\"},\"child\":[]}]})(props);\n};\nexport function IoBookmarkSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M416 480 256 357.41 96 480V32h320z\"},\"child\":[]}]})(props);\n};\nexport function IoBookmark (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M400 480a16 16 0 0 1-10.63-4L256 357.41 122.63 476A16 16 0 0 1 96 464V96a64.07 64.07 0 0 1 64-64h192a64.07 64.07 0 0 1 64 64v368a16 16 0 0 1-16 16z\"},\"child\":[]}]})(props);\n};\nexport function IoBookmarksOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M128 80V64a48.14 48.14 0 0 1 48-48h224a48.14 48.14 0 0 1 48 48v368l-80-64\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M320 96H112a48.14 48.14 0 0 0-48 48v352l152-128 152 128V144a48.14 48.14 0 0 0-48-48z\"},\"child\":[]}]})(props);\n};\nexport function IoBookmarksSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M112 0v48h304v368l48 32V0H112z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M48 80v432l168-124 168 124V80H48z\"},\"child\":[]}]})(props);\n};\nexport function IoBookmarks (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M400 0H176a64.11 64.11 0 0 0-62 48h228a74 74 0 0 1 74 74v304.89l22 17.6a16 16 0 0 0 19.34.5 16.41 16.41 0 0 0 6.66-13.42V64a64 64 0 0 0-64-64z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M320 80H112a64 64 0 0 0-64 64v351.62A16.36 16.36 0 0 0 54.6 509a16 16 0 0 0 19.71-.71L216 388.92l141.69 119.32a16 16 0 0 0 19.6.79 16.4 16.4 0 0 0 6.71-13.44V144a64 64 0 0 0-64-64z\"},\"child\":[]}]})(props);\n};\nexport function IoBowlingBallOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"256\",\"r\":\"208\",\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"288\",\"cy\":\"200\",\"r\":\"24\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"296\",\"cy\":\"128\",\"r\":\"24\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"360\",\"cy\":\"168\",\"r\":\"24\"},\"child\":[]}]})(props);\n};\nexport function IoBowlingBallSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M414.39 97.61A224 224 0 1 0 97.61 414.39 224 224 0 1 0 414.39 97.61zM286 230a28 28 0 1 1 28-28 28 28 0 0 1-28 28zm8-76a28 28 0 1 1 28-28 28 28 0 0 1-28 28zm68 44a28 28 0 1 1 28-28 28 28 0 0 1-28 28z\"},\"child\":[]}]})(props);\n};\nexport function IoBowlingBall (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M414.39 97.61A224 224 0 1 0 97.61 414.39 224 224 0 1 0 414.39 97.61zM288 224a24 24 0 1 1 24-24 24 24 0 0 1-24 24zm8-72a24 24 0 1 1 24-24 24 24 0 0 1-24 24zm64 40a24 24 0 1 1 24-24 24 24 0 0 1-24 24z\"},\"child\":[]}]})(props);\n};\nexport function IoBriefcaseOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"rect\",\"attr\":{\"width\":\"448\",\"height\":\"320\",\"x\":\"32\",\"y\":\"128\",\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"rx\":\"48\",\"ry\":\"48\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M144 128V96a32 32 0 0 1 32-32h160a32 32 0 0 1 32 32v32m112 112H32m288 0v24a8 8 0 0 1-8 8H200a8 8 0 0 1-8-8v-24\"},\"child\":[]}]})(props);\n};\nexport function IoBriefcaseSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M336 288H176v-32H16v196a12 12 0 0 0 12 12h456a12 12 0 0 0 12-12V256H336zm160-164a12 12 0 0 0-12-12H384V56a8 8 0 0 0-8-8H136a8 8 0 0 0-8 8v56H28a12 12 0 0 0-12 12v100h480zm-152-12H168V88h176z\"},\"child\":[]}]})(props);\n};\nexport function IoBriefcase (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"d\":\"M336 80H176a16 16 0 0 0-16 16v16h192V96a16 16 0 0 0-16-16z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M496 176a64.07 64.07 0 0 0-64-64h-48V96a48.05 48.05 0 0 0-48-48H176a48.05 48.05 0 0 0-48 48v16H80a64.07 64.07 0 0 0-64 64v48h480zm-144-64H160V96a16 16 0 0 1 16-16h160a16 16 0 0 1 16 16zm-16 152a24 24 0 0 1-24 24H200a24 24 0 0 1-24-24v-4a4 4 0 0 0-4-4H16v144a64 64 0 0 0 64 64h352a64 64 0 0 0 64-64V256H340a4 4 0 0 0-4 4z\"},\"child\":[]}]})(props);\n};\nexport function IoBrowsersOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"rect\",\"attr\":{\"width\":\"416\",\"height\":\"384\",\"x\":\"48\",\"y\":\"64\",\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"rx\":\"48\",\"ry\":\"48\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M397.82 64H114.18C77.69 64 48 94.15 48 131.2V176h16c0-16 16-32 32-32h320c16 0 32 16 32 32h16v-44.8c0-37.05-29.69-67.2-66.18-67.2z\"},\"child\":[]}]})(props);\n};\nexport function IoBrowsersSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M32 64v384a16 16 0 0 0 16 16h416a16 16 0 0 0 16-16V64a16 16 0 0 0-16-16H48a16 16 0 0 0-16 16zm408 364H72a4 4 0 0 1-4-4V152a4 4 0 0 1 4-4h368a4 4 0 0 1 4 4v272a4 4 0 0 1-4 4z\"},\"child\":[]}]})(props);\n};\nexport function IoBrowsers (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M416 48H96a64 64 0 0 0-64 64v288a64 64 0 0 0 64 64h320a64 64 0 0 0 64-64V112a64 64 0 0 0-64-64zm24 96H72a8 8 0 0 1-8-8v-24a32.09 32.09 0 0 1 32-32h320a32.09 32.09 0 0 1 32 32v24a8 8 0 0 1-8 8z\"},\"child\":[]}]})(props);\n};\nexport function IoBrushOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M452.37 59.63h0a40.49 40.49 0 0 0-57.26 0L184 294.74c23.08 4.7 46.12 27.29 49.26 49.26l219.11-227.11a40.49 40.49 0 0 0 0-57.26zM138 336c-29.88 0-54 24.5-54 54.86 0 23.95-20.88 36.57-36 36.57C64.56 449.74 92.82 464 120 464c39.78 0 72-32.73 72-73.14 0-30.36-24.12-54.86-54-54.86z\"},\"child\":[]}]})(props);\n};\nexport function IoBrushSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m480 96-64-64-244 260 64 64zM142 320c-36.52 0-66 30.63-66 68.57 0 25.43-31 45.72-44 45.72C52.24 462.17 86.78 480 120 480c48.62 0 88-40.91 88-91.43 0-37.94-29.48-68.57-66-68.57z\"},\"child\":[]}]})(props);\n};\nexport function IoBrush (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M233.15 360.11a15.7 15.7 0 0 1-4.92-.77 16 16 0 0 1-10.92-13c-2.15-15-19.95-32.46-36.62-35.85a16 16 0 0 1-8.69-26.33l211.09-235.1c.19-.22.39-.43.59-.63a56.57 56.57 0 0 1 79.89 0 56.51 56.51 0 0 1 .11 79.78l-219 227a16 16 0 0 1-11.53 4.9zm-113.26 120c-32.14 0-65.45-16.89-84.85-43a16 16 0 0 1 12.85-25.54c5.34 0 20-4.87 20-20.57 0-39.07 31.4-70.86 70-70.86s70 31.79 70 70.86c0 49.12-39.48 89.11-88 89.11z\"},\"child\":[]}]})(props);\n};\nexport function IoBugOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M370 378c28.89 23.52 46 46.07 46 86m-274-86c-28.89 23.52-46 46.06-46 86m288-256c28.89-23.52 32-56.07 32-96m-288 94c-28.89-23.52-32-54.06-32-94m368 176.13h-80m-256 0H48M256 192v256\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M256 448h0c-70.4 0-128-57.6-128-128v-96.07c0-65.07 57.6-96 128-96h0c70.4 0 128 25.6 128 96V320c0 70.4-57.6 128-128 128z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M179.43 143.52a49.08 49.08 0 0 1-3.43-15.73A80 80 0 0 1 255.79 48h.42A80 80 0 0 1 336 127.79a41.91 41.91 0 0 1-3.12 14.3\"},\"child\":[]}]})(props);\n};\nexport function IoBugSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M480 304.13v-32h-80V215.2c29.42-27.95 32-64.76 32-103.2V96h-32v16c0 28-1.86 48.15-9.9 63.84C368 128 324.32 112 256 112c-39.8 0-75.19 7.06-100.43 24.32-14.9 10.19-25.2 24.91-32.7 39.72C114 160.57 112 140.82 112 112V96H80v16c0 37.44 2.59 73.36 32 101.2v58.93H32v32l80-.13c0 19 3.7 53.09 10.39 69.69C96.6 396.76 80 422.31 80 464v16h32v-16c0-27.66 9.1-44.71 26.17-61.32C160 448 177 464 240 464V176h32v288c65 0 80-16 101.83-61.32C390.9 419.29 400 436.35 400 464v16h32v-16c0-41.68-16.6-67.23-42.39-90.31C396.3 357.09 400 323 400 304z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M256 32c-48.06 0-96 0-96 84 26.12-14 59.35-20 96-20 24.09 0 46.09 2.65 65.39 8 10.75 3 24.66 8.71 30.61 12 0-84-47.94-84-96-84z\"},\"child\":[]}]})(props);\n};\nexport function IoBug (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M463.55 272.13H400v-48.2q0-4.32-.27-8.47c29.57-27.88 32.25-64.63 32.27-103 0-8.61-6.64-16-15.25-16.41A16 16 0 0 0 400 112c0 28-1.86 48.15-9.9 63.84-19.22-41.15-65.78-63.91-134.1-63.91-39.8 0-74.19 9.13-99.43 26.39-14.9 10.19-26.2 22.91-33.7 37.72C114 160.65 112 141 112 112.46c0-8.61-6.6-16-15.2-16.44A16 16 0 0 0 80 112c0 37.63 2.61 73.73 32.44 101.63q-.43 5.06-.44 10.3v48.2H48.45c-8.61 0-16 6.62-16.43 15.23a16 16 0 0 0 16 16.77h64V320a143.32 143.32 0 0 0 10.39 53.69C96.74 396.64 80.18 422 80 463.34c0 8.74 6.62 16.3 15.36 16.65A16 16 0 0 0 112 464c0-27.66 9.1-44.71 26.17-61.32A144.37 144.37 0 0 0 220 459.42a16 16 0 0 0 20-15.49V192.45c0-8.61 6.62-16 15.23-16.43A16 16 0 0 1 272 192v251.93a16 16 0 0 0 20 15.49 144.4 144.4 0 0 0 81.82-56.74c17 16.54 26.09 33.52 26.17 60.95a16.27 16.27 0 0 0 15.1 16.37A16 16 0 0 0 432 464c0-41.68-16.6-67.23-42.39-90.31A143.32 143.32 0 0 0 400 320v-15.87h64a16 16 0 0 0 16-16.77c-.42-8.61-7.84-15.23-16.45-15.23z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m321.39 104 .32.09c13.57 3.8 25.07-10.55 18.2-22.85A95.86 95.86 0 0 0 256.21 32h-.42a95.87 95.87 0 0 0-84.19 50.13c-6.84 12.58 5.14 27 18.84 22.86 19.71-6 41.79-9.06 65.56-9.06 24.09 0 46.09 2.72 65.39 8.07z\"},\"child\":[]}]})(props);\n};\nexport function IoBuildOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M393.87 190a32.1 32.1 0 0 1-45.25 0l-26.57-26.57a32.09 32.09 0 0 1 0-45.26L382.19 58a1 1 0 0 0-.3-1.64c-38.82-16.64-89.15-8.16-121.11 23.57-30.58 30.35-32.32 76-21.12 115.84a31.93 31.93 0 0 1-9.06 32.08L64 380a48.17 48.17 0 1 0 68 68l153.86-167a31.93 31.93 0 0 1 31.6-9.13c39.54 10.59 84.54 8.6 114.72-21.19 32.49-32 39.5-88.56 23.75-120.93a1 1 0 0 0-1.6-.26z\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"96\",\"cy\":\"416\",\"r\":\"16\"},\"child\":[]}]})(props);\n};\nexport function IoBuildSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M230 209.2 32 405.58 106.65 480l197.59-198.17c46.47 17.46 105.52 12.54 143-24.78 40.44-40.32 40.35-108 16.81-156.79l-87.33 87.06-52.32-52.13 87.33-87.06C363 24.46 294.67 24.34 254.23 64.66c-38.03 37.91-42.78 97.6-24.23 144.54z\"},\"child\":[]}]})(props);\n};\nexport function IoBuild (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M469.54 120.52a16 16 0 0 0-25.54-4L382.56 178a16.12 16.12 0 0 1-22.63 0l-26.56-26.6a16 16 0 0 1 0-22.63l61.18-61.19a16 16 0 0 0-4.78-25.92C343.56 21 285.88 31.78 249.51 67.88c-30.9 30.68-40.11 78.62-25.25 131.53a15.89 15.89 0 0 1-4.49 16L53.29 367.46a64.17 64.17 0 1 0 90.6 90.64l153.68-166.85a15.9 15.9 0 0 1 15.77-4.57 179.3 179.3 0 0 0 46.22 6.37c33.4 0 62.71-10.81 83.85-31.64 39.15-38.57 45.12-103.99 26.13-140.89zM99.48 447.15a32 32 0 1 1 28.34-28.35 32 32 0 0 1-28.34 28.35z\"},\"child\":[]}]})(props);\n};\nexport function IoBulbOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M304 384v-24c0-29 31.54-56.43 52-76 28.84-27.57 44-64.61 44-108 0-80-63.73-144-144-144a143.6 143.6 0 0 0-144 144c0 41.84 15.81 81.39 44 108 20.35 19.21 52 46.7 52 76v24m16 96h64m-80-48h96m-48-48V256\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M294 240s-21.51 16-38 16-38-16-38-16\"},\"child\":[]}]})(props);\n};\nexport function IoBulbSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M208 464h96v32h-96zm-16-48h128v32H192zM369.42 62.69C339.35 32.58 299.07 16 256 16A159.62 159.62 0 0 0 96 176c0 46.62 17.87 90.23 49 119.64l4.36 4.09C167.37 316.57 192 339.64 192 360v40h48V269.11L195.72 244 214 217.72 256 240l41.29-22.39 19.1 25.68-44.39 26V400h48v-40c0-19.88 24.36-42.93 42.15-59.77l4.91-4.66C399.08 265 416 223.61 416 176a159.16 159.16 0 0 0-46.58-113.31z\"},\"child\":[]}]})(props);\n};\nexport function IoBulb (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M288 464h-64a16 16 0 0 0 0 32h64a16 16 0 0 0 0-32zm16-48h-96a16 16 0 0 0 0 32h96a16 16 0 0 0 0-32zm65.42-353.31C339.35 32.58 299.07 16 256 16A159.62 159.62 0 0 0 96 176c0 46.62 17.87 90.23 49 119.64l4.36 4.09C167.37 316.57 192 339.64 192 360v24a16 16 0 0 0 16 16h24a8 8 0 0 0 8-8V274.82a8 8 0 0 0-5.13-7.47A130.73 130.73 0 0 1 208.71 253a16 16 0 1 1 18.58-26c7.4 5.24 21.65 13 28.71 13s21.31-7.78 28.73-13a16 16 0 0 1 18.56 26 130.73 130.73 0 0 1-26.16 14.32 8 8 0 0 0-5.13 7.47V392a8 8 0 0 0 8 8h24a16 16 0 0 0 16-16v-24c0-19.88 24.36-42.93 42.15-59.77l4.91-4.66C399.08 265 416 223.61 416 176a159.16 159.16 0 0 0-46.58-113.31z\"},\"child\":[]}]})(props);\n};\nexport function IoBusOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"rect\",\"attr\":{\"width\":\"352\",\"height\":\"192\",\"x\":\"80\",\"y\":\"112\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"rx\":\"32\",\"ry\":\"32\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"352\",\"height\":\"128\",\"x\":\"80\",\"y\":\"304\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"rx\":\"32\",\"ry\":\"32\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M400 112H112a32.09 32.09 0 0 1-32-32h0a32.09 32.09 0 0 1 32-32h288a32.09 32.09 0 0 1 32 32h0a32.09 32.09 0 0 1-32 32zM144 432v22a10 10 0 0 1-10 10h-28a10 10 0 0 1-10-10v-22zm272 0v22a10 10 0 0 1-10 10h-28a10 10 0 0 1-10-10v-22z\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"368\",\"cy\":\"368\",\"r\":\"16\",\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"144\",\"cy\":\"368\",\"r\":\"16\",\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M256 112v192M80 80v288M432 80v288\"},\"child\":[]}]})(props);\n};\nexport function IoBusSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"d\":\"M400 64H112a16 16 0 0 0 0 32h288a16 16 0 0 0 0-32z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M424 32H88a24 24 0 0 0-24 24v360a32 32 0 0 0 16 27.71V480h72v-32h208v32h72v-36.29A32 32 0 0 0 448 416V56a24 24 0 0 0-24-24zM175.82 371.47a32 32 0 1 1-35.3-35.29 32.09 32.09 0 0 1 35.3 35.29zM240 288H96V128h144zm16-192H96.46L96 64h320l-.46 32H256zm16 32h144v160H272zm64.18 236.53a32 32 0 1 1 35.3 35.29 32.09 32.09 0 0 1-35.3-35.29z\"},\"child\":[]}]})(props);\n};\nexport function IoBus (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M400 32H112a48 48 0 0 0-48 48v320a47.91 47.91 0 0 0 16 35.74V454a26 26 0 0 0 26 26h28a26 26 0 0 0 26-26v-6h192v6a26 26 0 0 0 26 26h28a26 26 0 0 0 26-26v-18.26A47.91 47.91 0 0 0 448 400V80a48 48 0 0 0-48-48zM147.47 399.82a32 32 0 1 1 28.35-28.35 32 32 0 0 1-28.35 28.35zM236 288H112a16 16 0 0 1-16-16V144a16 16 0 0 1 16-16h124a4 4 0 0 1 4 4v152a4 4 0 0 1-4 4zm20-192H112.46c-8.6 0-16-6.6-16.44-15.19A16 16 0 0 1 112 64h287.54c8.6 0 16 6.6 16.44 15.19A16 16 0 0 1 400 96H256zm20 32h124a16 16 0 0 1 16 16v128a16 16 0 0 1-16 16H276a4 4 0 0 1-4-4V132a4 4 0 0 1 4-4zm60.18 243.47a32 32 0 1 1 28.35 28.35 32 32 0 0 1-28.35-28.35z\"},\"child\":[]}]})(props);\n};\nexport function IoBusinessOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M176 416v64M80 32h192a32 32 0 0 1 32 32v412a4 4 0 0 1-4 4H48h0V64a32 32 0 0 1 32-32zm240 160h112a32 32 0 0 1 32 32v256h0-160 0V208a16 16 0 0 1 16-16z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M98.08 431.87a16 16 0 1 1 13.79-13.79 16 16 0 0 1-13.79 13.79zm0-80a16 16 0 1 1 13.79-13.79 16 16 0 0 1-13.79 13.79zm0-80a16 16 0 1 1 13.79-13.79 16 16 0 0 1-13.79 13.79zm0-80a16 16 0 1 1 13.79-13.79 16 16 0 0 1-13.79 13.79zm0-80a16 16 0 1 1 13.79-13.79 16 16 0 0 1-13.79 13.79zm80 240a16 16 0 1 1 13.79-13.79 16 16 0 0 1-13.79 13.79zm0-80a16 16 0 1 1 13.79-13.79 16 16 0 0 1-13.79 13.79zm0-80a16 16 0 1 1 13.79-13.79 16 16 0 0 1-13.79 13.79zm0-80a16 16 0 1 1 13.79-13.79 16 16 0 0 1-13.79 13.79zm80 320a16 16 0 1 1 13.79-13.79 16 16 0 0 1-13.79 13.79zm0-80a16 16 0 1 1 13.79-13.79 16 16 0 0 1-13.79 13.79zm0-80a16 16 0 1 1 13.79-13.79 16 16 0 0 1-13.79 13.79z\"},\"child\":[]},{\"tag\":\"ellipse\",\"attr\":{\"cx\":\"256\",\"cy\":\"176\",\"rx\":\"15.95\",\"ry\":\"16.03\",\"transform\":\"rotate(-45 255.99 175.996)\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M258.08 111.87a16 16 0 1 1 13.79-13.79 16 16 0 0 1-13.79 13.79zM400 400a16 16 0 1 0 16 16 16 16 0 0 0-16-16zm0-80a16 16 0 1 0 16 16 16 16 0 0 0-16-16zm0-80a16 16 0 1 0 16 16 16 16 0 0 0-16-16zm-64 160a16 16 0 1 0 16 16 16 16 0 0 0-16-16zm0-80a16 16 0 1 0 16 16 16 16 0 0 0-16-16zm0-80a16 16 0 1 0 16 16 16 16 0 0 0-16-16z\"},\"child\":[]}]})(props);\n};\nexport function IoBusinessSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M320 176V16H32v480h128v-96h32v96h288V176zM112 432H80v-32h32zm0-80H80v-32h32zm0-80H80v-32h32zm0-80H80v-32h32zm0-80H80V80h32zm128-32h32v32h-32zm-48 272h-32v-32h32zm0-80h-32v-32h32zm0-80h-32v-32h32zm0-80h-32V80h32zm80 320h-32v-32h32zm0-80h-32v-32h32zm0-80h-32v-32h32zm0-80h-32v-32h32v32zm176 272H320v-32h32v-32h-32v-48h32v-32h-32v-48h32v-32h-32v-32h128z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M384 400h32v32h-32zm0-80h32v32h-32zm0-80h32v32h-32z\"},\"child\":[]}]})(props);\n};\nexport function IoBusiness (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M432 176H320V64a48 48 0 0 0-48-48H80a48 48 0 0 0-48 48v416a16 16 0 0 0 16 16h104a8 8 0 0 0 8-8v-71.55c0-8.61 6.62-16 15.23-16.43A16 16 0 0 1 192 416v72a8 8 0 0 0 8 8h264a16 16 0 0 0 16-16V224a48 48 0 0 0-48-48zM98.08 431.87a16 16 0 1 1 13.79-13.79 16 16 0 0 1-13.79 13.79zm0-80a16 16 0 1 1 13.79-13.79 16 16 0 0 1-13.79 13.79zm0-80a16 16 0 1 1 13.79-13.79 16 16 0 0 1-13.79 13.79zm0-80a16 16 0 1 1 13.79-13.79 16 16 0 0 1-13.79 13.79zm0-80a16 16 0 1 1 13.79-13.79 16 16 0 0 1-13.79 13.79zm80 240a16 16 0 1 1 13.79-13.79 16 16 0 0 1-13.79 13.79zm0-80a16 16 0 1 1 13.79-13.79 16 16 0 0 1-13.79 13.79zm0-80a16 16 0 1 1 13.79-13.79 16 16 0 0 1-13.79 13.79zm0-80a16 16 0 1 1 13.79-13.79 16 16 0 0 1-13.79 13.79zm80 320a16 16 0 1 1 13.79-13.79 16 16 0 0 1-13.79 13.79zm0-80a16 16 0 1 1 13.79-13.79 16 16 0 0 1-13.79 13.79zm0-80a16 16 0 1 1 13.79-13.79 16 16 0 0 1-13.79 13.79zm0-80a16 16 0 1 1 13.79-13.79 16 16 0 0 1-13.79 13.79zm0-80a16 16 0 1 1 13.79-13.79 16 16 0 0 1-13.79 13.79zM444 464H320V208h112a16 16 0 0 1 16 16v236a4 4 0 0 1-4 4z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M400 400a16 16 0 1 0 16 16 16 16 0 0 0-16-16zm0-80a16 16 0 1 0 16 16 16 16 0 0 0-16-16zm0-80a16 16 0 1 0 16 16 16 16 0 0 0-16-16zm-64 160a16 16 0 1 0 16 16 16 16 0 0 0-16-16zm0-80a16 16 0 1 0 16 16 16 16 0 0 0-16-16zm0-80a16 16 0 1 0 16 16 16 16 0 0 0-16-16z\"},\"child\":[]}]})(props);\n};\nexport function IoCafeOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M368 80h64a16 16 0 0 1 16 16v34a46 46 0 0 1-46 46h-34M96 80h272v192a80 80 0 0 1-80 80H176a80 80 0 0 1-80-80V80h0zM64 416h336\"},\"child\":[]}]})(props);\n};\nexport function IoCafeSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M448 64H80v254.34a19.83 19.83 0 0 0 5.86 14.14l29.65 29.66a19.87 19.87 0 0 0 14.15 5.86h204.68a19.87 19.87 0 0 0 14.15-5.86l29.65-29.66a19.83 19.83 0 0 0 5.86-14.14V192h32a16 16 0 0 0 11.31-4.69l32-32A16 16 0 0 0 464 144V80a16 16 0 0 0-16-16zm-16 73.37L409.37 160H384V96h48zM48 400h368v32H48z\"},\"child\":[]}]})(props);\n};\nexport function IoCafe (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M432 64H96a16 16 0 0 0-16 16v192a96.11 96.11 0 0 0 96 96h112a96.11 96.11 0 0 0 96-96v-80h18a62.07 62.07 0 0 0 62-62V96a32 32 0 0 0-32-32zm0 66a30 30 0 0 1-30 30h-18V96h48zm-32 270H64a16 16 0 0 0 0 32h336a16 16 0 0 0 0-32z\"},\"child\":[]}]})(props);\n};\nexport function IoCalculatorOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"rect\",\"attr\":{\"width\":\"288\",\"height\":\"416\",\"x\":\"112\",\"y\":\"48\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"rx\":\"32\",\"ry\":\"32\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M160.01 112H352v64H160.01z\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"168\",\"cy\":\"248\",\"r\":\"24\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"248\",\"r\":\"24\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"344\",\"cy\":\"248\",\"r\":\"24\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"168\",\"cy\":\"328\",\"r\":\"24\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"328\",\"r\":\"24\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"168\",\"cy\":\"408\",\"r\":\"24\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"408\",\"r\":\"24\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"48\",\"height\":\"128\",\"x\":\"320\",\"y\":\"304\",\"rx\":\"24\",\"ry\":\"24\"},\"child\":[]}]})(props);\n};\nexport function IoCalculatorSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M416 48a16 16 0 0 0-16-16H112a16 16 0 0 0-16 16v416a16 16 0 0 0 16 16h288a16 16 0 0 0 16-16zM192 432h-48v-48h48zm0-80h-48v-48h48zm0-80h-48v-48h48zm88 160h-48v-48h48zm0-80h-48v-48h48zm0-80h-48v-48h48zm88 160h-48V304h48zm0-160h-48v-48h48zm0-96H144V80h224z\"},\"child\":[]}]})(props);\n};\nexport function IoCalculator (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M416 80a48.05 48.05 0 0 0-48-48H144a48.05 48.05 0 0 0-48 48v352a48.05 48.05 0 0 0 48 48h224a48.05 48.05 0 0 0 48-48zM168 432a24 24 0 1 1 24-24 24 24 0 0 1-24 24zm0-80a24 24 0 1 1 24-24 24 24 0 0 1-24 24zm0-80a24 24 0 1 1 24-24 24 24 0 0 1-24 24zm88 160a24 24 0 1 1 24-24 24 24 0 0 1-24 24zm0-80a24 24 0 1 1 24-24 24 24 0 0 1-24 24zm0-80a24 24 0 1 1 24-24 24 24 0 0 1-24 24zm112 136a24 24 0 0 1-48 0v-80a24 24 0 0 1 48 0zm-24-136a24 24 0 1 1 24-24 24 24 0 0 1-24 24zm19.31-100.69A16 16 0 0 1 352 176H160a16 16 0 0 1-16-16V96a16 16 0 0 1 16-16h192a16 16 0 0 1 16 16v64a16 16 0 0 1-4.69 11.31z\"},\"child\":[]}]})(props);\n};\nexport function IoCalendarClearOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"rect\",\"attr\":{\"width\":\"416\",\"height\":\"384\",\"x\":\"48\",\"y\":\"80\",\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"rx\":\"48\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M128 48v32m256-32v32m80 80H48\"},\"child\":[]}]})(props);\n};\nexport function IoCalendarClearSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M32 456a24 24 0 0 0 24 24h400a24 24 0 0 0 24-24V192H32zM480 87.77A23.8 23.8 0 0 0 456 64h-55.92V32h-48v32H159.92V32h-48v32H56a23.8 23.8 0 0 0-24 23.77V144h448z\"},\"child\":[]}]})(props);\n};\nexport function IoCalendarClear (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M480 128a64 64 0 0 0-64-64h-16V48.45c0-8.61-6.62-16-15.23-16.43A16 16 0 0 0 368 48v16H144V48.45c0-8.61-6.62-16-15.23-16.43A16 16 0 0 0 112 48v16H96a64 64 0 0 0-64 64v12a4 4 0 0 0 4 4h440a4 4 0 0 0 4-4zM32 416a64 64 0 0 0 64 64h320a64 64 0 0 0 64-64V180a4 4 0 0 0-4-4H36a4 4 0 0 0-4 4z\"},\"child\":[]}]})(props);\n};\nexport function IoCalendarNumberOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"rect\",\"attr\":{\"width\":\"416\",\"height\":\"384\",\"x\":\"48\",\"y\":\"80\",\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"rx\":\"48\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M128 48v32m256-32v32m80 80H48m256 100 43.42-32H352v168m-160.13-89.37c9.11 0 25.79-4.28 36.72-15.47a37.9 37.9 0 0 0 11.13-27.26c0-26.12-22.59-39.9-47.89-39.9-21.4 0-33.52 11.61-37.85 18.93M149 374.16c4.88 8.27 19.71 25.84 43.88 25.84 28.59 0 52.12-15.94 52.12-43.82 0-12.62-3.66-24-11.58-32.07-12.36-12.64-31.25-17.48-41.55-17.48\"},\"child\":[]}]})(props);\n};\nexport function IoCalendarNumberSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M32 456a24 24 0 0 0 24 24h400a24 24 0 0 0 24-24V176H32zm310.17-244H368v200h-32V256.29l-35.39 26.08-19-25.76zM222 335.3c-8.54-8.74-22.75-12.67-30.11-12.67h-16v-32h16c4.85 0 17.41-2.6 25.28-10.65a22 22 0 0 0 6.57-16.08c0-23.23-28.63-23.9-31.89-23.9-17.34 0-23.8 10.61-24.07 11.06l-8.13 13.78-27.56-16.27 8.14-13.77c7.64-13 25.22-26.8 51.62-26.8 16.44 0 31.76 4.77 43.13 13.42 13.39 10.2 20.76 25.28 20.76 42.48A54 54 0 0 1 240 302.35c-1.15 1.18-2.36 2.28-3.59 3.35a66.18 66.18 0 0 1 8.42 7.23c10.56 10.8 16.14 25.75 16.14 43.25 0 18.06-7.61 34-21.42 44.92-12.17 9.61-28.75 14.9-46.7 14.9-27.87 0-48.48-18.16-57.66-33.7l-8.13-13.78 27.56-16.27 8.16 13.75c1.08 1.84 11.15 18 30.1 18 16.66 0 36.12-7.29 36.12-27.82 0-6.25-1.22-14.95-7-20.88zM456 64h-55.92V32h-48v32H159.92V32h-48v32H56a23.8 23.8 0 0 0-24 23.77V144h448V87.77A23.8 23.8 0 0 0 456 64z\"},\"child\":[]}]})(props);\n};\nexport function IoCalendarNumber (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M416 64h-16V48.45c0-8.61-6.62-16-15.23-16.43A16 16 0 0 0 368 48v16H144V48.45c0-8.61-6.62-16-15.23-16.43A16 16 0 0 0 112 48v16H96a64 64 0 0 0-64 64v12a4 4 0 0 0 4 4h440a4 4 0 0 0 4-4v-12a64 64 0 0 0-64-64zm60 112H36a4 4 0 0 0-4 4v236a64 64 0 0 0 64 64h320a64 64 0 0 0 64-64V180a4 4 0 0 0-4-4zM239.58 401.1c-12.17 9.61-28.75 14.9-46.7 14.9-27.87 0-48.48-18.16-57.66-33.7a16 16 0 0 1 27.56-16.3c1.08 1.84 11.15 18 30.1 18 16.66 0 36.12-7.29 36.12-27.82 0-6.25-1.22-14.95-7-20.88-8.54-8.74-22.75-12.67-30.11-12.67a16 16 0 0 1 0-32c4.85 0 17.41-2.6 25.28-10.65a22 22 0 0 0 6.57-16.08c0-23.23-28.63-23.9-31.89-23.9-17.34 0-23.8 10.61-24.07 11.06a16 16 0 1 1-27.55-16.26c7.64-13 25.22-26.8 51.62-26.8 16.44 0 31.76 4.77 43.13 13.42 13.39 10.2 20.76 25.28 20.76 42.48A54 54 0 0 1 240 302.35c-1.15 1.18-2.36 2.28-3.59 3.35a66.18 66.18 0 0 1 8.42 7.23c10.56 10.8 16.14 25.75 16.14 43.25.03 18.06-7.58 34.01-21.39 44.92zM368 396a16 16 0 0 1-32 0V256.29l-22.51 16.59a16 16 0 1 1-19-25.76l43.42-32a16 16 0 0 1 9.49-3.12h4.6a16 16 0 0 1 16 16z\"},\"child\":[]}]})(props);\n};\nexport function IoCalendarOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"rect\",\"attr\":{\"width\":\"416\",\"height\":\"384\",\"x\":\"48\",\"y\":\"80\",\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"rx\":\"48\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"296\",\"cy\":\"232\",\"r\":\"24\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"376\",\"cy\":\"232\",\"r\":\"24\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"296\",\"cy\":\"312\",\"r\":\"24\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"376\",\"cy\":\"312\",\"r\":\"24\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"136\",\"cy\":\"312\",\"r\":\"24\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"216\",\"cy\":\"312\",\"r\":\"24\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"136\",\"cy\":\"392\",\"r\":\"24\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"216\",\"cy\":\"392\",\"r\":\"24\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"296\",\"cy\":\"392\",\"r\":\"24\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M128 48v32m256-32v32\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M464 160H48\"},\"child\":[]}]})(props);\n};\nexport function IoCalendarSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M32 456a24 24 0 0 0 24 24h400a24 24 0 0 0 24-24V176H32zm320-244a4 4 0 0 1 4-4h40a4 4 0 0 1 4 4v40a4 4 0 0 1-4 4h-40a4 4 0 0 1-4-4zm0 80a4 4 0 0 1 4-4h40a4 4 0 0 1 4 4v40a4 4 0 0 1-4 4h-40a4 4 0 0 1-4-4zm-80-80a4 4 0 0 1 4-4h40a4 4 0 0 1 4 4v40a4 4 0 0 1-4 4h-40a4 4 0 0 1-4-4zm0 80a4 4 0 0 1 4-4h40a4 4 0 0 1 4 4v40a4 4 0 0 1-4 4h-40a4 4 0 0 1-4-4zm0 80a4 4 0 0 1 4-4h40a4 4 0 0 1 4 4v40a4 4 0 0 1-4 4h-40a4 4 0 0 1-4-4zm-80-80a4 4 0 0 1 4-4h40a4 4 0 0 1 4 4v40a4 4 0 0 1-4 4h-40a4 4 0 0 1-4-4zm0 80a4 4 0 0 1 4-4h40a4 4 0 0 1 4 4v40a4 4 0 0 1-4 4h-40a4 4 0 0 1-4-4zm-80-80a4 4 0 0 1 4-4h40a4 4 0 0 1 4 4v40a4 4 0 0 1-4 4h-40a4 4 0 0 1-4-4zm0 80a4 4 0 0 1 4-4h40a4 4 0 0 1 4 4v40a4 4 0 0 1-4 4h-40a4 4 0 0 1-4-4zM456 64h-55.92V32h-48v32H159.92V32h-48v32H56a23.8 23.8 0 0 0-24 23.77V144h448V87.77A23.8 23.8 0 0 0 456 64z\"},\"child\":[]}]})(props);\n};\nexport function IoCalendar (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M480 128a64 64 0 0 0-64-64h-16V48.45c0-8.61-6.62-16-15.23-16.43A16 16 0 0 0 368 48v16H144V48.45c0-8.61-6.62-16-15.23-16.43A16 16 0 0 0 112 48v16H96a64 64 0 0 0-64 64v12a4 4 0 0 0 4 4h440a4 4 0 0 0 4-4zM32 416a64 64 0 0 0 64 64h320a64 64 0 0 0 64-64V179a3 3 0 0 0-3-3H35a3 3 0 0 0-3 3zm344-208a24 24 0 1 1-24 24 24 24 0 0 1 24-24zm0 80a24 24 0 1 1-24 24 24 24 0 0 1 24-24zm-80-80a24 24 0 1 1-24 24 24 24 0 0 1 24-24zm0 80a24 24 0 1 1-24 24 24 24 0 0 1 24-24zm0 80a24 24 0 1 1-24 24 24 24 0 0 1 24-24zm-80-80a24 24 0 1 1-24 24 24 24 0 0 1 24-24zm0 80a24 24 0 1 1-24 24 24 24 0 0 1 24-24zm-80-80a24 24 0 1 1-24 24 24 24 0 0 1 24-24zm0 80a24 24 0 1 1-24 24 24 24 0 0 1 24-24z\"},\"child\":[]}]})(props);\n};\nexport function IoCallOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M451 374c-15.88-16-54.34-39.35-73-48.76-24.3-12.24-26.3-13.24-45.4.95-12.74 9.47-21.21 17.93-36.12 14.75s-47.31-21.11-75.68-49.39-47.34-61.62-50.53-76.48 5.41-23.23 14.79-36c13.22-18 12.22-21 .92-45.3-8.81-18.9-32.84-57-48.9-72.8C119.9 44 119.9 47 108.83 51.6A160.15 160.15 0 0 0 83 65.37C67 76 58.12 84.83 51.91 98.1s-9 44.38 23.07 102.64 54.57 88.05 101.14 134.49S258.5 406.64 310.85 436c64.76 36.27 89.6 29.2 102.91 23s22.18-15 32.83-31a159.09 159.09 0 0 0 13.8-25.8C465 391.17 468 391.17 451 374z\"},\"child\":[]}]})(props);\n};\nexport function IoCallSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M478.94 370.14c-5.22-5.56-23.65-22-57.53-43.75-34.13-21.94-59.3-35.62-66.52-38.81a3.83 3.83 0 0 0-3.92.49c-11.63 9.07-31.21 25.73-32.26 26.63-6.78 5.81-6.78 5.81-12.33 4-9.76-3.2-40.08-19.3-66.5-45.78s-43.35-57.55-46.55-67.3c-1.83-5.56-1.83-5.56 4-12.34.9-1.05 17.57-20.63 26.64-32.25a3.83 3.83 0 0 0 .49-3.92c-3.19-7.23-16.87-32.39-38.81-66.52-21.78-33.87-38.2-52.3-43.76-57.52a3.9 3.9 0 0 0-3.89-.87 322.35 322.35 0 0 0-56 25.45A338 338 0 0 0 33.35 92a3.83 3.83 0 0 0-1.26 3.74c2.09 9.74 12.08 50.4 43.08 106.72 31.63 57.48 53.55 86.93 100 133.22S252 405.21 309.54 436.84c56.32 31 97 41 106.72 43.07a3.86 3.86 0 0 0 3.75-1.26A337.73 337.73 0 0 0 454.35 430a322.7 322.7 0 0 0 25.45-56 3.9 3.9 0 0 0-.86-3.86z\"},\"child\":[]}]})(props);\n};\nexport function IoCall (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M391 480c-19.52 0-46.94-7.06-88-30-49.93-28-88.55-53.85-138.21-103.38C116.91 298.77 93.61 267.79 61 208.45c-36.84-67-30.56-102.12-23.54-117.13C45.82 73.38 58.16 62.65 74.11 52a176.3 176.3 0 0 1 28.64-15.2c1-.43 1.93-.84 2.76-1.21 4.95-2.23 12.45-5.6 21.95-2 6.34 2.38 12 7.25 20.86 16 18.17 17.92 43 57.83 52.16 77.43 6.15 13.21 10.22 21.93 10.23 31.71 0 11.45-5.76 20.28-12.75 29.81-1.31 1.79-2.61 3.5-3.87 5.16-7.61 10-9.28 12.89-8.18 18.05 2.23 10.37 18.86 41.24 46.19 68.51s57.31 42.85 67.72 45.07c5.38 1.15 8.33-.59 18.65-8.47 1.48-1.13 3-2.3 4.59-3.47 10.66-7.93 19.08-13.54 30.26-13.54h.06c9.73 0 18.06 4.22 31.86 11.18 18 9.08 59.11 33.59 77.14 51.78 8.77 8.84 13.66 14.48 16.05 20.81 3.6 9.53.21 17-2 22-.37.83-.78 1.74-1.21 2.75a176.49 176.49 0 0 1-15.29 28.58c-10.63 15.9-21.4 28.21-39.38 36.58A67.42 67.42 0 0 1 391 480z\"},\"child\":[]}]})(props);\n};\nexport function IoCameraOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"m350.54 148.68-26.62-42.06C318.31 100.08 310.62 96 302 96h-92c-8.62 0-16.31 4.08-21.92 10.62l-26.62 42.06C155.85 155.23 148.62 160 140 160H80a32 32 0 0 0-32 32v192a32 32 0 0 0 32 32h352a32 32 0 0 0 32-32V192a32 32 0 0 0-32-32h-59c-8.65 0-16.85-4.77-22.46-11.32z\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"272\",\"r\":\"80\",\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M124 158v-22h-24v22\"},\"child\":[]}]})(props);\n};\nexport function IoCameraReverseOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"m350.54 148.68-26.62-42.06C318.31 100.08 310.62 96 302 96h-92c-8.62 0-16.31 4.08-21.92 10.62l-26.62 42.06C155.85 155.23 148.62 160 140 160H80a32 32 0 0 0-32 32v192a32 32 0 0 0 32 32h352a32 32 0 0 0 32-32V192a32 32 0 0 0-32-32h-59c-8.65 0-16.85-4.77-22.46-11.32z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M124 158v-22h-24v22m235.76 127.22v-13.31a80 80 0 0 0-131-61.6M176 258.78v13.31a80 80 0 0 0 130.73 61.8\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"m196 272-20-20-20 20m200 0-20 20-20-20\"},\"child\":[]}]})(props);\n};\nexport function IoCameraReverseSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M456 144h-83c-3 0-6.72-1.94-9.62-5l-27.31-42.79C326 80 320 80 302 80h-92c-18 0-23 0-34.07 16.21L148.62 139c-2.22 2.42-5.34 5-8.62 5v-16a8 8 0 0 0-8-8H92a8 8 0 0 0-8 8v16H56a24 24 0 0 0-24 24v240a24 24 0 0 0 24 24h400a24 24 0 0 0 24-24V168a24 24 0 0 0-24-24zM256 368c-47.82 0-87.76-34.23-95-80h-43.63L176 229.37 234.63 288H194a64.07 64.07 0 0 0 102.63 33.49L320 343l-3.68 3.72A96.64 96.64 0 0 1 256 368zm80-53.84L277.11 256H318a64.26 64.26 0 0 0-103-33.36L192 200l3.14-2.45A96.19 96.19 0 0 1 255.76 176c47.85 0 87 34.19 94.24 80h44.92z\"},\"child\":[]}]})(props);\n};\nexport function IoCameraReverse (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M432 144h-59c-3 0-6.72-1.94-9.62-5l-25.94-40.94a15.52 15.52 0 0 0-1.37-1.85C327.11 85.76 315 80 302 80h-92c-13 0-25.11 5.76-34.07 16.21a15.52 15.52 0 0 0-1.37 1.85l-25.94 41c-2.22 2.42-5.34 5-8.62 5v-8a16 16 0 0 0-16-16h-24a16 16 0 0 0-16 16v8h-4a48.05 48.05 0 0 0-48 48V384a48.05 48.05 0 0 0 48 48h352a48.05 48.05 0 0 0 48-48V192a48.05 48.05 0 0 0-48-48zM316.84 346.3a96.06 96.06 0 0 1-155.66-59.18 16 16 0 0 1-16.49-26.43l20-20a16 16 0 0 1 22.62 0l20 20A16 16 0 0 1 196 288a17.31 17.31 0 0 1-2-.14 64.07 64.07 0 0 0 102.66 33.63 16 16 0 1 1 20.21 24.81zm50.47-63-20 20a16 16 0 0 1-22.62 0l-20-20a16 16 0 0 1 13.09-27.2A64 64 0 0 0 215 222.64 16 16 0 1 1 194.61 198a96 96 0 0 1 156 59 16 16 0 0 1 16.72 26.35z\"},\"child\":[]}]})(props);\n};\nexport function IoCameraSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"272\",\"r\":\"64\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M456 144h-83c-3 0-6.72-1.94-9.62-5L336.1 96.2C325 80 320 80 302 80h-92c-18 0-24 0-34.07 16.21L148.62 139c-2.22 2.42-5.34 5-8.62 5v-16a8 8 0 0 0-8-8H92a8 8 0 0 0-8 8v16H56a24 24 0 0 0-24 24v240a24 24 0 0 0 24 24h400a24 24 0 0 0 24-24V168a24 24 0 0 0-24-24zM260.51 367.9a96 96 0 1 1 91.39-91.39 96.11 96.11 0 0 1-91.39 91.39z\"},\"child\":[]}]})(props);\n};\nexport function IoCamera (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"272\",\"r\":\"64\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M432 144h-59c-3 0-6.72-1.94-9.62-5l-25.94-40.94a15.52 15.52 0 0 0-1.37-1.85C327.11 85.76 315 80 302 80h-92c-13 0-25.11 5.76-34.07 16.21a15.52 15.52 0 0 0-1.37 1.85l-25.94 41c-2.22 2.42-5.34 5-8.62 5v-8a16 16 0 0 0-16-16h-24a16 16 0 0 0-16 16v8h-4a48.05 48.05 0 0 0-48 48V384a48.05 48.05 0 0 0 48 48h352a48.05 48.05 0 0 0 48-48V192a48.05 48.05 0 0 0-48-48zM256 368a96 96 0 1 1 96-96 96.11 96.11 0 0 1-96 96z\"},\"child\":[]}]})(props);\n};\nexport function IoCarOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"m80 224 37.78-88.15C123.93 121.5 139.6 112 157.11 112h197.78c17.51 0 33.18 9.5 39.33 23.85L432 224m-352 0h352v144H80zm32 144v32H80v-32m352 0v32h-32v-32\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"144\",\"cy\":\"288\",\"r\":\"16\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"368\",\"cy\":\"288\",\"r\":\"16\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\"},\"child\":[]}]})(props);\n};\nexport function IoCarSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M447.68 220.78a16.44 16.44 0 0 0-1-3.1l-48-112A16 16 0 0 0 384 96H128a16 16 0 0 0-14.71 9.7l-48 112a16.44 16.44 0 0 0-1 3.1A16.15 16.15 0 0 0 64 224v184a8 8 0 0 0 8 8h32a8 8 0 0 0 8-8v-24h288v24a8 8 0 0 0 8 8h32a8 8 0 0 0 8-8V224a16.15 16.15 0 0 0-.32-3.22zM144 320a32 32 0 1 1 32-32 32 32 0 0 1-32 32zm224 0a32 32 0 1 1 32-32 32 32 0 0 1-32 32zM104.26 208l34.29-80h234.9l34.29 80z\"},\"child\":[]}]})(props);\n};\nexport function IoCarSportOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M469.71 234.6c-7.33-9.73-34.56-16.43-46.08-33.94s-20.95-55.43-50.27-70S288 112 256 112s-88 4-117.36 18.63-38.75 52.52-50.27 70-38.75 24.24-46.08 33.97S29.8 305.84 32.94 336s9 48 9 48h86c14.08 0 18.66-5.29 47.46-8 31.6-3 62.6-4 80.6-4s50 1 81.58 4c28.8 2.73 33.53 8 47.46 8h85s5.86-17.84 9-48-2.04-91.67-9.33-101.4zM400 384h56v16h-56zm-344 0h56v16H56z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M364.47 309.16c-5.91-6.83-25.17-12.53-50.67-16.35S279 288 256.2 288s-33.17 1.64-57.61 4.81-42.79 8.81-50.66 16.35C136.12 320.6 153.42 333.44 167 335c13.16 1.5 39.47.95 89.31.95s76.15.55 89.31-.95c13.56-1.65 29.62-13.6 18.85-25.84zm67.1-66.11a3.23 3.23 0 0 0-3.1-3c-11.81-.42-23.8.42-45.07 6.69a93.88 93.88 0 0 0-30.08 15.06c-2.28 1.78-1.47 6.59 1.39 7.1a455.32 455.32 0 0 0 52.82 3.1c10.59 0 21.52-3 23.55-12.44a52.41 52.41 0 0 0 .49-16.51zm-351.14 0a3.23 3.23 0 0 1 3.1-3c11.81-.42 23.8.42 45.07 6.69a93.88 93.88 0 0 1 30.08 15.06c2.28 1.78 1.47 6.59-1.39 7.1a455.32 455.32 0 0 1-52.82 3.1c-10.59 0-21.52-3-23.55-12.44a52.41 52.41 0 0 1-.49-16.51z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M432 192h16m-384 0h16m-2 19s46.35-12 178-12 178 12 178 12\"},\"child\":[]}]})(props);\n};\nexport function IoCarSportSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M488 224c-3-5-32.61-17.79-32.61-17.79 5.15-2.66 8.67-3.21 8.67-14.21 0-12-.06-16-8.06-16h-27.14c-.11-.24-.23-.49-.34-.74-17.52-38.26-19.87-47.93-46-60.95C347.47 96.88 281.76 96 256 96s-91.47.88-126.49 18.31c-26.16 13-25.51 19.69-46 60.95 0 .11-.21.4-.4.74H55.94c-7.94 0-8 4-8 16 0 11 3.52 11.55 8.67 14.21C56.61 206.21 28 220 24 224s-8 32-8 80 4 96 4 96h11.94c0 14 2.06 16 8.06 16h80c6 0 8-2 8-16h256c0 14 2 16 8 16h82c4 0 6-3 6-16h12s4-49 4-96-5-75-8-80zm-362.74 44.94A516.94 516.94 0 0 1 70.42 272c-20.42 0-21.12 1.31-22.56-11.44a72.16 72.16 0 0 1 .51-17.51L49 240h3c12 0 23.27.51 44.55 6.78a98 98 0 0 1 30.09 15.06C131 265 132 268 132 268zm247.16 72L368 352H144s.39-.61-5-11.18c-4-7.82 1-12.82 8.91-15.66C163.23 319.64 208 304 256 304s93.66 13.48 108.5 21.16C370 328 376.83 330 372.42 341zm-257-136.53a96.23 96.23 0 0 1-9.7.07c2.61-4.64 4.06-9.81 6.61-15.21 8-17 17.15-36.24 33.44-44.35 23.54-11.72 72.33-17 110.23-17s86.69 5.24 110.23 17c16.29 8.11 25.4 27.36 33.44 44.35 2.57 5.45 4 10.66 6.68 15.33-2 .11-4.3 0-9.79-.19zm347.72 56.11C461 273 463 272 441.58 272a516.94 516.94 0 0 1-54.84-3.06c-2.85-.51-3.66-5.32-1.38-7.1a93.84 93.84 0 0 1 30.09-15.06c21.28-6.27 33.26-7.11 45.09-6.69a3.22 3.22 0 0 1 3.09 3 70.18 70.18 0 0 1-.49 17.47z\"},\"child\":[]}]})(props);\n};\nexport function IoCarSport (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M494.26 276.22c-3.6-40.41-9.53-48.28-11.77-51.24-5.15-6.84-13.39-11.31-22.11-16a3.6 3.6 0 0 1-.91-5.68 15.93 15.93 0 0 0 4.53-12.53A16.27 16.27 0 0 0 447.65 176h-15.6a17 17 0 0 0-2 .13 8.5 8.5 0 0 0-1.41-.47c-9.24-19.53-21.89-46.27-48.11-59.32C341.64 97 270 96 256 96s-85.64 1-124.48 20.31c-26.22 13.05-38.87 39.79-48.11 59.32l-.08.16a6.52 6.52 0 0 0-1.35.34 17 17 0 0 0-2-.13H64.35A16.27 16.27 0 0 0 48 190.77a15.93 15.93 0 0 0 4.59 12.47 3.6 3.6 0 0 1-.91 5.68c-8.72 4.72-17 9.19-22.11 16-2.24 3-8.16 10.83-11.77 51.24-2 22.74-2.3 46.28-.73 61.44 3.29 31.5 9.46 50.54 9.72 51.33a16 16 0 0 0 13.2 10.87v.2a16 16 0 0 0 16 16h56a16 16 0 0 0 16-16c8.61 0 14.6-1.54 20.95-3.18a158.83 158.83 0 0 1 28-4.91C207.45 389 237.79 388 256 388c17.84 0 49.52 1 80.08 3.91a159.16 159.16 0 0 1 28.11 4.93c6.08 1.56 11.85 3 19.84 3.15a16 16 0 0 0 16 16h56a16 16 0 0 0 16-16v-.12A16 16 0 0 0 485.27 389c.26-.79 6.43-19.83 9.72-51.33 1.57-15.17 1.29-38.67-.73-61.45zm-381.93-86.91c8-17 17.15-36.24 33.44-44.35 23.54-11.72 72.33-17 110.23-17s86.69 5.24 110.23 17c16.29 8.11 25.4 27.36 33.44 44.35l1 2.17a8 8 0 0 1-7.44 11.42C360 202 290 199.12 256 199.12s-104 2.95-137.28 3.85a8 8 0 0 1-7.44-11.42c.35-.74.72-1.49 1.05-2.24zm11.93 79.63A427.17 427.17 0 0 1 72.42 272c-10.6 0-21.53-3-23.56-12.44-1.39-6.35-1.24-9.92-.49-13.51C49 243 50 240.78 55 240c13-2 20.27.51 41.55 6.78 14.11 4.15 24.29 9.68 30.09 14.06 2.91 2.16 1.36 7.8-2.38 8.1zm221.38 82c-13.16 1.5-39.48.95-89.34.95s-76.17.55-89.33-.95c-13.58-1.51-30.89-14.35-19.07-25.79 7.87-7.54 26.23-13.18 50.68-16.35s34.8-4.8 57.62-4.8 32.12 1 57.62 4.81 44.77 9.52 50.68 16.35c10.78 12.24-5.29 24.19-18.86 25.84zm117.5-91.39c-2 9.48-13 12.44-23.56 12.44a455.91 455.91 0 0 1-52.84-3.06c-3.06-.29-4.48-5.66-1.38-8.1 5.71-4.49 16-9.91 30.09-14.06 21.28-6.27 33.55-8.78 44.09-6.69 2.57.51 3.93 3.27 4.09 5a40.64 40.64 0 0 1-.49 14.48z\"},\"child\":[]}]})(props);\n};\nexport function IoCar (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M447.68 220.78a16 16 0 0 0-1-3.08l-37.78-88.16C400.19 109.17 379 96 354.89 96H157.11c-24.09 0-45.3 13.17-54 33.54L65.29 217.7A15.72 15.72 0 0 0 64 224v176a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16v-16h256v16a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16V224a16.15 16.15 0 0 0-.32-3.22zM144 320a32 32 0 1 1 32-32 32 32 0 0 1-32 32zm224 0a32 32 0 1 1 32-32 32 32 0 0 1-32 32zM104.26 208l28.23-65.85C136.11 133.69 146 128 157.11 128h197.78c11.1 0 21 5.69 24.62 14.15L407.74 208z\"},\"child\":[]}]})(props);\n};\nexport function IoCardOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"rect\",\"attr\":{\"width\":\"416\",\"height\":\"320\",\"x\":\"48\",\"y\":\"96\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"rx\":\"56\",\"ry\":\"56\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"60\",\"d\":\"M48 192h416M128 300h48v20h-48z\"},\"child\":[]}]})(props);\n};\nexport function IoCardSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M32 416a16 16 0 0 0 16 16h416a16 16 0 0 0 16-16V222H32zm66-138a8 8 0 0 1 8-8h92a8 8 0 0 1 8 8v64a8 8 0 0 1-8 8h-92a8 8 0 0 1-8-8zM464 80H48a16 16 0 0 0-16 16v66h448V96a16 16 0 0 0-16-16z\"},\"child\":[]}]})(props);\n};\nexport function IoCard (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M32 376a56 56 0 0 0 56 56h336a56 56 0 0 0 56-56V222H32zm66-76a30 30 0 0 1 30-30h48a30 30 0 0 1 30 30v20a30 30 0 0 1-30 30h-48a30 30 0 0 1-30-30zM424 80H88a56 56 0 0 0-56 56v26h448v-26a56 56 0 0 0-56-56z\"},\"child\":[]}]})(props);\n};\nexport function IoCaretBackCircleOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m273.77 169.57-89.09 74.13a16 16 0 0 0 0 24.6l89.09 74.13A16 16 0 0 0 300 330.14V181.86a16 16 0 0 0-26.23-12.29z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M448 256c0-106-86-192-192-192S64 150 64 256s86 192 192 192 192-86 192-192z\"},\"child\":[]}]})(props);\n};\nexport function IoCaretBackCircleSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M48 256c0 114.87 93.13 208 208 208s208-93.13 208-208S370.87 48 256 48 48 141.13 48 256zm252 108.27L169.91 256 300 147.73z\"},\"child\":[]}]})(props);\n};\nexport function IoCaretBackCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M48 256c0 114.87 93.13 208 208 208s208-93.13 208-208S370.87 48 256 48 48 141.13 48 256zm252-74.14v148.28a16 16 0 0 1-26.23 12.29l-89.09-74.13a16 16 0 0 1 0-24.6l89.09-74.13A16 16 0 0 1 300 181.86z\"},\"child\":[]}]})(props);\n};\nexport function IoCaretBackOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M321.94 98 158.82 237.78a24 24 0 0 0 0 36.44L321.94 414c15.57 13.34 39.62 2.28 39.62-18.22v-279.6c0-20.5-24.05-31.56-39.62-18.18z\"},\"child\":[]}]})(props);\n};\nexport function IoCaretBackSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M368 64 144 256l224 192V64z\"},\"child\":[]}]})(props);\n};\nexport function IoCaretBack (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M321.94 98 158.82 237.78a24 24 0 0 0 0 36.44L321.94 414c15.57 13.34 39.62 2.28 39.62-18.22v-279.6c0-20.5-24.05-31.56-39.62-18.18z\"},\"child\":[]}]})(props);\n};\nexport function IoCaretDownCircleOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m342.43 238.23-74.13 89.09a16 16 0 0 1-24.6 0l-74.13-89.09A16 16 0 0 1 181.86 212h148.28a16 16 0 0 1 12.29 26.23z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M448 256c0-106-86-192-192-192S64 150 64 256s86 192 192 192 192-86 192-192z\"},\"child\":[]}]})(props);\n};\nexport function IoCaretDownCircleSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M464 256c0-114.87-93.13-208-208-208S48 141.13 48 256s93.13 208 208 208 208-93.13 208-208zm-99.73-44L256 342.09 147.73 212z\"},\"child\":[]}]})(props);\n};\nexport function IoCaretDownCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M464 256c0-114.87-93.13-208-208-208S48 141.13 48 256s93.13 208 208 208 208-93.13 208-208zm-121.57-17.77-74.13 89.09a16 16 0 0 1-24.6 0l-74.13-89.09A16 16 0 0 1 181.86 212h148.28a16 16 0 0 1 12.29 26.23z\"},\"child\":[]}]})(props);\n};\nexport function IoCaretDownOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m98 190.06 139.78 163.12a24 24 0 0 0 36.44 0L414 190.06c13.34-15.57 2.28-39.62-18.22-39.62h-279.6c-20.5 0-31.56 24.05-18.18 39.62z\"},\"child\":[]}]})(props);\n};\nexport function IoCaretDownSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m64 144 192 224 192-224H64z\"},\"child\":[]}]})(props);\n};\nexport function IoCaretDown (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m98 190.06 139.78 163.12a24 24 0 0 0 36.44 0L414 190.06c13.34-15.57 2.28-39.62-18.22-39.62h-279.6c-20.5 0-31.56 24.05-18.18 39.62z\"},\"child\":[]}]})(props);\n};\nexport function IoCaretForwardCircleOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m238.23 342.43 89.09-74.13a16 16 0 0 0 0-24.6l-89.09-74.13A16 16 0 0 0 212 181.86v148.28a16 16 0 0 0 26.23 12.29z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M448 256c0-106-86-192-192-192S64 150 64 256s86 192 192 192 192-86 192-192z\"},\"child\":[]}]})(props);\n};\nexport function IoCaretForwardCircleSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M464 256c0-114.87-93.13-208-208-208S48 141.13 48 256s93.13 208 208 208 208-93.13 208-208zM212 147.73 342.09 256 212 364.27z\"},\"child\":[]}]})(props);\n};\nexport function IoCaretForwardCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M464 256c0-114.87-93.13-208-208-208S48 141.13 48 256s93.13 208 208 208 208-93.13 208-208zm-252 74.14V181.86a16 16 0 0 1 26.23-12.29l89.09 74.13a16 16 0 0 1 0 24.6l-89.09 74.13A16 16 0 0 1 212 330.14z\"},\"child\":[]}]})(props);\n};\nexport function IoCaretForwardOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m190.06 414 163.12-139.78a24 24 0 0 0 0-36.44L190.06 98c-15.57-13.34-39.62-2.28-39.62 18.22v279.6c0 20.5 24.05 31.56 39.62 18.18z\"},\"child\":[]}]})(props);\n};\nexport function IoCaretForwardSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m144 448 224-192L144 64v384z\"},\"child\":[]}]})(props);\n};\nexport function IoCaretForward (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m190.06 414 163.12-139.78a24 24 0 0 0 0-36.44L190.06 98c-15.57-13.34-39.62-2.28-39.62 18.22v279.6c0 20.5 24.05 31.56 39.62 18.18z\"},\"child\":[]}]})(props);\n};\nexport function IoCaretUpCircleOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m342.43 273.77-74.13-89.09a16 16 0 0 0-24.6 0l-74.13 89.09A16 16 0 0 0 181.86 300h148.28a16 16 0 0 0 12.29-26.23z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M448 256c0-106-86-192-192-192S64 150 64 256s86 192 192 192 192-86 192-192z\"},\"child\":[]}]})(props);\n};\nexport function IoCaretUpCircleSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 48C141.13 48 48 141.13 48 256s93.13 208 208 208 208-93.13 208-208S370.87 48 256 48zM147.73 300 256 169.91 364.27 300z\"},\"child\":[]}]})(props);\n};\nexport function IoCaretUpCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 48C141.13 48 48 141.13 48 256s93.13 208 208 208 208-93.13 208-208S370.87 48 256 48zm74.14 252H181.86a16 16 0 0 1-12.29-26.23l74.13-89.09a16 16 0 0 1 24.6 0l74.13 89.09A16 16 0 0 1 330.14 300z\"},\"child\":[]}]})(props);\n};\nexport function IoCaretUpOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M414 321.94 274.22 158.82a24 24 0 0 0-36.44 0L98 321.94c-13.34 15.57-2.28 39.62 18.22 39.62h279.6c20.5 0 31.56-24.05 18.18-39.62z\"},\"child\":[]}]})(props);\n};\nexport function IoCaretUpSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M448 368 256 144 64 368h384z\"},\"child\":[]}]})(props);\n};\nexport function IoCaretUp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M414 321.94 274.22 158.82a24 24 0 0 0-36.44 0L98 321.94c-13.34 15.57-2.28 39.62 18.22 39.62h279.6c20.5 0 31.56-24.05 18.18-39.62z\"},\"child\":[]}]})(props);\n};\nexport function IoCartOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"circle\",\"attr\":{\"cx\":\"176\",\"cy\":\"416\",\"r\":\"16\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"400\",\"cy\":\"416\",\"r\":\"16\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M48 80h64l48 272h256\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M160 288h249.44a8 8 0 0 0 7.85-6.43l28.8-144a8 8 0 0 0-7.85-9.57H128\"},\"child\":[]}]})(props);\n};\nexport function IoCartSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"circle\",\"attr\":{\"cx\":\"176\",\"cy\":\"416\",\"r\":\"32\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"400\",\"cy\":\"416\",\"r\":\"32\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M167.78 304h261.34l38.4-192H133.89l-8.47-48H32v32h66.58l48 272H432v-32H173.42l-5.64-32z\"},\"child\":[]}]})(props);\n};\nexport function IoCart (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"circle\",\"attr\":{\"cx\":\"176\",\"cy\":\"416\",\"r\":\"32\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"400\",\"cy\":\"416\",\"r\":\"32\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M456.8 120.78a23.92 23.92 0 0 0-18.56-8.78H133.89l-6.13-34.78A16 16 0 0 0 112 64H48a16 16 0 0 0 0 32h50.58l45.66 258.78A16 16 0 0 0 160 368h256a16 16 0 0 0 0-32H173.42l-5.64-32h241.66A24.07 24.07 0 0 0 433 284.71l28.8-144a24 24 0 0 0-5-19.93z\"},\"child\":[]}]})(props);\n};\nexport function IoCashOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"rect\",\"attr\":{\"width\":\"448\",\"height\":\"256\",\"x\":\"32\",\"y\":\"80\",\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"rx\":\"16\",\"ry\":\"16\",\"transform\":\"rotate(180 256 208)\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M64 384h384M96 432h320\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"208\",\"r\":\"80\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M480 160a80 80 0 0 1-80-80M32 160a80 80 0 0 0 80-80m368 176a80 80 0 0 0-80 80M32 256a80 80 0 0 1 80 80\"},\"child\":[]}]})(props);\n};\nexport function IoCashSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M48 368h416v32H48zm32 48h352v32H80zm400-240a96.11 96.11 0 0 1-96-96V64H128v16a96.11 96.11 0 0 1-96 96H16v64h16a96.11 96.11 0 0 1 96 96v16h256v-16a96.11 96.11 0 0 1 96-96h16v-64zM256 304a96 96 0 1 1 96-96 96.11 96.11 0 0 1-96 96z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M96 80V64H16v80h16a64.07 64.07 0 0 0 64-64zM32 272H16v80h80v-16a64.07 64.07 0 0 0-64-64zm448-128h16V64h-80v16a64.07 64.07 0 0 0 64 64zm-64 192v16h80v-80h-16a64.07 64.07 0 0 0-64 64z\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"208\",\"r\":\"64\"},\"child\":[]}]})(props);\n};\nexport function IoCash (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M448 400H64a16 16 0 0 1 0-32h384a16 16 0 0 1 0 32zm-32 48H96a16 16 0 0 1 0-32h320a16 16 0 0 1 0 32zM32 272H16v48a32 32 0 0 0 32 32h48v-16a64.07 64.07 0 0 0-64-64z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M480 240h16v-64h-16a96.11 96.11 0 0 1-96-96V64H128v16a96.11 96.11 0 0 1-96 96H16v64h16a96.11 96.11 0 0 1 96 96v16h256v-16a96.11 96.11 0 0 1 96-96zm-224 64a96 96 0 1 1 96-96 96.11 96.11 0 0 1-96 96z\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"208\",\"r\":\"64\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M416 336v16h48a32 32 0 0 0 32-32v-48h-16a64.07 64.07 0 0 0-64 64zm64-192h16V96a32 32 0 0 0-32-32h-48v16a64.07 64.07 0 0 0 64 64zM96 80V64H48a32 32 0 0 0-32 32v48h16a64.07 64.07 0 0 0 64-64z\"},\"child\":[]}]})(props);\n};\nexport function IoCellularOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"rect\",\"attr\":{\"width\":\"64\",\"height\":\"320\",\"x\":\"416\",\"y\":\"96\",\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"rx\":\"8\",\"ry\":\"8\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"64\",\"height\":\"240\",\"x\":\"288\",\"y\":\"176\",\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"rx\":\"8\",\"ry\":\"8\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"64\",\"height\":\"176\",\"x\":\"160\",\"y\":\"240\",\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"rx\":\"8\",\"ry\":\"8\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"64\",\"height\":\"112\",\"x\":\"32\",\"y\":\"304\",\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"rx\":\"8\",\"ry\":\"8\"},\"child\":[]}]})(props);\n};\nexport function IoCellularSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M496 432h-96V80h96zm-128 0h-96V160h96zm-128 0h-96V224h96zm-128 0H16V288h96z\"},\"child\":[]}]})(props);\n};\nexport function IoCellular (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M472 432h-48a24 24 0 0 1-24-24V104a24 24 0 0 1 24-24h48a24 24 0 0 1 24 24v304a24 24 0 0 1-24 24zm-128 0h-48a24 24 0 0 1-24-24V184a24 24 0 0 1 24-24h48a24 24 0 0 1 24 24v224a24 24 0 0 1-24 24zm-128 0h-48a24 24 0 0 1-24-24V248a24 24 0 0 1 24-24h48a24 24 0 0 1 24 24v160a24 24 0 0 1-24 24zm-128 0H40a24 24 0 0 1-24-24v-96a24 24 0 0 1 24-24h48a24 24 0 0 1 24 24v96a24 24 0 0 1-24 24z\"},\"child\":[]}]})(props);\n};\nexport function IoChatboxEllipsesOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M408 64H104a56.16 56.16 0 0 0-56 56v192a56.16 56.16 0 0 0 56 56h40v80l93.72-78.14a8 8 0 0 1 5.13-1.86H408a56.16 56.16 0 0 0 56-56V120a56.16 56.16 0 0 0-56-56z\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"160\",\"cy\":\"216\",\"r\":\"32\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"216\",\"r\":\"32\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"352\",\"cy\":\"216\",\"r\":\"32\"},\"child\":[]}]})(props);\n};\nexport function IoChatboxEllipsesSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M456 48H56a24 24 0 0 0-24 24v288a24 24 0 0 0 24 24h72v80l117.74-80H456a24 24 0 0 0 24-24V72a24 24 0 0 0-24-24zM160 248a32 32 0 1 1 32-32 32 32 0 0 1-32 32zm96 0a32 32 0 1 1 32-32 32 32 0 0 1-32 32zm96 0a32 32 0 1 1 32-32 32 32 0 0 1-32 32zM456 80z\"},\"child\":[]}]})(props);\n};\nexport function IoChatboxEllipses (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M408 48H104a72.08 72.08 0 0 0-72 72v192a72.08 72.08 0 0 0 72 72h24v64a16 16 0 0 0 26.25 12.29L245.74 384H408a72.08 72.08 0 0 0 72-72V120a72.08 72.08 0 0 0-72-72zM160 248a32 32 0 1 1 32-32 32 32 0 0 1-32 32zm96 0a32 32 0 1 1 32-32 32 32 0 0 1-32 32zm96 0a32 32 0 1 1 32-32 32 32 0 0 1-32 32z\"},\"child\":[]}]})(props);\n};\nexport function IoChatboxOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M408 64H104a56.16 56.16 0 0 0-56 56v192a56.16 56.16 0 0 0 56 56h40v80l93.72-78.14a8 8 0 0 1 5.13-1.86H408a56.16 56.16 0 0 0 56-56V120a56.16 56.16 0 0 0-56-56z\"},\"child\":[]}]})(props);\n};\nexport function IoChatboxSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M128 464v-80H56a24 24 0 0 1-24-24V72a24 24 0 0 1 24-24h400a24 24 0 0 1 24 24v288a24 24 0 0 1-24 24H245.74zM456 80z\"},\"child\":[]}]})(props);\n};\nexport function IoChatbox (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M144 464a16 16 0 0 1-16-16v-64h-24a72.08 72.08 0 0 1-72-72V120a72.08 72.08 0 0 1 72-72h304a72.08 72.08 0 0 1 72 72v192a72.08 72.08 0 0 1-72 72H245.74l-91.49 76.29A16.05 16.05 0 0 1 144 464z\"},\"child\":[]}]})(props);\n};\nexport function IoChatbubbleEllipsesOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M87.48 380c1.2-4.38-1.43-10.47-3.94-14.86a42.63 42.63 0 0 0-2.54-3.8 199.81 199.81 0 0 1-33-110C47.64 139.09 140.72 48 255.82 48 356.2 48 440 117.54 459.57 209.85a199 199 0 0 1 4.43 41.64c0 112.41-89.49 204.93-204.59 204.93-18.31 0-43-4.6-56.47-8.37s-26.92-8.77-30.39-10.11a31.14 31.14 0 0 0-11.13-2.07 30.7 30.7 0 0 0-12.08 2.43L81.5 462.78a15.92 15.92 0 0 1-4.66 1.22 9.61 9.61 0 0 1-9.58-9.74 15.85 15.85 0 0 1 .6-3.29z\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"160\",\"cy\":\"256\",\"r\":\"32\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"256\",\"r\":\"32\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"352\",\"cy\":\"256\",\"r\":\"32\"},\"child\":[]}]})(props);\n};\nexport function IoChatbubbleEllipsesSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M475.22 206.52c-10.34-48.65-37.76-92.93-77.22-124.68A227.4 227.4 0 0 0 255.82 32C194.9 32 138 55.47 95.46 98.09 54.35 139.33 31.82 193.78 32 251.37a215.66 215.66 0 0 0 35.65 118.76l4.35 6.05L48 480l114.8-28.56s2.3.77 4 1.42 16.33 6.26 31.85 10.6c12.9 3.6 39.74 9 60.77 9 59.65 0 115.35-23.1 156.83-65.06C457.36 365.77 480 310.42 480 251.49a213.5 213.5 0 0 0-4.78-44.97zM160 288a32 32 0 1 1 32-32 32 32 0 0 1-32 32zm96 0a32 32 0 1 1 32-32 32 32 0 0 1-32 32zm96 0a32 32 0 1 1 32-32 32 32 0 0 1-32 32z\"},\"child\":[]}]})(props);\n};\nexport function IoChatbubbleEllipses (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M398 81.84A227.4 227.4 0 0 0 255.82 32C194.9 32 138 55.47 95.46 98.09 54.35 139.33 31.82 193.78 32 251.37a215.66 215.66 0 0 0 35.65 118.76l.19.27c.28.41.57.82.86 1.22s.65.92.73 1.05l.22.4c1.13 2 2 4.44 1.23 6.9l-18.42 66.66a29.13 29.13 0 0 0-1.2 7.63A25.69 25.69 0 0 0 76.83 480a29.44 29.44 0 0 0 10.45-2.29l67.49-24.36.85-.33a14.75 14.75 0 0 1 5.8-1.15 15.12 15.12 0 0 1 5.37 1c1.62.63 16.33 6.26 31.85 10.6 12.9 3.6 39.74 9 60.77 9 59.65 0 115.35-23.1 156.83-65.06C457.36 365.77 480 310.42 480 251.49a213.5 213.5 0 0 0-4.78-45c-10.34-48.62-37.76-92.9-77.22-124.65zM87.48 380zM160 288a32 32 0 1 1 32-32 32 32 0 0 1-32 32zm96 0a32 32 0 1 1 32-32 32 32 0 0 1-32 32zm96 0a32 32 0 1 1 32-32 32 32 0 0 1-32 32z\"},\"child\":[]}]})(props);\n};\nexport function IoChatbubbleOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M87.49 380c1.19-4.38-1.44-10.47-3.95-14.86a44.86 44.86 0 0 0-2.54-3.8 199.81 199.81 0 0 1-33-110C47.65 139.09 140.73 48 255.83 48 356.21 48 440 117.54 459.58 209.85a199 199 0 0 1 4.42 41.64c0 112.41-89.49 204.93-204.59 204.93-18.3 0-43-4.6-56.47-8.37s-26.92-8.77-30.39-10.11a31.09 31.09 0 0 0-11.12-2.07 30.71 30.71 0 0 0-12.09 2.43l-67.83 24.48a16 16 0 0 1-4.67 1.22 9.6 9.6 0 0 1-9.57-9.74 15.85 15.85 0 0 1 .6-3.29z\"},\"child\":[]}]})(props);\n};\nexport function IoChatbubbleSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M475.22 206.52c-10.34-48.65-37.76-92.93-77.22-124.68A227.4 227.4 0 0 0 255.82 32C194.9 32 138 55.47 95.46 98.09 54.35 139.33 31.82 193.78 32 251.37a215.66 215.66 0 0 0 35.65 118.76l4.35 6.05L48 480l114.8-28.56s2.3.77 4 1.42 16.33 6.26 31.85 10.6c12.9 3.6 39.74 9 60.77 9 59.65 0 115.35-23.1 156.83-65.06C457.36 365.77 480 310.42 480 251.49a213.5 213.5 0 0 0-4.78-44.97z\"},\"child\":[]}]})(props);\n};\nexport function IoChatbubble (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M76.83 480a25.69 25.69 0 0 1-25.57-25.74 29.13 29.13 0 0 1 1.2-7.63L70.88 380c.77-2.46-.1-4.94-1.23-6.9l-.22-.4c-.08-.13-.46-.66-.73-1.05s-.58-.81-.86-1.22l-.19-.27A215.66 215.66 0 0 1 32 251.37c-.18-57.59 22.35-112 63.46-153.28C138 55.47 194.9 32 255.82 32A227.4 227.4 0 0 1 398 81.84c39.45 31.75 66.87 76 77.21 124.68a213.5 213.5 0 0 1 4.78 45c0 58.93-22.64 114.28-63.76 155.87-41.48 42-97.18 65.06-156.83 65.06-21 0-47.87-5.36-60.77-9-15.52-4.34-30.23-10-31.85-10.6a15.12 15.12 0 0 0-5.37-1 14.75 14.75 0 0 0-5.8 1.15l-.85.33-67.48 24.38A29.44 29.44 0 0 1 76.83 480zm-2-31.8zM87.48 380z\"},\"child\":[]}]})(props);\n};\nexport function IoChatbubblesOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M431 320.6c-1-3.6 1.2-8.6 3.3-12.2a33.68 33.68 0 0 1 2.1-3.1A162 162 0 0 0 464 215c.3-92.2-77.5-167-173.7-167-83.9 0-153.9 57.1-170.3 132.9a160.7 160.7 0 0 0-3.7 34.2c0 92.3 74.8 169.1 171 169.1 15.3 0 35.9-4.6 47.2-7.7s22.5-7.2 25.4-8.3a26.44 26.44 0 0 1 9.3-1.7 26 26 0 0 1 10.1 2l56.7 20.1a13.52 13.52 0 0 0 3.9 1 8 8 0 0 0 8-8 12.85 12.85 0 0 0-.5-2.7z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M66.46 232a146.23 146.23 0 0 0 6.39 152.67c2.31 3.49 3.61 6.19 3.21 8s-11.93 61.87-11.93 61.87a8 8 0 0 0 2.71 7.68A8.17 8.17 0 0 0 72 464a7.26 7.26 0 0 0 2.91-.6l56.21-22a15.7 15.7 0 0 1 12 .2c18.94 7.38 39.88 12 60.83 12A159.21 159.21 0 0 0 284 432.11\"},\"child\":[]}]})(props);\n};\nexport function IoChatbubblesSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M448 312.43c.77-1.11 1.51-2.26 2.27-3.34A174.55 174.55 0 0 0 480 211.85C480.32 112.55 396.54 32 292.94 32c-90.36 0-165.74 61.49-183.4 143.12a172.81 172.81 0 0 0-4 36.83c0 99.4 80.56 182.11 184.16 182.11 16.47 0 38.66-4.95 50.83-8.29s24.23-7.75 27.35-8.94 8-2.41 11.89-1.29l77.42 22.38a4 4 0 0 0 5-4.86l-17.72-67.49c-1.23-5-1.39-5.94 3.53-13.14z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M312.54 415.38a165.32 165.32 0 0 1-23.26 2.05c-42.43 0-82.5-11.2-115-32.2a184.09 184.09 0 0 1-53.09-49.32c-26.08-34.57-40.3-78.51-40.3-124.49 0-3.13.11-6.14.22-9.16a4.34 4.34 0 0 0-7.54-3.12 158.76 158.76 0 0 0-14.86 195.24c2.47 3.77 3.87 6.68 3.44 8.62l-14.09 72.26a4 4 0 0 0 5.22 4.53l68-24.24a16.85 16.85 0 0 1 12.92.22c20.35 8 42.86 12.92 65.37 12.92a169.45 169.45 0 0 0 116.63-46 4.29 4.29 0 0 0-3.66-7.31z\"},\"child\":[]}]})(props);\n};\nexport function IoChatbubbles (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M60.44 389.17c0 .07 0 .2-.08.38.03-.12.05-.25.08-.38zM439.9 405.6a26.77 26.77 0 0 1-9.59-2l-56.78-20.13-.42-.17a9.88 9.88 0 0 0-3.91-.76 10.32 10.32 0 0 0-3.62.66c-1.38.52-13.81 5.19-26.85 8.77-7.07 1.94-31.68 8.27-51.43 8.27-50.48 0-97.68-19.4-132.89-54.63A183.38 183.38 0 0 1 100.3 215.1a175.9 175.9 0 0 1 4.06-37.58c8.79-40.62 32.07-77.57 65.55-104A194.76 194.76 0 0 1 290.3 32c52.21 0 100.86 20 137 56.18 34.16 34.27 52.88 79.33 52.73 126.87a177.86 177.86 0 0 1-30.3 99.15l-.19.28-.74 1c-.17.23-.34.45-.5.68l-.15.27a21.63 21.63 0 0 0-1.08 2.09l15.74 55.94a26.42 26.42 0 0 1 1.12 7.11 24 24 0 0 1-24.03 24.03z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M299.87 425.39a15.74 15.74 0 0 0-10.29-8.1c-5.78-1.53-12.52-1.27-17.67-1.65a201.78 201.78 0 0 1-128.82-58.75A199.21 199.21 0 0 1 86.4 244.16C85 234.42 85 232 85 232a16 16 0 0 0-28-10.58s-7.88 8.58-11.6 17.19a162.09 162.09 0 0 0 11 150.06C59 393 59 395 58.42 399.5c-2.73 14.11-7.51 39-10 51.91a24 24 0 0 0 8 22.92l.46.39A24.34 24.34 0 0 0 72 480a23.42 23.42 0 0 0 9-1.79l53.51-20.65a8.05 8.05 0 0 1 5.72 0c21.07 7.84 43 12 63.78 12a176 176 0 0 0 74.91-16.66c5.46-2.56 14-5.34 19-11.12a15 15 0 0 0 1.95-16.39z\"},\"child\":[]}]})(props);\n};\nexport function IoCheckboxOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M352 176 217.6 336 160 272\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"384\",\"height\":\"384\",\"x\":\"64\",\"y\":\"64\",\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"rx\":\"48\",\"ry\":\"48\"},\"child\":[]}]})(props);\n};\nexport function IoCheckboxSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M48 48v416h416V48zm170 312.38-80.6-89.57 23.79-21.41 56 62.22L350 153.46 374.54 174z\"},\"child\":[]}]})(props);\n};\nexport function IoCheckbox (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M400 48H112a64.07 64.07 0 0 0-64 64v288a64.07 64.07 0 0 0 64 64h288a64.07 64.07 0 0 0 64-64V112a64.07 64.07 0 0 0-64-64zm-35.75 138.29-134.4 160a16 16 0 0 1-12 5.71h-.27a16 16 0 0 1-11.89-5.3l-57.6-64a16 16 0 1 1 23.78-21.4l45.29 50.32 122.59-145.91a16 16 0 0 1 24.5 20.58z\"},\"child\":[]}]})(props);\n};\nexport function IoCheckmarkCircleOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M448 256c0-106-86-192-192-192S64 150 64 256s86 192 192 192 192-86 192-192z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M352 176 217.6 336 160 272\"},\"child\":[]}]})(props);\n};\nexport function IoCheckmarkCircleSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 48C141.31 48 48 141.31 48 256s93.31 208 208 208 208-93.31 208-208S370.69 48 256 48zm-38 312.38-80.6-89.57 23.79-21.41 56 62.22L350 153.46 374.54 174z\"},\"child\":[]}]})(props);\n};\nexport function IoCheckmarkCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 48C141.31 48 48 141.31 48 256s93.31 208 208 208 208-93.31 208-208S370.69 48 256 48zm108.25 138.29-134.4 160a16 16 0 0 1-12 5.71h-.27a16 16 0 0 1-11.89-5.3l-57.6-64a16 16 0 1 1 23.78-21.4l45.29 50.32 122.59-145.91a16 16 0 0 1 24.5 20.58z\"},\"child\":[]}]})(props);\n};\nexport function IoCheckmarkDoneCircleOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M448 256c0-106-86-192-192-192S64 150 64 256s86 192 192 192 192-86 192-192z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M368 192 256.13 320l-47.95-48m-16.23 48L144 272m161.71-80-51.55 59\"},\"child\":[]}]})(props);\n};\nexport function IoCheckmarkDoneCircleSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 48C141.31 48 48 141.31 48 256s93.31 208 208 208 208-93.31 208-208S370.69 48 256 48zm48.19 121.42 24.1 21.06-73.61 84.1-24.1-23.06zM191.93 342.63 121.37 272 144 249.37 214.57 320zm65 .79L185.55 272l22.64-22.62 47.16 47.21 111.13-127.17 24.1 21.06z\"},\"child\":[]}]})(props);\n};\nexport function IoCheckmarkDoneCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M258.9 48C141.92 46.42 46.42 141.92 48 258.9c1.56 112.19 92.91 203.54 205.1 205.1 117 1.6 212.48-93.9 210.88-210.88C462.44 140.91 371.09 49.56 258.9 48zm-16.79 192.47 51.55-59a16 16 0 0 1 24.1 21.06l-51.55 59a16 16 0 1 1-24.1-21.06zm-38.86 90.85a16 16 0 0 1-22.62 0l-47.95-48a16 16 0 1 1 22.64-22.62l48 48a16 16 0 0 1-.07 22.62zm176.8-128.79-111.88 128a16 16 0 0 1-11.51 5.47h-.54a16 16 0 0 1-11.32-4.69l-47.94-48a16 16 0 1 1 22.64-22.62l29.8 29.83a8 8 0 0 0 11.68-.39l95-108.66a16 16 0 0 1 24.1 21.06z\"},\"child\":[]}]})(props);\n};\nexport function IoCheckmarkDoneOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M464 128 240 384l-96-96m0 96-96-96m320-160L232 284\"},\"child\":[]}]})(props);\n};\nexport function IoCheckmarkDoneSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"square\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"44\",\"d\":\"M465 127 241 384l-92-92m-9 93-93-93m316-165L236 273\"},\"child\":[]}]})(props);\n};\nexport function IoCheckmarkDone (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M464 128 240 384l-96-96m0 96-96-96m320-160L232 284\"},\"child\":[]}]})(props);\n};\nexport function IoCheckmarkOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M416 128 192 384l-96-96\"},\"child\":[]}]})(props);\n};\nexport function IoCheckmarkSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"square\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"44\",\"d\":\"M416 128 192 384l-96-96\"},\"child\":[]}]})(props);\n};\nexport function IoCheckmark (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M416 128 192 384l-96-96\"},\"child\":[]}]})(props);\n};\nexport function IoChevronBackCircleOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M256 64C150 64 64 150 64 256s86 192 192 192 192-86 192-192S362 64 256 64z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"m296 352-96-96 96-96\"},\"child\":[]}]})(props);\n};\nexport function IoChevronBackCircleSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 48C141.13 48 48 141.13 48 256s93.13 208 208 208 208-93.13 208-208S370.87 48 256 48zm62.63 304L296 374.63 177.37 256 296 137.37 318.63 160l-96 96z\"},\"child\":[]}]})(props);\n};\nexport function IoChevronBackCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 48C141.13 48 48 141.13 48 256s93.13 208 208 208 208-93.13 208-208S370.87 48 256 48zm35.31 292.69a16 16 0 1 1-22.62 22.62l-96-96a16 16 0 0 1 0-22.62l96-96a16 16 0 0 1 22.62 22.62L206.63 256z\"},\"child\":[]}]})(props);\n};\nexport function IoChevronBackOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"48\",\"d\":\"M328 112 184 256l144 144\"},\"child\":[]}]})(props);\n};\nexport function IoChevronBackSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"square\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"48\",\"d\":\"M328 112 184 256l144 144\"},\"child\":[]}]})(props);\n};\nexport function IoChevronBack (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"48\",\"d\":\"M328 112 184 256l144 144\"},\"child\":[]}]})(props);\n};\nexport function IoChevronDownCircleOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M256 64C150 64 64 150 64 256s86 192 192 192 192-86 192-192S362 64 256 64z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"m352 216-96 96-96-96\"},\"child\":[]}]})(props);\n};\nexport function IoChevronDownCircleSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 464c114.87 0 208-93.13 208-208S370.87 48 256 48 48 141.13 48 256s93.13 208 208 208zm-96-270.63 96 96 96-96L374.63 216 256 334.63 137.37 216z\"},\"child\":[]}]})(props);\n};\nexport function IoChevronDownCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M464 256c0-114.87-93.13-208-208-208S48 141.13 48 256s93.13 208 208 208 208-93.13 208-208zm-100.69-28.69-96 96a16 16 0 0 1-22.62 0l-96-96a16 16 0 0 1 22.62-22.62L256 289.37l84.69-84.68a16 16 0 0 1 22.62 22.62z\"},\"child\":[]}]})(props);\n};\nexport function IoChevronDownOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"48\",\"d\":\"m112 184 144 144 144-144\"},\"child\":[]}]})(props);\n};\nexport function IoChevronDownSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"square\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"48\",\"d\":\"m112 184 144 144 144-144\"},\"child\":[]}]})(props);\n};\nexport function IoChevronDown (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"48\",\"d\":\"m112 184 144 144 144-144\"},\"child\":[]}]})(props);\n};\nexport function IoChevronForwardCircleOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M64 256c0 106 86 192 192 192s192-86 192-192S362 64 256 64 64 150 64 256z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"m216 352 96-96-96-96\"},\"child\":[]}]})(props);\n};\nexport function IoChevronForwardCircleSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 48C141.13 48 48 141.13 48 256s93.13 208 208 208 208-93.13 208-208S370.87 48 256 48zm-40 326.63L193.37 352l96-96-96-96L216 137.37 334.63 256z\"},\"child\":[]}]})(props);\n};\nexport function IoChevronForwardCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M48 256c0 114.87 93.13 208 208 208s208-93.13 208-208S370.87 48 256 48 48 141.13 48 256zm257.37 0-84.68-84.69a16 16 0 0 1 22.62-22.62l96 96a16 16 0 0 1 0 22.62l-96 96a16 16 0 0 1-22.62-22.62z\"},\"child\":[]}]})(props);\n};\nexport function IoChevronForwardOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"48\",\"d\":\"m184 112 144 144-144 144\"},\"child\":[]}]})(props);\n};\nexport function IoChevronForwardSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"square\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"48\",\"d\":\"m184 112 144 144-144 144\"},\"child\":[]}]})(props);\n};\nexport function IoChevronForward (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"48\",\"d\":\"m184 112 144 144-144 144\"},\"child\":[]}]})(props);\n};\nexport function IoChevronUpCircleOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"m352 296-96-96-96 96\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M256 64C150 64 64 150 64 256s86 192 192 192 192-86 192-192S362 64 256 64z\"},\"child\":[]}]})(props);\n};\nexport function IoChevronUpCircleSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 48C141.13 48 48 141.13 48 256s93.13 208 208 208 208-93.13 208-208S370.87 48 256 48zm96 270.63-96-96-96 96L137.37 296 256 177.37 374.63 296z\"},\"child\":[]}]})(props);\n};\nexport function IoChevronUpCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 48C141.13 48 48 141.13 48 256s93.13 208 208 208 208-93.13 208-208S370.87 48 256 48zm107.31 259.31a16 16 0 0 1-22.62 0L256 222.63l-84.69 84.68a16 16 0 0 1-22.62-22.62l96-96a16 16 0 0 1 22.62 0l96 96a16 16 0 0 1 0 22.62z\"},\"child\":[]}]})(props);\n};\nexport function IoChevronUpOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"48\",\"d\":\"m112 328 144-144 144 144\"},\"child\":[]}]})(props);\n};\nexport function IoChevronUpSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"square\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"48\",\"d\":\"m112 328 144-144 144 144\"},\"child\":[]}]})(props);\n};\nexport function IoChevronUp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"48\",\"d\":\"m112 328 144-144 144 144\"},\"child\":[]}]})(props);\n};\nexport function IoClipboardOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M336 64h32a48 48 0 0 1 48 48v320a48 48 0 0 1-48 48H144a48 48 0 0 1-48-48V112a48 48 0 0 1 48-48h32\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"160\",\"height\":\"64\",\"x\":\"176\",\"y\":\"32\",\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"rx\":\"26.13\",\"ry\":\"26.13\"},\"child\":[]}]})(props);\n};\nexport function IoClipboardSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M420 48h-68V28a12 12 0 0 0-12-12H172a12 12 0 0 0-12 12v20H92a12 12 0 0 0-12 12v424a12 12 0 0 0 12 12h328a12 12 0 0 0 12-12V60a12 12 0 0 0-12-12zm-84.13 64H176.13V80h159.74z\"},\"child\":[]}]})(props);\n};\nexport function IoClipboard (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M368 48h-11.41a8 8 0 0 1-7.44-5.08A42.18 42.18 0 0 0 309.87 16H202.13a42.18 42.18 0 0 0-39.28 26.92 8 8 0 0 1-7.44 5.08H144a64 64 0 0 0-64 64v320a64 64 0 0 0 64 64h224a64 64 0 0 0 64-64V112a64 64 0 0 0-64-64zm-48.13 64H192.13a16 16 0 0 1 0-32h127.74a16 16 0 0 1 0 32z\"},\"child\":[]}]})(props);\n};\nexport function IoCloseCircleOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M448 256c0-106-86-192-192-192S64 150 64 256s86 192 192 192 192-86 192-192z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M320 320 192 192m0 128 128-128\"},\"child\":[]}]})(props);\n};\nexport function IoCloseCircleSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 48C141.31 48 48 141.31 48 256s93.31 208 208 208 208-93.31 208-208S370.69 48 256 48zm86.63 272L320 342.63l-64-64-64 64L169.37 320l64-64-64-64L192 169.37l64 64 64-64L342.63 192l-64 64z\"},\"child\":[]}]})(props);\n};\nexport function IoCloseCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 48C141.31 48 48 141.31 48 256s93.31 208 208 208 208-93.31 208-208S370.69 48 256 48zm75.31 260.69a16 16 0 1 1-22.62 22.62L256 278.63l-52.69 52.68a16 16 0 0 1-22.62-22.62L233.37 256l-52.68-52.69a16 16 0 0 1 22.62-22.62L256 233.37l52.69-52.68a16 16 0 0 1 22.62 22.62L278.63 256z\"},\"child\":[]}]})(props);\n};\nexport function IoCloseOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M368 368 144 144m224 0L144 368\"},\"child\":[]}]})(props);\n};\nexport function IoCloseSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M400 145.49 366.51 112 256 222.51 145.49 112 112 145.49 222.51 256 112 366.51 145.49 400 256 289.49 366.51 400 400 366.51 289.49 256 400 145.49z\"},\"child\":[]}]})(props);\n};\nexport function IoClose (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m289.94 256 95-95A24 24 0 0 0 351 127l-95 95-95-95a24 24 0 0 0-34 34l95 95-95 95a24 24 0 1 0 34 34l95-95 95 95a24 24 0 0 0 34-34z\"},\"child\":[]}]})(props);\n};\nexport function IoCloudCircleOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M333.88 240.59a8 8 0 0 1-6.66-6.66C320.68 192.78 290.82 168 256 168c-32.37 0-53.93 21.22-62.48 43.58a7.92 7.92 0 0 1-6.16 5c-27.67 4.35-50.82 22.56-51.35 54.3-.52 31.53 25.51 57.11 57 57.11H326c27.5 0 50-13.72 50-44 0-27.22-22-40.41-42.12-43.4z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M448 256c0-106-86-192-192-192S64 150 64 256s86 192 192 192 192-86 192-192z\"},\"child\":[]}]})(props);\n};\nexport function IoCloudCircleSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 48C141.13 48 48 141.13 48 256s93.13 208 208 208 208-93.13 208-208S370.87 48 256 48zm70 280H196c-33 0-60-23-60-56 0-34.21 26-53 56-56 7.28-23.9 29.5-48 64-48 36.5 0 67.55 27.23 72 72 21.49 1.12 48 14.09 48 44 0 30.28-22.5 44-50 44z\"},\"child\":[]}]})(props);\n};\nexport function IoCloudCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 48C141.13 48 48 141.13 48 256s93.13 208 208 208 208-93.13 208-208S370.87 48 256 48zm70 280H193.05c-31.53 0-57.56-25.58-57-57.11.53-31.74 23.68-49.95 51.35-54.3a7.92 7.92 0 0 0 6.16-5C202.07 189.22 223.63 168 256 168c33.17 0 61.85 22.49 70.14 60.21a17.75 17.75 0 0 0 13.18 13.43C357.79 246.05 376 259.21 376 284c0 30.28-22.5 44-50 44z\"},\"child\":[]}]})(props);\n};\nexport function IoCloudDoneOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M400 240c-8.89-89.54-71-144-144-144-69 0-113.44 48.2-128 96-60 6-112 43.59-112 112 0 66 54 112 120 112h260c55 0 100-27.44 100-88 0-59.82-53-85.76-96-88z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M317 208 209.2 336 163 284.8\"},\"child\":[]}]})(props);\n};\nexport function IoCloudDoneSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M414.25 225.36c-6.52-41.18-24.05-76.4-51.11-102.46A153.57 153.57 0 0 0 256 80c-35.5 0-68.24 11.69-94.68 33.8a156.42 156.42 0 0 0-45.22 63.61c-30.26 4.81-57.45 17.18-77.38 35.37C13.39 235.88 0 267.42 0 304c0 36 14.38 68.88 40.49 92.59C65.64 419.43 99.56 432 136 432h260c32.37 0 60.23-8.57 80.59-24.77C499.76 388.78 512 361.39 512 328c0-61.85-48.44-95.34-97.75-102.64zm-204.63 135-69.22-76.7 23.76-21.44 44.62 49.46 106.29-126.2 24.47 20.61z\"},\"child\":[]}]})(props);\n};\nexport function IoCloudDone (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M424.44 227.25a16 16 0 0 1-12.12-12.39c-7.68-36.68-24.45-68.15-49.18-92A153.57 153.57 0 0 0 256 80c-35.5 0-68.24 11.69-94.68 33.8a156.24 156.24 0 0 0-42 56 16 16 0 0 1-11.37 9.15c-27 5.62-51.07 17.34-69.18 33.87C13.39 235.88 0 267.42 0 304c0 36 14.38 68.88 40.49 92.59C65.64 419.43 99.56 432 136 432h260c32.37 0 60.23-8.57 80.59-24.77C499.76 388.78 512 361.39 512 328c0-57.57-42-90.58-87.56-100.75zm-95.2-8.94-107.8 128a16 16 0 0 1-12 5.69h-.27a16 16 0 0 1-11.88-5.28l-45.9-50.87c-5.77-6.39-5.82-16.33.3-22.4a16 16 0 0 1 23.16.63l33.9 37.58 96-114a16 16 0 1 1 24.48 20.62z\"},\"child\":[]}]})(props);\n};\nexport function IoCloudDownloadOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M320 336h76c55 0 100-21.21 100-75.6s-53-73.47-96-75.6C391.11 99.74 329 48 256 48c-69 0-113.44 45.79-128 91.2-60 5.7-112 35.88-112 98.4S70 336 136 336h56m0 64.1 64 63.9 64-63.9M256 224v224.03\"},\"child\":[]}]})(props);\n};\nexport function IoCloudDownloadSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M472.7 189.5c-15.76-10-36.21-16.79-58.59-19.54-6.65-39.1-24.22-72.52-51.27-97.26C334.15 46.45 296.21 32 256 32c-35.35 0-68 11.08-94.37 32a149.7 149.7 0 0 0-45.29 60.42c-30.67 4.32-57 14.61-76.71 30C13.7 174.83 0 203.56 0 237.6 0 305 55.92 352 136 352h104V208h32v144h124c72.64 0 116-34.24 116-91.6 0-30.05-13.59-54.57-39.3-70.9zM240 419.42 191.98 371l-22.61 23L256 480l86.63-86-22.61-23L272 419.42V352h-32v67.42z\"},\"child\":[]}]})(props);\n};\nexport function IoCloudDownload (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M472.7 189.5c-13.26-8.43-29.83-14.56-48.08-17.93A16 16 0 0 1 412 159.28c-7.86-34.51-24.6-64.13-49.15-86.58C334.15 46.45 296.21 32 256 32c-35.35 0-68 11.08-94.37 32a150.13 150.13 0 0 0-41.95 52.83A16.05 16.05 0 0 1 108 125.8c-27.13 4.9-50.53 14.68-68.41 28.7C13.7 174.83 0 203.56 0 237.6 0 305 55.93 352 136 352h104V224.45c0-8.61 6.62-16 15.23-16.43A16 16 0 0 1 272 224v128h124c72.64 0 116-34.24 116-91.6 0-30.05-13.59-54.57-39.3-70.9zM240 425.42l-36.7-36.64a16 16 0 0 0-22.6 22.65l64 63.89a16 16 0 0 0 22.6 0l64-63.89a16 16 0 0 0-22.6-22.65L272 425.42V352h-32z\"},\"child\":[]}]})(props);\n};\nexport function IoCloudOfflineOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M93.72 183.25C49.49 198.05 16 233.1 16 288c0 66 54 112 120 112h184.37m147.45-22.26C485.24 363.3 496 341.61 496 312c0-59.82-53-85.76-96-88-8.89-89.54-71-144-144-144-26.16 0-48.79 6.93-67.6 18.14\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M448 448 64 64\"},\"child\":[]}]})(props);\n};\nexport function IoCloudOfflineSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m41.37 64 22.628-22.628L470.627 448l-22.628 22.627zm-2.65 148.78C13.39 235.88 0 267.42 0 304c0 36 14.38 68.88 40.49 92.59C65.64 419.43 99.56 432 136 432h228.12L110.51 178.39c-28.01 5.39-53.09 17.33-71.79 34.39zm437.87 194.45C499.76 388.78 512 361.39 512 328c0-61.85-48.44-95.34-97.75-102.64-6.52-41.18-24.05-76.4-51.11-102.46A153.57 153.57 0 0 0 256 80c-30.47 0-58.9 8.62-83.07 25l302.82 302.86c.25-.21.57-.41.84-.63z\"},\"child\":[]}]})(props);\n};\nexport function IoCloudOffline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M448 464a15.92 15.92 0 0 1-11.31-4.69l-384-384a16 16 0 0 1 22.62-22.62l384 384A16 16 0 0 1 448 464zM38.72 196.78C13.39 219.88 0 251.42 0 288c0 36 14.38 68.88 40.49 92.59C65.64 403.43 99.56 416 136 416h192.8a8 8 0 0 0 5.66-13.66L100.88 168.76a8 8 0 0 0-8-2C72 173.15 53.4 183.38 38.72 196.78zm437.87 194.45C499.76 372.78 512 345.39 512 312c0-57.57-42-90.58-87.56-100.75a16 16 0 0 1-12.12-12.39c-7.68-36.68-24.45-68.15-49.18-92A153.57 153.57 0 0 0 256 64c-31.12 0-60.12 9-84.62 26.1a8 8 0 0 0-1.14 12.26L461.68 393.8a8 8 0 0 0 10.2.93q2.43-1.68 4.71-3.5z\"},\"child\":[]}]})(props);\n};\nexport function IoCloudOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M400 240c-8.89-89.54-71-144-144-144-69 0-113.44 48.2-128 96-60 6-112 43.59-112 112 0 66 54 112 120 112h260c55 0 100-27.44 100-88 0-59.82-53-85.76-96-88z\"},\"child\":[]}]})(props);\n};\nexport function IoCloudSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M396 432H136c-36.44 0-70.36-12.57-95.51-35.41C14.38 372.88 0 340 0 304c0-36.58 13.39-68.12 38.72-91.22 19.93-18.19 47.12-30.56 77.38-35.37a156.42 156.42 0 0 1 45.22-63.61C187.76 91.69 220.5 80 256 80a153.57 153.57 0 0 1 107.14 42.9c27.06 26.06 44.59 61.28 51.11 102.46C463.56 232.66 512 266.15 512 328c0 33.39-12.24 60.78-35.41 79.23C456.23 423.43 428.37 432 396 432z\"},\"child\":[]}]})(props);\n};\nexport function IoCloudUploadOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M320 367.79h76c55 0 100-29.21 100-83.6s-53-81.47-96-83.6c-8.89-85.06-71-136.8-144-136.8-69 0-113.44 45.79-128 91.2-60 5.7-112 43.88-112 106.4s54 106.4 120 106.4h56\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"m320 255.79-64-64-64 64m64 192.42V207.79\"},\"child\":[]}]})(props);\n};\nexport function IoCloudUploadSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M473.66 210c-16.56-12.3-37.7-20.75-59.52-24-6.62-39.18-24.21-72.67-51.3-97.45-28.69-26.3-66.63-40.76-106.84-40.76-35.35 0-68 11.08-94.37 32.05a149.61 149.61 0 0 0-45.32 60.49c-29.94 4.6-57.12 16.68-77.39 34.55C13.46 197.33 0 227.24 0 261.39c0 34.52 14.49 66 40.79 88.76 25.12 21.69 58.94 33.64 95.21 33.64h104V230.42l-48 48-22.63-22.63L256 169.17l86.63 86.62L320 278.42l-48-48v153.37h124c31.34 0 59.91-8.8 80.45-24.77 23.26-18.1 35.55-44 35.55-74.83 0-29.94-13.26-55.61-38.34-74.19zM240 383.79h32v80.41h-32z\"},\"child\":[]}]})(props);\n};\nexport function IoCloudUpload (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M473.66 210c-14-10.38-31.2-18-49.36-22.11a16.11 16.11 0 0 1-12.19-12.22c-7.8-34.75-24.59-64.55-49.27-87.13C334.15 62.25 296.21 47.79 256 47.79c-35.35 0-68 11.08-94.37 32.05a150.07 150.07 0 0 0-42.06 53 16 16 0 0 1-11.31 8.87c-26.75 5.4-50.9 16.87-69.34 33.12C13.46 197.33 0 227.24 0 261.39c0 34.52 14.49 66 40.79 88.76 25.12 21.69 58.94 33.64 95.21 33.64h104V230.42l-36.69 36.69a16 16 0 0 1-23.16-.56c-5.8-6.37-5.24-16.3.85-22.39l63.69-63.68a16 16 0 0 1 22.62 0L331 244.14c6.28 6.29 6.64 16.6.39 22.91a16 16 0 0 1-22.68.06L272 230.42v153.37h124c31.34 0 59.91-8.8 80.45-24.77 23.26-18.1 35.55-44 35.55-74.83 0-29.94-13.26-55.61-38.34-74.19zM240 448.21a16 16 0 1 0 32 0v-64.42h-32z\"},\"child\":[]}]})(props);\n};\nexport function IoCloud (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M396 432H136c-36.44 0-70.36-12.57-95.51-35.41C14.38 372.88 0 340 0 304c0-36.58 13.39-68.12 38.72-91.22 18.11-16.53 42.22-28.25 69.18-33.87a16 16 0 0 0 11.37-9.15 156.24 156.24 0 0 1 42.05-56C187.76 91.69 220.5 80 256 80a153.57 153.57 0 0 1 107.14 42.9c24.73 23.81 41.5 55.28 49.18 92a16 16 0 0 0 12.12 12.39C470 237.42 512 270.43 512 328c0 33.39-12.24 60.78-35.41 79.23C456.23 423.43 428.37 432 396 432z\"},\"child\":[]}]})(props);\n};\nexport function IoCloudyNightOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M388.31 272c47.75 0 89.77-27.77 107.69-68.92-14.21 6.18-30.9 8.61-47.38 8.61A116.31 116.31 0 0 1 332.31 95.38c0-16.48 2.43-33.17 8.61-47.38C299.77 65.92 272 107.94 272 155.69a116.31 116.31 0 0 0 3.44 28.18\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M90.61 306.85A16.07 16.07 0 0 0 104 293.6C116.09 220.17 169.63 176 232 176c57.93 0 96.62 37.75 112.2 77.74a15.84 15.84 0 0 0 12.2 9.87c50 8.15 91.6 41.54 91.6 99.59 0 59.4-48.6 100.8-108 100.8H106c-49.5 0-90-24.7-90-79.2 0-48.47 38.67-72.22 74.61-77.95z\"},\"child\":[]}]})(props);\n};\nexport function IoCloudyNightSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M340 480H106c-29.5 0-54.92-7.83-73.53-22.64C11.23 440.44 0 415.35 0 384.8c0-29.44 12.09-54.25 35-71.74 14.55-11.13 33.41-18.87 53.2-22 6.06-36.92 21.92-68.53 46.29-92A139.82 139.82 0 0 1 232 160c32.33 0 62.15 10.65 86.24 30.79a142.41 142.41 0 0 1 40.83 57.05c27.18 4.48 51.59 15.68 69.56 32.08C451.77 301 464 329.82 464 363.2c0 32.85-13.13 62.87-37 84.52-22.89 20.82-53.8 32.28-87 32.28zm41.55-260.07c26.5 6.93 50 19.32 68.65 36.34q3.89 3.56 7.47 7.34c25.41-18.4 45.47-44.92 54.33-71.38-16.24 7.07-35.31 9.85-54.15 9.85-73.42 0-115.93-42.51-115.93-115.93 0-18.84 2.78-37.91 9.85-54.15-40.41 13.53-81 53.19-92.52 98.13a162.61 162.61 0 0 1 79.52 36.12 173 173 0 0 1 42.78 53.68z\"},\"child\":[]}]})(props);\n};\nexport function IoCloudyNight (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M340 480H106c-29.5 0-54.92-7.83-73.53-22.64C11.23 440.44 0 415.35 0 384.8c0-29.44 12.09-54.25 35-71.74 12.1-9.26 27.2-16.17 43.33-20.05a16 16 0 0 0 11.81-12.21c7.15-32.54 22.25-60.49 44.33-81.75A139.82 139.82 0 0 1 232 160c32.33 0 62.15 10.65 86.24 30.79a142.22 142.22 0 0 1 37.65 49.54 16.06 16.06 0 0 0 11.12 9c24 5.22 45.42 15.78 61.62 30.56C451.77 301 464 329.82 464 363.2c0 32.85-13.13 62.87-37 84.52-22.89 20.82-53.8 32.28-87 32.28zm170.53-270.21a16.34 16.34 0 0 0-1.35-15.8 16 16 0 0 0-19.57-5.58c-10.7 4.65-24.48 7.17-39.92 7.28-55.3.4-101.38-45-101.38-100.31 0-15.75 2.48-29.84 7.18-40.76a16.3 16.3 0 0 0-1.85-16.33 16 16 0 0 0-19.1-5c-38.63 16.82-66.18 51.51-75.27 92.54a4 4 0 0 0 3.19 4.79 162.54 162.54 0 0 1 76.31 35.59 172.58 172.58 0 0 1 39.64 47.84 16.35 16.35 0 0 0 9.54 7.64c23.89 7.17 45.1 18.9 62.25 34.54q4.44 4.07 8.48 8.42a4 4 0 0 0 5.16.57 129.12 129.12 0 0 0 46.69-55.43z\"},\"child\":[]}]})(props);\n};\nexport function IoCloudyOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M100.18 241.19a15.93 15.93 0 0 0 13.37-13.25C126.6 145.59 186.34 96 256 96c64.69 0 107.79 42.36 124.92 87a16.11 16.11 0 0 0 12.53 10.18C449.36 202.06 496 239.21 496 304c0 66-54 112-120 112H116c-55 0-100-27.44-100-88 0-54.43 43.89-80.81 84.18-86.81z\"},\"child\":[]}]})(props);\n};\nexport function IoCloudySharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M376 432H116c-32.37 0-60.23-8.57-80.59-24.77C12.24 388.78 0 361.39 0 328c0-61.85 48.44-95.34 97.75-102.64 6.52-41.18 24-76.4 51.11-102.46A153.57 153.57 0 0 1 256 80c35.5 0 68.24 11.69 94.68 33.8a156.42 156.42 0 0 1 45.22 63.61c30.26 4.81 57.45 17.18 77.38 35.36C498.61 235.88 512 267.42 512 304c0 36-14.38 68.88-40.49 92.59C446.36 419.43 412.44 432 376 432z\"},\"child\":[]}]})(props);\n};\nexport function IoCloudy (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M376 432H116c-32.37 0-60.23-8.57-80.59-24.77C12.24 388.78 0 361.39 0 328c0-57.57 42-90.58 87.56-100.75a16 16 0 0 0 12.12-12.39c7.68-36.68 24.45-68.15 49.18-92A153.57 153.57 0 0 1 256 80c35.5 0 68.24 11.69 94.68 33.8a156.24 156.24 0 0 1 42.05 56 16 16 0 0 0 11.37 9.16c27 5.61 51.07 17.33 69.18 33.85C498.61 235.88 512 267.42 512 304c0 36-14.38 68.88-40.49 92.59C446.36 419.43 412.44 432 376 432z\"},\"child\":[]}]})(props);\n};\nexport function IoCodeDownloadOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M160 368 32 256l128-112m192 224 128-112-128-112M192 288.1l64 63.9 64-63.9M256 160v176.03\"},\"child\":[]}]})(props);\n};\nexport function IoCodeDownloadSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"square\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"42\",\"d\":\"M160 368 32 256l128-112m192 224 128-112-128-112M192 288.1l64 63.9 64-63.9M256 160v176.03\"},\"child\":[]}]})(props);\n};\nexport function IoCodeDownload (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"42\",\"d\":\"M160 368 32 256l128-112m192 224 128-112-128-112M192 288.1l64 63.9 64-63.9M256 160v176.03\"},\"child\":[]}]})(props);\n};\nexport function IoCodeOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M160 368 32 256l128-112m192 224 128-112-128-112\"},\"child\":[]}]})(props);\n};\nexport function IoCodeSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M161.98 397.63 0 256l161.98-141.63 27.65 31.61L64 256l125.63 110.02-27.65 31.61zm188.04 0-27.65-31.61L448 256 322.37 145.98l27.65-31.61L512 256 350.02 397.63z\"},\"child\":[]}]})(props);\n};\nexport function IoCodeSlashOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M160 368 32 256l128-112m192 224 128-112-128-112m-48-48-96 320\"},\"child\":[]}]})(props);\n};\nexport function IoCodeSlashSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M161.98 397.63 0 256l161.98-141.63 27.65 31.61L64 256l125.63 110.02-27.65 31.61zm188.04 0-27.65-31.61L448 256 322.37 145.98l27.65-31.61L512 256 350.02 397.63zM222.15 442 182 430.08 289.85 70 330 81.92 222.15 442z\"},\"child\":[]}]})(props);\n};\nexport function IoCodeSlash (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M160 389a20.91 20.91 0 0 1-13.82-5.2l-128-112a21 21 0 0 1 0-31.6l128-112a21 21 0 0 1 27.66 31.61L63.89 256l109.94 96.19A21 21 0 0 1 160 389zm192 0a21 21 0 0 1-13.84-36.81L448.11 256l-109.94-96.19a21 21 0 0 1 27.66-31.61l128 112a21 21 0 0 1 0 31.6l-128 112A20.89 20.89 0 0 1 352 389zm-144 48a21 21 0 0 1-20.12-27l96-320a21 21 0 1 1 40.23 12l-96 320A21 21 0 0 1 208 437z\"},\"child\":[]}]})(props);\n};\nexport function IoCodeWorkingOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"256\",\"r\":\"26\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"346\",\"cy\":\"256\",\"r\":\"26\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"166\",\"cy\":\"256\",\"r\":\"26\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M160 368 32 256l128-112m192 224 128-112-128-112\"},\"child\":[]}]})(props);\n};\nexport function IoCodeWorkingSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"256\",\"r\":\"26\",\"strokeLinecap\":\"square\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"10\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"346\",\"cy\":\"256\",\"r\":\"26\",\"strokeLinecap\":\"square\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"10\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"166\",\"cy\":\"256\",\"r\":\"26\",\"strokeLinecap\":\"square\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"10\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"square\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"42\",\"d\":\"M160 368 32 256l128-112m192 224 128-112-128-112\"},\"child\":[]}]})(props);\n};\nexport function IoCodeWorking (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"256\",\"r\":\"26\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"10\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"346\",\"cy\":\"256\",\"r\":\"26\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"10\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"166\",\"cy\":\"256\",\"r\":\"26\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"10\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"42\",\"d\":\"M160 368 32 256l128-112m192 224 128-112-128-112\"},\"child\":[]}]})(props);\n};\nexport function IoCode (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M160 389a20.91 20.91 0 0 1-13.82-5.2l-128-112a21 21 0 0 1 0-31.6l128-112a21 21 0 0 1 27.66 31.61L63.89 256l109.94 96.19A21 21 0 0 1 160 389zm192 0a21 21 0 0 1-13.84-36.81L448.11 256l-109.94-96.19a21 21 0 0 1 27.66-31.61l128 112a21 21 0 0 1 0 31.6l-128 112A20.89 20.89 0 0 1 352 389z\"},\"child\":[]}]})(props);\n};\nexport function IoCogOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m456.7 242.27-26.08-4.2a8 8 0 0 1-6.6-6.82c-.5-3.2-1-6.41-1.7-9.51a8.08 8.08 0 0 1 3.9-8.62l23.09-12.82a8.05 8.05 0 0 0 3.9-9.92l-4-11a7.94 7.94 0 0 0-9.4-5l-25.89 5a8 8 0 0 1-8.59-4.11q-2.25-4.2-4.8-8.41a8.16 8.16 0 0 1 .7-9.52l17.29-19.94a8 8 0 0 0 .3-10.62l-7.49-9a7.88 7.88 0 0 0-10.5-1.51l-22.69 13.63a8 8 0 0 1-9.39-.9c-2.4-2.11-4.9-4.21-7.4-6.22a8 8 0 0 1-2.5-9.11l9.4-24.75A8 8 0 0 0 365 78.77l-10.2-5.91a8 8 0 0 0-10.39 2.21l-16.64 20.84a7.15 7.15 0 0 1-8.5 2.5s-5.6-2.3-9.8-3.71A8 8 0 0 1 304 87l.4-26.45a8.07 8.07 0 0 0-6.6-8.42l-11.59-2a8.07 8.07 0 0 0-9.1 5.61l-8.6 25.05a8 8 0 0 1-7.79 5.41h-9.8a8.07 8.07 0 0 1-7.79-5.41l-8.6-25.05a8.07 8.07 0 0 0-9.1-5.61l-11.59 2a8.07 8.07 0 0 0-6.6 8.42l.4 26.45a8 8 0 0 1-5.49 7.71c-2.3.9-7.3 2.81-9.7 3.71-2.8 1-6.1.2-8.8-2.91l-16.51-20.34A8 8 0 0 0 156.75 73l-10.2 5.91a7.94 7.94 0 0 0-3.3 10.09l9.4 24.75a8.06 8.06 0 0 1-2.5 9.11c-2.5 2-5 4.11-7.4 6.22a8 8 0 0 1-9.39.9L111 116.14a8 8 0 0 0-10.5 1.51l-7.49 9a8 8 0 0 0 .3 10.62l17.29 19.94a8 8 0 0 1 .7 9.52q-2.55 4-4.8 8.41a8.11 8.11 0 0 1-8.59 4.11l-25.89-5a8 8 0 0 0-9.4 5l-4 11a8.05 8.05 0 0 0 3.9 9.92L85.58 213a7.94 7.94 0 0 1 3.9 8.62c-.6 3.2-1.2 6.31-1.7 9.51a8.08 8.08 0 0 1-6.6 6.82l-26.08 4.2a8.09 8.09 0 0 0-7.1 7.92v11.72a7.86 7.86 0 0 0 7.1 7.92l26.08 4.2a8 8 0 0 1 6.6 6.82c.5 3.2 1 6.41 1.7 9.51a8.08 8.08 0 0 1-3.9 8.62L62.49 311.7a8.05 8.05 0 0 0-3.9 9.92l4 11a7.94 7.94 0 0 0 9.4 5l25.89-5a8 8 0 0 1 8.59 4.11q2.25 4.2 4.8 8.41a8.16 8.16 0 0 1-.7 9.52l-17.29 19.96a8 8 0 0 0-.3 10.62l7.49 9a7.88 7.88 0 0 0 10.5 1.51l22.69-13.63a8 8 0 0 1 9.39.9c2.4 2.11 4.9 4.21 7.4 6.22a8 8 0 0 1 2.5 9.11l-9.4 24.75a8 8 0 0 0 3.3 10.12l10.2 5.91a8 8 0 0 0 10.39-2.21l16.79-20.64c2.1-2.6 5.5-3.7 8.2-2.6 3.4 1.4 5.7 2.2 9.9 3.61a8 8 0 0 1 5.49 7.71l-.4 26.45a8.07 8.07 0 0 0 6.6 8.42l11.59 2a8.07 8.07 0 0 0 9.1-5.61l8.6-25a8 8 0 0 1 7.79-5.41h9.8a8.07 8.07 0 0 1 7.79 5.41l8.6 25a8.07 8.07 0 0 0 9.1 5.61l11.59-2a8.07 8.07 0 0 0 6.6-8.42l-.4-26.45a8 8 0 0 1 5.49-7.71c4.2-1.41 7-2.51 9.6-3.51s5.8-1 8.3 2.1l17 20.94A8 8 0 0 0 355 439l10.2-5.91a7.93 7.93 0 0 0 3.3-10.12l-9.4-24.75a8.08 8.08 0 0 1 2.5-9.12c2.5-2 5-4.1 7.4-6.21a8 8 0 0 1 9.39-.9L401 395.66a8 8 0 0 0 10.5-1.51l7.49-9a8 8 0 0 0-.3-10.62l-17.29-19.94a8 8 0 0 1-.7-9.52q2.55-4.05 4.8-8.41a8.11 8.11 0 0 1 8.59-4.11l25.89 5a8 8 0 0 0 9.4-5l4-11a8.05 8.05 0 0 0-3.9-9.92l-23.09-12.82a7.94 7.94 0 0 1-3.9-8.62c.6-3.2 1.2-6.31 1.7-9.51a8.08 8.08 0 0 1 6.6-6.82l26.08-4.2a8.09 8.09 0 0 0 7.1-7.92V250a8.25 8.25 0 0 0-7.27-7.73zM256 112a143.82 143.82 0 0 1 139.38 108.12A16 16 0 0 1 379.85 240H274.61a16 16 0 0 1-13.91-8.09l-52.1-91.71a16 16 0 0 1 9.85-23.39A146.94 146.94 0 0 1 256 112zM112 256a144 144 0 0 1 43.65-103.41 16 16 0 0 1 25.17 3.47L233.06 248a16 16 0 0 1 0 15.87l-52.67 91.7a16 16 0 0 1-25.18 3.36A143.94 143.94 0 0 1 112 256zm144 144a146.9 146.9 0 0 1-38.19-4.95 16 16 0 0 1-9.76-23.44l52.58-91.55a16 16 0 0 1 13.88-8H379.9a16 16 0 0 1 15.52 19.88A143.84 143.84 0 0 1 256 400z\"},\"child\":[]}]})(props);\n};\nexport function IoCogSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M464 249.93a10.58 10.58 0 0 0-9.36-9.94L429 235.84a5.42 5.42 0 0 1-4.5-4.67c-.49-3.15-1-6.42-1.7-9.52a5.52 5.52 0 0 1 2.63-5.85l22.78-12.65a10.35 10.35 0 0 0 5-12.83l-3.95-10.9a10.32 10.32 0 0 0-12.13-6.51l-25.55 5a5.5 5.5 0 0 1-5.82-2.81c-1.49-2.79-3.11-5.63-4.8-8.42a5.6 5.6 0 0 1 .44-6.5l17-19.63a10.44 10.44 0 0 0 .39-13.77l-7.42-8.91a10.24 10.24 0 0 0-13.58-2l-22.37 13.43a5.39 5.39 0 0 1-6.39-.63c-2.47-2.17-4.95-4.26-7.37-6.19a5.45 5.45 0 0 1-1.72-6.21l9.26-24.4a10.35 10.35 0 0 0-4.31-13.07l-10.08-5.85a10.31 10.31 0 0 0-13.46 2.83L325 96.28a4.58 4.58 0 0 1-5.6 1.72c-.62-.25-5.77-2.36-9.78-3.7a5.42 5.42 0 0 1-3.74-5.23l.39-26.07a10.48 10.48 0 0 0-8.57-10.88l-11.45-2a10.45 10.45 0 0 0-11.75 7.17L266 82.1a5.42 5.42 0 0 1-5.36 3.65h-9.75a5.53 5.53 0 0 1-5.3-3.67l-8.46-24.67a10.46 10.46 0 0 0-11.77-7.25l-11.46 2a10.46 10.46 0 0 0-8.57 10.79l.4 26.16a5.45 5.45 0 0 1-3.86 5.25c-2.28.89-7.26 2.78-9.51 3.63-2 .72-4.19-.07-6-2.1l-16.26-20A10.3 10.3 0 0 0 156.69 73l-10.06 5.83A10.36 10.36 0 0 0 142.31 92l9.25 24.34a5.54 5.54 0 0 1-1.7 6.23c-2.43 2-4.92 4-7.4 6.22a5.38 5.38 0 0 1-6.35.64L114 115.74a10.39 10.39 0 0 0-13.61 2l-7.4 8.9a10.32 10.32 0 0 0 .37 13.76l17.09 19.6a5.42 5.42 0 0 1 .45 6.45c-1.71 2.72-3.34 5.58-4.82 8.44a5.53 5.53 0 0 1-5.86 2.82l-25.51-4.93a10.34 10.34 0 0 0-12.14 6.51l-4 10.88a10.37 10.37 0 0 0 5 12.85l22.78 12.65a5.39 5.39 0 0 1 2.65 5.92l-.23 1.24c-.53 2.8-1 5.45-1.47 8.27a5.48 5.48 0 0 1-4.46 4.64l-25.7 4.15A10.42 10.42 0 0 0 48 250.16v11.58A10.26 10.26 0 0 0 57.16 272l25.68 4.14a5.41 5.41 0 0 1 4.5 4.67c.49 3.16 1 6.42 1.7 9.52a5.52 5.52 0 0 1-2.63 5.85l-22.77 12.67a10.35 10.35 0 0 0-5 12.83l4 10.9a10.33 10.33 0 0 0 12.13 6.51l25.55-4.95a5.5 5.5 0 0 1 5.82 2.81c1.5 2.8 3.12 5.64 4.8 8.42a5.58 5.58 0 0 1-.44 6.5l-17 19.64a10.41 10.41 0 0 0-.5 13.76l7.41 8.91a10.24 10.24 0 0 0 13.58 2l22.37-13.43a5.39 5.39 0 0 1 6.39.63c2.48 2.17 5 4.26 7.37 6.19a5.45 5.45 0 0 1 1.72 6.21l-9.26 24.4a10.35 10.35 0 0 0 4.31 13.07l10.11 5.84a10.3 10.3 0 0 0 13.45-2.82L187 415.92c1.39-1.73 3.6-2.5 5.24-1.84 3.47 1.44 5.8 2.25 9.93 3.63a5.44 5.44 0 0 1 3.75 5.23l-.4 26.05a10.5 10.5 0 0 0 8.57 10.88l11.45 2a10.44 10.44 0 0 0 11.75-7.17l8.5-24.77a5.48 5.48 0 0 1 5.36-3.65h9.75a5.52 5.52 0 0 1 5.3 3.67l8.47 24.67a10.48 10.48 0 0 0 10 7.41 9.74 9.74 0 0 0 1.78-.16l11.47-2a10.46 10.46 0 0 0 8.56-10.79l-.4-26.16a5.43 5.43 0 0 1 3.75-5.2c3.84-1.29 6.53-2.33 8.91-3.24l.6-.24c3.06-1.06 4.53.14 5.47 1.31l16.75 20.63A10.3 10.3 0 0 0 355 439l10.07-5.83a10.35 10.35 0 0 0 4.31-13.1l-9.24-24.34a5.52 5.52 0 0 1 1.69-6.23c2.43-2 4.92-4 7.4-6.22a5.39 5.39 0 0 1 6.38-.62l22.39 13.4a10.39 10.39 0 0 0 13.61-2l7.4-8.9a10.31 10.31 0 0 0-.37-13.75l-17.06-19.67a5.42 5.42 0 0 1-.45-6.45c1.71-2.71 3.34-5.57 4.82-8.44a5.56 5.56 0 0 1 5.86-2.82l25.48 4.97a10.34 10.34 0 0 0 12.14-6.51l3.95-10.88a10.36 10.36 0 0 0-5-12.84l-22.8-12.67a5.4 5.4 0 0 1-2.61-5.89l.23-1.25c.53-2.8 1-5.44 1.47-8.26a5.48 5.48 0 0 1 4.46-4.64l25.7-4.14a10.43 10.43 0 0 0 9.17-10.28v-11.71zM171.59 361.27a135.12 135.12 0 0 1 .5-210.94l60 105.61zM256 391.11a133.75 133.75 0 0 1-48.49-9.05L268 276.79h121.22C379.21 341.45 323.29 391.11 256 391.11zm12.06-155.9-59.95-105.5a133.87 133.87 0 0 1 47.89-8.82c67.29 0 123.21 49.66 133.22 114.32z\"},\"child\":[]}]})(props);\n};\nexport function IoCog (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M464 249.93a10.58 10.58 0 0 0-9.36-9.94L429 235.84a5.42 5.42 0 0 1-4.5-4.67c-.49-3.15-1-6.42-1.7-9.52a5.52 5.52 0 0 1 2.63-5.85l22.78-12.65a10.35 10.35 0 0 0 5-12.83l-3.95-10.9a10.32 10.32 0 0 0-12.13-6.51l-25.55 5a5.51 5.51 0 0 1-5.82-2.81c-1.49-2.79-3.11-5.63-4.8-8.42a5.6 5.6 0 0 1 .44-6.5l17-19.64a10.42 10.42 0 0 0 .39-13.76l-7.42-8.91a10.24 10.24 0 0 0-13.58-2l-22.37 13.43a5.39 5.39 0 0 1-6.39-.63c-2.47-2.17-5-4.26-7.37-6.19a5.45 5.45 0 0 1-1.72-6.21l9.26-24.4a10.35 10.35 0 0 0-4.31-13.07l-10.09-5.89a10.3 10.3 0 0 0-13.45 2.83L325 96.28a4.6 4.6 0 0 1-5.6 1.72c-.61-.25-5.77-2.36-9.78-3.7a5.42 5.42 0 0 1-3.74-5.23l.39-26.07a10.48 10.48 0 0 0-8.57-10.88l-11.45-2a10.45 10.45 0 0 0-11.75 7.17L266 82.1a5.46 5.46 0 0 1-5.36 3.65h-9.75a5.5 5.5 0 0 1-5.3-3.67l-8.46-24.67a10.46 10.46 0 0 0-11.77-7.25l-11.47 2a10.46 10.46 0 0 0-8.56 10.79l.4 26.16a5.45 5.45 0 0 1-3.86 5.25c-2.29.89-7.26 2.79-9.52 3.63-2 .72-4.18-.07-5.94-2.1l-16.26-20A10.3 10.3 0 0 0 156.69 73l-10.06 5.83A10.36 10.36 0 0 0 142.31 92l9.25 24.34a5.54 5.54 0 0 1-1.7 6.23c-2.43 2-4.92 4-7.4 6.22a5.38 5.38 0 0 1-6.35.64L114 115.74a10.4 10.4 0 0 0-13.61 2L93 126.63a10.31 10.31 0 0 0 .37 13.75L110.45 160a5.42 5.42 0 0 1 .45 6.45c-1.71 2.72-3.34 5.58-4.82 8.44a5.53 5.53 0 0 1-5.86 2.82l-25.51-4.93a10.34 10.34 0 0 0-12.14 6.51l-4 10.88a10.38 10.38 0 0 0 5 12.85l22.78 12.65a5.39 5.39 0 0 1 2.65 5.92l-.24 1.27c-.52 2.79-1 5.43-1.46 8.24a5.48 5.48 0 0 1-4.46 4.64l-25.69 4.15A10.42 10.42 0 0 0 48 250.16v11.58A10.26 10.26 0 0 0 57.16 272l25.68 4.14a5.41 5.41 0 0 1 4.5 4.67c.49 3.16 1 6.42 1.7 9.52a5.52 5.52 0 0 1-2.63 5.85l-22.77 12.67a10.35 10.35 0 0 0-5 12.83l4 10.9a10.33 10.33 0 0 0 12.13 6.51l25.55-4.95a5.49 5.49 0 0 1 5.82 2.81c1.5 2.8 3.11 5.63 4.8 8.42a5.58 5.58 0 0 1-.44 6.5l-17 19.63a10.41 10.41 0 0 0-.5 13.77l7.41 8.91a10.23 10.23 0 0 0 13.58 2l22.37-13.43a5.39 5.39 0 0 1 6.39.63c2.48 2.17 5 4.26 7.37 6.19a5.47 5.47 0 0 1 1.73 6.21l-9.27 24.4a10.35 10.35 0 0 0 4.31 13.07l10.11 5.84a10.3 10.3 0 0 0 13.45-2.82L187 415.92c1.4-1.73 3.6-2.5 5.23-1.84 3.48 1.44 5.81 2.25 9.94 3.63a5.44 5.44 0 0 1 3.75 5.23l-.4 26.05a10.5 10.5 0 0 0 8.57 10.88l11.45 2a10.43 10.43 0 0 0 11.75-7.17l8.5-24.77a5.45 5.45 0 0 1 5.36-3.65h9.75a5.49 5.49 0 0 1 5.3 3.67l8.47 24.67a10.48 10.48 0 0 0 10 7.41 9.74 9.74 0 0 0 1.78-.16l11.47-2a10.46 10.46 0 0 0 8.56-10.79l-.4-26.16a5.43 5.43 0 0 1 3.75-5.2c3.84-1.29 6.54-2.33 8.91-3.25l.6-.23c3.1-1.07 4.6.23 5.47 1.31l16.75 20.63A10.3 10.3 0 0 0 355 439l10.07-5.83a10.35 10.35 0 0 0 4.31-13.1l-9.24-24.34a5.52 5.52 0 0 1 1.69-6.23c2.43-2 4.92-4 7.4-6.22a5.39 5.39 0 0 1 6.38-.62l22.39 13.4a10.39 10.39 0 0 0 13.61-2l7.4-8.9a10.31 10.31 0 0 0-.37-13.75l-17.06-19.67a5.42 5.42 0 0 1-.45-6.45c1.71-2.71 3.34-5.57 4.82-8.44a5.55 5.55 0 0 1 5.86-2.82l25.48 4.97a10.34 10.34 0 0 0 12.14-6.51l3.95-10.88a10.37 10.37 0 0 0-5-12.84l-22.8-12.67a5.4 5.4 0 0 1-2.61-5.89l.24-1.27c.52-2.79 1-5.43 1.46-8.24a5.48 5.48 0 0 1 4.46-4.64l25.69-4.14a10.43 10.43 0 0 0 9.18-10.28v-11.71zm-282.45 94a15.8 15.8 0 0 1-25.47 2.66 135.06 135.06 0 0 1 .42-181.65 15.81 15.81 0 0 1 25.5 2.77l45.65 80.35a15.85 15.85 0 0 1 0 15.74zM256 391.11a134.75 134.75 0 0 1-28.31-3 15.81 15.81 0 0 1-10.23-23.36l46-80a15.79 15.79 0 0 1 13.7-7.93h92.14a15.8 15.8 0 0 1 15.1 20.53c-17.49 54.32-68.4 93.76-128.4 93.76zm7.51-163.9L218 147.07a15.81 15.81 0 0 1 10.31-23.3 134 134 0 0 1 27.69-2.88c60 0 110.91 39.44 128.37 93.79a15.8 15.8 0 0 1-15.1 20.53h-92a15.78 15.78 0 0 1-13.76-8z\"},\"child\":[]}]})(props);\n};\nexport function IoColorFillOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M419.1 337.45a3.94 3.94 0 0 0-6.1 0c-10.5 12.4-45 46.55-45 77.66 0 27 21.5 48.89 48 48.89s48-22 48-48.89c0-31.11-34.3-65.26-44.9-77.66zM387 287.9 155.61 58.36a36 36 0 0 0-51 0l-5.15 5.15a36 36 0 0 0 0 51l52.89 52.89 57-57L56.33 263.2a28 28 0 0 0 .3 40l131.2 126a28.05 28.05 0 0 0 38.9-.1c37.8-36.6 118.3-114.5 126.7-122.9 5.8-5.8 18.2-7.1 28.7-7.1h.3a6.53 6.53 0 0 0 4.57-11.2z\"},\"child\":[]}]})(props);\n};\nexport function IoColorFillSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M416 320s-64 48-64 99.84c0 33.28 28.67 60.16 64 60.16s64-27 64-60.16C480 368 416 320 416 320zM144 32l-76 76 70 70L32 280l176 184 152.8-148.3L416 304zm24 116-39.6-41 15.88-15.89L184 132z\"},\"child\":[]}]})(props);\n};\nexport function IoColorFill (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M416 480c-35.29 0-64-29.11-64-64.88 0-33.29 28.67-65.4 44.08-82.64 1.87-2.1 3.49-3.91 4.68-5.31a19.94 19.94 0 0 1 30.55 0c1.13 1.31 2.63 3 4.36 4.93 15.5 17.3 44.33 49.51 44.33 83.05 0 35.74-28.71 64.85-64 64.85zm-17.77-203.36L166.89 47.22a52.1 52.1 0 0 0-73.6 0l-4.51 4.51a53.2 53.2 0 0 0-15.89 37.33A51.66 51.66 0 0 0 88.14 126l41.51 41.5L45 252a44.52 44.52 0 0 0-13 32 42.81 42.81 0 0 0 13.5 30.84l131.24 126a44 44 0 0 0 61.08-.18l124.11-120.28a15.6 15.6 0 0 1 8.23-4.29 69.21 69.21 0 0 1 11.93-.86h.3a22.53 22.53 0 0 0 15.84-38.59zM152.29 144.85l-41.53-41.52a20 20 0 0 1 0-28.34l5.16-5.15a20.07 20.07 0 0 1 28.39 0L186 111.21z\"},\"child\":[]}]})(props);\n};\nexport function IoColorFilterOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"184\",\"r\":\"120\",\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"344\",\"cy\":\"328\",\"r\":\"120\",\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"168\",\"cy\":\"328\",\"r\":\"120\",\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\"},\"child\":[]}]})(props);\n};\nexport function IoColorFilterSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 185a167.85 167.85 0 0 1 134.9-18.28C382.36 99.83 325.12 48 256 48S129.64 99.83 121.1 166.67A167.85 167.85 0 0 1 256 185zm80 146.73a167.51 167.51 0 0 1-52.37 118.08A135 135 0 0 0 344 464c75 0 136-61 136-136a136 136 0 0 0-59.06-112.08A168.53 168.53 0 0 1 336 331.73zm-52.42-125.54a167.87 167.87 0 0 1 49.36 89.89 136.14 136.14 0 0 0 58.06-95.7 135.87 135.87 0 0 0-107.43 5.81zM176.05 331.73a168.53 168.53 0 0 1-85-115.81A136 136 0 0 0 32 328c0 75 61 136 136 136a135 135 0 0 0 60.42-14.19 167.51 167.51 0 0 1-52.37-118.08zm3.01-35.65a167.87 167.87 0 0 1 49.36-89.89A135.87 135.87 0 0 0 121 200.38a136.14 136.14 0 0 0 58.06 95.7zm123.84 49.25a168.22 168.22 0 0 1-93.8 0A135.9 135.9 0 0 0 256 431.6a135.9 135.9 0 0 0 46.9-86.27zM209 311.62a136 136 0 0 0 94 0 135.93 135.93 0 0 0-47-87.22 135.93 135.93 0 0 0-47 87.22z\"},\"child\":[]}]})(props);\n};\nexport function IoColorFilter (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M253.72 202.53a4 4 0 0 0 4.56 0 151.88 151.88 0 0 1 128.44-20.41 4 4 0 0 0 5.15-4C388.8 105.86 329 48 256 48s-132.8 57.86-135.87 130.15a4 4 0 0 0 5.15 4 151.88 151.88 0 0 1 128.44 20.41zm151.59 10.03a152.53 152.53 0 0 1-83.08 108.23 4 4 0 0 0-2.28 3.69c0 1.17.05 2.34.05 3.52a151.58 151.58 0 0 1-47.15 109.94 4 4 0 0 0 .64 6.31A135.24 135.24 0 0 0 344 464c72.07 0 134.1-60.28 136-132.34a136.07 136.07 0 0 0-68.76-121.87 4 4 0 0 0-5.93 2.77z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M390.57 203.67a4 4 0 0 0-2.69-4.4 135.84 135.84 0 0 0-114.4 12.49 4 4 0 0 0-.64 6.29 151.92 151.92 0 0 1 44.47 81.4 4 4 0 0 0 5.94 2.72 136.29 136.29 0 0 0 67.32-98.5zM192 328c0-1.18 0-2.35.05-3.52a4 4 0 0 0-2.28-3.69 152.53 152.53 0 0 1-83.08-108.23 4 4 0 0 0-5.88-2.77 136.07 136.07 0 0 0-68.76 121.87C34 403.72 96 464 168.05 464a135.24 135.24 0 0 0 70.46-19.75 4 4 0 0 0 .64-6.31A151.58 151.58 0 0 1 192 328z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M168 192a135.34 135.34 0 0 0-43.88 7.27 4 4 0 0 0-2.69 4.4 136.29 136.29 0 0 0 67.32 98.5 4 4 0 0 0 5.94-2.72 151.92 151.92 0 0 1 44.47-81.4 4 4 0 0 0-.64-6.29A135.18 135.18 0 0 0 168 192zm88 144a151.44 151.44 0 0 1-42.72-6.12 4 4 0 0 0-5.15 4 135.69 135.69 0 0 0 45.18 95.4 4 4 0 0 0 5.38 0 135.69 135.69 0 0 0 45.18-95.4 4 4 0 0 0-5.15-4A151.44 151.44 0 0 1 256 336zm46.57-27.67a135.94 135.94 0 0 0-43.87-81.58 4.06 4.06 0 0 0-5.4 0 135.94 135.94 0 0 0-43.87 81.58 4 4 0 0 0 2.69 4.4 136.06 136.06 0 0 0 87.76 0 4 4 0 0 0 2.69-4.4z\"},\"child\":[]}]})(props);\n};\nexport function IoColorPaletteOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M430.11 347.9c-6.6-6.1-16.3-7.6-24.6-9-11.5-1.9-15.9-4-22.6-10-14.3-12.7-14.3-31.1 0-43.8l30.3-26.9c46.4-41 46.4-108.2 0-149.2-34.2-30.1-80.1-45-127.8-45-55.7 0-113.9 20.3-158.8 60.1-83.5 73.8-83.5 194.7 0 268.5 41.5 36.7 97.5 55 152.9 55.4h1.7c55.4 0 110-17.9 148.8-52.4 14.4-12.7 11.99-36.6.1-47.7z\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"144\",\"cy\":\"208\",\"r\":\"32\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"152\",\"cy\":\"311\",\"r\":\"32\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"224\",\"cy\":\"144\",\"r\":\"32\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"367\",\"r\":\"48\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"328\",\"cy\":\"144\",\"r\":\"32\"},\"child\":[]}]})(props);\n};\nexport function IoColorPaletteSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M416 352c-12.6-.84-21-4-28-12-14-16-14-36 5.49-52.48l32.82-29.14c50.27-44.41 50.27-117.21 0-161.63C389.26 64.14 339.54 48 287.86 48c-60.34 0-123.39 22-172 65.11-90.46 80-90.46 210.92 0 290.87 45 39.76 105.63 59.59 165.64 60h1.84c60 0 119.07-19.5 161.2-56.77C464 390 464 385 444.62 355.56 440 348 431 353 416 352zM112 208a32 32 0 1 1 32 32 32 32 0 0 1-32-32zm40 135a32 32 0 1 1 32-32 32 32 0 0 1-32 32zm40-199a32 32 0 1 1 32 32 32 32 0 0 1-32-32zm64 271a48 48 0 1 1 48-48 48 48 0 0 1-48 48zm72-239a32 32 0 1 1 32-32 32 32 0 0 1-32 32z\"},\"child\":[]}]})(props);\n};\nexport function IoColorPalette (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m441 336.2-.06-.05c-9.93-9.18-22.78-11.34-32.16-12.92l-.69-.12c-9.05-1.49-10.48-2.5-14.58-6.17-2.44-2.17-5.35-5.65-5.35-9.94s2.91-7.77 5.34-9.94l30.28-26.87c25.92-22.91 40.2-53.66 40.2-86.59s-14.25-63.68-40.2-86.6c-35.89-31.59-85-49-138.37-49C223.72 48 162 71.37 116 112.11c-43.87 38.77-68 90.71-68 146.24s24.16 107.47 68 146.23c21.75 19.24 47.49 34.18 76.52 44.42a266.17 266.17 0 0 0 86.87 15h1.81c61 0 119.09-20.57 159.39-56.4 9.7-8.56 15.15-20.83 15.34-34.56.21-14.17-5.37-27.95-14.93-36.84zM112 208a32 32 0 1 1 32 32 32 32 0 0 1-32-32zm40 135a32 32 0 1 1 32-32 32 32 0 0 1-32 32zm40-199a32 32 0 1 1 32 32 32 32 0 0 1-32-32zm64 271a48 48 0 1 1 48-48 48 48 0 0 1-48 48zm72-239a32 32 0 1 1 32-32 32 32 0 0 1-32 32z\"},\"child\":[]}]})(props);\n};\nexport function IoColorWandOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"rect\",\"attr\":{\"width\":\"63.03\",\"height\":\"378.2\",\"x\":\"280.48\",\"y\":\"122.9\",\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"rx\":\"31.52\",\"transform\":\"rotate(-45 312.002 311.994)\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M178.38 178.38a31.64 31.64 0 0 0 0 44.75L223.25 268 268 223.25l-44.87-44.87a31.64 31.64 0 0 0-44.75 0z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M48 192h48M90.18 90.18l33.94 33.94M192 48v48m101.82-5.82-33.94 33.94M124.12 259.88l-33.94 33.94\"},\"child\":[]}]})(props);\n};\nexport function IoColorWandSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m133.441 200.647 67.197-67.196 78.142 78.142-67.196 67.196zM301.41 234.21l-67.19 67.2L412 480l68-68-178.59-177.79zM32 176h80v32H32zm35.624-85.75 22.627-22.628 56.569 56.569-22.627 22.627zM176 32h32v80h-32zm61.32 92.195 56.569-56.569 22.627 22.627-56.569 56.569zM67.62 293.887l56.569-56.569 22.627 22.627-56.569 56.569z\"},\"child\":[]}]})(props);\n};\nexport function IoColorWand (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M96 208H48c-8.8 0-16-7.2-16-16s7.2-16 16-16h48c8.8 0 16 7.2 16 16s-7.2 16-16 16zm28.1-67.9c-4.2 0-8.3-1.7-11.3-4.7l-33.9-33.9c-6.2-6.2-6.2-16.4 0-22.6s16.4-6.2 22.6 0l33.9 33.9c6.3 6.2 6.3 16.4 0 22.6-3 3-7 4.7-11.3 4.7zM192 112c-8.8 0-16-7.2-16-16V48c0-8.8 7.2-16 16-16s16 7.2 16 16v48c0 8.8-7.2 16-16 16zm67.9 28.1c-8.8 0-16-7.2-16-16 0-4.2 1.7-8.3 4.7-11.3l33.9-33.9c6.2-6.2 16.4-6.2 22.6 0 6.2 6.2 6.2 16.4 0 22.6l-33.9 33.9c-3 3-7.1 4.7-11.3 4.7zM90.2 309.8c-8.8 0-16-7.2-16-16 0-4.2 1.7-8.3 4.7-11.3l33.9-33.9c6.2-6.2 16.4-6.2 22.6 0s6.2 16.4 0 22.6l-33.9 33.9c-3 3-7.1 4.7-11.3 4.7zm144-142.8c-18.4-18.7-48.5-19-67.2-.7s-19 48.5-.7 67.2l.7.7 39.5 39.5c3.1 3.1 8.2 3.1 11.3 0l55.9-55.9c3.1-3.1 3.1-8.2 0-11.3L234.2 167zM457 389.8 307.6 240.4c-3.1-3.1-8.2-3.1-11.3 0l-55.9 55.9c-3.1 3.1-3.1 8.2 0 11.3L389.8 457c18.4 18.7 48.5 19 67.2.7 18.7-18.4 19-48.5.7-67.2-.2-.2-.4-.5-.7-.7z\"},\"child\":[]}]})(props);\n};\nexport function IoCompassOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M448 256c0-106-86-192-192-192S64 150 64 256s86 192 192 192 192-86 192-192z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m350.67 150.93-117.2 46.88a64 64 0 0 0-35.66 35.66l-46.88 117.2a8 8 0 0 0 10.4 10.4l117.2-46.88a64 64 0 0 0 35.66-35.66l46.88-117.2a8 8 0 0 0-10.4-10.4zM256 280a24 24 0 1 1 24-24 24 24 0 0 1-24 24z\"},\"child\":[]}]})(props);\n};\nexport function IoCompassSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"256\",\"r\":\"24\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M256 48C141.31 48 48 141.31 48 256s93.31 208 208 208 208-93.31 208-208S370.69 48 256 48zm48 256-160 64 64-160 160-64z\"},\"child\":[]}]})(props);\n};\nexport function IoCompass (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"256\",\"r\":\"24\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M256 48C141.31 48 48 141.31 48 256s93.31 208 208 208 208-93.31 208-208S370.69 48 256 48zm105.07 113.33-46.88 117.2a64 64 0 0 1-35.66 35.66l-117.2 46.88a8 8 0 0 1-10.4-10.4l46.88-117.2a64 64 0 0 1 35.66-35.66l117.2-46.88a8 8 0 0 1 10.4 10.4z\"},\"child\":[]}]})(props);\n};\nexport function IoConstructOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M436.67 184.11a27.17 27.17 0 0 1-38.3 0l-22.48-22.49a27.15 27.15 0 0 1 0-38.29l50.89-50.89a.85.85 0 0 0-.26-1.38C393.68 57 351.09 64.15 324.05 91c-25.88 25.69-27.35 64.27-17.87 98a27 27 0 0 1-7.67 27.14l-173 160.76a40.76 40.76 0 1 0 57.57 57.54l162.15-173.3a27 27 0 0 1 26.77-7.7c33.46 8.94 71.49 7.26 97.07-17.94 27.49-27.08 33.42-74.94 20.1-102.33a.85.85 0 0 0-1.36-.22z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M224 284c-17.48-17-25.49-24.91-31-30.29a18.24 18.24 0 0 1-3.33-21.35 20.76 20.76 0 0 1 3.5-4.62l15.68-15.29a18.66 18.66 0 0 1 5.63-3.87 18.11 18.11 0 0 1 20 3.62c5.45 5.29 15.43 15 33.41 32.52m49.18 46.58c40.95 38.1 90.62 83.27 110 99.41a13.46 13.46 0 0 1 .94 19.92L394.63 444a14 14 0 0 1-20.29-.76c-16.53-19.18-61.09-67.11-99.27-107\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"m17.34 193.5 29.41-28.74a4.71 4.71 0 0 1 3.41-1.35 4.85 4.85 0 0 1 3.41 1.35h0a9.86 9.86 0 0 0 8.19 2.77c3.83-.42 7.92-1.6 10.57-4.12 6-5.8-.94-17.23 4.34-24.54a207 207 0 0 1 19.78-22.6c6-5.88 29.84-28.32 69.9-44.45A107.31 107.31 0 0 1 206.67 64c22.59 0 40 10 46.26 15.67a89.54 89.54 0 0 1 10.28 11.64 78.92 78.92 0 0 0-9.21-2.77 68.82 68.82 0 0 0-20-1.26c-13.33 1.09-29.41 7.26-38 14-13.9 11-19.87 25.72-20.81 44.71-.68 14.12 2.72 22.1 36.1 55.49a6.6 6.6 0 0 1-.34 9.16l-18.22 18a6.88 6.88 0 0 1-9.54.09c-21.94-21.94-36.65-33.09-45-38.16s-15.07-6.5-18.3-6.85a30.85 30.85 0 0 0-18.27 3.87 11.39 11.39 0 0 0-2.64 2 14.14 14.14 0 0 0 .42 20.08l1.71 1.6a4.63 4.63 0 0 1 0 6.64L71.73 246.6a4.71 4.71 0 0 1-3.41 1.4 4.86 4.86 0 0 1-3.41-1.35l-47.57-46.43a4.88 4.88 0 0 1 0-6.72z\"},\"child\":[]}]})(props);\n};\nexport function IoConstructSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m497.14 111.38-81.09 80.84-48.58-48.41L448.56 63c-45.22-22-108.65-22.09-146.2 15.35-35.32 35.2-39.73 90.61-22.54 134.2L99.57 391.37a12 12 0 0 0 0 17l52.27 52.11a12 12 0 0 0 17 0l180-180.5c43.16 16.21 98 11.64 132.74-23 37.5-37.45 37.42-100.34 15.56-145.6z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m365.45 308.62-71.83 72 75.53 79.92a10.88 10.88 0 0 0 15.65.21l60-60.46a11 11 0 0 0-.24-15.69zM119 212c0-4.87-4-9.33-7.45-12.78l-.25-.24-1.54-1.47a1.06 1.06 0 0 1-.26-.8 16.16 16.16 0 0 1 9.52-2c1.27.13 5.91.9 12.4 4.91 3.38 2.09 32.63 30.23 43.93 40.7a11 11 0 0 0 .14 15.35l7.43 7.86 65.66-65.17-8.25-7.84a10.87 10.87 0 0 0-15.31-.06c-23-24.68-29-35.45-31-42.45-4.42-15.47 4.14-28 14-36 5.84-4.62 17.88-8.08 29-9a52.72 52.72 0 0 1 11.61.6c3.47.5 6.3 1.14 7.39 1.4a68.51 68.51 0 0 1 11 4l12-19a88.38 88.38 0 0 0-13.4-17.7 115.05 115.05 0 0 0-5.19-5.1c-7.78-7.15-28-19.2-54.59-19.2a117.38 117.38 0 0 0-44.77 8.82c-37.44 15.34-61.88 36.25-73.11 47.35l-.07.07A219.55 219.55 0 0 0 67 128.56c-5.35 7.53-4.77 15.84-4.38 21.34 0 .32 0 .67.07 1a18.41 18.41 0 0 0-10.78-3.5A18 18 0 0 0 39 152.73L2 189.62a6.79 6.79 0 0 0 0 9.6L65 262a6.72 6.72 0 0 0 9.5 0l37.06-37c3.44-3.44 7.44-8.14 7.44-13z\"},\"child\":[]}]})(props);\n};\nexport function IoConstruct (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M503.58 126.2a16.85 16.85 0 0 0-27.07-4.55l-51.15 51.15a11.15 11.15 0 0 1-15.66 0l-22.48-22.48a11.17 11.17 0 0 1 0-15.67l50.88-50.89a16.85 16.85 0 0 0-5.27-27.4c-39.71-17-89.08-7.45-120 23.29-26.81 26.61-34.83 68-22 113.7a11 11 0 0 1-3.16 11.1L114.77 365.1a56.76 56.76 0 1 0 80.14 80.18L357 272.08a11 11 0 0 1 10.9-3.17c45 12 86 4 112.43-22 15.2-15 25.81-36.17 29.89-59.71 3.83-22.2 1.41-44.44-6.64-61z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M437.33 378.41c-13.94-11.59-43.72-38.4-74.07-66.22l-66.07 70.61c28.24 30 53.8 57.85 65 70.88l.07.08A30 30 0 0 0 383.72 464h1.1a30.11 30.11 0 0 0 21-8.62l.07-.07 33.43-33.37a29.46 29.46 0 0 0-2-43.53zM118.54 214.55a20.48 20.48 0 0 0-3-10.76 2.76 2.76 0 0 1 2.62-4.22h.06c.84.09 5.33.74 11.7 4.61 4.73 2.87 18.23 12.08 41.73 35.54a34.23 34.23 0 0 0 7.22 22.12l66.23-61.55a33.73 33.73 0 0 0-21.6-9.2 2.65 2.65 0 0 1-.21-.26l-.65-.69-24.54-33.84a28.45 28.45 0 0 1-4-26.11 35.23 35.23 0 0 1 11.78-16.35c5.69-4.41 18.53-9.72 29.44-10.62a52.92 52.92 0 0 1 15.19.94 65.57 65.57 0 0 1 7.06 2.13 15.46 15.46 0 0 0 2.15.63 16 16 0 0 0 16.38-25.06c-.26-.35-1.32-1.79-2.89-3.73a91.85 91.85 0 0 0-9.6-10.36c-8.15-7.36-29.27-19.77-57-19.77a123.13 123.13 0 0 0-46.3 9c-38.37 15.45-63.47 36.58-75.01 47.79l-.09.09A222.14 222.14 0 0 0 63.7 129.5a27 27 0 0 0-4.7 11.77 7.33 7.33 0 0 1-7.71 6.17H50.2a20.65 20.65 0 0 0-14.59 5.9L6.16 182.05l-.32.32a20.89 20.89 0 0 0-.24 28.72c.19.2.37.39.57.58L53.67 258a21 21 0 0 0 14.65 6 20.65 20.65 0 0 0 14.59-5.9l29.46-28.79a20.51 20.51 0 0 0 6.17-14.76z\"},\"child\":[]}]})(props);\n};\nexport function IoContractOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M304 416V304h112m-101.8 10.23L432 432M208 96v112H96m101.8-10.23L80 80m336 128H304V96m10.23 101.8L432 80M96 304h112v112m-10.23-101.8L80 432\"},\"child\":[]}]})(props);\n};\nexport function IoContractSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"square\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M304 416V304h112m-101.8 10.23L432 432M208 96v112H96m101.8-10.23L80 80m336 128H304V96m10.23 101.8L432 80M96 304h112v112m-10.23-101.8L80 432\"},\"child\":[]}]})(props);\n};\nexport function IoContract (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M304 416V304h112m-101.8 10.23L432 432M208 96v112H96m101.8-10.23L80 80m336 128H304V96m10.23 101.8L432 80M96 304h112v112m-10.23-101.8L80 432\"},\"child\":[]}]})(props);\n};\nexport function IoContrastOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"256\",\"r\":\"208\",\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M256 464c-114.88 0-208-93.12-208-208S141.12 48 256 48z\"},\"child\":[]}]})(props);\n};\nexport function IoContrastSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 32C132.29 32 32 132.29 32 256s100.29 224 224 224 224-100.29 224-224S379.71 32 256 32zM128.72 383.28A180 180 0 0 1 256 76v360a178.82 178.82 0 0 1-127.28-52.72z\"},\"child\":[]}]})(props);\n};\nexport function IoContrast (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 32A224 224 0 0 0 97.61 414.39 224 224 0 1 0 414.39 97.61 222.53 222.53 0 0 0 256 32zM64 256c0-105.87 86.13-192 192-192v384c-105.87 0-192-86.13-192-192z\"},\"child\":[]}]})(props);\n};\nexport function IoCopyOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"rect\",\"attr\":{\"width\":\"336\",\"height\":\"336\",\"x\":\"128\",\"y\":\"128\",\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"rx\":\"57\",\"ry\":\"57\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"m383.5 128 .5-24a56.16 56.16 0 0 0-56-56H112a64.19 64.19 0 0 0-64 64v216a56.16 56.16 0 0 0 56 56h24\"},\"child\":[]}]})(props);\n};\nexport function IoCopySharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M456 480H136a24 24 0 0 1-24-24V128a16 16 0 0 1 16-16h328a24 24 0 0 1 24 24v320a24 24 0 0 1-24 24z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M112 80h288V56a24 24 0 0 0-24-24H60a28 28 0 0 0-28 28v316a24 24 0 0 0 24 24h24V112a32 32 0 0 1 32-32z\"},\"child\":[]}]})(props);\n};\nexport function IoCopy (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M408 480H184a72 72 0 0 1-72-72V184a72 72 0 0 1 72-72h224a72 72 0 0 1 72 72v224a72 72 0 0 1-72 72z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M160 80h235.88A72.12 72.12 0 0 0 328 32H104a72 72 0 0 0-72 72v224a72.12 72.12 0 0 0 48 67.88V160a80 80 0 0 1 80-80z\"},\"child\":[]}]})(props);\n};\nexport function IoCreateOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M384 224v184a40 40 0 0 1-40 40H104a40 40 0 0 1-40-40V168a40 40 0 0 1 40-40h167.48\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M459.94 53.25a16.06 16.06 0 0 0-23.22-.56L424.35 65a8 8 0 0 0 0 11.31l11.34 11.32a8 8 0 0 0 11.34 0l12.06-12c6.1-6.09 6.67-16.01.85-22.38zM399.34 90 218.82 270.2a9 9 0 0 0-2.31 3.93L208.16 299a3.91 3.91 0 0 0 4.86 4.86l24.85-8.35a9 9 0 0 0 3.93-2.31L422 112.66a9 9 0 0 0 0-12.66l-9.95-10a9 9 0 0 0-12.71 0z\"},\"child\":[]}]})(props);\n};\nexport function IoCreateSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M464.37 49.2a22.07 22.07 0 0 0-31.88-.76l-18.31 18.25 31.18 31.1 18-17.91a22.16 22.16 0 0 0 1.01-30.68zM252.76 336H176v-76.76l9.4-9.38L323.54 112H48v352h352V188.46L262.14 326.6l-9.38 9.4zM400 143.16l32.79-32.86-31.09-31.09L368.85 112H400v31.16z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M208 304h31.49L400 143.16V112h-31.15L208 272.51V304z\"},\"child\":[]}]})(props);\n};\nexport function IoCreate (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M459.94 53.25a16.06 16.06 0 0 0-23.22-.56L424.35 65a8 8 0 0 0 0 11.31l11.34 11.32a8 8 0 0 0 11.34 0l12.06-12c6.1-6.09 6.67-16.01.85-22.38zM399.34 90 218.82 270.2a9 9 0 0 0-2.31 3.93L208.16 299a3.91 3.91 0 0 0 4.86 4.86l24.85-8.35a9 9 0 0 0 3.93-2.31L422 112.66a9 9 0 0 0 0-12.66l-9.95-10a9 9 0 0 0-12.71 0z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M386.34 193.66 264.45 315.79A41.08 41.08 0 0 1 247.58 326l-25.9 8.67a35.92 35.92 0 0 1-44.33-44.33l8.67-25.9a41.08 41.08 0 0 1 10.19-16.87l122.13-121.91a8 8 0 0 0-5.65-13.66H104a56 56 0 0 0-56 56v240a56 56 0 0 0 56 56h240a56 56 0 0 0 56-56V199.31a8 8 0 0 0-13.66-5.65z\"},\"child\":[]}]})(props);\n};\nexport function IoCropOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M144 48v272a48 48 0 0 0 48 48h272\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M368 304V192a48 48 0 0 0-48-48H208m160 224v96M144 144H48\"},\"child\":[]}]})(props);\n};\nexport function IoCropSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M166 346V32h-44v90H32v44h90v224h224v90h44v-90h90v-44H166z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M346 320h44V122H192v44h154v154z\"},\"child\":[]}]})(props);\n};\nexport function IoCrop (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M458 346H192a26 26 0 0 1-26-26V54a22 22 0 0 0-44 0v68H54a22 22 0 0 0 0 44h68v154a70.08 70.08 0 0 0 70 70h154v68a22 22 0 0 0 44 0v-68h68a22 22 0 0 0 0-44z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M214 166h106a26 26 0 0 1 26 26v106a22 22 0 0 0 44 0V192a70.08 70.08 0 0 0-70-70H214a22 22 0 0 0 0 44z\"},\"child\":[]}]})(props);\n};\nexport function IoCubeOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M448 341.37V170.61A32 32 0 0 0 432.11 143l-152-88.46a47.94 47.94 0 0 0-48.24 0L79.89 143A32 32 0 0 0 64 170.61v170.76A32 32 0 0 0 79.89 369l152 88.46a48 48 0 0 0 48.24 0l152-88.46A32 32 0 0 0 448 341.37z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"m69 153.99 187 110 187-110m-187 310v-200\"},\"child\":[]}]})(props);\n};\nexport function IoCubeSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M48 170v196.92L240 480V284L48 170zm224 310 192-113.08V170L272 284zm176-122.36zM448 144 256 32 64 144l192 112 192-112z\"},\"child\":[]}]})(props);\n};\nexport function IoCube (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M440.9 136.3a4 4 0 0 0 0-6.91L288.16 40.65a64.14 64.14 0 0 0-64.33 0L71.12 129.39a4 4 0 0 0 0 6.91L254 243.88a4 4 0 0 0 4.06 0zM54 163.51a4 4 0 0 0-6 3.49v173.89a48 48 0 0 0 23.84 41.39L234 479.51a4 4 0 0 0 6-3.46V274.3a4 4 0 0 0-2-3.46zM272 275v201a4 4 0 0 0 6 3.46l162.15-97.23A48 48 0 0 0 464 340.89V167a4 4 0 0 0-6-3.45l-184 108a4 4 0 0 0-2 3.45z\"},\"child\":[]}]})(props);\n};\nexport function IoCutOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"circle\",\"attr\":{\"cx\":\"104\",\"cy\":\"152\",\"r\":\"56\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"104\",\"cy\":\"360\",\"r\":\"56\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"square\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"m157 175-11 15 37 15s3.46-6.42 7-10z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M154.17 334.43 460 162c-2.5-6.7-28-12-64-4-29.12 6.47-121.16 29.05-159.16 56.05C205.85 236.06 227 272 192 298c-25.61 19-44.43 22.82-44.43 22.82zm190.3-56.19L295 306.67c14.23 6.74 65.54 33.27 117 36.33 14.92.89 30 .39 39-6z\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"240\",\"r\":\"32\",\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\"},\"child\":[]}]})(props);\n};\nexport function IoCutSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M480 128h-48l-198.94 70.46-59.13-31.59a72.16 72.16 0 1 0-25.69 41.47l52.2 31.72L192 277l-43.64 26.76a71.74 71.74 0 1 0 24.79 38L480 160zm-376.52 64a40 40 0 1 1 40-40 40 40 0 0 1-40 40zm0 208a40 40 0 1 1 40-40 40 40 0 0 1-40 40zm152-144a16 16 0 1 1 16-16 16 16 0 0 1-16 16z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m343.79 259.87-83.74 48.18L432 368h47.99l.01-32-136.21-76.13z\"},\"child\":[]}]})(props);\n};\nexport function IoCut (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M103.48 224a71.64 71.64 0 0 0 44.76-15.66l41.5 16.89 6.82-12.63a39.15 39.15 0 0 1 4.32-6.37l14.22-14.42-41.17-24.94A72 72 0 1 0 103.48 224zm0-112a40 40 0 1 1-40 40 40 40 0 0 1 40-40z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m480 169-5.52-12.58c-4.48-10.42-14.74-16-32.78-17.85-10.12-1-26.95-1.24-49.69 3.81-20 4.45-122.14 28.2-164.95 58.62-20.25 14.39-24.06 33.67-27.06 49.16-2.78 14.14-5 25.31-18 35-15 11.14-27.27 16.38-33.58 18.6a71.74 71.74 0 1 0 24.79 38zm-224.52 87a16 16 0 1 1 16-16 16 16 0 0 1-16 16zm-152 144a40 40 0 1 1 40-40 40 40 0 0 1-40 40z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m343.79 259.87-83.74 48.18 27.63 13.08 3.62 1.74C310 331.92 359.74 356 410.53 359c3.89.23 7.47.34 10.78.34C442 359.31 453 354 459.75 350L480 336z\"},\"child\":[]}]})(props);\n};\nexport function IoDesktopOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"rect\",\"attr\":{\"width\":\"448\",\"height\":\"320\",\"x\":\"32\",\"y\":\"64\",\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"rx\":\"32\",\"ry\":\"32\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"m304 448-8-64h-80l-8 64h96z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M368 448H144\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M32 304v48a32.09 32.09 0 0 0 32 32h384a32.09 32.09 0 0 0 32-32v-48zm224 64a16 16 0 1 1 16-16 16 16 0 0 1-16 16z\"},\"child\":[]}]})(props);\n};\nexport function IoDesktopSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M480 48H32a16 16 0 0 0-16 16v320a16 16 0 0 0 16 16h168v32h-72v32h256v-32h-72v-32h168a16 16 0 0 0 16-16V64a16 16 0 0 0-16-16zm-20 36v216H52V84zM240.13 354.08a16 16 0 1 1 13.79 13.79 16 16 0 0 1-13.79-13.79z\"},\"child\":[]}]})(props);\n};\nexport function IoDesktop (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 352a48.05 48.05 0 0 0 48 48h133.88l-4 32H144a16 16 0 0 0 0 32h224a16 16 0 0 0 0-32h-49.88l-4-32H448a48.05 48.05 0 0 0 48-48v-48H16zm240-16a16 16 0 1 1-16 16 16 16 0 0 1 16-16zM496 96a48.05 48.05 0 0 0-48-48H64a48.05 48.05 0 0 0-48 48v192h480z\"},\"child\":[]}]})(props);\n};\nexport function IoDiamondOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"m35.42 188.21 207.75 269.46a16.17 16.17 0 0 0 25.66 0l207.75-269.46a16.52 16.52 0 0 0 .95-18.75L407.06 55.71A16.22 16.22 0 0 0 393.27 48H118.73a16.22 16.22 0 0 0-13.79 7.71L34.47 169.46a16.52 16.52 0 0 0 .95 18.75zM48 176h416\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"m400 64-48 112-96-128M112 64l48 112 96-128m0 400-96-272m96 272 96-272\"},\"child\":[]}]})(props);\n};\nexport function IoDiamondSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M396.31 32H264l84.19 112.26L396.31 32zm-280.62 0 48.12 112.26L248 32H115.69zM256 74.67 192 160h128l-64-85.33zm166.95-23.61L376.26 160H488L422.95 51.06zm-333.9 0L23 160h112.74L89.05 51.06zM146.68 192H24l222.8 288h.53L146.68 192zm218.64 0L264.67 480h.53L488 192H365.32zm-35.93 0H182.61L256 400l73.39-208z\"},\"child\":[]}]})(props);\n};\nexport function IoDiamond (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M121.72 32a4 4 0 0 0-3.72 5.56l2.3 5.43 40.7 94.9a4 4 0 0 0 6.88.82L243 38.4a4 4 0 0 0-3.2-6.4zm298.21 26.06-41.28 96.37a4 4 0 0 0 3.68 5.57h101a4 4 0 0 0 3.4-6.11L427 57.53a4 4 0 0 0-7.07.53zM85 57.57l-59.71 96.32a4 4 0 0 0 3.4 6.11h101a4 4 0 0 0 3.67-5.58L92 58.1a4 4 0 0 0-7-.53zM393.27 32H267.82a1.94 1.94 0 0 0-1.56 3.11l79.92 106.46a1.94 1.94 0 0 0 3.34-.4L391.6 43l3.4-8.34a1.92 1.92 0 0 0-1.7-2.66zM239 448l-89.43-253.49A3.78 3.78 0 0 0 146 192H25.7a3.72 3.72 0 0 0-2.95 6l216 279.81a5.06 5.06 0 0 0 6.39 1.37 5 5 0 0 0 2.39-6.08zm247.3-256H366a3.75 3.75 0 0 0-3.54 2.51l-98.2 278.16a5.21 5.21 0 0 0 2.42 6.31 5.22 5.22 0 0 0 6.61-1.39L489.25 198a3.72 3.72 0 0 0-2.95-6zM259.2 78.93l56 74.67a4 4 0 0 1-3.2 6.4H200a4 4 0 0 1-3.2-6.4l56-74.67a4 4 0 0 1 6.4 0zm-7 310.31-67.7-191.91a4 4 0 0 1 3.77-5.33h135.46a4 4 0 0 1 3.77 5.33l-67.73 191.91a4 4 0 0 1-7.54 0z\"},\"child\":[]}]})(props);\n};\nexport function IoDiceOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M448 341.37V170.61A32 32 0 0 0 432.11 143l-152-88.46a47.94 47.94 0 0 0-48.24 0L79.89 143A32 32 0 0 0 64 170.61v170.76A32 32 0 0 0 79.89 369l152 88.46a48 48 0 0 0 48.24 0l152-88.46A32 32 0 0 0 448 341.37z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"m69 153.99 187 110 187-110m-187 310v-200\"},\"child\":[]},{\"tag\":\"ellipse\",\"attr\":{\"cx\":\"256\",\"cy\":\"152\",\"rx\":\"24\",\"ry\":\"16\"},\"child\":[]},{\"tag\":\"ellipse\",\"attr\":{\"cx\":\"208\",\"cy\":\"296\",\"rx\":\"16\",\"ry\":\"24\"},\"child\":[]},{\"tag\":\"ellipse\",\"attr\":{\"cx\":\"112\",\"cy\":\"328\",\"rx\":\"16\",\"ry\":\"24\"},\"child\":[]},{\"tag\":\"ellipse\",\"attr\":{\"cx\":\"304\",\"cy\":\"296\",\"rx\":\"16\",\"ry\":\"24\"},\"child\":[]},{\"tag\":\"ellipse\",\"attr\":{\"cx\":\"400\",\"cy\":\"240\",\"rx\":\"16\",\"ry\":\"24\"},\"child\":[]},{\"tag\":\"ellipse\",\"attr\":{\"cx\":\"304\",\"cy\":\"384\",\"rx\":\"16\",\"ry\":\"24\"},\"child\":[]},{\"tag\":\"ellipse\",\"attr\":{\"cx\":\"400\",\"cy\":\"328\",\"rx\":\"16\",\"ry\":\"24\"},\"child\":[]}]})(props);\n};\nexport function IoDiceSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M48 366.92 240 480V284L48 170zM192 288c8.84 0 16 10.75 16 24s-7.16 24-16 24-16-10.75-16-24 7.16-24 16-24zm-96 32c8.84 0 16 10.75 16 24s-7.16 24-16 24-16-10.75-16-24 7.16-24 16-24zm176-36v196l192-113.08V170zm48 140c-8.84 0-16-10.75-16-24s7.16-24 16-24 16 10.75 16 24-7.16 24-16 24zm0-88c-8.84 0-16-10.75-16-24s7.16-24 16-24 16 10.75 16 24-7.16 24-16 24zm96 32c-8.84 0-16-10.75-16-24s7.16-24 16-24 16 10.75 16 24-7.16 24-16 24zm0-88c-8.84 0-16-10.75-16-24s7.16-24 16-24 16 10.75 16 24-7.16 24-16 24zm32 77.64zM256 32 64 144l192 112 192-112zm0 120c-13.25 0-24-7.16-24-16s10.75-16 24-16 24 7.16 24 16-10.75 16-24 16z\"},\"child\":[]}]})(props);\n};\nexport function IoDice (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M440.88 129.37 288.16 40.62a64.14 64.14 0 0 0-64.33 0L71.12 129.37a4 4 0 0 0 0 6.9L254 243.85a4 4 0 0 0 4.06 0L440.9 136.27a4 4 0 0 0-.02-6.9zM256 152c-13.25 0-24-7.16-24-16s10.75-16 24-16 24 7.16 24 16-10.75 16-24 16zm-18 118.81L54 163.48a4 4 0 0 0-6 3.46v173.92a48 48 0 0 0 23.84 41.39L234 479.48a4 4 0 0 0 6-3.46V274.27a4 4 0 0 0-2-3.46zM96 368c-8.84 0-16-10.75-16-24s7.16-24 16-24 16 10.75 16 24-7.16 24-16 24zm96-32c-8.84 0-16-10.75-16-24s7.16-24 16-24 16 10.75 16 24-7.16 24-16 24zm266-172.49L274 271.56a4 4 0 0 0-2 3.45V476a4 4 0 0 0 6 3.46l162.15-97.23A48 48 0 0 0 464 340.86V167a4 4 0 0 0-6-3.49zM320 424c-8.84 0-16-10.75-16-24s7.16-24 16-24 16 10.75 16 24-7.16 24-16 24zm0-88c-8.84 0-16-10.75-16-24s7.16-24 16-24 16 10.75 16 24-7.16 24-16 24zm96 32c-8.84 0-16-10.75-16-24s7.16-24 16-24 16 10.75 16 24-7.16 24-16 24zm0-88c-8.84 0-16-10.75-16-24s7.16-24 16-24 16 10.75 16 24-7.16 24-16 24z\"},\"child\":[]}]})(props);\n};\nexport function IoDiscOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"256\",\"r\":\"208\",\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"256\",\"r\":\"96\",\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"256\",\"r\":\"32\"},\"child\":[]}]})(props);\n};\nexport function IoDiscSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"256\",\"r\":\"32\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M414.39 97.61A224 224 0 1 0 97.61 414.39 224 224 0 1 0 414.39 97.61zM256 336a80 80 0 1 1 80-80 80.09 80.09 0 0 1-80 80z\"},\"child\":[]}]})(props);\n};\nexport function IoDisc (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 176a80 80 0 1 0 80 80 80.09 80.09 0 0 0-80-80zm0 112a32 32 0 1 1 32-32 32 32 0 0 1-32 32z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M414.39 97.61A224 224 0 1 0 97.61 414.39 224 224 0 1 0 414.39 97.61zM256 368a112 112 0 1 1 112-112 112.12 112.12 0 0 1-112 112z\"},\"child\":[]}]})(props);\n};\nexport function IoDocumentAttachOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M208 64h66.75a32 32 0 0 1 22.62 9.37l141.26 141.26a32 32 0 0 1 9.37 22.62V432a48 48 0 0 1-48 48H192a48 48 0 0 1-48-48V304\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M288 72v120a32 32 0 0 0 32 32h120\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M160 80v152a23.69 23.69 0 0 1-24 24c-12 0-24-9.1-24-24V88c0-30.59 16.57-56 48-56s48 24.8 48 55.38v138.75c0 43-27.82 77.87-72 77.87s-72-34.86-72-77.87V144\"},\"child\":[]}]})(props);\n};\nexport function IoDocumentAttachSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M280 240a8 8 0 0 1-8-8V48h-57.25a65.42 65.42 0 0 0-6.5-9.81C196.72 23.88 179.59 16 160 16c-37.68 0-64 29.61-64 72v144c0 25 20.34 40 40 40a39.57 39.57 0 0 0 40-40V80h-32v152a7.75 7.75 0 0 1-8 8c-2.23 0-8-1.44-8-8V88c0-19.34 8.41-40 32-40 29.69 0 32 30.15 32 39.38v138.75c0 17.45-5.47 33.23-15.41 44.46C166.5 282 152.47 288 136 288s-30.5-6-40.59-17.41C85.47 259.36 80 243.58 80 226.13V144H48v82.13c0 51.51 33.19 89.63 80 93.53V468a12 12 0 0 0 12 12h312a12 12 0 0 0 12-12V240z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M308 208h146.31a2 2 0 0 0 1.42-3.41L307.41 56.27a2 2 0 0 0-3.41 1.42V204a4 4 0 0 0 4 4z\"},\"child\":[]}]})(props);\n};\nexport function IoDocumentAttach (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M460 240H320a48 48 0 0 1-48-48V52a4 4 0 0 0-4-4h-53.25a65.42 65.42 0 0 0-6.5-9.81C196.72 23.88 179.59 16 160 16c-37.68 0-64 29.61-64 72v144c0 25 20.34 40 40 40a39.57 39.57 0 0 0 40-40V80a16 16 0 0 0-32 0v152a7.75 7.75 0 0 1-8 8c-2.23 0-8-1.44-8-8V88c0-19.34 8.41-40 32-40 29.69 0 32 30.15 32 39.38v138.75c0 17.45-5.47 33.23-15.41 44.46C166.5 282 152.47 288 136 288s-30.5-6-40.59-17.41C85.47 259.36 80 243.58 80 226.13V144a16 16 0 0 0-32 0v82.13c0 51.51 33.19 89.63 80 93.53V432a64 64 0 0 0 64 64h208a64 64 0 0 0 64-64V244a4 4 0 0 0-4-4z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M320 208h129.81a2 2 0 0 0 1.41-3.41L307.41 60.78a2 2 0 0 0-3.41 1.41V192a16 16 0 0 0 16 16z\"},\"child\":[]}]})(props);\n};\nexport function IoDocumentLockOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M288 304v-18c0-16.63-14.26-30-32-30s-32 13.37-32 30v18\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M304 416h-96a32 32 0 0 1-32-32v-48a32 32 0 0 1 32-32h96a32 32 0 0 1 32 32v48a32 32 0 0 1-32 32z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M416 221.25V416a48 48 0 0 1-48 48H144a48 48 0 0 1-48-48V96a48 48 0 0 1 48-48h98.75a32 32 0 0 1 22.62 9.37l141.26 141.26a32 32 0 0 1 9.37 22.62z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M256 50.88V176a32 32 0 0 0 32 32h125.12\"},\"child\":[]}]})(props);\n};\nexport function IoDocumentLockSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M276 192h146.31a2 2 0 0 0 1.42-3.41L275.41 40.27a2 2 0 0 0-3.41 1.42V188a4 4 0 0 0 4 4zm-20 80c-8.82 0-16 6.28-16 14v18h32v-18c0-7.72-7.18-14-16-14z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M248 224a8 8 0 0 1-8-8V32H92a12 12 0 0 0-12 12v424a12 12 0 0 0 12 12h328a12 12 0 0 0 12-12V224zm88 175.91A16.1 16.1 0 0 1 319.91 416H192.09A16.1 16.1 0 0 1 176 399.91V320c0-10 7-16 16-16h16v-18c0-25.36 21.53-46 48-46s48 20.64 48 46v18h16a15.8 15.8 0 0 1 16 16z\"},\"child\":[]}]})(props);\n};\nexport function IoDocumentLock (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M288 192h129.81a2 2 0 0 0 1.41-3.41L275.41 44.78a2 2 0 0 0-3.41 1.41V176a16 16 0 0 0 16 16zm-32 80c-8.82 0-16 6.28-16 14v18h32v-18c0-7.72-7.18-14-16-14z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M428 224H288a48 48 0 0 1-48-48V36a4 4 0 0 0-4-4h-92a64 64 0 0 0-64 64v320a64 64 0 0 0 64 64h224a64 64 0 0 0 64-64V228a4 4 0 0 0-4-4zm-92 160a32 32 0 0 1-32 32h-96a32 32 0 0 1-32-32v-48a32 32 0 0 1 32-32v-18c0-25.36 21.53-46 48-46s48 20.64 48 46v18a32 32 0 0 1 32 32z\"},\"child\":[]}]})(props);\n};\nexport function IoDocumentOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M416 221.25V416a48 48 0 0 1-48 48H144a48 48 0 0 1-48-48V96a48 48 0 0 1 48-48h98.75a32 32 0 0 1 22.62 9.37l141.26 141.26a32 32 0 0 1 9.37 22.62z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M256 56v120a32 32 0 0 0 32 32h120\"},\"child\":[]}]})(props);\n};\nexport function IoDocumentSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M240 216V32H92a12 12 0 0 0-12 12v424a12 12 0 0 0 12 12h328a12 12 0 0 0 12-12V224H248a8 8 0 0 1-8-8z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M272 41.69V188a4 4 0 0 0 4 4h146.31a2 2 0 0 0 1.42-3.41L275.41 40.27a2 2 0 0 0-3.41 1.42z\"},\"child\":[]}]})(props);\n};\nexport function IoDocumentTextOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M416 221.25V416a48 48 0 0 1-48 48H144a48 48 0 0 1-48-48V96a48 48 0 0 1 48-48h98.75a32 32 0 0 1 22.62 9.37l141.26 141.26a32 32 0 0 1 9.37 22.62z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M256 56v120a32 32 0 0 0 32 32h120m-232 80h160m-160 80h160\"},\"child\":[]}]})(props);\n};\nexport function IoDocumentTextSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M272 41.69V188a4 4 0 0 0 4 4h146.31a2 2 0 0 0 1.42-3.41L275.41 40.27a2 2 0 0 0-3.41 1.42z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M248 224a8 8 0 0 1-8-8V32H92a12 12 0 0 0-12 12v424a12 12 0 0 0 12 12h328a12 12 0 0 0 12-12V224zm104 160H160v-32h192zm0-80H160v-32h192z\"},\"child\":[]}]})(props);\n};\nexport function IoDocumentText (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M428 224H288a48 48 0 0 1-48-48V36a4 4 0 0 0-4-4h-92a64 64 0 0 0-64 64v320a64 64 0 0 0 64 64h224a64 64 0 0 0 64-64V228a4 4 0 0 0-4-4zm-92 160H176a16 16 0 0 1 0-32h160a16 16 0 0 1 0 32zm0-80H176a16 16 0 0 1 0-32h160a16 16 0 0 1 0 32z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M419.22 188.59 275.41 44.78a2 2 0 0 0-3.41 1.41V176a16 16 0 0 0 16 16h129.81a2 2 0 0 0 1.41-3.41z\"},\"child\":[]}]})(props);\n};\nexport function IoDocument (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M428 224H288a48 48 0 0 1-48-48V36a4 4 0 0 0-4-4h-92a64 64 0 0 0-64 64v320a64 64 0 0 0 64 64h224a64 64 0 0 0 64-64V228a4 4 0 0 0-4-4z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M419.22 188.59 275.41 44.78a2 2 0 0 0-3.41 1.41V176a16 16 0 0 0 16 16h129.81a2 2 0 0 0 1.41-3.41z\"},\"child\":[]}]})(props);\n};\nexport function IoDocumentsOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M336 264.13V436c0 24.3-19.05 44-42.95 44H107c-23.95 0-43-19.7-43-44V172a44.26 44.26 0 0 1 44-44h94.12a24.55 24.55 0 0 1 17.49 7.36l109.15 111a25.4 25.4 0 0 1 7.24 17.77z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M200 128v108a28.34 28.34 0 0 0 28 28h108\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M176 128V76a44.26 44.26 0 0 1 44-44h94a24.83 24.83 0 0 1 17.61 7.36l109.15 111A25.09 25.09 0 0 1 448 168v172c0 24.3-19.05 44-42.95 44H344\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M312 32v108a28.34 28.34 0 0 0 28 28h108\"},\"child\":[]}]})(props);\n};\nexport function IoDocumentsSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M307.94 248 216 154.52V242a6 6 0 0 0 6 6z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M184 268V144H60a12 12 0 0 0-12 12v328a12 12 0 0 0 12 12h248a12 12 0 0 0 12-12V280H196a12 12 0 0 1-12-12zm182-148h85.94L360 26.52V114a6 6 0 0 0 6 6z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M340 152a12 12 0 0 1-12-12V16H172a12 12 0 0 0-12 12v84h42.12A40.81 40.81 0 0 1 231 124.14l109.16 111a41.11 41.11 0 0 1 11.83 29V400H452a12 12 0 0 0 12-12V152z\"},\"child\":[]}]})(props);\n};\nexport function IoDocuments (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M298.39 248a4 4 0 0 0 2.86-6.8l-78.4-79.72a4 4 0 0 0-6.85 2.81V236a12 12 0 0 0 12 12z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M197 267a43.67 43.67 0 0 1-13-31v-92h-72a64.19 64.19 0 0 0-64 64v224a64 64 0 0 0 64 64h144a64 64 0 0 0 64-64V280h-92a43.61 43.61 0 0 1-31-13zm175-147h70.39a4 4 0 0 0 2.86-6.8l-78.4-79.72a4 4 0 0 0-6.85 2.81V108a12 12 0 0 0 12 12z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M372 152a44.34 44.34 0 0 1-44-44V16H220a60.07 60.07 0 0 0-60 60v36h42.12A40.81 40.81 0 0 1 231 124.14l109.16 111a41.11 41.11 0 0 1 11.83 29V400h53.05c32.51 0 58.95-26.92 58.95-60V152z\"},\"child\":[]}]})(props);\n};\nexport function IoDownloadOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M336 176h40a40 40 0 0 1 40 40v208a40 40 0 0 1-40 40H136a40 40 0 0 1-40-40V216a40 40 0 0 1 40-40h40\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"m176 272 80 80 80-80M256 48v288\"},\"child\":[]}]})(props);\n};\nexport function IoDownloadSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M272 160v147.37l64-64L358.63 266 256 368.63 153.37 266 176 243.37l64 64V160H92a12 12 0 0 0-12 12v296a12 12 0 0 0 12 12h328a12 12 0 0 0 12-12V172a12 12 0 0 0-12-12zM240 32h32v128h-32z\"},\"child\":[]}]})(props);\n};\nexport function IoDownload (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M376 160H272v153.37l52.69-52.68a16 16 0 0 1 22.62 22.62l-80 80a16 16 0 0 1-22.62 0l-80-80a16 16 0 0 1 22.62-22.62L240 313.37V160H136a56.06 56.06 0 0 0-56 56v208a56.06 56.06 0 0 0 56 56h240a56.06 56.06 0 0 0 56-56V216a56.06 56.06 0 0 0-56-56zM272 48a16 16 0 0 0-32 0v112h32z\"},\"child\":[]}]})(props);\n};\nexport function IoDuplicateOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"rect\",\"attr\":{\"width\":\"336\",\"height\":\"336\",\"x\":\"128\",\"y\":\"128\",\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"rx\":\"57\",\"ry\":\"57\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"m383.5 128 .5-24a56.16 56.16 0 0 0-56-56H112a64.19 64.19 0 0 0-64 64v216a56.16 56.16 0 0 0 56 56h24m168-168v160m80-80H216\"},\"child\":[]}]})(props);\n};\nexport function IoDuplicateSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M112 80h288V56a24 24 0 0 0-24-24H66a34 34 0 0 0-34 34v310a24 24 0 0 0 24 24h24V112a32 32 0 0 1 32-32z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M456 112H136a24 24 0 0 0-24 24v320a24 24 0 0 0 24 24h320a24 24 0 0 0 24-24V136a24 24 0 0 0-24-24zm-64 200h-80v80h-32v-80h-80v-32h80v-80h32v80h80z\"},\"child\":[]}]})(props);\n};\nexport function IoDuplicate (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M408 112H184a72 72 0 0 0-72 72v224a72 72 0 0 0 72 72h224a72 72 0 0 0 72-72V184a72 72 0 0 0-72-72zm-32.45 200H312v63.55c0 8.61-6.62 16-15.23 16.43A16 16 0 0 1 280 376v-64h-63.55c-8.61 0-16-6.62-16.43-15.23A16 16 0 0 1 216 280h64v-63.55c0-8.61 6.62-16 15.23-16.43A16 16 0 0 1 312 216v64h64a16 16 0 0 1 16 16.77c-.42 8.61-7.84 15.23-16.45 15.23z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M395.88 80A72.12 72.12 0 0 0 328 32H104a72 72 0 0 0-72 72v224a72.12 72.12 0 0 0 48 67.88V160a80 80 0 0 1 80-80z\"},\"child\":[]}]})(props);\n};\nexport function IoEarOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M335.72 330.76C381.73 299.5 416 251.34 416 192a160 160 0 0 0-320 0v206.57c0 44.26 35.74 81.43 80 81.43h0c44.26 0 66.83-25.94 77.29-40 14.77-19.81 41.71-81.56 82.43-109.24z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M160 304V184c0-48.4 43.2-88 96-88h0c52.8 0 96 39.6 96 88\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M160 239c25-18 79.82-15 79.82-15 26 0 41.17 29.42 26 50.6 0 0-36.86 42.4-41.86 61.4\"},\"child\":[]}]})(props);\n};\nexport function IoEarSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M380.48 68.09C347.09 34.5 302.88 16 256 16 159 16 80 95 80 192v206.57a97.59 97.59 0 0 0 28 68.49A94.49 94.49 0 0 0 176 496c19.93 0 41.06-7.69 62.8-22.87a181.46 181.46 0 0 0 25.88-21.86C327.37 390.16 432 288.06 432 192c0-46.49-18.29-90.49-51.52-123.91zM368 200h-32v-16c0-39.7-35.89-72-80-72s-80 32.3-80 72v30.41c27.5-7.84 59.89-6.62 64.26-6.41a48 48 0 0 1 38.62 75.9c-.3.41-.61.81-.95 1.2-16.55 19-36 45.49-38.46 55l-4.07 15.47-30.94-8.14 4.07-15.47c5.51-20.94 36.93-58.2 44.66-67.15A16 16 0 0 0 239.82 240h-.88c-10.67-.58-42.66-.25-62.12 8l-.82.35V320h-32V184c0-57.35 50.24-104 112-104s112 46.65 112 104z\"},\"child\":[]}]})(props);\n};\nexport function IoEar (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 16C159 16 80 95 80 192v206.57a97.59 97.59 0 0 0 28 68.49A94.51 94.51 0 0 0 176 496c36.86 0 67.18-15.62 90.12-46.42 4.48-6 9.55-14.74 15.42-24.85 15.32-26.37 36.29-62.47 63.17-80.74 25.77-17.51 47.23-39.54 62-63.72C423.51 252.94 432 223.24 432 192c0-97-78.95-176-176-176zm96 184a16 16 0 0 1-16-16c0-39.7-35.89-72-80-72s-80 32.3-80 72v30.42c27.19-7.84 58.4-6.72 64.28-6.42a48 48 0 0 1 38.6 75.9c-.3.41-.61.81-.95 1.2-16.55 19-36 45.48-38.46 55a16 16 0 0 1-30.94-8.14c5.51-20.94 36.93-58.2 44.66-67.15A16 16 0 0 0 239.82 240h-.88c-16.6-.89-45.89.8-62.94 8.31V304a16 16 0 0 1-32 0V184c0-57.35 50.24-104 112-104s112 46.65 112 104a16 16 0 0 1-16 16z\"},\"child\":[]}]})(props);\n};\nexport function IoEarthOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M464 256c0-114.87-93.13-208-208-208S48 141.13 48 256s93.13 208 208 208 208-93.13 208-208z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M445.57 172.14c-16.06.1-14.48 29.73-34.49 15.75-7.43-5.18-12-12.71-21.33-15-8.15-2-16.5.08-24.55 1.47-9.15 1.58-20 2.29-26.94 9.22-6.71 6.67-10.26 15.62-17.4 22.33-13.81 13-19.64 27.19-10.7 45.57 8.6 17.67 26.59 27.26 46 26 19.07-1.27 38.88-12.33 38.33 15.38-.2 9.8 1.85 16.6 4.86 25.71 2.79 8.4 2.6 16.54 3.24 25.21 1.18 16.2 4.16 34.36 12.2 48.67l15-21.16c1.85-2.62 5.72-6.29 6.64-9.38 1.63-5.47-1.58-14.87-1.95-21s-.19-12.34-1.13-18.47c-1.32-8.59-6.4-16.64-7.1-25.13-1.29-15.81 1.6-28.43-10.58-41.65-11.76-12.75-29-15.81-45.47-13.22-8.3 1.3-41.71 6.64-28.3-12.33 2.65-3.73 7.28-6.79 10.26-10.34 2.59-3.09 4.84-8.77 7.88-11.18s17-5.18 21-3.95 8.17 7 11.64 9.56a49.89 49.89 0 0 0 21.81 9.36c13.66 2 42.22-5.94 42-23.46-.04-8.4-7.84-20.1-10.92-27.96zM287.45 316.3c-5.33-22.44-35.82-29.94-52.26-42.11-9.45-7-17.86-17.81-30.27-18.69-5.72-.41-10.51.83-16.18-.64-5.2-1.34-9.28-4.14-14.82-3.41-10.35 1.36-16.88 12.42-28 10.92-10.55-1.42-21.42-13.76-23.82-23.81-3.08-12.92 7.14-17.11 18.09-18.26 4.57-.48 9.7-1 14.09.67 5.78 2.15 8.51 7.81 13.7 10.67 9.73 5.33 11.7-3.19 10.21-11.83-2.23-12.94-4.83-18.22 6.71-27.12 8-6.14 14.84-10.58 13.56-21.61-.76-6.48-4.31-9.41-1-15.86 2.51-4.91 9.4-9.34 13.89-12.27 11.59-7.56 49.65-7 34.1-28.16-4.57-6.21-13-17.31-21-18.83-10-1.89-14.44 9.27-21.41 14.19-7.2 5.09-21.22 10.87-28.43 3-9.7-10.59 6.43-14.07 10-21.46s-8.27-21.36-14.61-24.9l-29.81 33.43a41.52 41.52 0 0 0 8.34 31.86c5.93 7.63 15.37 10.08 15.8 20.5.42 10-1.14 15.12-7.68 22.15-2.83 3-4.83 7.26-7.71 10.07-3.53 3.43-2.22 2.38-7.73 3.32-10.36 1.75-19.18 4.45-29.19 7.21C95.34 199.94 93.8 172.69 86.2 162l-25 20.19c-.27 3.31 4.1 9.4 5.29 13 6.83 20.57 20.61 36.48 29.51 56.16 9.37 20.84 34.53 15.06 45.64 33.32 9.86 16.2-.67 36.71 6.71 53.67 5.36 12.31 18 15 26.72 24 8.91 9.09 8.72 21.53 10.08 33.36a305.22 305.22 0 0 0 7.45 41.28c1.21 4.69 2.32 10.89 5.53 14.76 2.2 2.66 9.75 4.95 6.7 5.83 4.26.7 11.85 4.68 15.4 1.76 4.68-3.84 3.43-15.66 4.24-21 2.43-15.9 10.39-31.45 21.13-43.35 10.61-11.74 25.15-19.69 34.11-33 8.73-12.98 11.36-30.49 7.74-45.68zm-33.39 26.32c-6 10.71-19.36 17.88-27.95 26.39-2.33 2.31-7.29 10.31-10.21 8.58-2.09-1.24-2.8-11.62-3.57-14a61.17 61.17 0 0 0-21.71-29.95c-3.13-2.37-10.89-5.45-12.68-8.7-2-3.53-.2-11.86-.13-15.7.11-5.6-2.44-14.91-1.06-20 1.6-5.87-1.48-2.33 3.77-3.49 2.77-.62 14.21 1.39 17.66 2.11 5.48 1.14 8.5 4.55 12.82 8 11.36 9.11 23.87 16.16 36.6 23.14 9.86 5.46 12.76 12.37 6.46 23.62zm-69.6-275.53c4.74 4.63 9.2 10.11 16.27 10.57 6.69.45 13-3.17 18.84 1.38 6.48 5 11.15 11.33 19.75 12.89 8.32 1.51 17.13-3.35 19.19-11.86 2-8.11-2.31-16.93-2.57-25.07 0-1.13.61-6.15-.17-7-.58-.64-5.42.08-6.16.1q-8.13.24-16.22 1.12a207.1 207.1 0 0 0-57.18 14.65c2.43 1.68 5.48 2.35 8.25 3.22zm171.94 56.18c8.49 0 17.11-3.8 14.37-13.62-2.3-8.23-6.22-17.16-15.76-12.72-6.07 2.82-14.67 10-15.38 17.12-.81 8.08 11.11 9.22 16.77 9.22zm-6.78 42.97c8.67 5.19 21.53 2.75 28.07-4.66 5.11-5.8 8.12-15.87 17.31-15.86a15.4 15.4 0 0 1 10.82 4.41c3.8 3.93 3.05 7.62 3.86 12.54 1.81 11.05 13.66.63 16.75-3.65 2-2.79 4.71-6.93 3.8-10.56-.84-3.39-4.8-7-6.56-10.11-5.14-9-9.37-19.47-17.07-26.74-7.41-7-16.52-6.19-23.55 1.08-5.76 6-12.45 10.75-16.39 18.05-2.78 5.13-5.91 7.58-11.54 8.91-3.1.73-6.64 1-9.24 3.08-7.24 5.7-3.12 19.39 3.74 23.51z\"},\"child\":[]}]})(props);\n};\nexport function IoEarthSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m267 474-.8-.13a.85.85 0 0 0 .8.13zm181.9-286.22a5.51 5.51 0 0 0-10.67-.63A5.52 5.52 0 0 1 433 191h-15.47a5.48 5.48 0 0 1-2.84-.79l-22.38-13.42a5.48 5.48 0 0 0-2.84-.79h-35.8a5.48 5.48 0 0 0-3.06.93l-44.15 29.43A5.52 5.52 0 0 0 304 211v41.74a5.51 5.51 0 0 0 2.92 4.87l57.89 30.9a5.55 5.55 0 0 1 2.92 4.8l.27 23.49a5.53 5.53 0 0 0 2.85 4.75l23.26 12.87a5.54 5.54 0 0 1 2.85 4.83v48.6a5.52 5.52 0 0 0 9.17 4.14c9.38-8.26 22.83-20.32 24.62-23.08q4.44-6.87 8.33-14.07a207.39 207.39 0 0 0 13.6-31c12.68-36.71 2.66-102.7-3.78-136.06zM286.4 302.8l-61.33-46a4 4 0 0 0-2.4-.8h-29.1a3.78 3.78 0 0 1-2.68-1.11l-13.72-13.72a4 4 0 0 0-2.83-1.17h-53.19a3.79 3.79 0 0 1-2.68-6.47l8.42-8.42a3.78 3.78 0 0 1 2.68-1.11h32.37a8 8 0 0 0 7.7-5.83l6.89-24.5a4 4 0 0 1 2-2.47L206 177.06a3.79 3.79 0 0 0 2.05-3.37v-12.5a3.82 3.82 0 0 1 .68-2.17l14.6-21.02a3.75 3.75 0 0 1 1.78-1.38l20.43-7.67a3.79 3.79 0 0 0 2.46-3.55V114a3.8 3.8 0 0 0-1.69-3.16l-20.48-13.62A3.83 3.83 0 0 0 222 97l-27.88 13.94a3.78 3.78 0 0 1-4-.41l-13.22-10.45a3.8 3.8 0 0 1 .1-6l10.74-7.91a3.78 3.78 0 0 0-.09-6.16l-16.73-11.67a3.78 3.78 0 0 0-4-.22c-6.05 3.31-23.8 13.11-30.1 17.52a209.48 209.48 0 0 0-68.16 80c-1.82 3.76-4.07 7.59-4.29 11.72s-3.46 13.35-4.81 17.08a3.78 3.78 0 0 0 .24 3.1l35.69 65.58a3.74 3.74 0 0 0 1.38 1.44l37.55 22.54a3.78 3.78 0 0 1 1.81 2.73l7.52 54.54a3.82 3.82 0 0 0 1.61 2.61l29.3 20.14a4 4 0 0 1 1.65 2.48l15.54 73.8a3.6 3.6 0 0 0 .49 1.22c1.46 2.36 7.28 11 14.3 12.28-.65.18-1.23.59-1.88.78a47.63 47.63 0 0 1 5 1.16c2 .54 4 1 6 1.43 3.13.62 3.44 1.1 4.94-1.68 2-3.72 4.29-5 6-5.46a3.85 3.85 0 0 0 2.89-2.9l10.07-46.68a4 4 0 0 1 1.6-2.42l45-31.9a4 4 0 0 0 1.69-3.27V306a4 4 0 0 0-1.55-3.2z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M262 48s-3.65.21-4.39.23q-8.13.24-16.22 1.12A207.45 207.45 0 0 0 184.21 64c2.43 1.68-1.75 3.22-1.75 3.22L189 80h35l24 12 21-12zm92.23 72.06 16.11-14a4 4 0 0 0-.94-6.65l-18.81-8.73a4 4 0 0 0-5.3 1.9l-7.75 16.21a4 4 0 0 0 1.49 5.11l10.46 6.54a4 4 0 0 0 4.74-.38zm75.41 20.61-5.83-9c-.09-.14-.17-.28-.25-.43-1.05-2.15-9.74-19.7-17-26.51-5.45-5.15-7-3.67-7.43-2.53a3.77 3.77 0 0 1-1.19 1.6l-28.84 23.31a4 4 0 0 1-2.51.89h-14.93a4 4 0 0 0-2.83 1.17l-12 12a4 4 0 0 0 0 5.66l12 12a4 4 0 0 0 2.83 1.17h75.17a4 4 0 0 0 4-4.17l-.55-13.15a4 4 0 0 0-.64-2.01z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M256 72a184 184 0 1 1-130.1 53.9A182.77 182.77 0 0 1 256 72m0-40C132.3 32 32 132.3 32 256s100.3 224 224 224 224-100.3 224-224S379.7 32 256 32z\"},\"child\":[]}]})(props);\n};\nexport function IoEarth (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M414.39 97.74A224 224 0 1 0 97.61 414.52 224 224 0 1 0 414.39 97.74zM64 256.13a191.63 191.63 0 0 1 6.7-50.31c7.34 15.8 18 29.45 25.25 45.66 9.37 20.84 34.53 15.06 45.64 33.32 9.86 16.21-.67 36.71 6.71 53.67 5.36 12.31 18 15 26.72 24 8.91 9.08 8.72 21.52 10.08 33.36a305.36 305.36 0 0 0 7.45 41.27c0 .1 0 .21.08.31C117.8 411.13 64 339.8 64 256.13zm192 192a193.12 193.12 0 0 1-32-2.68c.11-2.71.16-5.24.43-7 2.43-15.9 10.39-31.45 21.13-43.35 10.61-11.74 25.15-19.68 34.11-33 8.78-13 11.41-30.5 7.79-45.69-5.33-22.44-35.82-29.93-52.26-42.1-9.45-7-17.86-17.82-30.27-18.7-5.72-.4-10.51.83-16.18-.63-5.2-1.35-9.28-4.15-14.82-3.42-10.35 1.36-16.88 12.42-28 10.92-10.55-1.41-21.42-13.76-23.82-23.81-3.08-12.92 7.14-17.11 18.09-18.26 4.57-.48 9.7-1 14.09.68 5.78 2.14 8.51 7.8 13.7 10.66 9.73 5.34 11.7-3.19 10.21-11.83-2.23-12.94-4.83-18.21 6.71-27.12 8-6.14 14.84-10.58 13.56-21.61-.76-6.48-4.31-9.41-1-15.86 2.51-4.91 9.4-9.34 13.89-12.27 11.59-7.56 49.65-7 34.1-28.16-4.57-6.21-13-17.31-21-18.83-10-1.89-14.44 9.27-21.41 14.19-7.2 5.09-21.22 10.87-28.43 3-9.7-10.59 6.43-14.06 10-21.46 1.65-3.45 0-8.24-2.78-12.75q5.41-2.28 11-4.23a15.6 15.6 0 0 0 8 3c6.69.44 13-3.18 18.84 1.38 6.48 5 11.15 11.32 19.75 12.88 8.32 1.51 17.13-3.34 19.19-11.86 1.25-5.18 0-10.65-1.2-16a190.83 190.83 0 0 1 105 32.21c-2-.76-4.39-.67-7.34.7-6.07 2.82-14.67 10-15.38 17.12-.81 8.08 11.11 9.22 16.77 9.22 8.5 0 17.11-3.8 14.37-13.62-1.19-4.26-2.81-8.69-5.42-11.37a193.27 193.27 0 0 1 18 14.14c-.09.09-.18.17-.27.27-5.76 6-12.45 10.75-16.39 18.05-2.78 5.14-5.91 7.58-11.54 8.91-3.1.73-6.64 1-9.24 3.08-7.24 5.7-3.12 19.4 3.74 23.51 8.67 5.19 21.53 2.75 28.07-4.66 5.11-5.8 8.12-15.87 17.31-15.86a15.4 15.4 0 0 1 10.82 4.41c3.8 3.94 3.05 7.62 3.86 12.54 1.43 8.74 9.14 4 13.83-.41a192.12 192.12 0 0 1 9.24 18.77c-5.16 7.43-9.26 15.53-21.67 6.87-7.43-5.19-12-12.72-21.33-15.06-8.15-2-16.5.08-24.55 1.47-9.15 1.59-20 2.29-26.94 9.22-6.71 6.68-10.26 15.62-17.4 22.33-13.81 13-19.64 27.19-10.7 45.57 8.6 17.67 26.59 27.26 46 26 19.07-1.27 38.88-12.33 38.33 15.38-.2 9.81 1.85 16.6 4.86 25.71 2.79 8.4 2.6 16.54 3.24 25.21a158 158 0 0 0 4.74 30.07A191.75 191.75 0 0 1 256 448.13z\"},\"child\":[]}]})(props);\n};\nexport function IoEaselOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"rect\",\"attr\":{\"width\":\"416\",\"height\":\"272\",\"x\":\"48\",\"y\":\"80\",\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"rx\":\"32\",\"ry\":\"32\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M256 416v-64m0-272V48m144 416-32-112M112 464l32-112\"},\"child\":[]}]})(props);\n};\nexport function IoEaselSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M468 64H278V32h-44v32H44a12 12 0 0 0-12 12v280a12 12 0 0 0 12 12h78.19L89.93 470.46l36.53 9.61L161.74 368H234v64h44v-64h71.84l31 111.7 36.83-8.57L389.05 368H468a12 12 0 0 0 12-12V76a12 12 0 0 0-12-12zm-26 266H70V102h372z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M88 120h336v192H88z\"},\"child\":[]}]})(props);\n};\nexport function IoEasel (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"rect\",\"attr\":{\"width\":\"352\",\"height\":\"208\",\"x\":\"80\",\"y\":\"112\",\"rx\":\"12\",\"ry\":\"12\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M432 64H272V48a16 16 0 0 0-32 0v16H80a48.05 48.05 0 0 0-48 48v208a48.05 48.05 0 0 0 48 48h42.79l-26.17 91.6a16 16 0 1 0 30.76 8.8L156.07 368H240v48a16 16 0 0 0 32 0v-48h83.93l28.69 100.4a16 16 0 1 0 30.76-8.8L389.21 368H432a48.05 48.05 0 0 0 48-48V112a48.05 48.05 0 0 0-48-48zm16 256a16 16 0 0 1-16 16H80a16 16 0 0 1-16-16V112a16 16 0 0 1 16-16h352a16 16 0 0 1 16 16z\"},\"child\":[]}]})(props);\n};\nexport function IoEggOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M256 48C192 48 96 171.69 96 286.55S160 464 256 464s160-62.59 160-177.45S320 48 256 48z\"},\"child\":[]}]})(props);\n};\nexport function IoEggSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M418.39 381.05c-8.08 21.68-19.76 40.1-34.72 54.75-14.38 14.07-32.1 24.95-52.67 32.34C309.08 476 283.85 480 256 480s-53.08-4-75-11.86c-20.57-7.39-38.29-18.27-52.67-32.34-15-14.65-26.64-33.07-34.72-54.75C84.58 356.82 80 328.53 80 296.94c0-30.28 6.68-62.57 19.86-96A371 371 0 0 1 151 111.42C195.78 53.56 241 32 256 32s62.67 22.4 105 79.42c18.33 24.71 38.87 58.34 51.17 89.54 13.18 33.41 19.86 65.7 19.86 96-.03 31.57-4.61 59.86-13.64 84.09z\"},\"child\":[]}]})(props);\n};\nexport function IoEgg (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 480c-52.57 0-96.72-17.54-127.7-50.73C96.7 395.4 80 346.05 80 286.55 80 230.5 101.48 168 138.93 115 175.65 63 219.41 32 256 32s80.35 31 117.07 83C410.52 168 432 230.5 432 286.55c0 59.5-16.7 108.85-48.3 142.72C352.72 462.46 308.57 480 256 480z\"},\"child\":[]}]})(props);\n};\nexport function IoEllipseOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"256\",\"r\":\"192\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\"},\"child\":[]}]})(props);\n};\nexport function IoEllipseSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 464c-114.69 0-208-93.31-208-208S141.31 48 256 48s208 93.31 208 208-93.31 208-208 208z\"},\"child\":[]}]})(props);\n};\nexport function IoEllipse (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 464c-114.69 0-208-93.31-208-208S141.31 48 256 48s208 93.31 208 208-93.31 208-208 208z\"},\"child\":[]}]})(props);\n};\nexport function IoEllipsisHorizontalCircleOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"256\",\"r\":\"26\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"346\",\"cy\":\"256\",\"r\":\"26\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"166\",\"cy\":\"256\",\"r\":\"26\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M448 256c0-106-86-192-192-192S64 150 64 256s86 192 192 192 192-86 192-192z\"},\"child\":[]}]})(props);\n};\nexport function IoEllipsisHorizontalCircleSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 48C141.13 48 48 141.13 48 256s93.13 208 208 208 208-93.13 208-208S370.87 48 256 48zm-90 234a26 26 0 1 1 26-26 26 26 0 0 1-26 26zm90 0a26 26 0 1 1 26-26 26 26 0 0 1-26 26zm90 0a26 26 0 1 1 26-26 26 26 0 0 1-26 26z\"},\"child\":[]}]})(props);\n};\nexport function IoEllipsisHorizontalCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"256\",\"r\":\"26\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"346\",\"cy\":\"256\",\"r\":\"26\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"166\",\"cy\":\"256\",\"r\":\"26\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M448 256c0-106-86-192-192-192S64 150 64 256s86 192 192 192 192-86 192-192z\"},\"child\":[]}]})(props);\n};\nexport function IoEllipsisHorizontalOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"256\",\"r\":\"32\",\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"416\",\"cy\":\"256\",\"r\":\"32\",\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"96\",\"cy\":\"256\",\"r\":\"32\",\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\"},\"child\":[]}]})(props);\n};\nexport function IoEllipsisHorizontalSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"256\",\"r\":\"48\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"416\",\"cy\":\"256\",\"r\":\"48\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"96\",\"cy\":\"256\",\"r\":\"48\"},\"child\":[]}]})(props);\n};\nexport function IoEllipsisHorizontal (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"256\",\"r\":\"48\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"416\",\"cy\":\"256\",\"r\":\"48\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"96\",\"cy\":\"256\",\"r\":\"48\"},\"child\":[]}]})(props);\n};\nexport function IoEllipsisVerticalCircleOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"256\",\"r\":\"26\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"346\",\"r\":\"26\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"166\",\"r\":\"26\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M448 256c0-106-86-192-192-192S64 150 64 256s86 192 192 192 192-86 192-192z\"},\"child\":[]}]})(props);\n};\nexport function IoEllipsisVerticalCircleSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M464 256c0-114.87-93.13-208-208-208S48 141.13 48 256s93.13 208 208 208 208-93.13 208-208zm-234-90a26 26 0 1 1 26 26 26 26 0 0 1-26-26zm0 90a26 26 0 1 1 26 26 26 26 0 0 1-26-26zm0 90a26 26 0 1 1 26 26 26 26 0 0 1-26-26z\"},\"child\":[]}]})(props);\n};\nexport function IoEllipsisVerticalCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"256\",\"r\":\"26\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"346\",\"r\":\"26\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"166\",\"r\":\"26\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M448 256c0-106-86-192-192-192S64 150 64 256s86 192 192 192 192-86 192-192z\"},\"child\":[]}]})(props);\n};\nexport function IoEllipsisVerticalOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"256\",\"r\":\"32\",\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"416\",\"r\":\"32\",\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"96\",\"r\":\"32\",\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\"},\"child\":[]}]})(props);\n};\nexport function IoEllipsisVerticalSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"256\",\"r\":\"48\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"416\",\"r\":\"48\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"96\",\"r\":\"48\"},\"child\":[]}]})(props);\n};\nexport function IoEllipsisVertical (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"256\",\"r\":\"48\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"416\",\"r\":\"48\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"96\",\"r\":\"48\"},\"child\":[]}]})(props);\n};\nexport function IoEnterOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M176 176v-40a40 40 0 0 1 40-40h208a40 40 0 0 1 40 40v240a40 40 0 0 1-40 40H216a40 40 0 0 1-40-40v-40\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"m272 336 80-80-80-80M48 256h288\"},\"child\":[]}]})(props);\n};\nexport function IoEnterSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M160 240h147.37l-64-64L266 153.37 368.63 256 266 358.63 243.37 336l64-64H160v148a12 12 0 0 0 12 12h296a12 12 0 0 0 12-12V92a12 12 0 0 0-12-12H172a12 12 0 0 0-12 12zm-128 0h128v32H32z\"},\"child\":[]}]})(props);\n};\nexport function IoEnter (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M160 136v104h153.37l-52.68-52.69a16 16 0 0 1 22.62-22.62l80 80a16 16 0 0 1 0 22.62l-80 80a16 16 0 0 1-22.62-22.62L313.37 272H160v104a56.06 56.06 0 0 0 56 56h208a56.06 56.06 0 0 0 56-56V136a56.06 56.06 0 0 0-56-56H216a56.06 56.06 0 0 0-56 56zM48 240a16 16 0 0 0 0 32h112v-32z\"},\"child\":[]}]})(props);\n};\nexport function IoExitOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M320 176v-40a40 40 0 0 0-40-40H88a40 40 0 0 0-40 40v240a40 40 0 0 0 40 40h192a40 40 0 0 0 40-40v-40m64-160 80 80-80 80m-193-80h273\"},\"child\":[]}]})(props);\n};\nexport function IoExitSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M335.69 272h-161v-32h161V92a12 12 0 0 0-12-12h-280a12 12 0 0 0-12 12v328a12 12 0 0 0 12 12h280a12 12 0 0 0 12-12zm83.37 0-64 64 22.63 22.63L480.31 256 377.69 153.37 355.06 176l64 64h-83.37v32h83.37z\"},\"child\":[]}]})(props);\n};\nexport function IoExit (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M336 376V272H191a16 16 0 0 1 0-32h145V136a56.06 56.06 0 0 0-56-56H88a56.06 56.06 0 0 0-56 56v240a56.06 56.06 0 0 0 56 56h192a56.06 56.06 0 0 0 56-56zm89.37-104-52.68 52.69a16 16 0 0 0 22.62 22.62l80-80a16 16 0 0 0 0-22.62l-80-80a16 16 0 0 0-22.62 22.62L425.37 240H336v32z\"},\"child\":[]}]})(props);\n};\nexport function IoExpandOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M432 320v112H320m101.8-10.23L304 304M80 192V80h112M90.2 90.23 208 208M320 80h112v112M421.77 90.2 304 208M192 432H80V320m10.23 101.8L208 304\"},\"child\":[]}]})(props);\n};\nexport function IoExpandSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"square\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M432 320v112H320m101.8-10.23L304 304M80 192V80h112M90.2 90.23 208 208M320 80h112v112M421.77 90.2 304 208M192 432H80V320m10.23 101.8L208 304\"},\"child\":[]}]})(props);\n};\nexport function IoExpand (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M432 320v112H320m101.8-10.23L304 304M80 192V80h112M90.2 90.23 208 208M320 80h112v112M421.77 90.2 304 208M192 432H80V320m10.23 101.8L208 304\"},\"child\":[]}]})(props);\n};\nexport function IoExtensionPuzzleOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M413.66 246.1H386a2 2 0 0 1-2-2v-77.24A38.86 38.86 0 0 0 345.14 128H267.9a2 2 0 0 1-2-2V98.34c0-27.14-21.5-49.86-48.64-50.33a49.53 49.53 0 0 0-50.4 49.51V126a2 2 0 0 1-2 2H87.62A39.74 39.74 0 0 0 48 167.62V238a2 2 0 0 0 2 2h26.91c29.37 0 53.68 25.48 54.09 54.85.42 29.87-23.51 57.15-53.29 57.15H50a2 2 0 0 0-2 2v70.38A39.74 39.74 0 0 0 87.62 464H158a2 2 0 0 0 2-2v-20.93c0-30.28 24.75-56.35 55-57.06 30.1-.7 57 20.31 57 50.28V462a2 2 0 0 0 2 2h71.14A38.86 38.86 0 0 0 384 425.14v-78a2 2 0 0 1 2-2h28.48c27.63 0 49.52-22.67 49.52-50.4s-23.2-48.64-50.34-48.64z\"},\"child\":[]}]})(props);\n};\nexport function IoExtensionPuzzleSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M345.14 480H256v-45.71a31.3 31.3 0 0 0-9.59-22.65c-7.67-7.56-18.83-11.81-30.57-11.64a44.38 44.38 0 0 0-28.45 10.67c-5.2 4.6-11.39 12.56-11.39 24.42V480H87.62A55.68 55.68 0 0 1 32 424.38V336h45.71c9.16 0 18.07-3.92 25.09-11a42.06 42.06 0 0 0 12.2-29.92C114.7 273.89 97.26 256 76.91 256H32v-89.34a53.77 53.77 0 0 1 16.53-39A55.88 55.88 0 0 1 87.62 112h63.24V97.52A65.53 65.53 0 0 1 217.54 32c35.49.62 64.36 30.38 64.36 66.33V112h63.24A54.28 54.28 0 0 1 400 166.86v63.24h13.66c36.58 0 66.34 29 66.34 64.64 0 36.61-29.39 66.4-65.52 66.4H400v63.24c0 30.67-24.61 55.62-54.86 55.62z\"},\"child\":[]}]})(props);\n};\nexport function IoExtensionPuzzle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M345.14 480H274a18 18 0 0 1-18-18v-27.71a31.32 31.32 0 0 0-9.71-22.77c-7.78-7.59-19.08-11.8-30.89-11.51-21.36.5-39.4 19.3-39.4 41.06V462a18 18 0 0 1-18 18H87.62A55.62 55.62 0 0 1 32 424.38V354a18 18 0 0 1 18-18h27.71c9.16 0 18.07-3.92 25.09-11a42.06 42.06 0 0 0 12.2-29.92C114.7 273.89 97.26 256 76.91 256H50a18 18 0 0 1-18-18v-70.38A55.62 55.62 0 0 1 87.62 112h55.24a8 8 0 0 0 8-8v-6.48A65.53 65.53 0 0 1 217.54 32c35.49.62 64.36 30.38 64.36 66.33V104a8 8 0 0 0 8 8h55.24A54.86 54.86 0 0 1 400 166.86v55.24a8 8 0 0 0 8 8h5.66c36.58 0 66.34 29 66.34 64.64 0 36.61-29.39 66.4-65.52 66.4H408a8 8 0 0 0-8 8v56A54.86 54.86 0 0 1 345.14 480z\"},\"child\":[]}]})(props);\n};\nexport function IoEyeOffOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M432 448a15.92 15.92 0 0 1-11.31-4.69l-352-352a16 16 0 0 1 22.62-22.62l352 352A16 16 0 0 1 432 448zm-176.34-64c-41.49 0-81.5-12.28-118.92-36.5-34.07-22-64.74-53.51-88.7-91v-.08c19.94-28.57 41.78-52.73 65.24-72.21a2 2 0 0 0 .14-2.94L93.5 161.38a2 2 0 0 0-2.71-.12c-24.92 21-48.05 46.76-69.08 76.92a31.92 31.92 0 0 0-.64 35.54c26.41 41.33 60.4 76.14 98.28 100.65C162 402 207.9 416 255.66 416a239.13 239.13 0 0 0 75.8-12.58 2 2 0 0 0 .77-3.31l-21.58-21.58a4 4 0 0 0-3.83-1 204.8 204.8 0 0 1-51.16 6.47zm235.18-145.4c-26.46-40.92-60.79-75.68-99.27-100.53C349 110.55 302 96 255.66 96a227.34 227.34 0 0 0-74.89 12.83 2 2 0 0 0-.75 3.31l21.55 21.55a4 4 0 0 0 3.88 1 192.82 192.82 0 0 1 50.21-6.69c40.69 0 80.58 12.43 118.55 37 34.71 22.4 65.74 53.88 89.76 91a.13.13 0 0 1 0 .16 310.72 310.72 0 0 1-64.12 72.73 2 2 0 0 0-.15 2.95l19.9 19.89a2 2 0 0 0 2.7.13 343.49 343.49 0 0 0 68.64-78.48 32.2 32.2 0 0 0-.1-34.78z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M256 160a95.88 95.88 0 0 0-21.37 2.4 2 2 0 0 0-1 3.38l112.59 112.56a2 2 0 0 0 3.38-1A96 96 0 0 0 256 160zm-90.22 73.66a2 2 0 0 0-3.38 1 96 96 0 0 0 115 115 2 2 0 0 0 1-3.38z\"},\"child\":[]}]})(props);\n};\nexport function IoEyeOffSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m63.998 86.004 21.998-21.998L448 426.01l-21.998 21.998zM259.34 192.09l60.57 60.57a64.07 64.07 0 0 0-60.57-60.57zm-6.68 127.82-60.57-60.57a64.07 64.07 0 0 0 60.57 60.57z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M256 352a96 96 0 0 1-92.6-121.34l-69.07-69.08C66.12 187.42 39.24 221.14 16 256c26.42 44 62.56 89.24 100.2 115.18C159.38 400.92 206.33 416 255.76 416A233.47 233.47 0 0 0 335 402.2l-53.61-53.6A95.84 95.84 0 0 1 256 352zm0-192a96 96 0 0 1 92.6 121.34L419.26 352c29.15-26.25 56.07-61.56 76.74-96-26.38-43.43-62.9-88.56-101.18-114.82C351.1 111.2 304.31 96 255.76 96a222.92 222.92 0 0 0-78.21 14.29l53.11 53.11A95.84 95.84 0 0 1 256 160z\"},\"child\":[]}]})(props);\n};\nexport function IoEyeOff (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M432 448a15.92 15.92 0 0 1-11.31-4.69l-352-352a16 16 0 0 1 22.62-22.62l352 352A16 16 0 0 1 432 448zM248 315.85l-51.79-51.79a2 2 0 0 0-3.39 1.69 64.11 64.11 0 0 0 53.49 53.49 2 2 0 0 0 1.69-3.39zm16-119.7L315.87 248a2 2 0 0 0 3.4-1.69 64.13 64.13 0 0 0-53.55-53.55 2 2 0 0 0-1.72 3.39z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M491 273.36a32.2 32.2 0 0 0-.1-34.76c-26.46-40.92-60.79-75.68-99.27-100.53C349 110.55 302 96 255.68 96a226.54 226.54 0 0 0-71.82 11.79 4 4 0 0 0-1.56 6.63l47.24 47.24a4 4 0 0 0 3.82 1.05 96 96 0 0 1 116 116 4 4 0 0 0 1.05 3.81l67.95 68a4 4 0 0 0 5.4.24 343.81 343.81 0 0 0 67.24-77.4zM256 352a96 96 0 0 1-93.3-118.63 4 4 0 0 0-1.05-3.81l-66.84-66.87a4 4 0 0 0-5.41-.23c-24.39 20.81-47 46.13-67.67 75.72a31.92 31.92 0 0 0-.64 35.54c26.41 41.33 60.39 76.14 98.28 100.65C162.06 402 207.92 416 255.68 416a238.22 238.22 0 0 0 72.64-11.55 4 4 0 0 0 1.61-6.64l-47.47-47.46a4 4 0 0 0-3.81-1.05A96 96 0 0 1 256 352z\"},\"child\":[]}]})(props);\n};\nexport function IoEyeOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M255.66 112c-77.94 0-157.89 45.11-220.83 135.33a16 16 0 0 0-.27 17.77C82.92 340.8 161.8 400 255.66 400c92.84 0 173.34-59.38 221.79-135.25a16.14 16.14 0 0 0 0-17.47C428.89 172.28 347.8 112 255.66 112z\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"256\",\"r\":\"80\",\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\"},\"child\":[]}]})(props);\n};\nexport function IoEyeSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"256\",\"r\":\"64\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M394.82 141.18C351.1 111.2 304.31 96 255.76 96c-43.69 0-86.28 13-126.59 38.48C88.52 160.23 48.67 207 16 256c26.42 44 62.56 89.24 100.2 115.18C159.38 400.92 206.33 416 255.76 416c49 0 95.85-15.07 139.3-44.79C433.31 345 469.71 299.82 496 256c-26.38-43.43-62.9-88.56-101.18-114.82zM256 352a96 96 0 1 1 96-96 96.11 96.11 0 0 1-96 96z\"},\"child\":[]}]})(props);\n};\nexport function IoEye (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"256\",\"r\":\"64\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M490.84 238.6c-26.46-40.92-60.79-75.68-99.27-100.53C349 110.55 302 96 255.66 96c-42.52 0-84.33 12.15-124.27 36.11-40.73 24.43-77.63 60.12-109.68 106.07a31.92 31.92 0 0 0-.64 35.54c26.41 41.33 60.4 76.14 98.28 100.65C162 402 207.9 416 255.66 416c46.71 0 93.81-14.43 136.2-41.72 38.46-24.77 72.72-59.66 99.08-100.92a32.2 32.2 0 0 0-.1-34.76zM256 352a96 96 0 1 1 96-96 96.11 96.11 0 0 1-96 96z\"},\"child\":[]}]})(props);\n};\nexport function IoEyedropOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M262.51 204.22 70 396.69C57.56 409.15 48 464 48 464s54.38-9.09 67.31-22L307.8 249.51\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"192.15\",\"height\":\"64.05\",\"x\":\"211.72\",\"y\":\"172.19\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"rx\":\"32.03\",\"ry\":\"32.03\",\"transform\":\"rotate(45 307.788 204.2)\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M289.91 141s20.57 8.57 37.22-8.08l54.67-70.63c18.5-19.41 49.26-18.69 67.94 0h0c18.68 18.68 19.34 48.81 0 67.93l-70.68 54.67c-15.65 15.65-8.08 37.22-8.08 37.22M115.31 442s-26.48 17.34-44.56-.73-.75-44.58-.75-44.58\"},\"child\":[]}]})(props);\n};\nexport function IoEyedropSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M480 96.22a63.84 63.84 0 0 0-18.95-45.61 65 65 0 0 0-45.71-19h-.76a61.78 61.78 0 0 0-44.22 19.09l-74.88 74.88-33.88-33.86-34.07 33.91-33.85 34 44 44L32 409.37V480h70.63l205.7-205.71L352 317.94l11.31-11.19c.11-.1 10.42-10.31 22.79-22.68l33.85-34-33.89-33.89L461 141.23a63.18 63.18 0 0 0 19-45.01zM245 292.35 219.65 267l40.68-40.69 25.38 25.38z\"},\"child\":[]}]})(props);\n};\nexport function IoEyedrop (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M461.05 51a65 65 0 0 0-45.71-19h-.76a61.81 61.81 0 0 0-44.36 19.25 12.81 12.81 0 0 0-1.07 1.25l-54 69.76c-5.62 7.1-12.74 8.68-16.78 4.64l-1.9-1.9a48 48 0 0 0-67.92 67.92l9.91 9.91a2 2 0 0 1 0 2.83L58.7 385.38C54 390.05 46.9 399.85 38.85 431c-4.06 15.71-6.51 29.66-6.61 30.24A16 16 0 0 0 48 480a15.68 15.68 0 0 0 2.64-.22c.58-.1 14.44-2.43 30.13-6.44 31.07-7.94 41.05-15.24 45.85-20l179.77-179.79a2 2 0 0 1 2.82 0l9.92 9.92a48 48 0 0 0 67.92-67.93l-1.59-1.54c-5-5-2.52-12.11 4.32-17.14l69.75-53.94a17.82 17.82 0 0 0 1.47-1.32 63.2 63.2 0 0 0 19-45A63.88 63.88 0 0 0 461.05 51zM250.78 283.9c-2.92 2.92-16.18 7.92-23.39.71s-2.24-20.42.69-23.35l33-33a2 2 0 0 1 2.83 0l19.84 19.83a2 2 0 0 1 0 2.83z\"},\"child\":[]}]})(props);\n};\nexport function IoFastFoodOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M322 416c0 35.35-20.65 64-56 64H134c-35.35 0-56-28.65-56-64m258-80c17.67 0 32 17.91 32 40h0c0 22.09-14.33 40-32 40H64c-17.67 0-32-17.91-32-40h0c0-22.09 14.33-40 32-40\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M344 336H179.31a8 8 0 0 0-5.65 2.34l-26.83 26.83a4 4 0 0 1-5.66 0l-26.83-26.83a8 8 0 0 0-5.65-2.34H56a24 24 0 0 1-24-24h0a24 24 0 0 1 24-24h288a24 24 0 0 1 24 24h0a24 24 0 0 1-24 24zM64 276v-.22c0-55 45-83.78 100-83.78h72c55 0 100 29 100 84v-.22M241 112l7.44 63.97\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M256 480h139.31a32 32 0 0 0 31.91-29.61L463 112\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"m368 112 16-64 47-16\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M224 112h256\"},\"child\":[]}]})(props);\n};\nexport function IoFastFoodSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M384 352H184.36l-41 35-41-35H16v24c0 30.59 21.13 55.51 47.26 56 2.43 15.12 8.31 28.78 17.16 39.47C93.51 487.28 112.54 496 134 496h132c21.46 0 40.49-8.72 53.58-24.55 8.85-10.69 14.73-24.35 17.16-39.47 13.88-.25 26.35-7.4 35-18.63A61.26 61.26 0 0 0 384 376zm-279-32 38.33 28.19L182 320h202v-8a40.07 40.07 0 0 0-32-39.2c-.82-29.69-13-54.54-35.51-72C295.67 184.56 267.85 176 236 176h-72c-68.22 0-114.43 38.77-116 96.8A40.07 40.07 0 0 0 16 312v8h89z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M463.08 96h-74.59l8.92-35.66L442 45l-10-29-62 20-14.49 60H208v32h18.75l1.86 16H236c39 0 73.66 10.9 100.12 31.52A121.9 121.9 0 0 1 371 218.07a124.16 124.16 0 0 1 10.73 32.65 72 72 0 0 1 27.89 90.9A96 96 0 0 1 416 376c0 22.34-7.6 43.63-21.4 59.95a80 80 0 0 1-31.83 22.95 109.21 109.21 0 0 1-18.53 33c-1.18 1.42-2.39 2.81-3.63 4.15H416c16 0 23-8 25-23l36.4-345H496V96z\"},\"child\":[]}]})(props);\n};\nexport function IoFastFood (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M368 128h.09m111.46-32h-91.06l8.92-35.66 38.32-13.05c8.15-2.77 13-11.43 10.65-19.71a16 16 0 0 0-20.54-10.73l-47 16a16 16 0 0 0-10.36 11.27L355.51 96H224.45c-8.61 0-16 6.62-16.43 15.23A16 16 0 0 0 224 128h2.75l1 8.66A8.3 8.3 0 0 0 236 144c39 0 73.66 10.9 100.12 31.52A121.9 121.9 0 0 1 371 218.07a123.4 123.4 0 0 1 10.12 29.51 7.83 7.83 0 0 0 3.29 4.88 72 72 0 0 1 26.38 86.43 7.92 7.92 0 0 0-.15 5.53A96 96 0 0 1 416 376c0 22.34-7.6 43.63-21.4 59.95a80.12 80.12 0 0 1-28.78 21.67 8 8 0 0 0-4.21 4.37 108.19 108.19 0 0 1-17.37 29.86 2.5 2.5 0 0 0 1.9 4.11h49.21a48.22 48.22 0 0 0 47.85-44.14L477.4 128h2.6a16 16 0 0 0 16-16.77c-.42-8.61-7.84-15.23-16.45-15.23z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M108.69 320a23.87 23.87 0 0 1 17 7l15.51 15.51a4 4 0 0 0 5.66 0L162.34 327a23.87 23.87 0 0 1 17-7h196.58a8 8 0 0 0 8.08-7.92V312a40.07 40.07 0 0 0-32-39.2c-.82-29.69-13-54.54-35.51-72C295.67 184.56 267.85 176 236 176h-72c-68.22 0-114.43 38.77-116 96.8A40.07 40.07 0 0 0 16 312a8 8 0 0 0 8 8zm77.25 32a8 8 0 0 0-5.66 2.34l-22.14 22.15a20 20 0 0 1-28.28 0l-22.14-22.15a8 8 0 0 0-5.66-2.34h-69.4a15.93 15.93 0 0 0-15.76 13.17A65.22 65.22 0 0 0 16 376c0 30.59 21.13 55.51 47.26 56 2.43 15.12 8.31 28.78 17.16 39.47C93.51 487.28 112.54 496 134 496h132c21.46 0 40.49-8.72 53.58-24.55 8.85-10.69 14.73-24.35 17.16-39.47 26.13-.47 47.26-25.39 47.26-56a65.22 65.22 0 0 0-.9-10.83A15.93 15.93 0 0 0 367.34 352z\"},\"child\":[]}]})(props);\n};\nexport function IoFemaleOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"184\",\"r\":\"152\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M256 336v144m58-64H198\"},\"child\":[]}]})(props);\n};\nexport function IoFemaleSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M430 190c0-95.94-78.06-174-174-174S82 94.06 82 190c0 88.49 66.4 161.77 152 172.61V394h-58v44h58v58h44v-58h58v-44h-58v-31.39c85.6-10.84 152-84.12 152-172.61zm-304 0c0-71.68 58.32-130 130-130s130 58.32 130 130-58.32 130-130 130-130-58.32-130-130z\"},\"child\":[]}]})(props);\n};\nexport function IoFemale (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M430 190c0-95.94-78.06-174-174-174S82 94.06 82 190c0 88.49 66.4 161.77 152 172.61V394h-36a22 22 0 0 0 0 44h36v36a22 22 0 0 0 44 0v-36h36a22 22 0 0 0 0-44h-36v-31.39c85.6-10.84 152-84.12 152-172.61zm-304 0c0-71.68 58.32-130 130-130s130 58.32 130 130-58.32 130-130 130-130-58.32-130-130z\"},\"child\":[]}]})(props);\n};\nexport function IoFileTrayFullOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M384 80H128c-26 0-43 14-48 40L48 272v112a48.14 48.14 0 0 0 48 48h320a48.14 48.14 0 0 0 48-48V272l-32-152c-5-27-23-40-48-40z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M48 272h144m128 0h144m-272 0a64 64 0 0 0 128 0M144 144h224m-240 64h256\"},\"child\":[]}]})(props);\n};\nexport function IoFileTrayFullSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M128 128h256v38H128zm-16 64h288v38H112z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M448 64H64L32 256v192h448V256zm-12 192H320a64 64 0 0 1-128 0H76l22-150h316z\"},\"child\":[]}]})(props);\n};\nexport function IoFileTrayFull (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m479.66 268.7-32-151.81C441.48 83.77 417.68 64 384 64H128c-16.8 0-31 4.69-42.1 13.94s-18.37 22.31-21.58 38.89l-32 151.87A16.65 16.65 0 0 0 32 272v112a64 64 0 0 0 64 64h320a64 64 0 0 0 64-64V272a16.65 16.65 0 0 0-.34-3.3zm-384-145.4v-.28c3.55-18.43 13.81-27 32.29-27H384c18.61 0 28.87 8.55 32.27 26.91 0 .13.05.26.07.39l26.93 127.88a4 4 0 0 1-3.92 4.82H320a15.92 15.92 0 0 0-16 15.82 48 48 0 1 1-96 0A15.92 15.92 0 0 0 192 256H72.65a4 4 0 0 1-3.92-4.82z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M368 160H144a16 16 0 0 1 0-32h224a16 16 0 0 1 0 32zm16 64H128a16 16 0 0 1 0-32h256a16 16 0 0 1 0 32z\"},\"child\":[]}]})(props);\n};\nexport function IoFileTrayOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M384 80H128c-26 0-43 14-48 40L48 272v112a48.14 48.14 0 0 0 48 48h320a48.14 48.14 0 0 0 48-48V272l-32-152c-5-27-23-40-48-40z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M48 272h144m128 0h144m-272 0a64 64 0 0 0 128 0\"},\"child\":[]}]})(props);\n};\nexport function IoFileTraySharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M448 64H64L32 256v192h448V256zm-12 192H320a64 64 0 0 1-128 0H76l22-150h316z\"},\"child\":[]}]})(props);\n};\nexport function IoFileTrayStackedOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M48 336v96a48.14 48.14 0 0 0 48 48h320a48.14 48.14 0 0 0 48-48v-96\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M48 336h144m128 0h144m-272 0a64 64 0 0 0 128 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M384 32H128c-26 0-43 14-48 40L48 192v96a48.14 48.14 0 0 0 48 48h320a48.14 48.14 0 0 0 48-48v-96L432 72c-5-27-23-40-48-40z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M48 192h144m128 0h144m-272 0a64 64 0 0 0 128 0\"},\"child\":[]}]})(props);\n};\nexport function IoFileTrayStackedSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M448 16H64L32 176v144h448V176zm-12 160H320a64 64 0 0 1-128 0H76L98 58h316zM320 352a64 64 0 0 1-128 0H32v144h448V352z\"},\"child\":[]}]})(props);\n};\nexport function IoFileTrayStacked (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M464 352H320a16 16 0 0 0-16 16 48 48 0 0 1-96 0 16 16 0 0 0-16-16H48a16 16 0 0 0-16 16v64a64.07 64.07 0 0 0 64 64h320a64.07 64.07 0 0 0 64-64v-64a16 16 0 0 0-16-16zm15.46-164.12L447.61 68.45C441.27 35.59 417.54 16 384 16H128c-16.8 0-31 4.69-42.1 13.94S67.66 52 64.4 68.4L32.54 187.88A15.9 15.9 0 0 0 32 192v48c0 35.29 28.71 80 64 80h320c35.29 0 64-44.71 64-80v-48a15.9 15.9 0 0 0-.54-4.12zM440.57 176H320a15.92 15.92 0 0 0-16 15.82 48 48 0 1 1-96 0A15.92 15.92 0 0 0 192 176H71.43a2 2 0 0 1-1.93-2.52L95.71 75c3.55-18.41 13.81-27 32.29-27h256c18.59 0 28.84 8.53 32.25 26.85l26.25 98.63a2 2 0 0 1-1.93 2.52z\"},\"child\":[]}]})(props);\n};\nexport function IoFileTray (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m479.66 268.7-32-151.81C441.48 83.77 417.68 64 384 64H128c-16.8 0-31 4.69-42.1 13.94s-18.37 22.31-21.58 38.89l-32 151.87A16.65 16.65 0 0 0 32 272v112a64 64 0 0 0 64 64h320a64 64 0 0 0 64-64V272a16.65 16.65 0 0 0-.34-3.3zm-384-145.4v-.28c3.55-18.43 13.81-27 32.29-27H384c18.61 0 28.87 8.55 32.27 26.91 0 .13.05.26.07.39l26.93 127.88a4 4 0 0 1-3.92 4.82H320a15.92 15.92 0 0 0-16 15.82 48 48 0 1 1-96 0A15.92 15.92 0 0 0 192 256H72.65a4 4 0 0 1-3.92-4.82z\"},\"child\":[]}]})(props);\n};\nexport function IoFilmOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"rect\",\"attr\":{\"width\":\"416\",\"height\":\"320\",\"x\":\"48\",\"y\":\"96\",\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"rx\":\"28\",\"ry\":\"28\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"80\",\"height\":\"80\",\"x\":\"384\",\"y\":\"336\",\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"rx\":\"28\",\"ry\":\"28\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"80\",\"height\":\"80\",\"x\":\"384\",\"y\":\"256\",\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"rx\":\"28\",\"ry\":\"28\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"80\",\"height\":\"80\",\"x\":\"384\",\"y\":\"176\",\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"rx\":\"28\",\"ry\":\"28\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"80\",\"height\":\"80\",\"x\":\"384\",\"y\":\"96\",\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"rx\":\"28\",\"ry\":\"28\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"80\",\"height\":\"80\",\"x\":\"48\",\"y\":\"336\",\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"rx\":\"28\",\"ry\":\"28\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"80\",\"height\":\"80\",\"x\":\"48\",\"y\":\"256\",\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"rx\":\"28\",\"ry\":\"28\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"80\",\"height\":\"80\",\"x\":\"48\",\"y\":\"176\",\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"rx\":\"28\",\"ry\":\"28\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"80\",\"height\":\"80\",\"x\":\"48\",\"y\":\"96\",\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"rx\":\"28\",\"ry\":\"28\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"256\",\"height\":\"160\",\"x\":\"128\",\"y\":\"96\",\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"rx\":\"28\",\"ry\":\"28\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"256\",\"height\":\"160\",\"x\":\"128\",\"y\":\"256\",\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"rx\":\"28\",\"ry\":\"28\"},\"child\":[]}]})(props);\n};\nexport function IoFilmSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M480 80H32v352h448zM112 352v48H64v-48zm0-80v48H64v-48zm0-80v48H64v-48zm0-80v48H64v-48zm256 160H144v-32h224zm80 80v48h-48v-48zm0-80v48h-48v-48zm0-80v48h-48v-48zm0-80v48h-48v-48z\"},\"child\":[]}]})(props);\n};\nexport function IoFilm (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M436 80H76a44.05 44.05 0 0 0-44 44v264a44.05 44.05 0 0 0 44 44h360a44.05 44.05 0 0 0 44-44V124a44.05 44.05 0 0 0-44-44zM112 388a12 12 0 0 1-12 12H76a12 12 0 0 1-12-12v-24a12 12 0 0 1 12-12h24a12 12 0 0 1 12 12zm0-80a12 12 0 0 1-12 12H76a12 12 0 0 1-12-12v-24a12 12 0 0 1 12-12h24a12 12 0 0 1 12 12zm0-80a12 12 0 0 1-12 12H76a12 12 0 0 1-12-12v-24a12 12 0 0 1 12-12h24a12 12 0 0 1 12 12zm0-80a12 12 0 0 1-12 12H76a12 12 0 0 1-12-12v-24a12 12 0 0 1 12-12h24a12 12 0 0 1 12 12zm241.68 124H158.32a16 16 0 0 1 0-32h195.36a16 16 0 1 1 0 32zM448 388a12 12 0 0 1-12 12h-24a12 12 0 0 1-12-12v-24a12 12 0 0 1 12-12h24a12 12 0 0 1 12 12zm0-80a12 12 0 0 1-12 12h-24a12 12 0 0 1-12-12v-24a12 12 0 0 1 12-12h24a12 12 0 0 1 12 12zm0-80a12 12 0 0 1-12 12h-24a12 12 0 0 1-12-12v-24a12 12 0 0 1 12-12h24a12 12 0 0 1 12 12zm0-80a12 12 0 0 1-12 12h-24a12 12 0 0 1-12-12v-24a12 12 0 0 1 12-12h24a12 12 0 0 1 12 12z\"},\"child\":[]}]})(props);\n};\nexport function IoFilterCircleOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M448 256c0-106-86-192-192-192S64 150 64 256s86 192 192 192 192-86 192-192z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M144 208h224m-192 64h160m-112 64h64\"},\"child\":[]}]})(props);\n};\nexport function IoFilterCircleSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 48C141.31 48 48 141.31 48 256s93.31 208 208 208 208-93.31 208-208S370.69 48 256 48zm48 304h-96v-32h96zm48-64H160v-32h192zm32-64H128v-32h256z\"},\"child\":[]}]})(props);\n};\nexport function IoFilterCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 48C141.31 48 48 141.31 48 256s93.31 208 208 208 208-93.31 208-208S370.69 48 256 48zm32 304h-64a16 16 0 0 1 0-32h64a16 16 0 0 1 0 32zm48-64H176a16 16 0 0 1 0-32h160a16 16 0 0 1 0 32zm32-64H144a16 16 0 0 1 0-32h224a16 16 0 0 1 0 32z\"},\"child\":[]}]})(props);\n};\nexport function IoFilterOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M32 144h448M112 256h288M208 368h96\"},\"child\":[]}]})(props);\n};\nexport function IoFilterSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 120h480v48H16zm80 112h320v48H96zm96 112h128v48H192z\"},\"child\":[]}]})(props);\n};\nexport function IoFilter (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M472 168H40a24 24 0 0 1 0-48h432a24 24 0 0 1 0 48zm-80 112H120a24 24 0 0 1 0-48h272a24 24 0 0 1 0 48zm-96 112h-80a24 24 0 0 1 0-48h80a24 24 0 0 1 0 48z\"},\"child\":[]}]})(props);\n};\nexport function IoFingerPrintOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M390.42 75.28a10.45 10.45 0 0 1-5.32-1.44C340.72 50.08 302.35 40 256.35 40c-45.77 0-89.23 11.28-128.76 33.84C122 77 115.11 74.8 111.87 69a12.4 12.4 0 0 1 4.63-16.32A281.81 281.81 0 0 1 256.35 16c49.23 0 92.23 11.28 139.39 36.48a12 12 0 0 1 4.85 16.08 11.3 11.3 0 0 1-10.17 6.72zm-330.79 126a11.73 11.73 0 0 1-6.7-2.16 12.26 12.26 0 0 1-2.78-16.8c22.89-33.6 52-60 86.69-78.48 72.58-38.84 165.51-39.12 238.32-.24 34.68 18.48 63.8 44.64 86.69 78a12.29 12.29 0 0 1-2.78 16.8 11.26 11.26 0 0 1-16.18-2.88c-20.8-30.24-47.15-54-78.36-70.56-66.34-35.28-151.18-35.28-217.29.24-31.44 16.8-57.79 40.8-78.59 71a10 10 0 0 1-9.02 5.08zM204.1 491a10.66 10.66 0 0 1-8.09-3.6C175.9 466.48 165 453 149.55 424c-16-29.52-24.27-65.52-24.27-104.16 0-71.28 58.71-129.36 130.84-129.36S387 248.56 387 319.84a11.56 11.56 0 1 1-23.11 0c0-58.08-48.32-105.36-107.72-105.36S148.4 261.76 148.4 319.84c0 34.56 7.39 66.48 21.49 92.4 14.8 27.6 25 39.36 42.77 58.08a12.67 12.67 0 0 1 0 17 12.44 12.44 0 0 1-8.56 3.68zm165.75-44.4c-27.51 0-51.78-7.2-71.66-21.36a129.1 129.1 0 0 1-55-105.36 11.57 11.57 0 1 1 23.12 0 104.28 104.28 0 0 0 44.84 85.44c16.41 11.52 35.6 17 58.72 17a147.41 147.41 0 0 0 24-2.4c6.24-1.2 12.25 3.12 13.4 9.84a11.92 11.92 0 0 1-9.47 13.92 152.28 152.28 0 0 1-27.95 2.88zM323.38 496a13 13 0 0 1-3-.48c-36.76-10.56-60.8-24.72-86-50.4-32.37-33.36-50.16-77.76-50.16-125.28 0-38.88 31.9-70.56 71.19-70.56s71.2 31.68 71.2 70.56c0 25.68 21.5 46.56 48.08 46.56s48.08-20.88 48.08-46.56c0-90.48-75.13-163.92-167.59-163.92-65.65 0-125.75 37.92-152.79 96.72-9 19.44-13.64 42.24-13.64 67.2 0 18.72 1.61 48.24 15.48 86.64 2.32 6.24-.69 13.2-6.7 15.36a11.34 11.34 0 0 1-14.79-7 276.39 276.39 0 0 1-16.88-95c0-28.8 5.32-55 15.72-77.76 30.75-67 98.94-110.4 173.6-110.4 105.18 0 190.71 84.24 190.71 187.92 0 38.88-31.9 70.56-71.2 70.56s-71.2-31.68-71.2-70.56c.01-25.68-21.49-46.6-48.07-46.6s-48.08 20.88-48.08 46.56c0 41 15.26 79.44 43.23 108.24 22 22.56 43 35 75.59 44.4 6.24 1.68 9.71 8.4 8.09 14.64a11.39 11.39 0 0 1-10.87 9.16z\"},\"child\":[]}]})(props);\n};\nexport function IoFingerPrintSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m56.79 200.58 12.36 7.5 7.35-13.58C93.07 166.75 143.78 102 256 102c115 0 164 70.32 180.1 93.46l8.16 12.7L469.88 192l-8.54-13.36c-8.88-12.85-27.52-39.53-60.78-63.1C360.15 86.82 311.5 72.25 256 72.25c-128.07 0-186.69 75.11-206 107.25L42.63 192 54 198.86a14.09 14.09 0 0 0 1.63 1.1 12.57 12.57 0 0 0 1.16.62z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M379.22 172.32c-35.54-28.93-78.12-44.25-123.22-44.25-97.52 0-162.31 66-183.33 131.47C53.42 320 76.82 407.61 77.8 411.36l4.38 13.81 29.93-6.43-4.74-15c-.21-.75-22.1-82.93-5.41-135.21 9-28.08 27.73-55.4 51.35-74.79C181.81 170.39 217.35 158 256 158c90.58 0 141.93 70.61 156.45 108.11 11.27 28.93 8.67 61.82-6.28 82-5.53 7.39-15.28 16.07-30.12 15.32-33.81-1.72-39.66-18.43-47.79-50.25-3.9-15.32-7.9-31.18-17.87-44-12.14-15.75-29.8-23.36-54.28-23.36-26.33 0-46.27 8.68-59.38 25.72-28.6 37.28-10 100.93-9.21 103.61l.22.85c1.41 3.86 36.08 96.65 128.93 119.68l14.77 3.21 8.09-28.71-15.27-3.43c-74.22-18.43-105.21-94.39-107.59-100.39a152.44 152.44 0 0 1-5.1-29.79c-1.08-14.46-.32-34.39 9.43-47.14 7.15-9.32 18.64-13.82 35-13.82 29.79 0 34.78 14.57 42.58 44.79 7.58 29.46 18 69.85 75.84 72.75 22.21 1.07 42.26-8.79 56.34-27.65 21.13-28.28 25.14-71.57 10.19-110.14-11.68-30.36-34.21-60.54-61.73-83.04z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M154.18 343.21c-3.47-28.28 1.41-71 26.55-98.78 17.44-19.29 42.79-29 75.19-29 37.49 0 65.87 16.72 84.51 49.61a154 154 0 0 1 17.88 53.25l1.43 14.69 30-2.2a112.63 112.63 0 0 0-1-15.6c-.11-1.28-3.57-32.46-21-63.75-24.06-43.11-62.63-65.93-111.74-65.93-41.5 0-74.55 13.18-98.06 39.11-31.85 35.14-38.35 86.25-33.91 122.35v.33c7.97 54.53 28.97 98.14 66.12 137.14l11.6 11.22 20.95-21.79-10.34-9.79c-32.72-34.28-51.25-72.64-58.18-120.86zM132.47 72.66c11.08-6.72 50.27-26.77 123.53-26.77 87.54 0 126.44 28.72 126.87 28.93l13.9 8.86L413 58.47l-13.22-8.56c-.52-.38-1.06-.76-1.6-1.12C385.5 40.54 340.54 16 256 16c-87.71 0-132.75 26.48-143.41 33.71L99 58.52l16.2 25.21z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M390.59 415.21c-33.37 3.75-60.45-2.67-80.71-18.85-34.24-27.43-38.68-75.11-38.79-76l-1.23-14.88-30.53 2.23 1.31 15c.22 2.46 5.2 60.75 49.62 96.54 22.11 17.89 49.74 26.89 82.24 26.89a187 187 0 0 0 21.56-1.29l16.59-2.09-6.1-29.71z\"},\"child\":[]}]})(props);\n};\nexport function IoFingerPrint (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M63.28 202a15.29 15.29 0 0 1-7.7-2 14.84 14.84 0 0 1-5.52-20.46C69.34 147.36 128 72.25 256 72.25c55.47 0 104.12 14.57 144.53 43.29 33.26 23.57 51.9 50.25 60.78 63.1a14.79 14.79 0 0 1-4 20.79 15.52 15.52 0 0 1-21.24-4C420 172.32 371 102 256 102c-112.25 0-163 64.71-179.53 92.46A15 15 0 0 1 63.28 202z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M320.49 496a15.31 15.31 0 0 1-3.79-.43c-92.85-23-127.52-115.82-128.93-119.68l-.22-.85c-.76-2.68-19.39-66.33 9.21-103.61 13.11-17 33.05-25.72 59.38-25.72 24.48 0 42.14 7.61 54.28 23.36 10 12.86 14 28.72 17.87 44 8.13 31.82 14 48.53 47.79 50.25 14.84.75 24.59-7.93 30.12-15.32 14.95-20.15 17.55-53 6.28-82C398 228.57 346.61 158 256 158c-38.68 0-74.22 12.43-102.72 35.79-23.59 19.35-42.28 46.67-51.28 74.75-16.69 52.28 5.2 134.46 5.41 135.21A14.83 14.83 0 0 1 96.54 422a15.39 15.39 0 0 1-18.74-10.6c-1-3.75-24.38-91.4-5.1-151.82 21-65.47 85.81-131.47 183.33-131.47 45.07 0 87.65 15.32 123.19 44.25 27.52 22.5 50 52.72 61.76 82.93 14.95 38.57 10.94 81.86-10.19 110.14-14.08 18.86-34.13 28.72-56.34 27.65-57.86-2.9-68.26-43.29-75.84-72.75-7.8-30.22-12.79-44.79-42.58-44.79-16.36 0-27.85 4.5-35 13.82-9.75 12.75-10.51 32.68-9.43 47.14a152.44 152.44 0 0 0 5.1 29.79c2.38 6 33.37 82 107.59 100.39a14.88 14.88 0 0 1 11 18.11 15.36 15.36 0 0 1-14.8 11.21z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M201.31 489.14a15.5 15.5 0 0 1-11.16-4.71c-37.16-39-58.18-82.61-66.09-137.14V347c-4.44-36.1 2.06-87.21 33.91-122.35 23.51-25.93 56.56-39.11 98.06-39.11 49.08 0 87.65 22.82 111.7 65.89 17.45 31.29 20.91 62.47 21 63.75a15.07 15.07 0 0 1-13.65 16.4 15.26 15.26 0 0 1-16.79-13.29A154 154 0 0 0 340.43 265c-18.64-32.89-47-49.61-84.51-49.61-32.4 0-57.75 9.75-75.19 29-25.14 27.75-30 70.5-26.55 98.78 6.93 48.22 25.46 86.58 58.18 120.86a14.7 14.7 0 0 1-.76 21.11 15.44 15.44 0 0 1-10.29 4z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M372.5 446.18c-32.5 0-60.13-9-82.24-26.89-44.42-35.79-49.4-94.08-49.62-96.54a15.27 15.27 0 0 1 30.45-2.36c.11.86 4.55 48.54 38.79 76 20.26 16.18 47.34 22.6 80.71 18.85a15.2 15.2 0 0 1 16.91 13.18 14.92 14.92 0 0 1-13.44 16.5 187 187 0 0 1-21.56 1.26zm25.68-397.39C385.5 40.54 340.54 16 256 16c-88.74 0-133.81 27.11-143.78 34a11.59 11.59 0 0 0-1.84 1.4.36.36 0 0 1-.22.1 14.87 14.87 0 0 0-5.09 11.15 15.06 15.06 0 0 0 15.31 14.85 15.56 15.56 0 0 0 8.88-2.79c.43-.32 39.22-28.82 126.77-28.82S382.58 74.29 383 74.5a15.25 15.25 0 0 0 9.21 3 15.06 15.06 0 0 0 15.29-14.89 14.9 14.9 0 0 0-9.32-13.82z\"},\"child\":[]}]})(props);\n};\nexport function IoFishOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M240 152c-50.71 12.21-94.15 52.31-120.3 73.43a261.14 261.14 0 0 0-23.81-19.58C59.53 179.29 16 176 16 176s11.37 51.53 41.36 79.83C27.37 284.14 16 335.67 16 335.67s43.53-3.29 79.89-29.85a259.18 259.18 0 0 0 23.61-19.41c26.1 21.14 69.74 61.34 120.5 73.59l-16 56c39.43-6.67 78.86-35.51 94.72-48.25C448 362 496 279 496 256c0-22-48-106-176.89-111.73C303.52 131.78 263.76 102.72 224 96z\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"416\",\"cy\":\"239.99\",\"r\":\"16\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"20\",\"strokeWidth\":\"32\",\"d\":\"M378.37 356a199.22 199.22 0 0 1 0-200\"},\"child\":[]}]})(props);\n};\nexport function IoFishSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M335.45 256a214.83 214.83 0 0 1 29.08-108l7.62-13.26a280.69 280.69 0 0 0-48.64-7.15c-21.94-16.9-54.64-36.95-92.34-43.33L208 80l13.37 61.86c-41.67 14.14-78.43 42.86-102.76 62.62q-7.06-5.91-14.78-11.55c-39.71-29-82.6-31.8-84.4-31.9L0 160l2.67 19.31c.29 2 6.79 44.73 31.65 76.52C9.46 287.63 3 330.33 2.67 332.36L0 352l19.43-1.36c1.8-.1 44.69-2.89 84.4-31.9q7.58-5.53 14.56-11.37c24.37 19.83 61.14 48.6 102.86 62.74L208 432l23.17-4.22c37.49-6.34 70.08-26.4 92-43.32a284.27 284.27 0 0 0 49.32-7.23l-7.91-13.18A214.92 214.92 0 0 1 335.45 256z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M499.59 221.75c-5.85-9.88-16.54-24.9-34.19-40.28a209.82 209.82 0 0 0-62-37L392.23 164a183.22 183.22 0 0 0-.09 183.87l11.75 19.57a209.26 209.26 0 0 0 61.42-36.49C497.05 303.47 512 269 512 256c0-12.31-8-26.74-12.41-34.25zM416 256a16 16 0 1 1 16-16 16 16 0 0 1-16 16z\"},\"child\":[]}]})(props);\n};\nexport function IoFish (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M512 256c0-16.54-14.27-46.76-45.61-74a207.06 207.06 0 0 0-60.28-36.12 3.15 3.15 0 0 0-3.93 1.56c-.15.29-.3.57-.47.86l-9.59 15.9a183.24 183.24 0 0 0 .07 183.78l.23.39 8.74 16a4 4 0 0 0 4.94 1.82C479.63 337.42 512 281.49 512 256zm-93.92-.14a16 16 0 1 1 13.79-13.79 16 16 0 0 1-13.79 13.79z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M335.45 256a214.8 214.8 0 0 1 29.08-108l.12-.21 4.62-7.67a4 4 0 0 0-2.59-6 284.29 284.29 0 0 0-39.26-5.39 7.94 7.94 0 0 1-4.29-1.6c-19.28-14.66-57.5-40.3-96.46-46.89a16 16 0 0 0-18 20.18l10.62 37.17a4 4 0 0 1-2.42 4.84c-36.85 13.69-68.59 38.75-91.74 57.85a8 8 0 0 1-10.06.06q-4.72-3.75-9.69-7.39c-39.64-28.95-86.21-32.76-88.17-32.9a16 16 0 0 0-16.83 19.4c.42 1.93 9.19 40.69 31.7 71.61a8.09 8.09 0 0 1 0 9.55C9.57 291.52.8 330.29.38 332.22a16 16 0 0 0 16.83 19.4c2-.14 48.53-4 88.12-32.88q4.85-3.56 9.47-7.22a8 8 0 0 1 10.06.07c23.25 19.19 55.05 44.28 92 58a4 4 0 0 1 2.42 4.83l-10.66 37.18a16 16 0 0 0 18 20.18c17.16-2.9 51.88-12.86 96.05-46.83a8.15 8.15 0 0 1 4.36-1.65 287.36 287.36 0 0 0 39.22-5.3 4 4 0 0 0 2.69-5.83l-4.51-8.29A214.81 214.81 0 0 1 335.45 256z\"},\"child\":[]}]})(props);\n};\nexport function IoFitnessOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M352.92 80C288 80 256 144 256 144s-32-64-96.92-64c-52.76 0-94.54 44.14-95.08 96.81-1.1 109.33 86.73 187.08 183 252.42a16 16 0 0 0 18 0c96.26-65.34 184.09-143.09 183-252.42-.54-52.67-42.32-96.81-95.08-96.81z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M48 256h112l48-96 48 160 48-96 32 64h128\"},\"child\":[]}]})(props);\n};\nexport function IoFitnessSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M480 272h-37.34a261.41 261.41 0 0 1-18.25 32H480zM32 240v32h37.34a225.1 225.1 0 0 1-12.4-32z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m304 259.78-51.73 103.46-48-160L169.89 272H69.34c10 20.92 23.5 41.41 40.63 61.68 40.12 47.46 94.25 79.75 137 108.32l9 6 9-6c42.78-28.57 96.91-60.86 137-108.32A322.78 322.78 0 0 0 424.41 304h-98.3z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m211.73 116.76 48 160L304 188.22 345.89 272h96.77A213.13 213.13 0 0 0 464 176.65C463.37 114.54 413.54 64 352.92 64c-48.11 0-80.1 28-96.92 48.21C239.18 92 207.19 64 159.08 64 98.46 64 48.63 114.54 48 176.65A211.23 211.23 0 0 0 56.94 240h93.17z\"},\"child\":[]}]})(props);\n};\nexport function IoFitness (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M193.69 152.84a16 16 0 0 1 29.64 2.56l36.4 121.36 30-59.92a16 16 0 0 1 28.62 0L345.89 272h96.76A213.08 213.08 0 0 0 464 176.65C463.37 114.54 413.54 64 352.92 64c-48.09 0-80 29.54-96.92 51-16.88-21.49-48.83-51-96.92-51C98.46 64 48.63 114.54 48 176.65A211.13 211.13 0 0 0 56.93 240h93.18z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M321.69 295.16 304 259.78l-33.69 67.38A16 16 0 0 1 256 336q-.67 0-1.38-.06a16 16 0 0 1-14-11.34l-36.4-121.36-30 59.92A16 16 0 0 1 160 272H69.35q14 29.29 37.27 57.66c18.77 22.88 52.8 59.46 131.39 112.81a31.84 31.84 0 0 0 36 0c78.59-53.35 112.62-89.93 131.39-112.81a316.79 316.79 0 0 0 19-25.66H336a16 16 0 0 1-14.31-8.84zM464 272h-21.35a260.11 260.11 0 0 1-18.25 32H464a16 16 0 0 0 0-32zM48 240a16 16 0 0 0 0 32h21.35a225.22 225.22 0 0 1-12.42-32z\"},\"child\":[]}]})(props);\n};\nexport function IoFlagOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M80 464V68.14a8 8 0 0 1 4-6.9C91.81 56.66 112.92 48 160 48c64 0 145 48 192 48a199.53 199.53 0 0 0 77.23-15.77 2 2 0 0 1 2.77 1.85v219.36a4 4 0 0 1-2.39 3.65C421.37 308.7 392.33 320 352 320c-48 0-128-32-192-32s-80 16-80 16\"},\"child\":[]}]})(props);\n};\nexport function IoFlagSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M102 480H64V57.37l4.69-4.68C72.14 49.23 92.78 32 160 32c37.21 0 78.83 14.71 115.55 27.68C305.12 70.13 333.05 80 352 80c42.83 0 72.72-14.25 73-14.4l23-11.14v259.43l-8.84 4.42C437.71 319 403.19 336 352 336c-24.14 0-54.38-7.14-86.39-14.71C229.63 312.79 192.43 304 160 304c-36.87 0-49.74 5.58-58 9.11z\"},\"child\":[]}]})(props);\n};\nexport function IoFlag (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M80 480a16 16 0 0 1-16-16V68.13a24 24 0 0 1 11.9-20.72C88 40.38 112.38 32 160 32c37.21 0 78.83 14.71 115.55 27.68C305.12 70.13 333.05 80 352 80a183.84 183.84 0 0 0 71-14.5 18 18 0 0 1 25 16.58v219.36a20 20 0 0 1-12 18.31c-8.71 3.81-40.51 16.25-84 16.25-24.14 0-54.38-7.14-86.39-14.71C229.63 312.79 192.43 304 160 304c-36.87 0-55.74 5.58-64 9.11V464a16 16 0 0 1-16 16z\"},\"child\":[]}]})(props);\n};\nexport function IoFlameOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M112 320c0-93 124-165 96-272 66 0 192 96 192 272a144 144 0 0 1-288 0z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M320 368c0 57.71-32 80-64 80s-64-22.29-64-80 40-86 32-128c42 0 96 70.29 96 128z\"},\"child\":[]}]})(props);\n};\nexport function IoFlameSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M394.24 197.56a300.67 300.67 0 0 0-53.38-90C301.2 61.65 240 32 192 32c19 70-14.36 117.12-44.79 163.77C122 234.36 96 274.27 96 320c0 88.22 71.78 160 160 160s160-71.78 160-160c0-43.3-7.32-84.49-21.76-122.44zM288.33 418.69C278 429.69 265.05 432 256 432s-22-2.31-32.33-13.31S208 390.24 208 368c0-25.14 8.82-44.28 17.34-62.78 6.48-14.07 14.66-27.22 15.11-44.49 11.3 5.88 23.67 16.91 34.54 31.28 18.17 24 29 52.42 29 76 .01 22.23-5.41 39.76-15.66 50.68z\"},\"child\":[]}]})(props);\n};\nexport function IoFlame (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M394.23 197.56a300.43 300.43 0 0 0-53.37-90C301.2 61.65 249.05 32 208 32a16 16 0 0 0-15.48 20c13.87 53-14.88 97.07-45.31 143.72C122 234.36 96 274.27 96 320c0 88.22 71.78 160 160 160s160-71.78 160-160c0-43.3-7.32-84.49-21.77-122.44zm-105.9 221.13C278 429.69 265.05 432 256 432s-22-2.31-32.33-13.31S208 390.24 208 368c0-25.14 8.82-44.28 17.34-62.78 4.95-10.74 10-21.67 13-33.37a8 8 0 0 1 12.49-4.51A126.48 126.48 0 0 1 275 292c18.17 24 29 52.42 29 76 0 22.24-5.42 39.77-15.67 50.69z\"},\"child\":[]}]})(props);\n};\nexport function IoFlashOffOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M432 448a15.92 15.92 0 0 1-11.31-4.69l-352-352a16 16 0 0 1 22.62-22.62l352 352A16 16 0 0 1 432 448zM294.34 84.28l-22.08 120.84a16 16 0 0 0 6.17 15.71 16.49 16.49 0 0 0 9.93 3.17h94.12l-38.37 47.42a4 4 0 0 0 .28 5.34l17.07 17.07a4 4 0 0 0 5.94-.31l60.8-75.16a16.37 16.37 0 0 0 3.3-14.36 16 16 0 0 0-15.5-12H307.19L335.4 37.63c.05-.3.1-.59.13-.89A18.45 18.45 0 0 0 302.73 23l-92.58 114.46a4 4 0 0 0 .28 5.35l17.07 17.06a4 4 0 0 0 5.94-.31zm-76.56 343.29 22-120.71a16 16 0 0 0-6.19-15.7 16.54 16.54 0 0 0-9.92-3.16h-94.1l38.36-47.42a4 4 0 0 0-.28-5.34l-17.07-17.07a4 4 0 0 0-5.93.31L83.8 293.64A16.37 16.37 0 0 0 80.5 308 16 16 0 0 0 96 320h108.83l-28.09 154.36v.11a18.37 18.37 0 0 0 32.5 14.53l92.61-114.46a4 4 0 0 0-.28-5.35l-17.07-17.06a4 4 0 0 0-5.94.31z\"},\"child\":[]}]})(props);\n};\nexport function IoFlashOffSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m63.998 86.004 21.998-21.998L448 426.01l-21.998 21.998zM80 304h144l-32 192 108.18-129.82-148.36-148.36L80 304zm352-96H288l32-192-108.18 129.82 148.36 148.36L432 208z\"},\"child\":[]}]})(props);\n};\nexport function IoFlashOff (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M432 448a15.92 15.92 0 0 1-11.31-4.69l-352-352a16 16 0 0 1 22.62-22.62l352 352A16 16 0 0 1 432 448zm-.5-244a16 16 0 0 0-15.5-12H307.19L335.4 37.63c.05-.3.1-.59.13-.89A18.45 18.45 0 0 0 302.73 23l-92.58 114.46a4 4 0 0 0 .29 5.35l151 151a4 4 0 0 0 5.94-.31l60.8-75.16A16.37 16.37 0 0 0 431.5 204zM301.57 369.19l-151-151a4 4 0 0 0-5.93.31L83.8 293.64A16.37 16.37 0 0 0 80.5 308 16 16 0 0 0 96 320h108.83l-28.09 154.36v.11a18.37 18.37 0 0 0 32.5 14.53l92.61-114.46a4 4 0 0 0-.28-5.35z\"},\"child\":[]}]})(props);\n};\nexport function IoFlashOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M315.27 33 96 304h128l-31.51 173.23a2.36 2.36 0 0 0 2.33 2.77h0a2.36 2.36 0 0 0 1.89-.95L416 208H288l31.66-173.25a2.45 2.45 0 0 0-2.44-2.75h0a2.42 2.42 0 0 0-1.95 1z\"},\"child\":[]}]})(props);\n};\nexport function IoFlashSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M432 208H288l32-192L80 304h144l-32 192z\"},\"child\":[]}]})(props);\n};\nexport function IoFlash (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M194.82 496a18.36 18.36 0 0 1-18.1-21.53v-.11L204.83 320H96a16 16 0 0 1-12.44-26.06L302.73 23a18.45 18.45 0 0 1 32.8 13.71c0 .3-.08.59-.13.89L307.19 192H416a16 16 0 0 1 12.44 26.06L209.24 489a18.45 18.45 0 0 1-14.42 7z\"},\"child\":[]}]})(props);\n};\nexport function IoFlashlightOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M456.64 162.86 349.12 55.36c-13.15-13.14-28.68-7.17-41.82 6l-11.95 12c-26.13 26.13-27.62 58.38-29.42 83.31-.89 12.24-9.78 27.55-18.51 36.28L58.58 381.67c-16.35 16.33-12.69 39.42 3.73 55.84l12.17 12.17c16.36 16.35 39.43 20.16 55.86 3.74l188.83-188.8c8.74-8.74 24-17.55 36.29-18.52 24.87-1.86 58.62-4.85 83.26-29.49l11.94-11.94c13.15-13.14 19.12-28.67 5.98-41.81z\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"224.68\",\"cy\":\"287.28\",\"r\":\"20\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"m289 81 142 142\"},\"child\":[]}]})(props);\n};\nexport function IoFlashlightSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m330 16-42.68 42.7L453.3 224.68 496 182 330 16z\"},\"child\":[]},{\"tag\":\"ellipse\",\"attr\":{\"cx\":\"224.68\",\"cy\":\"287.3\",\"fill\":\"none\",\"rx\":\"20.03\",\"ry\":\"19.96\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M429.21 243.85 268 82.59 249.65 168 16 402l94 94 234.23-233.8zm-189 56.07a20 20 0 1 1 0-25.25 20 20 0 0 1-.02 25.25z\"},\"child\":[]}]})(props);\n};\nexport function IoFlashlight (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M462 216c9.35-9.35 15.14-19.09 17.19-28.95 2.7-12.95-1.29-25.55-11.22-35.48L360.43 44.05C346.29 29.92 322 24.07 296 50l-2 2a8 8 0 0 0 0 11.32L448.64 218a8 8 0 0 0 11.36 0zm-211.86-62.92-.16 2.34c-.53 7.18-6.88 19.15-13.88 26.14L47.27 370.36c-11.12 11.11-16.46 25.57-15.05 40.7C33.49 424.58 40.16 438 51 448.83L63.17 461c12.61 12.6 27.78 19 42.49 19a50.4 50.4 0 0 0 36-15.24l188.84-188.8c7.07-7.07 18.84-13.3 26.17-13.87 17.48-1.32 43.57-3.28 67.79-15.65a4 4 0 0 0 1-6.37L271.69 86.31a4 4 0 0 0-6.39 1c-12.12 22.99-13.82 46.91-15.16 65.77zm-9.95 146.83a20 20 0 1 1 0-25.25 20 20 0 0 1 0 25.25z\"},\"child\":[]}]})(props);\n};\nexport function IoFlaskOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M176 48h160M118 304h276M208 48v93.48a64.09 64.09 0 0 1-9.88 34.18L73.21 373.49C48.4 412.78 76.63 464 123.08 464h265.84c46.45 0 74.68-51.22 49.87-90.51L313.87 175.66a64.09 64.09 0 0 1-9.87-34.18V48\"},\"child\":[]}]})(props);\n};\nexport function IoFlaskSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M469.11 382.76 325 153.92V74h32V32H155v42h32v79.92L42.89 382.76c-13 20.64-14.78 43.73-3 65.1S71.59 480 96 480h320c24.41 0 44.32-10.76 56.1-32.14s10.04-44.46-2.99-65.1zM224.39 173.39a29.76 29.76 0 0 0 4.62-16V74h54v84.59a25.85 25.85 0 0 0 4 13.82L356.82 283H155.18z\"},\"child\":[]}]})(props);\n};\nexport function IoFlask (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M452.32 365 327.4 167.12a48.07 48.07 0 0 1-7.4-25.64V64h15.56c8.61 0 16-6.62 16.43-15.23A16 16 0 0 0 336 32H176.45c-8.61 0-16 6.62-16.43 15.23A16 16 0 0 0 176 64h16v77.48a47.92 47.92 0 0 1-7.41 25.63L59.68 365a74 74 0 0 0-2.5 75.84C70.44 465.19 96.36 480 124.13 480h263.74c27.77 0 53.69-14.81 66.95-39.21a74 74 0 0 0-2.5-75.79zM211.66 184.2A79.94 79.94 0 0 0 224 141.48V68a4 4 0 0 1 4-4h56a4 4 0 0 1 4 4v73.48a79.94 79.94 0 0 0 12.35 42.72l57.8 91.53a8 8 0 0 1-6.78 12.27H160.63a8 8 0 0 1-6.77-12.27z\"},\"child\":[]}]})(props);\n};\nexport function IoFlowerOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M215.08 156.92c-4.89-24-10.77-56.27-10.77-73.23A51.36 51.36 0 0 1 256 32h0c28.55 0 51.69 23.69 51.69 51.69 0 16.5-5.85 48.95-10.77 73.23m-81.84 198.16c-4.91 24.06-10.77 56.16-10.77 73.23A51.36 51.36 0 0 0 256 480h0c28.55 0 51.69-23.69 51.69-51.69 0-16.54-5.85-48.93-10.77-73.23m58.16-140c24.06-4.91 56.16-10.77 73.23-10.77A51.36 51.36 0 0 1 480 256h0c0 28.55-23.69 51.69-51.69 51.69-16.5 0-48.95-5.85-73.23-10.77m-198.16-81.85c-24-4.89-56.25-10.76-73.23-10.76A51.36 51.36 0 0 0 32 256h0c0 28.55 23.69 51.69 51.69 51.69 16.5 0 48.95-5.85 73.23-10.77\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M296.92 156.92c13.55-20.48 32.3-47.25 44.37-59.31a51.35 51.35 0 0 1 73.1 0h0c20.19 20.19 19.8 53.3 0 73.1-11.66 11.67-38.67 30.67-59.31 44.37m-198.16 81.84c-20.48 13.55-47.25 32.3-59.31 44.37a51.35 51.35 0 0 0 0 73.1h0c20.19 20.19 53.3 19.8 73.1 0 11.67-11.66 30.67-38.67 44.37-59.31m140-58.16c20.48 13.55 47.25 32.3 59.31 44.37a51.35 51.35 0 0 1 0 73.1h0c-20.19 20.19-53.3 19.8-73.1 0-11.69-11.69-30.66-38.65-44.37-59.31m-81.84-198.16c-13.53-20.43-32.38-47.32-44.37-59.31a51.35 51.35 0 0 0-73.1 0h0c-20.19 20.19-19.8 53.3 0 73.1 11.61 11.61 38.7 30.68 59.31 44.37\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"256\",\"r\":\"64\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\"},\"child\":[]}]})(props);\n};\nexport function IoFlowerSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"256\",\"r\":\"43\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M475.93 303.91a67.49 67.49 0 0 0-47.62-115.6c-2.88 0-6.2.14-9.93.43 2.75-2.36 5.23-4.62 7.33-6.71A67.83 67.83 0 0 0 378 66.33h-.25a67.27 67.27 0 0 0-47.82 20c-2.11 2.11-4.37 4.59-6.72 7.33.29-3.75.44-7.07.44-9.93a67.69 67.69 0 1 0-135.38 0c0 2.87.15 6.19.44 9.93-2.36-2.74-4.62-5.22-6.72-7.33a67.27 67.27 0 0 0-47.82-20H134A67.9 67.9 0 0 0 86.29 182c2.1 2.09 4.58 4.35 7.34 6.72-3.74-.29-7.06-.44-9.94-.44a67.69 67.69 0 0 0 0 135.38c2.86 0 6.18-.15 9.93-.44-2.74 2.35-5.22 4.61-7.33 6.72a67.55 67.55 0 0 0 47.82 115.42h.25A67.32 67.32 0 0 0 182 425.71c2.09-2.1 4.35-4.58 6.71-7.33-.28 3.73-.43 7.05-.43 9.93a67.69 67.69 0 0 0 135.38 0c0-2.87-.15-6.19-.44-9.94 2.36 2.75 4.62 5.24 6.72 7.34a67.32 67.32 0 0 0 47.67 19.68h.25A67.5 67.5 0 0 0 425.71 330c-2.11-2.11-4.59-4.37-7.33-6.72 3.75.29 7.07.44 9.93.44a67.27 67.27 0 0 0 47.62-19.81zM256 341a85 85 0 1 1 85-85 85.1 85.1 0 0 1-85 85z\"},\"child\":[]}]})(props);\n};\nexport function IoFlower (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"256\",\"r\":\"48\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M475.93 303.91a67.49 67.49 0 0 0-44.34-115.53 5.2 5.2 0 0 1-4.58-3.21 5.21 5.21 0 0 1 1-5.51A67.83 67.83 0 0 0 378 66.33h-.25A67.13 67.13 0 0 0 332.35 84a5.21 5.21 0 0 1-5.52 1 5.23 5.23 0 0 1-3.22-4.58 67.68 67.68 0 0 0-135.23 0 5.2 5.2 0 0 1-3.21 4.58 5.21 5.21 0 0 1-5.52-1 67.11 67.11 0 0 0-45.44-17.69H134a67.91 67.91 0 0 0-50 113.34 5.21 5.21 0 0 1 1 5.51 5.2 5.2 0 0 1-4.58 3.21 67.71 67.71 0 0 0 0 135.23 5.23 5.23 0 0 1 4.58 3.23 5.22 5.22 0 0 1-1 5.52 67.54 67.54 0 0 0 50.08 113h.25A67.38 67.38 0 0 0 179.65 428a5.21 5.21 0 0 1 5.51-1 5.2 5.2 0 0 1 3.21 4.58 67.71 67.71 0 0 0 135.23 0 5.23 5.23 0 0 1 3.22-4.58 5.21 5.21 0 0 1 5.51 1 67.38 67.38 0 0 0 45.29 17.42h.25a67.48 67.48 0 0 0 50.08-113 5.22 5.22 0 0 1-1-5.52 5.23 5.23 0 0 1 4.58-3.22 67.31 67.31 0 0 0 44.4-19.77zM256 336a80 80 0 1 1 80-80 80.09 80.09 0 0 1-80 80z\"},\"child\":[]}]})(props);\n};\nexport function IoFolderOpenOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M64 192v-72a40 40 0 0 1 40-40h75.89a40 40 0 0 1 22.19 6.72l27.84 18.56a40 40 0 0 0 22.19 6.72H408a40 40 0 0 1 40 40v40\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M479.9 226.55 463.68 392a40 40 0 0 1-39.93 40H88.25a40 40 0 0 1-39.93-40L32.1 226.55A32 32 0 0 1 64 192h384.1a32 32 0 0 1 31.8 34.55z\"},\"child\":[]}]})(props);\n};\nexport function IoFolderOpenSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m16.08 189.4 28.58 233.87A28 28 0 0 0 72.52 448h367a28 28 0 0 0 27.86-24.73l28.54-233.87A12 12 0 0 0 484 176H28a12 12 0 0 0-11.92 13.4zM464 124a28 28 0 0 0-28-28H244.84l-48-32H76a28 28 0 0 0-28 28v52h416z\"},\"child\":[]}]})(props);\n};\nexport function IoFolderOpen (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M408 96H252.11a23.89 23.89 0 0 1-13.31-4L211 73.41A55.77 55.77 0 0 0 179.89 64H104a56.06 56.06 0 0 0-56 56v24h416c0-30.88-25.12-48-56-48zm15.75 352H88.25a56 56 0 0 1-55.93-55.15L16.18 228.11v-.28A48 48 0 0 1 64 176h384.1a48 48 0 0 1 47.8 51.83v.28l-16.22 164.74A56 56 0 0 1 423.75 448zm56.15-221.45z\"},\"child\":[]}]})(props);\n};\nexport function IoFolderOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M440 432H72a40 40 0 0 1-40-40V120a40 40 0 0 1 40-40h75.89a40 40 0 0 1 22.19 6.72l27.84 18.56a40 40 0 0 0 22.19 6.72H440a40 40 0 0 1 40 40v240a40 40 0 0 1-40 40zM32 192h448\"},\"child\":[]}]})(props);\n};\nexport function IoFolderSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 420a28 28 0 0 0 28 28h424a28 28 0 0 0 28-28V208H16zm480-296a28 28 0 0 0-28-28H212.84l-48-32H44a28 28 0 0 0-28 28v84h480z\"},\"child\":[]}]})(props);\n};\nexport function IoFolder (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M496 152a56 56 0 0 0-56-56H220.11a23.89 23.89 0 0 1-13.31-4L179 73.41A55.77 55.77 0 0 0 147.89 64H72a56 56 0 0 0-56 56v48a8 8 0 0 0 8 8h464a8 8 0 0 0 8-8zM16 392a56 56 0 0 0 56 56h368a56 56 0 0 0 56-56V216a8 8 0 0 0-8-8H24a8 8 0 0 0-8 8z\"},\"child\":[]}]})(props);\n};\nexport function IoFootballOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"256\",\"r\":\"192\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"m256 175.15-76.09 63.83L200 320h112l20.09-81.02L256 175.15zm76.09 63.83 52.87-22.4 25.78-73.26M447 269.97l-62.04-53.39m-205.05 22.4-52.87-22.4-25.78-73.26M65 269.97l62.04-53.39M256 175.15v-57.57l64-42.64m-128-.01 64 42.65M312 320l28 48-28 71m98.74-71H342m-142-48-28 48 28.37 71.5M101.63 368H172\"},\"child\":[]}]})(props);\n};\nexport function IoFootballSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 48C141.31 48 48 141.31 48 256s93.31 208 208 208 208-93.31 208-208S370.69 48 256 48zm140.64 296.08h-46.77l-16.89-29 15-60.44L377.79 242l42.65 36.71a164.87 164.87 0 0 1-23.8 65.37zM134.21 242 164 254.67l15 60.44-16.89 29h-46.75a164.87 164.87 0 0 1-23.8-65.34zm249.07-92.47-18.41 52.33-31.12 13.18L277 167.46v-35l43.86-29.22a166.87 166.87 0 0 1 62.42 46.32zM191.14 103.2 235 132.42v35l-56.75 47.61-31.12-13.18-18.41-52.33a166.87 166.87 0 0 1 62.42-46.32zm26.44 314.3-20.1-50.66 16-27.51h85l16.06 27.53-20 50.6a166.23 166.23 0 0 1-77 0z\"},\"child\":[]}]})(props);\n};\nexport function IoFootball (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 48C141.31 48 48 141.31 48 256s93.31 208 208 208 208-93.31 208-208S370.69 48 256 48zm143 304h-45.22a8 8 0 0 1-6.91-4l-16.14-27.68a8 8 0 0 1-.86-6l14.86-59.92a8 8 0 0 1 4.65-5.45l28.1-11.9a8 8 0 0 1 8.34 1.3l41.63 35.82a8 8 0 0 1 2.69 7.26 174.75 174.75 0 0 1-24.28 66.68A8 8 0 0 1 399 352zM134.52 237.13l28.1 11.9a8 8 0 0 1 4.65 5.45l14.86 59.92a8 8 0 0 1-.86 6L165.13 348a8 8 0 0 1-6.91 4H113a8 8 0 0 1-6.82-3.81 174.75 174.75 0 0 1-24.28-66.68 8 8 0 0 1 2.69-7.26l41.63-35.82a8 8 0 0 1 8.3-1.3zm256.94-87.24-18.07 51.38A8 8 0 0 1 369 206l-29.58 12.53a8 8 0 0 1-8.26-1.24L274.9 170.1a8 8 0 0 1-2.9-6.1v-33.58a8 8 0 0 1 3.56-6.65l42.83-28.54a8 8 0 0 1 7.66-.67A176.92 176.92 0 0 1 390 142a8 8 0 0 1 1.46 7.89zM193.6 95.23l42.84 28.54a8 8 0 0 1 3.56 6.65V164a8 8 0 0 1-2.86 6.13l-56.26 47.19a8 8 0 0 1-8.26 1.24L143 206a8 8 0 0 1-4.43-4.72L120.5 149.9a8 8 0 0 1 1.5-7.9 176.92 176.92 0 0 1 64-47.48 8 8 0 0 1 7.6.71zm17.31 327.46L191.18 373a8 8 0 0 1 .52-7l15.17-26a8 8 0 0 1 6.91-4h84.44a8 8 0 0 1 6.91 4l15.18 26a8 8 0 0 1 .53 7l-19.59 49.67a8 8 0 0 1-5.69 4.87 176.58 176.58 0 0 1-79 0 8 8 0 0 1-5.65-4.85z\"},\"child\":[]}]})(props);\n};\nexport function IoFootstepsOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M200 246.84c8.81 58.62-7.33 90.67-52.91 97.41-50.65 7.49-71.52-26.44-80.33-85.06-11.85-78.88 16-127.94 55.71-131.1 36.14-2.87 68.71 60.14 77.53 118.75zm23.65 162.69c3.13 33.28-14.86 64.34-42 69.66-27.4 5.36-58.71-16.37-65.09-49.19s17.75-34.56 47.32-40.21 55.99-20.4 59.77 19.74zM312 150.83c-8.81 58.62 7.33 90.67 52.9 97.41 50.66 7.49 71.52-26.44 80.33-85.06 11.86-78.89-16-128.22-55.7-131.1-36.4-2.64-68.71 60.13-77.53 118.75zm-23.65 162.7c-3.13 33.27 14.86 64.34 42 69.66 27.4 5.36 58.71-16.37 65.09-49.19s-17.75-34.56-47.32-40.22-55.99-20.4-59.77 19.75z\"},\"child\":[]}]})(props);\n};\nexport function IoFootstepsSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M130.54 358.31c-12.83 1.88-33.95 5.38-48-10.56S56.34 293.32 51 258.92c-7.88-50.7-.06-93.43 22-120.31 13-15.83 30.06-25 49.34-26.46 16.51-1.27 41.18 5.19 65 43.19 14.92 23.81 26.27 55.44 31.14 86.77 5.88 37.82 11.61 78.18-8.44 92.65-11.31 8.17-19.43 11-38.62 15.57-15.78 3.75-28.04 6.09-40.88 7.98zm-22.82 32.53 108.89-22.46c9.2-1.9 16.58 3.16 20 18.32 11.22 49.76-4.86 109.3-55.22 109.3-47.69 0-79.47-54.36-84.66-83.58-2.37-13.25 1.01-19.53 10.99-21.58zm232.87-136.5c-19.19-4.55-27.31-7.4-38.62-15.57-20.05-14.47-14.32-54.83-8.44-92.65 4.87-31.33 16.22-63 31.14-86.77 23.8-38 48.47-44.46 65-43.19C408.93 17.63 426 26.78 439 42.61c22.08 26.88 29.9 69.61 22 120.31-5.35 34.4-17.46 72.76-31.59 88.83s-35.13 12.44-48 10.56-25.05-4.23-40.82-7.97zm63.69 40.5-108.89-22.46c-9.2-1.9-16.58 3.16-20 18.32-11.21 49.76 4.87 109.3 55.23 109.3 47.69 0 79.47-54.36 84.66-83.58 2.36-13.25-1.02-19.53-11-21.58z\"},\"child\":[]}]})(props);\n};\nexport function IoFootsteps (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M133.83 361.27c-22.61 0-41-8.17-54.79-24.39s-22.84-40.29-28.11-75.31c-7.76-51.61-.06-95.11 21.68-122.48 12.8-16.12 29.6-25.44 48.58-26.94 16.25-1.3 40.54 5.29 64 44 14.69 24.24 25.86 56.44 30.65 88.34 5.79 38.51 1.48 66.86-13.18 86.65-11.64 15.72-29.54 25.46-53.21 29a106.46 106.46 0 0 1-15.62 1.13zM173 496c-13.21 0-26.6-4.23-38.66-12.36a79.79 79.79 0 0 1-33.52-50.6c-2.85-14.66-1.14-26.31 5.22-35.64 10.33-15.15 28.87-18.56 48.49-22.18 2.07-.38 4.17-.76 6.3-1.17 4.52-.86 9.14-2 13.62-3.11 16.78-4.14 34.14-8.43 48.47 1.75 9.59 6.8 15 18.36 16.62 35.32 1.84 19.57-2.36 39.1-11.83 55-10.19 17.11-25.47 28.42-43 31.86A61 61 0 0 1 173 496zm205.17-230.73a106.69 106.69 0 0 1-15.6-1.2c-23.66-3.5-41.56-13.25-53.2-29-14.66-19.79-19-48.13-13.18-86.65 4.79-31.93 15.93-64.1 30.55-88.25 23.34-38.57 47.66-45.26 64-44.08 18.92 1.38 35.69 10.57 48.51 26.6 21.89 27.37 29.65 71 21.86 122.84-5.27 35-14.2 58.95-28.11 75.31s-32.22 24.43-54.83 24.43zM339 400a61 61 0 0 1-11.68-1.13c-17.56-3.44-32.84-14.75-43-31.86-9.47-15.9-13.67-35.43-11.83-55 1.6-17 7-28.52 16.62-35.33 14.33-10.17 31.69-5.89 48.47-1.74 4.48 1.1 9.1 2.24 13.62 3.11l6.29 1.17c19.63 3.61 38.17 7 48.5 22.17 6.36 9.33 8.07 21 5.22 35.64a79.78 79.78 0 0 1-33.52 50.61C365.56 395.78 352.17 400 339 400z\"},\"child\":[]}]})(props);\n};\nexport function IoFunnelOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"m35.4 87.12 168.65 196.44A16.07 16.07 0 0 1 208 294v119.32a7.93 7.93 0 0 0 5.39 7.59l80.15 26.67A7.94 7.94 0 0 0 304 440V294a16.07 16.07 0 0 1 4-10.44L476.6 87.12A14 14 0 0 0 466 64H46.05A14 14 0 0 0 35.4 87.12z\"},\"child\":[]}]})(props);\n};\nexport function IoFunnelSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m0 48 192 240v128l128 48V288L512 48H0z\"},\"child\":[]}]})(props);\n};\nexport function IoFunnel (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M296 464a23.88 23.88 0 0 1-7.55-1.23L208.3 436.1a23.92 23.92 0 0 1-16.3-22.78V294.11a.44.44 0 0 0-.09-.13L23.26 97.54A30 30 0 0 1 46.05 48H466a30 30 0 0 1 22.79 49.54L320.09 294a.77.77 0 0 0-.09.13V440a23.93 23.93 0 0 1-24 24z\"},\"child\":[]}]})(props);\n};\nexport function IoGameControllerOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M467.51 248.83c-18.4-83.18-45.69-136.24-89.43-149.17A91.5 91.5 0 0 0 352 96c-26.89 0-48.11 16-96 16s-69.15-16-96-16a99.09 99.09 0 0 0-27.2 3.66C89 112.59 61.94 165.7 43.33 248.83c-19 84.91-15.56 152 21.58 164.88 26 9 49.25-9.61 71.27-37 25-31.2 55.79-40.8 119.82-40.8s93.62 9.6 118.66 40.8c22 27.41 46.11 45.79 71.42 37.16 41.02-14.01 40.44-79.13 21.43-165.04z\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"292\",\"cy\":\"224\",\"r\":\"20\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M336 288a20 20 0 1 1 20-19.95A20 20 0 0 1 336 288z\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"336\",\"cy\":\"180\",\"r\":\"20\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"380\",\"cy\":\"224\",\"r\":\"20\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M160 176v96m48-48h-96\"},\"child\":[]}]})(props);\n};\nexport function IoGameControllerSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M478.07 356.88 439 151c-8.86-40.35-23-71-88-71H145c-66 0-79.14 30.65-88 71L18 356.88c-7 34.12 4.43 61.25 33.37 71.81S103 423 119.18 391.3l15.42-30.52a16 16 0 0 1 14.28-8.78h198.28a16 16 0 0 1 14.28 8.78l15.42 30.52c16.14 31.7 38.88 48 67.81 37.39S485 391 478.07 356.88zM224 240h-48v48h-32v-48H96v-32h48v-48h32v48h48zm68 4a20 20 0 1 1 20-20 20 20 0 0 1-20 20zm44 44a20 20 0 1 1 20-20 20 20 0 0 1-20 20zm0-88a20 20 0 1 1 20-20 20 20 0 0 1-20 20zm44 44a20 20 0 1 1 20-20 20 20 0 0 1-20 20z\"},\"child\":[]}]})(props);\n};\nexport function IoGameController (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M483.13 245.38C461.92 149.49 430 98.31 382.65 84.33A107.13 107.13 0 0 0 352 80c-13.71 0-25.65 3.34-38.28 6.88C298.5 91.15 281.21 96 256 96s-42.51-4.84-57.76-9.11C185.6 83.34 173.67 80 160 80a115.74 115.74 0 0 0-31.73 4.32c-47.1 13.92-79 65.08-100.52 161C4.61 348.54 16 413.71 59.69 428.83a56.62 56.62 0 0 0 18.64 3.22c29.93 0 53.93-24.93 70.33-45.34 18.53-23.1 40.22-34.82 107.34-34.82 59.95 0 84.76 8.13 106.19 34.82 13.47 16.78 26.2 28.52 38.9 35.91 16.89 9.82 33.77 12 50.16 6.37 25.82-8.81 40.62-32.1 44-69.24 2.57-28.48-1.39-65.89-12.12-114.37zM208 240h-32v32a16 16 0 0 1-32 0v-32h-32a16 16 0 0 1 0-32h32v-32a16 16 0 0 1 32 0v32h32a16 16 0 0 1 0 32zm84 4a20 20 0 1 1 20-20 20 20 0 0 1-20 20zm44 44a20 20 0 1 1 20-19.95A20 20 0 0 1 336 288zm0-88a20 20 0 1 1 20-20 20 20 0 0 1-20 20zm44 44a20 20 0 1 1 20-20 20 20 0 0 1-20 20z\"},\"child\":[]}]})(props);\n};\nexport function IoGiftOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M256 104v56h56a56 56 0 1 0-56-56zm0 0v56h-56a56 56 0 1 1 56-56z\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"384\",\"height\":\"112\",\"x\":\"64\",\"y\":\"160\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"rx\":\"32\",\"ry\":\"32\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M416 272v144a48 48 0 0 1-48 48H144a48 48 0 0 1-48-48V272m160-112v304\"},\"child\":[]}]})(props);\n};\nexport function IoGiftSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"d\":\"M346 110a34 34 0 0 0-68 0v34h34a34 34 0 0 0 34-34zm-112 0a34 34 0 1 0-34 34h34z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M234 144h44v112h164a22 22 0 0 0 22-22v-68a22 22 0 0 0-22-22h-59.82A77.95 77.95 0 0 0 256 55.79 78 78 0 0 0 129.81 144H70a22 22 0 0 0-22 22v68a22 22 0 0 0 22 22h164zm44-34a34 34 0 1 1 34 34h-34zm-112 0a34 34 0 1 1 68 0v34h-34a34 34 0 0 1-34-34zm112 370h132a22 22 0 0 0 22-22V288H278zM80 458a22 22 0 0 0 22 22h132V288H80z\"},\"child\":[]}]})(props);\n};\nexport function IoGift (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"d\":\"M200 144h40v-40a40 40 0 1 0-40 40zm152-40a40 40 0 0 0-80 0v40h40a40 40 0 0 0 40-40z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M80 416a64 64 0 0 0 64 64h92a4 4 0 0 0 4-4V292a4 4 0 0 0-4-4H88a8 8 0 0 0-8 8zm160-164V144h32v108a4 4 0 0 0 4 4h140a47.93 47.93 0 0 0 16-2.75A48.09 48.09 0 0 0 464 208v-16a48 48 0 0 0-48-48h-40.54a2 2 0 0 1-1.7-3A72 72 0 0 0 256 58.82 72 72 0 0 0 138.24 141a2 2 0 0 1-1.7 3H96a48 48 0 0 0-48 48v16a48.09 48.09 0 0 0 32 45.25A47.93 47.93 0 0 0 96 256h140a4 4 0 0 0 4-4zm32-148a40 40 0 1 1 40 40h-40zm-74.86-39.9A40 40 0 0 1 240 104v40h-40a40 40 0 0 1-2.86-79.89zM276 480h92a64 64 0 0 0 64-64V296a8 8 0 0 0-8-8H276a4 4 0 0 0-4 4v184a4 4 0 0 0 4 4z\"},\"child\":[]}]})(props);\n};\nexport function IoGitBranchOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"circle\",\"attr\":{\"cx\":\"160\",\"cy\":\"96\",\"r\":\"48\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"160\",\"cy\":\"416\",\"r\":\"48\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M160 368V144\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"352\",\"cy\":\"160\",\"r\":\"48\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M352 208c0 128-192 48-192 160\"},\"child\":[]}]})(props);\n};\nexport function IoGitBranchSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M352 96a64 64 0 0 0-58.86 89.11l-101.14 88V151.39a64 64 0 1 0-64 0v209.22a64 64 0 1 0 64 0V358l154.25-134.27c1.9.17 3.81.27 5.75.27a64 64 0 0 0 0-128zM160 64a32 32 0 1 1-32 32 32 32 0 0 1 32-32zm0 384a32 32 0 1 1 32-32 32 32 0 0 1-32 32zm192-256a32 32 0 1 1 32-32 32 32 0 0 1-32 32z\"},\"child\":[]}]})(props);\n};\nexport function IoGitBranch (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M416 160a64 64 0 1 0-96.27 55.24c-2.29 29.08-20.08 37-75 48.42-17.76 3.68-35.93 7.45-52.71 13.93v-126.2a64 64 0 1 0-64 0v209.22a64 64 0 1 0 64.42.24c2.39-18 16-24.33 65.26-34.52 27.43-5.67 55.78-11.54 79.78-26.95 29-18.58 44.53-46.78 46.36-83.89A64 64 0 0 0 416 160zM160 64a32 32 0 1 1-32 32 32 32 0 0 1 32-32zm0 384a32 32 0 1 1 32-32 32 32 0 0 1-32 32zm192-256a32 32 0 1 1 32-32 32 32 0 0 1-32 32z\"},\"child\":[]}]})(props);\n};\nexport function IoGitCommitOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"256\",\"r\":\"96\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M160 256H48m416 0H352\"},\"child\":[]}]})(props);\n};\nexport function IoGitCommitSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M480 224H380a128 128 0 0 0-247.9 0H32v64h100.05A128 128 0 0 0 380 288h100zm-224 96a64 64 0 1 1 64-64 64.07 64.07 0 0 1-64 64z\"},\"child\":[]}]})(props);\n};\nexport function IoGitCommit (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M448 224h-68a128 128 0 0 0-247.9 0H64a32 32 0 0 0 0 64h68.05A128 128 0 0 0 380 288h68a32 32 0 0 0 0-64zm-192 96a64 64 0 1 1 64-64 64.07 64.07 0 0 1-64 64z\"},\"child\":[]}]})(props);\n};\nexport function IoGitCompareOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"m304 160-64-64 64-64m-97 320 64 64-64 64\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"112\",\"cy\":\"96\",\"r\":\"48\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"400\",\"cy\":\"416\",\"r\":\"48\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M256 96h84a60 60 0 0 1 60 60v212m-145 48h-84a60 60 0 0 1-60-60V144\"},\"child\":[]}]})(props);\n};\nexport function IoGitCompareSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M209 384h-37a28 28 0 0 1-28-28V152a64 64 0 1 0-64-1.16V356a92.1 92.1 0 0 0 92 92h37v55.21L294.39 416 209 328.79zM113 64a32 32 0 1 1-32 32 32 32 0 0 1 32-32zm319 296.61V156a92.1 92.1 0 0 0-92-92h-35V9.93L217.14 96 305 182.07V128h35a28 28 0 0 1 28 28v204.61a64 64 0 1 0 64 0zM400 448a32 32 0 1 1 32-32 32 32 0 0 1-32 32z\"},\"child\":[]}]})(props);\n};\nexport function IoGitCompare (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M218.31 340.69A16 16 0 0 0 191 352v32h-20a28 28 0 0 1-28-28V152a64 64 0 1 0-64-1.16V356a92.1 92.1 0 0 0 92 92h20v32a16 16 0 0 0 27.31 11.31l64-64a16 16 0 0 0 0-22.62zM112 64a32 32 0 1 1-32 32 32 32 0 0 1 32-32zm320 296.61V156a92.1 92.1 0 0 0-92-92h-20V32a16 16 0 0 0-27.31-11.31l-64 64a16 16 0 0 0 0 22.62l64 64A16 16 0 0 0 320 160v-32h20a28 28 0 0 1 28 28v204.61a64 64 0 1 0 64 0zM400 448a32 32 0 1 1 32-32 32 32 0 0 1-32 32z\"},\"child\":[]}]})(props);\n};\nexport function IoGitMergeOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"circle\",\"attr\":{\"cx\":\"129\",\"cy\":\"96\",\"r\":\"48\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"129\",\"cy\":\"416\",\"r\":\"48\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M129 144v224\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"385\",\"cy\":\"288\",\"r\":\"48\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M129 144c0 96 112 144 208 144\"},\"child\":[]}]})(props);\n};\nexport function IoGitMergeSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M384 224a63.66 63.66 0 0 0-37.95 12.5L160 153.36v-2a64 64 0 1 0-64 0v209.25a64 64 0 1 0 64 0V223.46l160.41 71.69A64 64 0 1 0 384 224zM128 64a32 32 0 1 1-32 32 32 32 0 0 1 32-32zm0 384a32 32 0 1 1 32-32 32 32 0 0 1-32 32zm256-128a32 32 0 1 1 32-32 32 32 0 0 1-32 32z\"},\"child\":[]}]})(props);\n};\nexport function IoGitMerge (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M385 224a64 64 0 0 0-55.33 31.89c-42.23-1.21-85.19-12.72-116.21-31.33-32.2-19.32-49.71-44-52.15-73.35a64 64 0 1 0-64.31.18v209.22a64 64 0 1 0 64 0v-94.46c44.76 34 107.28 52.38 168.56 53.76A64 64 0 1 0 385 224zM129 64a32 32 0 1 1-32 32 32 32 0 0 1 32-32zm0 384a32 32 0 1 1 32-32 32 32 0 0 1-32 32zm256-128a32 32 0 1 1 32-32 32 32 0 0 1-32 32z\"},\"child\":[]}]})(props);\n};\nexport function IoGitNetworkOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"circle\",\"attr\":{\"cx\":\"128\",\"cy\":\"96\",\"r\":\"48\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"416\",\"r\":\"48\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M256 256v112\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"384\",\"cy\":\"96\",\"r\":\"48\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M128 144c0 74.67 68.92 112 128 112m128-112c0 74.67-68.92 112-128 112\"},\"child\":[]}]})(props);\n};\nexport function IoGitNetworkSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M384 32a64 64 0 0 0-57.67 91.73l-70.83 80.82-70.19-80.1A64 64 0 1 0 128 160c1.1 0 2.2 0 3.29-.08L224 265.7v94.91a64 64 0 1 0 64 0v-96.05l91.78-104.71c1.39.09 2.8.15 4.22.15a64 64 0 0 0 0-128zM96 96a32 32 0 1 1 32 32 32 32 0 0 1-32-32zm160 352a32 32 0 1 1 32-32 32 32 0 0 1-32 32zm128-320a32 32 0 1 1 32-32 32 32 0 0 1-32 32z\"},\"child\":[]}]})(props);\n};\nexport function IoGitNetwork (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M448 96a64 64 0 1 0-96.31 55.21c-1.79 20.87-11.47 38.1-28.87 51.29C305.07 216 280.09 224 256 224s-49.07-8-66.82-21.5c-17.4-13.19-27.08-30.42-28.87-51.29a64 64 0 1 0-64.11.29c2.08 40.87 21.17 76.87 54.31 102C171.3 269.26 197 280.19 224 285.09v75.52a64 64 0 1 0 64 0v-75.52c27-4.9 52.7-15.83 73.49-31.59 33.14-25.13 52.23-61.13 54.31-102A64 64 0 0 0 448 96zM128 64a32 32 0 1 1-32 32 32 32 0 0 1 32-32zm128 384a32 32 0 1 1 32-32 32 32 0 0 1-32 32zm128-320a32 32 0 1 1 32-32 32 32 0 0 1-32 32z\"},\"child\":[]}]})(props);\n};\nexport function IoGitPullRequestOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"circle\",\"attr\":{\"cx\":\"128\",\"cy\":\"416\",\"r\":\"48\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M128 144v224m160-208-64-64 64-64\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"128\",\"cy\":\"96\",\"r\":\"48\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"384\",\"cy\":\"416\",\"r\":\"48\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M240 96h84a60 60 0 0 1 60 60v212\"},\"child\":[]}]})(props);\n};\nexport function IoGitPullRequestSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M192 96a64 64 0 1 0-97 54.81v209.8a64 64 0 1 0 64 0V152a64.06 64.06 0 0 0 33-56zm-64-32a32 32 0 1 1-32 32 32 32 0 0 1 32-32zm-1 384a32 32 0 1 1 32-32 32 32 0 0 1-32 32zm289-87.39V156a92.1 92.1 0 0 0-92-92h-35V9.93L201.14 96 289 182.07V128h35a28 28 0 0 1 28 28v204.61a64 64 0 1 0 64 0zM384 448a32 32 0 1 1 32-32 32 32 0 0 1-32 32z\"},\"child\":[]}]})(props);\n};\nexport function IoGitPullRequest (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M192 96a64 64 0 1 0-96 55.39v209.22a64 64 0 1 0 64 0V151.39A64 64 0 0 0 192 96zm-64-32a32 32 0 1 1-32 32 32 32 0 0 1 32-32zm0 384a32 32 0 1 1 32-32 32 32 0 0 1-32 32zm288-87.39V156a92.1 92.1 0 0 0-92-92h-20V32a16 16 0 0 0-27.31-11.31l-64 64a16 16 0 0 0 0 22.62l64 64A16 16 0 0 0 304 160v-32h20a28 28 0 0 1 28 28v204.61a64 64 0 1 0 64 0zM384 448a32 32 0 1 1 32-32 32 32 0 0 1-32 32z\"},\"child\":[]}]})(props);\n};\nexport function IoGlassesOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M224 232a32 32 0 0 1 64 0m160-32h16m-400 0H48m16 0c0 96 16 128 80 128s80-32 80-128c0 0-16-16-80-16s-80 16-80 16zm384 0c0 96-16 128-80 128s-80-32-80-128c0 0 16-16 80-16s80 16 80 16z\"},\"child\":[]}]})(props);\n};\nexport function IoGlassesSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M496 176H16v64h21.24l12.44 112h171.87L240 241.32V240a16 16 0 0 1 32 0v1.32L290.45 352h171.87l12.44-112H496z\"},\"child\":[]}]})(props);\n};\nexport function IoGlasses (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M464 184h-10.9a78.72 78.72 0 0 0-16-7.18C419.5 171 396.26 168 368 168s-51.5 3-69.06 8.82c-14.06 4.69-20.25 9.86-22.25 11.87a47.94 47.94 0 0 0-41.36 0c-2-2-8.19-7.18-22.25-11.87C195.5 171 172.26 168 144 168s-51.5 3-69.06 8.82a78.72 78.72 0 0 0-16 7.18H48a16 16 0 0 0 0 32h.17c1 45.46 6.44 72.78 18.11 92.23a66.78 66.78 0 0 0 31.92 28c12.23 5.24 27.22 7.79 45.8 7.79 24.15 0 58.48-3.71 77.72-35.77 9.68-16.14 15.09-37.69 17.21-70.52A16 16 0 0 0 240 232a16 16 0 0 1 32 0 16 16 0 0 0 1.07 5.71c2.12 32.83 7.53 54.38 17.21 70.52a66.78 66.78 0 0 0 31.92 28c12.23 5.24 27.22 7.79 45.8 7.79 24.15 0 58.48-3.71 77.72-35.77 11.67-19.45 17.13-46.77 18.11-92.23h.17a16 16 0 0 0 0-32z\"},\"child\":[]}]})(props);\n};\nexport function IoGlobeOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M256 48C141.13 48 48 141.13 48 256s93.13 208 208 208 208-93.13 208-208S370.87 48 256 48z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M256 48c-58.07 0-112.67 93.13-112.67 208S197.93 464 256 464s112.67-93.13 112.67-208S314.07 48 256 48z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M117.33 117.33c38.24 27.15 86.38 43.34 138.67 43.34s100.43-16.19 138.67-43.34m0 277.34c-38.24-27.15-86.38-43.34-138.67-43.34s-100.43 16.19-138.67 43.34\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M256 48v416m208-208H48\"},\"child\":[]}]})(props);\n};\nexport function IoGlobeSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"44\",\"d\":\"M256 48C141.13 48 48 141.13 48 256s93.13 208 208 208 208-93.13 208-208S370.87 48 256 48z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"44\",\"d\":\"M256 48c-58.07 0-112.67 93.13-112.67 208S197.93 464 256 464s112.67-93.13 112.67-208S314.07 48 256 48z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"44\",\"d\":\"M117.33 121.33c38.24 27.15 86.38 43.34 138.67 43.34s100.43-16.19 138.67-43.34m0 269.34c-38.24-27.15-86.38-43.34-138.67-43.34s-100.43 16.19-138.67 43.34\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"44\",\"d\":\"M256 48v416m208-208H48\"},\"child\":[]}]})(props);\n};\nexport function IoGlobe (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M340.75 344.49c5.91-20.7 9.82-44.75 11.31-67.84a4.41 4.41 0 0 0-4.46-4.65h-71.06a4.43 4.43 0 0 0-4.47 4.39v55.3a4.44 4.44 0 0 0 4.14 4.38 273.51 273.51 0 0 1 59 11.39 4.45 4.45 0 0 0 5.54-2.97zm-17.17 32.82a260.05 260.05 0 0 0-46.6-9.09 4.42 4.42 0 0 0-4.91 4.29v65.24a4.47 4.47 0 0 0 6.76 3.7c15.9-9.27 29-24.84 40.84-45.43 1.94-3.36 4.89-9.15 6.67-12.69a4.29 4.29 0 0 0-2.76-6.02zm-88.29-8.91a256.85 256.85 0 0 0-46.56 8.82c-2.64.76-3.75 4.4-2.55 6.79 1.79 3.56 4 8.11 5.89 11.51 13 23 26.84 37.5 41.24 45.93a4.47 4.47 0 0 0 6.76-3.7v-65.27a4.16 4.16 0 0 0-4.78-4.08zm.31-96.4h-71.06a4.41 4.41 0 0 0-4.46 4.64c1.48 23.06 5.37 47.16 11.26 67.84a4.46 4.46 0 0 0 5.59 3 272.2 272.2 0 0 1 59-11.36 4.44 4.44 0 0 0 4.15-4.38V276.4a4.43 4.43 0 0 0-4.48-4.4zM277 143.78a235.8 235.8 0 0 0 46.5-9.14 4.3 4.3 0 0 0 2.76-6c-1.79-3.57-4.27-8.68-6.17-12.09-12.29-22-26.14-37.35-41.24-46a4.48 4.48 0 0 0-6.76 3.7v65.23a4.43 4.43 0 0 0 4.91 4.3zm-.46 96.22h71.06a4.39 4.39 0 0 0 4.46-4.58c-1.48-22.77-5.27-47.8-11.16-68.22a4.46 4.46 0 0 0-5.59-2.95c-19 5.74-38.79 10.43-59.09 12a4.4 4.4 0 0 0-4.15 4.32v55.11a4.4 4.4 0 0 0 4.47 4.32zM233.31 70.56c-15.42 8.57-29.17 24.43-41.47 46.37-1.91 3.41-4.19 8.11-6 11.67a4.31 4.31 0 0 0 2.76 6 225.42 225.42 0 0 0 46.54 9.17 4.43 4.43 0 0 0 4.91-4.29V74.26a4.49 4.49 0 0 0-6.74-3.7zm2.61 105.7c-20.3-1.55-40.11-6.24-59.09-12a4.46 4.46 0 0 0-5.59 2.95c-5.89 20.42-9.68 45.45-11.16 68.22a4.39 4.39 0 0 0 4.46 4.58h71.06a4.4 4.4 0 0 0 4.47-4.34v-55.09a4.4 4.4 0 0 0-4.15-4.32z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M414.39 97.61A224 224 0 1 0 97.61 414.39 224 224 0 1 0 414.39 97.61zM176.6 430.85a219.08 219.08 0 0 1-12.48-19.66c-2-3.69-4.84-9.26-6.73-13.13a7.29 7.29 0 0 0-10.31-3.16c-4.3 2.41-10 5.72-14.13 8.43a147.29 147.29 0 0 1-23.57-22.43 248.83 248.83 0 0 1 30.41-18.36c1.86-1 2.77-2.14 2.18-4.18a374.8 374.8 0 0 1-14.09-82.17 4.36 4.36 0 0 0-4.3-4.17H66.84a2 2 0 0 1-2-1.7A98.28 98.28 0 0 1 64 256a96.27 96.27 0 0 1 .86-14.29 2 2 0 0 1 2-1.7h56.74c2.29 0 4.17-1.32 4.29-3.63a372.71 372.71 0 0 1 14-81.83 4.36 4.36 0 0 0-2.19-5.11 260.63 260.63 0 0 1-29.84-17.9 169.82 169.82 0 0 1 23.14-22.8c4.08 2.68 9.4 5.71 13.66 8.11a7.89 7.89 0 0 0 11-3.42c1.88-3.87 4-8.18 6.06-11.88a221.93 221.93 0 0 1 12.54-19.91A185 185 0 0 1 256 64c28.94 0 55.9 7 80.53 18.46a202.23 202.23 0 0 1 12 19c2.59 4.66 5.34 10.37 7.66 15.32a4.29 4.29 0 0 0 5.92 1.94c5.38-2.91 11.21-6.26 16.34-9.63a171.36 171.36 0 0 1 23.2 23 244.89 244.89 0 0 1-29.06 17.31 4.35 4.35 0 0 0-2.18 5.12 348.68 348.68 0 0 1 13.85 81.4 4.33 4.33 0 0 0 4.3 4.12l56.62-.07a2 2 0 0 1 2 1.7 117.46 117.46 0 0 1 0 28.62 2 2 0 0 1-2 1.72h-56.67a4.35 4.35 0 0 0-4.3 4.17 367.4 367.4 0 0 1-13.87 81.3 4.45 4.45 0 0 0 2.19 5.19c5 2.59 10.57 5.48 15.37 8.42s9.55 6.08 14.13 9.34a172.73 172.73 0 0 1-23 22.93c-2.44-1.61-5.34-3.44-7.84-4.94-1.72-1-4.89-2.77-6.65-3.76-3.82-2.14-7.88-.54-9.79 3.4s-4.83 9.59-6.87 13.25a212.42 212.42 0 0 1-12.35 19.53C310.91 442.37 284.94 448 256 448s-54.77-5.63-79.4-17.15z\"},\"child\":[]}]})(props);\n};\nexport function IoGolfOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M256 400V32l176 80-176 80\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M256 336c-87 0-175.3 43.2-191.64 124.74C62.39 470.57 68.57 480 80 480h352c11.44 0 17.62-9.43 15.65-19.26C431.3 379.2 343 336 256 336z\"},\"child\":[]}]})(props);\n};\nexport function IoGolfSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M240 16v304.47q8-.47 16-.47t16 .47V202.3L448 112z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M462.91 457.5c-8.54-42.85-35-78.74-76.62-103.8-32.43-19.55-72.53-31.3-114.29-33.7v95.79h-32V320c-41.79 2.4-81.89 14.15-114.32 33.7-41.59 25.06-68.08 60.95-76.62 103.8-2 9.81-.68 38.5-.68 38.5h415.21s1.28-28.69-.68-38.5z\"},\"child\":[]}]})(props);\n};\nexport function IoGolf (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M272 320.46V202.3l166.62-75.73a16 16 0 0 0 0-29.14l-176-80A16 16 0 0 0 240 32v288.46q8-.45 16-.46t16 .46z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M463.33 457.5c-8.56-42.85-35.11-78.74-76.78-103.8-32.5-19.55-72.67-31.3-114.55-33.7v79.75a16 16 0 1 1-32 0V320c-41.88 2.4-82.05 14.15-114.55 33.7-41.67 25.06-68.22 60.95-76.78 103.8a32.49 32.49 0 0 0 6.44 27.08C61.13 492 70 496 80 496h352c10 0 18.88-4.05 24.9-11.42a32.49 32.49 0 0 0 6.43-27.08z\"},\"child\":[]}]})(props);\n};\nexport function IoGridOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"rect\",\"attr\":{\"width\":\"176\",\"height\":\"176\",\"x\":\"48\",\"y\":\"48\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"rx\":\"20\",\"ry\":\"20\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"176\",\"height\":\"176\",\"x\":\"288\",\"y\":\"48\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"rx\":\"20\",\"ry\":\"20\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"176\",\"height\":\"176\",\"x\":\"48\",\"y\":\"288\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"rx\":\"20\",\"ry\":\"20\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"176\",\"height\":\"176\",\"x\":\"288\",\"y\":\"288\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"rx\":\"20\",\"ry\":\"20\"},\"child\":[]}]})(props);\n};\nexport function IoGridSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M240 240H32V32h208zm240 0H272V32h208zM240 480H32V272h208zm240 0H272V272h208z\"},\"child\":[]}]})(props);\n};\nexport function IoGrid (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M204 240H68a36 36 0 0 1-36-36V68a36 36 0 0 1 36-36h136a36 36 0 0 1 36 36v136a36 36 0 0 1-36 36zm240 0H308a36 36 0 0 1-36-36V68a36 36 0 0 1 36-36h136a36 36 0 0 1 36 36v136a36 36 0 0 1-36 36zM204 480H68a36 36 0 0 1-36-36V308a36 36 0 0 1 36-36h136a36 36 0 0 1 36 36v136a36 36 0 0 1-36 36zm240 0H308a36 36 0 0 1-36-36V308a36 36 0 0 1 36-36h136a36 36 0 0 1 36 36v136a36 36 0 0 1-36 36z\"},\"child\":[]}]})(props);\n};\nexport function IoHammerOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M277.42 247a24.68 24.68 0 0 0-4.08-5.47L255 223.44a21.63 21.63 0 0 0-6.56-4.57 20.93 20.93 0 0 0-23.28 4.27c-6.36 6.26-18 17.68-39 38.43C146 301.3 71.43 367.89 37.71 396.29a16 16 0 0 0-1.09 23.54l39 39.43a16.13 16.13 0 0 0 23.67-.89c29.24-34.37 96.3-109 136-148.23 20.39-20.06 31.82-31.58 38.29-37.94a21.76 21.76 0 0 0 3.84-25.2zm201.01-46-34.31-34a5.44 5.44 0 0 0-4-1.59 5.59 5.59 0 0 0-4 1.59h0a11.41 11.41 0 0 1-9.55 3.27c-4.48-.49-9.25-1.88-12.33-4.86-7-6.86 1.09-20.36-5.07-29a242.88 242.88 0 0 0-23.08-26.72c-7.06-7-34.81-33.47-81.55-52.53a123.79 123.79 0 0 0-47-9.24c-26.35 0-46.61 11.76-54 18.51-5.88 5.32-12 13.77-12 13.77a91.29 91.29 0 0 1 10.81-3.2 79.53 79.53 0 0 1 23.28-1.49C241.19 76.8 259.94 84.1 270 92c16.21 13 23.18 30.39 24.27 52.83.8 16.69-15.23 37.76-30.44 54.94a7.85 7.85 0 0 0 .4 10.83l21.24 21.23a8 8 0 0 0 11.14.1c13.93-13.51 31.09-28.47 40.82-34.46s17.58-7.68 21.35-8.09a35.71 35.71 0 0 1 21.3 4.62 13.65 13.65 0 0 1 3.08 2.38c6.46 6.56 6.07 17.28-.5 23.74l-2 1.89a5.5 5.5 0 0 0 0 7.84l34.31 34a5.5 5.5 0 0 0 4 1.58 5.65 5.65 0 0 0 4-1.58L478.43 209a5.82 5.82 0 0 0 0-8z\"},\"child\":[]}]})(props);\n};\nexport function IoHammerSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m294.28 256.9-54.42-54.41a12 12 0 0 0-17 0L12.45 401a12 12 0 0 0-.27 17.2l66.05 66.28a12 12 0 0 0 17.22-.23l198.81-210.36a12 12 0 0 0 .02-16.99zm205.05-57.57-43.89-43.58a21.46 21.46 0 0 0-15.28-6.26 21.89 21.89 0 0 0-12.79 4.14c0-.43.06-.85.09-1.22.45-6.5 1.15-16.32-5.2-25.22a258 258 0 0 0-24.8-28.74.6.6 0 0 0-.08-.08c-13.32-13.12-42.31-37.83-86.72-55.94A139.55 139.55 0 0 0 257.56 32C226 32 202 46.24 192.81 54.68A53.4 53.4 0 0 0 176 86.17L192 96s8.06-2 13.86-3.39a62.73 62.73 0 0 1 18.45-1.15c13.19 1.09 28.79 7.64 35.69 13.09 11.7 9.41 17.33 22.09 18.26 41.09.2 4.23-9.52 21.35-24.16 39.84a8 8 0 0 0 .61 10.62l45.37 45.37a8 8 0 0 0 11 .25c12.07-11 30.49-28 34.67-30.59 7.69-4.73 13.19-5.64 14.7-5.8a19.18 19.18 0 0 1 11.29 2.38 1.24 1.24 0 0 1-.31.95l-1.82 1.73-.3.28a21.52 21.52 0 0 0 .05 30.54l43.95 43.68a8 8 0 0 0 11.28 0l74.68-74.2a8 8 0 0 0 .06-11.36z\"},\"child\":[]}]})(props);\n};\nexport function IoHammer (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m280.16 242.79-26.11-26.12a32 32 0 0 0-45.14-.12L27.38 384.08c-6.61 6.23-10.95 14.17-11.35 23.06a32.11 32.11 0 0 0 9.21 23.94l39 39.43a.46.46 0 0 0 .07.07A32.29 32.29 0 0 0 87 480h1.18c8.89-.33 16.85-4.5 23.17-11.17l168.7-180.7a32 32 0 0 0 .11-45.34zM490 190l-.31-.31-34.27-33.92a21.46 21.46 0 0 0-15.28-6.26 21.89 21.89 0 0 0-12.79 4.14c0-.43.06-.85.09-1.22.45-6.5 1.15-16.32-5.2-25.22a258 258 0 0 0-24.8-28.74.6.6 0 0 0-.08-.08c-13.32-13.12-42.31-37.83-86.72-55.94A139.55 139.55 0 0 0 257.56 32C226 32 202 46.24 192.81 54.68a119.92 119.92 0 0 0-14.18 16.22 16 16 0 0 0 18.65 24.34 74.45 74.45 0 0 1 8.58-2.63 63.46 63.46 0 0 1 18.45-1.15c13.19 1.09 28.79 7.64 35.69 13.09 11.7 9.41 17.33 22.09 18.26 41.09.18 3.82-7.72 18.14-20 34.48a16 16 0 0 0 1.45 21l34.41 34.41a16 16 0 0 0 22 .62c9.73-8.69 24.55-21.79 29.73-25 7.69-4.73 13.19-5.64 14.7-5.8a19.18 19.18 0 0 1 11.29 2.38 1.24 1.24 0 0 1-.31.95l-1.82 1.73-.3.28a21.52 21.52 0 0 0 .05 30.54l34.26 33.91a21.45 21.45 0 0 0 15.28 6.25 21.7 21.7 0 0 0 15.22-6.2l55.5-54.82c.19-.19.38-.39.56-.59A21.87 21.87 0 0 0 490 190z\"},\"child\":[]}]})(props);\n};\nexport function IoHandLeftOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M80 320V144a32 32 0 0 1 32-32h0a32 32 0 0 1 32 32v112m0 0V80a32 32 0 0 1 32-32h0a32 32 0 0 1 32 32v160m64 1V96a32 32 0 0 1 32-32h0a32 32 0 0 1 32 32v224m-128-80V48a32 32 0 0 1 32-32h0a32 32 0 0 1 32 32v192\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M80 320c0 117.4 64 176 152 176s123.71-39.6 144-88l52.71-144c6.66-18.05 3.64-34.79-11.87-43.6h0c-15.52-8.82-35.91-4.28-44.31 11.68L336 320\"},\"child\":[]}]})(props);\n};\nexport function IoHandLeftSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M429.58 209.08c-15.06-6.62-32.38 1.31-38.5 17.62L356 312h-11.27V80c0-17.6-13.3-32-29.55-32-16.26 0-29.55 14.4-29.55 32v151.75l-14.78.25V32c0-17.6-13.3-32-29.55-32s-29.55 14.4-29.55 32v199.75L197 232V64c0-17.6-13.3-32-29.55-32-16.26 0-29.55 14.4-29.55 32v183.75l-14.8.25V128c0-17.6-13.3-32-29.55-32S64 110.4 64 128v216c0 75.8 37.13 168 169 168 40.8 0 79.42-7 100.66-21a121.41 121.41 0 0 0 33.72-33.31 138 138 0 0 0 16-31.78l62.45-175.14c6.17-16.31-1.19-35.06-16.25-41.69z\"},\"child\":[]}]})(props);\n};\nexport function IoHandLeft (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M432.8 211.44c-15.52-8.82-34.91-2.28-43.31 13.68l-41.38 84.41a7 7 0 0 1-8.93 3.43 7 7 0 0 1-4.41-6.52V72c0-13.91-12.85-24-26.77-24s-26 10.09-26 24v156.64A11.24 11.24 0 0 1 271.21 240 11 11 0 0 1 260 229V24c0-13.91-10.94-24-24.86-24S210 10.09 210 24v204.64A11.24 11.24 0 0 1 199.21 240 11 11 0 0 1 188 229V56c0-13.91-12.08-24-26-24s-26 11.09-26 25v187.64A11.24 11.24 0 0 1 125.21 256 11 11 0 0 1 114 245V120c0-13.91-11.08-24-25-24s-25.12 10.22-25 24v216c0 117.41 72 176 160 176h16c88 0 115.71-39.6 136-88l68.71-169c6.62-18 3.6-34.75-11.91-43.56z\"},\"child\":[]}]})(props);\n};\nexport function IoHandRightOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M432 320V144a32 32 0 0 0-32-32h0a32 32 0 0 0-32 32v112m0 0V80a32 32 0 0 0-32-32h0a32 32 0 0 0-32 32v160m-64 1V96a32 32 0 0 0-32-32h0a32 32 0 0 0-32 32v224m128-80V48a32 32 0 0 0-32-32h0a32 32 0 0 0-32 32v192\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M432 320c0 117.4-64 176-152 176s-123.71-39.6-144-88L83.33 264c-6.66-18.05-3.64-34.79 11.87-43.6h0c15.52-8.82 35.91-4.28 44.31 11.68L176 320\"},\"child\":[]}]})(props);\n};\nexport function IoHandRightSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M82.42 209.08c15.06-6.62 32.38 1.31 38.5 17.62L156 312h11.27V80c0-17.6 13.3-32 29.55-32 16.26 0 29.55 14.4 29.55 32v151.75l14.78.25V32c0-17.6 13.3-32 29.55-32 16.3 0 29.55 14.4 29.55 32v199.75L315 232V64c0-17.6 13.3-32 29.55-32 16.26 0 29.55 14.4 29.55 32v183.75l14.78.25V128c0-17.6 13.3-32 29.55-32C434.7 96 448 110.4 448 128v216c0 75.8-37.13 168-169 168-40.8 0-79.42-7-100.66-21a121.41 121.41 0 0 1-33.72-33.31 138 138 0 0 1-16-31.78L66.16 250.77c-6.11-16.31 1.2-35.06 16.26-41.69z\"},\"child\":[]}]})(props);\n};\nexport function IoHandRight (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M79.2 211.44c15.52-8.82 34.91-2.28 43.31 13.68l41.38 84.41a7 7 0 0 0 8.93 3.43 7 7 0 0 0 4.41-6.52V72c0-13.91 12.85-24 26.77-24s26 10.09 26 24v156.64A11.24 11.24 0 0 0 240.79 240 11 11 0 0 0 252 229V24c0-13.91 10.94-24 24.86-24S302 10.09 302 24v204.64A11.24 11.24 0 0 0 312.79 240 11 11 0 0 0 324 229V56c0-13.91 12.08-24 26-24s26 11.09 26 25v187.64A11.24 11.24 0 0 0 386.79 256 11 11 0 0 0 398 245V120c0-13.91 11.08-24 25-24s25.12 10.22 25 24v216c0 117.41-72 176-160 176h-16c-88 0-115.71-39.6-136-88L67.33 255c-6.66-18-3.64-34.75 11.87-43.56z\"},\"child\":[]}]})(props);\n};\nexport function IoHappyOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"circle\",\"attr\":{\"cx\":\"184\",\"cy\":\"232\",\"r\":\"24\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M256.05 384c-45.42 0-83.62-29.53-95.71-69.83a8 8 0 0 1 7.82-10.17h175.69a8 8 0 0 1 7.82 10.17c-11.99 40.3-50.2 69.83-95.62 69.83z\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"328\",\"cy\":\"232\",\"r\":\"24\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"256\",\"r\":\"208\",\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\"},\"child\":[]}]})(props);\n};\nexport function IoHappySharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M414.39 97.61A224 224 0 1 0 97.61 414.39 224 224 0 1 0 414.39 97.61zM328 208a24 24 0 1 1-24 24 23.94 23.94 0 0 1 24-24zm-144 0a24 24 0 1 1-24 24 23.94 23.94 0 0 1 24-24zm72.05 176c-45.42 0-83.75-29.49-95.72-69.83C159.29 310.65 158 304 158 304h196s-1.31 6.69-2.33 10.17c-11.78 40.36-50.2 69.83-95.62 69.83z\"},\"child\":[]}]})(props);\n};\nexport function IoHappy (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M414.39 97.61A224 224 0 1 0 97.61 414.39 224 224 0 1 0 414.39 97.61zM184 208a24 24 0 1 1-24 24 23.94 23.94 0 0 1 24-24zm167.67 106.17c-12 40.3-50.2 69.83-95.62 69.83s-83.62-29.53-95.72-69.83a8 8 0 0 1 7.83-10.17h175.69a8 8 0 0 1 7.82 10.17zM328 256a24 24 0 1 1 24-24 23.94 23.94 0 0 1-24 24z\"},\"child\":[]}]})(props);\n};\nexport function IoHardwareChipOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"rect\",\"attr\":{\"width\":\"352\",\"height\":\"352\",\"x\":\"80\",\"y\":\"80\",\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"rx\":\"48\",\"ry\":\"48\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"224\",\"height\":\"224\",\"x\":\"144\",\"y\":\"144\",\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"rx\":\"16\",\"ry\":\"16\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M256 80V48m80 32V48M176 80V48m80 416v-32m80 32v-32m-160 32v-32m256-176h32m-32 80h32m-32-160h32M48 256h32m-32 80h32M48 176h32\"},\"child\":[]}]})(props);\n};\nexport function IoHardwareChipSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M160 160h192v192H160z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M480 198v-44h-32V88a24 24 0 0 0-24-24h-66V32h-44v32h-36V32h-44v32h-36V32h-44v32H88a24 24 0 0 0-24 24v66H32v44h32v36H32v44h32v36H32v44h32v66a24 24 0 0 0 24 24h66v32h44v-32h36v32h44v-32h36v32h44v-32h66a24 24 0 0 0 24-24v-66h32v-44h-32v-36h32v-44h-32v-36zm-352-70h256v256H128z\"},\"child\":[]}]})(props);\n};\nexport function IoHardwareChip (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"d\":\"M352 128H160a32 32 0 0 0-32 32v192a32 32 0 0 0 32 32h192a32 32 0 0 0 32-32V160a32 32 0 0 0-32-32zm0 216a8 8 0 0 1-8 8H168a8 8 0 0 1-8-8V168a8 8 0 0 1 8-8h176a8 8 0 0 1 8 8z\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"192\",\"height\":\"192\",\"x\":\"160\",\"y\":\"160\",\"rx\":\"8\",\"ry\":\"8\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M464 192a16 16 0 0 0 0-32h-16v-32a64.07 64.07 0 0 0-64-64h-32V48a16 16 0 0 0-32 0v16h-48V48a16 16 0 0 0-32 0v16h-48V48a16 16 0 0 0-32 0v16h-32a64.07 64.07 0 0 0-64 64v32H48a16 16 0 0 0 0 32h16v48H48a16 16 0 0 0 0 32h16v48H48a16 16 0 0 0 0 32h16v32a64.07 64.07 0 0 0 64 64h32v16a16 16 0 0 0 32 0v-16h48v16a16 16 0 0 0 32 0v-16h48v16a16 16 0 0 0 32 0v-16h32a64.07 64.07 0 0 0 64-64v-32h16a16 16 0 0 0 0-32h-16v-48h16a16 16 0 0 0 0-32h-16v-48zm-80 160a32 32 0 0 1-32 32H160a32 32 0 0 1-32-32V160a32 32 0 0 1 32-32h192a32 32 0 0 1 32 32z\"},\"child\":[]}]})(props);\n};\nexport function IoHeadsetOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M83 384c-13-33-35-93.37-35-128C48 141.12 149.33 48 256 48s208 93.12 208 208c0 34.63-23 97-35 128\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"m108.39 270.13-13.69 8c-30.23 17.7-31.7 72.41-3.38 122.2s75.87 75.81 106.1 58.12l13.69-8a16.16 16.16 0 0 0 5.78-21.87L130 276a15.74 15.74 0 0 0-21.61-5.87zm295.22 0 13.69 8c30.23 17.69 31.74 72.4 3.38 122.19s-75.87 75.81-106.1 58.12l-13.69-8a16.16 16.16 0 0 1-5.78-21.87L382 276a15.74 15.74 0 0 1 21.61-5.87z\"},\"child\":[]}]})(props);\n};\nexport function IoHeadsetSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M411.16 97.45C368.43 55.85 311.88 32 256 32S143.57 55.85 100.84 97.45C56.45 140.67 32 196 32 256s26.84 118.49 45.42 152.25S121 480 144 480c32 0 96-32 96-32L128 240l-54.42 31.73a176.07 176.07 0 0 1-1-18.84c0-48.57 19.32-94.1 56.15-130C164.24 88.34 210 70 256 70s91.73 18.34 127.27 52.93c36.83 35.86 56.14 81.39 56.14 130a175.56 175.56 0 0 1-1 18.82L384 240 272 448s64 32 96 32c23 0 48-38 66.58-71.75S480 316 480 256s-24.45-115.33-68.84-158.55z\"},\"child\":[]}]})(props);\n};\nexport function IoHeadset (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M411.16 97.46C368.43 55.86 311.88 32 256 32S143.57 55.86 100.84 97.46C56.45 140.67 32 197 32 256c0 26.67 8.75 61.09 32.88 125.55S137 473 157.27 477.41c5.81 1.27 12.62 2.59 18.73 2.59a60.06 60.06 0 0 0 30-8l14-8c15.07-8.82 19.47-28.13 10.8-43.35l-86.92-152.57a31.73 31.73 0 0 0-43.57-11.76l-13.69 8a56.49 56.49 0 0 0-14 11.59 4 4 0 0 1-7-2A114.68 114.68 0 0 1 64 256c0-50.31 21-98.48 59.16-135.61C160 84.55 208.39 64 256 64s96 20.55 132.84 56.39C427 157.52 448 205.69 448 256a114.68 114.68 0 0 1-1.68 17.91 4 4 0 0 1-7 2 56.49 56.49 0 0 0-14-11.59l-13.69-8a31.73 31.73 0 0 0-43.57 11.76L281.2 420.65c-8.67 15.22-4.27 34.53 10.8 43.35l14 8a60.06 60.06 0 0 0 30 8c6.11 0 12.92-1.32 18.73-2.59C375 473 423 446 447.12 381.55S480 282.67 480 256c0-59-24.45-115.33-68.84-158.54z\"},\"child\":[]}]})(props);\n};\nexport function IoHeartCircleOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M448 256c0-106-86-192-192-192S64 150 64 256s86 192 192 192 192-86 192-192z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M256 360a16 16 0 0 1-9-2.78c-39.3-26.68-56.32-45-65.7-56.41-20-24.37-29.58-49.4-29.3-76.5.31-31.06 25.22-56.33 55.53-56.33 20.4 0 35 10.63 44.1 20.41a6 6 0 0 0 8.72 0c9.11-9.78 23.7-20.41 44.1-20.41 30.31 0 55.22 25.27 55.53 56.33.28 27.1-9.31 52.13-29.3 76.5-9.38 11.44-26.4 29.73-65.7 56.41A16 16 0 0 1 256 360z\"},\"child\":[]}]})(props);\n};\nexport function IoHeartCircleSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 48C141.31 48 48 141.31 48 256s93.31 208 208 208 208-93.31 208-208S370.69 48 256 48zm74.69 252.82c-8.5 10.36-39.69 38.48-74.69 63.51-35-25-66.19-53.15-74.69-63.51-20-24.37-29.58-49.4-29.3-76.5.31-31.06 25.22-56.33 55.53-56.33 22 0 37.3 12.41 46.19 22.76l2.27 2.75 2.27-2.75C267 180.29 282.42 168 304.46 168c30.31 0 55.22 25.27 55.53 56.33.28 27.09-9.31 52.12-29.3 76.49z\"},\"child\":[]}]})(props);\n};\nexport function IoHeartCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 48C141.31 48 48 141.31 48 256s93.31 208 208 208 208-93.31 208-208S370.69 48 256 48zm74.69 252.82c-9.38 11.44-26.4 29.73-65.7 56.41a15.93 15.93 0 0 1-18 0c-39.3-26.68-56.32-45-65.7-56.41-20-24.37-29.58-49.4-29.3-76.5.31-31.06 25.22-56.33 55.53-56.33 20.4 0 35 10.63 44.1 20.41a6 6 0 0 0 8.72 0c9.11-9.78 23.7-20.41 44.1-20.41 30.31 0 55.22 25.27 55.53 56.33.3 27.1-9.29 52.13-29.28 76.5z\"},\"child\":[]}]})(props);\n};\nexport function IoHeartDislikeCircleOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M448 256c0-106-86-192-192-192S64 150 64 256s86 192 192 192 192-86 192-192z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M333.2 297.69c18.28-23.39 27.06-47.43 26.79-73.37-.31-31.06-25.22-56.33-55.53-56.33-20.4 0-35 10.64-44.11 20.42a5.93 5.93 0 0 1-8.7 0c-9.11-9.78-23.71-20.42-44.11-20.42L206 168a4 4 0 0 0-2.75 6.84l124 123.21a3.92 3.92 0 0 0 5.95-.36zM158.84 221a4 4 0 0 0-6.82 2.72v.64c-.28 27.1 9.31 52.13 29.3 76.5 9.38 11.44 26.4 29.73 65.7 56.41a15.93 15.93 0 0 0 18 0c5.15-3.49 9.9-6.84 14.31-10a4 4 0 0 0 .46-6.07zM336 368a15.92 15.92 0 0 1-11.31-4.69l-176-176a16 16 0 0 1 22.62-22.62l176 176A16 16 0 0 1 336 368z\"},\"child\":[]}]})(props);\n};\nexport function IoHeartDislikeCircleSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 48C141.31 48 48 141.31 48 256s93.31 208 208 208 208-93.31 208-208S370.69 48 256 48zm63.73 310.36-183.14-182.3 22.74-22.51 183.19 182.36zm-63.51 4.86c-35.36-25-66.31-51.92-74.91-62.4-20-24.37-29.58-49.4-29.3-76.5a58.27 58.27 0 0 1 .85-9.31l130.21 129.4c-3.43 2.59-16.21 11.45-26.85 18.81zm74.47-62.4-.31.38L197.33 169a53.8 53.8 0 0 1 10.21-1 59.34 59.34 0 0 1 44.1 19.41L256 192l4.36-4.6a59.34 59.34 0 0 1 44.1-19.4c30.31 0 55.22 25.27 55.53 56.33.28 27.09-9.31 52.12-29.3 76.49z\"},\"child\":[]}]})(props);\n};\nexport function IoHeartDislikeCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 48C141.31 48 48 141.31 48 256s93.31 208 208 208 208-93.31 208-208S370.69 48 256 48zm23.3 299.19c-4.41 3.2-9.16 6.55-14.31 10a15.93 15.93 0 0 1-18 0c-39.3-26.68-56.32-45-65.7-56.41-20-24.37-29.58-49.4-29.3-76.5v-.64a4 4 0 0 1 6.82-2.72l120.95 120.2a4 4 0 0 1-.46 6.07zm68 16.12a16 16 0 0 1-22.62 0l-176-176a16 16 0 0 1 22.62-22.62l176 176a16 16 0 0 1 .01 22.62zm-14.1-65.62a3.92 3.92 0 0 1-6 .37l-124-123.21A4 4 0 0 1 206 168h1.55c20.4 0 35 10.64 44.11 20.42a5.93 5.93 0 0 0 8.7 0c9.11-9.78 23.71-20.42 44.11-20.42 30.31 0 55.22 25.27 55.53 56.33.26 25.93-8.52 49.97-26.8 73.36z\"},\"child\":[]}]})(props);\n};\nexport function IoHeartDislikeOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M417.84 448a15.94 15.94 0 0 1-11.35-4.72L40.65 75.26a16 16 0 0 1 22.7-22.56l365.83 368a16 16 0 0 1-11.34 27.3zM364.92 80c-48.09 0-80 29.55-96.92 51-16.88-21.48-48.83-51-96.92-51a107.37 107.37 0 0 0-31 4.55L168 112c22.26 0 45.81 9 63.94 26.67a123 123 0 0 1 21.75 28.47 16 16 0 0 0 28.6 0 123 123 0 0 1 21.77-28.51C322.19 121 342.66 112 364.92 112c43.15 0 78.62 36.33 79.07 81 .54 53.69-22.75 99.55-57.38 139.52l22.63 22.77c3-3.44 5.7-6.64 8.14-9.6 40-48.75 59.15-98.8 58.61-153C475.37 130.52 425.54 80 364.92 80zM268 432C180.38 372.51 91 297.6 92 193a83.69 83.69 0 0 1 2.24-18.39L69 149.14a115.1 115.1 0 0 0-9 43.49c-.54 54.22 18.63 104.27 58.61 153 18.77 22.87 52.8 59.45 131.39 112.8a31.84 31.84 0 0 0 36 0c20.35-13.81 37.7-26.5 52.58-38.11l-22.66-22.81C300.25 409.6 284.09 421.05 268 432z\"},\"child\":[]}]})(props);\n};\nexport function IoHeartDislikeSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m32 64.45 389.47 389.94 22.84-22.47L54.85 42 32 64.45zm30.67 128.46c-.56 55.63 19.77 106.94 62.16 156.88 40.25 47.42 94.56 79.67 137.47 108.21l9 6 9-6c18.49-12.3 39.1-25.3 59.79-39.89L71.74 149.28a114.62 114.62 0 0 0-9.07 43.63zm355.16 156.88c42.39-49.94 62.72-101.25 62.16-156.88-.63-62-50.61-112.54-111.43-112.54-48.26 0-80.35 28-97.23 48.17-16.88-20.2-49-48.17-97.23-48.17A108.24 108.24 0 0 0 142.84 85l270 270.48c1.71-1.89 3.37-3.78 4.99-5.69z\"},\"child\":[]}]})(props);\n};\nexport function IoHeartDislike (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M417.84 448a16 16 0 0 1-11.35-4.72l-365.84-368a16 16 0 1 1 22.7-22.56l365.83 368A16 16 0 0 1 417.84 448zM364.92 80c-44.09 0-74.61 24.82-92.39 45.5a6 6 0 0 1-9.06 0C245.69 104.82 215.16 80 171.08 80a107.71 107.71 0 0 0-31 4.54l269.13 270.7c3-3.44 5.7-6.64 8.14-9.6 40-48.75 59.15-98.79 58.61-153C475.37 130.53 425.54 80 364.92 80zM69 149.15a115.06 115.06 0 0 0-9 43.49c-.54 54.21 18.63 104.25 58.61 153 18.77 22.87 52.8 59.45 131.39 112.8a31.88 31.88 0 0 0 36 0c20.35-13.82 37.7-26.5 52.58-38.12z\"},\"child\":[]}]})(props);\n};\nexport function IoHeartHalfOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M352.92 64c-48.09 0-80 29.54-96.92 51-16.88-21.49-48.83-51-96.92-51C98.46 64 48.63 114.54 48 176.65c-.54 54.21 18.63 104.27 58.61 153 18.77 22.88 52.8 59.46 131.39 112.81a31.84 31.84 0 0 0 36 0c78.59-53.35 112.62-89.93 131.39-112.81 40-48.74 59.15-98.8 58.61-153C463.37 114.54 413.54 64 352.92 64zM256 416V207.58c0-19.63 5.23-38.76 14.21-56.22a1.19 1.19 0 0 1 .08-.16 123 123 0 0 1 21.77-28.51C310.19 105 330.66 96 352.92 96c43.15 0 78.62 36.32 79.07 81C433 281.61 343.63 356.51 256 416z\"},\"child\":[]}]})(props);\n};\nexport function IoHeartHalfSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M352.92 64c-48.11 0-80.1 28-96.92 48.21C239.18 92 207.19 64 159.08 64 98.46 64 48.63 114.54 48 176.65c-.56 55.68 19.71 107 62 157 40.12 47.46 94.25 79.75 137 108.32l9 6 9-6c42.78-28.57 96.91-60.86 137-108.32 42.25-50 62.52-101.35 62-157C463.37 114.54 413.54 64 352.92 64zm24.67 249c-31.78 37.6-74.68 65.75-112.52 90.59l-9.07 6V162.23l24.59-29.54C294.53 116 318.38 96 352.92 96c43.15 0 78.62 36.32 79.07 81a178.63 178.63 0 0 1-12.69 68.59c-9.03 22.84-22.67 44.91-41.71 67.41z\"},\"child\":[]}]})(props);\n};\nexport function IoHeartHalf (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M352.92 64c-48.09 0-80 29.54-96.92 51-16.88-21.49-48.83-51-96.92-51C98.46 64 48.63 114.54 48 176.65c-.54 54.21 18.63 104.27 58.61 153 18.77 22.88 52.8 59.46 131.39 112.81a31.84 31.84 0 0 0 36 0c78.59-53.35 112.62-89.93 131.39-112.81 40-48.74 59.15-98.8 58.61-153C463.37 114.54 413.54 64 352.92 64zM256 416V207.58c0-19.63 5.23-38.76 14.21-56.22a1.19 1.19 0 0 1 .08-.16 123 123 0 0 1 21.77-28.51C310.19 105 330.66 96 352.92 96c43.15 0 78.62 36.32 79.07 81C433 281.61 343.63 356.51 256 416z\"},\"child\":[]}]})(props);\n};\nexport function IoHeartOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M352.92 80C288 80 256 144 256 144s-32-64-96.92-64c-52.76 0-94.54 44.14-95.08 96.81-1.1 109.33 86.73 187.08 183 252.42a16 16 0 0 0 18 0c96.26-65.34 184.09-143.09 183-252.42-.54-52.67-42.32-96.81-95.08-96.81z\"},\"child\":[]}]})(props);\n};\nexport function IoHeartSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m256 448-9-6c-42.78-28.57-96.91-60.86-137-108.32-42.25-50-62.52-101.35-62-157C48.63 114.54 98.46 64 159.08 64c48.11 0 80.1 28 96.92 48.21C272.82 92 304.81 64 352.92 64c60.62 0 110.45 50.54 111.08 112.65.56 55.68-19.71 107-62 157-40.09 47.49-94.22 79.78-137 108.35z\"},\"child\":[]}]})(props);\n};\nexport function IoHeart (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 448a32 32 0 0 1-18-5.57c-78.59-53.35-112.62-89.93-131.39-112.8-40-48.75-59.15-98.8-58.61-153C48.63 114.52 98.46 64 159.08 64c44.08 0 74.61 24.83 92.39 45.51a6 6 0 0 0 9.06 0C278.31 88.81 308.84 64 352.92 64c60.62 0 110.45 50.52 111.08 112.64.54 54.21-18.63 104.26-58.61 153-18.77 22.87-52.8 59.45-131.39 112.8a32 32 0 0 1-18 5.56z\"},\"child\":[]}]})(props);\n};\nexport function IoHelpBuoyOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"256\",\"r\":\"208\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"256\",\"r\":\"80\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"m208 54 8 132m80 0 8-132m-96 404 8-132m80 0 8 132m154-250-132 8m0 80 132 8M54 208l132 8m0 80-132 8\"},\"child\":[]}]})(props);\n};\nexport function IoHelpBuoySharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 32C132.29 32 32 132.29 32 256s100.29 224 224 224 224-100.29 224-224S379.71 32 256 32zm-64 224a64 64 0 1 1 64 64 64 64 0 0 1-64-64zm237.24-62.29L342.91 199a104.86 104.86 0 0 0-29.86-29.86l5.24-86.33a185 185 0 0 1 111 111zm-303.35-67.82a183.44 183.44 0 0 1 67.82-43.13l5.29 86.33A104.86 104.86 0 0 0 169.09 199l-86.33-5.24a183.44 183.44 0 0 1 43.13-67.87zm-43.13 192.4 86.33-5.24A104.86 104.86 0 0 0 199 342.91l-5.24 86.33a185 185 0 0 1-111-110.95zm303.35 67.82a183.44 183.44 0 0 1-67.82 43.13l-5.24-86.33a104.86 104.86 0 0 0 29.86-29.86l86.33 5.24a183.44 183.44 0 0 1-43.13 67.82z\"},\"child\":[]}]})(props);\n};\nexport function IoHelpBuoy (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M414.39 97.61A224 224 0 1 0 97.61 414.39 224 224 0 1 0 414.39 97.61zM192.13 260.18a64 64 0 1 1 59.69 59.69 64.07 64.07 0 0 1-59.69-59.69zm240-66.64-96.37 5.84a4.06 4.06 0 0 1-3.44-1.59 96 96 0 0 0-18.07-18.07 4.06 4.06 0 0 1-1.59-3.44l5.84-96.37a4 4 0 0 1 5.42-3.51A193 193 0 0 1 435.6 188.12a4 4 0 0 1-3.51 5.42zM193.54 79.91l5.84 96.37a4.06 4.06 0 0 1-1.59 3.44 96 96 0 0 0-18.07 18.07 4.06 4.06 0 0 1-3.44 1.59l-96.37-5.84a4 4 0 0 1-3.51-5.42A193 193 0 0 1 188.12 76.4a4 4 0 0 1 5.42 3.51zM79.91 318.46l96.37-5.84a4.06 4.06 0 0 1 3.44 1.59 96 96 0 0 0 18.07 18.07 4.06 4.06 0 0 1 1.59 3.44l-5.84 96.37a4 4 0 0 1-5.42 3.51A193 193 0 0 1 76.4 323.88a4 4 0 0 1 3.51-5.42zm238.55 113.63-5.84-96.37a4.06 4.06 0 0 1 1.59-3.44 96 96 0 0 0 18.07-18.07 4.06 4.06 0 0 1 3.44-1.59l96.37 5.84a4 4 0 0 1 3.51 5.42A193 193 0 0 1 323.88 435.6a4 4 0 0 1-5.42-3.51z\"},\"child\":[]}]})(props);\n};\nexport function IoHelpCircleOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M256 80a176 176 0 1 0 176 176A176 176 0 0 0 256 80z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"28\",\"d\":\"M200 202.29s.84-17.5 19.57-32.57C230.68 160.77 244 158.18 256 158c10.93-.14 20.69 1.67 26.53 4.45 10 4.76 29.47 16.38 29.47 41.09 0 26-17 37.81-36.37 50.8S251 281.43 251 296\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"250\",\"cy\":\"348\",\"r\":\"20\"},\"child\":[]}]})(props);\n};\nexport function IoHelpCircleSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"d\":\"M288.55 150.84c-8.09-3.86-20-6-32.72-5.82-18 .22-33.13 5.2-45 14.78-23 18.48-24.55 40.37-24.77 42.8a61.69 61.69 0 0 0-.09 12 3 3 0 0 0 3 2.69h21.23a3 3 0 0 0 3-3A65.7 65.7 0 0 1 214 204c0-.11 1.14-11.7 14.36-22.34 7-5.64 16.11-8.44 27.83-8.59 9.32-.11 16.93 1.47 20.34 3.09C291 183 298 192.31 298 204.57c0 18-10.9 26.23-30.18 39.18C247.08 257.68 237 275.1 237 297v11a3 3 0 0 0 3 3h22a3 3 0 0 0 3-3v-11c0-9.16 2.23-19.13 18.44-30 19.95-13.41 42.56-28.6 42.56-62.43 0-23.14-13.3-42.23-37.45-53.73z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M256 64C150 64 64 150 64 256s86 192 192 192 192-86 192-192S362 64 256 64zm10.44 302h-30.21a2.57 2.57 0 0 1-2.56-2.57v-30.2a2.57 2.57 0 0 1 2.56-2.57h30.21a2.57 2.57 0 0 1 2.56 2.57v30.2a2.57 2.57 0 0 1-2.56 2.57zm17-99C267.23 277.88 265 287.85 265 297v11a3 3 0 0 1-3 3h-22a3 3 0 0 1-3-3v-11c0-21.91 10.08-39.33 30.82-53.26C287.1 230.8 298 222.6 298 204.57c0-12.26-7-21.57-21.49-28.46-3.41-1.62-11-3.2-20.34-3.09-11.72.15-20.82 2.95-27.83 8.59C215.12 192.25 214 203.84 214 204a65.7 65.7 0 0 0-.84 10.28 3 3 0 0 1-3 3h-21.25a3 3 0 0 1-3-2.69 61.69 61.69 0 0 1 .09-12c.22-2.43 1.8-24.32 24.77-42.8 11.91-9.58 27.06-14.56 45-14.78 12.7-.15 24.63 2 32.72 5.82 24.21 11.51 37.51 30.6 37.51 53.74 0 33.83-22.61 49.02-42.56 62.43z\"},\"child\":[]}]})(props);\n};\nexport function IoHelpCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 64C150 64 64 150 64 256s86 192 192 192 192-86 192-192S362 64 256 64zm-6 304a20 20 0 1 1 20-20 20 20 0 0 1-20 20zm33.44-102C267.23 276.88 265 286.85 265 296a14 14 0 0 1-28 0c0-21.91 10.08-39.33 30.82-53.26C287.1 229.8 298 221.6 298 203.57c0-12.26-7-21.57-21.49-28.46-3.41-1.62-11-3.2-20.34-3.09-11.72.15-20.82 2.95-27.83 8.59C215.12 191.25 214 202.83 214 203a14 14 0 1 1-28-1.35c.11-2.43 1.8-24.32 24.77-42.8 11.91-9.58 27.06-14.56 45-14.78 12.7-.15 24.63 2 32.72 5.82C312.7 161.34 326 180.43 326 203.57c0 33.83-22.61 49.02-42.56 62.43z\"},\"child\":[]}]})(props);\n};\nexport function IoHelpOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"40\",\"d\":\"M160 164s1.44-33 33.54-59.46C212.6 88.83 235.49 84.28 256 84c18.73-.23 35.47 2.94 45.48 7.82C318.59 100.2 352 120.6 352 164c0 45.67-29.18 66.37-62.35 89.18S248 298.36 248 324\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"248\",\"cy\":\"399.99\",\"r\":\"32\"},\"child\":[]}]})(props);\n};\nexport function IoHelpSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"square\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"40\",\"d\":\"M160 164c0-10 1.44-33 33.54-59.46C212.6 88.83 235.49 84.28 256 84c18.73-.23 35.47 2.94 45.48 7.82C318.59 100.2 352 120.6 352 164c0 45.67-29.18 66.37-62.35 89.18S248 290.36 248 316\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"56\",\"height\":\"56\",\"x\":\"220\",\"y\":\"368\",\"rx\":\"3.5\",\"ry\":\"3.5\"},\"child\":[]}]})(props);\n};\nexport function IoHelp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"40\",\"d\":\"M160 164s1.44-33 33.54-59.46C212.6 88.83 235.49 84.28 256 84c18.73-.23 35.47 2.94 45.48 7.82C318.59 100.2 352 120.6 352 164c0 45.67-29.18 66.37-62.35 89.18S248 298.36 248 324\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"248\",\"cy\":\"399.99\",\"r\":\"32\"},\"child\":[]}]})(props);\n};\nexport function IoHomeOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M80 212v236a16 16 0 0 0 16 16h96V328a24 24 0 0 1 24-24h80a24 24 0 0 1 24 24v136h96a16 16 0 0 0 16-16V212\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M480 256 266.89 52c-5-5.28-16.69-5.34-21.78 0L32 256m368-77V64h-48v69\"},\"child\":[]}]})(props);\n};\nexport function IoHomeSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M416 174.74V48h-80v58.45L256 32 0 272h64v208h144V320h96v160h144V272h64l-96-97.26z\"},\"child\":[]}]})(props);\n};\nexport function IoHome (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M261.56 101.28a8 8 0 0 0-11.06 0L66.4 277.15a8 8 0 0 0-2.47 5.79L63.9 448a32 32 0 0 0 32 32H192a16 16 0 0 0 16-16V328a8 8 0 0 1 8-8h80a8 8 0 0 1 8 8v136a16 16 0 0 0 16 16h96.06a32 32 0 0 0 32-32V282.94a8 8 0 0 0-2.47-5.79z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m490.91 244.15-74.8-71.56V64a16 16 0 0 0-16-16h-48a16 16 0 0 0-16 16v32l-57.92-55.38C272.77 35.14 264.71 32 256 32c-8.68 0-16.72 3.14-22.14 8.63l-212.7 203.5c-6.22 6-7 15.87-1.34 22.37A16 16 0 0 0 43 267.56L250.5 69.28a8 8 0 0 1 11.06 0l207.52 198.28a16 16 0 0 0 22.59-.44c6.14-6.36 5.63-16.86-.76-22.97z\"},\"child\":[]}]})(props);\n};\nexport function IoHourglassOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M145.61 464h220.78c19.8 0 35.55-16.29 33.42-35.06C386.06 308 304 310 304 256s83.11-51 95.8-172.94c2-18.78-13.61-35.06-33.41-35.06H145.61c-19.8 0-35.37 16.28-33.41 35.06C124.89 205 208 201 208 256s-82.06 52-95.8 172.94c-2.14 18.77 13.61 35.06 33.41 35.06z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M343.3 432H169.13c-15.6 0-20-18-9.06-29.16C186.55 376 240 356.78 240 326V224c0-19.85-38-35-61.51-67.2-3.88-5.31-3.49-12.8 6.37-12.8h142.73c8.41 0 10.23 7.43 6.4 12.75C310.82 189 272 204.05 272 224v102c0 30.53 55.71 47 80.4 76.87 9.95 12.04 6.47 29.13-9.1 29.13z\"},\"child\":[]}]})(props);\n};\nexport function IoHourglassSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M416 32H96v112l108 112L96 368v112h320V368L308 256l108-112zM272 224v112l91 96H148l92-96V224l-80-80h192z\"},\"child\":[]}]})(props);\n};\nexport function IoHourglass (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M415.7 427.13c-8.74-76.89-43.83-108.76-69.46-132C328.52 279 320 270.61 320 256c0-14.41 8.49-22.64 26.16-38.44 25.93-23.17 61.44-54.91 69.56-132.84a47 47 0 0 0-12-36.26A50.3 50.3 0 0 0 366.39 32H145.61a50.34 50.34 0 0 0-37.39 16.46 47.05 47.05 0 0 0-11.94 36.26c8.09 77.68 43.47 109.19 69.3 132.19C183.42 232.8 192 241.09 192 256c0 15.1-8.6 23.56-26.5 39.75-25.5 23.1-60.5 54.73-69.2 131.38a46.59 46.59 0 0 0 11.7 36.2A50.44 50.44 0 0 0 145.61 480h220.78A50.44 50.44 0 0 0 404 463.33a46.59 46.59 0 0 0 11.7-36.2zM343.3 432H169.13c-15.6 0-20-18-9.06-29.16C186.55 376 240 356.78 240 326V224c0-19.85-38-35-61.51-67.2-3.88-5.31-3.49-12.8 6.37-12.8h142.73c8.41 0 10.22 7.43 6.4 12.75C310.82 189 272 204.05 272 224v102c0 30.53 55.71 47 80.4 76.87 9.95 12.04 6.47 29.13-9.1 29.13z\"},\"child\":[]}]})(props);\n};\nexport function IoIceCreamOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"m352 256-96 224-62-145\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M299.42 223.48C291.74 239.75 275.18 252 256 252c-13.1 0-27-5-33.63-9.76C216.27 237.87 208 240 208 250v62a24.07 24.07 0 0 1-24 24h0a24.07 24.07 0 0 1-24-24v-56h-2c-35.35 0-62-28.65-62-64a64 64 0 0 1 64-64h8v-8a88 88 0 0 1 176 0v8h8a64 64 0 0 1 0 128c-21.78 0-42-13-52.59-32.51z\"},\"child\":[]}]})(props);\n};\nexport function IoIceCreamSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M359.72 112.37a104 104 0 0 0-207.44 0A80.12 80.12 0 0 0 80 192c0 39.36 26.37 71.23 62.38 78.46a2 2 0 0 1 1.62 2v38.83c0 21.84 17.2 40.22 39 40.74a40 40 0 0 0 41-40v-47.84a2 2 0 0 1 2.72-1.86A83.47 83.47 0 0 0 256 268a63.18 63.18 0 0 0 42.24-16.59 2 2 0 0 1 2.74 0A74.63 74.63 0 0 0 352 272a80 80 0 0 0 7.72-159.63z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M256 300v12a72.1 72.1 0 0 1-58.21 70.64L256 496l92.06-192.08a105.29 105.29 0 0 1-49.18-14.36A93.75 93.75 0 0 1 256 300z\"},\"child\":[]}]})(props);\n};\nexport function IoIceCream (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M183 352c-21.84-.52-39-18.9-39-40.74v-34.07a8 8 0 0 0-6-7.74c-33.75-8.85-58-39.71-58-77.45a80.14 80.14 0 0 1 66.27-78.82 8 8 0 0 0 6.62-6.83 104 104 0 0 1 206.22 0 8 8 0 0 0 6.62 6.83A80 80 0 0 1 352 272a74.33 74.33 0 0 1-47.45-17.41 7.93 7.93 0 0 0-9.92-.14A62.89 62.89 0 0 1 256 268a80.47 80.47 0 0 1-21.8-3.18 8 8 0 0 0-10.2 7.69V312a40 40 0 0 1-41 40z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M263.39 299.7a8 8 0 0 0-7.39 7.91V312a72.11 72.11 0 0 1-50.69 68.76 8 8 0 0 0-4.91 10.78l40.91 94.8A16 16 0 0 0 256 496a16 16 0 0 0 14.69-9.7l73.78-172.15a8 8 0 0 0-6.2-11.07 106.31 106.31 0 0 1-35.9-11.59 8 8 0 0 0-7.13-.2 95 95 0 0 1-31.85 8.41z\"},\"child\":[]}]})(props);\n};\nexport function IoIdCardOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"rect\",\"attr\":{\"width\":\"320\",\"height\":\"448\",\"x\":\"96\",\"y\":\"32\",\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"rx\":\"48\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M208 80h96\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M333.48 284.51A39.65 39.65 0 0 0 304 272c-11.6 0-22.09 4.41-29.54 12.43s-11.2 19.12-10.34 31C265.83 338.91 283.72 358 304 358s38.14-19.09 39.87-42.55c.88-11.78-2.82-22.77-10.39-30.94zM371.69 448H236.31a12.05 12.05 0 0 1-9.31-4.17 13 13 0 0 1-2.76-10.92c3.25-17.56 13.38-32.31 29.3-42.66C267.68 381.06 285.6 376 304 376s36.32 5.06 50.46 14.25c15.92 10.35 26.05 25.1 29.3 42.66a13 13 0 0 1-2.76 10.92 12.05 12.05 0 0 1-9.31 4.17z\"},\"child\":[]}]})(props);\n};\nexport function IoIdCardSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M408 16H104a24 24 0 0 0-24 24v432a24 24 0 0 0 24 24h304a24 24 0 0 0 24-24V40a24 24 0 0 0-24-24zm-61.1 296.77a43 43 0 1 1-40.71-40.71 43 43 0 0 1 40.71 40.71zM192 64h128v32H192zm192 384H224v-24.6c0-32.72 53.27-49.21 80-49.21s80 16.49 80 49.21z\"},\"child\":[]}]})(props);\n};\nexport function IoIdCard (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M368 16H144a64.07 64.07 0 0 0-64 64v352a64.07 64.07 0 0 0 64 64h224a64.07 64.07 0 0 0 64-64V80a64.07 64.07 0 0 0-64-64zm-34.52 268.51c7.57 8.17 11.27 19.16 10.39 30.94C342.14 338.91 324.25 358 304 358s-38.17-19.09-39.88-42.55c-.86-11.9 2.81-22.91 10.34-31S292.4 272 304 272a39.65 39.65 0 0 1 29.48 12.51zM192 80a16 16 0 0 1 16-16h96a16 16 0 0 1 0 32h-96a16 16 0 0 1-16-16zm189 363.83a12.05 12.05 0 0 1-9.31 4.17H236.31a12.05 12.05 0 0 1-9.31-4.17 13 13 0 0 1-2.76-10.92c3.25-17.56 13.38-32.31 29.3-42.66C267.68 381.06 285.6 376 304 376s36.32 5.06 50.46 14.25c15.92 10.35 26.05 25.1 29.3 42.66a13 13 0 0 1-2.76 10.92z\"},\"child\":[]}]})(props);\n};\nexport function IoImageOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"rect\",\"attr\":{\"width\":\"416\",\"height\":\"352\",\"x\":\"48\",\"y\":\"80\",\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"rx\":\"48\",\"ry\":\"48\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"336\",\"cy\":\"176\",\"r\":\"32\",\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"m304 335.79-90.66-90.49a32 32 0 0 0-43.87-1.3L48 352m176 80 123.34-123.34a32 32 0 0 1 43.11-2L464 368\"},\"child\":[]}]})(props);\n};\nexport function IoImageSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M456 64H56a24 24 0 0 0-24 24v336a24 24 0 0 0 24 24h400a24 24 0 0 0 24-24V88a24 24 0 0 0-24-24zm-124.38 64.2a48 48 0 1 1-43.42 43.42 48 48 0 0 1 43.42-43.42zM76 416a12 12 0 0 1-12-12v-87.63L192.64 202l96.95 96.75L172.37 416zm372-12a12 12 0 0 1-12 12H217.63l149.53-149.53L448 333.84z\"},\"child\":[]}]})(props);\n};\nexport function IoImage (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M416 64H96a64.07 64.07 0 0 0-64 64v256a64.07 64.07 0 0 0 64 64h320a64.07 64.07 0 0 0 64-64V128a64.07 64.07 0 0 0-64-64zm-80 64a48 48 0 1 1-48 48 48.05 48.05 0 0 1 48-48zM96 416a32 32 0 0 1-32-32v-67.63l94.84-84.3a48.06 48.06 0 0 1 65.8 1.9l64.95 64.81L172.37 416zm352-32a32 32 0 0 1-32 32H217.63l121.42-121.42a47.72 47.72 0 0 1 61.64-.16L448 333.84z\"},\"child\":[]}]})(props);\n};\nexport function IoImagesOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M432 112V96a48.14 48.14 0 0 0-48-48H64a48.14 48.14 0 0 0-48 48v256a48.14 48.14 0 0 0 48 48h16\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"400\",\"height\":\"336\",\"x\":\"96\",\"y\":\"128\",\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"rx\":\"45.99\",\"ry\":\"45.99\"},\"child\":[]},{\"tag\":\"ellipse\",\"attr\":{\"cx\":\"372.92\",\"cy\":\"219.64\",\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"rx\":\"30.77\",\"ry\":\"30.55\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M342.15 372.17 255 285.78a30.93 30.93 0 0 0-42.18-1.21L96 387.64M265.23 464l118.59-117.73a31 31 0 0 1 41.46-1.87L496 402.91\"},\"child\":[]}]})(props);\n};\nexport function IoImagesSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"ellipse\",\"attr\":{\"cx\":\"373.14\",\"cy\":\"219.33\",\"fill\":\"none\",\"rx\":\"46.29\",\"ry\":\"46\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M80 132v328a20 20 0 0 0 20 20h392a20 20 0 0 0 20-20V132a20 20 0 0 0-20-20H100a20 20 0 0 0-20 20zm293.14 41.33a46 46 0 1 1-46.28 46 46.19 46.19 0 0 1 46.28-46zm-261.41 276v-95.48l122.76-110.2L328.27 337l-113 112.33zm368.27 0H259l144.58-144L480 370.59z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M20 32A20 20 0 0 0 0 52v344a20 20 0 0 0 20 20h28V100a20 20 0 0 1 20-20h380V52a20 20 0 0 0-20-20z\"},\"child\":[]}]})(props);\n};\nexport function IoImages (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M450.29 112H142c-34 0-62 27.51-62 61.33v245.34c0 33.82 28 61.33 62 61.33h308c34 0 62-26.18 62-60V173.33c0-33.82-27.68-61.33-61.71-61.33zm-77.15 61.34a46 46 0 1 1-46.28 46 46.19 46.19 0 0 1 46.28-46.01zm-231.55 276c-17 0-29.86-13.75-29.86-30.66v-64.83l90.46-80.79a46.54 46.54 0 0 1 63.44 1.83L328.27 337l-113 112.33zM480 418.67a30.67 30.67 0 0 1-30.71 30.66H259L376.08 333a46.24 46.24 0 0 1 59.44-.16L480 370.59z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M384 32H64A64 64 0 0 0 0 96v256a64.11 64.11 0 0 0 48 62V152a72 72 0 0 1 72-72h326a64.11 64.11 0 0 0-62-48z\"},\"child\":[]}]})(props);\n};\nexport function IoInfiniteOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M256 256s-48-96-126-96c-54.12 0-98 43-98 96s43.88 96 98 96c37.51 0 71-22.41 94-48m32-48s48 96 126 96c54.12 0 98-43 98-96s-43.88-96-98-96c-37.51 0-71 22.41-94 48\"},\"child\":[]}]})(props);\n};\nexport function IoInfiniteSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M382 136c-40.87 0-73.46 20.53-93.6 37.76l-.71.61-11.47 12.47 25.32 41.61 18.74-18.79C339.89 193.1 361.78 184 382 184c40.8 0 74 32.3 74 72s-33.2 72-74 72c-62 0-104.14-81.95-104.56-82.78C275 240.29 221.56 136 130 136 62.73 136 8 189.83 8 256s54.73 120 122 120c32.95 0 65.38-13.11 93.79-37.92l.61-.54 11.38-12.38-25.33-41.61-18.83 18.88C172 319.4 151.26 328 130 328c-40.8 0-74-32.3-74-72s33.2-72 74-72c62 0 104.14 81.95 104.56 82.78C237 271.71 290.44 376 382 376c67.27 0 122-53.83 122-120s-54.73-120-122-120z\"},\"child\":[]}]})(props);\n};\nexport function IoInfinite (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"48\",\"d\":\"M256 256s-48-96-126-96c-54.12 0-98 43-98 96s43.88 96 98 96c30 0 56.45-13.18 78-32m48-64s48 96 126 96c54.12 0 98-43 98-96s-43.88-96-98-96c-29.37 0-56.66 13.75-78 32\"},\"child\":[]}]})(props);\n};\nexport function IoInformationCircleOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M248 64C146.39 64 64 146.39 64 248s82.39 184 184 184 184-82.39 184-184S349.61 64 248 64z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M220 220h32v116\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M208 340h88\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M248 130a26 26 0 1 0 26 26 26 26 0 0 0-26-26z\"},\"child\":[]}]})(props);\n};\nexport function IoInformationCircleSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 56C145.72 56 56 145.72 56 256s89.72 200 200 200 200-89.72 200-200S366.28 56 256 56zm0 82a26 26 0 1 1-26 26 26 26 0 0 1 26-26zm64 226H200v-32h44v-88h-32v-32h64v120h44z\"},\"child\":[]}]})(props);\n};\nexport function IoInformationCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 56C145.72 56 56 145.72 56 256s89.72 200 200 200 200-89.72 200-200S366.28 56 256 56zm0 82a26 26 0 1 1-26 26 26 26 0 0 1 26-26zm48 226h-88a16 16 0 0 1 0-32h28v-88h-16a16 16 0 0 1 0-32h32a16 16 0 0 1 16 16v104h28a16 16 0 0 1 0 32z\"},\"child\":[]}]})(props);\n};\nexport function IoInformationOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"40\",\"d\":\"M196 220h64v172\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"40\",\"d\":\"M187 396h138\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M256 160a32 32 0 1 1 32-32 32 32 0 0 1-32 32z\"},\"child\":[]}]})(props);\n};\nexport function IoInformationSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"square\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"40\",\"d\":\"M196 220h64v172m-73 4h138\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M256 160a32 32 0 1 1 32-32 32 32 0 0 1-32 32z\"},\"child\":[]}]})(props);\n};\nexport function IoInformation (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"40\",\"d\":\"M196 220h64v172\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"40\",\"d\":\"M187 396h138\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M256 160a32 32 0 1 1 32-32 32 32 0 0 1-32 32z\"},\"child\":[]}]})(props);\n};\nexport function IoInvertModeOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"256\",\"r\":\"208\",\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M256 176v160a80 80 0 0 1 0-160zm0-128v128a80 80 0 0 1 0 160v128c114.88 0 208-93.12 208-208S370.88 48 256 48z\"},\"child\":[]}]})(props);\n};\nexport function IoInvertModeSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M414.39 97.61A224 224 0 1 0 97.61 414.39 224 224 0 1 0 414.39 97.61zM256 432v-96a80 80 0 0 1 0-160V80c97.05 0 176 79 176 176s-78.95 176-176 176z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M336 256a80 80 0 0 0-80-80v160a80 80 0 0 0 80-80z\"},\"child\":[]}]})(props);\n};\nexport function IoInvertMode (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"256\",\"r\":\"208\",\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M256 176v160a80 80 0 0 0 0-160zm0-128v128a80 80 0 0 0 0 160v128c-114.88 0-208-93.12-208-208S141.12 48 256 48z\"},\"child\":[]}]})(props);\n};\nexport function IoJournalOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"rect\",\"attr\":{\"width\":\"320\",\"height\":\"416\",\"x\":\"96\",\"y\":\"48\",\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"rx\":\"48\",\"ry\":\"48\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"60\",\"d\":\"M320 48v416\"},\"child\":[]}]})(props);\n};\nexport function IoJournalSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M290 32H104a24 24 0 0 0-24 24v400a24 24 0 0 0 24 24h186zm118 0h-58v448h58a24 24 0 0 0 24-24V56a24 24 0 0 0-24-24z\"},\"child\":[]}]})(props);\n};\nexport function IoJournal (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M290 32H144a64.07 64.07 0 0 0-64 64v320a64.07 64.07 0 0 0 64 64h146zm78 0h-18v448h18a64.07 64.07 0 0 0 64-64V96a64.07 64.07 0 0 0-64-64z\"},\"child\":[]}]})(props);\n};\nexport function IoKeyOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M218.1 167.17c0 13 0 25.6 4.1 37.4-43.1 50.6-156.9 184.3-167.5 194.5a20.17 20.17 0 0 0-6.7 15c0 8.5 5.2 16.7 9.6 21.3 6.6 6.9 34.8 33 40 28 15.4-15 18.5-19 24.8-25.2 9.5-9.3-1-28.3 2.3-36s6.8-9.2 12.5-10.4 15.8 2.9 23.7 3c8.3.1 12.8-3.4 19-9.2 5-4.6 8.6-8.9 8.7-15.6.2-9-12.8-20.9-3.1-30.4s23.7 6.2 34 5 22.8-15.5 24.1-21.6-11.7-21.8-9.7-30.7c.7-3 6.8-10 11.4-11s25 6.9 29.6 5.9c5.6-1.2 12.1-7.1 17.4-10.4 15.5 6.7 29.6 9.4 47.7 9.4 68.5 0 124-53.4 124-119.2S408.5 48 340 48s-121.9 53.37-121.9 119.17zM400 144a32 32 0 1 1-32-32 32 32 0 0 1 32 32z\"},\"child\":[]}]})(props);\n};\nexport function IoKeySharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M218.1 167.2c0 13 0 25.6 4.1 37.4-43.1 50.6-167.5 194.5-167.5 194.5l2.9 36.3s34.8 33 40 28c15.4-15 24.8-25.2 24.8-25.2l7.24-43.35 47.11-3.47 3.78-46.8 49.63-.95.49-50.09 52.69 2.1 9-18.84c15.5 6.7 29.6 9.4 47.7 9.4 68.5 0 124-53.4 124-119.2S408.5 48 340 48s-121.9 53.4-121.9 119.2zM406.85 144A38.85 38.85 0 1 1 368 105.15 38.81 38.81 0 0 1 406.85 144z\"},\"child\":[]}]})(props);\n};\nexport function IoKey (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M218.1 167.17c0 13 0 25.6 4.1 37.4-43.1 50.6-156.9 184.3-167.5 194.5a20.17 20.17 0 0 0-6.7 15c0 8.5 5.2 16.7 9.6 21.3 6.6 6.9 34.8 33 40 28 15.4-15 18.5-19 24.8-25.2 9.5-9.3-1-28.3 2.3-36s6.8-9.2 12.5-10.4 15.8 2.9 23.7 3c8.3.1 12.8-3.4 19-9.2 5-4.6 8.6-8.9 8.7-15.6.2-9-12.8-20.9-3.1-30.4s23.7 6.2 34 5 22.8-15.5 24.1-21.6-11.7-21.8-9.7-30.7c.7-3 6.8-10 11.4-11s25 6.9 29.6 5.9c5.6-1.2 12.1-7.1 17.4-10.4 15.5 6.7 29.6 9.4 47.7 9.4 68.5 0 124-53.4 124-119.2S408.5 48 340 48s-121.9 53.37-121.9 119.17zM400 144a32 32 0 1 1-32-32 32 32 0 0 1 32 32z\"},\"child\":[]}]})(props);\n};\nexport function IoKeypadOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"448\",\"r\":\"32\",\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"320\",\"r\":\"32\",\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M288 192a32 32 0 1 1-32-32 32 32 0 0 1 32 32z\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"64\",\"r\":\"32\",\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"384\",\"cy\":\"320\",\"r\":\"32\",\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"384\",\"cy\":\"192\",\"r\":\"32\",\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"384\",\"cy\":\"64\",\"r\":\"32\",\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"128\",\"cy\":\"320\",\"r\":\"32\",\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"128\",\"cy\":\"192\",\"r\":\"32\",\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"128\",\"cy\":\"64\",\"r\":\"32\",\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\"},\"child\":[]}]})(props);\n};\nexport function IoKeypadSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"rect\",\"attr\":{\"width\":\"96\",\"height\":\"96\",\"x\":\"80\",\"y\":\"16\",\"rx\":\"8\",\"ry\":\"8\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"96\",\"height\":\"96\",\"x\":\"208\",\"y\":\"16\",\"rx\":\"8\",\"ry\":\"8\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"96\",\"height\":\"96\",\"x\":\"336\",\"y\":\"16\",\"rx\":\"8\",\"ry\":\"8\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"96\",\"height\":\"96\",\"x\":\"80\",\"y\":\"144\",\"rx\":\"8\",\"ry\":\"8\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"96\",\"height\":\"96\",\"x\":\"208\",\"y\":\"144\",\"rx\":\"8\",\"ry\":\"8\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"96\",\"height\":\"96\",\"x\":\"336\",\"y\":\"144\",\"rx\":\"8\",\"ry\":\"8\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"96\",\"height\":\"96\",\"x\":\"80\",\"y\":\"272\",\"rx\":\"8\",\"ry\":\"8\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"96\",\"height\":\"96\",\"x\":\"208\",\"y\":\"272\",\"rx\":\"8\",\"ry\":\"8\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"96\",\"height\":\"96\",\"x\":\"208\",\"y\":\"400\",\"rx\":\"8\",\"ry\":\"8\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"96\",\"height\":\"96\",\"x\":\"336\",\"y\":\"272\",\"rx\":\"8\",\"ry\":\"8\"},\"child\":[]}]})(props);\n};\nexport function IoKeypad (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 400a48 48 0 1 0 48 48 48 48 0 0 0-48-48zm0-128a48 48 0 1 0 48 48 48 48 0 0 0-48-48zm0-128a48 48 0 1 0 48 48 48 48 0 0 0-48-48zm0-128a48 48 0 1 0 48 48 48 48 0 0 0-48-48zm128 256a48 48 0 1 0 48 48 48 48 0 0 0-48-48zm0-128a48 48 0 1 0 48 48 48 48 0 0 0-48-48zm0-128a48 48 0 1 0 48 48 48 48 0 0 0-48-48zM128 272a48 48 0 1 0 48 48 48 48 0 0 0-48-48zm0-128a48 48 0 1 0 48 48 48 48 0 0 0-48-48zm0-128a48 48 0 1 0 48 48 48 48 0 0 0-48-48z\"},\"child\":[]}]})(props);\n};\nexport function IoLanguageOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M48 112h288M192 64v48m80 336 96-224 96 224m-162.5-64h133M281.3 112S257 206 199 277 80 384 80 384\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M256 336s-35-27-72-75-56-85-56-85\"},\"child\":[]}]})(props);\n};\nexport function IoLanguageSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M363 176 246 464h47.24l24.49-58h90.54l24.49 58H480zm-26.69 186L363 279.85 389.69 362zM272 320c-.25-.19-20.59-15.77-45.42-42.67 39.58-53.64 62-114.61 71.15-143.33H352V90H214V48h-44v42H32v44h219.25c-9.52 26.95-27.05 69.5-53.79 108.36-32.68-43.44-47.14-75.88-47.33-76.22L143 152l-38 22 6.87 13.86c.89 1.56 17.19 37.9 54.71 86.57.92 1.21 1.85 2.39 2.78 3.57-49.72 56.86-89.15 79.09-89.66 79.47L64 368l23 36 19.3-11.47c2.2-1.67 41.33-24 92-80.78 24.52 26.28 43.22 40.83 44.3 41.67L255 362z\"},\"child\":[]}]})(props);\n};\nexport function IoLanguage (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m478.33 433.6-90-218a22 22 0 0 0-40.67 0l-90 218a22 22 0 1 0 40.67 16.79L316.66 406h102.67l18.33 44.39A22 22 0 0 0 458 464a22 22 0 0 0 20.32-30.4zM334.83 362 368 281.65 401.17 362zm-66.99-19.08a22 22 0 0 0-4.89-30.7c-.2-.15-15-11.13-36.49-34.73 39.65-53.68 62.11-114.75 71.27-143.49H330a22 22 0 0 0 0-44H214V70a22 22 0 0 0-44 0v20H54a22 22 0 0 0 0 44h197.25c-9.52 26.95-27.05 69.5-53.79 108.36-31.41-41.68-43.08-68.65-43.17-68.87a22 22 0 0 0-40.58 17c.58 1.38 14.55 34.23 52.86 83.93.92 1.19 1.83 2.35 2.74 3.51-39.24 44.35-77.74 71.86-93.85 80.74a22 22 0 1 0 21.07 38.63c2.16-1.18 48.6-26.89 101.63-85.59 22.52 24.08 38 35.44 38.93 36.1a22 22 0 0 0 30.75-4.9z\"},\"child\":[]}]})(props);\n};\nexport function IoLaptopOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"rect\",\"attr\":{\"width\":\"416\",\"height\":\"304\",\"x\":\"48\",\"y\":\"96\",\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"rx\":\"32.14\",\"ry\":\"32.14\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M16 416h480\"},\"child\":[]}]})(props);\n};\nexport function IoLaptopSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M477.29 400a27.75 27.75 0 0 0 2.71-12V108a28 28 0 0 0-28-28H60a28 28 0 0 0-28 28v280a27.75 27.75 0 0 0 2.71 12H0v32h512v-32z\"},\"child\":[]}]})(props);\n};\nexport function IoLaptop (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M496 400h-28.34A47.92 47.92 0 0 0 480 367.86V128.14A48.2 48.2 0 0 0 431.86 80H80.14A48.2 48.2 0 0 0 32 128.14v239.72A47.92 47.92 0 0 0 44.34 400H16a16 16 0 0 0 0 32h480a16 16 0 0 0 0-32z\"},\"child\":[]}]})(props);\n};\nexport function IoLayersOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"m434.8 137.65-149.36-68.1c-16.19-7.4-42.69-7.4-58.88 0L77.3 137.65c-17.6 8-17.6 21.09 0 29.09l148 67.5c16.89 7.7 44.69 7.7 61.58 0l148-67.5c17.52-8 17.52-21.1-.08-29.09zM160 308.52l-82.7 37.11c-17.6 8-17.6 21.1 0 29.1l148 67.5c16.89 7.69 44.69 7.69 61.58 0l148-67.5c17.6-8 17.6-21.1 0-29.1l-79.94-38.47\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"m160 204.48-82.8 37.16c-17.6 8-17.6 21.1 0 29.1l148 67.49c16.89 7.7 44.69 7.7 61.58 0l148-67.49c17.7-8 17.7-21.1.1-29.1L352 204.48\"},\"child\":[]}]})(props);\n};\nexport function IoLayersSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M480 150 256 48 32 150l224 104 224-104zM255.71 392.95l-144.81-66.2L32 362l224 102 224-102-78.69-35.3-145.6 66.25z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m480 256-75.53-33.53L256.1 290.6l-148.77-68.17L32 256l224 102 224-102z\"},\"child\":[]}]})(props);\n};\nexport function IoLayers (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 256c-13.47 0-26.94-2.39-37.44-7.17l-148-67.49C63.79 178.26 48 169.25 48 152.24s15.79-26 22.58-29.12l149.28-68.07c20.57-9.4 51.61-9.4 72.19 0l149.37 68.07c6.79 3.09 22.58 12.1 22.58 29.12s-15.79 26-22.58 29.11l-148 67.48C282.94 253.61 269.47 256 256 256zm176.76-100.86z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M441.36 226.81 426.27 220l-38.77 17.74-94 43c-10.5 4.8-24 7.19-37.44 7.19s-26.93-2.39-37.42-7.19l-94.07-43L85.79 220l-15.22 6.84C63.79 229.93 48 239 48 256s15.79 26.08 22.56 29.17l148 67.63C229 357.6 242.49 360 256 360s26.94-2.4 37.44-7.19l147.87-67.61c6.81-3.09 22.69-12.11 22.69-29.2s-15.77-26.07-22.64-29.19z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m441.36 330.8-15.09-6.8-38.77 17.73-94 42.95c-10.5 4.78-24 7.18-37.44 7.18s-26.93-2.39-37.42-7.18l-94.07-43L85.79 324l-15.22 6.84C63.79 333.93 48 343 48 360s15.79 26.07 22.56 29.15l148 67.59C229 461.52 242.54 464 256 464s26.88-2.48 37.38-7.27l147.92-67.57c6.82-3.08 22.7-12.1 22.7-29.16s-15.77-26.07-22.64-29.2z\"},\"child\":[]}]})(props);\n};\nexport function IoLeafOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M321.89 171.42C233 114 141 155.22 56 65.22c-19.8-21-8.3 235.5 98.1 332.7 77.79 71 197.9 63.08 238.4-5.92s18.28-163.17-70.61-220.58zM173 253c86 81 175 129 292 147\"},\"child\":[]}]})(props);\n};\nexport function IoLeafSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m150.38 253.68 21.94-23.3 11.65 11c73.63 69.36 147.51 111.56 234.45 133.07 11.73-32 12.77-67.22 2.64-101.58-13.44-45.59-44.74-85.31-90.49-114.86-40.25-26-76.6-32.09-115.09-38.54-21.12-3.54-43-7.2-66.85-14.43-43.78-13.28-89.69-52.74-90.15-53.13L33.4 30.15 32 63.33c-.1 2.56-2.42 63.57 14.22 147.77 17.58 89 50.24 155.85 97.07 198.63 38 34.69 87.62 53.9 136.93 53.9a185.88 185.88 0 0 0 27.78-2.07c41.72-6.32 76.43-27.27 96-57.75-89.5-23.28-165.95-67.55-242-139.16z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M467.43 384.19c-16.83-2.59-33.13-5.84-49-9.77a158.49 158.49 0 0 1-12.13 25.68c-.74 1.25-1.51 2.49-2.29 3.71a583.43 583.43 0 0 0 58.55 12l15.82 2.44 4.86-31.63z\"},\"child\":[]}]})(props);\n};\nexport function IoLeaf (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M161.35 242a16 16 0 0 1 22.62-.68c73.63 69.36 147.51 111.56 234.45 133.07 11.73-32 12.77-67.22 2.64-101.58-13.44-45.59-44.74-85.31-90.49-114.86-40.84-26.38-81.66-33.25-121.15-39.89-49.82-8.38-96.88-16.3-141.79-63.85-5-5.26-11.81-7.37-18.32-5.66-7.44 2-12.43 7.88-14.82 17.6-5.6 22.75-2 86.51 13.75 153.82 25.29 108.14 65.65 162.86 95.06 189.73 38 34.69 87.62 53.9 136.93 53.9a186 186 0 0 0 27.77-2.04c41.71-6.32 76.43-27.27 96-57.75-89.49-23.28-165.94-67.55-242-139.16a16 16 0 0 1-.65-22.65zm306.08 142.19c-16.83-2.59-33.13-5.84-49-9.77a157.71 157.71 0 0 1-12.13 25.68c-.73 1.25-1.5 2.49-2.29 3.71a584.21 584.21 0 0 0 58.56 12 16 16 0 1 0 4.87-31.62z\"},\"child\":[]}]})(props);\n};\nexport function IoLibraryOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"rect\",\"attr\":{\"width\":\"64\",\"height\":\"368\",\"x\":\"32\",\"y\":\"96\",\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"rx\":\"16\",\"ry\":\"16\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M112 224h128M112 400h128\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"128\",\"height\":\"304\",\"x\":\"112\",\"y\":\"160\",\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"rx\":\"16\",\"ry\":\"16\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"96\",\"height\":\"416\",\"x\":\"256\",\"y\":\"48\",\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"rx\":\"16\",\"ry\":\"16\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"m422.46 96.11-40.4 4.25c-11.12 1.17-19.18 11.57-17.93 23.1l34.92 321.59c1.26 11.53 11.37 20 22.49 18.84l40.4-4.25c11.12-1.17 19.18-11.57 17.93-23.1L445 115c-1.31-11.58-11.42-20.06-22.54-18.89z\"},\"child\":[]}]})(props);\n};\nexport function IoLibrarySharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M84 480H28a12 12 0 0 1-12-12V92a12 12 0 0 1 12-12h56a12 12 0 0 1 12 12v376a12 12 0 0 1-12 12zm156-272v-52a12 12 0 0 0-12-12H124a12 12 0 0 0-12 12v52zM112 416v52a12 12 0 0 0 12 12h104a12 12 0 0 0 12-12v-52zm0-176h128v144H112zm228 240h-72a12 12 0 0 1-12-12V44a12 12 0 0 1 12-12h72a12 12 0 0 1 12 12v424a12 12 0 0 1-12 12zm29-379.3 30 367.83a12 12 0 0 0 13.45 10.92l72.16-9a12 12 0 0 0 10.47-12.9L465 91.21a12 12 0 0 0-13.2-10.94l-72.13 7.51A12 12 0 0 0 369 100.7z\"},\"child\":[]}]})(props);\n};\nexport function IoLibrary (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M64 480H48a32 32 0 0 1-32-32V112a32 32 0 0 1 32-32h16a32 32 0 0 1 32 32v336a32 32 0 0 1-32 32zm176-304a32 32 0 0 0-32-32h-64a32 32 0 0 0-32 32v28a4 4 0 0 0 4 4h120a4 4 0 0 0 4-4zM112 448a32 32 0 0 0 32 32h64a32 32 0 0 0 32-32v-30a2 2 0 0 0-2-2H114a2 2 0 0 0-2 2z\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"128\",\"height\":\"144\",\"x\":\"112\",\"y\":\"240\",\"rx\":\"2\",\"ry\":\"2\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M320 480h-32a32 32 0 0 1-32-32V64a32 32 0 0 1 32-32h32a32 32 0 0 1 32 32v384a32 32 0 0 1-32 32zm175.89-34.55-32.23-340c-1.48-15.65-16.94-27-34.53-25.31l-31.85 3c-17.59 1.67-30.65 15.71-29.17 31.36l32.23 340c1.48 15.65 16.94 27 34.53 25.31l31.85-3c17.59-1.67 30.65-15.71 29.17-31.36z\"},\"child\":[]}]})(props);\n};\nexport function IoLinkOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"36\",\"d\":\"M208 352h-64a96 96 0 0 1 0-192h64m96 0h64a96 96 0 0 1 0 192h-64m-140.71-96h187.42\"},\"child\":[]}]})(props);\n};\nexport function IoLinkSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"square\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"48\",\"d\":\"M200.66 352H144a96 96 0 0 1 0-192h55.41m113.18 0H368a96 96 0 0 1 0 192h-56.66m-142.27-96h175.86\"},\"child\":[]}]})(props);\n};\nexport function IoLink (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"48\",\"d\":\"M200.66 352H144a96 96 0 0 1 0-192h55.41m113.18 0H368a96 96 0 0 1 0 192h-56.66m-142.27-96h175.86\"},\"child\":[]}]})(props);\n};\nexport function IoListCircleOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M224 184h128m-128 72h128m-128 71h128\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M448 258c0-106-86-192-192-192S64 152 64 258s86 192 192 192 192-86 192-192z\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"168\",\"cy\":\"184\",\"r\":\"8\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"168\",\"cy\":\"257\",\"r\":\"8\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"168\",\"cy\":\"328\",\"r\":\"8\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\"},\"child\":[]}]})(props);\n};\nexport function IoListCircleSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 48C141.31 48 48 141.31 48 256s93.31 208 208 208 208-93.31 208-208S370.69 48 256 48zm-64 287.5a16 16 0 0 1-16 16h-16a16 16 0 0 1-16-16v-16a16 16 0 0 1 16-16h16a16 16 0 0 1 16 16zm0-71a16 16 0 0 1-16 16h-16a16 16 0 0 1-16-16v-16a16 16 0 0 1 16-16h16a16 16 0 0 1 16 16zm0-72a16 16 0 0 1-16 16h-16a16 16 0 0 1-16-16v-16a16 16 0 0 1 16-16h16a16 16 0 0 1 16 16zm176 151H212.67v-32H368zm0-71H212.67v-32H368zm0-72H212.67v-32H368z\"},\"child\":[]}]})(props);\n};\nexport function IoListCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 48C141.31 48 48 141.31 48 256s93.31 208 208 208 208-93.31 208-208S370.69 48 256 48zm-88 302a24 24 0 1 1 24-24 24 24 0 0 1-24 24zm0-71a24 24 0 1 1 24-24 24 24 0 0 1-24 24zm0-73a24 24 0 1 1 24-24 24 24 0 0 1-24 24zm184 135H224a16 16 0 0 1 0-32h128a16 16 0 0 1 0 32zm0-71H224a16 16 0 0 1 0-32h128a16 16 0 0 1 0 32zm0-72H224a16 16 0 0 1 0-32h128a16 16 0 0 1 0 32z\"},\"child\":[]}]})(props);\n};\nexport function IoListOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M160 144h288M160 256h288M160 368h288\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"80\",\"cy\":\"144\",\"r\":\"16\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"80\",\"cy\":\"256\",\"r\":\"16\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"80\",\"cy\":\"368\",\"r\":\"16\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\"},\"child\":[]}]})(props);\n};\nexport function IoListSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"48\",\"d\":\"M144 144h320M144 256h320M144 368h320\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"square\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M64 128h32v32H64zm0 112h32v32H64zm0 112h32v32H64z\"},\"child\":[]}]})(props);\n};\nexport function IoList (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"48\",\"d\":\"M160 144h288M160 256h288M160 368h288\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"80\",\"cy\":\"144\",\"r\":\"16\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"80\",\"cy\":\"256\",\"r\":\"16\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"80\",\"cy\":\"368\",\"r\":\"16\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\"},\"child\":[]}]})(props);\n};\nexport function IoLocateOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"48\",\"d\":\"M256 96V56m0 400v-40\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M256 112a144 144 0 1 0 144 144 144 144 0 0 0-144-144z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"48\",\"d\":\"M416 256h40m-400 0h40\"},\"child\":[]}]})(props);\n};\nexport function IoLocateSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"square\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"48\",\"d\":\"M256 96V56m0 400v-40m0-304a144 144 0 1 0 144 144 144 144 0 0 0-144-144zm160 144h40m-400 0h40\"},\"child\":[]}]})(props);\n};\nexport function IoLocate (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"48\",\"d\":\"M256 96V56m0 400v-40m0-304a144 144 0 1 0 144 144 144 144 0 0 0-144-144zm160 144h40m-400 0h40\"},\"child\":[]}]})(props);\n};\nexport function IoLocationOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M256 48c-79.5 0-144 61.39-144 137 0 87 96 224.87 131.25 272.49a15.77 15.77 0 0 0 25.5 0C304 409.89 400 272.07 400 185c0-75.61-64.5-137-144-137z\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"192\",\"r\":\"48\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\"},\"child\":[]}]})(props);\n};\nexport function IoLocationSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 32C167.67 32 96 96.51 96 176c0 128 160 304 160 304s160-176 160-304c0-79.49-71.67-144-160-144zm0 224a64 64 0 1 1 64-64 64.07 64.07 0 0 1-64 64z\"},\"child\":[]}]})(props);\n};\nexport function IoLocation (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"192\",\"r\":\"32\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M256 32c-88.22 0-160 68.65-160 153 0 40.17 18.31 93.59 54.42 158.78 29 52.34 62.55 99.67 80 123.22a31.75 31.75 0 0 0 51.22 0c17.42-23.55 51-70.88 80-123.22C397.69 278.61 416 225.19 416 185c0-84.35-71.78-153-160-153zm0 224a64 64 0 1 1 64-64 64.07 64.07 0 0 1-64 64z\"},\"child\":[]}]})(props);\n};\nexport function IoLockClosedOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M336 208v-95a80 80 0 0 0-160 0v95\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"320\",\"height\":\"272\",\"x\":\"96\",\"y\":\"208\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"rx\":\"48\",\"ry\":\"48\"},\"child\":[]}]})(props);\n};\nexport function IoLockClosedSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M420 192h-68v-80a96 96 0 1 0-192 0v80H92a12 12 0 0 0-12 12v280a12 12 0 0 0 12 12h328a12 12 0 0 0 12-12V204a12 12 0 0 0-12-12zm-106 0H198v-80.75a58 58 0 1 1 116 0z\"},\"child\":[]}]})(props);\n};\nexport function IoLockClosed (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M368 192h-16v-80a96 96 0 1 0-192 0v80h-16a64.07 64.07 0 0 0-64 64v176a64.07 64.07 0 0 0 64 64h224a64.07 64.07 0 0 0 64-64V256a64.07 64.07 0 0 0-64-64zm-48 0H192v-80a64 64 0 1 1 128 0z\"},\"child\":[]}]})(props);\n};\nexport function IoLockOpenOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M336 112a80 80 0 0 0-160 0v96\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"320\",\"height\":\"272\",\"x\":\"96\",\"y\":\"208\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"rx\":\"48\",\"ry\":\"48\"},\"child\":[]}]})(props);\n};\nexport function IoLockOpenSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M420 192H198v-80.75a58.08 58.08 0 0 1 99.07-41.07A59.4 59.4 0 0 1 314 112h38a96 96 0 1 0-192 0v80H92a12 12 0 0 0-12 12v280a12 12 0 0 0 12 12h328a12 12 0 0 0 12-12V204a12 12 0 0 0-12-12z\"},\"child\":[]}]})(props);\n};\nexport function IoLockOpen (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M368 192H192v-80a64 64 0 1 1 128 0 16 16 0 0 0 32 0 96 96 0 1 0-192 0v80h-16a64.07 64.07 0 0 0-64 64v176a64.07 64.07 0 0 0 64 64h224a64.07 64.07 0 0 0 64-64V256a64.07 64.07 0 0 0-64-64z\"},\"child\":[]}]})(props);\n};\nexport function IoLogInOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M192 176v-40a40 40 0 0 1 40-40h160a40 40 0 0 1 40 40v240a40 40 0 0 1-40 40H240c-22.09 0-48-17.91-48-40v-40\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"m288 336 80-80-80-80M80 256h272\"},\"child\":[]}]})(props);\n};\nexport function IoLogInSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M432 80H192a16 16 0 0 0-16 16v144h153.37l-64-64L288 153.37l91.31 91.32a16 16 0 0 1 0 22.62L288 358.63 265.37 336l64-64H176v144a16 16 0 0 0 16 16h240a16 16 0 0 0 16-16V96a16 16 0 0 0-16-16zM64 240h112v32H64z\"},\"child\":[]}]})(props);\n};\nexport function IoLogIn (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M392 80H232a56.06 56.06 0 0 0-56 56v104h153.37l-52.68-52.69a16 16 0 0 1 22.62-22.62l80 80a16 16 0 0 1 0 22.62l-80 80a16 16 0 0 1-22.62-22.62L329.37 272H176v104c0 32.05 33.79 56 64 56h152a56.06 56.06 0 0 0 56-56V136a56.06 56.06 0 0 0-56-56zM80 240a16 16 0 0 0 0 32h96v-32z\"},\"child\":[]}]})(props);\n};\nexport function IoLogOutOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M304 336v40a40 40 0 0 1-40 40H104a40 40 0 0 1-40-40V136a40 40 0 0 1 40-40h152c22.09 0 48 17.91 48 40v40m64 160 80-80-80-80m-192 80h256\"},\"child\":[]}]})(props);\n};\nexport function IoLogOutSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M160 240h160V96a16 16 0 0 0-16-16H64a16 16 0 0 0-16 16v320a16 16 0 0 0 16 16h240a16 16 0 0 0 16-16V272H160zm299.31 4.69L368 153.37 345.37 176l64 64H320v32h89.37l-64 64L368 358.63l91.31-91.32a16 16 0 0 0 0-22.62z\"},\"child\":[]}]})(props);\n};\nexport function IoLogOut (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M160 256a16 16 0 0 1 16-16h144V136c0-32-33.79-56-64-56H104a56.06 56.06 0 0 0-56 56v240a56.06 56.06 0 0 0 56 56h160a56.06 56.06 0 0 0 56-56V272H176a16 16 0 0 1-16-16zm299.31-11.31-80-80a16 16 0 0 0-22.62 22.62L409.37 240H320v32h89.37l-52.68 52.69a16 16 0 1 0 22.62 22.62l80-80a16 16 0 0 0 0-22.62z\"},\"child\":[]}]})(props);\n};\nexport function IoLogoAlipay (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M102.41 32C62.38 32 32 64.12 32 103.78v304.45C32 447.86 64.38 480 104.41 480h303.2c40 0 72.39-32.14 72.39-71.77v-3.11c-1.35-.56-115.47-48.57-174.5-76.7-39.82 48.57-91.18 78-144.5 78-90.18 0-120.8-78.22-78.1-129.72 9.31-11.22 25.15-21.94 49.73-28 38.45-9.36 99.64 5.85 157 24.61a309.41 309.41 0 0 0 25.46-61.67H138.34V194h91.13v-31.83H119.09v-17.75h110.38V99s0-7.65 7.82-7.65h44.55v53H391v17.75H281.84V194h89.08a359.41 359.41 0 0 1-37.72 94.43c27 9.69 49.31 18.88 67.39 24.89 60.32 20 77.23 22.45 79.41 22.7V103.78C480 64.12 447.6 32 407.61 32h-305.2zM152 274.73q-5.81.06-11.67.63c-11.3 1.13-32.5 6.07-44.09 16.23-34.74 30-13.94 84.93 56.37 84.93 40.87 0 81.71-25.9 113.79-67.37-41.36-20-77-34.85-114.4-34.42z\"},\"child\":[]}]})(props);\n};\nexport function IoLogoAmazon (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M48.48 378.73a300.52 300.52 0 0 0 152.89 95.92 262.57 262.57 0 0 0 159.3-17.25 225.52 225.52 0 0 0 66.79-47 6.36 6.36 0 0 0-2-8.53 11.76 11.76 0 0 0-8-.05 401.92 401.92 0 0 1-116.55 39.34 358.13 358.13 0 0 1-127.29-8.83 446.73 446.73 0 0 1-119.1-60.49 5 5 0 0 0-6.06 6.9z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M387.15 388.44a168.11 168.11 0 0 1 48.94-2.23l.67.13a10 10 0 0 1 7.37 12.05A204.71 204.71 0 0 1 429 444.47a2.55 2.55 0 0 0 1.66 3.18 2.51 2.51 0 0 0 2.23-.37A83.31 83.31 0 0 0 464 382.86a12.44 12.44 0 0 0-10.22-13.22A95.75 95.75 0 0 0 384.91 384a2.55 2.55 0 0 0-.57 3.55 2.52 2.52 0 0 0 2.81.89zm-82.91-63.52a164 164 0 0 1-28.92 25.3A135.16 135.16 0 0 1 208.63 369a99.49 99.49 0 0 1-57.49-19.85 97.25 97.25 0 0 1-27.36-100.28 112.35 112.35 0 0 1 65.3-69.06 367.67 367.67 0 0 1 104.7-15.55V127A37.82 37.82 0 0 0 261 94.72a59.9 59.9 0 0 0-31.17 4.08 48.89 48.89 0 0 0-27.13 34.67 12 12 0 0 1-12.58 6.72l-50.9-4.5a11.38 11.38 0 0 1-8.38-10.16 103.66 103.66 0 0 1 36.61-63.45A143.86 143.86 0 0 1 257.85 32a146.24 146.24 0 0 1 84.27 27.67 86.82 86.82 0 0 1 30.7 70.22V258.8a84.46 84.46 0 0 0 8 31.28l15.87 23.23a13 13 0 0 1 0 11.23l-46.99 39.71a12.5 12.5 0 0 1-12.68-.44 244.84 244.84 0 0 1-32.78-38.89zm-10.6-116.83a257.68 257.68 0 0 0-44 2.89A63 63 0 0 0 208 242.54a63 63 0 0 0 3.07 54 40.6 40.6 0 0 0 47.11 12.19 78.61 78.61 0 0 0 35.46-55.58v-45.06\"},\"child\":[]}]})(props);\n};\nexport function IoLogoAmplify (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"m112.31 268 40.36-68.69 34.65 59-67.54 115h135L289.31 432H16zm58.57-99.76 33.27-56.67L392.44 432h-66.68zM222.67 80h66.59L496 432h-66.68z\"},\"child\":[]}]})(props);\n};\nexport function IoLogoAndroid (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m380.91 199 42.47-73.57a8.63 8.63 0 0 0-3.12-11.76 8.52 8.52 0 0 0-11.71 3.12l-43 74.52c-32.83-15-69.78-23.35-109.52-23.35s-76.69 8.36-109.52 23.35l-43-74.52a8.6 8.6 0 1 0-14.88 8.64L131 199C57.8 238.64 8.19 312.77 0 399.55h512c-8.19-86.78-57.8-160.91-131.09-200.55zM138.45 327.65a21.46 21.46 0 1 1 21.46-21.46 21.47 21.47 0 0 1-21.46 21.46zm235 0A21.46 21.46 0 1 1 395 306.19a21.47 21.47 0 0 1-21.51 21.46z\"},\"child\":[]}]})(props);\n};\nexport function IoLogoAngular (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M213.57 256h84.85l-42.43-89.36L213.57 256z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M256 32 32 112l46.12 272L256 480l177.75-96L480 112zm88 320-26.59-56H194.58L168 352h-40L256 72l128 280z\"},\"child\":[]}]})(props);\n};\nexport function IoLogoAppleAppstore (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 32C132.26 32 32 132.26 32 256s100.26 224 224 224 224-100.26 224-224S379.74 32 256 32zm-85 321.89a15.48 15.48 0 0 1-13.46 7.65 14.91 14.91 0 0 1-7.86-2.16 15.48 15.48 0 0 1-5.6-21.21l15.29-25.42a8.73 8.73 0 0 1 7.54-4.3h2.26c11.09 0 18.85 6.67 21.11 13.13zm129.45-50-100.13.11h-66.55a15.46 15.46 0 0 1-15.51-16.15c.32-8.4 7.65-14.76 16-14.76h48.24l57.19-97.35-18.52-31.55C217 137 218.85 127.52 226 123a15.57 15.57 0 0 1 21.87 5.17l9.9 16.91h.11l9.91-16.91A15.58 15.58 0 0 1 289.6 123c7.11 4.52 8.94 14 4.74 21.22l-18.52 31.55-18 30.69-39.09 66.66v.11h57.61c7.22 0 16.27 3.88 19.93 10.12l.32.65c3.23 5.49 5.06 9.26 5.06 14.75a13.82 13.82 0 0 1-1.17 5.17zm77.75.11h-27.11v.11l19.82 33.71a15.8 15.8 0 0 1-5.17 21.53 15.53 15.53 0 0 1-8.08 2.27A15.71 15.71 0 0 1 344.2 354l-29.29-49.86-18.2-31L273.23 233a38.35 38.35 0 0 1-.65-38c4.64-8.19 8.19-10.34 8.19-10.34L333 273h44.91c8.4 0 15.61 6.46 16 14.75A15.65 15.65 0 0 1 378.23 304z\"},\"child\":[]}]})(props);\n};\nexport function IoLogoAppleAr (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M201.14 64 256 32l54.86 32\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M256 32v80\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M310.86 448 256 480l-54.86-32\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M256 480v-80\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M64 207.51V144l53.15-31.51\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"m64 144 67.29 40\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M448 304.49V368l-53.15 31.51\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"m448 368-67.29-40\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M117.15 400 64 368v-63.51\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"m64 368 66.64-40\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M394.85 112.49 448 144v63.51\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"m448 144-67.29 40M256 320v-64l54.86-32M256 256l-54.86-32\"},\"child\":[]}]})(props);\n};\nexport function IoLogoApple (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M349.13 136.86c-40.32 0-57.36 19.24-85.44 19.24-28.79 0-50.75-19.1-85.69-19.1-34.2 0-70.67 20.88-93.83 56.45-32.52 50.16-27 144.63 25.67 225.11 18.84 28.81 44 61.12 77 61.47h.6c28.68 0 37.2-18.78 76.67-19h.6c38.88 0 46.68 18.89 75.24 18.89h.6c33-.35 59.51-36.15 78.35-64.85 13.56-20.64 18.6-31 29-54.35-76.19-28.92-88.43-136.93-13.08-178.34-23-28.8-55.32-45.48-85.79-45.48z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M340.25 32c-24 1.63-52 16.91-68.4 36.86-14.88 18.08-27.12 44.9-22.32 70.91h1.92c25.56 0 51.72-15.39 67-35.11 14.72-18.77 25.88-45.37 21.8-72.66z\"},\"child\":[]}]})(props);\n};\nexport function IoLogoBehance (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M344.1 233.6c-28.9 0-32.9 28.8-32.9 28.8h61.4s.4-28.8-28.5-28.8zm-139.3 28.8h-54.4v50h51.7c7.8-.2 22.4-2.4 22.4-24.3 0-26-19.7-25.7-19.7-25.7z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M256 32C132.3 32 32 132.3 32 256s100.3 224 224 224 224-100.3 224-224S379.7 32 256 32zm47.2 137.6h77.1v23h-77.1v-23zm-39 120.8c0 57-59.4 55.2-59.4 55.2h-97.2v-187h97.2c29.6 0 52.9 16.3 52.9 49.8S229.2 244 229.2 244c37.6 0 35 46.4 35 46.4zm144.2-3.1h-96.9c0 34.7 32.9 32.5 32.9 32.5 31.1 0 30-20.1 30-20.1h32.9c0 53.4-64 49.7-64 49.7-76.7 0-71.8-71.5-71.8-71.5s-.1-71.8 71.8-71.8c75.7.1 65.1 81.2 65.1 81.2z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M218 211.3c0-19.4-13.2-19.4-13.2-19.4h-54.4v41.7h51c8.8 0 16.6-2.9 16.6-22.3z\"},\"child\":[]}]})(props);\n};\nexport function IoLogoBitbucket (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M483.13 32.23a19.65 19.65 0 0 0-2.54-.23h-449C23 31.88 16.12 38.88 16 47.75a11.44 11.44 0 0 0 .23 2.8l65.3 411.25a22.52 22.52 0 0 0 7 12.95A20 20 0 0 0 102 480h313.18a15.45 15.45 0 0 0 15.34-13.42l38.88-247.91H325.19l-18.46 112H205.21l-25.73-148h295.58l20.76-132c1.27-8.75-4.38-17.04-12.69-18.44z\"},\"child\":[]}]})(props);\n};\nexport function IoLogoBitcoin (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M410.47 279.2c-5-11.5-12.7-21.6-28.1-30.1a98.15 98.15 0 0 0-25.4-10 62.22 62.22 0 0 0 16.3-11 56.37 56.37 0 0 0 15.6-23.3 77.11 77.11 0 0 0 3.5-28.2c-1.1-16.8-4.4-33.1-13.2-44.8s-21.2-20.7-37.6-27c-12.6-4.8-25.5-7.8-45.5-8.9V32h-40v64h-32V32h-41v64H96v48h27.87c8.7 0 14.6.8 17.6 2.3a13.22 13.22 0 0 1 6.5 6c1.3 2.5 1.9 8.4 1.9 17.5V343c0 9-.6 14.8-1.9 17.4s-2 4.9-5.1 6.3-3.2 1.3-11.8 1.3h-26.4L96 416h87v64h41v-64h32v64h40v-64.4c26-1.3 44.5-4.7 59.4-10.3 19.3-7.2 34.1-17.7 44.7-31.5s14-34.9 14.93-51.2c.67-14.5-.03-33.2-4.56-43.4zM224 150h32v74h-32zm0 212v-90h32v90zm72-208.1c6 2.5 9.9 7.5 13.8 12.7 4.3 5.7 6.5 13.3 6.5 21.4 0 7.8-2.9 14.5-7.5 20.5-3.8 4.9-6.8 8.3-12.8 11.1zm28.8 186.7c-7.8 6.9-12.3 10.1-22.1 13.8a56.06 56.06 0 0 1-6.7 1.9v-82.8a40.74 40.74 0 0 1 11.3 3.4c7.8 3.3 15.2 6.9 19.8 13.2a43.82 43.82 0 0 1 8 24.7c-.03 10.9-2.83 19.2-10.33 25.8z\"},\"child\":[]}]})(props);\n};\nexport function IoLogoBuffer (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m39.93 149.25 197.4 95.32c5.14 2.45 12 3.73 18.79 3.73s13.65-1.28 18.78-3.73l197.4-95.32c10.38-5 10.38-13.18 0-18.2L274.9 35.73c-5.13-2.45-12-3.73-18.78-3.73s-13.65 1.28-18.79 3.73l-197.4 95.32c-10.38 5.02-10.38 13.18 0 18.2z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M472.3 246.9s-36.05-17.38-40.83-19.72-6.07-2.21-11.09.12-145.6 70.23-145.6 70.23a45.71 45.71 0 0 1-18.78 3.74c-6.77 0-13.65-1.29-18.78-3.74 0 0-136.85-66-143.27-69.18C87 225 85 225 78.67 228l-39 18.78c-10.38 5-10.38 13.19 0 18.2L237.1 360.3c5.13 2.45 12 3.73 18.78 3.73s13.65-1.28 18.79-3.73l197.4-95.3c10.61-4.92 10.61-13.08.23-18.1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M472.3 362.75s-36.05-17.38-40.83-19.75-6.07-2.21-11.09.12S274.9 413.5 274.9 413.5a45.74 45.74 0 0 1-18.78 3.73c-6.77 0-13.65-1.28-18.79-3.73 0 0-136.85-66-143.26-69.18-7-3.39-9-3.39-15.29-.35l-39 18.78c-10.39 5-10.39 13.18 0 18.2l197.4 95.32c5.13 2.56 12 3.73 18.78 3.73s13.65-1.28 18.78-3.73L472.18 381c10.5-5.07 10.5-13.23.12-18.25z\"},\"child\":[]}]})(props);\n};\nexport function IoLogoCapacitor (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M480 101.09 372.37 208.72l106.86 107.06-69.3 69.3-283.22-283.23L196 32.54l107.07 106.88L410.67 32zM32.55 196l69.3-69.31 283.22 283.24-69.3 69.3-107-106.87L101.08 480 32 410.67l107.42-107.61z\"},\"child\":[]}]})(props);\n};\nexport function IoLogoChrome (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M188.8 255.93a67.2 67.2 0 1 0 67.2-67.18 67.38 67.38 0 0 0-67.2 67.18z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M476.75 217.79v.05a206.63 206.63 0 0 0-7-28.84h-.11a202.16 202.16 0 0 1 7.07 29 203.5 203.5 0 0 0-7.07-29h-155.4c19.05 17 31.36 40.17 31.36 67.05a86.55 86.55 0 0 1-12.31 44.73L231 478.45a2.44 2.44 0 0 1 0 .27v.28-.26a224 224 0 0 0 25 1.26c6.84 0 13.61-.39 20.3-1a222.91 222.91 0 0 0 29.78-4.74C405.68 451.52 480 362.4 480 255.94a225.25 225.25 0 0 0-3.25-38.15z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M256 345.5c-33.6 0-61.6-17.91-77.29-44.79L76 123.05l-.14-.24A224 224 0 0 0 207.4 474.55v-.05l77.69-134.6a84.13 84.13 0 0 1-29.09 5.6z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m91.29 104.57 77.35 133.25A89.19 89.19 0 0 1 256 166h205.17a246.51 246.51 0 0 0-25.78-43.94l.12.08A245.26 245.26 0 0 1 461.17 166h.17a245.91 245.91 0 0 0-25.66-44 2.63 2.63 0 0 1-.35-.26 223.93 223.93 0 0 0-344.19-17.4l.14.24z\"},\"child\":[]}]})(props);\n};\nexport function IoLogoClosedCaptioning (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 80v352h512V80zm464 175.78c0 25.74-1.6 45.32-3.77 77.22s-19.2 54.34-59.09 57.86-95.77 3.85-145.14 3.74c-49 .11-105.14-.11-145.14-3.74s-56.8-26-59.09-57.86S48 281.52 48 255.78s.11-42.46 3.77-77.22 23-54.12 59.09-57.64 98.28-3.52 145.14-3.52 109 0 145.14 3.52 55.43 23 59.09 57.64 3.77 51.59 3.77 77.22z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M367.57 282.84v.77c0 17.93-11.11 28.49-25.95 28.49s-24.84-11.88-26.27-28.49c0 0-1.31-8.69-1.31-26.29a229.5 229.5 0 0 1 1.53-28.6c2.64-18.7 11.77-28.49 26.6-28.49s26.49 12.76 26.49 32.12v.55h49.58c0-24.09-6.05-45.76-18.25-59.4S369.76 153 345.8 153a108.06 108.06 0 0 0-33 4.73 58.82 58.82 0 0 0-25.94 16.61c-7.23 7.96-12.86 18.52-16.86 31.83s-6 30-6 50.27c0 19.8 1.65 36.3 4.84 49.61s8 23.87 14.4 31.79a49.76 49.76 0 0 0 24 16.5q14.5 4.62 34 4.62c27.47 0 47.26-7 59.13-20.57S418 305.06 418 279.1h-50.65c.22 0 .22 2.75.22 3.74zm-170.27 0v.77c0 17.93-11.1 28.49-25.94 28.49s-24.84-11.88-26.27-28.49c0 0-1.31-8.69-1.31-26.29a229.5 229.5 0 0 1 1.53-28.6c2.64-18.7 11.77-28.49 26.6-28.49S198.4 213 198.4 232.35v.55H248c0-24.09-6-45.76-18.25-59.4S199.5 153 175.54 153a108.06 108.06 0 0 0-33 4.73 58.82 58.82 0 0 0-25.94 16.61c-7.26 7.92-12.86 18.48-16.93 31.79s-6 30-6 50.27c0 19.8 1.65 36.3 4.84 49.61s8 23.87 14.4 31.79a49.76 49.76 0 0 0 24 16.5q14.51 4.62 34 4.62c27.48 0 47.27-7 59.14-20.57s17.81-33.33 17.81-59.29h-50.78c.22.04.22 2.79.22 3.78z\"},\"child\":[]}]})(props);\n};\nexport function IoLogoCodepen (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M241.24 303.94c-15.32-10.36-30.74-20.57-46.06-30.93-2-1.38-3.43-1.48-5.5 0l-38.88 26.12C182 319.9 244 361.32 244 361.32v-53.79c0-1.22-1.55-2.78-2.76-3.59zm-46.15-63.27q23.19-15.24 46.11-30.86a7.54 7.54 0 0 0 2.8-5.34v-51.7s-62 41.12-93.26 61.94c13.7 9.16 26.67 17.91 39.78 26.44 1.02.66 3.4.28 4.57-.48zm74.75-31.32q23.71 16.07 47.63 31.82a4.3 4.3 0 0 0 3.83 0l39.76-26.47L268 152.48v53.35a4.79 4.79 0 0 0 1.84 3.52zm-11.73 21.02a5.27 5.27 0 0 0-4.74.17c-4.82 3-9.47 6.2-14.17 9.35-8.25 5.53-25.35 17-25.35 17l38.84 25.86a6.18 6.18 0 0 0 6.26.11l39-26s-34.07-22.66-39.84-26.49zM141 237.12v39.61l29.62-19.84L141 237.12z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M256 32C132.29 32 32 132.29 32 256s100.29 224 224 224 224-100.29 224-224S379.71 32 256 32zm139 265c0 5.78-2.65 9.86-7.51 13.09q-61.71 41-123.29 82.19c-5.85 3.92-11.17 3.75-17-.14q-61.17-41-122.63-81.67c-5.11-3.39-7.59-7.56-7.59-13.73V217c0-6.14 2.52-10.34 7.62-13.72 40.91-27.13 81.94-54.36 122.73-81.68 5.82-3.89 11.09-4 16.94-.09q61.54 41.21 123.26 82.19c4.68 3.11 7.45 6.95 7.45 12.66z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M316.25 273.23q-22.59 15.34-45.39 30.34c-2.41 1.58-2.89 3.31-2.86 6.19v51.34l93-62-38.53-25.88c-2.3-1.61-3.89-1.57-6.22.01zm53.75 3.45v-39.62l-29.59 19.87L370 276.68z\"},\"child\":[]}]})(props);\n};\nexport function IoLogoCss3 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m64 32 35 403.22L255.77 480 413 435.15 448 32zm290.68 334.9L256.07 395l-98.46-28.24-6.75-77.76h48.26l3.43 39.56 53.59 15.16.13.28 53.47-14.85 5.64-64.15H203l-4-50h120.65l4.35-51H140l-4-49h240.58z\"},\"child\":[]}]})(props);\n};\nexport function IoLogoDesignernews (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M295.31 122.8 222.86 64l72.68 122.64-.23-63.84z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M339.43 64v195.6h-41.6L225.6 141.28l1.94 118.32h-45.83V131.2L139.09 96c1.14 1.44 2.28 2.88 3.31 4.44 11.43 16.68 17.14 36.6 17.14 60.6 0 59-35 98.52-87.88 98.52H0v.48L228.11 448H512V205.72z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M111.89 162.52c0-34.8-16.23-54.12-45.38-54.12H44.57v106.8h21.72c29.71 0 45.6-18.48 45.6-52.68z\"},\"child\":[]}]})(props);\n};\nexport function IoLogoDeviantart (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M408 103.28V16h-89.31l-8.9 8.78-42.15 78.48-13.25 8.74H104v119.85h82.68l7.36 8.71L104 408.72V496h89.3l8.91-8.79 42.14-78.48 13.26-8.73H408V280.13h-82.68l-7.36-8.75L408 103.28z\"},\"child\":[]}]})(props);\n};\nexport function IoLogoDiscord (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M464 66.52A50 50 0 0 0 414.12 17L97.64 16A49.65 49.65 0 0 0 48 65.52V392c0 27.3 22.28 48 49.64 48H368l-13-44 109 100zM324.65 329.81s-8.72-10.39-16-19.32C340.39 301.55 352.5 282 352.5 282a139 139 0 0 1-27.85 14.25 173.31 173.31 0 0 1-35.11 10.39 170.05 170.05 0 0 1-62.72-.24 184.45 184.45 0 0 1-35.59-10.4 141.46 141.46 0 0 1-17.68-8.21c-.73-.48-1.45-.72-2.18-1.21-.49-.24-.73-.48-1-.48-4.36-2.42-6.78-4.11-6.78-4.11s11.62 19.09 42.38 28.26c-7.27 9.18-16.23 19.81-16.23 19.81-53.51-1.69-73.85-36.47-73.85-36.47 0-77.06 34.87-139.62 34.87-139.62 34.87-25.85 67.8-25.12 67.8-25.12l2.42 2.9c-43.59 12.32-63.44 31.4-63.44 31.4s5.32-2.9 14.28-6.77c25.91-11.35 46.5-14.25 55-15.21a24 24 0 0 1 4.12-.49 205.62 205.62 0 0 1 48.91-.48 201.62 201.62 0 0 1 72.89 22.95s-19.13-18.15-60.3-30.45l3.39-3.86s33.17-.73 67.81 25.16c0 0 34.87 62.56 34.87 139.62 0-.28-20.35 34.5-73.86 36.19z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M212.05 218c-13.8 0-24.7 11.84-24.7 26.57s11.14 26.57 24.7 26.57c13.8 0 24.7-11.83 24.7-26.57.25-14.76-10.9-26.57-24.7-26.57zm88.38 0c-13.8 0-24.7 11.84-24.7 26.57s11.14 26.57 24.7 26.57c13.81 0 24.7-11.83 24.7-26.57S314 218 300.43 218z\"},\"child\":[]}]})(props);\n};\nexport function IoLogoDocker (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M507 211.16c-1.42-1.19-14.25-10.94-41.79-10.94a132.55 132.55 0 0 0-21.61 1.9c-5.22-36.4-35.38-54-36.57-55l-7.36-4.28-4.75 6.9a101.65 101.65 0 0 0-13.06 30.45c-5 20.7-1.9 40.2 8.55 56.85-12.59 7.14-33 8.8-37.28 9H15.94A15.93 15.93 0 0 0 0 262.07a241.25 241.25 0 0 0 14.75 86.83C26.39 379.35 43.72 402 66 415.74 91.22 431.2 132.3 440 178.6 440a344.23 344.23 0 0 0 62.45-5.71 257.44 257.44 0 0 0 81.69-29.73 223.55 223.55 0 0 0 55.57-45.67c26.83-30.21 42.74-64 54.38-94h4.75c29.21 0 47.26-11.66 57.23-21.65a63.31 63.31 0 0 0 15.2-22.36l2.14-6.18z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M47.29 236.37H92.4a4 4 0 0 0 4-4v-40.48a4 4 0 0 0-4-4H47.29a4 4 0 0 0-4 4v40.44a4.16 4.16 0 0 0 4 4m62.21.04h45.12a4 4 0 0 0 4-4v-40.48a4 4 0 0 0-4-4H109.5a4 4 0 0 0-4 4v40.44a4.16 4.16 0 0 0 4 4m63.4.04H218a4 4 0 0 0 4-4v-40.48a4 4 0 0 0-4-4h-45.1a4 4 0 0 0-4 4v40.44a3.87 3.87 0 0 0 4 4m62.46.04h45.12a4 4 0 0 0 4-4v-40.48a4 4 0 0 0-4-4h-45.12a4 4 0 0 0-4 4v40.44a4 4 0 0 0 4 4M109.5 178.57h45.12a4.16 4.16 0 0 0 4-4v-40.48a4 4 0 0 0-4-4H109.5a4 4 0 0 0-4 4v40.44a4.34 4.34 0 0 0 4 4m63.4.04H218a4.16 4.16 0 0 0 4-4v-40.48a4 4 0 0 0-4-4h-45.1a4 4 0 0 0-4 4v40.44a4 4 0 0 0 4 4m62.46.04h45.12a4.16 4.16 0 0 0 4-4v-40.48a4.16 4.16 0 0 0-4-4h-45.12a4 4 0 0 0-4 4v40.44a4.16 4.16 0 0 0 4 4m0-58h45.12a4 4 0 0 0 4-4V76a4.16 4.16 0 0 0-4-4h-45.12a4 4 0 0 0-4 4v40.44a4.17 4.17 0 0 0 4 4m62.92 115.93h45.12a4 4 0 0 0 4-4v-40.48a4 4 0 0 0-4-4h-45.12a4 4 0 0 0-4 4v40.44a4.16 4.16 0 0 0 4 4\"},\"child\":[]}]})(props);\n};\nexport function IoLogoDribbble (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 32C132.33 32 32 132.33 32 256s100.33 224 224 224 224-100.22 224-224S379.67 32 256 32zm142.22 103.25a186.36 186.36 0 0 1 44 108.38c-40.37-2.1-88.67-2.1-127.4 1.52-4.9-12.37-9.92-24.5-15.4-36.17 44.66-19.36 79.08-44.8 98.8-73.73zM256 69.33a185.81 185.81 0 0 1 119.12 42.94c-20.3 25.66-52.15 48-91.82 64.86C261.6 137 236.63 102.47 210 75.28a187.51 187.51 0 0 1 46-5.95zm-84.47 20.42c26.95 26.83 52.27 61 74.44 101C203.85 203.62 155.55 211 104 211c-9.8 0-19.36-.35-28.81-.94a186.78 186.78 0 0 1 96.34-120.31zM69.68 247.13c10.62.47 21.35.7 32.2.59 58.8-.7 113.52-9.92 160.54-25q6.65 13.83 12.6 28.35a115.43 115.43 0 0 0-16.69 5c-64.28 27-114.91 70.51-142.33 123.13A186 186 0 0 1 69.33 256c0-3 .12-5.95.35-8.87zM256 442.67a185.57 185.57 0 0 1-114.45-39.32c24.85-49.23 69.18-90 125.07-115.27 5.25-2.45 12.25-4.43 20.3-6.18q10 27.64 17.85 57.4A678 678 0 0 1 322 430.42a185.06 185.06 0 0 1-66 12.25zm100.92-29.75a672.61 672.61 0 0 0-17.39-92.05c-4-15.17-8.51-29.87-13.41-44.22 36.63-3 80.5-2.57 115.38 0a186.5 186.5 0 0 1-84.58 136.27z\"},\"child\":[]}]})(props);\n};\nexport function IoLogoDropbox (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m256.32 126.24-120.16 78.25 120.16 78.24L136.16 361 16 282.08l120.16-78.24L16 126.24 136.16 48zm-120.8 259.52 120.16-78.25 120.16 78.25L255.68 464zm120.8-103.68 120.16-78.24-120.16-77.6L375.84 48 496 126.24l-120.16 78.25L496 282.73 375.84 361z\"},\"child\":[]}]})(props);\n};\nexport function IoLogoEdge (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M255.5 15c-132 0-240 108-240 240s108 240 240 240c85.4 0 160.8-45.2 203.3-112.9a6.87 6.87 0 0 0-9.1-9.7 108.64 108.64 0 0 1-18.4 8.6c-36.8 12.6-57.1 13.1-82.1 12-27.9-1.2-61.9-10.8-85.8-25s-43.5-34.6-54.1-52.3-17-39.9-14.1-68.3c2.9-29 29.4-52.6 60.4-52.6 33.5 0 60.8 26.6 60.8 60.1 0 17-8.1 31.7-18.5 43.5-2.3 2.1-7.6 9.7 5.8 20 15.9 12.2 51.6 18 79.9 16.6s59.1-12.6 80.2-34.8c16.8-17.7 31.8-46.1 31.8-77.4C495.5 97.7 379.5 15 255.5 15z\"},\"child\":[]}]})(props);\n};\nexport function IoLogoElectron (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M86.76 255a9.89 9.89 0 0 0 4.87-1.29 9.82 9.82 0 0 0 3.65-13.43c-16.46-28.56-17.81-52.12-7.45-70 14.26-24.57 53.61-33.65 105.27-24.29a9.86 9.86 0 0 0 11.45-7.9 9.84 9.84 0 0 0-7.93-11.44c-29.19-5.28-56-5.18-77.39.3-22.3 5.71-39 17.28-48.45 33.48-14 24.19-12.7 54.73 7.42 89.62a9.85 9.85 0 0 0 8.56 4.95zm274.85-111.27c32.24.42 52.61 9.31 62.79 26.86 14.21 24.48 2.52 62.81-31.27 102.52a9.82 9.82 0 0 0 7.51 16.18 9.88 9.88 0 0 0 7.52-3.46c19.12-22.47 32.35-45.54 38.25-66.71 6.14-22 4.43-42.21-5-58.38-13.8-23.78-40.13-36.15-79.59-36.67h-.14a9.83 9.83 0 0 0-.12 19.66zm-35.14 271.16a9.88 9.88 0 0 0-13.5 3.35c-16.41 27.15-36.57 42.1-56.77 42.1-28.49 0-56-29.31-73.73-78.42a9.87 9.87 0 0 0-12.59-5.92 9.83 9.83 0 0 0-6 12.58c10 27.77 23.47 50.75 39 66.46 16.11 16.34 34.55 25 53.32 25 27.38 0 53.54-18.33 73.65-51.61a9.81 9.81 0 0 0-3.38-13.5zm105.23-76.35a32.14 32.14 0 0 0-29.9 44.33c-41.8 19.5-119.8 4.79-191.87-36.62-32.91-18.9-62.16-41.86-84.6-66.39a9.9 9.9 0 0 0-13.91-.65 9.8 9.8 0 0 0-.65 13.9c23.79 26 54.68 50.28 89.33 70.18 40.28 23.13 82.27 38.63 121.43 44.81a225.54 225.54 0 0 0 35 2.91c23.12 0 43-4.3 58.51-12.79a32.2 32.2 0 1 0 16.7-59.68zm0 44.66a12.6 12.6 0 0 1-7.82-2.72 10 10 0 0 0-2.2-2.21 12.61 12.61 0 1 1 10 4.93z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M82.09 338.59c.57-21.26 12.41-47 33.68-73.16 23.19-28.45 56.69-56 94.34-77.65 33.25-19.1 65.2-31.9 98.07-38.91a9.83 9.83 0 1 0-4.12-19.22c-34.85 7.43-68.78 21-103.79 41.09C116.09 219.09 59.9 289.88 62.46 343.9a32.32 32.32 0 1 0 19.63-5.31zM80.3 383.2a12.5 12.5 0 1 1 12.59-12.5 12.56 12.56 0 0 1-12.59 12.5z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M256.2 96.32a32.23 32.23 0 0 0 26.53-13.81c17.89 11.69 34 35 45.81 66.12 13 34.39 19.84 75.38 19.84 118.54 0 37.18-5.19 72.35-15 103.6a9.72 9.72 0 0 0 .66 7.49 9.82 9.82 0 0 0 5.8 4.84 9.89 9.89 0 0 0 12.34-6.44c10.42-33.14 15.93-70.34 15.93-109.49 0-47.17-7.77-91.77-22.47-129-14.41-36.48-34.13-62.4-57.14-75.16a32.3 32.3 0 1 0-32.3 33.31zm0-44.66a12.5 12.5 0 1 1-12.59 12.5 12.56 12.56 0 0 1 12.59-12.5zm-5.2 191.7a24.35 24.35 0 0 0 5.16 48.16 24.68 24.68 0 0 0 5.16-.55A24.36 24.36 0 1 0 251 243.36z\"},\"child\":[]}]})(props);\n};\nexport function IoLogoEuro (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M231.8 272v-48H376l8-48H231.8v-8.12c0-38.69 16.47-62.56 87.18-62.56 28.89 0 61.45 2.69 102.5 9.42l10.52-70A508.54 508.54 0 0 0 315.46 32C189.26 32 135 76.4 135 158.46V176H80v48h55v48H80v48h55v33.54C135 435.6 189.23 480 315.43 480a507.76 507.76 0 0 0 116.44-12.78l-10.58-70c-41.05 6.73-73.46 9.42-102.35 9.42-70.7 0-87.14-20.18-87.14-67.94V320h128.47l7.87-48z\"},\"child\":[]}]})(props);\n};\nexport function IoLogoFacebook (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M480 257.35c0-123.7-100.3-224-224-224s-224 100.3-224 224c0 111.8 81.9 204.47 189 221.29V322.12h-56.89v-64.77H221V208c0-56.13 33.45-87.16 84.61-87.16 24.51 0 50.15 4.38 50.15 4.38v55.13H327.5c-27.81 0-36.51 17.26-36.51 35v42h62.12l-9.92 64.77H291v156.54c107.1-16.81 189-109.48 189-221.31z\"},\"child\":[]}]})(props);\n};\nexport function IoLogoFigma (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M336 176a80 80 0 0 0 0-160H176a80 80 0 0 0 0 160 80 80 0 0 0 0 160 80 80 0 1 0 80 80V176z\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"336\",\"cy\":\"256\",\"r\":\"80\"},\"child\":[]}]})(props);\n};\nexport function IoLogoFirebase (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m93.19 329.38 47.45-304.07c1.64-10.37 15.55-12.82 20.46-3.55l51 95.45zM432 400l-46.74-276.79a11 11 0 0 0-18.54-6L80 400l159.36 91.91a33.18 33.18 0 0 0 31.91 0zM302.36 158.93l-36.54-69.54a10.86 10.86 0 0 0-19.36 0L85.83 375.74z\"},\"child\":[]}]})(props);\n};\nexport function IoLogoFirefox (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M471.46 194.62v-.07c-.22-.76-.45-1.52-.68-2.28-.05-.19-.11-.38-.17-.56-.43-1.44-.87-2.88-1.33-4.31l-.06-.2a223.24 223.24 0 0 0-10-25.56 191.77 191.77 0 0 0-12.9-23.8 225.15 225.15 0 0 0-74.74-73.74A222.9 222.9 0 0 0 256 32c-7 0-14 .34-20.82 1-24.12 2.54-64.78 11.21-97.77 40.18C257.5 11.86 417.94 85.7 404.29 223c-4.86 49-46.46 82.67-85.19 88.35a73.73 73.73 0 0 1-20.8.21c-94.59-13.15-88.8-90.68-60.06-123.83-38-.24-67.47 46.79-53.15 93-32.95-61.18.35-157 70.93-186-82.95-12-160.71 28.2-185.7 98.07A330.23 330.23 0 0 1 88.07 118s-45.22 35.74-54.44 110.9c-.14 1.16-.27 2.32-.39 3.49-.05.4-.09.8-.13 1.21q-.53 5.25-.8 10.57v.81c-.07 1.48-.13 3-.17 4.46v1.25c0 1.76-.07 3.52-.07 5.29 0 123.71 100.29 224 224 224S480 379.71 480 256a224 224 0 0 0-8.54-61.38z\"},\"child\":[]}]})(props);\n};\nexport function IoLogoFlickr (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 32C132.8 32 32 132.8 32 256s100.8 224 224 224 224-100.8 224-224S379.2 32 256 32zm-82.16 280A56 56 0 1 1 228 257.84 56 56 0 0 1 173.84 312zm168 0A56 56 0 1 1 396 257.84 56 56 0 0 1 341.84 312z\"},\"child\":[]}]})(props);\n};\nexport function IoLogoFoursquare (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M376.76 32H138.54C105.67 32 96 56.8 96 72.41v379.64c0 17.59 9.42 24.12 14.72 26.27s19.91 4 28.67-6.17c0 0 112.47-130.89 114.4-132.83 2.92-2.93 2.92-2.93 5.84-2.93h72.77c30.58 0 35.49-21.87 38.69-34.75 2.65-10.79 32.48-164 42.45-212.56C421.14 52 411.74 32 376.76 32zm-5.67 269.64c2.65-10.79 32.48-164 42.45-212.56m-50.85 7.59-10 51.73c-1.19 5.65-8.28 11.6-14.86 11.6h-95.92c-10.44 0-17.91 6.14-17.91 16.6v13.45c0 10.47 7.52 17.89 18 17.89h81.85c7.38 0 14.61 8.11 13 16s-9.09 46.57-10 50.89-5.84 11.72-14.61 11.72H248c-11.7 0-15.24 1.54-23.07 11.3s-78.26 94.59-78.26 94.59c-.71.82-1.41.58-1.41-.31V95.9c0-6.69 5.8-14.53 14.48-14.53h191.14a12.42 12.42 0 0 1 11.81 15.3z\"},\"child\":[]}]})(props);\n};\nexport function IoLogoGithub (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 32C132.3 32 32 134.9 32 261.7c0 101.5 64.2 187.5 153.2 217.9a17.56 17.56 0 0 0 3.8.4c8.3 0 11.5-6.1 11.5-11.4 0-5.5-.2-19.9-.3-39.1a102.4 102.4 0 0 1-22.6 2.7c-43.1 0-52.9-33.5-52.9-33.5-10.2-26.5-24.9-33.6-24.9-33.6-19.5-13.7-.1-14.1 1.4-14.1h.1c22.5 2 34.3 23.8 34.3 23.8 11.2 19.6 26.2 25.1 39.6 25.1a63 63 0 0 0 25.6-6c2-14.8 7.8-24.9 14.2-30.7-49.7-5.8-102-25.5-102-113.5 0-25.1 8.7-45.6 23-61.6-2.3-5.8-10-29.2 2.2-60.8a18.64 18.64 0 0 1 5-.5c8.1 0 26.4 3.1 56.6 24.1a208.21 208.21 0 0 1 112.2 0c30.2-21 48.5-24.1 56.6-24.1a18.64 18.64 0 0 1 5 .5c12.2 31.6 4.5 55 2.2 60.8 14.3 16.1 23 36.6 23 61.6 0 88.2-52.4 107.6-102.3 113.3 8 7.1 15.2 21.1 15.2 42.5 0 30.7-.3 55.5-.3 63 0 5.4 3.1 11.5 11.4 11.5a19.35 19.35 0 0 0 4-.4C415.9 449.2 480 363.1 480 261.7 480 134.9 379.7 32 256 32z\"},\"child\":[]}]})(props);\n};\nexport function IoLogoGitlab (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m494.07 281.6-25.18-78.08a11 11 0 0 0-.61-2.1l-50.5-156.94a20.08 20.08 0 0 0-19.17-13.82 19.77 19.77 0 0 0-18.95 13.94l-48.14 149.55h-152L131.34 44.59a19.76 19.76 0 0 0-18.86-13.94h-.11a20.15 20.15 0 0 0-19.12 14L42.7 201.73c0 .14-.11.26-.16.4l-25.63 79.48a29.15 29.15 0 0 0 10.44 32.46l221.44 162.41a11.25 11.25 0 0 0 13.38-.07l221.48-162.34a29.13 29.13 0 0 0 10.42-32.47m-331-64.51 61.73 191.76L76.63 217.09m209.64 191.8 59.19-183.84 2.55-8h86.52L300.47 390.44M398.8 59.31l43.37 134.83h-86.82M324.16 217l-43 133.58-25.66 79.56L186.94 217M112.27 59.31l43.46 134.83H69M40.68 295.58a6.19 6.19 0 0 1-2.21-6.9l19-59 139.61 180.59m273.26-114.69L313.92 410.22l.52-.69L453.5 229.64l19 59a6.2 6.2 0 0 1-2.19 6.92\"},\"child\":[]}]})(props);\n};\nexport function IoLogoGooglePlaystore (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M48 59.49v393a4.33 4.33 0 0 0 7.37 3.07L260 256 55.37 56.42A4.33 4.33 0 0 0 48 59.49zM345.8 174 89.22 32.64l-.16-.09c-4.42-2.4-8.62 3.58-5 7.06l201.13 192.32zM84.08 472.39c-3.64 3.48.56 9.46 5 7.06l.16-.09L345.8 338l-60.61-57.95zM449.38 231l-71.65-39.46L310.36 256l67.37 64.43L449.38 281c19.49-10.77 19.49-39.23 0-50z\"},\"child\":[]}]})(props);\n};\nexport function IoLogoGoogle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m473.16 221.48-2.26-9.59H262.46v88.22H387c-12.93 61.4-72.93 93.72-121.94 93.72-35.66 0-73.25-15-98.13-39.11a140.08 140.08 0 0 1-41.8-98.88c0-37.16 16.7-74.33 41-98.78s61-38.13 97.49-38.13c41.79 0 71.74 22.19 82.94 32.31l62.69-62.36C390.86 72.72 340.34 32 261.6 32c-60.75 0-119 23.27-161.58 65.71C58 139.5 36.25 199.93 36.25 256s20.58 113.48 61.3 155.6c43.51 44.92 105.13 68.4 168.58 68.4 57.73 0 112.45-22.62 151.45-63.66 38.34-40.4 58.17-96.3 58.17-154.9 0-24.67-2.48-39.32-2.59-39.96z\"},\"child\":[]}]})(props);\n};\nexport function IoLogoHackernews (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M32 32v448h448V32zm249.67 250.83v84H235v-84l-77-140h55l46.32 97.54 44.33-97.54h52.73z\"},\"child\":[]}]})(props);\n};\nexport function IoLogoHtml5 (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m64 32 34.94 403.21L255.77 480 413 435.15 448 32zm308 132H188l4 51h176l-13.51 151.39L256 394.48l-98.68-28-6.78-77.48h48.26l3.42 39.29L256 343.07l53.42-14.92L315 264H148l-12.59-149.59H376.2z\"},\"child\":[]}]})(props);\n};\nexport function IoLogoInstagram (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M349.33 69.33a93.62 93.62 0 0 1 93.34 93.34v186.66a93.62 93.62 0 0 1-93.34 93.34H162.67a93.62 93.62 0 0 1-93.34-93.34V162.67a93.62 93.62 0 0 1 93.34-93.34h186.66m0-37.33H162.67C90.8 32 32 90.8 32 162.67v186.66C32 421.2 90.8 480 162.67 480h186.66C421.2 480 480 421.2 480 349.33V162.67C480 90.8 421.2 32 349.33 32z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M377.33 162.67a28 28 0 1 1 28-28 27.94 27.94 0 0 1-28 28zM256 181.33A74.67 74.67 0 1 1 181.33 256 74.75 74.75 0 0 1 256 181.33m0-37.33a112 112 0 1 0 112 112 112 112 0 0 0-112-112z\"},\"child\":[]}]})(props);\n};\nexport function IoLogoIonic (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 153.9A102.1 102.1 0 1 0 358.1 256 102.23 102.23 0 0 0 256 153.9z\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"402.59\",\"cy\":\"116.45\",\"r\":\"46.52\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m459.86 163.2-1.95-4.28-3.11 3.52a70 70 0 0 1-28.06 19.32l-3 1.1 1.22 2.93A181.43 181.43 0 0 1 439 256c0 100.92-82.1 183-183 183S73 356.92 73 256 155.08 73 256 73a180.94 180.94 0 0 1 78.43 17.7l2.87 1.3 1.25-2.92A70.19 70.19 0 0 1 359.21 62l3.67-2.93-4.17-2.07A221.61 221.61 0 0 0 256 32C132.49 32 32 132.49 32 256s100.49 224 224 224 224-100.49 224-224a222.19 222.19 0 0 0-20.14-92.8z\"},\"child\":[]}]})(props);\n};\nexport function IoLogoIonitron (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M468.41 269.19c-2.64-33.39-11.76-58-31.44-57.39a1 1 0 0 0-.92 1.37c5.11 12.59 9.68 36.9 9.17 58.07a1 1 0 0 1-2 .08c-2.19-21.21-7.1-41.19-16.22-59.43a186.69 186.69 0 0 0-348.91 41 4 4 0 0 1-3.33 3.11l-8.65 1.22c-17.2 2.4-26.9 34.9-21.7 72.5s23.5 66.2 40.7 63.8l13.24-1.85a4 4 0 0 1 3.93 1.84 186.71 186.71 0 0 0 339-56.07 4 4 0 0 1 3.68-3.08l4.4-.24c15.15-2.53 21.75-31.23 19.05-64.93zM94.5 270.42a1 1 0 0 1 1.59-1.19c9.63 10 20.25 27.65 23.32 49.86 3.24 23.05-2.24 45.2-9.13 57.87a1 1 0 0 1-1.84-.73c4.07-14.44 5.16-33.83 2.27-54.74-2.8-20.32-8.71-38.27-16.21-51.07zm178.77 109.79a15.53 15.53 0 0 1-15.41-13.83 15.48 15.48 0 1 1 15.41 13.83zm81.84-4.72a15.37 15.37 0 1 1 14.6-16.2 15.43 15.43 0 0 1-14.6 16.2z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M165.51 70a.31.31 0 0 1 .1.2c.1.2.2.3.3.5v.1a5.78 5.78 0 0 0 2.3 2.7c2 1.5 5 2.4 8.6 3a63.69 63.69 0 0 0 11.9.5 28.25 28.25 0 0 0 2.9-.2c-.4-.4-.8-.9-1.2-1.3h-1.3a52 52 0 0 1-11.6-.9 19.71 19.71 0 0 1-8.4-3.4 9.24 9.24 0 0 1-1.4-1.4 4.48 4.48 0 0 1 0-2.3c.5-2.3 2.4-4.8 5.5-7.4a57.25 57.25 0 0 1 10.9-7c.9-.4 1.7-.9 2.6-1.3.1-.1.3-.1.5-.2a24.69 24.69 0 0 0-.2 10.5c2.3 11.9 11.6 20.3 23.2 20.6l4 24.3 12.7-3-4-23.3c10.8-4.6 16.3-16.1 14-28a25.8 25.8 0 0 0-3.9-9.5c-5.3-.8-15.6-.8-29.2 2.1 1.1-.3 2.1-.7 3.2-1a135.27 135.27 0 0 1 21.5-4.2c.6-.1 1.2-.1 1.8-.2l3.5-.3h.6a61.83 61.83 0 0 1 10.8.3 29 29 0 0 1 6.1 1.4 5.71 5.71 0 0 0-.9 3.2 6.12 6.12 0 0 0 4.3 5.8 25.53 25.53 0 0 1-2.1 2.8 26 26 0 0 1-2.9 2.8c-1.1.9-2.3 1.8-3.5 2.7l-6.5 3.8-.3 1.5a.35.35 0 0 0 .2-.1l8.4-4.7c1.2-.8 2.4-1.6 3.4-2.4a29.15 29.15 0 0 0 3.2-2.8 29.86 29.86 0 0 0 2.4-2.8l.3-.6a6.14 6.14 0 0 0 5.4-6 6.06 6.06 0 0 0-6.1-6.1 6.81 6.81 0 0 0-2.8.7 24.6 24.6 0 0 0-8.2-2.7 63.48 63.48 0 0 0-15.5-.6 14.92 14.92 0 0 0-2.1.2 13.55 13.55 0 0 1-2 .2 25.15 25.15 0 0 0-18.7-3.7 25.86 25.86 0 0 0-17.8 13c-1.3.5-2.6 1.1-3.8 1.7-.7.3-1.3.6-2 .9a60.75 60.75 0 0 0-13.9 9.1c-3.1 2.9-4.9 5.7-5.3 8.3a6.14 6.14 0 0 0 .7 4 2.19 2.19 0 0 1 .3.5z\"},\"child\":[]}]})(props);\n};\nexport function IoLogoJavascript (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M32 32v448h448V32zm240 348c0 43.61-25.76 64.87-63.05 64.87-33.68 0-53.23-17.44-63.15-38.49l34.28-20.75c6.61 11.73 11.63 21.65 26.06 21.65 12 0 21.86-5.41 21.86-26.46V240h44zm99.35 63.87c-39.09 0-64.35-17.64-76.68-42L329 382c9 14.74 20.75 24.56 41.5 24.56 17.44 0 27.57-7.72 27.57-19.75 0-14.43-10.43-19.54-29.68-28l-10.52-4.52c-30.38-12.92-50.52-29.16-50.52-63.45 0-31.57 24.05-54.63 61.64-54.63 26.77 0 46 8.32 59.85 32.68L396 290c-7.22-12.93-15-18-27.06-18-12.33 0-20.15 7.82-20.15 18 0 12.63 7.82 17.74 25.86 25.56l10.52 4.51c35.79 15.34 55.94 31 55.94 66.16.01 37.9-29.76 57.64-69.76 57.64z\"},\"child\":[]}]})(props);\n};\nexport function IoLogoLaravel (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M505.57 234.62c-3.28-3.53-26.82-32.29-39.51-47.79-6.75-8.24-12.08-14.75-14.32-17.45l-.18-.22-.2-.21c-5.22-5.83-12.64-12.51-23.78-12.51a39.78 39.78 0 0 0-5.41.44c-.37.05-.75.11-1.15.15-2.45.27-10.06 1.5-28.14 4.48-14 2.29-35.11 5.77-38.31 6.07l-.71.06-.69.13c-10 1.78-16.62 6.22-19.56 13.19-1.55 3.68-3.22 11.15 2.94 19.86 1.53 2.22 6.83 9.56 15.94 22.17 6.06 8.4 12.87 17.82 18.75 26L259.9 275 150.66 96.05l-.2-.34-.23-.33-.44-.65C145.32 88.17 139.76 80 123.7 80c-1.13 0-2.31 0-3.63.11-4.6.25-21.42 1.57-40.89 3.11-21.49 1.69-50.9 4-54.72 4.1h-.73l-.79.08c-9.14.89-15.77 4.6-19.7 11-6.55 10.69-1.42 22.69.26 26.63C6.87 133 37.56 197.7 64.63 254.81c18 37.94 36.58 77.17 38.1 80.65a34.85 34.85 0 0 0 32.94 21.59 46.62 46.62 0 0 0 9.86-1.1h.21l.2-.05c13.86-3.38 57.83-14.54 89.2-22.59 1.9 3.32 3.9 6.83 6 10.44 21.93 38.5 37.9 66.35 43.16 73.46C287 421 295 432 310.06 432c5.46 0 10.46-1.4 15.74-2.89l1.53-.43h.12c10.53-3 150.69-52.16 157.87-55.35l.22-.1c5.44-2.41 13.66-6.05 16.18-15.4 1.65-6.12.18-12.33-4.38-18.46l-.07-.09-.07-.09c-.85-1.1-4-5.21-8.27-10.9-9.13-12.07-23.88-31.57-36.84-48.54 17.37-4.5 38.8-10.11 43.38-11.55 11.47-3.43 14.94-10.69 16-14.73.79-3.15 1.82-11.2-5.9-18.85zm-320 58.19c-17.81 4.17-30.22 7.08-37.89 8.9-6.67-13.34-19.74-39.65-32.5-65.33-29.74-59.92-45.1-90.77-53.18-106.9l8.15-.7c13.34-1.15 31.61-2.72 41.78-3.57 16.76 28.26 74.32 125.3 96.3 162.3zM427.58 172zM310.06 416.4zm53.67-56.95c-24.21 8-37.33 12.37-44.42 14.74-6.3-10.34-20.16-33.52-32.47-54.19l115.7-29.48c5 6.81 14.57 19.72 33.46 44.93-18.07 6.04-48.2 16.02-72.27 24zm55.87-121.63-23.76-31.53c13.67-2.39 21.54-3.77 26.15-4.6l12 14.88 11.94 14.82c-8.2 1.99-17.74 4.32-26.33 6.43z\"},\"child\":[]}]})(props);\n};\nexport function IoLogoLinkedin (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M444.17 32H70.28C49.85 32 32 46.7 32 66.89v374.72C32 461.91 49.85 480 70.28 480h373.78c20.54 0 35.94-18.21 35.94-38.39V66.89C480.12 46.7 464.6 32 444.17 32zm-273.3 373.43h-64.18V205.88h64.18zM141 175.54h-.46c-20.54 0-33.84-15.29-33.84-34.43 0-19.49 13.65-34.42 34.65-34.42s33.85 14.82 34.31 34.42c-.01 19.14-13.31 34.43-34.66 34.43zm264.43 229.89h-64.18V296.32c0-26.14-9.34-44-32.56-44-17.74 0-28.24 12-32.91 23.69-1.75 4.2-2.22 9.92-2.22 15.76v113.66h-64.18V205.88h64.18v27.77c9.34-13.3 23.93-32.44 57.88-32.44 42.13 0 74 27.77 74 87.64z\"},\"child\":[]}]})(props);\n};\nexport function IoLogoMarkdown (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M475 64H37C16.58 64 0 81.38 0 102.77v306.42C0 430.59 16.58 448 37 448h438c20.38 0 37-17.41 37-38.81V102.77C512 81.38 495.42 64 475 64zM288 368h-64V256l-48 64-48-64v112H64V144h64l48 80 48-80h64zm96 0-80-112h48.05L352 144h64v112h48z\"},\"child\":[]}]})(props);\n};\nexport function IoLogoMastodon (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M480 173.59c0-104.13-68.26-134.65-68.26-134.65C377.3 23.15 318.2 16.5 256.8 16h-1.51c-61.4.5-120.46 7.15-154.88 22.94 0 0-68.27 30.52-68.27 134.65 0 23.85-.46 52.35.29 82.59C34.91 358 51.11 458.37 145.32 483.29c43.43 11.49 80.73 13.89 110.76 12.24 54.47-3 85-19.42 85-19.42l-1.79-39.5s-38.93 12.27-82.64 10.77c-43.31-1.48-89-4.67-96-57.81a108.44 108.44 0 0 1-1-14.9 558.91 558.91 0 0 0 96.39 12.85c32.95 1.51 63.84-1.93 95.22-5.67 60.18-7.18 112.58-44.24 119.16-78.09 10.42-53.34 9.58-130.17 9.58-130.17zm-80.54 134.16h-50V185.38c0-25.8-10.86-38.89-32.58-38.89-24 0-36.06 15.53-36.06 46.24v67h-49.66v-67c0-30.71-12-46.24-36.06-46.24-21.72 0-32.58 13.09-32.58 38.89v122.37h-50V181.67q0-38.65 19.75-61.39c13.6-15.15 31.4-22.92 53.51-22.92 25.58 0 44.95 9.82 57.75 29.48L256 147.69l12.45-20.85c12.81-19.66 32.17-29.48 57.75-29.48 22.11 0 39.91 7.77 53.51 22.92q19.79 22.72 19.75 61.39z\"},\"child\":[]}]})(props);\n};\nexport function IoLogoMedium (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M28 28v456h456V28H28zm378.83 108.04-24.46 23.45a7.162 7.162 0 0 0-2.72 6.86v172.28c-.44 2.61.61 5.26 2.72 6.86l23.88 23.45v5.15H286.13v-5.15l24.74-24.02c2.43-2.43 2.43-3.15 2.43-6.86V198.81l-68.79 174.71h-9.3l-80.09-174.71v117.1c-.67 4.92.97 9.88 4.43 13.44l32.18 39.03v5.15h-91.24v-5.15l32.18-39.03c3.44-3.57 4.98-8.56 4.15-13.44V180.5c.38-3.76-1.05-7.48-3.86-10.01l-28.6-34.46v-5.15h88.81l68.65 150.55 60.35-150.55h84.66v5.16z\"},\"child\":[]}]})(props);\n};\nexport function IoLogoMicrosoft (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M31.87 30.58H244.7v212.81H31.87zm235.02 0H479.7v212.81H266.89zM31.87 265.61H244.7v212.8H31.87zm235.02 0H479.7v212.8H266.89z\"},\"child\":[]}]})(props);\n};\nexport function IoLogoNoSmoking (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M360 256h16v48h-16zm-248 48h129.6l-48-48H112v48z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M364.5 60.1a8.79 8.79 0 0 1-1-.6 218.79 218.79 0 0 0-34.4-14.8l-5.4-1.8A223.2 223.2 0 0 0 256 32C132.3 32 32 132.3 32 256a223.71 223.71 0 0 0 115.4 195.8c.4.2.7.5 1.1.7a218.79 218.79 0 0 0 34.4 14.8l5.4 1.8A222.7 222.7 0 0 0 256 480c123.7 0 224-100.3 224-224A223.76 223.76 0 0 0 364.5 60.1zM256 426.4a161.85 161.85 0 0 1-27.2-2.4 170.14 170.14 0 0 1-28.5-7.3c-1.9-.6-3.8-1.2-5.6-1.9a162.39 162.39 0 0 1-19-8.6 170.33 170.33 0 0 1-90.1-150.3c0-37.2 12.4-71.4 32.7-99.4l237.2 237.2c-28.1 20.3-62.3 32.7-99.5 32.7zm137.8-71L156.6 118.2c28-20.2 62.1-32.6 99.4-32.6a162.79 162.79 0 0 1 27.2 2.4 170.14 170.14 0 0 1 28.5 7.3c1.8.6 3.7 1.2 5.6 1.9a162 162 0 0 1 18 8.1 170.25 170.25 0 0 1 91.2 150.8c-.1 37.2-12.5 71.3-32.7 99.3z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M352 256h-34l34 34v-34zm32 0h16v48h-16zm-23.9-43.3c-8.8-4.1-22-5.7-45.6-5.7h-3.6c-12.7.1-15.9-.1-20-6.1-2.8-4.2-1-14.8 3.7-21.9a8 8 0 0 0 .4-8.2 8.26 8.26 0 0 0-7-4.3 53.67 53.67 0 0 1-18.3-3.9c-10.6-4.5-15.6-12.1-15.6-23.1 0-25.8 21.8-27.7 22.8-27.7v-16c-12 0-38.8 11-38.8 43.7 0 17.5 9 31 25.7 38a66.58 66.58 0 0 0 12 3.6c-3.3 9.8-3.6 20.9 1.7 28.7 9 13.3 20.3 13.2 33.3 13.1h3.5c26.3 0 34.6 2.3 38.9 4.3 5.7 2.6 6.8 7.5 6.6 15.7v1h16v-1c0-7.1.3-22.8-15.7-30.2z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M400 244c0-25.7-3-39.2-9.1-49.6C382.3 180 368.5 172 352 172h-17.4c2.9-8.3 5.4-19.8 3.5-30.9-3.2-18.8-19.1-30-43.1-30v16c21 0 26.1 9.1 27.4 16.7 2.5 14.5-6.8 32.1-6.9 32.3a8 8 0 0 0 .1 7.9 8.06 8.06 0 0 0 6.9 3.9H352c10.9 0 19.4 4.9 25.1 14.6 3.1 5.3 6.9 13.5 6.9 41.4h16z\"},\"child\":[]}]})(props);\n};\nexport function IoLogoNodejs (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M429.76 130.07 274.33 36.85a37 37 0 0 0-36.65 0L82.24 130.06A38.2 38.2 0 0 0 64 162.83V349a38.26 38.26 0 0 0 18.24 32.8L123 406.14l.23.13c20.58 10.53 28.46 10.53 37.59 10.53 32.14 0 52.11-20.8 52.11-54.29V182a8.51 8.51 0 0 0-8.42-8.58h-22.38a8.51 8.51 0 0 0-8.42 8.58v180.51a15 15 0 0 1-6.85 13.07c-5.9 3.6-14.47 2.84-24.14-2.15l-39.06-23.51a1.1 1.1 0 0 1-.48-.92V165.46a1.32 1.32 0 0 1 .59-1.06l151.84-93a.82.82 0 0 1 .73 0l151.93 93a1.34 1.34 0 0 1 .55 1.1V349a1.28 1.28 0 0 1-.45 1l-152.06 90.65a1.22 1.22 0 0 1-.8 0l-38.83-23.06a7.8 7.8 0 0 0-7.83-.41l-.34.2c-10.72 6.35-13.6 8-23.54 11.62-1.62.59-5.43 2-5.76 5.77s3.29 6.45 6.51 8.32l51.9 31.87a35.67 35.67 0 0 0 18.3 5.07h.58a35.87 35.87 0 0 0 17.83-5.07l155.43-93.13A38.37 38.37 0 0 0 448 349V162.83a38.21 38.21 0 0 0-18.24-32.76z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M307.88 318.05c-37.29 0-45.24-10.42-47.6-27.24a8.43 8.43 0 0 0-8.22-7.32h-19.8a8.44 8.44 0 0 0-8.26 8.58c0 14.58 5.12 62.17 83.92 62.17 24.38 0 44.66-5.7 58.63-16.49S388 311.26 388 292.55c0-37.55-24.5-47.83-72.75-54.55-49.05-6.82-49.05-10.29-49.05-17.89 0-5.47 0-18.28 35.46-18.28 25.23 0 38.74 3.19 43.06 20a8.35 8.35 0 0 0 8.06 6.67h19.87a8.24 8.24 0 0 0 6.16-2.86 8.91 8.91 0 0 0 2.12-6.44c-2.57-35.55-28.56-53.58-79.24-53.58-46.06 0-73.55 20.75-73.55 55.5 0 38.1 28.49 48.87 71.29 53.33 50 5.17 50 12.71 50 19.37.03 10.38-4.28 24.23-41.55 24.23z\"},\"child\":[]}]})(props);\n};\nexport function IoLogoNpm (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M227.6 213.1H256v57.1h-28.4z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M0 156v171.4h142.2V356H256v-28.6h256V156zm142.2 142.9h-28.4v-85.7H85.3v85.7H28.4V184.6h113.8zm142.2 0h-56.9v28.6h-56.9V184.6h113.8zm199.2 0h-28.4v-85.7h-28.4v85.7h-28.4v-85.7H370v85.7h-56.9V184.6h170.7v114.3z\"},\"child\":[]}]})(props);\n};\nexport function IoLogoOctocat (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M172.86 290.12c-9.75 0-18.11 4.56-24.86 13.87s-10.07 20.58-10.07 34 3.43 24.91 10.07 34.12S163 386 172.86 386c9.1 0 17-4.66 23.68-13.87s10.07-20.58 10.07-34.12-3.43-24.81-10.07-34-14.54-13.89-23.68-13.89zm167.46 0c-9.64 0-18.11 4.56-24.86 13.87s-10.07 20.58-10.07 34 3.43 24.91 10.07 34.12S330.57 386 340.32 386c9.11 0 17-4.66 23.79-13.87s10.07-20.58 10.07-34.12-3.43-24.81-10.07-34-14.57-13.89-23.79-13.89z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M459.36 165c-.11 0 2.89-15.49.32-42.47-2.36-27-8-51.78-17.25-74.53 0 0-4.72.87-13.72 3.14S405 58 384.89 67.18c-19.82 9.2-40.71 21.44-62.46 36.29-14.79-4.23-36.86-6.39-66.43-6.39-28.18 0-50.25 2.16-66.43 6.39Q117.9 53.25 69.46 48q-13.81 34.13-17.14 74.75c-2.57 27 .43 42.58.43 42.58C26.71 193.82 16 234.88 16 268.78c0 26.22.75 49.94 6.54 71 6 20.91 13.6 38 22.6 51.14A147.49 147.49 0 0 0 79 425.43c13.39 10.08 25.71 17.34 36.86 21.89 11.25 4.76 24 8.23 38.57 10.72a279.19 279.19 0 0 0 32.68 4.34s30 1.62 69 1.62 68.89-1.62 68.89-1.62a285.25 285.25 0 0 0 32.68-4.38 178.91 178.91 0 0 0 38.46-10.72c11.15-4.66 23.47-11.81 37-21.89a145 145 0 0 0 33.75-34.55c9-13.11 16.6-30.23 22.6-51.14s6.51-44.81 6.51-71.03c0-32.82-10.71-74.42-36.64-103.67zm-70.07 253.07C359.39 432.26 315.46 438 257.18 438h-2.25c-58.29 0-102.22-5.63-131.57-19.93s-44.25-43.45-44.25-87.43c0-26.32 9.21-47.66 27.32-64 7.93-7 17.57-11.92 29.57-14.84s22.93-3 33.21-2.71c10.08.43 24.22 2.38 42.11 3.79s31.39 3.25 44.79 3.25c12.53 0 29.14-2.17 55.82-4.33s46.61-3.25 59.46-1.09c13.18 2.17 24.65 6.72 34.4 15.93q28.44 25.67 28.5 64c-.11 43.98-15.22 73.24-45 87.43z\"},\"child\":[]}]})(props);\n};\nexport function IoLogoPaypal (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M424.81 148.79c-.43 2.76-.93 5.58-1.49 8.48-19.17 98-84.76 131.8-168.54 131.8h-42.65a20.67 20.67 0 0 0-20.47 17.46l-21.84 137.84-6.18 39.07a10.86 10.86 0 0 0 9.07 12.42 10.72 10.72 0 0 0 1.7.13h75.65a18.18 18.18 0 0 0 18-15.27l.74-3.83 14.24-90 .91-4.94a18.16 18.16 0 0 1 18-15.3h11.31c73.3 0 130.67-29.62 147.44-115.32 7-35.8 3.38-65.69-15.16-86.72a72.27 72.27 0 0 0-20.73-15.82z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M385.52 51.09C363.84 26.52 324.71 16 274.63 16H129.25a20.75 20.75 0 0 0-20.54 17.48l-60.55 382a12.43 12.43 0 0 0 10.39 14.22 12.58 12.58 0 0 0 1.94.15h89.76l22.54-142.29-.7 4.46a20.67 20.67 0 0 1 20.47-17.46h42.65c83.77 0 149.36-33.86 168.54-131.8.57-2.9 1.05-5.72 1.49-8.48 5.7-36.22-.05-60.87-19.72-83.19z\"},\"child\":[]}]})(props);\n};\nexport function IoLogoPinterest (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256.05 32c-123.7 0-224 100.3-224 224 0 91.7 55.2 170.5 134.1 205.2-.6-15.6-.1-34.4 3.9-51.4 4.3-18.2 28.8-122.1 28.8-122.1s-7.2-14.3-7.2-35.4c0-33.2 19.2-58 43.2-58 20.4 0 30.2 15.3 30.2 33.6 0 20.5-13.1 51.1-19.8 79.5-5.6 23.8 11.9 43.1 35.4 43.1 42.4 0 71-54.5 71-119.1 0-49.1-33.1-85.8-93.2-85.8-67.9 0-110.3 50.7-110.3 107.3 0 19.5 5.8 33.3 14.8 43.9 4.1 4.9 4.7 6.9 3.2 12.5-1.1 4.1-3.5 14-4.6 18-1.5 5.7-6.1 7.7-11.2 5.6-31.3-12.8-45.9-47-45.9-85.6 0-63.6 53.7-139.9 160.1-139.9 85.5 0 141.8 61.9 141.8 128.3 0 87.9-48.9 153.5-120.9 153.5-24.2 0-46.9-13.1-54.7-27.9 0 0-13 51.6-15.8 61.6-4.7 17.3-14 34.5-22.5 48a225.13 225.13 0 0 0 63.5 9.2c123.7 0 224-100.3 224-224S379.75 32 256.05 32z\"},\"child\":[]}]})(props);\n};\nexport function IoLogoPlaystation (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M399.77 203c-.8-17.1-3.3-34.5-10.8-50.1a82.45 82.45 0 0 0-16.5-23.2 105.59 105.59 0 0 0-21.3-16.3c-17.1-10.2-37.5-17-84.4-31S192 64 192 64v358.3l79.9 25.7s.1-198.8.1-299.5v-3.8c0-9.3 7.5-16.8 16.1-16.8h.5c8.5 0 15.5 7.5 15.5 16.8V278c11 5.3 29.2 9.3 41.8 9.1a47.79 47.79 0 0 0 24-5.7 49.11 49.11 0 0 0 18.4-17.8 78.64 78.64 0 0 0 9.9-27.3c1.87-10.8 1.97-22.1 1.57-33.3zM86.67 357.8c27.4-9.8 89.3-29.5 89.3-29.5v-47.2s-76.5 24.8-111.3 37.1c-8.6 3.1-17.3 5.9-25.7 9.5-9.8 4.1-19.4 8.7-28.1 14.8a26.29 26.29 0 0 0-9.2 10.1 17.36 17.36 0 0 0-.5 13.6c2 5.1 5.8 9.3 10.1 12.6 7.8 5.9 17.1 9.5 26.4 12.2a262.42 262.42 0 0 0 88.4 13.3c14.5-.2 36-1.9 50-4.4v-42s-11 2.5-41.3 12.5c-4.6 1.5-9.2 3.3-14 4.3a104.87 104.87 0 0 1-21.6 2.2c-6.5-.3-13.2-.7-19.3-3.1-2.2-1-4.6-2.2-5.5-4.6-.8-2 .3-4 1.7-5.4 2.8-2.9 6.8-4.5 10.6-6z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M512 345.9c-.1-6-3.7-11.2-7.9-15-7.1-6.3-15.9-10.3-24.7-13.5-5.5-1.9-9.3-3.3-14.7-5-25.2-8.2-51.9-11.2-78.3-11.3-8 .3-23.1.5-31 1.4-21.9 2.5-67.3 15.4-67.3 15.4v48.8s67.5-21.6 96.5-31.8a94.43 94.43 0 0 1 30.3-4.6c6.5.2 13.2.7 19.4 3.1 2.2.9 4.5 2.2 5.5 4.5.9 2.6-.9 5-2.9 6.5-4.7 3.8-10.7 5.3-16.2 7.4-41 14.5-132.7 44.7-132.7 44.7v47s117.2-39.6 170.8-58.8c8.9-3.3 17.9-6.1 26.4-10.4 7.9-4 15.8-8.6 21.8-15.3a19.74 19.74 0 0 0 5-13.1z\"},\"child\":[]}]})(props);\n};\nexport function IoLogoPwa (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m330.7 352 77.72-192H356.9l-53.16 124.07L265.93 160h-39.61l-40.58 124.07-28.63-56.53-25.9 79.46 26.3 45h50.7l36.68-111.27 35 111.27zM48.79 286.09h31.65a93.39 93.39 0 0 0 25.62-3.21l8.18-25.19 22.88-70.39a55.75 55.75 0 0 0-6-7.82Q113.54 160 79.59 160H0v192h48.79zm41.9-81.92q6.89 6.92 6.88 18.52t-6 18.53q-6.64 7.62-24.44 7.61H48.79v-51.58h18.42q16.59 0 23.48 6.92zm286.16 113.44 14.79-37.25h42.69l-20.26-56.51L439.41 160 512 352h-53.53l-12.4-34.39z\"},\"child\":[]}]})(props);\n};\nexport function IoLogoPython (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M314 36.38c-18.59-3.06-45.8-4.47-64.27-4.38a311.09 311.09 0 0 0-51.66 4.38c-45.74 8-54.07 24.7-54.07 55.54V128h112v16H107.62C66.06 144 32.33 193.67 32 255.12v.88a162.91 162.91 0 0 0 3.13 32c9.29 46.28 38.23 80 72.49 80H128v-54c0-31.3 20.84-59.95 55-66.1l9.87-1.23H314a56.05 56.05 0 0 0 15.06-2A52.48 52.48 0 0 0 368 193.68V91.92c0-28.92-24.68-50.73-54-55.54zM194.93 105.5a20.37 20.37 0 1 1 20.3-20.3 20.29 20.29 0 0 1-20.3 20.3z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M475.28 217c-10.7-42.61-38.41-73-70.9-73h-17.71v47.45c0 39.57-26 68.22-57.74 73.13a63.54 63.54 0 0 1-9.69.75H198.08a60 60 0 0 0-15.23 1.95C160.54 273.14 144 291.7 144 315.77v101.77c0 29 29.14 46 57.73 54.31 34.21 9.95 71.48 11.75 112.42 0 27.19-7.77 53.85-23.48 53.85-54.31V384H256v-16h148.38c29.44 0 54.95-24.93 67.45-61.31A156.83 156.83 0 0 0 480 256a160.64 160.64 0 0 0-4.72-39zM316.51 404a20.37 20.37 0 1 1-20.3 20.3 20.29 20.29 0 0 1 20.3-20.3z\"},\"child\":[]}]})(props);\n};\nexport function IoLogoReact (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M410.66 180.72q-7.67-2.62-15.45-4.88 1.29-5.25 2.38-10.56c11.7-56.9 4.05-102.74-22.06-117.83-25-14.48-66 .61-107.36 36.69q-6.1 5.34-11.95 11-3.9-3.76-8-7.36c-43.35-38.58-86.8-54.83-112.88-39.69-25 14.51-32.43 57.6-21.9 111.53q1.58 8 3.55 15.93a320.85 320.85 0 0 0-17.77 5.6C48.46 198.9 16 226.73 16 255.59c0 29.82 34.84 59.72 87.77 77.85q6.44 2.19 13 4.07-2.13 8.49-3.77 17.17c-10 53-2.2 95.07 22.75 109.49 25.77 14.89 69-.41 111.14-37.31q5-4.38 10-9.25 6.32 6.11 13 11.86c40.8 35.18 81.09 49.39 106 34.93 25.75-14.94 34.12-60.14 23.25-115.13q-1.25-6.3-2.88-12.86 4.56-1.35 8.93-2.79c55-18.27 90.83-47.81 90.83-78-.02-29-33.52-57.01-85.36-74.9zm-129-81.08c35.43-30.91 68.55-43.11 83.65-34.39 16.07 9.29 22.32 46.75 12.22 95.88q-1 4.8-2.16 9.57a487.83 487.83 0 0 0-64.18-10.16 481.27 481.27 0 0 0-40.57-50.75q5.38-5.22 11.02-10.15zM157.73 280.25q6.51 12.6 13.61 24.89 7.23 12.54 15.07 24.71a435.28 435.28 0 0 1-44.24-7.13c4.24-13.72 9.46-27.97 15.56-42.47zm0-48.33c-6-14.19-11.08-28.15-15.25-41.63 13.7-3.07 28.3-5.58 43.52-7.48q-7.65 11.94-14.72 24.23t-13.58 24.88zm10.9 24.17q9.48-19.77 20.42-38.78 10.93-19 23.27-37.13c14.28-1.08 28.92-1.65 43.71-1.65s29.52.57 43.79 1.66q12.21 18.09 23.13 37t20.69 38.6Q334 275.63 323 294.73q-10.91 19-23 37.24c-14.25 1-29 1.55-44 1.55s-29.47-.47-43.46-1.38q-12.43-18.19-23.46-37.29t-20.48-38.76zM340.75 305q7.25-12.58 13.92-25.49a440.41 440.41 0 0 1 16.12 42.32 434.44 434.44 0 0 1-44.79 7.65q7.62-12.09 14.75-24.48zm13.72-73.07q-6.64-12.65-13.81-25-7-12.18-14.59-24.06c15.31 1.94 30 4.52 43.77 7.67a439.89 439.89 0 0 1-15.37 41.39zm-98.24-107.45a439.75 439.75 0 0 1 28.25 34.18q-28.35-1.35-56.74 0c9.33-12.34 18.88-23.79 28.49-34.18zM145.66 65.86c16.06-9.32 51.57 4 89 37.27 2.39 2.13 4.8 4.36 7.2 6.67A491.37 491.37 0 0 0 201 160.51a499.12 499.12 0 0 0-64.06 10q-1.83-7.36-3.3-14.82c-9.05-46.23-3.06-81.08 12.02-89.83zm-23.41 251.85q-6-1.71-11.85-3.71c-23.4-8-42.73-18.44-56-29.81-11.88-10.19-17.9-20.36-17.9-28.6 0-17.51 26.06-39.85 69.52-55q8.19-2.85 16.52-5.21a493.54 493.54 0 0 0 23.4 60.75 502.46 502.46 0 0 0-23.69 61.58zm111.13 93.67c-18.63 16.32-37.29 27.89-53.74 33.72-14.78 5.23-26.55 5.38-33.66 1.27-15.14-8.75-21.44-42.54-12.85-87.86q1.53-8 3.5-16a480.85 480.85 0 0 0 64.69 9.39 501.2 501.2 0 0 0 41.2 51c-2.98 2.93-6.03 5.75-9.14 8.48zm23.42-23.22c-9.72-10.51-19.42-22.14-28.88-34.64q13.79.54 28.08.54c9.78 0 19.46-.21 29-.64a439.33 439.33 0 0 1-28.2 34.74zm124.52 28.59c-2.86 15.44-8.61 25.74-15.72 29.86-15.13 8.78-47.48-2.63-82.36-32.72-4-3.44-8-7.13-12.07-11a484.54 484.54 0 0 0 40.23-51.2 477.84 477.84 0 0 0 65-10.05q1.47 5.94 2.6 11.64c4.81 24.3 5.5 46.28 2.32 63.47zm17.4-102.64c-2.62.87-5.32 1.71-8.06 2.53a483.26 483.26 0 0 0-24.31-60.94 481.52 481.52 0 0 0 23.36-60.06c4.91 1.43 9.68 2.93 14.27 4.52 44.42 15.32 71.52 38 71.52 55.43 0 18.6-29.27 42.74-76.78 58.52z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M256 298.55a43 43 0 1 0-42.86-43 42.91 42.91 0 0 0 42.86 43z\"},\"child\":[]}]})(props);\n};\nexport function IoLogoReddit (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M324 256a36 36 0 1 0 36 36 36 36 0 0 0-36-36z\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"188\",\"cy\":\"292\",\"r\":\"36\",\"transform\":\"rotate(-22.5 187.997 291.992)\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M496 253.77c0-31.19-25.14-56.56-56-56.56a55.72 55.72 0 0 0-35.61 12.86c-35-23.77-80.78-38.32-129.65-41.27l22-79 66.41 13.2c1.9 26.48 24 47.49 50.65 47.49 28 0 50.78-23 50.78-51.21S441 48 413 48c-19.53 0-36.31 11.19-44.85 28.77l-90-17.89-31.1 109.52-4.63.13c-50.63 2.21-98.34 16.93-134.77 41.53A55.38 55.38 0 0 0 72 197.21c-30.89 0-56 25.37-56 56.56a56.43 56.43 0 0 0 28.11 49.06 98.65 98.65 0 0 0-.89 13.34c.11 39.74 22.49 77 63 105C146.36 448.77 199.51 464 256 464s109.76-15.23 149.83-42.89c40.53-28 62.85-65.27 62.85-105.06a109.32 109.32 0 0 0-.84-13.3A56.32 56.32 0 0 0 496 253.77zM414 75a24 24 0 1 1-24 24 24 24 0 0 1 24-24zM42.72 253.77a29.6 29.6 0 0 1 29.42-29.71 29 29 0 0 1 13.62 3.43c-15.5 14.41-26.93 30.41-34.07 47.68a30.23 30.23 0 0 1-8.97-21.4zM390.82 399c-35.74 24.59-83.6 38.14-134.77 38.14S157 423.61 121.29 399c-33-22.79-51.24-52.26-51.24-83A78.5 78.5 0 0 1 75 288.72c5.68-15.74 16.16-30.48 31.15-43.79a155.17 155.17 0 0 1 14.76-11.53l.3-.21.24-.17c35.72-24.52 83.52-38 134.61-38s98.9 13.51 134.62 38l.23.17.34.25A156.57 156.57 0 0 1 406 244.92c15 13.32 25.48 28.05 31.16 43.81a85.44 85.44 0 0 1 4.31 17.67 77.29 77.29 0 0 1 .6 9.65c-.01 30.72-18.21 60.19-51.25 82.95zm69.6-123.92c-7.13-17.28-18.56-33.29-34.07-47.72A29.09 29.09 0 0 1 440 224a29.59 29.59 0 0 1 29.41 29.71 30.07 30.07 0 0 1-8.99 21.39z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M323.23 362.22c-.25.25-25.56 26.07-67.15 26.27-42-.2-66.28-25.23-67.31-26.27a4.14 4.14 0 0 0-5.83 0l-13.7 13.47a4.15 4.15 0 0 0 0 5.89c3.4 3.4 34.7 34.23 86.78 34.45 51.94-.22 83.38-31.05 86.78-34.45a4.16 4.16 0 0 0 0-5.9l-13.71-13.47a4.13 4.13 0 0 0-5.81 0z\"},\"child\":[]}]})(props);\n};\nexport function IoLogoRss (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M108.56 342.78a60.34 60.34 0 1 0 60.56 60.44 60.63 60.63 0 0 0-60.56-60.44z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M48 186.67v86.55c52 0 101.94 15.39 138.67 52.11s52 86.56 52 138.67h86.66c0-151.56-125.66-277.33-277.33-277.33z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M48 48v86.56c185.25 0 329.22 144.08 329.22 329.44H464C464 234.66 277.67 48 48 48z\"},\"child\":[]}]})(props);\n};\nexport function IoLogoSass (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M511.78 328.07c-1.47-11.92-7.51-22.26-18-30.77a3.58 3.58 0 0 0-.43-.44l-.53-.38-.17-.12-5.57-4-.19-.14-.71-.5a3.5 3.5 0 0 0-.83-.35c-17.62-10.49-46.79-17.84-91.42-2.09-10.65-17.92-11.86-32.28-4.73-54.28 1.27-3.83.09-6.36-3.71-8-7.64-3.25-18.1-1.59-25.52.37-3.46.9-5.54 2.86-6.2 5.83-4.7 22-18.36 42.1-31.57 61.5l-.78 1.14c-8.14-17.26-6.45-30.63-.78-47.38 1.13-3.34.24-5.56-2.89-7.22-8.74-4.51-21.85-1.41-27.07.13-6.62 1.93-13.72 19.82-21.65 41.24-2 5.39-3.72 10-4.75 12.15-2.45 5-4.79 10.7-7.27 16.75-5.6 13.69-11.91 29.1-20.93 38.78-3.28-7.25 1.88-18.68 6.89-29.77 5.93-13.11 11.53-25.5 5.08-33.41a11.82 11.82 0 0 0-8.33-4.32 13.26 13.26 0 0 0-6.15 1c.67-5.65.7-10.11-.95-15.5-2.36-7.69-8.49-12-16.93-11.77-19.22.56-35.48 14.88-45.75 26.8-6.84 8-22 14.1-35.31 19.45-5.26 2.23-10.26 4.23-14.43 6.23-6.65-5.62-15.1-11.29-24-17.28-25-16.78-53.33-35.81-54.31-61.61-1.4-38.11 42-65.14 79.88-84.43 28.71-14.6 53.67-24.28 76.31-29.57 31.8-7.43 58.66-5.93 79.82 4.44 11.58 5.67 17 18 13.56 30.68-9 32.95-46.29 55.53-78.18 65.69-19.21 6.12-35.56 8.68-50 7.84-18.1-1.05-32.88-10.13-39.2-14a21.18 21.18 0 0 0-3.2-1.8l-.29-.07a3.21 3.21 0 0 0-3.19 1c-1.3 1.55-.84 4-.37 5.24 6.15 16.07 18.85 26.22 37.74 30.17a92.09 92.09 0 0 0 18.78 1.79c44.21 0 100.62-25.49 121.34-46.48 14.13-14.3 24.42-29 28.68-54.35 4.45-26.55-13.55-45-31.89-53.5-44.57-20.57-95.19-12.44-129.81-2-40.5 12.21-82.4 34.41-114.94 60.93-40.12 32.67-54.62 63-43.12 90.25 11.81 27.93 40.61 45.4 68.46 62.3 9 5.45 17.56 10.64 25.27 16-2.32 1.13-4.69 2.28-7.1 3.43-23.38 11.33-49.9 24.08-64.61 45.15-10.68 15.35-12.68 30.63-5.94 45.42 3.6 7.87 10 13.21 18.89 15.87A50 50 0 0 0 53 432c17.31 0 36.36-7 46.73-13.47 18.32-11.5 30.19-26.94 35.29-45.89 4.54-16.86 3.45-33.61-3.15-48.56l22.45-11.32c-10.83 36-2.53 57.5 6.59 69.36 3.36 4.37 9.42 7 16.19 7.12s13-2.43 16.52-6.77c6.66-8.25 11.58-17.9 16.11-27.55-.24 6.3.06 12.68 2.21 18.09 1.93 4.87 5.11 8.1 9.21 9.34 4.36 1.33 9.47.21 14.39-3.15 22.17-15.17 37.33-51.58 49.51-80.85 1.73-4.16 3.39-8.16 5-11.9a152.5 152.5 0 0 0 12.5 31.07c1.18 2.14 1.08 3.08-.52 4.84-2.41 2.64-5.77 5.83-9.33 9.21-10.78 10.23-24.2 23-26 34.23-.7 4.5 2.4 8.6 7.21 9.53 14.47 2.88 31.9-1.33 46.64-11.25 13.4-9 18.44-21.55 15-37.19-3.33-15.06 4.27-33.76 22.59-55.62 3 12.53 7 22.66 12.52 31.53l-.15.12c-13.34 11.65-31.62 27.6-28.78 46.95a13.35 13.35 0 0 0 5.58 9.22 14.22 14.22 0 0 0 11.2 2.06c17.47-3.67 30.62-11.06 40.18-22.57s6.07-24.27 2.85-34.17c25-6.78 47.26-6.61 68.1.5 11.7 4 20.09 10.57 24.93 19.64 6.09 11.41 2.8 21.94-9.29 29.65-3.71 2.37-5.5 3.82-5.61 5.65a2.65 2.65 0 0 0 1 2.23c1.4 1.15 5.72 3.15 15.49-3 9-5.65 14.28-13.34 15.63-23a39 39 0 0 0-.01-8.01zm-399.73 25.06-.1 1.28c-1.56 14.64-9 27.4-22.15 38-8.26 6.66-17.23 10.75-25.25 11.53-5.6.54-9.67-.22-12.09-2.27-1.81-1.53-2.78-3.82-3-7-1.64-25.48 38.32-50.8 60.81-59.13a51.39 51.39 0 0 1 1.78 17.59zm102.35-71.86c-3.7 21.09-14.49 60.9-31.45 76.35-.81.74-1.49 1-1.8.93s-.55-.44-.8-1c-5.66-13.12-3.57-35.28 5-52.69 6.59-13.42 16-22.31 26.52-25a5.29 5.29 0 0 1 1.34-.19 1.58 1.58 0 0 1 1 .27 1.64 1.64 0 0 1 .19 1.33zm83.49 76.88c-3.19 3.33-7.56 2.88-6.53 1.66l16.24-17.24c-1.31 5.93-5.18 10.84-9.71 15.58zm67.37-14.91a14.07 14.07 0 0 1-4.93 1.39c-.46-9.07 8.33-19.28 17-26.09 2.33 9.46-2.44 19.46-12.07 24.7z\"},\"child\":[]}]})(props);\n};\nexport function IoLogoSkype (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M467.16 303.6a205.69 205.69 0 0 0 4.9-45.15c0-116.32-95.69-210.7-213.79-210.7a221.83 221.83 0 0 0-36.52 3A123.58 123.58 0 0 0 155.93 32C87.55 32 32 86.72 32 154.15A119.56 119.56 0 0 0 49 216a211.16 211.16 0 0 0-4.32 42.35c0 116.44 95.69 210.7 213.67 210.7a214 214 0 0 0 39.09-3.5A125.45 125.45 0 0 0 356.07 480C424.57 480 480 425.28 480 357.85a118 118 0 0 0-12.84-54.25zM368 359c-9.92 13.76-24.51 24.73-43.41 32.43S283.36 403 257.69 403c-30.69 0-56.36-5.37-76.55-15.87a101 101 0 0 1-35.24-30.8c-9.11-12.83-13.66-25.66-13.66-38 0-7.7 3-14.35 8.87-19.95 5.84-5.37 13.42-8.17 22.29-8.17 7.35 0 13.65 2.1 18.79 6.42 4.9 4.08 9.1 10.15 12.48 18.08A108.09 108.09 0 0 0 207 336.15q6.32 8.22 17.86 13.65c7.82 3.62 18.2 5.48 31 5.48 17.62 0 32.09-3.73 42.94-11.08 10.74-7.12 15.88-15.75 15.88-26.25 0-8.28-2.69-14.82-8.29-19.95-5.83-5.37-13.42-9.57-22.87-12.37-9.69-3-22.87-6.18-39.21-9.56-22.17-4.67-41-10.27-56-16.57-15.28-6.42-27.65-15.4-36.76-26.48-9.22-11.32-13.77-25.55-13.77-42.24a67.86 67.86 0 0 1 14.47-42.58c9.57-12.25 23.46-21.82 41.55-28.35 17.74-6.53 38.86-9.8 62.66-9.8 19.14 0 35.83 2.22 49.83 6.42s25.91 10.15 35.36 17.38 16.34 14.93 20.77 23 6.66 16.22 6.66 24c0 7.46-2.92 14.35-8.76 20.3a29.65 29.65 0 0 1-21.94 9.1c-7.93 0-14.12-1.87-18.43-5.6-4-3.5-8.17-8.87-12.72-16.69-5.37-9.91-11.79-17.85-19.14-23.45-7.24-5.36-19.14-8.16-35.71-8.16-15.29 0-27.77 3-37 9-8.87 5.72-13.19 12.37-13.19 20.18a18.26 18.26 0 0 0 4.32 12.25 38.13 38.13 0 0 0 12.72 9.57 90.14 90.14 0 0 0 17.15 6.53c6 1.64 15.87 4.09 29.53 7.12 17.38 3.62 33.25 7.82 47.26 12.13 14.24 4.55 26.49 10 36.52 16.45a72.93 72.93 0 0 1 24.16 25.09c5.72 10 8.64 22.63 8.64 37.1A75.09 75.09 0 0 1 368 359z\"},\"child\":[]}]})(props);\n};\nexport function IoLogoSlack (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M126.12 315.1A47.06 47.06 0 1 1 79.06 268h47.06zm23.72 0a47.06 47.06 0 0 1 94.12 0v117.84a47.06 47.06 0 1 1-94.12 0zm47.06-188.98A47.06 47.06 0 1 1 244 79.06v47.06zm0 23.72a47.06 47.06 0 0 1 0 94.12H79.06a47.06 47.06 0 0 1 0-94.12zm188.98 47.06a47.06 47.06 0 1 1 47.06 47.1h-47.06zm-23.72 0a47.06 47.06 0 0 1-94.12 0V79.06a47.06 47.06 0 1 1 94.12 0zM315.1 385.88a47.06 47.06 0 1 1-47.1 47.06v-47.06zm0-23.72a47.06 47.06 0 0 1 0-94.12h117.84a47.06 47.06 0 1 1 0 94.12z\"},\"child\":[]}]})(props);\n};\nexport function IoLogoSnapchat (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M496 347.21a190.31 190.31 0 0 1-32.79-5.31c-27.28-6.63-54.84-24.26-68.12-52.43-6.9-14.63-2.64-18.59 11.86-24 14.18-5.27 29.8-7.72 36.86-23 5.89-12.76 1.13-27.76-10.41-35.49-15.71-10.53-30.35-.21-46.62 2.07 3.73-46.66 8.66-88.57-22.67-127.73C338.14 48.86 297.34 32 256.29 32s-81.86 16.86-107.81 49.33c-31.38 39.26-26.4 81.18-22.67 127.92-16.32-2.25-30.81-12.79-46.63-2.18-14.72 9.85-17 29.76-5.44 43s31.64 9.5 43.45 20.6c6.49 6.09 3.49 12.61-.35 20.14-14.48 28.4-39.26 45.74-69.84 51.56-4 .76-22.31 2.87-31 3.65 0 9.28.52 16.78 1.63 21.73 2.94 13.06 12.32 23.58 23.69 30.1 11.18 6.4 35.48 6.43 41.68 15.51 3 4.48 1.76 12.28 5.33 17.38a23.8 23.8 0 0 0 15.37 9.75c18.61 3.61 37.32-7.2 56.42-2.1 14.85 3.95 26.52 15.87 39.26 24 15.51 9.85 32.34 16.42 50.83 17.49 38.1 2.21 59.93-18.91 90.58-36.42 19.5-11.14 38.15-3.86 58.88-2.68 20.1 1.15 23.53-9.25 29.62-24.88a27.37 27.37 0 0 0 1.54-4.85 10.52 10.52 0 0 0 2.28-1.47c2-1.57 10.55-2.34 12.76-2.86 10.28-2.44 20.34-5.15 29.17-11.2 11.31-7.76 17.65-18.5 19.58-32.64a93.73 93.73 0 0 0 1.38-15.67zM208 128c8.84 0 16 10.74 16 24s-7.16 24-16 24-16-10.74-16-24 7.16-24 16-24zm103.62 77.7c-15.25 15-35 23.3-55.62 23.3a78.37 78.37 0 0 1-55.66-23.34 8 8 0 0 1 11.32-11.32A62.46 62.46 0 0 0 256 213c16.39 0 32.15-6.64 44.39-18.7a8 8 0 0 1 11.23 11.4zM304 176c-8.84 0-16-10.75-16-24s7.16-24 16-24 16 10.75 16 24-7.16 24-16 24z\"},\"child\":[]}]})(props);\n};\nexport function IoLogoSoundcloud (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M5.8 278a2.11 2.11 0 0 0-2 2L0 308.64l3.74 28.16a2.12 2.12 0 0 0 2.05 2 2.14 2.14 0 0 0 2-2l4.44-28.17L7.83 280a2.14 2.14 0 0 0-2-2zm21.05-15.68a2.13 2.13 0 0 0-4.26 0l-5 46.32 5 45.3a2.13 2.13 0 0 0 4.26 0l5.73-45.31-5.73-46.32zm79.32-42.73a4 4 0 0 0-3.87 3.87l-4 85.22 4 55.08a3.88 3.88 0 0 0 7.75 0l4.53-55.08-4.53-85.22a4 4 0 0 0-3.88-3.87zm-41.05 29.62a3.09 3.09 0 0 0-3 3l-4.52 56.45 4.51 54.63a3 3 0 0 0 6 0l5.13-54.63-5.13-56.48a3.1 3.1 0 0 0-2.99-2.97zm82.76 118.39a4.83 4.83 0 0 0 4.75-4.74l3.93-54.15-3.93-113.46a4.75 4.75 0 0 0-9.5 0l-3.49 113.45 3.49 54.17a4.81 4.81 0 0 0 4.75 4.73zm85.4.25a6.6 6.6 0 0 0 6.5-6.52l2.74-52.6-2.74-131a6.5 6.5 0 1 0-13 0l-2.45 131c0 .08 2.45 52.67 2.45 52.67a6.59 6.59 0 0 0 6.5 6.45zm-43.02-.2a5.67 5.67 0 0 0 5.62-5.64l3.34-53.33-3.34-114.28a5.63 5.63 0 1 0-11.25 0l-3 114.29 3 53.32a5.66 5.66 0 0 0 5.63 5.6zm-104.7-.5a3.53 3.53 0 0 0 3.44-3.41l4.83-55.09-4.83-52.4a3.44 3.44 0 0 0-6.88 0l-4.26 52.38 4.26 55.08a3.5 3.5 0 0 0 3.44 3.44zm-40.72-3.02a2.67 2.67 0 0 0 2.57-2.52l5.43-53-5.42-55a2.57 2.57 0 0 0-5.14 0l-4.78 55 4.78 53a2.62 2.62 0 0 0 2.56 2.53zm166.85-171.6a6.1 6.1 0 0 0-6.07 6.09l-2.71 110.11 2.71 53a6.07 6.07 0 0 0 12.13 0l3-53-3-110.13a6.1 6.1 0 0 0-6.06-6.07zM127 367.71a4.41 4.41 0 0 0 4.31-4.3l4.23-54.71-4.28-104.7a4.32 4.32 0 0 0-8.63 0l-3.74 104.7 3.75 54.73a4.38 4.38 0 0 0 4.36 4.28zm47.17-5.17 3.63-53.8-3.63-117.28a5.19 5.19 0 1 0-10.37 0l-3.23 117.28 3.23 53.83a5.18 5.18 0 0 0 10.36 0zM449 241.1a62.42 62.42 0 0 0-24.33 4.9c-5-57.18-52.61-102-110.66-102a111.92 111.92 0 0 0-40.28 7.58c-4.75 1.85-6 3.76-6.06 7.46V360.4a7.66 7.66 0 0 0 6.8 7.5l174.56.11c34.78 0 63-28.41 63-63.45s-28.2-63.46-63-63.46zm-194.21-82.23a7 7 0 0 0-6.94 7L245 308.75l2.85 51.87a6.94 6.94 0 1 0 13.87-.06v.06l3.09-51.87-3.09-142.93a7 7 0 0 0-6.93-6.95z\"},\"child\":[]}]})(props);\n};\nexport function IoLogoStackoverflow (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M392 440V320h40v160H64V320h40v120z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m149.1 308.77 198.57 40.87 8.4-39.32-198.57-40.87zm26.27-93.12L359.22 300 376 263.76l-183.82-84.84zm50.95-89 156 127.78 25.74-30.52-156-127.78zM328 32l-33.39 23.8 120.82 160.37L448 192zM144 400h204v-40H144z\"},\"child\":[]}]})(props);\n};\nexport function IoLogoSteam (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M478.8 208.2a36 36 0 1 1-36-36 36 36 0 0 1 36 36zM442.6 139a69.42 69.42 0 0 0-69.4 68.7l-43.2 62a48.86 48.86 0 0 0-5.4-.3 51.27 51.27 0 0 0-26.4 7.3L102.4 198a51.8 51.8 0 1 0-50.6 62.9 51.27 51.27 0 0 0 26.4-7.3L274 332.2a51.76 51.76 0 0 0 102.1-5.9l66.5-48.6a69.35 69.35 0 1 0 0-138.7zm0 22.9a46.45 46.45 0 1 1-46.5 46.5 46.54 46.54 0 0 1 46.5-46.5zm-390.8 9a38.18 38.18 0 0 1 33.7 20.2l-18.9-7.6v.1a30.21 30.21 0 0 0-22.6 56v.1l16.1 6.4a36.8 36.8 0 0 1-8.2.9 38.05 38.05 0 0 1-.1-76.1zm272.8 112.2a38.1 38.1 0 1 1-33.7 55.9c6.3 2.5 12.5 5 18.8 7.6a30.27 30.27 0 1 0 22.5-56.2l-15.9-6.4a46.83 46.83 0 0 1 8.3-.9z\"},\"child\":[]}]})(props);\n};\nexport function IoLogoStencil (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M188.8 334.07h197.33L279.47 448H83.2zM512 199H106.61L0 313h405.39zM232.2 64h196.6L322.62 177.93H125.87z\"},\"child\":[]}]})(props);\n};\nexport function IoLogoTableau (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M242.69 340.3h26.62v-72.6h67v-25.82h-67v-72.6h-26.62v72.6h-66.15v25.82h66.15zM119.26 445.18h22.59v-64.54h59.7v-20.17h-59.7v-65.34h-22.59v65.34h-59.7v20.17h59.7zM370.15 212h22.59v-64.5h60.5v-19.37h-60.5V62.79h-22.59v65.34h-59.7v19.37h59.7zM246.72 496h19.36v-46h41.15v-16.92h-41.15v-46h-19.36v46h-40.33V450h40.33zM120.07 212h21v-65.31h60.51v-18.56H141V62.79h-21v65.34H59.56v18.56h60.51zm315.65 96.84h19.36v-45.18H496v-17.74h-40.92v-45.18h-19.36v45.18h-40.33v17.74h40.33z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M370.15 445.18h22.59v-64.54h60.5v-20.17h-60.5v-65.34h-22.59v65.34h-59.7v20.17h59.7z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M307 74.08V60.37h-40.34V16h-14.52v44.37h-40.33v13.71h40.33v44.37h14.52V74.08zM56.11 305.61h14.52v-44.37H111v-13.71H70.63V204H56.11v43.56H16v14.52l40.11-.08z\"},\"child\":[]}]})(props);\n};\nexport function IoLogoTiktok (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M412.19 118.66a109.27 109.27 0 0 1-9.45-5.5 132.87 132.87 0 0 1-24.27-20.62c-18.1-20.71-24.86-41.72-27.35-56.43h.1C349.14 23.9 350 16 350.13 16h-82.44v318.78c0 4.28 0 8.51-.18 12.69 0 .52-.05 1-.08 1.56 0 .23 0 .47-.05.71v.18a70 70 0 0 1-35.22 55.56 68.8 68.8 0 0 1-34.11 9c-38.41 0-69.54-31.32-69.54-70s31.13-70 69.54-70a68.9 68.9 0 0 1 21.41 3.39l.1-83.94a153.14 153.14 0 0 0-118 34.52 161.79 161.79 0 0 0-35.3 43.53c-3.48 6-16.61 30.11-18.2 69.24-1 22.21 5.67 45.22 8.85 54.73v.2c2 5.6 9.75 24.71 22.38 40.82A167.53 167.53 0 0 0 115 470.66v-.2l.2.2c39.91 27.12 84.16 25.34 84.16 25.34 7.66-.31 33.32 0 62.46-13.81 32.32-15.31 50.72-38.12 50.72-38.12a158.46 158.46 0 0 0 27.64-45.93c7.46-19.61 9.95-43.13 9.95-52.53V176.49c1 .6 14.32 9.41 14.32 9.41s19.19 12.3 49.13 20.31c21.48 5.7 50.42 6.9 50.42 6.9v-81.84c-10.14 1.1-30.73-2.1-51.81-12.61z\"},\"child\":[]}]})(props);\n};\nexport function IoLogoTumblr (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M390 32H120c-49.19 0-88 38.81-88 88v270c0 49.19 38.81 90 88 90h270c49.19 0 90-40.81 90-90V120c0-49.19-40.81-88-90-88zm-54 364h-52c-42.51 0-72-23.68-72-76v-80h-36v-48c42.51-11 57.95-48.32 60-80h44v72h52v56h-52l-.39 70.51c0 21.87 11 29.43 28.62 29.43L336 340z\"},\"child\":[]}]})(props);\n};\nexport function IoLogoTux (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M443.66 405.05c-1.46-.79-2.85-1.54-4-2.2-6.47-3.83-13-10.52-11.85-17.83 2.42-15.94 2.89-23.47-.49-28.79a15.61 15.61 0 0 0-7.67-6.2v-.06c1.41-2.56 2.26-5.66 2.83-10.12 1.44-11-5-44-13.7-70.7-8.08-24.68-29.24-50-44.7-68.56l-3.61-4.34c-23.88-28.93-24.34-38.19-26.55-82.67-.32-6.47-.69-13.8-1.17-22C329.87 41.43 304 16 256 16c-25.2 0-44.62 7.15-57.72 21.26C187.79 48.55 182 64 182 80.78c0 29.52 2 53 2.15 54.29 1.4 35.7 1 41.22-8.31 57.55-2.23 3.93-8.38 10.87-14.89 18.21-8.48 9.57-18.09 20.41-23.36 29.22-3.77 6.31-5.88 12.63-8.11 19.33-3.4 10.21-7.26 21.78-18.15 36.57-12.57 17.07-15.52 29.61-11 47.45-4.94 6.45-4.83 14.37-4.75 20.23a25.84 25.84 0 0 1-.3 6.09c-2.29 7.59-12.42 9.4-22 10.18-1.58.12-3.1.21-4.55.29-7.26.39-13.53.74-17.13 6.3-3.47 5.36-1.12 13.8 2.14 25.48.72 2.58 1.46 5.25 2.19 8.06 1.83 7-.16 10.48-2.68 14.84-2.44 4.21-5.21 9-5.21 17.55 0 14.67 20 18 43.05 21.94 7.36 1.24 15 2.53 22.63 4.24a225.58 225.58 0 0 1 34.08 10.68c9.72 3.73 17.4 6.68 26.43 6.68 16.18 0 28.25-9.77 39.92-19.21l2.15-1.75c5.53-4.49 21.5-4 34.34-3.64 3.46.1 6.73.2 9.65.2h6.22c13.48-.08 31.94-.18 42.23 2.5 3.75 1 6.2 3.72 9.29 7.19 5.87 6.56 13.17 14.75 33.39 14.75 19.39 0 29.55-8.71 41.32-18.8 7.16-6.13 14.56-12.48 25.07-17.86 3.92-2 7.62-3.87 11.08-5.61 22.64-11.38 35.11-17.65 35.11-27.82 0-9.91-12.24-16.5-20.34-20.86zM211.11 88.38a13.91 13.91 0 0 1 12.47 9c1.95 5.55 1.81 10.42.21 12.94 0 0-.22-1-.36-1.44a14.85 14.85 0 0 0-6.44-8.59 11.35 11.35 0 0 0-8.94-1.47c-4.26 1.13-8.41 5-8.91 18.79-5.16-10.47-2.31-18 .92-23 2.31-3.73 7.47-6.33 11.05-6.23zm-17.5 375C192 479.24 175.2 479 170.09 478.59c-9.81-.82-21.66-4.69-33.13-8.43-4.52-1.47-9.19-3-13.73-4.34-13.2-3.89-30.12-6.74-43.72-9-3.22-.55-6.27-1.06-9.05-1.55s-4.61-1.27-5.2-2.3c-1-1.65.38-5.25 1.93-9.41C69.27 438 72.11 430.34 72 421c0-3.91-1.47-8.3-2.84-12.56-1.62-5-3.28-10.17-1.93-12.62 1.23-2.23 6.75-2.49 11.6-2.49h2.26c3.55 0 6.62.06 8.75-.53 6.51-1.81 14.86-6.92 17.81-13.88.9-2.17 1.37-6.94 2-14 .37-4.12.74-8.37 1.22-10.58a3.55 3.55 0 0 1 2.11-2.55c1.65-.77 6.78-1.91 18.63 4.08 11.18 5.65 22.88 25.84 34.2 45.37 3.56 6.14 6.92 11.94 10.3 17.36 14.04 22.54 18.83 31.6 17.5 44.8zm128.84-31.56a68.74 68.74 0 0 1-4.55 10.9.58.58 0 0 1-1.08-.42 56.61 56.61 0 0 0 2.11-18.43c-.25-4.73-.4-7.59-2.66-8.51s-4.26.83-9.45 5.54c-1.1 1-2.36 2.14-3.78 3.4-10.8 9.47-26.88 20.68-55.61 23.37-16.84 1.59-27.59-4.63-30.92-8.14a2.16 2.16 0 0 0-3.07-.08 2.23 2.23 0 0 0-.51 2.29c2.12 6.84 1.2 12.26-.49 16.19-.95 2.2-1.85 2.05-2-.34-.25-4.64-1-9.88-3-14.19-3.11-6.94-7-14.34-8.89-17.88v-.05c3.24-1.49 8.86-4.83 11.37-10.88s4.48-18-9.82-31.74c-6.28-6.05-22.1-17.16-36.06-27-10.9-7.65-22.17-15.56-23.65-17.51-4.49-5.89-6.37-9.3-6.94-19.65.07-2.3.13-4.59.19-6.89l.27-2.49a.58.58 0 0 1 1.15 0 63.07 63.07 0 0 0 2 9.72c1.08 3.73 2.4 7.58 3.62 9.18 3.19 4.22 7.56 7.39 11.67 8.49a5.48 5.48 0 0 0 5-.72c2.93-2.33 2.65-7.6 2.19-16.34-.47-9-1.11-21.34 1.85-34.55 5.62-25 10.91-32.51 17.61-42 .86-1.22 1.75-2.47 2.65-3.79 1.44-2.08 3-4.1 4.67-6.23 7.47-9.61 15.93-20.49 13.92-40.95-.51-5.19-.76-8.83-.86-11.39a1 1 0 0 1 1.88-.59l.49.77 1.21 2c4.86 8 13.64 22.57 25.1 22.57a13.62 13.62 0 0 0 2.36-.21c23.39-3.93 51.9-30.25 52.17-30.51 3.12-3 2.84-6.14 1.64-7.91a5.18 5.18 0 0 0-6.45-1.72c-3.29 1.4-7.14 3.15-11.22 5-13.82 6.27-37 16.75-42.25 14.34a23.11 23.11 0 0 1-6.32-5.13 1 1 0 0 1 1.14-1.65c5.59 2.29 9.55 1.45 14.2-.08l1-.34c9.37-3.09 14.2-4.77 30.76-12.08a97.55 97.55 0 0 1 16.26-5.93c4-1 6.42-1.63 7.71-4.34a6.65 6.65 0 0 0-.5-7.13c-1.53-1.87-4.07-2.57-7-1.9-3.22.75-4.7 3-6.41 4.49-2.4 2.05-5 4.16-17.19 8.65-27 10-34.58 10.61-45.21 3.43-9.84-6.69-15.15-13.23-15.15-16 0-2.13 5.45-5.7 8.71-7.84 1.33-.87 2.59-1.69 3.62-2.46 4.34-3.22 13-11.39 13.38-11.73 5.4-5.41 17.91-2.18 25 2.58a2.23 2.23 0 0 0 1.72.41 2.14 2.14 0 0 0 1.68-2.58c-4.2-17.46-.13-27.34 4-32.55a22.58 22.58 0 0 1 17.48-8.48c12.81 0 21.76 10 21.76 24.42 0 11-2.82 16.79-5.48 20.3a1.73 1.73 0 0 1-2.58.18 1.78 1.78 0 0 1-.24-2.2A24.61 24.61 0 0 0 290 114a16.58 16.58 0 0 0-16.84-16.67c-3.94 0-13.48 1.5-16.77 15.44a29.81 29.81 0 0 0-.34 11.07l.08.71c.9 7.38 15.3 12.51 27.23 15.51 11.36 2.85 13 6.22 8.84 19.63s3.11 26.23 5.7 29.57a78.3 78.3 0 0 1 8.31 12.47 93.8 93.8 0 0 1 6.62 16.48c2.17 6.79 4.05 12.65 10.63 21.22 11.07 14.4 17.66 48.64 15 78-.21 2.41-.53 4.29-.77 5.67-.43 2.53-.72 4.2.66 5.38s3.16.7 7.26-.63l3.43-1.09a109.33 109.33 0 0 1 12.58-2.8 2.15 2.15 0 0 0 1.59-1.16c3.43-6.91 3.85-15.22 4-22.47q0-1.31.06-2.79c.19-7.77.45-18.93-2.95-32a1 1 0 0 1 1.93-.64 93 93 0 0 1 6.66 25.55c2.55 22.58-1.9 32.09-1.94 32.17a1.61 1.61 0 0 0 .95 2.25 17.12 17.12 0 0 1 6.95 4.67c1.46 1.66.93 2.4-1.14 1.62a36.26 36.26 0 0 0-12.77-2.29c-10.4 0-18.09 4.95-21.51 9.19-3.19 3.94-3.7 7.67-3.83 11.27l-.06.05c-7.48-.75-12.94 1.21-17.47 6.21l-.08.09c-6.26 7.75-4 24.63-1.29 38.48 1.28 6.45 5.59 25.52 1.73 37.68zm96.1 10.07c-15.71 6.71-25.43 14.51-34 21.39-5.65 4.53-11 8.81-17.28 12.14-10.12 5.34-24.91 6.53-33.27-7.7-2.37-4-.71-9.86 1.58-17.95 3.05-10.75 7.23-25.46 3.71-44.65-.94-5.12-1.77-9.51-2.49-13.31C334 377 332.9 371.43 334 367c.63-2.45 3.43-3 5.87-3a20.83 20.83 0 0 1 2.63.19 29.51 29.51 0 0 0 7 12.1c5.7 5.86 13.63 8.83 23.56 8.85 2.1.17 25.94 1.55 36.54-22.4 1.46.18 3.65.7 4.3 2.3 1.28 3.19-.27 8.91-1.52 13.5-.9 3.31-1.68 6.16-1.63 8.37.31 16 11 22.78 25.83 32.16 1.79 1.13 3.66 2.31 5.55 3.54S445 425 445 426c-.52 4.79-20 13.16-26.45 15.91z\"},\"child\":[]}]})(props);\n};\nexport function IoLogoTwitch (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m80 32-32 80v304h96v64h64l64-64h80l112-112V32zm336 256-64 64h-96l-64 64v-64h-80V80h304z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M320 143h48v129h-48zm-112 0h48v129h-48z\"},\"child\":[]}]})(props);\n};\nexport function IoLogoTwitter (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M496 109.5a201.8 201.8 0 0 1-56.55 15.3 97.51 97.51 0 0 0 43.33-53.6 197.74 197.74 0 0 1-62.56 23.5A99.14 99.14 0 0 0 348.31 64c-54.42 0-98.46 43.4-98.46 96.9a93.21 93.21 0 0 0 2.54 22.1 280.7 280.7 0 0 1-203-101.3A95.69 95.69 0 0 0 36 130.4c0 33.6 17.53 63.3 44 80.7A97.5 97.5 0 0 1 35.22 199v1.2c0 47 34 86.1 79 95a100.76 100.76 0 0 1-25.94 3.4 94.38 94.38 0 0 1-18.51-1.8c12.51 38.5 48.92 66.5 92.05 67.3A199.59 199.59 0 0 1 39.5 405.6a203 203 0 0 1-23.5-1.4A278.68 278.68 0 0 0 166.74 448c181.36 0 280.44-147.7 280.44-275.8 0-4.2-.11-8.4-.31-12.5A198.48 198.48 0 0 0 496 109.5z\"},\"child\":[]}]})(props);\n};\nexport function IoLogoUsd (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M240 480v-36.42C160.53 439 112.25 398.06 112 336h72c1.77 26.34 23.86 46.45 56 50v-98l-26.77-7c-61-14.18-93.64-49.39-93.64-102.08C119.59 116.81 164.08 76.08 240 70V32h32v38c77.39 6.3 119 47.74 120 106h-72c-.76-24.06-15.83-43.39-48-46v92l30.82 7.28C367.61 243.46 400 277 400 332c0 64.34-43.74 105.88-128 111.32V480zm0-264v-86c-27.59 1.52-47.27 18.47-47.27 42.53 0 22.3 16.39 36.88 47.27 43.47zm32 78v92c38.15-1.54 56.38-18.92 56.38-45.77 0-24.58-18.23-41.13-56.38-46.23z\"},\"child\":[]}]})(props);\n};\nexport function IoLogoVenmo (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M444.17 32H70.28C49.85 32 32 46.7 32 66.89V441.6c0 20.31 17.85 38.4 38.28 38.4h373.78c20.54 0 35.94-18.2 35.94-38.39V66.89C480.12 46.7 464.6 32 444.17 32zM278 387H174.32l-41.57-248.56 90.75-8.62 22 176.87c20.53-33.45 45.88-86 45.88-121.87 0-19.62-3.36-33-8.61-44l82.63-16.72c9.56 15.78 13.86 32 13.86 52.57-.01 65.5-55.92 150.59-101.26 210.33z\"},\"child\":[]}]})(props);\n};\nexport function IoLogoVercel (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"m256 48 240 416H16z\"},\"child\":[]}]})(props);\n};\nexport function IoLogoVimeo (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M476.9 114c-5-23.39-17.51-38.78-40.61-46.27s-64.92-4.5-94.12 16.79c-26.79 19.51-46.26 54.42-54 78.28a4 4 0 0 0 5.13 5c10.77-3.8 21.72-7.1 34-6.45 15 .8 24.51 12 24.91 25.29.3 9.79-.2 18.69-3.6 27.68-10.74 28.68-27.61 56.46-47.55 80.75a72.49 72.49 0 0 1-10 9.89c-10.21 8.29-18.81 6.1-25.41-5.2-5.4-9.29-9-18.88-12.2-29.08-12.4-39.67-16.81-80.84-23.81-121.52-3.3-19.48-7-39.77-18-56.86-11.6-17.79-28.61-24.58-50-22-14.7 1.8-36.91 17.49-47.81 26.39 0 0-56 46.87-81.82 71.35l21.2 27s17.91-12.49 27.51-18.29c5.7-3.39 12.4-4.09 17.2.2 4.51 3.9 9.61 9 12.31 14.1 5.7 10.69 11.2 21.88 14.7 33.37 13.2 44.27 25.51 88.64 37.81 133.22 6.3 22.78 13.9 44.17 28 63.55 19.31 26.59 39.61 32.68 70.92 21.49 25.41-9.09 46.61-26.18 66-43.87 33.11-30.18 59.12-65.36 85.52-101.14 20.41-27.67 37.31-55.67 51.41-86.95C478.5 179.74 484 147.26 476.9 114z\"},\"child\":[]}]})(props);\n};\nexport function IoLogoVk (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M484.7 132c3.56-11.28 0-19.48-15.75-19.48h-52.37c-13.21 0-19.31 7.18-22.87 14.86 0 0-26.94 65.6-64.56 108.13-12.2 12.3-17.79 16.4-24.4 16.4-3.56 0-8.14-4.1-8.14-15.37V131.47c0-13.32-4.06-19.47-15.25-19.47H199c-8.14 0-13.22 6.15-13.22 12.3 0 12.81 18.81 15.89 20.84 51.76V254c0 16.91-3 20-9.66 20-17.79 0-61-66.11-86.92-141.44C105 117.64 99.88 112 86.66 112H33.79C18.54 112 16 119.17 16 126.86c0 13.84 17.79 83.53 82.86 175.77 43.21 63 104.72 96.86 160.13 96.86 33.56 0 37.62-7.69 37.62-20.5v-47.66c0-15.37 3.05-17.93 13.73-17.93 7.62 0 21.35 4.09 52.36 34.33C398.28 383.6 404.38 400 424.21 400h52.36c15.25 0 22.37-7.69 18.3-22.55-4.57-14.86-21.86-36.38-44.23-62-12.2-14.34-30.5-30.23-36.09-37.92-7.62-10.25-5.59-14.35 0-23.57-.51 0 63.55-91.22 70.15-122\"},\"child\":[]}]})(props);\n};\nexport function IoLogoVue (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m256 144.03-55.49-96.11h-79.43L256 281.61 390.92 47.92h-79.43L256 144.03z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M409.4 47.92 256 313.61 102.6 47.92H15.74L256 464.08 496.26 47.92H409.4z\"},\"child\":[]}]})(props);\n};\nexport function IoLogoWebComponent (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"d\":\"m179.9 388-76.16-132 76.16 132zm0 0h152.21l76.15-132-76.15-132H179.9l-76.16 132 76.16 132zm-76.16-132 76.16-132-76.16 132z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M496 256 376 48H239.74l-43.84 76h136.21l76.15 132-76.15 132H195.9l43.84 76H376l120-208z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m179.9 388-76.16-132 76.16-132 43.84-76H136L16 256l120 208h87.74l-43.84-76z\"},\"child\":[]}]})(props);\n};\nexport function IoLogoWechat (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M408.67 298.53a21 21 0 1 1 20.9-21 20.85 20.85 0 0 1-20.9 21m-102.17 0a21 21 0 1 1 20.9-21 20.84 20.84 0 0 1-20.9 21m152.09 118.86C491.1 394.08 512 359.13 512 319.51c0-71.08-68.5-129.35-154.41-129.35s-154.42 58.27-154.42 129.35 68.5 129.34 154.42 129.34c17.41 0 34.83-2.33 49.92-7 2.49-.86 3.48-1.17 4.64-1.17a16.67 16.67 0 0 1 8.13 2.34L454 462.83a11.62 11.62 0 0 0 3.48 1.17 5 5 0 0 0 4.65-4.66 14.27 14.27 0 0 0-.77-3.86c-.41-1.46-5-16-7.36-25.27a18.94 18.94 0 0 1-.33-3.47 11.4 11.4 0 0 1 5-9.35\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M246.13 178.51a24.47 24.47 0 0 1 0-48.94c12.77 0 24.38 11.65 24.38 24.47 1.16 12.82-10.45 24.47-24.38 24.47m-123.06 0A24.47 24.47 0 1 1 147.45 154a24.57 24.57 0 0 1-24.38 24.47M184.6 48C82.43 48 0 116.75 0 203c0 46.61 24.38 88.56 63.85 116.53C67.34 321.84 68 327 68 329a11.38 11.38 0 0 1-.66 4.49C63.85 345.14 59.4 364 59.21 365s-1.16 3.5-1.16 4.66a5.49 5.49 0 0 0 5.8 5.83 7.15 7.15 0 0 0 3.49-1.17L108 351c3.49-2.33 5.81-2.33 9.29-2.33a16.33 16.33 0 0 1 5.81 1.16c18.57 5.83 39.47 8.16 60.37 8.16h10.45a133.24 133.24 0 0 1-5.81-38.45c0-78.08 75.47-141 168.35-141h10.45C354.1 105.1 277.48 48 184.6 48\"},\"child\":[]}]})(props);\n};\nexport function IoLogoWhatsapp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M414.73 97.1A222.14 222.14 0 0 0 256.94 32C134 32 33.92 131.58 33.87 254a220.61 220.61 0 0 0 29.78 111L32 480l118.25-30.87a223.63 223.63 0 0 0 106.6 27h.09c122.93 0 223-99.59 223.06-222A220.18 220.18 0 0 0 414.73 97.1zM256.94 438.66h-.08a185.75 185.75 0 0 1-94.36-25.72l-6.77-4-70.17 18.32 18.73-68.09-4.41-7A183.46 183.46 0 0 1 71.53 254c0-101.73 83.21-184.5 185.48-184.5a185 185 0 0 1 185.33 184.64c-.04 101.74-83.21 184.52-185.4 184.52zm101.69-138.19c-5.57-2.78-33-16.2-38.08-18.05s-8.83-2.78-12.54 2.78-14.4 18-17.65 21.75-6.5 4.16-12.07 1.38-23.54-8.63-44.83-27.53c-16.57-14.71-27.75-32.87-31-38.42s-.35-8.56 2.44-11.32c2.51-2.49 5.57-6.48 8.36-9.72s3.72-5.56 5.57-9.26.93-6.94-.46-9.71-12.54-30.08-17.18-41.19c-4.53-10.82-9.12-9.35-12.54-9.52-3.25-.16-7-.2-10.69-.2a20.53 20.53 0 0 0-14.86 6.94c-5.11 5.56-19.51 19-19.51 46.28s20 53.68 22.76 57.38 39.3 59.73 95.21 83.76a323.11 323.11 0 0 0 31.78 11.68c13.35 4.22 25.5 3.63 35.1 2.2 10.71-1.59 33-13.42 37.63-26.38s4.64-24.06 3.25-26.37-5.11-3.71-10.69-6.48z\"},\"child\":[]}]})(props);\n};\nexport function IoLogoWindows (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M480 265H232v179l248 36V265zm-264 0H32v150l184 26.7V265zM480 32 232 67.4V249h248V32zM216 69.7 32 96v153h184V69.7z\"},\"child\":[]}]})(props);\n};\nexport function IoLogoWordpress (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M259 271.3 226.2 367h-.1l-25.4 73.1c1.8.5 3.5.9 5.3 1.4h.3a192.51 192.51 0 0 0 49.5 6.5 157 157 0 0 0 24.9-1.8 184.3 184.3 0 0 0 32.5-7.1c2.6-.8 5.2-1.7 7.8-2.6-2.8-6-8.8-19.3-9.1-19.9zM80.8 180.5C70.8 203.1 64 230.9 64 256c0 6.3.3 12.6.9 18.8 6.9 71.2 52.9 131 116.1 157.9 2.6 1.1 5.3 2.2 8 3.2L96 180.6c-8-.3-9.5.2-15.2-.1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M430.2 175.4a188 188 0 0 0-15.1-26.6c-1.6-2.4-3.4-4.8-5.1-7.2A193 193 0 0 0 325.1 77a189.2 189.2 0 0 0-69.2-13 191.51 191.51 0 0 0-149.4 71.7A196 196 0 0 0 89 161.3c14.2.1 31.8.1 33.8.1 18.1 0 46-2.2 46-2.2 9.4-.6 10.4 13.1 1.1 14.2 0 0-9.4 1.1-19.8 1.6L213 362l37.8-113.3-26.8-73.6c-9.4-.5-18.1-1.6-18.1-1.6-9.4-.5-8.2-14.8 1-14.2 0 0 28.5 2.2 45.5 2.2 18.1 0 46-2.2 46-2.2 9.3-.6 10.5 13.1 1.1 14.2 0 0-9.3 1.1-19.7 1.6l62.3 185.6 17.3-57.6c8.7-22.4 13.1-40.9 13.1-55.7 0-21.3-7.7-36.1-14.3-47.6-8.7-14.3-16.9-26.3-16.9-40.4 0-15.9 12-30.7 29-30.7h2.2c26.2-.7 34.8 25.3 35.9 43v.6c.4 7.2.1 12.5.1 18.8 0 17.4-3.3 37.1-13.1 61.8l-39 112.8-22.3 65.7c1.8-.8 3.5-1.6 5.3-2.5 56.7-27.4 98-82 106.7-146.7a172.07 172.07 0 0 0 1.9-26 191.11 191.11 0 0 0-17.8-80.8z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M256 48a208.06 208.06 0 0 1 81 399.66A208.06 208.06 0 0 1 175 64.34 206.7 206.7 0 0 1 256 48m0-16C132.29 32 32 132.29 32 256s100.29 224 224 224 224-100.29 224-224S379.71 32 256 32z\"},\"child\":[]}]})(props);\n};\nexport function IoLogoXbox (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M126.8 248.3c39.7-58.6 77.9-92.8 77.9-92.8s-42.1-48.9-92.8-67.4l-3.3-.8A224.13 224.13 0 0 0 77.2 391c0-4.4.6-70.3 49.6-142.7zM480 256a223.71 223.71 0 0 0-76.6-168.7l-3.2.9c-50.7 18.5-92.9 67.4-92.9 67.4s38.2 34.2 77.9 92.8c49 72.4 49.6 138.3 49.5 142.7A222.8 222.8 0 0 0 480 256zM201.2 80.9c29.3 13.1 54.6 34.6 54.6 34.6s25.5-21.4 54.8-34.6c36.8-16.5 64.9-11.3 72.3-9.5a224.06 224.06 0 0 0-253.8 0c7.2-1.8 35.2-7.1 72.1 9.5zm157.5 212C312.4 236 255.8 199 255.8 199s-56.3 37-102.7 93.9c-39.8 48.9-54.6 84.8-62.6 107.8l-1.3 4.8a224 224 0 0 0 333.6 0l-1.4-4.8c-8-23-22.9-58.9-62.7-107.8z\"},\"child\":[]}]})(props);\n};\nexport function IoLogoXing (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M313.8 303.9 469 32H365L209.4 303.8a1.35 1.35 0 0 0 0 1.7l98.9 173.8c.4.7.8.7 1.6.7H413l-99.3-174.7a1.74 1.74 0 0 1 .1-1.4zm-91.9-87.7L163 113a2 2 0 0 0-2-1H65l58.9 104.4a1.13 1.13 0 0 1 .1.8L43 352h96.8a1.54 1.54 0 0 0 1.6-.9l80.5-133.7a2.44 2.44 0 0 0 0-1.2z\"},\"child\":[]}]})(props);\n};\nexport function IoLogoYahoo (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M410.32 37.13c-13.56 0-27-.93-39.12-5.13L256 218.67 140.8 32c-12.12 4.2-24.84 5.13-38.4 5.13-13.32 0-26.52-1.05-38.4-5.13l153.6 248.15V480c12-4.08 25-5.13 38.4-5.13s26.4 1.05 38.4 5.13V280.5L448 32c-11.88 4-24.36 5.13-37.68 5.13z\"},\"child\":[]}]})(props);\n};\nexport function IoLogoYen (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M448 32h-80L256 253.13 144 32H64l112.37 208H128v48h73.56L216 319v17h-88v48h88v96h80v-96h88v-48h-88v-17l14.89-31H384v-48h-48.29z\"},\"child\":[]}]})(props);\n};\nexport function IoLogoYoutube (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M508.64 148.79c0-45-33.1-81.2-74-81.2C379.24 65 322.74 64 265 64h-18c-57.6 0-114.2 1-169.6 3.6C36.6 67.6 3.5 104 3.5 149 1 184.59-.06 220.19 0 255.79q-.15 53.4 3.4 106.9c0 45 33.1 81.5 73.9 81.5 58.2 2.7 117.9 3.9 178.6 3.8q91.2.3 178.6-3.8c40.9 0 74-36.5 74-81.5 2.4-35.7 3.5-71.3 3.4-107q.34-53.4-3.26-106.9zM207 353.89v-196.5l145 98.2z\"},\"child\":[]}]})(props);\n};\nexport function IoMagnetOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M421.83 293.82A144 144 0 0 0 218.18 90.17m135.76 135.77a48 48 0 0 0-67.88-67.88\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M192 464v-48m-101.82 5.82 33.94-33.94M48 320h48\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M286.06 158.06 172.92 271.19a32 32 0 0 1-45.25 0L105 248.57a32 32 0 0 1 0-45.26L218.18 90.17m203.65 203.65L308.69 407a32 32 0 0 1-45.26 0l-22.62-22.63a32 32 0 0 1 0-45.26l113.13-113.17M139.6 169.98l67.88 67.89m67.88 67.88 67.89 67.88\"},\"child\":[]}]})(props);\n};\nexport function IoMagnetSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"strokeLinecap\":\"square\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M191.98 463.58v-48M90.16 421.4l33.94-33.94m-76.12-67.88h48\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M422.2 89.82a144 144 0 0 0-203.71-.07l-67.88 67.88 67.88 67.89 67.88-67.89a48 48 0 0 1 68.46.59c18.3 18.92 17.48 49.24-1.14 67.86l-67.32 67.32 67.88 67.88 66.91-66.91c56.37-56.37 57.37-148.15 1.04-204.55zM82.718 225.517l45.255-45.254 67.883 67.882L150.6 293.4zM218.49 361.27l45.254-45.254 67.882 67.882-45.255 45.255z\"},\"child\":[]}]})(props);\n};\nexport function IoMagnet (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M191.98 463.79v-48m-101.82 5.82 33.94-33.94m-76.12-67.88h48\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m267.56 312.32-31.11 31.11a16 16 0 0 0 0 22.63l45.26 45.25a16 16 0 0 0 22.62 0l31.12-31.11a4 4 0 0 0 0-5.66l-62.23-62.22a4 4 0 0 0-5.66 0zM131.8 176.55l-31.11 31.12a16 16 0 0 0 0 22.62l45.25 45.26a16 16 0 0 0 22.63 0l31.11-31.11a4 4 0 0 0 0-5.66l-62.22-62.23a4 4 0 0 0-5.66 0zm297.05-93.27a144 144 0 0 0-203.71-.06l-65.06 65.05a4 4 0 0 0 0 5.66l62.23 62.22a4 4 0 0 0 5.66 0l65-65.05a48 48 0 0 1 68.46.59c18.3 18.92 17.47 49.24-1.14 67.85L295.85 284a4 4 0 0 0 0 5.66l62.22 62.23a4 4 0 0 0 5.66 0l64.08-64.08c56.37-56.34 57.37-148.13 1.04-204.53z\"},\"child\":[]}]})(props);\n};\nexport function IoMailOpenOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M441.6 171.61 266.87 85.37a24.57 24.57 0 0 0-21.74 0L70.4 171.61A40 40 0 0 0 48 207.39V392c0 22.09 18.14 40 40.52 40h335c22.38 0 40.52-17.91 40.52-40V207.39a40 40 0 0 0-22.44-35.78z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M397.33 368 268.07 267.46a24 24 0 0 0-29.47 0L109.33 368m200-73 136-103m-384 0 139 105\"},\"child\":[]}]})(props);\n};\nexport function IoMailOpenSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M471.05 168.36 263.24 65.69a16.37 16.37 0 0 0-14.48 0L41 168.36a16 16 0 0 0-9 14.31V432a16.09 16.09 0 0 0 16.19 16h415.62A16.09 16.09 0 0 0 480 432V182.67a16 16 0 0 0-8.95-14.31zM256 97.89l173 85.44-175.7 86.78-173-85.44z\"},\"child\":[]}]})(props);\n};\nexport function IoMailOpen (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M448.67 154.45 274.1 68.2a41.1 41.1 0 0 0-36.2 0L63.33 154.45A55.6 55.6 0 0 0 32 204.53v184.61c0 30.88 25.42 56 56.67 56h334.66c31.25 0 56.67-25.12 56.67-56V204.53a55.6 55.6 0 0 0-31.33-50.08zM252.38 96.82a8.22 8.22 0 0 1 7.24 0L429 180.48l-172 85a8.22 8.22 0 0 1-7.24 0L80.35 181.81z\"},\"child\":[]}]})(props);\n};\nexport function IoMailOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"rect\",\"attr\":{\"width\":\"416\",\"height\":\"320\",\"x\":\"48\",\"y\":\"96\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"rx\":\"40\",\"ry\":\"40\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"m112 160 144 112 144-112\"},\"child\":[]}]})(props);\n};\nexport function IoMailSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M464 80H48a16 16 0 0 0-16 16v320a16 16 0 0 0 16 16h416a16 16 0 0 0 16-16V96a16 16 0 0 0-16-16zM265.82 284.63a16 16 0 0 1-19.64 0L89.55 162.81l19.64-25.26L256 251.73l146.81-114.18 19.64 25.26z\"},\"child\":[]}]})(props);\n};\nexport function IoMailUnreadOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M320 96H88a40 40 0 0 0-40 40v240a40 40 0 0 0 40 40h334.73a40 40 0 0 0 40-40V239\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"m112 160 144 112 87-65.67\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"431.95\",\"cy\":\"128.05\",\"r\":\"47.95\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M432 192a63.95 63.95 0 1 1 63.95-63.95A64 64 0 0 1 432 192zm0-95.9a32 32 0 1 0 31.95 32 32 32 0 0 0-31.95-32z\"},\"child\":[]}]})(props);\n};\nexport function IoMailUnreadSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M374.09 101c-.11.23-.21.46-.31.7-.34.75-.67 1.5-1 2.26l-.36.9c-.27.71-.54 1.42-.79 2.14-.12.35-.24.7-.35 1-.23.68-.44 1.37-.64 2.07l-.33 1.15q-.27 1-.51 2c-.1.41-.2.82-.28 1.23-.15.67-.28 1.36-.4 2-.08.42-.16.84-.23 1.27-.11.69-.2 1.4-.29 2.1-.05.42-.11.83-.16 1.25-.08.77-.13 1.54-.19 2.31 0 .36-.06.72-.08 1.09-.06 1.13-.09 2.27-.09 3.41 0 1 0 2 .07 2.94v.62c.05.95.12 1.89.21 2.83l.06.46c.09.87.2 1.72.32 2.57 0 .15 0 .31.07.46.14.92.31 1.84.49 2.75l.12.59c.2.92.4 1.84.64 2.75.23.92.5 1.82.77 2.71.06.19.12.38.17.57.28.88.57 1.74.88 2.59.05.15.11.29.16.43.29.78.6 1.55.92 2.32.05.14.11.28.17.42.35.83.73 1.65 1.11 2.47l.27.53c.4.82.81 1.64 1.24 2.44a64.21 64.21 0 0 0 29.56 27.63l.37.17c1.78.8 3.59 1.53 5.45 2.17l.95.32 1.5.47c.45.14.9.26 1.36.39l1.92.5c.57.14 1.14.27 1.72.39l1.15.24 1.83.32.93.16c.9.13 1.81.24 2.72.34l.77.07c.73.07 1.47.13 2.22.17l.85.05c1 0 1.94.07 2.93.07 1.15 0 2.29 0 3.43-.09l1.09-.09c.77 0 1.54-.11 2.3-.19.42 0 .83-.1 1.25-.16.7-.08 1.41-.17 2.1-.28l1.27-.23c.68-.12 1.36-.25 2-.39l1.24-.29c.67-.16 1.35-.32 2-.51.39-.1.78-.21 1.16-.33.69-.2 1.37-.41 2.05-.63l1.07-.36c.7-.24 1.4-.5 2.1-.77l.94-.37c.74-.3 1.47-.62 2.19-.95l.77-.34c.8-.37 1.58-.77 2.36-1.17.17-.09.35-.17.52-.27.91-.48 1.8-1 2.68-1.5l.12-.07a63.95 63.95 0 1 0-89.21-84.88l-.21.39c-.3 1.03-.72 1.86-1.11 2.69z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m371.51 202.43-105.69 82.2a16 16 0 0 1-19.64 0L89.55 162.81l19.64-25.26L256 251.73l94.36-73.39A95.81 95.81 0 0 1 349 80H48a16 16 0 0 0-16 16v320a16 16 0 0 0 16 16h416a16 16 0 0 0 16-16V211.13a95.75 95.75 0 0 1-108.49-8.7z\"},\"child\":[]}]})(props);\n};\nexport function IoMailUnread (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M496 128.05A64 64 0 0 0 389.62 80a64.52 64.52 0 0 0-12.71 15.3v.06c-.54.9-1.05 1.82-1.55 2.74l-.24.49c-.42.79-.81 1.59-1.19 2.4-.12.25-.23.5-.34.75-.33.73-.65 1.47-.95 2.22-.13.31-.25.62-.37.93-.27.7-.53 1.4-.78 2.11l-.36 1.06c-.22.68-.43 1.37-.63 2.06-.12.39-.23.77-.33 1.16-.19.67-.35 1.35-.51 2-.1.41-.2.82-.29 1.23-.14.68-.27 1.37-.39 2-.08.42-.16.84-.23 1.26-.11.7-.2 1.41-.29 2.12-.05.41-.11.82-.16 1.24-.08.77-.13 1.54-.19 2.32 0 .36-.06.72-.08 1.08-.06 1.14-.1 2.28-.1 3.44 0 1 0 2 .08 2.94v.64q.08 1.41.21 2.82l.06.48c.09.85.19 1.69.32 2.52 0 .17 0 .35.07.52.14.91.31 1.81.49 2.71 0 .22.09.43.13.65.18.86.38 1.72.6 2.57v.19c.23.89.48 1.76.75 2.63l.21.68c.27.85.55 1.68.85 2.51.06.18.13.36.2.54.27.71.55 1.42.84 2.12.08.21.16.41.25.61.34.79.69 1.58 1.06 2.36l.33.67c.35.7.7 1.4 1.07 2.09a64.34 64.34 0 0 0 22.14 23.81 62.22 62.22 0 0 0 7.62 4.15l.39.18q2.66 1.2 5.43 2.16l.95.32 1.5.47c.45.14.9.26 1.36.39l1.92.5 1.73.4 1.15.23 1.83.33.94.15c.9.13 1.81.25 2.72.35l.77.07c.73.06 1.47.12 2.21.16l.86.05c1 0 1.94.08 2.92.08 1.16 0 2.3 0 3.44-.1l1.08-.08c.78-.06 1.55-.11 2.32-.19l1.25-.16c.7-.09 1.41-.18 2.11-.29l1.26-.23c.68-.12 1.37-.25 2-.39l1.23-.29c.68-.16 1.36-.32 2-.51.39-.1.77-.21 1.16-.33.69-.2 1.38-.41 2.06-.63l1.06-.36c.71-.25 1.41-.51 2.11-.78l.93-.37c.75-.3 1.49-.62 2.22-.95l.75-.34c.81-.38 1.61-.77 2.4-1.19l.49-.24c.92-.5 1.84-1 2.74-1.55h.06A64.52 64.52 0 0 0 480 170.38a63.81 63.81 0 0 0 16-42.33z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m371.38 202.53-105.56 82.1a16 16 0 0 1-19.64 0l-144-112a16 16 0 1 1 19.64-25.26L256 251.73l94.22-73.28A95.86 95.86 0 0 1 348.81 80H88a56.06 56.06 0 0 0-56 56v240a56.06 56.06 0 0 0 56 56h336a56.06 56.06 0 0 0 56-56V211.19a95.85 95.85 0 0 1-108.62-8.66z\"},\"child\":[]}]})(props);\n};\nexport function IoMail (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M424 80H88a56.06 56.06 0 0 0-56 56v240a56.06 56.06 0 0 0 56 56h336a56.06 56.06 0 0 0 56-56V136a56.06 56.06 0 0 0-56-56zm-14.18 92.63-144 112a16 16 0 0 1-19.64 0l-144-112a16 16 0 1 1 19.64-25.26L256 251.73l134.18-104.36a16 16 0 0 1 19.64 25.26z\"},\"child\":[]}]})(props);\n};\nexport function IoMaleFemaleOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"circle\",\"attr\":{\"cx\":\"216\",\"cy\":\"200\",\"r\":\"136\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M216 352v128m56-64H160m272-304V32h-80m-16.72 96.72L432 32\"},\"child\":[]}]})(props);\n};\nexport function IoMaleFemaleSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M330 16v44h42.89l-37.1 37.09A157.67 157.67 0 0 0 216 42c-87.12 0-158 70.88-158 158 0 79.66 59.26 145.72 136 156.46V394h-50v44h50v58h44v-58h50v-44h-50v-37.54c76.74-10.74 136-76.8 136-156.46a157.23 157.23 0 0 0-14-64.93l44-44V134h44V16zM216 314a114 114 0 1 1 114-114 114.13 114.13 0 0 1-114 114z\"},\"child\":[]}]})(props);\n};\nexport function IoMaleFemale (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M426 16h-74a22 22 0 0 0 0 44h20.89l-37.1 37.09A157.68 157.68 0 0 0 216 42c-87.12 0-158 70.88-158 158 0 79.66 59.26 145.72 136 156.46V394h-28a22 22 0 0 0 0 44h28v36a22 22 0 0 0 44 0v-36h28a22 22 0 0 0 0-44h-28v-37.54c76.74-10.74 136-76.8 136-156.46a157.15 157.15 0 0 0-14-64.92l44-44V112a22 22 0 0 0 44 0V38a22 22 0 0 0-22-22zM216 314a114 114 0 1 1 114-114 114.13 114.13 0 0 1-114 114z\"},\"child\":[]}]})(props);\n};\nexport function IoMaleOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"circle\",\"attr\":{\"cx\":\"216\",\"cy\":\"296\",\"r\":\"152\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M448 160V64h-96m-28 124L448 64\"},\"child\":[]}]})(props);\n};\nexport function IoMaleSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M330 48v44h58.89l-60.39 60.39c-68.2-52.86-167-48-229.54 14.57C31.12 234.81 31.12 345.19 99 413a174.21 174.21 0 0 0 246 0c62.57-62.58 67.43-161.34 14.57-229.54L420 123.11V182h44V48zm-16.08 333.92a130.13 130.13 0 0 1-183.84 0c-50.69-50.68-50.69-133.16 0-183.84s133.16-50.69 183.84 0 50.69 133.16 0 183.84z\"},\"child\":[]}]})(props);\n};\nexport function IoMale (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M442 48h-90a22 22 0 0 0 0 44h36.89l-60.39 60.39c-68.19-52.86-167-48-229.54 14.57C31.12 234.81 31.12 345.19 99 413a174.21 174.21 0 0 0 246 0c62.57-62.58 67.43-161.35 14.57-229.54L420 123.11V160a22 22 0 0 0 44 0V70a22 22 0 0 0-22-22zM313.92 381.92a130.13 130.13 0 0 1-183.84 0c-50.69-50.68-50.69-133.16 0-183.84s133.16-50.69 183.84 0 50.69 133.16 0 183.84z\"},\"child\":[]}]})(props);\n};\nexport function IoManOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M208 208v264a23.73 23.73 0 0 0 24 24h0a23.73 23.73 0 0 0 24-24\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M256 336v136a23.73 23.73 0 0 0 24 24h0a23.73 23.73 0 0 0 24-24V208\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M208 192v88a23.72 23.72 0 0 1-24 24h0a23.72 23.72 0 0 1-24-24v-88a48 48 0 0 1 48-48h96a48 48 0 0 1 48 48v88a23.72 23.72 0 0 1-24 24h0a23.72 23.72 0 0 1-24-24v-88\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"56\",\"r\":\"40\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\"},\"child\":[]}]})(props);\n};\nexport function IoManSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"56\",\"r\":\"56\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M336 128H176a32 32 0 0 0-32 32v160h48V192h8v320h52V328h8v184h52V192h8v128h48V160a32 32 0 0 0-32-32z\"},\"child\":[]}]})(props);\n};\nexport function IoMan (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"56\",\"r\":\"56\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M304 128h-96a64.19 64.19 0 0 0-64 64v107.52c0 10.85 8.43 20.08 19.27 20.47A20 20 0 0 0 184 300v-99.73a8.18 8.18 0 0 1 7.47-8.25 8 8 0 0 1 8.53 8V489a23 23 0 0 0 23 23 23 23 0 0 0 23-23V346.34a10.24 10.24 0 0 1 9.33-10.34A10 10 0 0 1 266 346v143a23 23 0 0 0 23 23 23 23 0 0 0 23-23V200.27a8.18 8.18 0 0 1 7.47-8.25 8 8 0 0 1 8.53 8v99.52c0 10.85 8.43 20.08 19.27 20.47A20 20 0 0 0 368 300V192a64.19 64.19 0 0 0-64-64z\"},\"child\":[]}]})(props);\n};\nexport function IoMapOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M313.27 124.64 198.73 51.36a32 32 0 0 0-29.28.35L56.51 127.49A16 16 0 0 0 48 141.63v295.8a16 16 0 0 0 23.49 14.14l97.82-63.79a32 32 0 0 1 29.5-.24l111.86 73a32 32 0 0 0 29.27-.11l115.43-75.94a16 16 0 0 0 8.63-14.2V74.57a16 16 0 0 0-23.49-14.14l-98 63.86a32 32 0 0 1-29.24.35zM328 128v336M184 48v336\"},\"child\":[]}]})(props);\n};\nexport function IoMapSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M327.71 130.93 184 39 32 144v336l152.29-98.93L328 473l152-105V32zM312 421l-112-72V91l112 72z\"},\"child\":[]}]})(props);\n};\nexport function IoMap (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M48.17 113.34A32 32 0 0 0 32 141.24V438a32 32 0 0 0 47 28.37c.43-.23.85-.47 1.26-.74l84.14-55.05a8 8 0 0 0 3.63-6.72V46.45a8 8 0 0 0-12.51-6.63zm164.19-74.03A8 8 0 0 0 200 46v357.56a8 8 0 0 0 3.63 6.72l96 62.42A8 8 0 0 0 312 466V108.67a8 8 0 0 0-3.64-6.73zm252.17 7.16a31.64 31.64 0 0 0-31.5-.88 12.07 12.07 0 0 0-1.25.74l-84.15 55a8 8 0 0 0-3.63 6.72v357.46a8 8 0 0 0 12.52 6.63l107.07-73.46a32 32 0 0 0 16.41-28v-296a32.76 32.76 0 0 0-15.47-28.21z\"},\"child\":[]}]})(props);\n};\nexport function IoMedalOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"352\",\"r\":\"112\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"352\",\"r\":\"48\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M147 323 41.84 159.32a32 32 0 0 1-1.7-31.61l31-62A32 32 0 0 1 99.78 48h312.44a32 32 0 0 1 28.62 17.69l31 62a32 32 0 0 1-1.7 31.61L365 323m6-179H37m391.74-91.4L305 250M140.55 144 207 250\"},\"child\":[]}]})(props);\n};\nexport function IoMedalSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M80 32 16 160h289.11l80.22-128H80z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M496 144 424 32 298 231.08a128 128 0 0 0-84 0L189.53 192H43.82l86.66 134.89a128 128 0 1 0 251 0zM256 422a70 70 0 1 1 70-70 70.08 70.08 0 0 1-70 70z\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"352\",\"r\":\"32\"},\"child\":[]}]})(props);\n};\nexport function IoMedal (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"352\",\"r\":\"32\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M99.78 32a48 48 0 0 0-42.94 26.53l-31 62A48.26 48.26 0 0 0 24.28 160h278.2a4 4 0 0 0 3.39-1.87l75.5-120A4 4 0 0 0 378 32z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m486.17 120.56-31-62a47.7 47.7 0 0 0-32.79-25.46L342.5 160 298 231.08a128 128 0 0 0-84 0l-23.32-37.2a4 4 0 0 0-3.39-1.88H51.14a4 4 0 0 0-3.36 6.16l82.7 128.73a128 128 0 1 0 251 0L483.62 168a48.22 48.22 0 0 0 2.55-47.44zm-226 295.31a64 64 0 1 1 59.69-59.69 64.08 64.08 0 0 1-59.68 59.69z\"},\"child\":[]}]})(props);\n};\nexport function IoMedicalOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"m429.93 174.27-16.47-28.59a15.49 15.49 0 0 0-21.15-5.7l-98.39 57a4 4 0 0 1-6-3.5L288 80a16 16 0 0 0-16-16h-32a16 16 0 0 0-16 16l.07 113.57a4 4 0 0 1-6 3.5l-98.39-57a15.49 15.49 0 0 0-21.15 5.7l-16.46 28.6a15.42 15.42 0 0 0 5.69 21.1l98.49 57.08a4 4 0 0 1 0 6.9l-98.49 57.08a15.54 15.54 0 0 0-5.69 21.1l16.47 28.59a15.49 15.49 0 0 0 21.15 5.7l98.39-57a4 4 0 0 1 6 3.5L224 432a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16l-.07-113.67a4 4 0 0 1 6-3.5l98.39 57a15.49 15.49 0 0 0 21.15-5.7l16.47-28.59a15.42 15.42 0 0 0-5.69-21.1l-98.49-57.08a4 4 0 0 1 0-6.9l98.49-57.08a15.51 15.51 0 0 0 5.68-21.11z\"},\"child\":[]}]})(props);\n};\nexport function IoMedicalSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M351.9 256 460 193.6l-48-83.2-108 62.4V48h-96v124.8l-108-62.4-48 83.2L160.1 256 52 318.4l48 83.2 108-62.4V464h96V339.2l108 62.4 48-83.2L351.9 256z\"},\"child\":[]}]})(props);\n};\nexport function IoMedical (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M272 464h-32a32 32 0 0 1-32-32l.05-85.82a4 4 0 0 0-6-3.47l-74.34 43.06a31.48 31.48 0 0 1-43-11.52l-16.5-28.64-.06-.1a31.65 31.65 0 0 1 11.56-42.8l74.61-43.25a4 4 0 0 0 0-6.92l-74.54-43.21a31.41 31.41 0 0 1-11.55-43l16.44-28.55a31.48 31.48 0 0 1 19.27-14.74 31.14 31.14 0 0 1 23.8 3.2l74.31 43a4 4 0 0 0 6-3.47L208 80a32 32 0 0 1 32-32h32a32 32 0 0 1 32 32v85.72a4 4 0 0 0 6 3.47l74.34-43.06a31.51 31.51 0 0 1 43 11.52l16.49 28.64.06.09a31.52 31.52 0 0 1-11.64 42.86l-74.53 43.2a4 4 0 0 0 0 6.92l74.53 43.2a31.42 31.42 0 0 1 11.56 43l-16.44 28.55a31.48 31.48 0 0 1-19.27 14.74 31.14 31.14 0 0 1-23.8-3.2l-74.31-43a4 4 0 0 0-6 3.46L304 432a32 32 0 0 1-32 32zm-93.56-197.48zm0-21zm155.1-.08zm0 0z\"},\"child\":[]}]})(props);\n};\nexport function IoMedkitOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"rect\",\"attr\":{\"width\":\"448\",\"height\":\"352\",\"x\":\"32\",\"y\":\"112\",\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"rx\":\"48\",\"ry\":\"48\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M144 112V80a32 32 0 0 1 32-32h160a32 32 0 0 1 32 32v32m-112 96v160m80-80H176\"},\"child\":[]}]})(props);\n};\nexport function IoMedkitSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"d\":\"M168 72h176v24H168z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M484 96H384V40a8 8 0 0 0-8-8H136a8 8 0 0 0-8 8v56H28a12 12 0 0 0-12 12v360a12 12 0 0 0 12 12h456a12 12 0 0 0 12-12V108a12 12 0 0 0-12-12zM168 72h176v24H168zm184 238h-74v74h-44v-74h-74v-44h74v-74h44v74h74z\"},\"child\":[]}]})(props);\n};\nexport function IoMedkit (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"d\":\"M336 64H176a16 16 0 0 0-16 16v16h192V80a16 16 0 0 0-16-16z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M432 96h-48V80a48.05 48.05 0 0 0-48-48H176a48.05 48.05 0 0 0-48 48v16H80a64.07 64.07 0 0 0-64 64v256a64 64 0 0 0 64 64h352a64 64 0 0 0 64-64V160a64.07 64.07 0 0 0-64-64zm-96 208h-64v64a16 16 0 0 1-32 0v-64h-64a16 16 0 0 1 0-32h64v-64a16 16 0 0 1 32 0v64h64a16 16 0 0 1 0 32zm16-208H160V80a16 16 0 0 1 16-16h160a16 16 0 0 1 16 16z\"},\"child\":[]}]})(props);\n};\nexport function IoMegaphoneOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M407.94 52.22S321.3 160 240 160H80a16 16 0 0 0-16 16v96a16 16 0 0 0 16 16h160c81.3 0 167.94 108.23 167.94 108.23 6.06 8 24.06 2.52 24.06-9.83V62c0-12.31-17-18.82-24.06-9.78zM64 256s-16-6-16-32 16-32 16-32m384 54s16-4.33 16-22-16-22-16-22m-192-42v128M112 160v128\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M144 288v168a8 8 0 0 0 8 8h53a16 16 0 0 0 15.29-20.73C211.91 416.39 192 386.08 192 336h16a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16h-16\"},\"child\":[]}]})(props);\n};\nexport function IoMegaphoneSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M128 144v332a4 4 0 0 0 4 4h100.07a8 8 0 0 0 7.82-9.7L208.71 352H232a8 8 0 0 0 8-8V144zm324.18 42.55L448 185.5V36a4 4 0 0 0-4-4h-42.5a4 4 0 0 0-2.63 1L272 144v160l126.87 111a4 4 0 0 0 2.63 1H444a4 4 0 0 0 4-4V262.5l4.18-1.05C461.8 258.84 480 247.67 480 224s-18.2-34.84-27.82-37.45zM96 144H52a4 4 0 0 0-4 4v35.59a43 43 0 0 0-4.24 4.35C38.4 194.32 32 205.74 32 224c0 20.19 7.89 33.13 16 40.42V300a4 4 0 0 0 4 4h44z\"},\"child\":[]}]})(props);\n};\nexport function IoMegaphone (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M48 176v.66a17.38 17.38 0 0 1-4.2 11.23v.05C38.4 194.32 32 205.74 32 224c0 16.55 5.3 28.23 11.68 35.91A19 19 0 0 1 48 272a32 32 0 0 0 32 32h8a8 8 0 0 0 8-8V152a8 8 0 0 0-8-8h-8a32 32 0 0 0-32 32zm404.18 10.55-.93-.17a4 4 0 0 1-3.25-3.93V62c0-12.64-8.39-24-20.89-28.32-11.92-4.11-24.34-.76-31.68 8.53a431.18 431.18 0 0 1-51.31 51.69c-23.63 20-46.24 34.25-67 42.31a8 8 0 0 0-5.15 7.47V299a16 16 0 0 0 9.69 14.69c19.34 8.29 40.24 21.83 62 40.28a433.74 433.74 0 0 1 51.68 52.16 26.22 26.22 0 0 0 21.1 9.87 33.07 33.07 0 0 0 10.44-1.74C439.71 410 448 399.05 448 386.4V265.53a4 4 0 0 1 3.33-3.94l.85-.14C461.8 258.84 480 247.67 480 224s-18.2-34.84-27.82-37.45zM240 320V152a8 8 0 0 0-8-8h-96a8 8 0 0 0-8 8v304a24 24 0 0 0 24 24h52.45a32.66 32.66 0 0 0 25.93-12.45 31.65 31.65 0 0 0 5.21-29.05c-1.62-5.18-3.63-11-5.77-17.19-7.91-22.9-18.34-37.07-21.12-69.32A32 32 0 0 0 240 320z\"},\"child\":[]}]})(props);\n};\nexport function IoMenuOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M80 160h352M80 256h352M80 352h352\"},\"child\":[]}]})(props);\n};\nexport function IoMenuSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M64 384h384v-42.67H64zm0-106.67h384v-42.66H64zM64 128v42.67h384V128z\"},\"child\":[]}]})(props);\n};\nexport function IoMenu (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"48\",\"d\":\"M88 152h336M88 256h336M88 360h336\"},\"child\":[]}]})(props);\n};\nexport function IoMicCircleOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M448 256c0-106-86-192-192-192S64 150 64 256s86 192 192 192 192-86 192-192z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M224 368h64m48-143.7v23.92c0 39.42-40.58 71.48-80 71.48h0c-39.42 0-80-32.06-80-71.48V224.3m80 95.7v48\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"96\",\"height\":\"160\",\"x\":\"208\",\"y\":\"128\",\"rx\":\"48\",\"ry\":\"48\"},\"child\":[]}]})(props);\n};\nexport function IoMicCircleSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 48C141.31 48 48 141.31 48 256s93.31 208 208 208 208-93.31 208-208S370.69 48 256 48zm-48 128a48.14 48.14 0 0 1 48-48 48.14 48.14 0 0 1 48 48v64a48.14 48.14 0 0 1-48 48 48.14 48.14 0 0 1-48-48zm144 72.22c0 23.36-10.94 45.61-30.79 62.66A103.71 103.71 0 0 1 272 334.26V352h32v32h-96v-32h32v-17.74a103.71 103.71 0 0 1-49.21-23.38c-19.85-17.05-30.79-39.3-30.79-62.66V208.3h32v39.92c0 25.66 28 55.48 64 55.48 29.6 0 64-24.23 64-55.48V208.3h32z\"},\"child\":[]}]})(props);\n};\nexport function IoMicCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 48C141.31 48 48 141.31 48 256s93.31 208 208 208 208-93.31 208-208S370.69 48 256 48zm-48 128a48.14 48.14 0 0 1 48-48 48.14 48.14 0 0 1 48 48v64a48.14 48.14 0 0 1-48 48 48.14 48.14 0 0 1-48-48zm144 72.22c0 23.36-10.94 45.61-30.79 62.66A103.71 103.71 0 0 1 272 334.26V352h16a16 16 0 0 1 0 32h-64a16 16 0 0 1 0-32h16v-17.74a103.71 103.71 0 0 1-49.21-23.38c-19.85-17.05-30.79-39.3-30.79-62.66V224.3a16 16 0 0 1 32 0v23.92c0 25.66 28 55.48 64 55.48 29.6 0 64-24.23 64-55.48V224.3a16 16 0 1 1 32 0z\"},\"child\":[]}]})(props);\n};\nexport function IoMicOffCircleOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 464c-114.69 0-208-93.31-208-208S141.31 48 256 48s208 93.31 208 208-93.31 208-208 208zm0-384c-97 0-176 79-176 176s79 176 176 176 176-78.95 176-176S353.05 80 256 80z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M352 369a15.93 15.93 0 0 1-11.84-5.24l-192-210a16 16 0 0 1 23.68-21.52l192 210A16 16 0 0 1 352 369zm0-120.78v-23.8a16.3 16.3 0 0 0-13.64-16.24c-9.88-1.48-18.36 6.51-18.36 16.12v23.92a43.35 43.35 0 0 1-3.07 15.91 4 4 0 0 0 .76 4.16l19.19 21.1a2 2 0 0 0 3.19-.3A77.12 77.12 0 0 0 352 248.22zM304 240v-64a48.14 48.14 0 0 0-48-48 48.08 48.08 0 0 0-41 23.1 4 4 0 0 0 .47 4.77l84.42 92.86a2 2 0 0 0 3.46-1A47.84 47.84 0 0 0 304 240zm-57.43 45.2-36.46-40.11a1 1 0 0 0-1.74.8 48.26 48.26 0 0 0 37.25 41 1 1 0 0 0 .95-1.69z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M287.55 352H272v-17.74a100.33 100.33 0 0 0 12.53-3.06 2 2 0 0 0 .89-3.26l-21.07-23.19a3.94 3.94 0 0 0-3.29-1.29c-1.69.15-3.39.24-5.06.24-36 0-64-29.82-64-55.48V224.4a16.26 16.26 0 0 0-15.61-16.4A15.91 15.91 0 0 0 160 224v24.22c0 23.36 10.94 45.61 30.79 62.66A103.71 103.71 0 0 0 240 334.26V352h-15.55c-8.61 0-16 6.62-16.43 15.23A16 16 0 0 0 224 384h64a16 16 0 0 0 16-16.77c-.42-8.61-7.84-15.23-16.45-15.23z\"},\"child\":[]}]})(props);\n};\nexport function IoMicOffCircleSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 48C141.31 48 48 141.31 48 256s93.31 208 208 208 208-93.31 208-208S370.69 48 256 48zm64 200.22V208h32v40.22a77.53 77.53 0 0 1-13.37 43.11L316 266.4a44.11 44.11 0 0 0 4-18.18zM256 128a48.14 48.14 0 0 1 48 48v64a48.07 48.07 0 0 1-1.44 11.64l-89-97.92A48.13 48.13 0 0 1 256 128zm48 256h-96v-32h32v-17.74a103.71 103.71 0 0 1-49.21-23.38c-19.85-17.05-30.79-39.3-30.79-62.66V208h32v40.22c0 25.66 28 55.48 64 55.48a56.91 56.91 0 0 0 7-.45l24.52 27a99.57 99.57 0 0 1-15.5 4V352h32zm-95.91-141.13 40.5 44.55a48.2 48.2 0 0 1-40.5-44.55zm136.07 124.89-200.5-218.5 23.68-21.52 200.5 218.5z\"},\"child\":[]}]})(props);\n};\nexport function IoMicOffCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 48C141.31 48 48 141.31 48 256s93.31 208 208 208 208-93.31 208-208S370.69 48 256 48zm0 80a48.14 48.14 0 0 1 48 48v64a47.84 47.84 0 0 1-.63 7.71 2 2 0 0 1-3.46 1l-84.42-92.86a4 4 0 0 1-.47-4.77A48.08 48.08 0 0 1 256 128zm32 256h-63.55c-8.61 0-16-6.62-16.43-15.23A16 16 0 0 1 224 352h16v-17.74a103.71 103.71 0 0 1-49.21-23.38c-19.85-17.05-30.79-39.3-30.79-62.66V224a15.91 15.91 0 0 1 16.39-16A16.26 16.26 0 0 1 192 224.4v23.82c0 25.66 28 55.48 64 55.48 1.67 0 3.37-.09 5.06-.24a3.94 3.94 0 0 1 3.29 1.29l21.07 23.19a2 2 0 0 1-.89 3.26 100.33 100.33 0 0 1-12.53 3.06V352h15.55c8.61 0 16 6.62 16.43 15.23A16 16 0 0 1 288 384zm-77.89-138.91 36.46 40.11a1 1 0 0 1-.95 1.66 48.26 48.26 0 0 1-37.25-41 1 1 0 0 1 1.74-.77zm152.65 119.75a16 16 0 0 1-22.6-1.08l-192-210a16 16 0 0 1 23.68-21.52l192 210a16 16 0 0 1-1.08 22.6zM352 248.22a77.12 77.12 0 0 1-11.93 40.87 2 2 0 0 1-3.19.3l-19.19-21.1a4 4 0 0 1-.76-4.16 43.35 43.35 0 0 0 3.07-15.91v-23.8a16.3 16.3 0 0 1 13.64-16.24c9.88-1.48 18.36 6.51 18.36 16.12z\"},\"child\":[]}]})(props);\n};\nexport function IoMicOffOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M432 400 96 64\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M400 240v-31.55c0-8.61-6.62-16-15.23-16.43A16 16 0 0 0 368 208v32a111.58 111.58 0 0 1-2.45 23.31 4.05 4.05 0 0 0 1.07 3.69l21.82 21.81a2 2 0 0 0 3.29-.72A143.27 143.27 0 0 0 400 240zM256 352a112.36 112.36 0 0 1-112-112v-31.55c0-8.61-6.62-16-15.23-16.43A16 16 0 0 0 112 208v32c0 74 56.1 135.12 128 143.11V432h-47.55c-8.61 0-16 6.62-16.43 15.23A16 16 0 0 0 192 464h127.55c8.61 0 16-6.62 16.43-15.23A16 16 0 0 0 320 432h-48v-48.89a143.08 143.08 0 0 0 52-16.22 4 4 0 0 0 .91-6.35L307 342.63a4 4 0 0 0-4.51-.78A110.78 110.78 0 0 1 256 352zm0-272a47.18 47.18 0 0 1 48 48v74.72a4 4 0 0 0 1.17 2.82L332.59 233a2 2 0 0 0 3.41-1.42V128.91C336 85 301 48.6 257.14 48a79.66 79.66 0 0 0-68.47 36.57 4 4 0 0 0 .54 5l19.54 19.54a2 2 0 0 0 3.25-.63A47.44 47.44 0 0 1 256 80z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M207.27 242.9 179.41 215a2 2 0 0 0-3.41 1.42V239a80.89 80.89 0 0 0 23.45 56.9 78.55 78.55 0 0 0 77.8 21.19 2 2 0 0 0 .86-3.35l-24.91-24.91a4.08 4.08 0 0 0-2.42-1.15c-21.65-2.52-39.48-20.44-42.37-42.43a4 4 0 0 0-1.14-2.35z\"},\"child\":[]}]})(props);\n};\nexport function IoMicOffSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"square\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M432 400 96 64\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M368 192v48a111.74 111.74 0 0 1-2.93 25.45L390.65 291a143.07 143.07 0 0 0 9.35-51v-48zm-96 240v-48.89a143.11 143.11 0 0 0 56.65-18.83L305 340.65A112.13 112.13 0 0 1 144 240v-48h-32v48c0 74 56.1 135.12 128 143.11V432h-64v32h160v-32zm64-195.63V128c0-44.86-35.14-80-80-80a79.68 79.68 0 0 0-69 39.34\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M176 211.63V239a80.89 80.89 0 0 0 23.45 56.9 78.55 78.55 0 0 0 81 20.21z\"},\"child\":[]}]})(props);\n};\nexport function IoMicOff (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M432 400 96 64\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M400 240v-31.55c0-8.61-6.62-16-15.23-16.43A16 16 0 0 0 368 208v32a111.68 111.68 0 0 1-2.68 24.38 2 2 0 0 0 .53 1.84l22.59 22.59a2 2 0 0 0 3.29-.72A143.27 143.27 0 0 0 400 240zM256 352a112.36 112.36 0 0 1-112-112v-31.55c0-8.61-6.62-16-15.23-16.43A16 16 0 0 0 112 208v32c0 74 56.1 135.12 128 143.11V432h-47.55c-8.61 0-16 6.62-16.43 15.23A16 16 0 0 0 192 464h127.55c8.61 0 16-6.62 16.43-15.23A16 16 0 0 0 320 432h-48v-48.89a143.08 143.08 0 0 0 52-16.22 4 4 0 0 0 .91-6.35l-18.4-18.39a3 3 0 0 0-3.41-.58A111 111 0 0 1 256 352zm1.14-304a79.66 79.66 0 0 0-68.47 36.57 4 4 0 0 0 .54 5L332.59 233a2 2 0 0 0 3.41-1.42V128.91C336 85 301 48.6 257.14 48z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M179.41 215a2 2 0 0 0-3.41 1.42V239a80.89 80.89 0 0 0 23.45 56.9 78.55 78.55 0 0 0 77.8 21.19 2 2 0 0 0 .86-3.35z\"},\"child\":[]}]})(props);\n};\nexport function IoMicOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M192 448h128m64-240v32c0 70.4-57.6 128-128 128h0c-70.4 0-128-57.6-128-128v-32m128 160v80\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M256 64a63.68 63.68 0 0 0-64 64v111c0 35.2 29 65 64 65s64-29 64-65V128c0-36-28-64-64-64z\"},\"child\":[]}]})(props);\n};\nexport function IoMicSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"square\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M192 448h128m64-240v32c0 70.4-57.6 128-128 128h0c-70.4 0-128-57.6-128-128v-32m128 160v80\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M256 320a78.83 78.83 0 0 1-56.55-24.1A80.89 80.89 0 0 1 176 239V128a79.69 79.69 0 0 1 80-80c44.86 0 80 35.14 80 80v111c0 44.66-35.89 81-80 81z\"},\"child\":[]}]})(props);\n};\nexport function IoMic (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M192 448h128m64-240v32c0 70.4-57.6 128-128 128h0c-70.4 0-128-57.6-128-128v-32m128 160v80\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M256 320a78.83 78.83 0 0 1-56.55-24.1A80.89 80.89 0 0 1 176 239V128a79.69 79.69 0 0 1 80-80c44.86 0 80 35.14 80 80v111c0 44.66-35.89 81-80 81z\"},\"child\":[]}]})(props);\n};\nexport function IoMoonOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M160 136c0-30.62 4.51-61.61 16-88C99.57 81.27 48 159.32 48 248c0 119.29 96.71 216 216 216 88.68 0 166.73-51.57 200-128-26.39 11.49-57.38 16-88 16-119.29 0-216-96.71-216-216z\"},\"child\":[]}]})(props);\n};\nexport function IoMoonSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M152.62 126.77c0-33 4.85-66.35 17.23-94.77C87.54 67.83 32 151.89 32 247.38 32 375.85 136.15 480 264.62 480c95.49 0 179.55-55.54 215.38-137.85-28.42 12.38-61.8 17.23-94.77 17.23-128.47 0-232.61-104.14-232.61-232.61z\"},\"child\":[]}]})(props);\n};\nexport function IoMoon (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M264 480A232 232 0 0 1 32 248c0-94 54-178.28 137.61-214.67a16 16 0 0 1 21.06 21.06C181.07 76.43 176 104.66 176 136c0 110.28 89.72 200 200 200 31.34 0 59.57-5.07 81.61-14.67a16 16 0 0 1 21.06 21.06C442.28 426 358 480 264 480z\"},\"child\":[]}]})(props);\n};\nexport function IoMoveOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"m176 112 80-80 80 80m-80.02-80 .02 448m-80-80 80 80 80-80m64-224 80 80-80 80M112 176l-80 80 80 80m-80-80h448\"},\"child\":[]}]})(props);\n};\nexport function IoMoveSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"m176 112 80-80 80 80m-80.02-80 .02 448m-80-80 80 80 80-80m64-224 80 80-80 80M112 176l-80 80 80 80m-80-80h448\"},\"child\":[]}]})(props);\n};\nexport function IoMove (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"m176 112 80-80 80 80m-80.02-80 .02 448m-80-80 80 80 80-80m64-224 80 80-80 80M112 176l-80 80 80 80m-80-80h448\"},\"child\":[]}]})(props);\n};\nexport function IoMusicalNoteOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M240 343.31V424a32.28 32.28 0 0 1-21.88 30.65l-21.47 7.23c-25.9 8.71-52.65-10.75-52.65-38.32h0A34.29 34.29 0 0 1 167.25 391l50.87-17.12A32.29 32.29 0 0 0 240 343.24V92a16.13 16.13 0 0 1 12.06-15.66L360.49 48.2A6 6 0 0 1 368 54v57.76a16.13 16.13 0 0 1-12.12 15.67l-91.64 23.13A32.25 32.25 0 0 0 240 181.91v39.39\"},\"child\":[]}]})(props);\n};\nexport function IoMusicalNoteSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M381.55 32.05c-18.13 4.28-126.57 31.07-156 38.19a2 2 0 0 0-1.55 1.94V353.3a2 2 0 0 1-1.32 1.88L182 369.88c-29.82 10.66-54 18.94-54 59.06 0 32.47 23.53 47.18 37.95 50a81.77 81.77 0 0 0 15 1.08c8.89 0 31-3.59 47.52-14.24C256 448 256 448 256 415.93V169.16a2 2 0 0 1 1.49-1.94l125-33a2 2 0 0 0 1.49-1.94V34a2 2 0 0 0-2.43-1.95z\"},\"child\":[]}]})(props);\n};\nexport function IoMusicalNote (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M183.83 480a55.2 55.2 0 0 1-32.36-10.55A56.64 56.64 0 0 1 128 423.58a50.26 50.26 0 0 1 34.14-47.73L213 358.73a16.25 16.25 0 0 0 11-15.49V92a32.1 32.1 0 0 1 24.09-31.15l108.39-28.14A22 22 0 0 1 384 54v57.75a32.09 32.09 0 0 1-24.2 31.19l-91.65 23.13A16.24 16.24 0 0 0 256 181.91V424a48.22 48.22 0 0 1-32.78 45.81l-21.47 7.23a56 56 0 0 1-17.92 2.96z\"},\"child\":[]}]})(props);\n};\nexport function IoMusicalNotesOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M192 218v-6c0-14.84 10-27 24.24-30.59l174.59-46.68A20 20 0 0 1 416 154v22\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M416 295.94v80c0 13.91-8.93 25.59-22 30l-22 8c-25.9 8.72-52-10.42-52-38h0a33.37 33.37 0 0 1 23-32l51-18.15c13.07-4.4 22-15.94 22-29.85V58a10 10 0 0 0-12.6-9.61L204 102a16.48 16.48 0 0 0-12 16v226c0 13.91-8.93 25.6-22 30l-52 18c-13.88 4.68-22 17.22-22 32h0c0 27.58 26.52 46.55 52 38l22-8c13.07-4.4 22-16.08 22-30v-80\"},\"child\":[]}]})(props);\n};\nexport function IoMusicalNotesSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M429.46 32.07c-23.6 6.53-205.55 58.81-250.54 71.43a4 4 0 0 0-2.92 3.83v247a2 2 0 0 1-1.33 1.89l-27.85 9.55c-19 7.44-66.82 16.68-66.82 59.19 0 35.54 24.63 51.54 45.86 54.28a52.06 52.06 0 0 0 7.81.8c7.37 0 36.38-7.08 53.3-18.08C208 448.25 208 448 208 412V202c0-.9.62-.84 1.48-1.07l188-51.92a2 2 0 0 1 2.53 2v155.54a2 2 0 0 1-1.36 1.89c-8.9 3-19.23 6.5-26.48 9.12C341.39 328.68 304 335.65 304 376c0 38.51 28.26 54.58 46.3 55.83a87.37 87.37 0 0 0 21.33-1c9-1.38 24.09-5.9 38.14-14.86C432 401.79 432 401.51 432 360V34a2 2 0 0 0-2.54-1.93z\"},\"child\":[]}]})(props);\n};\nexport function IoMusicalNotes (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M421.84 37.37a25.86 25.86 0 0 0-22.6-4.46L199.92 86.49A32.3 32.3 0 0 0 176 118v226c0 6.74-4.36 12.56-11.11 14.83l-.12.05-52 18C92.88 383.53 80 402 80 423.91a55.54 55.54 0 0 0 23.23 45.63A54.78 54.78 0 0 0 135.34 480a55.82 55.82 0 0 0 17.75-2.93l.38-.13 21.84-7.94A47.84 47.84 0 0 0 208 423.91v-212c0-7.29 4.77-13.21 12.16-15.07l.21-.06L395 150.14a4 4 0 0 1 5 3.86v141.93c0 6.75-4.25 12.38-11.11 14.68l-.25.09-50.89 18.11A49.09 49.09 0 0 0 304 375.92a55.67 55.67 0 0 0 23.23 45.8 54.63 54.63 0 0 0 49.88 7.35l.36-.12 21.84-7.95A47.83 47.83 0 0 0 432 375.92V58a25.74 25.74 0 0 0-10.16-20.63z\"},\"child\":[]}]})(props);\n};\nexport function IoNavigateCircleOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m336.76 161-186.53 82.35c-10.47 4.8-6.95 20.67 4.57 20.67H244a4 4 0 0 1 4 4v89.18c0 11.52 16 15 20.78 4.56L351 175.24A10.73 10.73 0 0 0 336.76 161z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M448 256c0-106-86-192-192-192S64 150 64 256s86 192 192 192 192-86 192-192z\"},\"child\":[]}]})(props);\n};\nexport function IoNavigateCircleSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 48A208.23 208.23 0 0 0 48 256c0 114.68 93.31 208 208 208a208.23 208.23 0 0 0 208-208c0-114.69-93.31-208-208-208zm-8 361V264H103l259-114.11z\"},\"child\":[]}]})(props);\n};\nexport function IoNavigateCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M258.9 48C141.92 46.42 46.42 141.92 48 258.9c1.56 112.19 92.91 203.54 205.1 205.1 117 1.6 212.48-93.9 210.88-210.88C462.44 140.91 371.09 49.56 258.9 48zM351 175.24l-82.24 186.52c-4.79 10.47-20.78 7-20.78-4.56V268a4 4 0 0 0-4-4H154.8c-11.52 0-15-15.87-4.57-20.67L336.76 161A10.73 10.73 0 0 1 351 175.24z\"},\"child\":[]}]})(props);\n};\nexport function IoNavigateOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M448 64 64 240.14h200a8 8 0 0 1 8 8V448z\"},\"child\":[]}]})(props);\n};\nexport function IoNavigateSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M480 32 32 240h240v240L480 32z\"},\"child\":[]}]})(props);\n};\nexport function IoNavigate (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M272 464a16 16 0 0 1-16-16.42V264.13a8 8 0 0 0-8-8H64.41a16.31 16.31 0 0 1-15.49-10.65 16 16 0 0 1 8.41-19.87l384-176.15a16 16 0 0 1 21.22 21.19l-176 384A16 16 0 0 1 272 464z\"},\"child\":[]}]})(props);\n};\nexport function IoNewspaperOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M368 415.86V72a24.07 24.07 0 0 0-24-24H72a24.07 24.07 0 0 0-24 24v352a40.12 40.12 0 0 0 40 40h328\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M416 464a48 48 0 0 1-48-48V128h72a24 24 0 0 1 24 24v264a48 48 0 0 1-48 48z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M240 128h64m-64 64h64m-192 64h192m-192 64h192m-192 64h192\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M176 208h-64a16 16 0 0 1-16-16v-64a16 16 0 0 1 16-16h64a16 16 0 0 1 16 16v64a16 16 0 0 1-16 16z\"},\"child\":[]}]})(props);\n};\nexport function IoNewspaperSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"rect\",\"attr\":{\"width\":\"96\",\"height\":\"96\",\"x\":\"96\",\"y\":\"112\",\"fill\":\"none\",\"rx\":\"16\",\"ry\":\"16\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M468 112h-52v304a32 32 0 0 0 32 32 32 32 0 0 0 32-32V124a12 12 0 0 0-12-12z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M431.15 477.75A64.11 64.11 0 0 1 384 416V44a12 12 0 0 0-12-12H44a12 12 0 0 0-12 12v380a56 56 0 0 0 56 56h342.85a1.14 1.14 0 0 0 .3-2.25zM96 208v-96h96v96zm224 192H96v-32h224zm0-64H96v-32h224zm0-64H96v-32h224zm0-64h-96v-32h96zm0-64h-96v-32h96z\"},\"child\":[]}]})(props);\n};\nexport function IoNewspaper (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M439.91 112h-23.82a.09.09 0 0 0-.09.09V416a32 32 0 0 0 32 32 32 32 0 0 0 32-32V152.09A40.09 40.09 0 0 0 439.91 112z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M384 416V72a40 40 0 0 0-40-40H72a40 40 0 0 0-40 40v352a56 56 0 0 0 56 56h342.85a1.14 1.14 0 0 0 1.15-1.15 1.14 1.14 0 0 0-.85-1.1A64.11 64.11 0 0 1 384 416zM96 128a16 16 0 0 1 16-16h64a16 16 0 0 1 16 16v64a16 16 0 0 1-16 16h-64a16 16 0 0 1-16-16zm208 272H112.45c-8.61 0-16-6.62-16.43-15.23A16 16 0 0 1 112 368h191.55c8.61 0 16 6.62 16.43 15.23A16 16 0 0 1 304 400zm0-64H112.45c-8.61 0-16-6.62-16.43-15.23A16 16 0 0 1 112 304h191.55c8.61 0 16 6.62 16.43 15.23A16 16 0 0 1 304 336zm0-64H112.45c-8.61 0-16-6.62-16.43-15.23A16 16 0 0 1 112 240h191.55c8.61 0 16 6.62 16.43 15.23A16 16 0 0 1 304 272zm0-64h-63.55c-8.61 0-16-6.62-16.43-15.23A16 16 0 0 1 240 176h63.55c8.61 0 16 6.62 16.43 15.23A16 16 0 0 1 304 208zm0-64h-63.55c-8.61 0-16-6.62-16.43-15.23A16 16 0 0 1 240 112h63.55c8.61 0 16 6.62 16.43 15.23A16 16 0 0 1 304 144z\"},\"child\":[]}]})(props);\n};\nexport function IoNotificationsCircleOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M448 256c0-106-86-192-192-192S64 150 64 256s86 192 192 192 192-86 192-192z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M365.2 313c-16.33-19.34-27.86-27.47-27.86-80.8 0-48.86-25.78-66.23-47-74.67a11.39 11.39 0 0 1-6.34-6.68C280.29 138.6 269.88 128 256 128s-24.31 10.6-28 22.86a11.35 11.35 0 0 1-6.33 6.68c-21.24 8.46-47 25.8-47 74.67 0 53.33-11.54 61.46-27.87 80.8-6.77 8-.65 23 11.19 23H354C365.77 336 371.94 321 365.2 313zm-144.96 39a4 4 0 0 0-4 4.42C218.49 375.14 235.11 384 256 384c20.67 0 37.14-9.15 39.66-27.52a4 4 0 0 0-4-4.48z\"},\"child\":[]}]})(props);\n};\nexport function IoNotificationsCircleSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M295.68 351.43v.57h.32z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"d\":\"M256 384c22.28 0 39.36-10.63 39.66-32H216c0 21.75 17.53 32 40 32zm39.67-32h.33l-.32-.57c0 .19-.01.38-.01.57z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M256 48C141.31 48 48 141.31 48 256s93.31 208 208 208 208-93.31 208-208S370.69 48 256 48zm0 336c-22.48 0-40-10.25-40-32h80c-.3 21.37-17.71 32-40 32zm112-48H144v-28l28-36v-32.3c0-40.41 15.82-75.35 56-84.27l4-27.43h48l4 27.43c40 8.92 56 44 56 84.27V272l28 36z\"},\"child\":[]}]})(props);\n};\nexport function IoNotificationsCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 48C141.31 48 48 141.31 48 256s93.31 208 208 208 208-93.31 208-208S370.69 48 256 48zm0 336c-20.9 0-37.52-8.86-39.75-27.58a4 4 0 0 1 4-4.42h71.45a4 4 0 0 1 4 4.48C293.15 374.85 276.68 384 256 384zm98-48H158c-11.84 0-18-15-11.19-23 16.33-19.34 27.87-27.47 27.87-80.8 0-48.87 25.74-66.21 47-74.67a11.35 11.35 0 0 0 6.33-6.68C231.7 138.6 242.14 128 256 128s24.28 10.6 28 22.86a11.39 11.39 0 0 0 6.34 6.68c21.21 8.44 47 25.81 47 74.67 0 53.33 11.53 61.46 27.86 80.8 6.74 7.99.57 22.99-11.2 22.99z\"},\"child\":[]}]})(props);\n};\nexport function IoNotificationsOffCircleOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M448 256c0-106-86-192-192-192S64 150 64 256s86 192 192 192 192-86 192-192z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M220.24 352a4 4 0 0 0-4 4.42C218.49 375.14 235.11 384 256 384s37.5-8.86 39.73-27.58a4 4 0 0 0-4-4.42zM352 378a15.93 15.93 0 0 1-11.84-5.24l-192-212a16 16 0 0 1 23.68-21.52l192 212A16 16 0 0 1 352 378zM174.68 232.21c0 53.33-11.54 61.46-27.87 80.8-6.77 8-.65 23 11.19 23h118.83a4 4 0 0 0 2.95-6.7l-98-106.87a4 4 0 0 0-6.94 2.52c-.1 2.33-.16 4.75-.16 7.25zM365.2 313c-16.33-19.34-27.86-27.47-27.86-80.8 0-48.86-25.78-66.23-47-74.67a11.39 11.39 0 0 1-6.34-6.68C280.29 138.6 269.88 128 256 128s-24.31 10.6-28 22.86a11.35 11.35 0 0 1-6.33 6.68c-1.28.51-2.57 1.05-3.88 1.63a4 4 0 0 0-1.3 6.36L361 323.21a4 4 0 0 0 6.94-2.95 12 12 0 0 0-2.74-7.26z\"},\"child\":[]}]})(props);\n};\nexport function IoNotificationsOffCircleSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 48C141.31 48 48 141.31 48 256s93.31 208 208 208 208-93.31 208-208S370.69 48 256 48zM144 308l28-36v-32.3a131.83 131.83 0 0 1 2.34-25.42L285.92 336H144zm112.18 76C233.6 384 216 373.75 216 352h80c-.3 21.37-17.45 32-39.82 32zm93.48-3.74-211-227 23.68-21.52 211 227zM368 330.85l-.32-.38-155.5-169.63a73.4 73.4 0 0 1 15.82-5.41l4-27.43h48l4 27.43c40 8.92 56 44 56 84.27V272l28 36z\"},\"child\":[]}]})(props);\n};\nexport function IoNotificationsOffCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 48C141.31 48 48 141.31 48 256s93.31 208 208 208 208-93.31 208-208S370.69 48 256 48zM146.83 313c16.33-19.34 27.86-27.47 27.86-80.8q0-3.75.2-7.26a4 4 0 0 1 7-2.52l98 106.87a4 4 0 0 1-2.94 6.7H158C146.18 336 140.06 321 146.83 313zm148.93 43.41C293.53 375.14 276.92 384 256 384s-37.51-8.86-39.75-27.58a4 4 0 0 1 4-4.42h71.53a4 4 0 0 1 3.98 4.42zm67 17.42a16 16 0 0 1-22.6-1.08l-192-212a16 16 0 0 1 23.68-21.52l192 212a16 16 0 0 1-1.08 22.61zM361 323.21 216.49 165.53a4 4 0 0 1 1.3-6.36c1.31-.58 2.61-1.12 3.89-1.63a11.33 11.33 0 0 0 6.32-6.68c3.72-12.26 14.15-22.86 28-22.86s24.29 10.6 28 22.86a11.34 11.34 0 0 0 6.34 6.68c21.21 8.44 47 25.81 47 74.67 0 53.33 11.54 61.46 27.87 80.8a12.09 12.09 0 0 1 2.76 7.25 4 4 0 0 1-6.97 2.95z\"},\"child\":[]}]})(props);\n};\nexport function IoNotificationsOffOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M128.51 204.59q-.37 6.15-.37 12.76C128.14 304 110 320 84.33 351.43 73.69 364.45 83 384 101.62 384H320m94.5-48.7c-18.48-23.45-30.62-47.05-30.62-118 0-79.3-40.52-107.57-73.88-121.3-4.43-1.82-8.6-6-9.95-10.55C294.21 65.54 277.82 48 256 48s-38.2 17.55-44 37.47c-1.35 4.6-5.52 8.71-10 10.53a149.57 149.57 0 0 0-18 8.79M320 384v16a64 64 0 0 1-128 0v-16\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M448 448 64 64\"},\"child\":[]}]})(props);\n};\nexport function IoNotificationsOffSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m41.37 64 22.628-22.628L470.627 448l-22.628 22.627zM256 480a80.09 80.09 0 0 0 73.3-48H182.7a80.09 80.09 0 0 0 73.3 48zM112 227.47V288l-48 64v48h268.12L115.87 183.75a236.75 236.75 0 0 0-3.87 43.72zM448 352l-48-64v-60.53C400 157 372.64 95.61 304 80l-8-48h-80l-8 48a117.45 117.45 0 0 0-41.95 18.17l282 282z\"},\"child\":[]}]})(props);\n};\nexport function IoNotificationsOff (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M448 464a15.92 15.92 0 0 1-11.31-4.69l-384-384a16 16 0 0 1 22.62-22.62l384 384A16 16 0 0 1 448 464zm-7.92-122.69c-1.66-2-3.29-4-4.89-5.93-22-26.61-35.31-42.67-35.31-118 0-39-9.33-71-27.72-95-13.56-17.73-31.89-31.18-56.05-41.12a3 3 0 0 1-.82-.67C306.6 51.49 282.82 32 256 32s-50.59 19.49-59.28 48.56a3.13 3.13 0 0 1-.81.65 157.88 157.88 0 0 0-21.88 11 8 8 0 0 0-1.49 12.49l261.78 261.74a8 8 0 0 0 13.6-6.63 35.39 35.39 0 0 0-7.84-18.5zM112.14 217.35c0 75.36-13.29 91.42-35.31 118-1.6 1.93-3.23 3.89-4.89 5.93a35.16 35.16 0 0 0-4.65 37.62c6.17 13 19.32 21.07 34.33 21.07H312.8a8 8 0 0 0 5.66-13.66l-192-192a8 8 0 0 0-13.62 5q-.7 8.69-.7 18.04zM256 480a80.06 80.06 0 0 0 70.44-42.13 4 4 0 0 0-3.54-5.87H189.12a4 4 0 0 0-3.55 5.87A80.06 80.06 0 0 0 256 480z\"},\"child\":[]}]})(props);\n};\nexport function IoNotificationsOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M427.68 351.43C402 320 383.87 304 383.87 217.35 383.87 138 343.35 109.73 310 96c-4.43-1.82-8.6-6-9.95-10.55C294.2 65.54 277.8 48 256 48s-38.21 17.55-44 37.47c-1.35 4.6-5.52 8.71-9.95 10.53-33.39 13.75-73.87 41.92-73.87 121.35C128.13 304 110 320 84.32 351.43 73.68 364.45 83 384 101.61 384h308.88c18.51 0 27.77-19.61 17.19-32.57zM320 384v16a64 64 0 0 1-128 0v-16\"},\"child\":[]}]})(props);\n};\nexport function IoNotificationsSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 480a80.09 80.09 0 0 0 73.3-48H182.7a80.09 80.09 0 0 0 73.3 48zm144-192v-60.53C400 157 372.64 95.61 304 80l-8-48h-80l-8 48c-68.88 15.61-96 76.76-96 147.47V288l-48 64v48h384v-48z\"},\"child\":[]}]})(props);\n};\nexport function IoNotifications (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M440.08 341.31c-1.66-2-3.29-4-4.89-5.93-22-26.61-35.31-42.67-35.31-118 0-39-9.33-71-27.72-95-13.56-17.73-31.89-31.18-56.05-41.12a3 3 0 0 1-.82-.67C306.6 51.49 282.82 32 256 32s-50.59 19.49-59.28 48.56a3.13 3.13 0 0 1-.81.65c-56.38 23.21-83.78 67.74-83.78 136.14 0 75.36-13.29 91.42-35.31 118-1.6 1.93-3.23 3.89-4.89 5.93a35.16 35.16 0 0 0-4.65 37.62c6.17 13 19.32 21.07 34.33 21.07H410.5c14.94 0 28-8.06 34.19-21a35.17 35.17 0 0 0-4.61-37.66zM256 480a80.06 80.06 0 0 0 70.44-42.13 4 4 0 0 0-3.54-5.87H189.12a4 4 0 0 0-3.55 5.87A80.06 80.06 0 0 0 256 480z\"},\"child\":[]}]})(props);\n};\nexport function IoNuclearOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"256\",\"r\":\"192\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"256\",\"r\":\"64\",\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M224 192 171 85m117 107 53-107m-13.45 170.81 119.41.13m-147.87 57.19 72.25 95.06M184.45 255.81l-119.41.13m147.87 57.19-72.25 95.06\"},\"child\":[]}]})(props);\n};\nexport function IoNuclearSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"256\",\"r\":\"48\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"d\":\"m223.47 335.59-51.71 68a169.73 169.73 0 0 0 168.48 0l-51.71-68\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M403.08 108.92a208 208 0 0 0-294.16 294.16 208 208 0 0 0 294.16-294.16zM342 256a86.13 86.13 0 0 1-53.47 79.59l51.71 68a169.73 169.73 0 0 1-168.48 0l51.71-68a86 86 0 0 1-50.56-101.77l-85.48.09a170.21 170.21 0 0 1 73.83-119l37.94 76.59a85.78 85.78 0 0 1 113.6 0l37.94-76.59a170.21 170.21 0 0 1 73.83 119l-85.48-.09A85.87 85.87 0 0 1 342 256z\"},\"child\":[]}]})(props);\n};\nexport function IoNuclear (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M258.9 48C141.92 46.42 46.42 141.92 48 258.9c1.56 112.19 92.91 203.54 205.1 205.1 117 1.6 212.48-93.9 210.88-210.88C462.44 140.91 371.09 49.56 258.9 48zM429 239.92l-93.08-.1a2 2 0 0 1-1.95-1.57 80.08 80.08 0 0 0-27.44-44.17 2 2 0 0 1-.54-2.43l41.32-83.43a2 2 0 0 1 2.87-.81A176.2 176.2 0 0 1 431 237.71a2 2 0 0 1-2 2.21zm-220.8 20.46a48 48 0 1 1 43.42 43.42 48 48 0 0 1-43.42-43.42zm-43.55-152.16L206 191.65a2 2 0 0 1-.54 2.43A80.08 80.08 0 0 0 178 238.25a2 2 0 0 1-2 1.57l-93.08.1a2 2 0 0 1-2-2.21 176.2 176.2 0 0 1 80.82-130.3 2 2 0 0 1 2.91.81zm-.37 295.34 56.31-74.09a2 2 0 0 1 2.43-.6 79.84 79.84 0 0 0 66 0 2 2 0 0 1 2.43.6l56.31 74.09a2 2 0 0 1-.54 2.92 175.65 175.65 0 0 1-182.36 0 2 2 0 0 1-.58-2.92z\"},\"child\":[]}]})(props);\n};\nexport function IoNutritionOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M352 128c-32.26-2.89-64 16-96 16s-63.75-19-96-16c-64 6-96 64-96 160 0 80 64 192 111.2 192s51.94-24 80.8-24 33.59 24 80.8 24S448 368 448 288c0-96-29-154-96-160z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M323.92 83.14c-21 21-45.66 27-58.82 28.79a8 8 0 0 1-9.1-8.73 97.6 97.6 0 0 1 28.61-59.33c22-22 46-26.9 58.72-27.85a8 8 0 0 1 8.67 8.92 98 98 0 0 1-28.08 58.2z\"},\"child\":[]},{\"tag\":\"ellipse\",\"attr\":{\"cx\":\"216\",\"cy\":\"304\",\"rx\":\"24\",\"ry\":\"48\"},\"child\":[]},{\"tag\":\"ellipse\",\"attr\":{\"cx\":\"296\",\"cy\":\"304\",\"rx\":\"24\",\"ry\":\"48\"},\"child\":[]}]})(props);\n};\nexport function IoNutritionSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M438.71 159.43c-17.6-28.31-45.5-43.8-85.28-47.37-22.82-2-50.23 4.94-72.25 10.55C271.26 125.14 260 128 256 128s-15.18-2.86-25-5.39c-22.08-5.65-49.56-12.69-72.45-10.54-38.53 3.61-66 19.19-84 47.62S48 229 48 288c0 61.28 29.53 114.58 47.13 140.89C116.82 461.34 149.25 496 175.2 496c18.57 0 34.12-7.23 47.82-13.64C243 473 256 472 256 472s11 0 31.94 10.11C301.65 488.73 317.3 496 336.8 496c26.58 0 59.08-34.69 80.63-67.15C434.82 402.65 464 349.52 464 288c0-60-8-100.83-25.29-128.57zM216 352c-13.25 0-24-21.49-24-48s10.75-48 24-48 24 21.49 24 48-10.75 48-24 48zm80 0c-13.25 0-24-21.49-24-48s10.75-48 24-48 24 21.49 24 48-10.75 48-24 48z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M323.72 82.76C353.68 52.82 352 16.18 352 16.14s-35.77-3.76-67.23 27.67S256.06 112 256.06 112s37.68.71 67.66-29.24z\"},\"child\":[]}]})(props);\n};\nexport function IoNutrition (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M439 166.29c-18.67-32.57-47.46-50.81-85.57-54.23-20.18-1.8-39 3.37-57.23 8.38-14.15 3.89-27.52 7.56-40.2 7.56s-26-3.68-40.06-7.57c-18.28-5-37.18-10.26-57.43-8.36-36.39 3.41-65.51 22.11-84.31 54.08C56.82 195.76 48 236.76 48 288c0 40.4 15 90.49 40 134 12.82 22.25 47 74 87.16 74 30.77 0 47.15-9.44 59.11-16.33 8.3-4.78 13.31-7.67 21.69-7.67s13.39 2.89 21.69 7.67c12 6.89 28.35 16.33 59.15 16.33 40.17 0 74.34-51.76 87.16-74 25.07-43.5 40-93.59 40-134 .04-52.57-8.14-92.38-24.96-121.71zM216 352c-13.25 0-24-21.49-24-48s10.75-48 24-48 24 21.49 24 48-10.75 48-24 48zm80 0c-13.25 0-24-21.49-24-48s10.75-48 24-48 24 21.49 24 48-10.75 48-24 48z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M265.1 111.93c13.16-1.75 37.86-7.83 58.83-28.79a98 98 0 0 0 28-58.2 8 8 0 0 0-8.55-8.94c-12.71.95-36.76 5.87-58.73 27.85A97.6 97.6 0 0 0 256 103.2a8 8 0 0 0 9.1 8.73z\"},\"child\":[]}]})(props);\n};\nexport function IoOpenOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M384 224v184a40 40 0 0 1-40 40H104a40 40 0 0 1-40-40V168a40 40 0 0 1 40-40h167.48M336 64h112v112M224 288 440 72\"},\"child\":[]}]})(props);\n};\nexport function IoOpenSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m201.37 288 176-176H48v352h352V134.63l-176 176L201.37 288z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M320 48v32h89.37l-32 32L400 134.63l32-32V192h32V48H320z\"},\"child\":[]}]})(props);\n};\nexport function IoOpen (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M224 304a16 16 0 0 1-11.31-27.31l157.94-157.94A55.7 55.7 0 0 0 344 112H104a56.06 56.06 0 0 0-56 56v240a56.06 56.06 0 0 0 56 56h240a56.06 56.06 0 0 0 56-56V168a55.7 55.7 0 0 0-6.75-26.63L235.31 299.31A15.92 15.92 0 0 1 224 304z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M448 48H336a16 16 0 0 0 0 32h73.37l-38.74 38.75a56.35 56.35 0 0 1 22.62 22.62L432 102.63V176a16 16 0 0 0 32 0V64a16 16 0 0 0-16-16z\"},\"child\":[]}]})(props);\n};\nexport function IoOptionsOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M368 128h80m-384 0h240m64 256h80m-384 0h240m-96-128h240m-384 0h80\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"336\",\"cy\":\"128\",\"r\":\"32\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"176\",\"cy\":\"256\",\"r\":\"32\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"336\",\"cy\":\"384\",\"r\":\"32\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\"},\"child\":[]}]})(props);\n};\nexport function IoOptionsSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M381.25 112a48 48 0 0 0-90.5 0H48v32h242.75a48 48 0 0 0 90.5 0H464v-32zM176 208a48.09 48.09 0 0 0-45.25 32H48v32h82.75a48 48 0 0 0 90.5 0H464v-32H221.25A48.09 48.09 0 0 0 176 208zm160 128a48.09 48.09 0 0 0-45.25 32H48v32h242.75a48 48 0 0 0 90.5 0H464v-32h-82.75A48.09 48.09 0 0 0 336 336z\"},\"child\":[]}]})(props);\n};\nexport function IoOptions (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M64 144h226.75a48 48 0 0 0 90.5 0H448a16 16 0 0 0 0-32h-66.75a48 48 0 0 0-90.5 0H64a16 16 0 0 0 0 32zm384 224h-66.75a48 48 0 0 0-90.5 0H64a16 16 0 0 0 0 32h226.75a48 48 0 0 0 90.5 0H448a16 16 0 0 0 0-32zm0-128H221.25a48 48 0 0 0-90.5 0H64a16 16 0 0 0 0 32h66.75a48 48 0 0 0 90.5 0H448a16 16 0 0 0 0-32z\"},\"child\":[]}]})(props);\n};\nexport function IoPaperPlaneOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"m53.12 199.94 400-151.39a8 8 0 0 1 10.33 10.33l-151.39 400a8 8 0 0 1-15-.34l-67.4-166.09a16 16 0 0 0-10.11-10.11L53.46 215a8 8 0 0 1-.34-15.06zM460 52 227 285\"},\"child\":[]}]})(props);\n};\nexport function IoPaperPlaneSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M496 16 15.88 208 195 289 448 64 223 317l81 179L496 16z\"},\"child\":[]}]})(props);\n};\nexport function IoPaperPlane (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M473 39.05a24 24 0 0 0-25.5-5.46L47.47 185h-.08a24 24 0 0 0 1 45.16l.41.13 137.3 58.63a16 16 0 0 0 15.54-3.59L422 80a7.07 7.07 0 0 1 10 10L226.66 310.26a16 16 0 0 0-3.59 15.54l58.65 137.38c.06.2.12.38.19.57 3.2 9.27 11.3 15.81 21.09 16.25h1a24.63 24.63 0 0 0 23-15.46L478.39 64.62A24 24 0 0 0 473 39.05z\"},\"child\":[]}]})(props);\n};\nexport function IoPartlySunnyOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M90.61 306.85A16.07 16.07 0 0 0 104 293.6C116.09 220.17 169.63 176 232 176c57.93 0 96.62 37.75 112.2 77.74a15.84 15.84 0 0 0 12.2 9.87c50 8.15 91.6 41.54 91.6 99.59 0 59.4-48.6 100.8-108 100.8H106c-49.5 0-90-24.7-90-79.2 0-48.47 38.67-72.22 74.61-77.95z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M384.8 271.4a80 80 0 1 0-123.55-92M464 208h32M336 48v32M222.86 94.86l22.63 22.63m203.65-22.63-22.63 22.63\"},\"child\":[]}]})(props);\n};\nexport function IoPartlySunnySharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M340 480H106c-29.5 0-54.92-7.83-73.53-22.64C11.23 440.44 0 415.35 0 384.8c0-26.66 10.08-49.8 29.14-66.91 15.24-13.68 36.17-23.21 59-26.84.06 0 .08 0 .09-.05 6.44-39 23.83-72.09 50.31-95.68A140.24 140.24 0 0 1 232 160c30.23 0 58.48 9.39 81.71 27.17a142.69 142.69 0 0 1 45.36 60.66c29.41 4.82 54.72 17.11 73.19 35.54C453 304.11 464 331.71 464 363.2c0 32.85-13.13 62.87-37 84.52-22.89 20.82-53.8 32.28-87 32.28zm19-232.18zm22.5-27.93a169.23 169.23 0 0 1 45.44 19A96 96 0 0 0 281 129.33q-2.85 2-5.54 4.2a162.47 162.47 0 0 1 57.73 28.23 174.53 174.53 0 0 1 48.31 58.13zM448 192h64v32h-64zM320 32h32v64h-32zm-64.65 97.63 12.45-12.45-44.62-44.63-22.63 22.63 33.17 33.17h.6a172 172 0 0 1 21.03 1.28zm148.853-12.46 44.626-44.625 22.627 22.628-44.625 44.625z\"},\"child\":[]}]})(props);\n};\nexport function IoPartlySunny (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M340 480H106c-29.5 0-54.92-7.83-73.53-22.64C11.23 440.44 0 415.35 0 384.8c0-26.66 10.08-49.8 29.14-66.91 15.24-13.68 36.17-23.21 59-26.84.06 0 .08 0 .09-.05 6.44-39 23.83-72.09 50.31-95.68A140.24 140.24 0 0 1 232 160c30.23 0 58.48 9.39 81.71 27.17a142.24 142.24 0 0 1 42.19 53.21 16 16 0 0 0 11.19 9c26 5.61 48.4 17.29 65.17 34C453 304.11 464 331.71 464 363.2c0 32.85-13.13 62.87-37 84.52-22.89 20.82-53.8 32.28-87 32.28zm19-232.18zm28.89-26.14a168.8 168.8 0 0 1 34.76 14.71 4 4 0 0 0 5.82-2.44 97 97 0 0 0 3.53-26.68c-.39-52.43-43.48-95.22-95.91-95.27A95.46 95.46 0 0 0 281 129.33h-.06a3.38 3.38 0 0 0 1 6 162.45 162.45 0 0 1 51.28 26.4 173.92 173.92 0 0 1 45.32 52.51 16 16 0 0 0 9.35 7.44zM496 224h-32a16 16 0 0 1 0-32h32a16 16 0 0 1 0 32zM336 96a16 16 0 0 1-16-16V48a16 16 0 0 1 32 0v32a16 16 0 0 1-16 16zm-90.51 37.49a15.92 15.92 0 0 1-11.31-4.69l-22.63-22.62a16 16 0 0 1 22.63-22.63l22.62 22.63a16 16 0 0 1-11.31 27.31zm181.02 0a16 16 0 0 1-11.31-27.31l22.62-22.63a16 16 0 0 1 22.63 22.63l-22.63 22.62a15.92 15.92 0 0 1-11.31 4.69z\"},\"child\":[]}]})(props);\n};\nexport function IoPauseCircleOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M448 256c0-106-86-192-192-192S64 150 64 256s86 192 192 192 192-86 192-192z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M208 192v128m96-128v128\"},\"child\":[]}]})(props);\n};\nexport function IoPauseCircleSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 48C141.31 48 48 141.31 48 256s93.31 208 208 208 208-93.31 208-208S370.69 48 256 48zm-32 288h-32V176h32zm96 0h-32V176h32z\"},\"child\":[]}]})(props);\n};\nexport function IoPauseCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 48C141.31 48 48 141.31 48 256s93.31 208 208 208 208-93.31 208-208S370.69 48 256 48zm-32 272a16 16 0 0 1-32 0V192a16 16 0 0 1 32 0zm96 0a16 16 0 0 1-32 0V192a16 16 0 0 1 32 0z\"},\"child\":[]}]})(props);\n};\nexport function IoPauseOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M176 96h16v320h-16zm144 0h16v320h-16z\"},\"child\":[]}]})(props);\n};\nexport function IoPauseSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M224 432h-80V80h80zm144 0h-80V80h80z\"},\"child\":[]}]})(props);\n};\nexport function IoPause (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M208 432h-48a16 16 0 0 1-16-16V96a16 16 0 0 1 16-16h48a16 16 0 0 1 16 16v320a16 16 0 0 1-16 16zm144 0h-48a16 16 0 0 1-16-16V96a16 16 0 0 1 16-16h48a16 16 0 0 1 16 16v320a16 16 0 0 1-16 16z\"},\"child\":[]}]})(props);\n};\nexport function IoPawOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M457.74 170.1a30.26 30.26 0 0 0-11.16-2.1h-.4c-20.17.3-42.79 19.19-54.66 47.76-14.23 34.18-7.68 69.15 14.74 78.14a30.21 30.21 0 0 0 11.15 2.1c20.27 0 43.2-19 55.17-47.76 14.13-34.18 7.48-69.15-14.84-78.14zM327.6 303.48C299.8 257.35 287.8 240 256 240s-43.9 17.46-71.7 63.48c-23.8 39.36-71.9 42.64-83.9 76.07a50.91 50.91 0 0 0-3.6 19.25c0 27.19 20.8 49.2 46.4 49.2 31.8 0 75.1-25.39 112.9-25.39S337 448 368.8 448c25.6 0 46.3-22 46.3-49.2a51 51 0 0 0-3.7-19.25c-12-33.55-60-36.71-83.8-76.07zM192.51 196a26.53 26.53 0 0 0 4-.3c23.21-3.37 37.7-35.53 32.44-71.85C224 89.61 203.22 64 181.49 64a26.53 26.53 0 0 0-4 .3c-23.21 3.37-37.7 35.53-32.44 71.85C150 170.29 170.78 196 192.51 196zm174.41-59.85c5.26-36.32-9.23-68.48-32.44-71.85a26.53 26.53 0 0 0-4-.3c-21.73 0-42.47 25.61-47.43 59.85-5.26 36.32 9.23 68.48 32.44 71.85a26.53 26.53 0 0 0 4 .3c21.73 0 42.51-25.71 47.43-59.85zM105.77 293.9c22.39-9 28.93-44 14.72-78.14C108.53 187 85.62 168 65.38 168a30.21 30.21 0 0 0-11.15 2.1c-22.39 9-28.93 44-14.72 78.14C51.47 277 74.38 296 94.62 296a30.21 30.21 0 0 0 11.15-2.1z\"},\"child\":[]}]})(props);\n};\nexport function IoPawSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M442.8 361.82c-8.8-25.1-29.31-37.82-49.11-50.12-17.23-10.71-33.5-20.83-44.14-39-29.33-50.33-45.44-80.7-93.49-80.7s-64.21 30.38-93.61 80.69c-10.65 18.21-27 28.35-44.25 39.08-19.8 12.31-40.27 25-49.1 50.05a78.06 78.06 0 0 0-5.1 28.29C64 430.85 96.45 464 132.4 464s83.31-18.13 123.76-18.13S343.31 464 379.71 464 448 430.85 448 390.11a78.3 78.3 0 0 0-5.2-28.29z\"},\"child\":[]},{\"tag\":\"ellipse\",\"attr\":{\"cx\":\"72\",\"cy\":\"216\",\"rx\":\"56\",\"ry\":\"72\"},\"child\":[]},{\"tag\":\"ellipse\",\"attr\":{\"cx\":\"184\",\"cy\":\"120\",\"rx\":\"56\",\"ry\":\"72\"},\"child\":[]},{\"tag\":\"ellipse\",\"attr\":{\"cx\":\"328\",\"cy\":\"120\",\"rx\":\"56\",\"ry\":\"72\"},\"child\":[]},{\"tag\":\"ellipse\",\"attr\":{\"cx\":\"440\",\"cy\":\"216\",\"rx\":\"56\",\"ry\":\"72\"},\"child\":[]}]})(props);\n};\nexport function IoPaw (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M490.39 182.75c-5.55-13.19-14.77-22.7-26.67-27.49l-.16-.06a46.46 46.46 0 0 0-17-3.2h-.64c-27.24.41-55.05 23.56-69.19 57.61-10.37 24.9-11.56 51.68-3.18 71.64 5.54 13.2 14.78 22.71 26.73 27.5l.13.05a46.53 46.53 0 0 0 17 3.2c27.5 0 55.6-23.15 70-57.65 10.24-24.87 11.37-51.63 2.98-71.6zM381.55 329.61c-15.71-9.44-30.56-18.37-40.26-34.41C314.53 250.8 298.37 224 256 224s-58.57 26.8-85.39 71.2c-9.72 16.06-24.6 25-40.36 34.48-18.07 10.86-36.74 22.08-44.8 44.16a66.93 66.93 0 0 0-4.65 25c0 35.95 28 65.2 62.4 65.2 17.75 0 36.64-6.15 56.63-12.66 19.22-6.26 39.09-12.73 56.27-12.73s37 6.47 56.15 12.73C332.2 457.85 351 464 368.8 464c34.35 0 62.3-29.25 62.3-65.2a67 67 0 0 0-4.75-25c-8.06-22.1-26.74-33.33-44.8-44.19zM150 188.85c11.9 14.93 27 23.15 42.52 23.15a42.88 42.88 0 0 0 6.33-.47c32.37-4.76 52.54-44.26 45.92-90C242 102.3 234.6 84.39 224 71.11 212.12 56.21 197 48 181.49 48a42.88 42.88 0 0 0-6.33.47c-32.37 4.76-52.54 44.26-45.92 90 2.76 19.2 10.16 37.09 20.76 50.38zm163.16 22.68a42.88 42.88 0 0 0 6.33.47c15.53 0 30.62-8.22 42.52-23.15 10.59-13.29 17.95-31.18 20.75-50.4 6.62-45.72-13.55-85.22-45.92-90a42.88 42.88 0 0 0-6.33-.47C315 48 299.88 56.21 288 71.11c-10.6 13.28-18 31.19-20.76 50.44-6.62 45.72 13.55 85.22 45.92 89.98zM111.59 308.8l.14-.05c11.93-4.79 21.16-14.29 26.69-27.48 8.38-20 7.2-46.75-3.15-71.65C120.94 175.16 92.85 152 65.38 152a46.4 46.4 0 0 0-17 3.2l-.14.05c-11.9 4.75-21.13 14.29-26.66 27.48-8.38 20-7.2 46.75 3.15 71.65C39.06 288.84 67.15 312 94.62 312a46.4 46.4 0 0 0 16.97-3.2z\"},\"child\":[]}]})(props);\n};\nexport function IoPencilOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M364.13 125.25 87 403l-23 45 44.99-23 277.76-277.13-22.62-22.62zm56.56-56.56-22.62 22.62 22.62 22.63 22.62-22.63a16 16 0 0 0 0-22.62h0a16 16 0 0 0-22.62 0z\"},\"child\":[]}]})(props);\n};\nexport function IoPencilSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M103 464H48v-55L358.14 98.09l55.77 55.78L103 464zm322.72-322L370 86.28l31.66-30.66C406.55 50.7 414.05 48 421 48a25.91 25.91 0 0 1 18.42 7.62l17 17A25.87 25.87 0 0 1 464 91c0 7-2.71 14.45-7.62 19.36zm-7.52-70.83z\"},\"child\":[]}]})(props);\n};\nexport function IoPencil (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"44\",\"d\":\"M358.62 129.28 86.49 402.08 70 442l39.92-16.49 272.8-272.13-24.1-24.1zm54.45-54.44-11.79 11.78 24.1 24.1 11.79-11.79a16.51 16.51 0 0 0 0-23.34l-.75-.75a16.51 16.51 0 0 0-23.35 0z\"},\"child\":[]}]})(props);\n};\nexport function IoPeopleCircleOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 464c-114.69 0-208-93.31-208-208S141.31 48 256 48s208 93.31 208 208-93.31 208-208 208zm0-384c-97 0-176 79-176 176s79 176 176 176 176-78.95 176-176S353.05 80 256 80z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M323.67 292c-17.4 0-34.21-7.72-47.34-21.73a83.76 83.76 0 0 1-22-51.32c-1.47-20.7 4.88-39.75 17.88-53.62S303.38 144 323.67 144c20.14 0 38.37 7.62 51.33 21.46s19.47 33 18 53.51a84 84 0 0 1-22 51.3C357.86 284.28 341.06 292 323.67 292zm55.81-74zm-215.66 77.36c-29.76 0-55.93-27.51-58.33-61.33-1.23-17.32 4.15-33.33 15.17-45.08s26.22-18 43.15-18 32.12 6.44 43.07 18.14 16.5 27.82 15.25 45c-2.44 33.77-28.6 61.27-58.31 61.27zm256.55 59.92c-1.59-4.7-5.46-9.71-13.22-14.46-23.46-14.33-52.32-21.91-83.48-21.91-30.57 0-60.23 7.9-83.53 22.25-26.25 16.17-43.89 39.75-51 68.18-1.68 6.69-4.13 19.14-1.51 26.11a192.18 192.18 0 0 0 232.75-80.17zm-256.74 46.09c7.07-28.21 22.12-51.73 45.47-70.75a8 8 0 0 0-2.59-13.77c-12-3.83-25.7-5.88-42.69-5.88-23.82 0-49.11 6.45-68.14 18.17-5.4 3.33-10.7 4.61-14.78 5.75a192.84 192.84 0 0 0 77.78 86.64l1.79-.14a102.82 102.82 0 0 1 3.16-20.02z\"},\"child\":[]}]})(props);\n};\nexport function IoPeopleCircleSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 48C141.31 48 48 141.31 48 256s93.31 208 208 208 208-93.31 208-208S370.69 48 256 48zm69.3 96.17a72.5 72.5 0 1 1-72.6 72.5 72.55 72.55 0 0 1 72.6-72.5zm-155.1 26.36a59.32 59.32 0 1 1-59.4 59.32 59.35 59.35 0 0 1 59.4-59.32zm-75.85 155c24.5-13.29 55.87-19.94 75.85-19.94 15 0 34.32 3 53.33 10.2a133.05 133.05 0 0 0-34 27.11c-13.19 15-20.76 32.92-20.76 50.83v15a177.06 177.06 0 0 1-74.42-83.15zM256 432a175.12 175.12 0 0 1-59.4-10.33v-27.05c0-52.59 85.75-79.09 128.7-79.09 23 0 58.38 7.63 86.21 22.81A176.14 176.14 0 0 1 256 432z\"},\"child\":[]}]})(props);\n};\nexport function IoPeopleCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M258.9 48C141.92 46.42 46.42 141.92 48 258.9c1.56 112.19 92.91 203.54 205.1 205.1 117 1.6 212.48-93.9 210.88-210.88C462.44 140.91 371.09 49.56 258.9 48zm-3.68 152.11c.21-1.2.44-2.4.71-3.59a66.46 66.46 0 0 1 16.29-31.21c12.89-13.73 31.16-21.31 51.45-21.31a74.05 74.05 0 0 1 25.06 4.26 66.69 66.69 0 0 1 26.27 17.2 68.15 68.15 0 0 1 18 42.14 78.46 78.46 0 0 1 0 11.4 86.19 86.19 0 0 1-8.2 31q-.76 1.59-1.59 3.15c-1.11 2.07-2.3 4.1-3.58 6.06a79.47 79.47 0 0 1-8.63 11c-13.12 14-29.92 21.73-47.31 21.73a59.61 59.61 0 0 1-19.17-3.18 63.47 63.47 0 0 1-6.1-2.43 70.76 70.76 0 0 1-22.07-16.12 83.76 83.76 0 0 1-22-51.32q-.27-3.88-.18-7.68a75.62 75.62 0 0 1 1.05-11.08zm-149.73 24.34a59.87 59.87 0 0 1 5.2-20.64 56.76 56.76 0 0 1 2.78-5.3 54.49 54.49 0 0 1 7.19-9.56 55.62 55.62 0 0 1 14-10.82 56.84 56.84 0 0 1 8.11-3.64 63.85 63.85 0 0 1 33.35-2.39 57 57 0 0 1 30.78 17 57.86 57.86 0 0 1 15.41 38.62c.05 2.11 0 4.23-.15 6.38a71.58 71.58 0 0 1-6 23.84 69.49 69.49 0 0 1-5.73 10.42 65.39 65.39 0 0 1-15.76 16.57c-1.5 1.07-3.06 2.07-4.67 3.07a54.21 54.21 0 0 1-10 4.65 49.31 49.31 0 0 1-16.2 2.76c-.93 0-1.86 0-2.78-.08a47.6 47.6 0 0 1-5.48-.62 51.19 51.19 0 0 1-5.35-1.23 53.54 53.54 0 0 1-7.72-2.89c-.84-.39-1.66-.8-2.48-1.23-18-9.49-31.57-29.16-34.23-52.12-.12-1.05-.22-2.1-.29-3.16a66.59 66.59 0 0 1 .02-9.63zm53.92 178.6a177.27 177.27 0 0 1-61.94-70.65 4 4 0 0 1 1.62-5.26C117.67 316.69 141.4 311 163.82 311c17 0 30.7 2 42.69 5.88a8 8 0 0 1 2.59 13.77c-23.35 19-38.4 42.54-45.47 70.75a2.77 2.77 0 0 1-4.22 1.65zM256 432a175.12 175.12 0 0 1-65.7-12.72 4 4 0 0 1-2.4-4.46c.4-2.05.84-3.92 1.23-5.48 7.12-28.43 24.76-52 51-68.18 23.29-14.35 53-22.25 83.52-22.25 31.16 0 60 7.58 83.48 21.91a2.72 2.72 0 0 1 .91 3.67A176.1 176.1 0 0 1 256 432z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M161 295.28a47.6 47.6 0 0 1-5.48-.62 47.6 47.6 0 0 0 5.48.62zm-26.36-117.15a55.62 55.62 0 0 0-14 10.82 54.49 54.49 0 0 0-7.19 9.56 54.49 54.49 0 0 1 7.19-9.56 55.62 55.62 0 0 1 14-10.82zm81.53 79.76a71.58 71.58 0 0 0 6-23.84c.15-2.15.2-4.27.15-6.38q.08 3.15-.15 6.38a71.58 71.58 0 0 1-6 23.84zm-81.53-79.76a56.84 56.84 0 0 1 8.11-3.64 56.84 56.84 0 0 0-8.11 3.64zm15.57 115.3a53.54 53.54 0 0 1-7.72-2.89 53.54 53.54 0 0 0 7.72 2.89zm-44.43-56.24c2.66 23 16.26 42.63 34.23 52.12-18.01-9.49-31.57-29.16-34.23-52.12zM254.34 219a83.76 83.76 0 0 0 22 51.32 70.76 70.76 0 0 0 22.07 16.12 70.76 70.76 0 0 1-22.07-16.12 83.76 83.76 0 0 1-22-51.32q-.27-3.88-.18-7.68-.09 3.75.18 7.68zm50.16 69.82a63.47 63.47 0 0 1-6.1-2.43 63.47 63.47 0 0 0 6.1 2.43zm-48.57-92.28a66.46 66.46 0 0 1 16.29-31.21 66.46 66.46 0 0 0-16.29 31.21zM375 165.46a68.15 68.15 0 0 1 18 42.14 68.15 68.15 0 0 0-18-42.14 66.69 66.69 0 0 0-26.27-17.2 66.69 66.69 0 0 1 26.27 17.2zM393 219a86.19 86.19 0 0 1-8.2 31 86.19 86.19 0 0 0 8.2-31zm-138.84-7.73a75.62 75.62 0 0 1 1.06-11.14 75.62 75.62 0 0 0-1.06 11.14zm129.03 41.89zm-176.31-64.11a57.86 57.86 0 0 1 15.41 38.62 57.86 57.86 0 0 0-15.41-38.62 57 57 0 0 0-30.78-17 57 57 0 0 1 30.78 17zM190 288a54.21 54.21 0 0 1-10 4.65 54.21 54.21 0 0 0 10-4.65zm-84.51-63.55a59.87 59.87 0 0 1 5.2-20.64 59.87 59.87 0 0 0-5.2 20.64zm89.19 60.43C193.17 286 191.61 287 190 288c1.61-1 3.17-2 4.68-3.12zm21.49-26.99a69.49 69.49 0 0 1-5.73 10.42 69.49 69.49 0 0 0 5.73-10.42zm-105.48-54.08a56.76 56.76 0 0 1 2.78-5.3 56.76 56.76 0 0 0-2.78 5.3zm83.99 81.07a65.39 65.39 0 0 0 15.76-16.57 65.39 65.39 0 0 1-15.76 16.57z\"},\"child\":[]}]})(props);\n};\nexport function IoPeopleOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M402 168c-2.93 40.67-33.1 72-66 72s-63.12-31.32-66-72c-3-42.31 26.37-72 66-72s69 30.46 66 72z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M336 304c-65.17 0-127.84 32.37-143.54 95.41-2.08 8.34 3.15 16.59 11.72 16.59h263.65c8.57 0 13.77-8.25 11.72-16.59C463.85 335.36 401.18 304 336 304z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M200 185.94c-2.34 32.48-26.72 58.06-53 58.06s-50.7-25.57-53-58.06C91.61 152.15 115.34 128 147 128s55.39 24.77 53 57.94z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M206 306c-18.05-8.27-37.93-11.45-59-11.45-52 0-102.1 25.85-114.65 76.2-1.65 6.66 2.53 13.25 9.37 13.25H154\"},\"child\":[]}]})(props);\n};\nexport function IoPeopleSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"circle\",\"attr\":{\"cx\":\"152\",\"cy\":\"184\",\"r\":\"72\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M234 296c-28.16-14.3-59.24-20-82-20-44.58 0-136 27.34-136 82v42h150v-16.07c0-19 8-38.05 22-53.93 11.17-12.68 26.81-24.45 46-34z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M340 288c-52.07 0-156 32.16-156 96v48h312v-48c0-63.84-103.93-96-156-96z\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"340\",\"cy\":\"168\",\"r\":\"88\"},\"child\":[]}]})(props);\n};\nexport function IoPeople (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M336 256c-20.56 0-40.44-9.18-56-25.84-15.13-16.25-24.37-37.92-26-61-1.74-24.62 5.77-47.26 21.14-63.76S312 80 336 80c23.83 0 45.38 9.06 60.7 25.52 15.47 16.62 23 39.22 21.26 63.63-1.67 23.11-10.9 44.77-26 61C376.44 246.82 356.57 256 336 256zm66-88zm65.83 264H204.18a27.71 27.71 0 0 1-22-10.67 30.22 30.22 0 0 1-5.26-25.79c8.42-33.81 29.28-61.85 60.32-81.08C264.79 297.4 299.86 288 336 288c36.85 0 71 9 98.71 26.05 31.11 19.13 52 47.33 60.38 81.55a30.27 30.27 0 0 1-5.32 25.78A27.68 27.68 0 0 1 467.83 432zM147 260c-35.19 0-66.13-32.72-69-72.93-1.42-20.6 5-39.65 18-53.62 12.86-13.83 31-21.45 51-21.45s38 7.66 50.93 21.57c13.1 14.08 19.5 33.09 18 53.52-2.87 40.2-33.8 72.91-68.93 72.91zm65.66 31.45c-17.59-8.6-40.42-12.9-65.65-12.9-29.46 0-58.07 7.68-80.57 21.62-25.51 15.83-42.67 38.88-49.6 66.71a27.39 27.39 0 0 0 4.79 23.36A25.32 25.32 0 0 0 41.72 400h111a8 8 0 0 0 7.87-6.57c.11-.63.25-1.26.41-1.88 8.48-34.06 28.35-62.84 57.71-83.82a8 8 0 0 0-.63-13.39c-1.57-.92-3.37-1.89-5.42-2.89z\"},\"child\":[]}]})(props);\n};\nexport function IoPersonAddOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M376 144c-3.92 52.87-44 96-88 96s-84.15-43.12-88-96c-4-55 35-96 88-96s92 42 88 96z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M288 304c-87 0-175.3 48-191.64 138.6-2 10.92 4.21 21.4 15.65 21.4H464c11.44 0 17.62-10.48 15.65-21.4C463.3 352 375 304 288 304z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M88 176v112m56-56H32\"},\"child\":[]}]})(props);\n};\nexport function IoPersonAddSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M106 304v-54h54v-36h-54v-54H70v54H16v36h54v54h36z\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"288\",\"cy\":\"144\",\"r\":\"112\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M288 288c-69.42 0-208 42.88-208 128v64h416v-64c0-85.12-138.58-128-208-128z\"},\"child\":[]}]})(props);\n};\nexport function IoPersonAdd (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M288 256c52.79 0 99.43-49.71 104-110.82 2.27-30.7-7.36-59.33-27.12-80.6C345.33 43.57 318 32 288 32c-30.24 0-57.59 11.5-77 32.38-19.63 21.11-29.2 49.8-27 80.78C188.49 206.28 235.12 256 288 256zm207.38 183.76c-8.44-46.82-34.79-86.15-76.19-113.75C382.42 301.5 335.83 288 288 288s-94.42 13.5-131.19 38c-41.4 27.6-67.75 66.93-76.19 113.75-1.93 10.73.69 21.34 7.19 29.11A30.94 30.94 0 0 0 112 480h352a30.94 30.94 0 0 0 24.21-11.13c6.48-7.77 9.1-18.38 7.17-29.11zM104 288v-40h40a16 16 0 0 0 0-32h-40v-40a16 16 0 0 0-32 0v40H32a16 16 0 0 0 0 32h40v40a16 16 0 0 0 32 0z\"},\"child\":[]}]})(props);\n};\nexport function IoPersonCircleOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M258.9 48C141.92 46.42 46.42 141.92 48 258.9c1.56 112.19 92.91 203.54 205.1 205.1 117 1.6 212.48-93.9 210.88-210.88C462.44 140.91 371.09 49.56 258.9 48zm126.42 327.25a4 4 0 0 1-6.14-.32 124.27 124.27 0 0 0-32.35-29.59C321.37 329 289.11 320 256 320s-65.37 9-90.83 25.34a124.24 124.24 0 0 0-32.35 29.58 4 4 0 0 1-6.14.32A175.32 175.32 0 0 1 80 259c-1.63-97.31 78.22-178.76 175.57-179S432 158.81 432 256a175.32 175.32 0 0 1-46.68 119.25z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M256 144c-19.72 0-37.55 7.39-50.22 20.82s-19 32-17.57 51.93C191.11 256 221.52 288 256 288s64.83-32 67.79-71.24c1.48-19.74-4.8-38.14-17.68-51.82C293.39 151.44 275.59 144 256 144z\"},\"child\":[]}]})(props);\n};\nexport function IoPersonCircleSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 48C141.31 48 48 141.31 48 256s93.31 208 208 208 208-93.31 208-208S370.69 48 256 48zm2 96a72 72 0 1 1-72 72 72 72 0 0 1 72-72zm-2 288a175.55 175.55 0 0 1-129.18-56.6C135.66 329.62 215.06 320 256 320s120.34 9.62 129.18 55.39A175.52 175.52 0 0 1 256 432z\"},\"child\":[]}]})(props);\n};\nexport function IoPersonCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 48C141.31 48 48 141.31 48 256s93.31 208 208 208 208-93.31 208-208S370.69 48 256 48zm-50.22 116.82C218.45 151.39 236.28 144 256 144s37.39 7.44 50.11 20.94c12.89 13.68 19.16 32.06 17.68 51.82C320.83 256 290.43 288 256 288s-64.89-32-67.79-71.25c-1.47-19.92 4.79-38.36 17.57-51.93zM256 432a175.49 175.49 0 0 1-126-53.22 122.91 122.91 0 0 1 35.14-33.44C190.63 329 222.89 320 256 320s65.37 9 90.83 25.34A122.87 122.87 0 0 1 382 378.78 175.45 175.45 0 0 1 256 432z\"},\"child\":[]}]})(props);\n};\nexport function IoPersonOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M344 144c-3.92 52.87-44 96-88 96s-84.15-43.12-88-96c-4-55 35-96 88-96s92 42 88 96z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M256 304c-87 0-175.3 48-191.64 138.6C62.39 453.52 68.57 464 80 464h352c11.44 0 17.62-10.48 15.65-21.4C431.3 352 343 304 256 304z\"},\"child\":[]}]})(props);\n};\nexport function IoPersonRemoveOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M376 144c-3.92 52.87-44 96-88 96s-84.15-43.12-88-96c-4-55 35-96 88-96s92 42 88 96z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M288 304c-87 0-175.3 48-191.64 138.6-2 10.92 4.21 21.4 15.65 21.4H464c11.44 0 17.62-10.48 15.65-21.4C463.3 352 375 304 288 304z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M144 232H32\"},\"child\":[]}]})(props);\n};\nexport function IoPersonRemoveSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 214h144v36H16z\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"288\",\"cy\":\"144\",\"r\":\"112\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M288 288c-69.42 0-208 42.88-208 128v64h416v-64c0-85.12-138.58-128-208-128z\"},\"child\":[]}]})(props);\n};\nexport function IoPersonRemove (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M288 256c52.79 0 99.43-49.71 104-110.82 2.27-30.7-7.36-59.33-27.12-80.6C345.33 43.57 318 32 288 32c-30.24 0-57.59 11.5-77 32.38-19.63 21.11-29.2 49.8-27 80.78C188.49 206.28 235.12 256 288 256zm207.38 183.76c-8.44-46.82-34.79-86.15-76.19-113.75C382.42 301.5 335.83 288 288 288s-94.42 13.5-131.19 38c-41.4 27.6-67.75 66.93-76.19 113.75-1.93 10.73.69 21.34 7.19 29.11A30.94 30.94 0 0 0 112 480h352a30.94 30.94 0 0 0 24.21-11.13c6.48-7.77 9.1-18.38 7.17-29.11zM144 216H32a16 16 0 0 0 0 32h112a16 16 0 0 0 0-32z\"},\"child\":[]}]})(props);\n};\nexport function IoPersonSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 256a112 112 0 1 0-112-112 112 112 0 0 0 112 112zm0 32c-69.42 0-208 42.88-208 128v64h416v-64c0-85.12-138.58-128-208-128z\"},\"child\":[]}]})(props);\n};\nexport function IoPerson (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M332.64 64.58C313.18 43.57 286 32 256 32c-30.16 0-57.43 11.5-76.8 32.38-19.58 21.11-29.12 49.8-26.88 80.78C156.76 206.28 203.27 256 256 256s99.16-49.71 103.67-110.82c2.27-30.7-7.33-59.33-27.03-80.6zM432 480H80a31 31 0 0 1-24.2-11.13c-6.5-7.77-9.12-18.38-7.18-29.11C57.06 392.94 83.4 353.61 124.8 326c36.78-24.51 83.37-38 131.2-38s94.42 13.5 131.2 38c41.4 27.6 67.74 66.93 76.18 113.75 1.94 10.73-.68 21.34-7.18 29.11A31 31 0 0 1 432 480z\"},\"child\":[]}]})(props);\n};\nexport function IoPhoneLandscapeOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"rect\",\"attr\":{\"width\":\"256\",\"height\":\"480\",\"x\":\"128\",\"y\":\"16\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"rx\":\"48\",\"ry\":\"48\",\"transform\":\"rotate(-90 256 256)\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M16 336v-24a8 8 0 0 1 8-8h0a16 16 0 0 0 16-16v-64a16 16 0 0 0-16-16h0a8 8 0 0 1-8-8v-24\"},\"child\":[]}]})(props);\n};\nexport function IoPhoneLandscapeSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 130v252a18 18 0 0 0 18 18h476a18 18 0 0 0 18-18V130a18 18 0 0 0-18-18H18a18 18 0 0 0-18 18zm448 234H64V148h384z\"},\"child\":[]}]})(props);\n};\nexport function IoPhoneLandscape (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 176v160a64 64 0 0 0 64 64h384a64 64 0 0 0 64-64V176a64 64 0 0 0-64-64H64a64 64 0 0 0-64 64zm448-32a32 32 0 0 1 32 32v160a32 32 0 0 1-32 32H64a32 32 0 0 1-32-32v-11.35a7.94 7.94 0 0 1 4.75-7.3A32 32 0 0 0 56 288v-64a32 32 0 0 0-19.25-29.35 7.94 7.94 0 0 1-4.75-7.3V176a32 32 0 0 1 32-32z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M48 176a11.88 11.88 0 0 0 4.69 9.53A48 48 0 0 1 72 224v64a48 48 0 0 1-19.31 38.47A11.88 11.88 0 0 0 48 336a16 16 0 0 0 16 16h384a16 16 0 0 0 16-16V176a16 16 0 0 0-16-16H64a16 16 0 0 0-16 16z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M0 176v160a64 64 0 0 0 64 64h384a64 64 0 0 0 64-64V176a64 64 0 0 0-64-64H64a64 64 0 0 0-64 64zm448-32a32 32 0 0 1 32 32v160a32 32 0 0 1-32 32H64a32 32 0 0 1-32-32v-11.35a7.94 7.94 0 0 1 4.75-7.3A32 32 0 0 0 56 288v-64a32 32 0 0 0-19.25-29.35 7.94 7.94 0 0 1-4.75-7.3V176a32 32 0 0 1 32-32z\"},\"child\":[]}]})(props);\n};\nexport function IoPhonePortraitOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"rect\",\"attr\":{\"width\":\"256\",\"height\":\"480\",\"x\":\"128\",\"y\":\"16\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"rx\":\"48\",\"ry\":\"48\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M176 16h24a8 8 0 0 1 8 8h0a16 16 0 0 0 16 16h64a16 16 0 0 0 16-16h0a8 8 0 0 1 8-8h24\"},\"child\":[]}]})(props);\n};\nexport function IoPhonePortraitSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M382 0H130a18 18 0 0 0-18 18v476a18 18 0 0 0 18 18h252a18 18 0 0 0 18-18V18a18 18 0 0 0-18-18zM148 448V64h216v384z\"},\"child\":[]}]})(props);\n};\nexport function IoPhonePortrait (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M336 0H176a64 64 0 0 0-64 64v384a64 64 0 0 0 64 64h160a64 64 0 0 0 64-64V64a64 64 0 0 0-64-64zm32 448a32 32 0 0 1-32 32H176a32 32 0 0 1-32-32V64a32 32 0 0 1 32-32h11.35a7.94 7.94 0 0 1 7.3 4.75A32 32 0 0 0 224 56h64a32 32 0 0 0 29.35-19.25 7.94 7.94 0 0 1 7.3-4.75H336a32 32 0 0 1 32 32z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M336 48a11.88 11.88 0 0 0-9.53 4.69A48 48 0 0 1 288 72h-64a48 48 0 0 1-38.47-19.31A11.88 11.88 0 0 0 176 48a16 16 0 0 0-16 16v384a16 16 0 0 0 16 16h160a16 16 0 0 0 16-16V64a16 16 0 0 0-16-16z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M336 0H176a64 64 0 0 0-64 64v384a64 64 0 0 0 64 64h160a64 64 0 0 0 64-64V64a64 64 0 0 0-64-64zm32 448a32 32 0 0 1-32 32H176a32 32 0 0 1-32-32V64a32 32 0 0 1 32-32h11.35a7.94 7.94 0 0 1 7.3 4.75A32 32 0 0 0 224 56h64a32 32 0 0 0 29.35-19.25 7.94 7.94 0 0 1 7.3-4.75H336a32 32 0 0 1 32 32z\"},\"child\":[]}]})(props);\n};\nexport function IoPieChartOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M256.05 80.65Q263.94 80 272 80c106 0 192 86 192 192s-86 192-192 192A192.09 192.09 0 0 1 89.12 330.65\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M256 48C141.12 48 48 141.12 48 256a207.29 207.29 0 0 0 18.09 85L256 256z\"},\"child\":[]}]})(props);\n};\nexport function IoPieChartSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m58 362.09-6.51-14.59A224 224 0 0 1 256 32h16v234.37z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M304 66.46v220.65L94.62 380.78A208.31 208.31 0 0 0 272 480c114.69 0 208-93.31 208-208 0-103.81-76.45-190.1-176-205.54z\"},\"child\":[]}]})(props);\n};\nexport function IoPieChart (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M66.1 357a16 16 0 0 1-14.61-9.46A224 224 0 0 1 256 32a16 16 0 0 1 16 16v208a16 16 0 0 1-9.47 14.61l-189.9 84.95A15.93 15.93 0 0 1 66.1 357z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M313.59 68.18A8 8 0 0 0 304 76v180a48.07 48.07 0 0 1-28.4 43.82L103.13 377a8 8 0 0 0-3.35 11.81 208.42 208.42 0 0 0 48.46 50.41A206.32 206.32 0 0 0 272 480c114.69 0 208-93.31 208-208 0-100.45-71.58-184.5-166.41-203.82z\"},\"child\":[]}]})(props);\n};\nexport function IoPinOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"96\",\"r\":\"64\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M272 164a9 9 0 0 0-9-9h-14a9 9 0 0 0-9 9v293.56a32.09 32.09 0 0 0 2.49 12.38l10.07 24a3.92 3.92 0 0 0 6.88 0l10.07-24a32.09 32.09 0 0 0 2.49-12.38z\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"280\",\"cy\":\"72\",\"r\":\"24\"},\"child\":[]}]})(props);\n};\nexport function IoPinSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M339 99a83 83 0 1 0-102 80.8V464l19 32 19-32V179.8A83.28 83.28 0 0 0 339 99zm-59-6a21 21 0 1 1 21-21 21 21 0 0 1-21 21z\"},\"child\":[]}]})(props);\n};\nexport function IoPin (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M336 96a80 80 0 1 0-96 78.39v283.17a32.09 32.09 0 0 0 2.49 12.38l10.07 24a3.92 3.92 0 0 0 6.88 0l10.07-24a32.09 32.09 0 0 0 2.49-12.38V174.39A80.13 80.13 0 0 0 336 96zm-56 0a24 24 0 1 1 24-24 24 24 0 0 1-24 24z\"},\"child\":[]}]})(props);\n};\nexport function IoPintOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M132.43 162c-6.24-34-4.49-45.55-3.07-68.39L132.27 47a16 16 0 0 1 15.94-15h215.57a16 16 0 0 1 15.94 15l2.91 46.61c1.43 22.86 3.19 34.39-3.06 68.45-5.93 32.29-43.71 133.27-43.71 238.32V472a8 8 0 0 1-8 8H184.12a8 8 0 0 1-8-8v-71.63c.01-92.47-37.46-204.3-43.69-238.37zm2.78-66h241.58\"},\"child\":[]}]})(props);\n};\nexport function IoPintSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M399 99.29 394 16H118.45L113 99.26c-1.29 19.24-2.23 33.14 3.73 65.66 1.67 9.11 5.22 22.66 9.73 39.82 12.61 48 33.71 128.36 33.71 195.63V496h191.68v-95.62c0-77.09 21.31-153.29 34-198.81 4.38-15.63 7.83-28 9.41-36.62 6.01-32.51 5.07-46.42 3.74-65.66zM146.23 80l2-32h215.52l2 32z\"},\"child\":[]}]})(props);\n};\nexport function IoPint (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M399 99.29c-.15-2.13-.3-4.35-.44-6.68L395.69 46a32 32 0 0 0-31.91-30H148.21a32 32 0 0 0-31.91 30l-2.91 46.63c-.14 2.31-.29 4.51-.43 6.62-1.29 19.24-2.23 33.14 3.73 65.66 1.67 9.11 5.22 22.66 9.73 39.82 12.61 48 33.71 128.36 33.71 195.63V472a24 24 0 0 0 24 24h143.74a24 24 0 0 0 24-24v-71.62c0-77.09 21.31-153.29 34-198.81 4.38-15.63 7.83-28 9.41-36.62 5.99-32.51 5.05-46.42 3.72-65.66zm-35-47.54 1.5 24a4 4 0 0 1-4 4.25h-211a4 4 0 0 1-4-4.25l1.48-24A4 4 0 0 1 152 48h208a4 4 0 0 1 4 3.75z\"},\"child\":[]}]})(props);\n};\nexport function IoPizzaOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M404.76 123.08C358.37 104.18 309.69 96 256 96s-106.1 9-148.9 26.68c-8.08 3.3-15.26 9-10.07 19.5C101.24 150.71 203 375 241.66 455a15.94 15.94 0 0 0 28.72 0l144.05-312.22c3.19-6.9.9-15.4-9.67-19.7z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M436.38 82.68C384.31 62.08 320.17 48 256 48S128.65 60.78 75.48 82.08C70.79 84 62 88.43 64.41 95.88L74.09 120c4 8.2 8.67 8.2 15.06 8.2 1.79 0 4.29-1 7.28-2.18A442.46 442.46 0 0 1 256 96c56.76 0 114.91 12 159.6 30 3.59 1.4 5.59 2.18 7.28 2.18 6.58 0 10.38 2.19 15-8.1L447.65 96c2.01-6-4.99-10.82-11.27-13.32z\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"192\",\"cy\":\"192\",\"r\":\"32\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"320\",\"cy\":\"208\",\"r\":\"32\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"320\",\"r\":\"32\"},\"child\":[]}]})(props);\n};\nexport function IoPizzaSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M442.3 67.82C383.92 44.72 317.78 32 256 32c-63.57 0-129.8 12.51-186.56 35.25C49.18 75.48 42 80 42 80l22 44 37.53-16.14C147.58 89.53 199.19 80 256.51 80c57.49 0 108.09 9.23 154.75 28.25L448 124l22-44s-7-4-27.7-12.18z\"},\"child\":[]},{\"tag\":\"ellipse\",\"attr\":{\"cx\":\"320.48\",\"cy\":\"207.99\",\"fill\":\"none\",\"rx\":\"31.97\",\"ry\":\"32.03\",\"transform\":\"rotate(-44.98 320.503 207.996)\"},\"child\":[]},{\"tag\":\"ellipse\",\"attr\":{\"cx\":\"192.48\",\"cy\":\"191.99\",\"fill\":\"none\",\"rx\":\"31.97\",\"ry\":\"32.03\",\"transform\":\"rotate(-44.98 192.49 191.992)\"},\"child\":[]},{\"tag\":\"ellipse\",\"attr\":{\"cx\":\"256.48\",\"cy\":\"319.99\",\"fill\":\"none\",\"rx\":\"31.97\",\"ry\":\"32.03\",\"transform\":\"rotate(-44.98 256.505 320)\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M409.66 140.85C364.15 122.52 308.16 112 256 112a425 425 0 0 0-153.7 28.9c-.25.1-9.24 4.23-19 8.71 7.46 16.22 18 39.16 22.2 48.33L256 480l173.74-330.84-19.92-8.24zm-185.25 53.22a32 32 0 1 1-34-34 32.12 32.12 0 0 1 34 34zm64 128a32 32 0 1 1-34-34 32.12 32.12 0 0 1 34 34zm64-112a32 32 0 1 1-34-34 32.12 32.12 0 0 1 34 34z\"},\"child\":[]}]})(props);\n};\nexport function IoPizza (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M441.82 67.83C383.44 44.73 317.3 32 255.56 32 192 32 125.76 44.53 69 67.26 48.7 75.49 45.21 90 48.71 100.82L52.78 111a16 16 0 0 0 21.31 8.69c10.8-4.76 23.93-10.54 27-11.78C145.1 89.64 198.71 80 256 80c57.47 0 108.09 9.24 154.76 28.25 4.42 1.8 14.88 6.42 26.17 11.46a16 16 0 0 0 21.35-8.59L462 102l.34-.9c3.45-10.21.14-25.05-20.52-33.27z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M409.18 140.86C363.67 122.53 307.68 112 255.56 112a425 425 0 0 0-153.74 28.89c-.53.21-2.06.88-4.29 1.88a16 16 0 0 0-8 21.27c4 8.71 9.42 20.58 15.5 33.89C137.94 270 199.21 404 227.26 462A31.74 31.74 0 0 0 256 480a31.73 31.73 0 0 0 28.76-18.06l.06-.13 137.3-297.57a15.94 15.94 0 0 0-8.31-21.45c-2.26-.95-3.85-1.61-4.5-1.87zm-215.1 83.07a32 32 0 1 1 29.85-29.85 32 32 0 0 1-29.85 29.85zm64 128a32 32 0 1 1 29.85-29.85 32 32 0 0 1-29.85 29.85zm64-112a32 32 0 1 1 29.85-29.85 32 32 0 0 1-29.85 29.85z\"},\"child\":[]}]})(props);\n};\nexport function IoPlanetOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M413.48 284.46c58.87 47.24 91.61 89 80.31 108.55-17.85 30.85-138.78-5.48-270.1-81.15S.37 149.84 18.21 119c11.16-19.28 62.58-12.32 131.64 14.09\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"256\",\"r\":\"160\",\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\"},\"child\":[]}]})(props);\n};\nexport function IoPlanetSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M81 274.71C90.36 363 165.26 432 256 432a174.91 174.91 0 0 0 71.49-15.19c-40.3-16.53-84.05-38.17-127.77-63.36C157 328.86 115.84 301.5 81 274.71zm411.72 64.8c-8.5-11.31-20-23.8-34-37a205.25 205.25 0 0 1-11 34c28.72 29.5 33.2 45.34 32.17 48.45-2 2.23-17.05 6.89-58.15-3.53q-8.83-2.24-19.32-5.46-6.76-2.08-13.79-4.49a176.76 176.76 0 0 0 19.54-27.25c.17-.29.35-.58.52-.88A175.39 175.39 0 0 0 432 256a178.87 178.87 0 0 0-1-19c-9.57-88.17-84.4-157-175-157a175.37 175.37 0 0 0-106.4 35.89 177.4 177.4 0 0 0-45.83 51.84c-.16.29-.34.58-.51.87a175.48 175.48 0 0 0-13.83 30.52q-5.59-4.87-10.79-9.67c-5.39-5-10.17-9.63-14.42-14-29.57-30.26-33.09-45.61-32.16-48.45 2.16-2.43 18.1-6.54 58.13 3.55a209.88 209.88 0 0 1 24-26.56c-18.86-5.61-35.79-9.35-50.05-11C33.41 89.47 13.3 95.52 4.35 111c-3.24 5.58-6.35 15.09-2.72 28.6C7 159.66 26.14 184 53.23 209.5c8.63 8.13 18.06 16.37 28.12 24.64 7.32 6 15 12.06 22.9 18.08q7.91 6 16.15 12T137.1 276c25.41 17.61 52.26 34.52 78.59 49.69q14.34 8.26 28.64 16t28.37 14.81c21.9 11 43.35 20.92 63.86 29.43q13.19 5.48 25.81 10.16c11.89 4.42 23.37 8.31 34.31 11.59l1.1.33c25.73 7.66 47.42 11.69 64.48 12H464c21.64 0 36.3-6.38 43.58-19 9.09-15.62 4.08-36.32-14.86-61.5z\"},\"child\":[]}]})(props);\n};\nexport function IoPlanet (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M96.85 286.62a8 8 0 0 0-12.53 8.25C102.07 373.28 172.3 432 256 432a175.31 175.31 0 0 0 52.41-8 8 8 0 0 0 .79-15 1120 1120 0 0 1-109.48-55.61 1126.24 1126.24 0 0 1-102.87-66.77zm395.87 52.89c-4.19-5.58-9.11-11.44-14.7-17.53a15.83 15.83 0 0 0-26.56 5.13c0 .16-.11.31-.17.47a15.75 15.75 0 0 0 3.15 16.06c22.74 25 26.42 38.51 25.48 41.36-2 2.23-17.05 6.89-58.15-3.53q-8.83-2.24-19.32-5.46-6.76-2.08-13.79-4.49a176.76 176.76 0 0 0 19.54-27.25c.17-.29.35-.58.52-.88A175.39 175.39 0 0 0 432 256a178.87 178.87 0 0 0-1-19c-9.57-88.17-84.4-157-175-157a175.37 175.37 0 0 0-106.4 35.89 177.4 177.4 0 0 0-45.83 51.84c-.16.29-.34.58-.51.87a175.48 175.48 0 0 0-13.83 30.52q-5.59-4.87-10.79-9.67c-5.39-5-10.17-9.63-14.42-14-29.57-30.26-33.09-45.61-32.16-48.45 2-2.23 15.54-5.87 48.62 1.31A15.82 15.82 0 0 0 96.22 123l.36-.44a15.74 15.74 0 0 0-8.67-25.43A237.38 237.38 0 0 0 64.13 93c-30.72-3.53-50.83 2.52-59.78 18-3.24 5.58-6.35 15.09-2.72 28.6C7 159.66 26.14 184 53.23 209.5c8.63 8.13 18.06 16.37 28.12 24.64 7.32 6 15 12.06 22.9 18.08q7.91 6 16.15 12T137.1 276c25.41 17.61 52.26 34.52 78.59 49.69q14.34 8.26 28.64 16t28.37 14.81c21.9 11 43.35 20.92 63.86 29.43q13.19 5.48 25.81 10.16c11.89 4.42 23.37 8.31 34.31 11.59l1.1.33c25.73 7.66 47.42 11.69 64.48 12H464c21.64 0 36.3-6.38 43.58-19 9.09-15.62 4.08-36.32-14.86-61.5z\"},\"child\":[]}]})(props);\n};\nexport function IoPlayBackCircleOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M256 448c106 0 192-86 192-192S362 64 256 64 64 150 64 256s86 192 192 192z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m117.23 246.7 114.45-69.14a10.78 10.78 0 0 1 16.32 9.31v53.32l103.68-62.63a10.78 10.78 0 0 1 16.32 9.31v138.26a10.78 10.78 0 0 1-16.32 9.31L248 271.81v53.32a10.78 10.78 0 0 1-16.32 9.31L117.23 265.3a10.89 10.89 0 0 1 0-18.6z\"},\"child\":[]}]})(props);\n};\nexport function IoPlayBackCircleSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M48 256c0 114.69 93.31 208 208 208s208-93.31 208-208S370.69 48 256 48 48 141.31 48 256zm63.47 0L248 168v72.16l120-72.48v176.45l-120-72.32v71.44z\"},\"child\":[]}]})(props);\n};\nexport function IoPlayBackCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M48 256c0 114.69 93.31 208 208 208s208-93.31 208-208S370.69 48 256 48 48 141.31 48 256zm69.23-9.3 114.45-69.14a10.78 10.78 0 0 1 16.32 9.31v53.32l103.68-62.63a10.78 10.78 0 0 1 16.32 9.31v138.26a10.78 10.78 0 0 1-16.32 9.31L248 271.81v53.32a10.78 10.78 0 0 1-16.32 9.31L117.23 265.3a10.89 10.89 0 0 1 0-18.6z\"},\"child\":[]}]})(props);\n};\nexport function IoPlayBackOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M480 145.52v221c0 13.28-13 21.72-23.63 15.35L267.5 268.8c-9.24-5.53-9.24-20.07 0-25.6l188.87-113C467 123.8 480 132.24 480 145.52zm-228.57 0v221c0 13.28-13 21.72-23.63 15.35L38.93 268.8c-9.24-5.53-9.24-20.07 0-25.6l188.87-113c10.64-6.4 23.63 2.04 23.63 15.32z\"},\"child\":[]}]})(props);\n};\nexport function IoPlayBackSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M496 400 256 256l240-144v288zm-240 0L16 256l240-144v288z\"},\"child\":[]}]})(props);\n};\nexport function IoPlayBack (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m30.71 229.47 188.87-113a30.54 30.54 0 0 1 31.09-.39 33.74 33.74 0 0 1 16.76 29.47v79.05l180.72-108.16a30.54 30.54 0 0 1 31.09-.39A33.74 33.74 0 0 1 496 145.52v221A33.73 33.73 0 0 1 479.24 396a30.54 30.54 0 0 1-31.09-.39L267.43 287.4v79.08A33.73 33.73 0 0 1 250.67 396a30.54 30.54 0 0 1-31.09-.39l-188.87-113a31.27 31.27 0 0 1 0-53z\"},\"child\":[]}]})(props);\n};\nexport function IoPlayCircleOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M448 256c0-106-86-192-192-192S64 150 64 256s86 192 192 192 192-86 192-192z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m216.32 334.44 114.45-69.14a10.89 10.89 0 0 0 0-18.6l-114.45-69.14a10.78 10.78 0 0 0-16.32 9.31v138.26a10.78 10.78 0 0 0 16.32 9.31z\"},\"child\":[]}]})(props);\n};\nexport function IoPlayCircleSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 48C141.31 48 48 141.31 48 256s93.31 208 208 208 208-93.31 208-208S370.69 48 256 48zm-56 296V168l144 88z\"},\"child\":[]}]})(props);\n};\nexport function IoPlayCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 48C141.31 48 48 141.31 48 256s93.31 208 208 208 208-93.31 208-208S370.69 48 256 48zm74.77 217.3-114.45 69.14a10.78 10.78 0 0 1-16.32-9.31V186.87a10.78 10.78 0 0 1 16.32-9.31l114.45 69.14a10.89 10.89 0 0 1 0 18.6z\"},\"child\":[]}]})(props);\n};\nexport function IoPlayForwardCircleOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M448 256c0-106-86-192-192-192S64 150 64 256s86 192 192 192 192-86 192-192z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m394.77 246.7-114.45-69.14a10.78 10.78 0 0 0-16.32 9.31v53.32l-103.68-62.63a10.78 10.78 0 0 0-16.32 9.31v138.26a10.78 10.78 0 0 0 16.32 9.31L264 271.81v53.32a10.78 10.78 0 0 0 16.32 9.31l114.45-69.14a10.89 10.89 0 0 0 0-18.6z\"},\"child\":[]}]})(props);\n};\nexport function IoPlayForwardCircleSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 48C141.31 48 48 141.31 48 256s93.31 208 208 208 208-93.31 208-208S370.69 48 256 48zm8 295.25v-71.44l-120 72.32V167.71l120 72.48V168l136.53 88z\"},\"child\":[]}]})(props);\n};\nexport function IoPlayForwardCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 48C141.31 48 48 141.31 48 256s93.31 208 208 208 208-93.31 208-208S370.69 48 256 48zm138.77 217.3-114.45 69.14a10.78 10.78 0 0 1-16.32-9.31v-53.32l-103.68 62.63a10.78 10.78 0 0 1-16.32-9.31V186.87a10.78 10.78 0 0 1 16.32-9.31L264 240.19v-53.32a10.78 10.78 0 0 1 16.32-9.31l114.45 69.14a10.89 10.89 0 0 1 0 18.6z\"},\"child\":[]}]})(props);\n};\nexport function IoPlayForwardOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M32 145.52v221c0 13.28 13 21.72 23.63 15.35l188.87-113c9.24-5.53 9.24-20.07 0-25.6l-188.87-113C45 123.8 32 132.24 32 145.52zm228.57 0v221c0 13.28 13 21.72 23.63 15.35l188.87-113c9.24-5.53 9.24-20.07 0-25.6l-188.87-113c-10.64-6.47-23.63 1.97-23.63 15.25z\"},\"child\":[]}]})(props);\n};\nexport function IoPlayForwardSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m16 400 240-144L16 112v288zm240 0 240-144-240-144v288z\"},\"child\":[]}]})(props);\n};\nexport function IoPlayForward (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m481.29 229.47-188.87-113a30.54 30.54 0 0 0-31.09-.39 33.74 33.74 0 0 0-16.76 29.47v79.05L63.85 116.44a30.54 30.54 0 0 0-31.09-.39A33.74 33.74 0 0 0 16 145.52v221A33.74 33.74 0 0 0 32.76 396a30.54 30.54 0 0 0 31.09-.39L244.57 287.4v79.08A33.74 33.74 0 0 0 261.33 396a30.54 30.54 0 0 0 31.09-.39l188.87-113a31.27 31.27 0 0 0 0-53z\"},\"child\":[]}]})(props);\n};\nexport function IoPlayOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M112 111v290c0 17.44 17 28.52 31 20.16l247.9-148.37c12.12-7.25 12.12-26.33 0-33.58L143 90.84c-14-8.36-31 2.72-31 20.16z\"},\"child\":[]}]})(props);\n};\nexport function IoPlaySharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m96 448 320-192L96 64v384z\"},\"child\":[]}]})(props);\n};\nexport function IoPlaySkipBackCircleOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M256 448c106 0 192-86 192-192S362 64 256 64 64 150 64 256s86 192 192 192z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M192 176a16 16 0 0 1 16 16v53l111.68-67.46a10.78 10.78 0 0 1 16.32 9.33v138.26a10.78 10.78 0 0 1-16.32 9.31L208 267v53a16 16 0 0 1-32 0V192a16 16 0 0 1 16-16z\"},\"child\":[]}]})(props);\n};\nexport function IoPlaySkipBackCircleSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M48 256c0 114.69 93.31 208 208 208s208-93.31 208-208S370.69 48 256 48 48 141.31 48 256zm128-80h32v69l128-77.53v176.9L208 267v69h-32z\"},\"child\":[]}]})(props);\n};\nexport function IoPlaySkipBackCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M48 256c0 114.69 93.31 208 208 208s208-93.31 208-208S370.69 48 256 48 48 141.31 48 256zm128-64a16 16 0 0 1 32 0v53l111.68-67.46a10.78 10.78 0 0 1 16.32 9.33v138.26a10.78 10.78 0 0 1-16.32 9.31L208 267v53a16 16 0 0 1-32 0z\"},\"child\":[]}]})(props);\n};\nexport function IoPlaySkipBackOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M400 111v290c0 17.44-17 28.52-31 20.16L121.09 272.79c-12.12-7.25-12.12-26.33 0-33.58L369 90.84c14-8.36 31 2.72 31 20.16z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M112 80v352\"},\"child\":[]}]})(props);\n};\nexport function IoPlaySkipBackSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M143.47 64v163.52L416 64v384L143.47 284.48V448H96V64h47.47z\"},\"child\":[]}]})(props);\n};\nexport function IoPlaySkipBack (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M112 64a16 16 0 0 1 16 16v136.43L360.77 77.11a35.13 35.13 0 0 1 35.77-.44c12 6.8 19.46 20 19.46 34.33v290c0 14.37-7.46 27.53-19.46 34.33a35.14 35.14 0 0 1-35.77-.45L128 295.57V432a16 16 0 0 1-32 0V80a16 16 0 0 1 16-16z\"},\"child\":[]}]})(props);\n};\nexport function IoPlaySkipForwardCircleOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M448 256c0-106-86-192-192-192S64 150 64 256s86 192 192 192 192-86 192-192z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M320 176a16 16 0 0 0-16 16v53l-111.68-67.44a10.78 10.78 0 0 0-16.32 9.31v138.26a10.78 10.78 0 0 0 16.32 9.31L304 267v53a16 16 0 0 0 32 0V192a16 16 0 0 0-16-16z\"},\"child\":[]}]})(props);\n};\nexport function IoPlaySkipForwardCircleSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 48C141.31 48 48 141.31 48 256s93.31 208 208 208 208-93.31 208-208S370.69 48 256 48zm80 288h-32v-69l-128 77.37V167.49L304 245v-69h32z\"},\"child\":[]}]})(props);\n};\nexport function IoPlaySkipForwardCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 48C141.31 48 48 141.31 48 256s93.31 208 208 208 208-93.31 208-208S370.69 48 256 48zm80 272a16 16 0 0 1-32 0v-53l-111.68 67.44a10.78 10.78 0 0 1-16.32-9.31V186.87a10.78 10.78 0 0 1 16.32-9.31L304 245v-53a16 16 0 0 1 32 0z\"},\"child\":[]}]})(props);\n};\nexport function IoPlaySkipForwardOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M112 111v290c0 17.44 17 28.52 31 20.16l247.9-148.37c12.12-7.25 12.12-26.33 0-33.58L143 90.84c-14-8.36-31 2.72-31 20.16z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M400 80v352\"},\"child\":[]}]})(props);\n};\nexport function IoPlaySkipForwardSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M368.53 64v163.52L96 64v384l272.53-163.52V448H416V64h-47.47z\"},\"child\":[]}]})(props);\n};\nexport function IoPlaySkipForward (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M400 64a16 16 0 0 0-16 16v136.43L151.23 77.11a35.13 35.13 0 0 0-35.77-.44C103.46 83.47 96 96.63 96 111v290c0 14.37 7.46 27.53 19.46 34.33a35.14 35.14 0 0 0 35.77-.45L384 295.57V432a16 16 0 0 0 32 0V80a16 16 0 0 0-16-16z\"},\"child\":[]}]})(props);\n};\nexport function IoPlay (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M133 440a35.37 35.37 0 0 1-17.5-4.67c-12-6.8-19.46-20-19.46-34.33V111c0-14.37 7.46-27.53 19.46-34.33a35.13 35.13 0 0 1 35.77.45l247.85 148.36a36 36 0 0 1 0 61l-247.89 148.4A35.5 35.5 0 0 1 133 440z\"},\"child\":[]}]})(props);\n};\nexport function IoPodiumOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M32 160v296a8 8 0 0 0 8 8h136V160a16 16 0 0 0-16-16H48a16 16 0 0 0-16 16zM320 48H192a16 16 0 0 0-16 16v400h160V64a16 16 0 0 0-16-16zm144 160H352a16 16 0 0 0-16 16v240h136a8 8 0 0 0 8-8V224a16 16 0 0 0-16-16z\"},\"child\":[]}]})(props);\n};\nexport function IoPodiumSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M160 32h192v448H160zm224 160h112v288H384zM16 128h112v352H16z\"},\"child\":[]}]})(props);\n};\nexport function IoPodium (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M320 32H192a32 32 0 0 0-32 32v412a4 4 0 0 0 4 4h184a4 4 0 0 0 4-4V64a32 32 0 0 0-32-32zm144 160h-72a8 8 0 0 0-8 8v272a8 8 0 0 0 8 8h80a24 24 0 0 0 24-24V224a32 32 0 0 0-32-32zM48 128a32 32 0 0 0-32 32v296a24 24 0 0 0 24 24h80a8 8 0 0 0 8-8V136a8 8 0 0 0-8-8z\"},\"child\":[]}]})(props);\n};\nexport function IoPowerOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M378 108a191.41 191.41 0 0 1 70 148c0 106-86 192-192 192S64 362 64 256a192 192 0 0 1 69-148m123-44v192\"},\"child\":[]}]})(props);\n};\nexport function IoPowerSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 464c-114.69 0-208-93.23-208-207.82a207.44 207.44 0 0 1 74.76-160.13l16.9-14 28.17 33.72-16.9 14A163.72 163.72 0 0 0 92 256.18c0 90.39 73.57 163.93 164 163.93s164-73.54 164-163.93a163.38 163.38 0 0 0-59.83-126.36l-17-14 28-33.82 17 14A207.13 207.13 0 0 1 464 256.18C464 370.77 370.69 464 256 464z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M234 48h44v224h-44z\"},\"child\":[]}]})(props);\n};\nexport function IoPower (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 464c-114.69 0-208-93.47-208-208.35 0-62.45 27.25-121 74.76-160.55a22 22 0 1 1 28.17 33.8C113.48 160.1 92 206.3 92 255.65 92 346.27 165.57 420 256 420s164-73.73 164-164.35A164 164 0 0 0 360.17 129a22 22 0 1 1 28-33.92A207.88 207.88 0 0 1 464 255.65C464 370.53 370.69 464 256 464z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M256 272a22 22 0 0 1-22-22V70a22 22 0 0 1 44 0v180a22 22 0 0 1-22 22z\"},\"child\":[]}]})(props);\n};\nexport function IoPricetagOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M435.25 48h-122.9a14.46 14.46 0 0 0-10.2 4.2L56.45 297.9a28.85 28.85 0 0 0 0 40.7l117 117a28.85 28.85 0 0 0 40.7 0L459.75 210a14.46 14.46 0 0 0 4.2-10.2v-123a28.66 28.66 0 0 0-28.7-28.8z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M384 160a32 32 0 1 1 32-32 32 32 0 0 1-32 32z\"},\"child\":[]}]})(props);\n};\nexport function IoPricetagSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M304 32 16 320l176 176 288-288V32zm80 128a32 32 0 1 1 32-32 32 32 0 0 1-32 32z\"},\"child\":[]}]})(props);\n};\nexport function IoPricetag (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M467 45.2A44.45 44.45 0 0 0 435.29 32H312.36a30.63 30.63 0 0 0-21.52 8.89L45.09 286.59a44.82 44.82 0 0 0 0 63.32l117 117a44.83 44.83 0 0 0 63.34 0l245.65-245.6A30.6 30.6 0 0 0 480 199.8v-123a44.24 44.24 0 0 0-13-31.6zM384 160a32 32 0 1 1 32-32 32 32 0 0 1-32 32z\"},\"child\":[]}]})(props);\n};\nexport function IoPricetagsOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M403.29 32H280.36a14.46 14.46 0 0 0-10.2 4.2L24.4 281.9a28.85 28.85 0 0 0 0 40.7l117 117a28.86 28.86 0 0 0 40.71 0L427.8 194a14.46 14.46 0 0 0 4.2-10.2v-123A28.66 28.66 0 0 0 403.29 32z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M352 144a32 32 0 1 1 32-32 32 32 0 0 1-32 32z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"m230 480 262-262a13.81 13.81 0 0 0 4-10V80\"},\"child\":[]}]})(props);\n};\nexport function IoPricetagsSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M288 16 0 304l176 176 288-288V16zm80 128a32 32 0 1 1 32-32 32 32 0 0 1-32 32z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M480 64v144L216.9 471.1 242 496l270-272V64h-32z\"},\"child\":[]}]})(props);\n};\nexport function IoPricetags (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M448 183.8v-123A44.66 44.66 0 0 0 403.29 16H280.36a30.62 30.62 0 0 0-21.51 8.89L13.09 270.58a44.86 44.86 0 0 0 0 63.34l117 117a44.84 44.84 0 0 0 63.33 0l245.69-245.61A30.6 30.6 0 0 0 448 183.8zM352 144a32 32 0 1 1 32-32 32 32 0 0 1-32 32z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M496 64a16 16 0 0 0-16 16v127.37L218.69 468.69a16 16 0 1 0 22.62 22.62l262-262A29.84 29.84 0 0 0 512 208V80a16 16 0 0 0-16-16z\"},\"child\":[]}]})(props);\n};\nexport function IoPrintOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M384 368h24a40.12 40.12 0 0 0 40-40V168a40.12 40.12 0 0 0-40-40H104a40.12 40.12 0 0 0-40 40v160a40.12 40.12 0 0 0 40 40h24\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"256\",\"height\":\"208\",\"x\":\"128\",\"y\":\"240\",\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"rx\":\"24.32\",\"ry\":\"24.32\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M384 128v-24a40.12 40.12 0 0 0-40-40H168a40.12 40.12 0 0 0-40 40v24\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"392\",\"cy\":\"184\",\"r\":\"24\"},\"child\":[]}]})(props);\n};\nexport function IoPrintSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M400 96V56a8 8 0 0 0-8-8H120a8 8 0 0 0-8 8v40\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"208\",\"height\":\"160\",\"x\":\"152\",\"y\":\"264\",\"fill\":\"none\",\"rx\":\"4\",\"ry\":\"4\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"208\",\"height\":\"160\",\"x\":\"152\",\"y\":\"264\",\"fill\":\"none\",\"rx\":\"4\",\"ry\":\"4\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M408 112H104a56 56 0 0 0-56 56v208a8 8 0 0 0 8 8h56v72a8 8 0 0 0 8 8h272a8 8 0 0 0 8-8v-72h56a8 8 0 0 0 8-8V168a56 56 0 0 0-56-56zm-48 308a4 4 0 0 1-4 4H156a4 4 0 0 1-4-4V268a4 4 0 0 1 4-4h200a4 4 0 0 1 4 4zm34-212.08a24 24 0 1 1 22-22 24 24 0 0 1-22 22z\"},\"child\":[]}]})(props);\n};\nexport function IoPrint (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M408 112H106a58 58 0 0 0-58 58v158a56 56 0 0 0 56 56h8v39.68A40.32 40.32 0 0 0 152.32 464h207.36A40.32 40.32 0 0 0 400 423.68V384h8a56 56 0 0 0 56-56V168a56 56 0 0 0-56-56zm-40 311.68a8.35 8.35 0 0 1-8.32 8.32H152.32a8.35 8.35 0 0 1-8.32-8.32V264.32a8.35 8.35 0 0 1 8.32-8.32h207.36a8.35 8.35 0 0 1 8.32 8.32zm26-215.76a24 24 0 1 1 22-22 24 24 0 0 1-22 22zM344 48H168a56.09 56.09 0 0 0-55.42 48h286.84A56.09 56.09 0 0 0 344 48z\"},\"child\":[]}]})(props);\n};\nexport function IoPrismOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M229.73 45.88 37.53 327.79a31.79 31.79 0 0 0 11.31 46L241 476.26a31.77 31.77 0 0 0 29.92 0l192.2-102.51a31.79 31.79 0 0 0 11.31-46L282.27 45.88a31.8 31.8 0 0 0-52.54 0zM256 32v448\"},\"child\":[]}]})(props);\n};\nexport function IoPrismSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 16 16 352l240 144 240-144zm-20 96.82v324.53L73.73 340z\"},\"child\":[]}]})(props);\n};\nexport function IoPrism (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M487.83 319.44 295.63 36.88a48 48 0 0 0-79.26 0L24.17 319.44a47.1 47.1 0 0 0 16.93 68.13l192.2 102.75a48.05 48.05 0 0 0 45.4 0l192.2-102.75a47.1 47.1 0 0 0 16.93-68.13zm-431.26 41a16.12 16.12 0 0 1-8-10.38 16.8 16.8 0 0 1 2.37-13.62L232.66 69.26c2.18-3.21 7.34-1.72 7.34 2.13v374c0 5.9-6.54 9.63-11.87 6.78z\"},\"child\":[]}]})(props);\n};\nexport function IoPulseOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M48 320h64l64-256 64 384 64-224 32 96h64\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"432\",\"cy\":\"320\",\"r\":\"32\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\"},\"child\":[]}]})(props);\n};\nexport function IoPulseSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M426 266a54.07 54.07 0 0 0-49.3 32h-24.84l-27-81a22 22 0 0 0-42 .92l-37.2 130.2-48-281.74a22 22 0 0 0-43-1.72L94.82 298H32v44h80a22 22 0 0 0 21.34-16.66L171.69 172l46.61 273.62A22 22 0 0 0 238.76 464H240a22 22 0 0 0 21.15-16l44.47-149.62 9.51 28.62A22 22 0 0 0 336 342h40.7a54 54 0 1 0 49.3-76z\"},\"child\":[]}]})(props);\n};\nexport function IoPulse (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M432 272a48.09 48.09 0 0 0-45.25 32h-39.22l-28.35-85.06a16 16 0 0 0-30.56.66l-44.51 155.76-52.33-314a16 16 0 0 0-31.3-1.25L99.51 304H48a16 16 0 0 0 0 32h64a16 16 0 0 0 15.52-12.12l45.34-181.37 51.36 308.12A16 16 0 0 0 239.1 464h.91a16 16 0 0 0 15.37-11.6l49.8-174.28 15.64 46.94A16 16 0 0 0 336 336h50.75A48 48 0 1 0 432 272z\"},\"child\":[]}]})(props);\n};\nexport function IoPushOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M336 336h40a40 40 0 0 0 40-40V88a40 40 0 0 0-40-40H136a40 40 0 0 0-40 40v208a40 40 0 0 0 40 40h40\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"m176 240 80-80 80 80m-80 224V176\"},\"child\":[]}]})(props);\n};\nexport function IoPushSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M272 352V204.63l64 64L358.63 246 256 143.37 153.37 246 176 268.63l64-64V352H92a12 12 0 0 1-12-12V44a12 12 0 0 1 12-12h328a12 12 0 0 1 12 12v296a12 12 0 0 1-12 12zm-32 0h32v128h-32z\"},\"child\":[]}]})(props);\n};\nexport function IoPush (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M376 352H272V198.63l52.69 52.68a16 16 0 0 0 22.62-22.62l-80-80a16 16 0 0 0-22.62 0l-80 80a16 16 0 0 0 22.62 22.62L240 198.63V352H136a56.06 56.06 0 0 1-56-56V88a56.06 56.06 0 0 1 56-56h240a56.06 56.06 0 0 1 56 56v208a56.06 56.06 0 0 1-56 56zM272 464a16 16 0 0 1-32 0V352h32z\"},\"child\":[]}]})(props);\n};\nexport function IoQrCodeOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"rect\",\"attr\":{\"width\":\"80\",\"height\":\"80\",\"x\":\"336\",\"y\":\"336\",\"rx\":\"8\",\"ry\":\"8\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"64\",\"height\":\"64\",\"x\":\"272\",\"y\":\"272\",\"rx\":\"8\",\"ry\":\"8\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"64\",\"height\":\"64\",\"x\":\"416\",\"y\":\"416\",\"rx\":\"8\",\"ry\":\"8\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"48\",\"height\":\"48\",\"x\":\"432\",\"y\":\"272\",\"rx\":\"8\",\"ry\":\"8\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"48\",\"height\":\"48\",\"x\":\"272\",\"y\":\"432\",\"rx\":\"8\",\"ry\":\"8\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"80\",\"height\":\"80\",\"x\":\"336\",\"y\":\"96\",\"rx\":\"8\",\"ry\":\"8\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"176\",\"height\":\"176\",\"x\":\"288\",\"y\":\"48\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"rx\":\"16\",\"ry\":\"16\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"80\",\"height\":\"80\",\"x\":\"96\",\"y\":\"96\",\"rx\":\"8\",\"ry\":\"8\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"176\",\"height\":\"176\",\"x\":\"48\",\"y\":\"48\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"rx\":\"16\",\"ry\":\"16\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"80\",\"height\":\"80\",\"x\":\"96\",\"y\":\"336\",\"rx\":\"8\",\"ry\":\"8\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"176\",\"height\":\"176\",\"x\":\"48\",\"y\":\"288\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"rx\":\"16\",\"ry\":\"16\"},\"child\":[]}]})(props);\n};\nexport function IoQrCodeSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M336 336h80v80h-80zm-64-64h64v64h-64zm144 144h64v64h-64zm16-144h48v48h-48zM272 432h48v48h-48zm64-336h80v80h-80z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M480 240H272V32h208zm-164-44h120V76H316zM96 96h80v80H96z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M240 240H32V32h208zM76 196h120V76H76zm20 140h80v80H96z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M240 480H32V272h208zM76 436h120V316H76z\"},\"child\":[]}]})(props);\n};\nexport function IoQrCode (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"rect\",\"attr\":{\"width\":\"80\",\"height\":\"80\",\"x\":\"336\",\"y\":\"336\",\"rx\":\"8\",\"ry\":\"8\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"64\",\"height\":\"64\",\"x\":\"272\",\"y\":\"272\",\"rx\":\"8\",\"ry\":\"8\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"64\",\"height\":\"64\",\"x\":\"416\",\"y\":\"416\",\"rx\":\"8\",\"ry\":\"8\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"48\",\"height\":\"48\",\"x\":\"432\",\"y\":\"272\",\"rx\":\"8\",\"ry\":\"8\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"48\",\"height\":\"48\",\"x\":\"272\",\"y\":\"432\",\"rx\":\"8\",\"ry\":\"8\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M448 32H304a32 32 0 0 0-32 32v144a32 32 0 0 0 32 32h144a32 32 0 0 0 32-32V64a32 32 0 0 0-32-32zm-32 136a8 8 0 0 1-8 8h-64a8 8 0 0 1-8-8v-64a8 8 0 0 1 8-8h64a8 8 0 0 1 8 8zM208 32H64a32 32 0 0 0-32 32v144a32 32 0 0 0 32 32h144a32 32 0 0 0 32-32V64a32 32 0 0 0-32-32zm-32 136a8 8 0 0 1-8 8h-64a8 8 0 0 1-8-8v-64a8 8 0 0 1 8-8h64a8 8 0 0 1 8 8zm32 104H64a32 32 0 0 0-32 32v144a32 32 0 0 0 32 32h144a32 32 0 0 0 32-32V304a32 32 0 0 0-32-32zm-32 136a8 8 0 0 1-8 8h-64a8 8 0 0 1-8-8v-64a8 8 0 0 1 8-8h64a8 8 0 0 1 8 8z\"},\"child\":[]}]})(props);\n};\nexport function IoRadioButtonOffOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M448 256c0-106-86-192-192-192S64 150 64 256s86 192 192 192 192-86 192-192z\"},\"child\":[]}]})(props);\n};\nexport function IoRadioButtonOffSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M448 256c0-106-86-192-192-192S64 150 64 256s86 192 192 192 192-86 192-192z\"},\"child\":[]}]})(props);\n};\nexport function IoRadioButtonOff (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M448 256c0-106-86-192-192-192S64 150 64 256s86 192 192 192 192-86 192-192z\"},\"child\":[]}]})(props);\n};\nexport function IoRadioButtonOnOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M448 256c0-106-86-192-192-192S64 150 64 256s86 192 192 192 192-86 192-192z\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"256\",\"r\":\"144\"},\"child\":[]}]})(props);\n};\nexport function IoRadioButtonOnSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M448 256c0-106-86-192-192-192S64 150 64 256s86 192 192 192 192-86 192-192z\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"256\",\"r\":\"144\"},\"child\":[]}]})(props);\n};\nexport function IoRadioButtonOn (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M448 256c0-106-86-192-192-192S64 150 64 256s86 192 192 192 192-86 192-192z\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"256\",\"r\":\"144\"},\"child\":[]}]})(props);\n};\nexport function IoRadioOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"256.02\",\"r\":\"32\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M184.25 192.25a96 96 0 0 0 0 127.52m143.52 0a96 96 0 0 0 0-127.52m-194.49-50.97a168 168 0 0 0 0 229.44m245.44 0a168 168 0 0 0 0-229.44M435 416a240.34 240.34 0 0 0 0-320M77 96a240.34 240.34 0 0 0 0 320\"},\"child\":[]}]})(props);\n};\nexport function IoRadioSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"ellipse\",\"attr\":{\"cx\":\"256\",\"cy\":\"256\",\"rx\":\"36\",\"ry\":\"35.99\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m188.4 350.8-14.62-16.44a117.91 117.91 0 0 1 0-156.71l14.62-16.43 32.87 29.24-14.62 16.43a73.93 73.93 0 0 0 0 98.25l14.62 16.44zm135.2 0-32.89-29.22 14.62-16.44a73.93 73.93 0 0 0 0-98.25l-14.62-16.43 32.87-29.24 14.62 16.43a117.91 117.91 0 0 1 0 156.71z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m138.24 401.76-15-16.06a189.85 189.85 0 0 1 0-259.4l15-16.07 32.14 30.05-15 16.06a145.88 145.88 0 0 0 0 199.32l15 16.06zm235.52 0-32.14-30 15-16.06a145.88 145.88 0 0 0 0-199.32l-15-16.06 32.14-30 15 16.07a189.85 189.85 0 0 1 0 259.4z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m430.73 447-32.79-29.33 14.66-16.39a218.2 218.2 0 0 0 0-290.56l-14.67-16.38L430.72 65l14.67 16.39a262.18 262.18 0 0 1 0 349.22zm-349.46 0L66.6 430.61a262.18 262.18 0 0 1 0-349.22L81.28 65l32.79 29.34-14.68 16.38a218.2 218.2 0 0 0 0 290.56l14.66 16.39z\"},\"child\":[]}]})(props);\n};\nexport function IoRadio (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"256\",\"r\":\"36\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M190.24 341.77a22 22 0 0 1-16.46-7.38 118 118 0 0 1 0-156.76 22 22 0 1 1 32.87 29.24 74 74 0 0 0 0 98.29 22 22 0 0 1-16.43 36.61zm131.52 0a22 22 0 0 1-16.43-36.61 74 74 0 0 0 0-98.29 22 22 0 1 1 32.87-29.24 118 118 0 0 1 0 156.76 22 22 0 0 1-16.44 7.38z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M139.29 392.72a21.92 21.92 0 0 1-16.08-7 190 190 0 0 1 0-259.49 22 22 0 1 1 32.13 30.06 146 146 0 0 0 0 199.38 22 22 0 0 1-16.06 37zm233.42 0a22 22 0 0 1-16.06-37 146 146 0 0 0 0-199.38 22 22 0 1 1 32.13-30.06 190 190 0 0 1 0 259.49 21.92 21.92 0 0 1-16.07 6.95z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M429 438a22 22 0 0 1-16.39-36.67 218.34 218.34 0 0 0 0-290.66 22 22 0 0 1 32.78-29.34 262.34 262.34 0 0 1 0 349.34A22 22 0 0 1 429 438zm-346 0a21.94 21.94 0 0 1-16.41-7.33 262.34 262.34 0 0 1 0-349.34 22 22 0 0 1 32.78 29.34 218.34 218.34 0 0 0 0 290.66A22 22 0 0 1 83 438z\"},\"child\":[]}]})(props);\n};\nexport function IoRainyOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M114.61 162.85A16.07 16.07 0 0 0 128 149.6C140.09 76.17 193.63 32 256 32c57.93 0 96.62 37.75 112.2 77.74a15.84 15.84 0 0 0 12.2 9.87c50 8.15 91.6 41.54 91.6 99.59 0 59.4-48.6 100.8-108 100.8H130c-49.5 0-90-24.7-90-79.2 0-48.47 38.67-72.22 74.61-77.95z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"m144 384-32 48m112-48-64 96m144-96-32 48m112-48-64 96\"},\"child\":[]}]})(props);\n};\nexport function IoRainySharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M364 336H130c-29.5 0-54.92-7.83-73.53-22.64C35.23 296.44 24 271.35 24 240.8c0-26.66 10.08-49.8 29.14-66.91 15.24-13.68 36.17-23.21 59-26.84.06 0 .08 0 .09-.05 6.44-39 23.83-72.09 50.31-95.68A140.24 140.24 0 0 1 256 16c30.23 0 58.48 9.39 81.71 27.17a142.69 142.69 0 0 1 45.36 60.66c29.41 4.82 54.72 17.11 73.19 35.54C477 160.11 488 187.71 488 219.2c0 32.85-13.13 62.87-37 84.52-22.89 20.82-53.8 32.28-87 32.28zm19-232.18zM93.82 430.422l49.75-74.626 26.626 17.75-49.751 74.627zm47.996 48.007L223.568 355.8l26.625 17.75-81.751 122.628zm111.995-48.005 49.751-74.626 26.626 17.75-49.751 74.627zm47.997 48.006 81.752-122.627 26.625 17.75-81.751 122.628z\"},\"child\":[]}]})(props);\n};\nexport function IoRainy (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M456.26 139.37c-16.77-16.73-39.17-28.41-65.17-34a16 16 0 0 1-11.19-9 142.24 142.24 0 0 0-42.19-53.21C314.48 25.39 286.23 16 256 16a140.24 140.24 0 0 0-93.5 35.32c-24.2 21.56-40.91 51.34-48.43 85.83a16.05 16.05 0 0 1-11.72 12.18c-25 6.3-35.71 12.54-49.21 24.56C34 190.93 24 214.14 24 240.8c0 30.55 11.23 55.64 32.47 72.56C75.08 328.17 100.5 336 130 336h234c33.2 0 64.11-11.46 87-32.28 23.84-21.65 37-51.67 37-84.52 0-31.49-11-59.09-31.74-79.83zM112 448a16 16 0 0 1-13.3-24.88l32-48a16 16 0 0 1 26.62 17.76l-32 48A16 16 0 0 1 112 448zm48 48a16 16 0 0 1-13.29-24.88l64-96a16 16 0 0 1 26.62 17.76l-64 96A16 16 0 0 1 160 496zm112-48a16 16 0 0 1-13.3-24.88l32-48a16 16 0 0 1 26.62 17.76l-32 48A16 16 0 0 1 272 448zm48 48a16 16 0 0 1-13.3-24.88l64-96a16 16 0 0 1 26.62 17.76l-64 96A16 16 0 0 1 320 496z\"},\"child\":[]}]})(props);\n};\nexport function IoReaderOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"rect\",\"attr\":{\"width\":\"320\",\"height\":\"416\",\"x\":\"96\",\"y\":\"48\",\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"rx\":\"48\",\"ry\":\"48\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M176 128h160m-160 80h160m-160 80h80\"},\"child\":[]}]})(props);\n};\nexport function IoReaderSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M80 44v424a12 12 0 0 0 12 12h328a12 12 0 0 0 12-12V44a12 12 0 0 0-12-12H92a12 12 0 0 0-12 12zm192 260H160v-32h112zm80-80H160v-32h192zm0-80H160v-32h192z\"},\"child\":[]}]})(props);\n};\nexport function IoReader (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M368 32H144a64.07 64.07 0 0 0-64 64v320a64.07 64.07 0 0 0 64 64h224a64.07 64.07 0 0 0 64-64V96a64.07 64.07 0 0 0-64-64zM256 304h-80a16 16 0 0 1 0-32h80a16 16 0 0 1 0 32zm80-80H176a16 16 0 0 1 0-32h160a16 16 0 0 1 0 32zm0-80H176a16 16 0 0 1 0-32h160a16 16 0 0 1 0 32z\"},\"child\":[]}]})(props);\n};\nexport function IoReceiptOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M160 336V48l32 16 32-16 31.94 16 32.37-16L320 64l31.79-16 31.93 16L416 48l32.01 16L480 48v224\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M480 272v112a80 80 0 0 1-80 80 80 80 0 0 1-80-80v-48H48a15.86 15.86 0 0 0-16 16c0 64 6.74 112 80 112h288\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M224 144h192m-128 80h128\"},\"child\":[]}]})(props);\n};\nexport function IoReceiptSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m448 48-32-16-32 16-32-16-32 16-32-16-32 16-32-16-32 16-48-16v256.05h224V424c0 30.93 33.07 56 64 56h12c30.93 0 52-25.07 52-56V32zM272.5 240l-.5-32h159.5l.5 32zm-64-80-.5-32h223.5l.5 32z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M336 424V320H16v32c0 50.55 5.78 71.62 14.46 87.63C45.19 466.8 71.86 480 112 480h256s-32-20-32-56z\"},\"child\":[]}]})(props);\n};\nexport function IoReceipt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M483.82 32.45a16.28 16.28 0 0 0-11.23 1.37L448 46.1l-24.8-12.4a16 16 0 0 0-14.31 0l-25.11 12.41L359 33.7a16 16 0 0 0-14.36 0L320 46.07l-24.45-12.34a16 16 0 0 0-14.35-.06L256 46.12l-24.8-12.43a16.05 16.05 0 0 0-14.33 0L192 46.1l-24.84-12.41a16 16 0 0 0-19.36 3.94 16.25 16.25 0 0 0-3.8 10.65V288l.05.05H336a32 32 0 0 1 32 32V424c0 30.93 33.07 56 64 56h12a52 52 0 0 0 52-52V48a16 16 0 0 0-12.18-15.55zM416 240H288.5c-8.64 0-16.1-6.64-16.48-15.28A16 16 0 0 1 288 208h127.5c8.64 0 16.1 6.64 16.48 15.28A16 16 0 0 1 416 240zm0-80H224.5c-8.64 0-16.1-6.64-16.48-15.28A16 16 0 0 1 224 128h191.5c8.64 0 16.1 6.64 16.48 15.28A16 16 0 0 1 416 160z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M336 424v-88a16 16 0 0 0-16-16H48a32.1 32.1 0 0 0-32 32.05c0 50.55 5.78 71.57 14.46 87.57C45.19 466.79 71.86 480 112 480h245.68a4 4 0 0 0 2.85-6.81C351.07 463.7 336 451 336 424z\"},\"child\":[]}]})(props);\n};\nexport function IoRecordingOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"circle\",\"attr\":{\"cx\":\"128\",\"cy\":\"256\",\"r\":\"96\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"384\",\"cy\":\"256\",\"r\":\"96\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M128 352h256\"},\"child\":[]}]})(props);\n};\nexport function IoRecordingSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M384 138a117.93 117.93 0 0 0-91.84 192h-72.32A118 118 0 1 0 128 374h256a118 118 0 0 0 0-236zM54 256a74 74 0 1 1 74 74 74.09 74.09 0 0 1-74-74zm330 74a74 74 0 1 1 74-74 74.09 74.09 0 0 1-74 74z\"},\"child\":[]}]})(props);\n};\nexport function IoRecording (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M380.79 144.05c-59.1 1.65-107.12 49.71-108.79 108.81a111.64 111.64 0 0 0 30.36 79.77A2 2 0 0 1 301 336h-90a2 2 0 0 1-1.44-3.37A111.64 111.64 0 0 0 240 252.86c-1.63-59.1-49.65-107.16-108.75-108.81A112.12 112.12 0 0 0 16 255.53C15.75 317.77 67 368 129.24 368h253.52C445 368 496.25 317.77 496 255.53a112.12 112.12 0 0 0-115.21-111.48z\"},\"child\":[]}]})(props);\n};\nexport function IoRefreshCircleOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"28\",\"d\":\"M288 193s12.18-6-32-6a80 80 0 1 0 80 80\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"28\",\"d\":\"m256 149 40 40-40 40\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M256 64C150 64 64 150 64 256s86 192 192 192 192-86 192-192S362 64 256 64z\"},\"child\":[]}]})(props);\n};\nexport function IoRefreshCircleSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 48C141.31 48 48 141.32 48 256c0 114.86 93.14 208 208 208 114.69 0 208-93.31 208-208 0-114.87-93.13-208-208-208zm94 219a94 94 0 1 1-94-94h4.21l-24-24L256 129.2l59.8 59.8-59.8 59.8-19.8-19.8 27.92-27.92c-2.4-.08-5.12-.08-8.12-.08a66 66 0 1 0 66 66v-14h28z\"},\"child\":[]}]})(props);\n};\nexport function IoRefreshCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 48C141.31 48 48 141.32 48 256c0 114.86 93.14 208 208 208 114.69 0 208-93.31 208-208 0-114.87-93.13-208-208-208zm0 313a94 94 0 0 1 0-188h4.21l-14.11-14.1a14 14 0 0 1 19.8-19.8l40 40a14 14 0 0 1 0 19.8l-40 40a14 14 0 0 1-19.8-19.8l18-18c-2.38-.1-5.1-.1-8.1-.1a66 66 0 1 0 66 66 14 14 0 0 1 28 0 94.11 94.11 0 0 1-94 94z\"},\"child\":[]}]})(props);\n};\nexport function IoRefreshOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M320 146s24.36-12-64-12a160 160 0 1 0 160 160\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"m256 58 80 80-80 80\"},\"child\":[]}]})(props);\n};\nexport function IoRefreshSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"square\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M320 146s24.36-12-64-12a160 160 0 1 0 160 160\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"square\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"m256 58 80 80-80 80\"},\"child\":[]}]})(props);\n};\nexport function IoRefresh (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M320 146s24.36-12-64-12a160 160 0 1 0 160 160\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"m256 58 80 80-80 80\"},\"child\":[]}]})(props);\n};\nexport function IoReloadCircleOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M448 256c0-106-86-192-192-192S64 150 64 256s86 192 192 192 192-86 192-192z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"m341.54 197.85-11.37-13.23a103.37 103.37 0 1 0 22.71 105.84\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M367.32 162a8.44 8.44 0 0 0-6 2.54l-59.54 59.54a8.61 8.61 0 0 0 6.09 14.71h59.54a8.62 8.62 0 0 0 8.62-8.62v-59.56a8.61 8.61 0 0 0-8.68-8.63z\"},\"child\":[]}]})(props);\n};\nexport function IoReloadCircleSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 48C141.31 48 48 141.31 48 256s93.31 208 208 208 208-93.31 208-208S370.69 48 256 48zm120 190.77h-89l36.88-36.88-5.6-6.51a87.38 87.38 0 1 0-62.94 148 87.55 87.55 0 0 0 82.42-58.25l5.37-15.13 30.17 10.67-5.3 15.13a119.4 119.4 0 1 1-112.62-159.18 118.34 118.34 0 0 1 86.36 36.95l.56.62 4.31 5L376 149.81z\"},\"child\":[]}]})(props);\n};\nexport function IoReloadCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 48C141.31 48 48 141.31 48 256s93.31 208 208 208 208-93.31 208-208S370.69 48 256 48zm120 182.15a8.62 8.62 0 0 1-8.62 8.62h-59.54a8.61 8.61 0 0 1-6.09-14.71l22.17-22.17-5.6-6.51a87.38 87.38 0 1 0-62.94 148 87.55 87.55 0 0 0 82.42-58.25A16 16 0 1 1 368 295.8a119.4 119.4 0 1 1-112.62-159.18 118.34 118.34 0 0 1 86.36 36.95l.56.62 4.31 5 14.68-14.68a8.44 8.44 0 0 1 6-2.54 8.61 8.61 0 0 1 8.68 8.63z\"},\"child\":[]}]})(props);\n};\nexport function IoReloadOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"m400 148-21.12-24.57A191.43 191.43 0 0 0 240 64C134 64 48 150 48 256s86 192 192 192a192.09 192.09 0 0 0 181.07-128\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M464 97.42V208a16 16 0 0 1-16 16H337.42c-14.26 0-21.4-17.23-11.32-27.31L436.69 86.1C446.77 76 464 83.16 464 97.42z\"},\"child\":[]}]})(props);\n};\nexport function IoReloadSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"square\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"m400 148-21.12-24.57A191.43 191.43 0 0 0 240 64C134 64 48 150 48 256s86 192 192 192a192.09 192.09 0 0 0 181.07-128\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M464 68.45V220a4 4 0 0 1-4 4H308.45a4 4 0 0 1-2.83-6.83L457.17 65.62a4 4 0 0 1 6.83 2.83z\"},\"child\":[]}]})(props);\n};\nexport function IoReload (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"m400 148-21.12-24.57A191.43 191.43 0 0 0 240 64C134 64 48 150 48 256s86 192 192 192a192.09 192.09 0 0 0 181.07-128\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M464 97.42V208a16 16 0 0 1-16 16H337.42c-14.26 0-21.4-17.23-11.32-27.31L436.69 86.1C446.77 76 464 83.16 464 97.42z\"},\"child\":[]}]})(props);\n};\nexport function IoRemoveCircleOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M448 256c0-106-86-192-192-192S64 150 64 256s86 192 192 192 192-86 192-192z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M336 256H176\"},\"child\":[]}]})(props);\n};\nexport function IoRemoveCircleSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 48C141.31 48 48 141.31 48 256s93.31 208 208 208 208-93.31 208-208S370.69 48 256 48zm96 224H160v-32h192z\"},\"child\":[]}]})(props);\n};\nexport function IoRemoveCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 48C141.31 48 48 141.31 48 256s93.31 208 208 208 208-93.31 208-208S370.69 48 256 48zm80 224H176a16 16 0 0 1 0-32h160a16 16 0 0 1 0 32z\"},\"child\":[]}]})(props);\n};\nexport function IoRemoveOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M400 256H112\"},\"child\":[]}]})(props);\n};\nexport function IoRemoveSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"square\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M400 256H112\"},\"child\":[]}]})(props);\n};\nexport function IoRemove (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M400 256H112\"},\"child\":[]}]})(props);\n};\nexport function IoReorderFourOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M96 304h320M96 208h320M96 112h320M96 400h320\"},\"child\":[]}]})(props);\n};\nexport function IoReorderFourSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"square\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"44\",\"d\":\"M102 304h308m-308-96h308m-308-96h308M102 400h308\"},\"child\":[]}]})(props);\n};\nexport function IoReorderFour (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"44\",\"d\":\"M102 304h308m-308-96h308m-308-96h308M102 400h308\"},\"child\":[]}]})(props);\n};\nexport function IoReorderThreeOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M96 256h320M96 176h320M96 336h320\"},\"child\":[]}]})(props);\n};\nexport function IoReorderThreeSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"square\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"44\",\"d\":\"M102 256h308m-308-80h308M102 336h308\"},\"child\":[]}]})(props);\n};\nexport function IoReorderThree (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"44\",\"d\":\"M102 256h308m-308-80h308M102 336h308\"},\"child\":[]}]})(props);\n};\nexport function IoReorderTwoOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M112 304h288m-288-96h288\"},\"child\":[]}]})(props);\n};\nexport function IoReorderTwoSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"square\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"44\",\"d\":\"M118 304h276m-276-96h276\"},\"child\":[]}]})(props);\n};\nexport function IoReorderTwo (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"44\",\"d\":\"M118 304h276m-276-96h276\"},\"child\":[]}]})(props);\n};\nexport function IoRepeatOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"m320 120 48 48-48 48\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M352 168H144a80.24 80.24 0 0 0-80 80v16m128 128-48-48 48-48\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M160 344h208a80.24 80.24 0 0 0 80-80v-16\"},\"child\":[]}]})(props);\n};\nexport function IoRepeatSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"square\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"m320 120 48 48-48 48\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"square\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M352 168H64v96m128 128-48-48 48-48\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"square\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M160 344h288v-96\"},\"child\":[]}]})(props);\n};\nexport function IoRepeat (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"m320 120 48 48-48 48\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M352 168H144a80.24 80.24 0 0 0-80 80v16m128 128-48-48 48-48\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M160 344h208a80.24 80.24 0 0 0 80-80v-16\"},\"child\":[]}]})(props);\n};\nexport function IoResizeOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M304 96h112v112m-10.23-101.8L111.98 400.02M208 416H96V304\"},\"child\":[]}]})(props);\n};\nexport function IoResizeSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"square\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M304 96h112v112m-10.23-101.8L111.98 400.02M208 416H96V304\"},\"child\":[]}]})(props);\n};\nexport function IoResize (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M304 96h112v112m-10.23-101.8L111.98 400.02M208 416H96V304\"},\"child\":[]}]})(props);\n};\nexport function IoRestaurantOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"m57.49 47.74 368.43 368.43a37.28 37.28 0 0 1 0 52.72 37.29 37.29 0 0 1-52.72 0l-90-91.55a32 32 0 0 1-9.2-22.43v-5.53a32 32 0 0 0-9.52-22.78l-11.62-10.73a32 32 0 0 0-29.8-7.44 48.53 48.53 0 0 1-46.56-12.63l-85.43-85.44C40.39 159.68 21.74 83.15 57.49 47.74z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"m400 32-77.25 77.25A64 64 0 0 0 304 154.51v14.86a16 16 0 0 1-4.69 11.32L288 192m32 32 11.31-11.31a16 16 0 0 1 11.32-4.69h14.86a64 64 0 0 0 45.26-18.75L480 112m-40-40-80 80M200 368l-99.72 100.28a40 40 0 0 1-56.56 0h0a40 40 0 0 1 0-56.56L128 328\"},\"child\":[]}]})(props);\n};\nexport function IoRestaurantSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M342.7 223.94h14.87a79.48 79.48 0 0 0 56.58-23.44L496 118l-22.22-22.4-83.58 83.58-17.37-17.37 83.58-83.59-23-22.31-83.27 83.26-17.32-17.37 83.58-83.59L394 16l-82.5 81.85a79.49 79.49 0 0 0-23.44 56.59v14.86l-43.13 43.13L48 16C3.72 70.87 29.87 171.71 79.72 221.57l85.5 85.5c26.55 26.55 31.82 28.92 61.94 16.8 6.49-2.61 8.85-2.32 14.9 3.72l13 12.13c2.93 3 3 3.88 3 9.62v5.54c0 21.08 13.48 33.2 22.36 42.24L384 496l72-72-156.43-156.93z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M227.37 354.59c-29.82 6.11-48.11 11.74-83.08-23.23-.56-.56-1.14-1.1-1.7-1.66l-19.5-19.5L16 416l80 80 144-144z\"},\"child\":[]}]})(props);\n};\nexport function IoRestaurant (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M357.57 223.94a79.48 79.48 0 0 0 56.58-23.44l77-76.95c6.09-6.09 6.65-16 .85-22.39a16 16 0 0 0-23.17-.56l-68.63 68.58a12.29 12.29 0 0 1-17.37 0c-4.79-4.78-4.53-12.86.25-17.64l68.33-68.33a16 16 0 0 0-.56-23.16A15.62 15.62 0 0 0 440.27 56a16.71 16.71 0 0 0-11.81 4.9l-68.27 68.26a12.29 12.29 0 0 1-17.37 0c-4.78-4.78-4.53-12.86.25-17.64l68.33-68.31a16 16 0 0 0-.56-23.16A15.62 15.62 0 0 0 400.26 16a16.73 16.73 0 0 0-11.81 4.9L311.5 97.85a79.49 79.49 0 0 0-23.44 56.59v8.23a16 16 0 0 1-4.69 11.33l-35.61 35.62a4 4 0 0 1-5.66 0L68.82 36.33a16 16 0 0 0-22.58-.06C31.09 51.28 23 72.47 23 97.54c-.1 41.4 21.66 89 56.79 124.08l85.45 85.45A64.79 64.79 0 0 0 211 326a64 64 0 0 0 16.21-2.08 16.24 16.24 0 0 1 4.07-.53 15.93 15.93 0 0 1 10.83 4.25l11.39 10.52a16.12 16.12 0 0 1 4.6 11.23v5.54a47.73 47.73 0 0 0 13.77 33.65l90.05 91.57.09.1a53.29 53.29 0 0 0 75.36-75.37L302.39 269.9a4 4 0 0 1 0-5.66L338 228.63a16 16 0 0 1 11.32-4.69z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M211 358a97.32 97.32 0 0 1-68.36-28.25l-13.86-13.86a8 8 0 0 0-11.3 0l-85 84.56c-15.15 15.15-20.56 37.45-13.06 59.29a30.63 30.63 0 0 0 1.49 3.6C31 484 50.58 496 72 496a55.68 55.68 0 0 0 39.64-16.44L225 365.66a4.69 4.69 0 0 0 1.32-3.72v-.26a4.63 4.63 0 0 0-5.15-4.27A97.09 97.09 0 0 1 211 358z\"},\"child\":[]}]})(props);\n};\nexport function IoReturnDownBackOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"m112 352-64-64 64-64\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M64 288h294c58.76 0 106-49.33 106-108v-20\"},\"child\":[]}]})(props);\n};\nexport function IoReturnDownBackSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"square\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"m112 352-64-64 64-64\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"square\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M64 288h400V160\"},\"child\":[]}]})(props);\n};\nexport function IoReturnDownBack (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"m112 352-64-64 64-64\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M64 288h294c58.76 0 106-49.33 106-108v-20\"},\"child\":[]}]})(props);\n};\nexport function IoReturnDownForwardOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"m400 352 64-64-64-64\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M448 288H154c-58.76 0-106-49.33-106-108v-20\"},\"child\":[]}]})(props);\n};\nexport function IoReturnDownForwardSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"square\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"m400 352 64-64-64-64\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"square\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M448 288H48V160\"},\"child\":[]}]})(props);\n};\nexport function IoReturnDownForward (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"m400 352 64-64-64-64\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M448 288H154c-58.76 0-106-49.33-106-108v-20\"},\"child\":[]}]})(props);\n};\nexport function IoReturnUpBackOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"m112 160-64 64 64 64\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M64 224h294c58.76 0 106 49.33 106 108v20\"},\"child\":[]}]})(props);\n};\nexport function IoReturnUpBackSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"square\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"m112 160-64 64 64 64\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"square\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M64 224h400v128\"},\"child\":[]}]})(props);\n};\nexport function IoReturnUpBack (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"m112 160-64 64 64 64\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M64 224h294c58.76 0 106 49.33 106 108v20\"},\"child\":[]}]})(props);\n};\nexport function IoReturnUpForwardOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"m400 160 64 64-64 64\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M448 224H154c-58.76 0-106 49.33-106 108v20\"},\"child\":[]}]})(props);\n};\nexport function IoReturnUpForwardSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"square\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"m400 160 64 64-64 64\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"square\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M448 224H48v128\"},\"child\":[]}]})(props);\n};\nexport function IoReturnUpForward (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"m400 160 64 64-64 64\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M448 224H154c-58.76 0-106 49.33-106 108v20\"},\"child\":[]}]})(props);\n};\nexport function IoRibbonOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"160\",\"r\":\"128\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M143.65 227.82 48 400l86.86-.42a16 16 0 0 1 13.82 7.8L192 480l88.33-194.32\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M366.54 224 464 400l-86.86-.42a16 16 0 0 0-13.82 7.8L320 480l-64-140.8\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"160\",\"r\":\"64\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\"},\"child\":[]}]})(props);\n};\nexport function IoRibbonSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 336c-5.22 0-10.4-.24-15.51-.69a176.12 176.12 0 0 1-131.29-78.37L20 416h115l58 96 82.53-177.09A177.53 177.53 0 0 1 256 336zm147-79.26a176.9 176.9 0 0 1-88.18 69.14L273.7 415.5 319 512l58-96h115z\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"256.02\",\"cy\":\"160\",\"r\":\"48\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M256 16c-79.4 0-144 64.6-144 144s64.6 144 144 144 144-64.6 144-144S335.4 16 256 16zm0 224a80 80 0 1 1 80-80 80.09 80.09 0 0 1-80 80z\"},\"child\":[]}]})(props);\n};\nexport function IoRibbon (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M269 335.61q-6.33.47-12.78.47c-5.23 0-10.4-.24-15.51-.69a176.11 176.11 0 0 1-127.67-72.94 4 4 0 0 0-6.77.35l-72 129.4c-2.74 5-3.17 11-.28 15.88A16.78 16.78 0 0 0 48.22 416h78a15.28 15.28 0 0 1 13.62 7.33L178.5 488a16.26 16.26 0 0 0 13.75 8c5.94-.33 12.09-4.19 14.56-9.6l66.11-145.15a4 4 0 0 0-3.92-5.64zm208.64 56.27-71.53-129.17a4 4 0 0 0-6.74-.36 176.5 176.5 0 0 1-78.31 61.42 16.09 16.09 0 0 0-8.72 8.25l-36.86 81.1a7.92 7.92 0 0 0 0 6.6l30.27 66.59c2.45 5.41 8.59 9.36 14.52 9.69a16.3 16.3 0 0 0 13.7-8.12l38.53-64.58c2.89-4.85 8.13-7.33 13.78-7.3h78.77c6.67 0 11.72-3.48 14-10a16.92 16.92 0 0 0-1.41-14.12z\"},\"child\":[]},{\"tag\":\"ellipse\",\"attr\":{\"cx\":\"256.26\",\"cy\":\"160\",\"rx\":\"48.01\",\"ry\":\"48\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M256.26 16c-79.42 0-144 64.59-144 144s64.61 144 144 144 144-64.6 144-144-64.59-144-144-144zm0 224a80 80 0 1 1 80-80 80.1 80.1 0 0 1-80 80z\"},\"child\":[]}]})(props);\n};\nexport function IoRocketOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M461.81 53.81a4.4 4.4 0 0 0-3.3-3.39c-54.38-13.3-180 34.09-248.13 102.17a294.9 294.9 0 0 0-33.09 39.08c-21-1.9-42-.3-59.88 7.5-50.49 22.2-65.18 80.18-69.28 105.07a9 9 0 0 0 9.8 10.4l81.07-8.9a180.29 180.29 0 0 0 1.1 18.3 18.15 18.15 0 0 0 5.3 11.09l31.39 31.39a18.15 18.15 0 0 0 11.1 5.3 179.91 179.91 0 0 0 18.19 1.1l-8.89 81a9 9 0 0 0 10.39 9.79c24.9-4 83-18.69 105.07-69.17 7.8-17.9 9.4-38.79 7.6-59.69a293.91 293.91 0 0 0 39.19-33.09c68.38-68 115.47-190.86 102.37-247.95zM298.66 213.67a42.7 42.7 0 1 1 60.38 0 42.65 42.65 0 0 1-60.38 0z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M109.64 352a45.06 45.06 0 0 0-26.35 12.84C65.67 382.52 64 448 64 448s65.52-1.67 83.15-19.31A44.73 44.73 0 0 0 160 402.32\"},\"child\":[]}]})(props);\n};\nexport function IoRocketSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M477.64 38.26a4.75 4.75 0 0 0-3.55-3.66c-58.57-14.32-193.9 36.71-267.22 110a317 317 0 0 0-35.63 42.1c-22.61-2-45.22-.33-64.49 8.07C52.38 218.7 36.55 281.14 32.14 308a9.64 9.64 0 0 0 10.55 11.2l87.31-9.63a194.1 194.1 0 0 0 1.19 19.7 19.53 19.53 0 0 0 5.7 12L170.7 375a19.59 19.59 0 0 0 12 5.7 193.53 193.53 0 0 0 19.59 1.19l-9.58 87.2a9.65 9.65 0 0 0 11.2 10.55c26.81-4.3 89.36-20.13 113.15-74.5 8.4-19.27 10.12-41.77 8.18-64.27a317.66 317.66 0 0 0 42.21-35.64C441 232.05 491.74 99.74 477.64 38.26zM294.07 217.93a48 48 0 1 1 67.86 0 47.95 47.95 0 0 1-67.86 0z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M168.4 399.43c-5.48 5.49-14.27 7.63-24.85 9.46-23.77 4.05-44.76-16.49-40.49-40.52 1.63-9.11 6.45-21.88 9.45-24.88a4.37 4.37 0 0 0-3.65-7.45 60 60 0 0 0-35.13 17.12C50.22 376.69 48 464 48 464s87.36-2.22 110.87-25.75A59.69 59.69 0 0 0 176 403.09c.37-4.18-4.72-6.67-7.6-3.66z\"},\"child\":[]}]})(props);\n};\nexport function IoRocket (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M328.85 156.79a26.69 26.69 0 1 0 18.88 7.81 26.6 26.6 0 0 0-18.88-7.81z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M477.44 50.06a.29.29 0 0 1 0-.09 20.4 20.4 0 0 0-15.13-15.3c-29.8-7.27-76.68.48-128.63 21.28-52.36 21-101.42 52-134.58 85.22A320.7 320.7 0 0 0 169.55 175c-22.33-1-42 2.18-58.57 9.41-57.74 25.41-74.23 90.44-78.62 117.14a25 25 0 0 0 27.19 29h.13l64.32-7.02c.08.82.17 1.57.24 2.26a34.36 34.36 0 0 0 9.9 20.72l31.39 31.41a34.27 34.27 0 0 0 20.71 9.91l2.15.23-7 64.24v.13A25 25 0 0 0 206 480a25.25 25.25 0 0 0 4.15-.34C237 475.34 302 459.05 327.34 401c7.17-16.46 10.34-36.05 9.45-58.34a314.78 314.78 0 0 0 33.95-29.55c33.43-33.26 64.53-81.92 85.31-133.52 20.69-51.36 28.48-98.59 21.39-129.53zM370.38 224.94a58.77 58.77 0 1 1 0-83.07 58.3 58.3 0 0 1 0 83.07z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M161.93 386.44a16 16 0 0 0-11 2.67c-6.39 4.37-12.81 8.69-19.29 12.9-13.11 8.52-28.79-6.44-21-20l12.15-21a16 16 0 0 0-15.16-24.91A61.25 61.25 0 0 0 72 353.56c-3.66 3.67-14.79 14.81-20.78 57.26A357.94 357.94 0 0 0 48 447.59 16 16 0 0 0 64 464h.4a359.87 359.87 0 0 0 36.8-3.2c42.47-6 53.61-17.14 57.27-20.8a60.49 60.49 0 0 0 17.39-35.74 16 16 0 0 0-13.93-17.82z\"},\"child\":[]}]})(props);\n};\nexport function IoRoseOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M416 128c-18.9 4.25-36.8 8.94-53.7 13.95-40.5 12-75.5 27.15-105.4 41.65-19.3 9.37-26.2 13.51-51.5 28.23-58.4 33.69-93.4 77.4-93.4 142.81C112 428.55 167.6 480 256 480s144-55.81 144-129.72S339 225.24 416 128z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M264 180.19c-19.69-27-38.2-38.69-52.7-46.59C162.6 107.1 96 96 96 96c41.5 43.7 37.2 90.1 32 128 0 0-3.87 32.88 1.91 58.41\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M372 139.15C356.55 102.6 336 64 336 64s-63.32 0-135.69 64m53.17-40.43C221.25 45.81 176 32 176 32c-15.3 20.8-28.79 51.58-34.87 74.17\"},\"child\":[]}]})(props);\n};\nexport function IoRoseSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M448 112s-17.62 0-30.51 1.39c-19 2-42.06 8-59.73 13.22-35.06 10.39-69.33 23.92-107.85 42.59-18.62 9.05-26 13.35-48 26.13l-4.5 2.67c-32.95 19-57.09 40-73.79 64.3C105.29 288.89 96 320 96 354.64c0 40.74 15.71 77.1 44.24 102.37C169 482.52 209.06 496 256 496c46.76 0 86.89-14.32 116-41.43 28.35-26.35 44-63.39 44-104.29 0-25-6.19-47-12.17-68.22-12.59-44.69-23.46-83.29 24.71-144.13C432.75 132.62 448 112 448 112zm-229 7.55C168.47 92.08 104.72 80 80 80c0 0 23.23 28.19 29.15 55.4s6.54 48.61 2.91 88.6c17.94-20.48 40.59-37.15 69.32-53.73l4.48-2.6C208 154.8 216.23 150 236 140.41c2.88-1.4 5.74-2.76 8.58-4.11A170.77 170.77 0 0 0 219 119.55zM345.25 48s-42.53.36-86.12 21.3a280.36 280.36 0 0 0-32.27 18.27q3.73 1.89 7.4 3.88c3.44 1.87 7.09 4 10.9 6.29a189.7 189.7 0 0 1 31.46 24.16c24.57-10.41 73-26.1 90.77-31.28-8-19.15-22.14-42.62-22.14-42.62zM176 16c-16 10.83-33.24 41.1-33.24 41.1a494.22 494.22 0 0 1 48.92 15.25l17.65-11.56c8.18-5.35 16.55-10.29 25-14.77C234.31 46 202.59 24.17 176 16z\"},\"child\":[]}]})(props);\n};\nexport function IoRose (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M429.55 119.49a16 16 0 0 0-17.06-7.1c-18.64 4.19-37.06 9-54.73 14.22-35.06 10.39-69.33 23.92-107.85 42.59-18.62 9.05-26 13.35-48 26.13l-4.5 2.67c-32.95 19-57.09 40-73.79 64.29C105.29 288.89 96 320 96 354.64c0 40.74 15.71 77.1 44.24 102.37C169 482.52 209.06 496 256 496c46.76 0 86.89-14.33 116-41.43 28.35-26.35 44-63.39 44-104.29 0-25-6.19-47-12.17-68.22-12.59-44.69-23.46-83.29 24.71-144.13a16 16 0 0 0 1.01-18.44zm-210.55.06C168.46 92.08 101.46 80.69 98.63 80.22A16 16 0 0 0 81 90.55a16.47 16.47 0 0 0 3.79 16.84c31.84 33.78 32.86 68.79 28.65 104.63a4.45 4.45 0 0 0 2.5 4.54 4.44 4.44 0 0 0 5.08-.9c16.39-16.51 36.37-31.52 60.4-45.39l4.48-2.6C208 154.8 216.23 150 236 140.41l2.69-1.3a4 4 0 0 0 .64-6.83A178.59 178.59 0 0 0 219 119.55zm15.26-28.1c3.44 1.87 7.09 4 10.9 6.29a189.31 189.31 0 0 1 29.57 22.39 4 4 0 0 0 4.28.76 672 672 0 0 1 69.65-25q7-2.07 14.08-4a4 4 0 0 0 2.53-5.62c-8.27-16.83-14.67-28.9-15.15-29.79A16 16 0 0 0 336 48c-1.91 0-33.28.36-76.87 21.3a279 279 0 0 0-26.39 14.51 4 4 0 0 0 .22 6.94zm-24.93-30.66c7.3-4.77 14.74-9.22 22.25-13.31a2 2 0 0 0 .24-3.36c-26-19.57-49.73-27-51.15-27.42a16 16 0 0 0-17.56 5.82 217.63 217.63 0 0 0-19.28 32.38 2 2 0 0 0 1.29 2.81c13.61 3.57 29.4 8.29 45.61 14.29a2 2 0 0 0 1.79-.2z\"},\"child\":[]}]})(props);\n};\nexport function IoSadOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"circle\",\"attr\":{\"cx\":\"184\",\"cy\":\"232\",\"r\":\"24\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M256 288c45.42 0 83.62 29.53 95.71 69.83a8 8 0 0 1-7.87 10.17H168.15a8 8 0 0 1-7.82-10.17C172.32 317.53 210.53 288 256 288z\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"328\",\"cy\":\"232\",\"r\":\"24\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"256\",\"r\":\"208\",\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\"},\"child\":[]}]})(props);\n};\nexport function IoSadSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M414.39 97.61A224 224 0 1 0 97.61 414.39 224 224 0 1 0 414.39 97.61zM328 208a24 24 0 1 1-24 24 23.94 23.94 0 0 1 24-24zm-144 0a24 24 0 1 1-24 24 23.94 23.94 0 0 1 24-24zm72 80c45.42 0 83.75 29.49 95.72 69.83 1 3.52 2.33 10.17 2.33 10.17H158s1.31-6.69 2.33-10.17C172.11 317.47 210.53 288 256 288z\"},\"child\":[]}]})(props);\n};\nexport function IoSad (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M414.39 97.61A224 224 0 1 0 97.61 414.39 224 224 0 1 0 414.39 97.61zM184 208a24 24 0 1 1-24 24 23.94 23.94 0 0 1 24-24zm-23.67 149.83c12-40.3 50.2-69.83 95.62-69.83s83.62 29.53 95.71 69.83a8 8 0 0 1-7.82 10.17H168.15a8 8 0 0 1-7.82-10.17zM328 256a24 24 0 1 1 24-24 23.94 23.94 0 0 1-24 24z\"},\"child\":[]}]})(props);\n};\nexport function IoSaveOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M380.93 57.37A32 32 0 0 0 358.3 48H94.22A46.21 46.21 0 0 0 48 94.22v323.56A46.21 46.21 0 0 0 94.22 464h323.56A46.36 46.36 0 0 0 464 417.78V153.7a32 32 0 0 0-9.37-22.63zM256 416a64 64 0 1 1 64-64 63.92 63.92 0 0 1-64 64zm48-224H112a16 16 0 0 1-16-16v-64a16 16 0 0 1 16-16h192a16 16 0 0 1 16 16v64a16 16 0 0 1-16 16z\"},\"child\":[]}]})(props);\n};\nexport function IoSaveSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M380.44 32H64a32 32 0 0 0-32 32v384a32 32 0 0 0 32 32h384a32.09 32.09 0 0 0 32-32V131.56zM112 176v-64h192v64zm223.91 179.76a80 80 0 1 1-83.66-83.67 80.21 80.21 0 0 1 83.66 83.67z\"},\"child\":[]}]})(props);\n};\nexport function IoSave (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m465.94 119.76-73.7-73.7A47.68 47.68 0 0 0 358.3 32H96a64 64 0 0 0-64 64v320a64 64 0 0 0 64 64h320a64 64 0 0 0 64-64V153.7a47.68 47.68 0 0 0-14.06-33.94zM120 112h176a8 8 0 0 1 8 8v48a8 8 0 0 1-8 8H120a8 8 0 0 1-8-8v-48a8 8 0 0 1 8-8zm139.75 319.91a80 80 0 1 1 76.16-76.16 80.06 80.06 0 0 1-76.16 76.16z\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"352\",\"r\":\"48\"},\"child\":[]}]})(props);\n};\nexport function IoScaleOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"rect\",\"attr\":{\"width\":\"416\",\"height\":\"416\",\"x\":\"48\",\"y\":\"48\",\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"rx\":\"96\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M388.94 151.56c-24.46-22.28-68.72-51.4-132.94-51.4s-108.48 29.12-132.94 51.4a34.66 34.66 0 0 0-3.06 48.08l33.32 39.21a26.07 26.07 0 0 0 33.6 5.21c15.92-9.83 40.91-21.64 69.1-21.64s53.18 11.81 69.1 21.64a26.07 26.07 0 0 0 33.6-5.21L392 199.64a34.66 34.66 0 0 0-3.06-48.08z\"},\"child\":[]}]})(props);\n};\nexport function IoScaleSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M432 32H80a48.05 48.05 0 0 0-48 48v352a48.05 48.05 0 0 0 48 48h352a48.05 48.05 0 0 0 48-48V80a48.05 48.05 0 0 0-48-48zm-16.71 165-52.46 61.73a27.83 27.83 0 0 1-37.65 4.62c-13-9.29-39.27-24.89-69.18-24.89s-56.18 15.6-69.18 24.89a27.84 27.84 0 0 1-37.65-4.62L96.71 197a32.12 32.12 0 0 1 .42-42c18.93-21.31 72.3-70.87 158.87-70.87S395.94 133.72 414.87 155a32.12 32.12 0 0 1 .42 42z\"},\"child\":[]}]})(props);\n};\nexport function IoScale (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M368 32H144A112.12 112.12 0 0 0 32 144v224a112.12 112.12 0 0 0 112 112h224a112.12 112.12 0 0 0 112-112V144A112.12 112.12 0 0 0 368 32zm36.21 178-33.32 39.21A41.76 41.76 0 0 1 339 264.05a42.32 42.32 0 0 1-22.29-6.38c-14.22-8.78-36.3-19.25-60.69-19.25s-46.47 10.47-60.69 19.25a41.86 41.86 0 0 1-54.2-8.46L107.79 210a50.48 50.48 0 0 1 4.49-70.27c27.84-25.35 75.37-55.57 143.72-55.57s115.88 30.22 143.72 55.57a50.48 50.48 0 0 1 4.49 70.27z\"},\"child\":[]}]})(props);\n};\nexport function IoScanCircleOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M448 256c0-106-86-192-192-192S64 150 64 256s86 192 192 192 192-86 192-192z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M296 352h28a28 28 0 0 0 28-28v-28m0-80v-28a28 28 0 0 0-28-28h-28m-80 192h-28a28 28 0 0 1-28-28v-28m0-80v-28a28 28 0 0 1 28-28h28\"},\"child\":[]}]})(props);\n};\nexport function IoScanCircleSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 48C141.31 48 48 141.31 48 256s93.31 208 208 208 208-93.31 208-208S370.69 48 256 48zm-24 320h-44a44.05 44.05 0 0 1-44-44v-44h32v44a12 12 0 0 0 12 12h44zm0-192h-44a12 12 0 0 0-12 12v44h-32v-44a44.05 44.05 0 0 1 44-44h44zm136 148a44.05 44.05 0 0 1-44 44h-44v-32h44a12 12 0 0 0 12-12v-44h32zm0-92h-32v-44a12 12 0 0 0-12-12h-44v-32h44a44.05 44.05 0 0 1 44 44z\"},\"child\":[]}]})(props);\n};\nexport function IoScanCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 48C141.31 48 48 141.31 48 256s93.31 208 208 208 208-93.31 208-208S370.69 48 256 48zm-40 320h-28a44.05 44.05 0 0 1-44-44v-28a16 16 0 0 1 32 0v28a12 12 0 0 0 12 12h28a16 16 0 0 1 0 32zm0-192h-28a12 12 0 0 0-12 12v28a16 16 0 0 1-32 0v-28a44.05 44.05 0 0 1 44-44h28a16 16 0 0 1 0 32zm152 148a44.05 44.05 0 0 1-44 44h-28a16 16 0 0 1 0-32h28a12 12 0 0 0 12-12v-28a16 16 0 0 1 32 0zm0-108a16 16 0 0 1-32 0v-28a12 12 0 0 0-12-12h-28a16 16 0 0 1 0-32h28a44.05 44.05 0 0 1 44 44z\"},\"child\":[]}]})(props);\n};\nexport function IoScanOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M336 448h56a56 56 0 0 0 56-56v-56m0-160v-56a56 56 0 0 0-56-56h-56M176 448h-56a56 56 0 0 1-56-56v-56m0-160v-56a56 56 0 0 1 56-56h56\"},\"child\":[]}]})(props);\n};\nexport function IoScanSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M388 466h-68v-44h68a34 34 0 0 0 34-34v-68h44v68a78.09 78.09 0 0 1-78 78zm78-274h-44v-68a34 34 0 0 0-34-34h-68V46h68a78.09 78.09 0 0 1 78 78zM192 466h-68a78.09 78.09 0 0 1-78-78v-68h44v68a34 34 0 0 0 34 34h68zM90 192H46v-68a78.09 78.09 0 0 1 78-78h68v44h-68a34 34 0 0 0-34 34z\"},\"child\":[]}]})(props);\n};\nexport function IoScan (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"44\",\"d\":\"M342 444h46a56 56 0 0 0 56-56v-46m0-172v-46a56 56 0 0 0-56-56h-46M170 444h-46a56 56 0 0 1-56-56v-46m0-172v-46a56 56 0 0 1 56-56h46\"},\"child\":[]}]})(props);\n};\nexport function IoSchoolOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M32 192 256 64l224 128-224 128L32 192z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M112 240v128l144 80 144-80V240m80 128V192M256 320v128\"},\"child\":[]}]})(props);\n};\nexport function IoSchoolSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 370.43 96 279v98.42l160 88.88 160-88.88V279l-160 91.43z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M512.25 192 256 45.57-.25 192 256 338.43l208-118.86V384h48V192.14l.25-.14z\"},\"child\":[]}]})(props);\n};\nexport function IoSchool (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 368a16 16 0 0 1-7.94-2.11L108 285.84a8 8 0 0 0-12 6.94V368a16 16 0 0 0 8.23 14l144 80a16 16 0 0 0 15.54 0l144-80a16 16 0 0 0 8.23-14v-75.22a8 8 0 0 0-12-6.94l-140.06 80.05A16 16 0 0 1 256 368z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M495.92 190.5v-.11a16 16 0 0 0-8-12.28l-224-128a16 16 0 0 0-15.88 0l-224 128a16 16 0 0 0 0 27.78l224 128a16 16 0 0 0 15.88 0L461 221.28a2 2 0 0 1 3 1.74v144.53c0 8.61 6.62 16 15.23 16.43A16 16 0 0 0 496 368V192a14.76 14.76 0 0 0-.08-1.5z\"},\"child\":[]}]})(props);\n};\nexport function IoSearchCircleOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M256 80a176 176 0 1 0 176 176A176 176 0 0 0 256 80z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M232 160a72 72 0 1 0 72 72 72 72 0 0 0-72-72z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M283.64 283.64 336 336\"},\"child\":[]}]})(props);\n};\nexport function IoSearchCircleSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 64C150.13 64 64 150.13 64 256s86.13 192 192 192 192-86.13 192-192S361.87 64 256 64zm80 294.63-54.15-54.15a88.08 88.08 0 1 1 22.63-22.63L358.63 336z\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"232\",\"cy\":\"232\",\"r\":\"56\"},\"child\":[]}]})(props);\n};\nexport function IoSearchCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 64C150.13 64 64 150.13 64 256s86.13 192 192 192 192-86.13 192-192S361.87 64 256 64zm91.31 283.31a16 16 0 0 1-22.62 0l-42.84-42.83a88.08 88.08 0 1 1 22.63-22.63l42.83 42.84a16 16 0 0 1 0 22.62z\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"232\",\"cy\":\"232\",\"r\":\"56\"},\"child\":[]}]})(props);\n};\nexport function IoSearchOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M221.09 64a157.09 157.09 0 1 0 157.09 157.09A157.1 157.1 0 0 0 221.09 64z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M338.29 338.29 448 448\"},\"child\":[]}]})(props);\n};\nexport function IoSearchSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M464 428 339.92 303.9a160.48 160.48 0 0 0 30.72-94.58C370.64 120.37 298.27 48 209.32 48S48 120.37 48 209.32s72.37 161.32 161.32 161.32a160.48 160.48 0 0 0 94.58-30.72L428 464zM209.32 319.69a110.38 110.38 0 1 1 110.37-110.37 110.5 110.5 0 0 1-110.37 110.37z\"},\"child\":[]}]})(props);\n};\nexport function IoSearch (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M456.69 421.39 362.6 327.3a173.81 173.81 0 0 0 34.84-104.58C397.44 126.38 319.06 48 222.72 48S48 126.38 48 222.72s78.38 174.72 174.72 174.72A173.81 173.81 0 0 0 327.3 362.6l94.09 94.09a25 25 0 0 0 35.3-35.3zM97.92 222.72a124.8 124.8 0 1 1 124.8 124.8 124.95 124.95 0 0 1-124.8-124.8z\"},\"child\":[]}]})(props);\n};\nexport function IoSendOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M470.3 271.15 43.16 447.31a7.83 7.83 0 0 1-11.16-7V327a8 8 0 0 1 6.51-7.86l247.62-47c17.36-3.29 17.36-28.15 0-31.44l-247.63-47a8 8 0 0 1-6.5-7.85V72.59c0-5.74 5.88-10.26 11.16-8L470.3 241.76a16 16 0 0 1 0 29.39z\"},\"child\":[]}]})(props);\n};\nexport function IoSendSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m16 464 480-208L16 48v160l320 48-320 48z\"},\"child\":[]}]})(props);\n};\nexport function IoSend (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m476.59 227.05-.16-.07L49.35 49.84A23.56 23.56 0 0 0 27.14 52 24.65 24.65 0 0 0 16 72.59v113.29a24 24 0 0 0 19.52 23.57l232.93 43.07a4 4 0 0 1 0 7.86L35.53 303.45A24 24 0 0 0 16 327v113.31A23.57 23.57 0 0 0 26.59 460a23.94 23.94 0 0 0 13.22 4 24.55 24.55 0 0 0 9.52-1.93L476.4 285.94l.19-.09a32 32 0 0 0 0-58.8z\"},\"child\":[]}]})(props);\n};\nexport function IoServerOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"ellipse\",\"attr\":{\"cx\":\"256\",\"cy\":\"128\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"rx\":\"192\",\"ry\":\"80\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M448 214c0 44.18-86 80-192 80S64 258.18 64 214m384 86c0 44.18-86 80-192 80S64 344.18 64 300\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M64 127.24v257.52C64 428.52 150 464 256 464s192-35.48 192-79.24V127.24\"},\"child\":[]}]})(props);\n};\nexport function IoServerSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M409.43 389.87C362 410 305.4 421.05 256 421.05s-105.87-11.3-153.44-31.18S48 353.16 48 353.16v38.2c0 31.15 18 43.64 67.32 64.35C153.13 471.59 203.18 480 256 480s102.87-8.41 140.68-24.29C446 435 464 422.51 464 391.36v-38.2s-7.14 16.59-54.57 36.71zM63.69 173.22c11.23 9.84 27.82 19.49 48 27.92 42.48 17.76 96.45 28.37 144.36 28.37s101.88-10.61 144.36-28.37c20.13-8.43 36.72-18.08 47.95-27.92 6.06-5.31 10.85-10.12 13.47-12.85a8 8 0 0 0 2.22-5.54v-26.16c-.84-28.79-24.71-54.41-67.21-72.14C358.83 40.71 308.84 32 256 32s-102.83 8.71-140.74 24.53C72.85 74.22 49 99.78 48.05 128.5v26.33a8 8 0 0 0 2.21 5.54c2.58 2.73 7.36 7.54 13.43 12.85z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M409.43 221.91C365 241 305.4 253.09 256 253.09s-108.87-12.27-153.43-31.18S48 185.2 48 185.2v47.36c.08 7.52 5.5 16.2 15.69 25.13 11.24 9.84 27.82 19.5 48 27.92C154.12 303.38 208.09 314 256 314s101.88-10.6 144.36-28.37c20.13-8.42 36.72-18.08 47.95-27.92 10.25-9 15.68-17.71 15.69-25.27V185.2s-10.13 17.62-54.57 36.71z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M409.43 306.38C362 326 305.4 337.56 256 337.56s-109.87-12.8-153.43-31.18S48 269.67 48 269.67v46.25c0 7.55 5.44 16.28 15.69 25.26 11.23 9.84 27.81 19.5 48 27.92 42.48 17.77 96.44 28.37 144.36 28.37s101.88-10.6 144.36-28.37c20.13-8.43 36.72-18.08 47.95-27.92 10.19-8.93 15.61-17.61 15.69-25.13v-46.38s-7.18 17.09-54.62 36.71z\"},\"child\":[]}]})(props);\n};\nexport function IoServer (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 428c-52.35 0-111.39-11.61-157.93-31-17.07-7.19-31.69-18.82-43.64-28a4 4 0 0 0-6.43 3.18v12.58c0 28.07 23.49 53.22 66.14 70.82C152.29 471.33 202.67 480 256 480s103.7-8.67 141.86-24.42C440.51 438 464 412.83 464 384.76v-12.58a4 4 0 0 0-6.43-3.18c-11.95 9.17-26.57 20.81-43.65 28-46.54 19.39-105.57 31-157.92 31zm208-301.49c-.81-27.65-24.18-52.4-66-69.85C359.74 40.76 309.34 32 256 32s-103.74 8.76-141.91 24.66c-41.78 17.41-65.15 42.11-66 69.69L48 144c0 6.41 5.2 16.48 14.63 24.73 11.13 9.73 27.65 19.33 47.78 27.73C153.24 214.36 207.67 225 256 225s102.76-10.68 145.59-28.58c20.13-8.4 36.65-18 47.78-27.73C458.8 160.49 464 150.42 464 144z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M413.92 226c-46.53 19.43-105.57 31-157.92 31s-111.39-11.57-157.93-31c-17.07-7.15-31.69-18.79-43.64-28a4 4 0 0 0-6.43 3.22V232c0 6.41 5.2 14.48 14.63 22.73 11.13 9.74 27.65 19.33 47.78 27.74C153.24 300.34 207.67 311 256 311s102.76-10.68 145.59-28.57c20.13-8.41 36.65-18 47.78-27.74C458.8 246.47 464 238.41 464 232v-30.78a4 4 0 0 0-6.43-3.18c-11.95 9.17-26.57 20.81-43.65 27.96z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M413.92 312c-46.54 19.41-105.57 31-157.92 31s-111.39-11.59-157.93-31c-17.07-7.17-31.69-18.81-43.64-28a4 4 0 0 0-6.43 3.2V317c0 6.41 5.2 14.47 14.62 22.71 11.13 9.74 27.66 19.33 47.79 27.74C153.24 385.32 207.66 396 256 396s102.76-10.68 145.59-28.57c20.13-8.41 36.65-18 47.78-27.74C458.8 331.44 464 323.37 464 317v-29.8a4 4 0 0 0-6.43-3.18c-11.95 9.17-26.57 20.81-43.65 27.98z\"},\"child\":[]}]})(props);\n};\nexport function IoSettingsOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M262.29 192.31a64 64 0 1 0 57.4 57.4 64.13 64.13 0 0 0-57.4-57.4zM416.39 256a154.34 154.34 0 0 1-1.53 20.79l45.21 35.46a10.81 10.81 0 0 1 2.45 13.75l-42.77 74a10.81 10.81 0 0 1-13.14 4.59l-44.9-18.08a16.11 16.11 0 0 0-15.17 1.75A164.48 164.48 0 0 1 325 400.8a15.94 15.94 0 0 0-8.82 12.14l-6.73 47.89a11.08 11.08 0 0 1-10.68 9.17h-85.54a11.11 11.11 0 0 1-10.69-8.87l-6.72-47.82a16.07 16.07 0 0 0-9-12.22 155.3 155.3 0 0 1-21.46-12.57 16 16 0 0 0-15.11-1.71l-44.89 18.07a10.81 10.81 0 0 1-13.14-4.58l-42.77-74a10.8 10.8 0 0 1 2.45-13.75l38.21-30a16.05 16.05 0 0 0 6-14.08c-.36-4.17-.58-8.33-.58-12.5s.21-8.27.58-12.35a16 16 0 0 0-6.07-13.94l-38.19-30A10.81 10.81 0 0 1 49.48 186l42.77-74a10.81 10.81 0 0 1 13.14-4.59l44.9 18.08a16.11 16.11 0 0 0 15.17-1.75A164.48 164.48 0 0 1 187 111.2a15.94 15.94 0 0 0 8.82-12.14l6.73-47.89A11.08 11.08 0 0 1 213.23 42h85.54a11.11 11.11 0 0 1 10.69 8.87l6.72 47.82a16.07 16.07 0 0 0 9 12.22 155.3 155.3 0 0 1 21.46 12.57 16 16 0 0 0 15.11 1.71l44.89-18.07a10.81 10.81 0 0 1 13.14 4.58l42.77 74a10.8 10.8 0 0 1-2.45 13.75l-38.21 30a16.05 16.05 0 0 0-6.05 14.08c.33 4.14.55 8.3.55 12.47z\"},\"child\":[]}]})(props);\n};\nexport function IoSettingsSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 176a80 80 0 1 0 80 80 80.24 80.24 0 0 0-80-80zm172.72 80a165.53 165.53 0 0 1-1.64 22.34l48.69 38.12a11.59 11.59 0 0 1 2.63 14.78l-46.06 79.52a11.64 11.64 0 0 1-14.14 4.93l-57.25-23a176.56 176.56 0 0 1-38.82 22.67l-8.56 60.78a11.93 11.93 0 0 1-11.51 9.86h-92.12a12 12 0 0 1-11.51-9.53l-8.56-60.78A169.3 169.3 0 0 1 151.05 393L93.8 416a11.64 11.64 0 0 1-14.14-4.92L33.6 331.57a11.59 11.59 0 0 1 2.63-14.78l48.69-38.12A174.58 174.58 0 0 1 83.28 256a165.53 165.53 0 0 1 1.64-22.34l-48.69-38.12a11.59 11.59 0 0 1-2.63-14.78l46.06-79.52a11.64 11.64 0 0 1 14.14-4.93l57.25 23a176.56 176.56 0 0 1 38.82-22.67l8.56-60.78A11.93 11.93 0 0 1 209.94 26h92.12a12 12 0 0 1 11.51 9.53l8.56 60.78A169.3 169.3 0 0 1 361 119l57.2-23a11.64 11.64 0 0 1 14.14 4.92l46.06 79.52a11.59 11.59 0 0 1-2.63 14.78l-48.69 38.12a174.58 174.58 0 0 1 1.64 22.66z\"},\"child\":[]}]})(props);\n};\nexport function IoSettings (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"256\",\"r\":\"48\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m470.39 300-.47-.38-31.56-24.75a16.11 16.11 0 0 1-6.1-13.33v-11.56a16 16 0 0 1 6.11-13.22L469.92 212l.47-.38a26.68 26.68 0 0 0 5.9-34.06l-42.71-73.9a1.59 1.59 0 0 1-.13-.22A26.86 26.86 0 0 0 401 92.14l-.35.13-37.1 14.93a15.94 15.94 0 0 1-14.47-1.29q-4.92-3.1-10-5.86a15.94 15.94 0 0 1-8.19-11.82l-5.59-39.59-.12-.72A27.22 27.22 0 0 0 298.76 26h-85.52a26.92 26.92 0 0 0-26.45 22.39l-.09.56-5.57 39.67a16 16 0 0 1-8.13 11.82 175.21 175.21 0 0 0-10 5.82 15.92 15.92 0 0 1-14.43 1.27l-37.13-15-.35-.14a26.87 26.87 0 0 0-32.48 11.34l-.13.22-42.77 73.95a26.71 26.71 0 0 0 5.9 34.1l.47.38 31.56 24.75a16.11 16.11 0 0 1 6.1 13.33v11.56a16 16 0 0 1-6.11 13.22L42.08 300l-.47.38a26.68 26.68 0 0 0-5.9 34.06l42.71 73.9a1.59 1.59 0 0 1 .13.22 26.86 26.86 0 0 0 32.45 11.3l.35-.13 37.07-14.93a15.94 15.94 0 0 1 14.47 1.29q4.92 3.11 10 5.86a15.94 15.94 0 0 1 8.19 11.82l5.56 39.59.12.72A27.22 27.22 0 0 0 213.24 486h85.52a26.92 26.92 0 0 0 26.45-22.39l.09-.56 5.57-39.67a16 16 0 0 1 8.18-11.82c3.42-1.84 6.76-3.79 10-5.82a15.92 15.92 0 0 1 14.43-1.27l37.13 14.95.35.14a26.85 26.85 0 0 0 32.48-11.34 2.53 2.53 0 0 1 .13-.22l42.71-73.89a26.7 26.7 0 0 0-5.89-34.11zm-134.48-40.24a80 80 0 1 1-83.66-83.67 80.21 80.21 0 0 1 83.66 83.67z\"},\"child\":[]}]})(props);\n};\nexport function IoShapesOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M336 320H32L184 48l152 272zm-70.68-125.49A144 144 0 1 1 192 320\"},\"child\":[]}]})(props);\n};\nexport function IoShapesSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M363.27 336H4.73L184 16z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M336 160a160.54 160.54 0 0 0-32.55 3.36l87.75 157L417.81 368H183.36C203.8 432.85 264.49 480 336 480c88.22 0 160-71.78 160-160s-71.78-160-160-160z\"},\"child\":[]}]})(props);\n};\nexport function IoShapes (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M336 336H32a16 16 0 0 1-14-23.81l152-272a16 16 0 0 1 27.94 0l152 272A16 16 0 0 1 336 336z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M336 160a161.07 161.07 0 0 0-32.57 3.32l74.47 133.27A48 48 0 0 1 336 368H183.33A160 160 0 1 0 336 160z\"},\"child\":[]}]})(props);\n};\nexport function IoShareOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M336 192h40a40 40 0 0 1 40 40v192a40 40 0 0 1-40 40H136a40 40 0 0 1-40-40V232a40 40 0 0 1 40-40h40m160-64-80-80-80 80m80 193V48\"},\"child\":[]}]})(props);\n};\nexport function IoShareSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M272 176v161h-32V176H92a12 12 0 0 0-12 12v280a12 12 0 0 0 12 12h328a12 12 0 0 0 12-12V188a12 12 0 0 0-12-12zm0-83.37 64 64L358.63 134 256 31.37 153.37 134 176 156.63l64-64V176h32V92.63z\"},\"child\":[]}]})(props);\n};\nexport function IoShareSocialOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"circle\",\"attr\":{\"cx\":\"128\",\"cy\":\"256\",\"r\":\"48\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"384\",\"cy\":\"112\",\"r\":\"48\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"384\",\"cy\":\"400\",\"r\":\"48\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"m169.83 279.53 172.34 96.94m0-240.94-172.34 96.94\"},\"child\":[]}]})(props);\n};\nexport function IoShareSocialSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M378 324a69.78 69.78 0 0 0-48.83 19.91L202 272.41a69.68 69.68 0 0 0 0-32.82l127.13-71.5A69.76 69.76 0 1 0 308.87 129l-130.13 73.2a70 70 0 1 0 0 107.56L308.87 383A70 70 0 1 0 378 324z\"},\"child\":[]}]})(props);\n};\nexport function IoShareSocial (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M384 336a63.78 63.78 0 0 0-46.12 19.7l-148-83.27a63.85 63.85 0 0 0 0-32.86l148-83.27a63.8 63.8 0 1 0-15.73-27.87l-148 83.27a64 64 0 1 0 0 88.6l148 83.27A64 64 0 1 0 384 336z\"},\"child\":[]}]})(props);\n};\nexport function IoShare (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M376 176H272v145a16 16 0 0 1-32 0V176H136a56.06 56.06 0 0 0-56 56v192a56.06 56.06 0 0 0 56 56h240a56.06 56.06 0 0 0 56-56V232a56.06 56.06 0 0 0-56-56zM272 86.63l52.69 52.68a16 16 0 0 0 22.62-22.62l-80-80a16 16 0 0 0-22.62 0l-80 80a16 16 0 0 0 22.62 22.62L240 86.63V176h32z\"},\"child\":[]}]})(props);\n};\nexport function IoShieldCheckmarkOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M336 176 225.2 304 176 255.8\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M463.1 112.37C373.68 96.33 336.71 84.45 256 48c-80.71 36.45-117.68 48.33-207.1 64.37C32.7 369.13 240.58 457.79 256 464c15.42-6.21 223.3-94.87 207.1-351.63z\"},\"child\":[]}]})(props);\n};\nexport function IoShieldCheckmarkSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m479.07 111.36-.79-12.53-12.36-2.21c-86.5-15.52-122.61-26.74-203.33-63.2l-6.59-3-6.59 3C168.69 69.88 132.58 81.1 46.08 96.62l-12.36 2.21-.79 12.53c-3.85 61.11 4.36 118.05 24.43 169.24A349.47 349.47 0 0 0 129 393.11c53.47 56.73 110.24 81.37 121.07 85.73l6 2.41 6-2.41c10.83-4.36 67.6-29 121.07-85.73a349.47 349.47 0 0 0 71.5-112.51c20.07-51.19 28.28-108.13 24.43-169.24zm-252.91 216L153.37 256l22.4-22.86 48.47 47.49 110.13-127.2 24.2 20.94z\"},\"child\":[]}]})(props);\n};\nexport function IoShieldCheckmark (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M479.07 111.36a16 16 0 0 0-13.15-14.74c-86.5-15.52-122.61-26.74-203.33-63.2a16 16 0 0 0-13.18 0C168.69 69.88 132.58 81.1 46.08 96.62a16 16 0 0 0-13.15 14.74c-3.85 61.11 4.36 118.05 24.43 169.24A349.47 349.47 0 0 0 129 393.11c53.47 56.73 110.24 81.37 121.07 85.73a16 16 0 0 0 12 0c10.83-4.36 67.6-29 121.07-85.73a349.47 349.47 0 0 0 71.5-112.51c20.07-51.19 28.28-108.13 24.43-169.24zm-131 75.11-110.8 128a16 16 0 0 1-11.41 5.53h-.66a16 16 0 0 1-11.2-4.57l-49.2-48.2a16 16 0 1 1 22.4-22.86l37 36.29 99.7-115.13a16 16 0 0 1 24.2 20.94z\"},\"child\":[]}]})(props);\n};\nexport function IoShieldHalfOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M463.1 112.37C373.68 96.33 336.71 84.45 256 48c-80.71 36.45-117.68 48.33-207.1 64.37C32.7 369.13 240.58 457.79 256 464c15.42-6.21 223.3-94.87 207.1-351.63z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M256 48c-80.71 36.45-117.68 48.33-207.1 64.37C32.7 369.13 240.58 457.79 256 464z\"},\"child\":[]}]})(props);\n};\nexport function IoShieldHalfSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 32C174 69.06 121.38 86.46 32 96c0 77.59 5.27 133.36 25.29 184.51a348.86 348.86 0 0 0 71.43 112.41c49.6 52.66 104.17 80.4 127.28 87.08 23.11-6.68 77.68-34.42 127.28-87.08a348.86 348.86 0 0 0 71.43-112.41C474.73 229.36 480 173.59 480 96c-89.38-9.54-142-26.94-224-64zm161.47 233.93a309.18 309.18 0 0 1-63.31 99.56C316 406 276.65 428.31 256 437.36V75.8c38.75 17 68.73 28.3 97.93 36.89a613.12 613.12 0 0 0 85.6 18.52c-1.72 60.22-8.36 99.69-22.06 134.72z\"},\"child\":[]}]})(props);\n};\nexport function IoShieldHalf (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M48.9 112.37C138.32 96.33 175.29 84.45 256 48c80.71 36.45 117.68 48.33 207.1 64.37C479.3 369.13 271.42 457.79 256 464c-15.42-6.21-223.3-94.87-207.1-351.63z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M256 48c80.71 36.45 117.68 48.33 207.1 64.37C479.3 369.13 271.42 457.79 256 464z\"},\"child\":[]}]})(props);\n};\nexport function IoShieldOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M463.1 112.37C373.68 96.33 336.71 84.45 256 48c-80.71 36.45-117.68 48.33-207.1 64.37C32.7 369.13 240.58 457.79 256 464c15.42-6.21 223.3-94.87 207.1-351.63z\"},\"child\":[]}]})(props);\n};\nexport function IoShieldSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 32C174 69.06 121.38 86.46 32 96c0 77.59 5.27 133.36 25.29 184.51a348.86 348.86 0 0 0 71.43 112.41c49.6 52.66 104.17 80.4 127.28 87.08 23.11-6.68 77.68-34.42 127.28-87.08a348.86 348.86 0 0 0 71.43-112.41C474.73 229.36 480 173.59 480 96c-89.38-9.54-142-26.94-224-64z\"},\"child\":[]}]})(props);\n};\nexport function IoShield (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M479.07 111.35a16 16 0 0 0-13.15-14.75C379.89 81.18 343.69 69.12 266 34.16c-7.76-2.89-12.57-2.84-20 0-77.69 35-113.89 47-199.92 62.44a16 16 0 0 0-13.15 14.75c-3.85 61.1 4.34 118 24.36 169.15a348.86 348.86 0 0 0 71.43 112.41c44.67 47.43 94.2 75.12 119.74 85.6a20 20 0 0 0 15.11 0c27-10.92 74.69-37.82 119.71-85.62a348.86 348.86 0 0 0 71.43-112.39c20.02-51.14 28.21-108.05 24.36-169.15z\"},\"child\":[]}]})(props);\n};\nexport function IoShirtOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M314.56 48s-22.78 8-58.56 8-58.56-8-58.56-8a31.94 31.94 0 0 0-10.57 1.8L32 104l16.63 88 48.88 5.52a24 24 0 0 1 21.29 24.58L112 464h288l-6.8-241.9a24 24 0 0 1 21.29-24.58l48.88-5.52L480 104 325.13 49.8a31.94 31.94 0 0 0-10.57-1.8zm18.75 4.66a80 80 0 0 1-154.62 0\"},\"child\":[]}]})(props);\n};\nexport function IoShirtSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 42c-33.88 0-64-10-64-10v2a64 64 0 0 0 128 0v-2s-30.12 10-64 10z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M352 44c-5.49 47.76-46.79 85-96 85s-90.51-37.24-96-85L16 94l18 114 61.71 7.42c7.08.9 7.1.9 7.1 8.19L96 480h320l-6.81-256.39c-.21-7-.21-7 7.1-8.19L478 208l18-114z\"},\"child\":[]}]})(props);\n};\nexport function IoShirt (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 96c33.08 0 60.71-25.78 64-58 .3-3-3-6-6-6a13 13 0 0 0-4.74.9c-.2.08-21.1 8.1-53.26 8.1s-53.1-8-53.26-8.1a16.21 16.21 0 0 0-5.3-.9h-.06a5.69 5.69 0 0 0-5.38 6c3.35 32.16 31 58 64 58z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M485.29 89.9 356 44.64a4 4 0 0 0-5.27 3.16 96 96 0 0 1-189.38 0 4 4 0 0 0-5.35-3.16L26.71 89.9A16 16 0 0 0 16.28 108l16.63 88a16 16 0 0 0 13.92 12.9l48.88 5.52a8 8 0 0 1 7.1 8.19l-7.33 240.9a16 16 0 0 0 9.1 14.94A17.49 17.49 0 0 0 112 480h288a17.49 17.49 0 0 0 7.42-1.55 16 16 0 0 0 9.1-14.94l-7.33-240.9a8 8 0 0 1 7.1-8.19l48.88-5.52a16 16 0 0 0 13.92-12.9l16.63-88a16 16 0 0 0-10.43-18.1z\"},\"child\":[]}]})(props);\n};\nexport function IoShuffleOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"m400 304 48 48-48 48m0-288 48 48-48 48M64 352h85.19a80 80 0 0 0 66.56-35.62L256 256\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M64 160h85.19a80 80 0 0 1 66.56 35.62l80.5 120.76A80 80 0 0 0 362.81 352H416m0-192h-53.19a80 80 0 0 0-66.56 35.62L288 208\"},\"child\":[]}]})(props);\n};\nexport function IoShuffleSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"square\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"m400 304 48 48-48 48m0-288 48 48-48 48M64 352h128l60-92\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"square\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M64 160h128l128 192h96m0-192h-96l-32 48\"},\"child\":[]}]})(props);\n};\nexport function IoShuffle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"m400 304 48 48-48 48m0-288 48 48-48 48M64 352h85.19a80 80 0 0 0 66.56-35.62L256 256\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M64 160h85.19a80 80 0 0 1 66.56 35.62l80.5 120.76A80 80 0 0 0 362.81 352H416m0-192h-53.19a80 80 0 0 0-66.56 35.62L288 208\"},\"child\":[]}]})(props);\n};\nexport function IoSkullOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M448 225.64v99a64 64 0 0 1-40.23 59.42l-23.68 9.47A32 32 0 0 0 364.6 417l-10 50.14A16 16 0 0 1 338.88 480H173.12a16 16 0 0 1-15.69-12.86L147.4 417a32 32 0 0 0-19.49-23.44l-23.68-9.47A64 64 0 0 1 64 324.67V224c0-105.92 85.77-191.81 191.65-192S448 119.85 448 225.64z\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"168\",\"cy\":\"280\",\"r\":\"40\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"344\",\"cy\":\"280\",\"r\":\"40\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"m256 336-16 48h32l-16-48zm0 112v32m-48-32v32m96-32v32\"},\"child\":[]}]})(props);\n};\nexport function IoSkullSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 16C141.31 16 48 109.31 48 224v154.83l82 32.81L146.88 496H192v-64h32v64h16v-64h32v64h16v-64h32v64h45.12L382 411.64l82-32.81V224c0-114.69-93.31-208-208-208zm-88 320a56 56 0 1 1 56-56 56.06 56.06 0 0 1-56 56zm51.51 64L244 320h24l24.49 80zM344 336a56 56 0 1 1 56-56 56.06 56.06 0 0 1-56 56zm104 32z\"},\"child\":[]}]})(props);\n};\nexport function IoSkull (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M402 76.94C362.61 37.63 310.78 16 256 16h-.37A208 208 0 0 0 48 224v100.67A79.62 79.62 0 0 0 98.29 399l23.71 9.42a15.92 15.92 0 0 1 9.75 11.72l10 50.13A32.09 32.09 0 0 0 173.12 496H184a8 8 0 0 0 8-8v-39.55c0-8.61 6.62-16 15.23-16.43A16 16 0 0 1 224 448v40a8 8 0 0 0 8 8 8 8 0 0 0 8-8v-39.55c0-8.61 6.62-16 15.23-16.43A16 16 0 0 1 272 448v40a8 8 0 0 0 8 8 8 8 0 0 0 8-8v-39.55c0-8.61 6.62-16 15.23-16.43A16 16 0 0 1 320 448v40a8 8 0 0 0 8 8h10.88a32.09 32.09 0 0 0 31.38-25.72l10-50.14a16 16 0 0 1 9.74-11.72l23.71-9.42A79.62 79.62 0 0 0 464 324.67v-99c0-56-22-108.81-62-148.73zM171.66 335.88a56 56 0 1 1 52.22-52.22 56 56 0 0 1-52.22 52.22zM281 397.25a16.37 16.37 0 0 1-9.3 2.75h-31.4a16.37 16.37 0 0 1-9.28-2.75 16 16 0 0 1-6.6-16.9l15.91-47.6C243 326 247.25 321 254 320.13c8.26-1 14 2.87 17.61 12.22l16 48a16 16 0 0 1-6.61 16.9zm66.68-61.37a56 56 0 1 1 52.22-52.22 56 56 0 0 1-52.24 52.22z\"},\"child\":[]}]})(props);\n};\nexport function IoSnowOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M256 32v448m57.72-400A111.47 111.47 0 0 1 256 96a111.47 111.47 0 0 1-57.72-16m0 352a112.11 112.11 0 0 1 115.44 0m136.27-288L62.01 368m375.26-150a112.09 112.09 0 0 1-57.71-100M74.73 294a112.09 112.09 0 0 1 57.71 100M62.01 144l387.98 224M74.73 218a112.09 112.09 0 0 0 57.71-100m304.83 176a112.09 112.09 0 0 0-57.71 100\"},\"child\":[]}]})(props);\n};\nexport function IoSnowSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m447.88 313.27 19.25-10.64-21.28-38.51-19.25 10.64a133.42 133.42 0 0 0-38.54 32.1L300 256l88.07-50.86a133.42 133.42 0 0 0 38.54 32.1l19.25 10.64 21.28-38.51-19.25-10.64a89.27 89.27 0 0 1-20.93-16L480 152.05 458 114l-53 30.58a89.07 89.07 0 0 1-3.42-26.15l.41-22-44-.82-.41 22a133.62 133.62 0 0 0 8.49 49.39L278 217.89V116.18a133.52 133.52 0 0 0 47.06-17.33L343.9 87.5l-22.71-37.69-18.84 11.35A89.5 89.5 0 0 1 278 71.27V16h-44v55.27a89.5 89.5 0 0 1-24.35-10.11l-18.84-11.35L168.1 87.5l18.84 11.35A133.52 133.52 0 0 0 234 116.18v101.71L145.93 167a133.62 133.62 0 0 0 8.53-49.43l-.41-22-44 .82.41 22a89.07 89.07 0 0 1-3.42 26.15L54 114l-22 38.1 53.05 30.64a89.27 89.27 0 0 1-20.93 16l-19.25 10.63 21.28 38.51 19.25-10.64a133.42 133.42 0 0 0 38.54-32.1L212 256l-88.07 50.86a133.42 133.42 0 0 0-38.54-32.1l-19.24-10.64-21.28 38.51 19.25 10.64a89.27 89.27 0 0 1 20.93 16L32 360l22 38.1 53.05-30.63a89.07 89.07 0 0 1 3.42 26.15l-.41 22 44 .82.41-22a133.62 133.62 0 0 0-8.54-49.44L234 294.11v101.71a133.52 133.52 0 0 0-47.06 17.33L168.1 424.5l22.71 37.69 18.84-11.35A89.5 89.5 0 0 1 234 440.73V496h44v-55.27a89.5 89.5 0 0 1 24.35 10.11l18.84 11.35 22.71-37.69-18.84-11.35A133.52 133.52 0 0 0 278 395.82V294.11L366.07 345a133.62 133.62 0 0 0-8.53 49.43l.41 22 44-.82-.41-22a89.07 89.07 0 0 1 3.46-26.19l53 30.63L480 360l-53-30.69a89.27 89.27 0 0 1 20.88-16.04z\"},\"child\":[]}]})(props);\n};\nexport function IoSnow (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m461 349-34-19.64a89.53 89.53 0 0 1 20.94-16 22 22 0 0 0-21.28-38.51 133.62 133.62 0 0 0-38.55 32.1L300 256l88.09-50.86a133.46 133.46 0 0 0 38.55 32.1 22 22 0 1 0 21.28-38.51 89.74 89.74 0 0 1-20.94-16l34-19.64A22 22 0 1 0 439 125l-34 19.63a89.74 89.74 0 0 1-3.42-26.15A22 22 0 0 0 380 96h-.41a22 22 0 0 0-22 21.59 133.61 133.61 0 0 0 8.5 49.41L278 217.89V116.18a133.5 133.5 0 0 0 47.07-17.33 22 22 0 0 0-22.71-37.69A89.56 89.56 0 0 1 278 71.27V38a22 22 0 0 0-44 0v33.27a89.56 89.56 0 0 1-24.36-10.11 22 22 0 1 0-22.71 37.69A133.5 133.5 0 0 0 234 116.18v101.71L145.91 167a133.61 133.61 0 0 0 8.52-49.43 22 22 0 0 0-22-21.59H132a22 22 0 0 0-21.59 22.41 89.74 89.74 0 0 1-3.41 26.19L73 125a22 22 0 1 0-22 38.1l34 19.64a89.74 89.74 0 0 1-20.94 16 22 22 0 1 0 21.28 38.51 133.62 133.62 0 0 0 38.55-32.1L212 256l-88.09 50.86a133.62 133.62 0 0 0-38.55-32.1 22 22 0 1 0-21.28 38.51 89.74 89.74 0 0 1 20.94 16L51 349a22 22 0 1 0 22 38.1l34-19.63a89.74 89.74 0 0 1 3.42 26.15A22 22 0 0 0 132 416h.41a22 22 0 0 0 22-21.59 133.61 133.61 0 0 0-8.5-49.41L234 294.11v101.71a133.5 133.5 0 0 0-47.07 17.33 22 22 0 1 0 22.71 37.69A89.56 89.56 0 0 1 234 440.73V474a22 22 0 0 0 44 0v-33.27a89.56 89.56 0 0 1 24.36 10.11 22 22 0 0 0 22.71-37.69A133.5 133.5 0 0 0 278 395.82V294.11L366.09 345a133.61 133.61 0 0 0-8.52 49.43 22 22 0 0 0 22 21.59h.43a22 22 0 0 0 21.59-22.41 89.74 89.74 0 0 1 3.41-26.19l34 19.63A22 22 0 1 0 461 349z\"},\"child\":[]}]})(props);\n};\nexport function IoSparklesOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M259.92 262.91 216.4 149.77a9 9 0 0 0-16.8 0l-43.52 113.14a9 9 0 0 1-5.17 5.17L37.77 311.6a9 9 0 0 0 0 16.8l113.14 43.52a9 9 0 0 1 5.17 5.17l43.52 113.14a9 9 0 0 0 16.8 0l43.52-113.14a9 9 0 0 1 5.17-5.17l113.14-43.52a9 9 0 0 0 0-16.8l-113.14-43.52a9 9 0 0 1-5.17-5.17zM108 68 88 16 68 68 16 88l52 20 20 52 20-52 52-20-52-20zm318.67 49.33L400 48l-26.67 69.33L304 144l69.33 26.67L400 240l26.67-69.33L496 144l-69.33-26.67z\"},\"child\":[]}]})(props);\n};\nexport function IoSparklesSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m208 512-52.38-139.62L16 320l139.62-52.38L208 128l52.38 139.62L400 320l-139.62 52.38zM88 176l-23.57-64.43L0 88l64.43-23.57L88 0l23.57 64.43L176 88l-64.43 23.57zm312 80-31.11-80.89L288 144l80.89-31.11L400 32l31.11 80.89L512 144l-80.89 31.11z\"},\"child\":[]}]})(props);\n};\nexport function IoSparkles (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M208 512a24.84 24.84 0 0 1-23.34-16l-39.84-103.6a16.06 16.06 0 0 0-9.19-9.19L32 343.34a25 25 0 0 1 0-46.68l103.6-39.84a16.06 16.06 0 0 0 9.19-9.19L184.66 144a25 25 0 0 1 46.68 0l39.84 103.6a16.06 16.06 0 0 0 9.19 9.19l103 39.63a25.49 25.49 0 0 1 16.63 24.1 24.82 24.82 0 0 1-16 22.82l-103.6 39.84a16.06 16.06 0 0 0-9.19 9.19L231.34 496A24.84 24.84 0 0 1 208 512zm66.85-254.84zM88 176a14.67 14.67 0 0 1-13.69-9.4l-16.86-43.84a7.28 7.28 0 0 0-4.21-4.21L9.4 101.69a14.67 14.67 0 0 1 0-27.38l43.84-16.86a7.31 7.31 0 0 0 4.21-4.21L74.16 9.79A15 15 0 0 1 86.23.11a14.67 14.67 0 0 1 15.46 9.29l16.86 43.84a7.31 7.31 0 0 0 4.21 4.21l43.84 16.86a14.67 14.67 0 0 1 0 27.38l-43.84 16.86a7.28 7.28 0 0 0-4.21 4.21l-16.86 43.84A14.67 14.67 0 0 1 88 176zm312 80a16 16 0 0 1-14.93-10.26l-22.84-59.37a8 8 0 0 0-4.6-4.6l-59.37-22.84a16 16 0 0 1 0-29.86l59.37-22.84a8 8 0 0 0 4.6-4.6l22.67-58.95a16.45 16.45 0 0 1 13.17-10.57 16 16 0 0 1 16.86 10.15l22.84 59.37a8 8 0 0 0 4.6 4.6l59.37 22.84a16 16 0 0 1 0 29.86l-59.37 22.84a8 8 0 0 0-4.6 4.6l-22.84 59.37A16 16 0 0 1 400 256z\"},\"child\":[]}]})(props);\n};\nexport function IoSpeedometerOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m326.1 231.9-47.5 75.5a31 31 0 0 1-7 7 30.11 30.11 0 0 1-35-49l75.5-47.5a10.23 10.23 0 0 1 11.7 0 10.06 10.06 0 0 1 2.3 14z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M256 64C132.3 64 32 164.2 32 287.9a223.18 223.18 0 0 0 56.3 148.5c1.1 1.2 2.1 2.4 3.2 3.5a25.19 25.19 0 0 0 37.1-.1 173.13 173.13 0 0 1 254.8 0 25.19 25.19 0 0 0 37.1.1l3.2-3.5A223.18 223.18 0 0 0 480 287.9C480 164.2 379.7 64 256 64z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M256 128v32m160 128h-32m-256 0H96m69.49-90.51-22.63-22.63m203.65 22.63 22.63-22.63\"},\"child\":[]}]})(props);\n};\nexport function IoSpeedometerSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 48C123.46 48 16 156.55 16 290.56a243.3 243.3 0 0 0 60.32 160.87c1.18 1.3 2.25 2.6 3.43 3.79C89.2 464 92.07 464 99.57 464s12.43 0 19.93-8.88C152 416.64 202 400 256 400s104.07 16.71 136.5 55.12C400 464 404.82 464 412.43 464s11.3 0 19.82-8.78c1.22-1.25 2.25-2.49 3.43-3.79A243.3 243.3 0 0 0 496 290.56C496 156.55 388.54 48 256 48zm-16 64h32v64h-32zm-96 192H80v-32h64zm21.49-83.88-45.25-45.26 22.62-22.62 45.26 45.25zM278.6 307.4a31 31 0 0 1-7 7 30.11 30.11 0 0 1-35-49L320 224zm45.28-109.91 45.26-45.25 22.62 22.62-45.25 45.26zM432 304h-64v-32h64z\"},\"child\":[]}]})(props);\n};\nexport function IoSpeedometer (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M425.7 118.25A240 240 0 0 0 76.32 447l.18.2c.33.35.64.71 1 1.05.74.84 1.58 1.79 2.57 2.78a41.17 41.17 0 0 0 60.36-.42 157.13 157.13 0 0 1 231.26 0 41.18 41.18 0 0 0 60.65.06l3.21-3.5.18-.2a239.93 239.93 0 0 0-10-328.76zM240 128a16 16 0 0 1 32 0v32a16 16 0 0 1-32 0zM128 304H96a16 16 0 0 1 0-32h32a16 16 0 0 1 0 32zm48.8-95.2a16 16 0 0 1-22.62 0l-22.63-22.62a16 16 0 0 1 22.63-22.63l22.62 22.63a16 16 0 0 1 0 22.62zm149.3 23.1-47.5 75.5a31 31 0 0 1-7 7 30.11 30.11 0 0 1-35-49l75.5-47.5a10.23 10.23 0 0 1 11.7 0 10.06 10.06 0 0 1 2.3 14zm31.72-23.1a16 16 0 0 1-22.62-22.62l22.62-22.63a16 16 0 0 1 22.63 22.63zm65.88 227.6zM416 304h-32a16 16 0 0 1 0-32h32a16 16 0 0 1 0 32z\"},\"child\":[]}]})(props);\n};\nexport function IoSquareOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M416 448H96a32.09 32.09 0 0 1-32-32V96a32.09 32.09 0 0 1 32-32h320a32.09 32.09 0 0 1 32 32v320a32.09 32.09 0 0 1-32 32z\"},\"child\":[]}]})(props);\n};\nexport function IoSquareSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M48 48h416v416H48z\"},\"child\":[]}]})(props);\n};\nexport function IoSquare (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M416 464H96a48.05 48.05 0 0 1-48-48V96a48.05 48.05 0 0 1 48-48h320a48.05 48.05 0 0 1 48 48v320a48.05 48.05 0 0 1-48 48z\"},\"child\":[]}]})(props);\n};\nexport function IoStarHalfOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M480 208H308L256 48l-52 160H32l140 96-54 160 138-100 138 100-54-160z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M256 48v316L118 464l54-160-140-96h172l52-160z\"},\"child\":[]}]})(props);\n};\nexport function IoStarHalfSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M496 203.3H312.36L256 32l-56.36 171.3H16l150.21 105.4-58.5 171.3L256 373.84 404.29 480l-58.61-171.3zM274.63 347.82 256 334.49v-200.1l26 78.91 7.24 22h105.39l-67.32 47.2-19.69 13.81 7.78 22.75 26.26 76.75z\"},\"child\":[]}]})(props);\n};\nexport function IoStarHalf (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M480 208H308L256 48l-52 160H32l140 96-54 160 138-100 138 100-54-160z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M256 48v316L118 464l54-160-140-96h172l52-160z\"},\"child\":[]}]})(props);\n};\nexport function IoStarOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M480 208H308L256 48l-52 160H32l140 96-54 160 138-100 138 100-54-160z\"},\"child\":[]}]})(props);\n};\nexport function IoStarSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M496 203.3H312.36L256 32l-56.36 171.3H16l150.21 105.4-58.5 171.3L256 373.84 404.29 480l-58.61-171.3z\"},\"child\":[]}]})(props);\n};\nexport function IoStar (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M394 480a16 16 0 0 1-9.39-3L256 383.76 127.39 477a16 16 0 0 1-24.55-18.08L153 310.35 23 221.2a16 16 0 0 1 9-29.2h160.38l48.4-148.95a16 16 0 0 1 30.44 0l48.4 149H480a16 16 0 0 1 9.05 29.2L359 310.35l50.13 148.53A16 16 0 0 1 394 480z\"},\"child\":[]}]})(props);\n};\nexport function IoStatsChartOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"rect\",\"attr\":{\"width\":\"48\",\"height\":\"160\",\"x\":\"64\",\"y\":\"320\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"rx\":\"8\",\"ry\":\"8\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"48\",\"height\":\"256\",\"x\":\"288\",\"y\":\"224\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"rx\":\"8\",\"ry\":\"8\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"48\",\"height\":\"368\",\"x\":\"400\",\"y\":\"112\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"rx\":\"8\",\"ry\":\"8\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"48\",\"height\":\"448\",\"x\":\"176\",\"y\":\"32\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"rx\":\"8\",\"ry\":\"8\"},\"child\":[]}]})(props);\n};\nexport function IoStatsChartSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M128 496H48V304h80zm224 0h-80V208h80zm112 0h-80V96h80zm-224 0h-80V16h80z\"},\"child\":[]}]})(props);\n};\nexport function IoStatsChart (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M104 496H72a24 24 0 0 1-24-24V328a24 24 0 0 1 24-24h32a24 24 0 0 1 24 24v144a24 24 0 0 1-24 24zm224 0h-32a24 24 0 0 1-24-24V232a24 24 0 0 1 24-24h32a24 24 0 0 1 24 24v240a24 24 0 0 1-24 24zm112 0h-32a24 24 0 0 1-24-24V120a24 24 0 0 1 24-24h32a24 24 0 0 1 24 24v352a24 24 0 0 1-24 24zm-224 0h-32a24 24 0 0 1-24-24V40a24 24 0 0 1 24-24h32a24 24 0 0 1 24 24v432a24 24 0 0 1-24 24z\"},\"child\":[]}]})(props);\n};\nexport function IoStopCircleOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M448 256c0-106-86-192-192-192S64 150 64 256s86 192 192 192 192-86 192-192z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M310.4 336H201.6a25.62 25.62 0 0 1-25.6-25.6V201.6a25.62 25.62 0 0 1 25.6-25.6h108.8a25.62 25.62 0 0 1 25.6 25.6v108.8a25.62 25.62 0 0 1-25.6 25.6z\"},\"child\":[]}]})(props);\n};\nexport function IoStopCircleSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 48C141.31 48 48 141.31 48 256s93.31 208 208 208 208-93.31 208-208S370.69 48 256 48zm80 288H176V176h160z\"},\"child\":[]}]})(props);\n};\nexport function IoStopCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 48C141.31 48 48 141.31 48 256s93.31 208 208 208 208-93.31 208-208S370.69 48 256 48zm80 262.4a25.62 25.62 0 0 1-25.6 25.6H201.6a25.62 25.62 0 0 1-25.6-25.6V201.6a25.62 25.62 0 0 1 25.6-25.6h108.8a25.62 25.62 0 0 1 25.6 25.6z\"},\"child\":[]}]})(props);\n};\nexport function IoStopOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"rect\",\"attr\":{\"width\":\"320\",\"height\":\"320\",\"x\":\"96\",\"y\":\"96\",\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"rx\":\"24\",\"ry\":\"24\"},\"child\":[]}]})(props);\n};\nexport function IoStopSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M80 80h352v352H80z\"},\"child\":[]}]})(props);\n};\nexport function IoStop (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M392 432H120a40 40 0 0 1-40-40V120a40 40 0 0 1 40-40h272a40 40 0 0 1 40 40v272a40 40 0 0 1-40 40z\"},\"child\":[]}]})(props);\n};\nexport function IoStopwatchOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M256 232v-80\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"48\",\"d\":\"M256 88V72m-124 60-12-12\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"272\",\"r\":\"32\",\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M256 96a176 176 0 1 0 176 176A176 176 0 0 0 256 96z\"},\"child\":[]}]})(props);\n};\nexport function IoStopwatchSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M280 81.5V48h-48v33.5a191 191 0 0 0-84.43 32.13L120 86l-34 34 25.59 25.59A191.17 191.17 0 0 0 64 272c0 105.87 86.13 192 192 192s192-86.13 192-192c0-97.74-73.42-178.66-168-190.5zM256 320a48 48 0 0 1-16-93.25V136h32v90.75A48 48 0 0 1 256 320z\"},\"child\":[]}]})(props);\n};\nexport function IoStopwatch (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"272\",\"r\":\"16\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M280 81.5V72a24 24 0 0 0-48 0v9.5a191 191 0 0 0-84.43 32.13L137 103a24 24 0 0 0-34 34l8.6 8.6A191.17 191.17 0 0 0 64 272c0 105.87 86.13 192 192 192s192-86.13 192-192c0-97.74-73.42-178.66-168-190.5zM256 320a48 48 0 0 1-16-93.25V152a16 16 0 0 1 32 0v74.75A48 48 0 0 1 256 320z\"},\"child\":[]}]})(props);\n};\nexport function IoStorefrontOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M448 448V240m-384 0v208M382.47 48H129.53c-21.79 0-41.47 12-49.93 30.46L36.3 173c-14.58 31.81 9.63 67.85 47.19 69h2c31.4 0 56.85-25.18 56.85-52.23 0 27 25.46 52.23 56.86 52.23s56.8-23.38 56.8-52.23c0 27 25.45 52.23 56.85 52.23s56.86-23.38 56.86-52.23c0 28.85 25.45 52.23 56.85 52.23h1.95c37.56-1.17 61.77-37.21 47.19-69l-43.3-94.54C423.94 60 404.26 48 382.47 48zM32 464h448M136 288h80a24 24 0 0 1 24 24v88h0-128 0v-88a24 24 0 0 1 24-24zm152 176V312a24 24 0 0 1 24-24h64a24 24 0 0 1 24 24v152\"},\"child\":[]}]})(props);\n};\nexport function IoStorefrontSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M464 448V267.85a104.76 104.76 0 0 1-33.56 6.58c-1.18 0-2.3.05-3.4.05a108 108 0 0 1-56.86-16 108 108 0 0 1-56.85 16 106.16 106.16 0 0 1-56.51-16.2 107.84 107.84 0 0 1-57.2 16.2 106.14 106.14 0 0 1-56.85-16.42 106.14 106.14 0 0 1-56.85 16.42c-1.09 0-2.19 0-3.37-.05h-.06A104.66 104.66 0 0 1 48 267.49V448H16v32h480v-32zm-240-64h-96v-76a4 4 0 0 1 4-4h88a4 4 0 0 1 4 4zm160 64h-80V308a4 4 0 0 1 4-4h72a4 4 0 0 1 4 4zm108.57-277.72L445.89 64C432 32 432 32 400 32H112c-32 0-32 0-45.94 32L19.38 170.28c-9 19.41 2.89 39.34 2.9 39.35l.41.66c.42.66 1.13 1.75 1.62 2.37.1.13.19.27.28.4l5.24 6.39 5.31 5.14.42.36a69.65 69.65 0 0 0 9.44 6.78v.05a74 74 0 0 0 36 10.67h2.47a76.08 76.08 0 0 0 51.89-20.31 72.38 72.38 0 0 0 5.77-6 74.18 74.18 0 0 0 5.78 6 76.08 76.08 0 0 0 51.89 20.31c23.28 0 44.07-10 57.63-25.56a.11.11 0 0 1 .15 0l5.66 5.26a76.09 76.09 0 0 0 51.9 20.31c23.29 0 44.11-10 57.66-25.61 13.56 15.61 34.37 25.61 57.67 25.61h2.49a71.35 71.35 0 0 0 35-10.7c.95-.57 1.86-1.17 2.78-1.77A71.33 71.33 0 0 0 488 212.17l2-3c.9-2.04 11.21-20.3 2.57-38.89z\"},\"child\":[]}]})(props);\n};\nexport function IoStorefront (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M480 448h-12a4 4 0 0 1-4-4V273.51a4 4 0 0 0-5.24-3.86 104.92 104.92 0 0 1-28.32 4.78c-1.18 0-2.3.05-3.4.05a108.22 108.22 0 0 1-52.85-13.64 8.23 8.23 0 0 0-8 0 108.18 108.18 0 0 1-52.84 13.64 106.11 106.11 0 0 1-52.46-13.79 8.21 8.21 0 0 0-8.09 0 108.14 108.14 0 0 1-53.16 13.8 106.19 106.19 0 0 1-52.77-14 8.25 8.25 0 0 0-8.16 0 106.19 106.19 0 0 1-52.77 14c-1.09 0-2.19 0-3.37-.05h-.06a104.91 104.91 0 0 1-29.28-5.09 4 4 0 0 0-5.23 3.8V444a4 4 0 0 1-4 4H32.5c-8.64 0-16.1 6.64-16.48 15.28A16 16 0 0 0 32 480h447.5c8.64 0 16.1-6.64 16.48-15.28A16 16 0 0 0 480 448zm-256-68a4 4 0 0 1-4 4h-88a4 4 0 0 1-4-4v-64a12 12 0 0 1 12-12h72a12 12 0 0 1 12 12zm156 68h-72a4 4 0 0 1-4-4V316a12 12 0 0 1 12-12h56a12 12 0 0 1 12 12v128a4 4 0 0 1-4 4zm112.57-277.72-42.92-98.49C438.41 47.62 412.74 32 384.25 32H127.7c-28.49 0-54.16 15.62-65.4 39.79l-42.92 98.49c-9 19.41 2.89 39.34 2.9 39.35l.28.45c.49.78 1.36 2 1.89 2.78.05.06.09.13.14.2l5 6.05a7.45 7.45 0 0 0 .6.65l5 4.83.42.36a69.65 69.65 0 0 0 9.39 6.78v.05a74 74 0 0 0 36 10.67h2.47a76.08 76.08 0 0 0 51.89-20.31l.33-.31a7.94 7.94 0 0 1 10.89 0l.33.31a77.3 77.3 0 0 0 104.46 0 8 8 0 0 1 10.87 0 77.31 77.31 0 0 0 104.21.23 7.88 7.88 0 0 1 10.71 0 76.81 76.81 0 0 0 52.31 20.08h2.49a71.35 71.35 0 0 0 35-10.7c.95-.57 1.86-1.17 2.78-1.77A71.33 71.33 0 0 0 488 212.17l1.74-2.63q.26-.4.48-.84c1.66-3.38 10.56-20.76 2.35-38.42z\"},\"child\":[]}]})(props);\n};\nexport function IoSubwayOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"rect\",\"attr\":{\"width\":\"288\",\"height\":\"352\",\"x\":\"112\",\"y\":\"32\",\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"rx\":\"48\",\"ry\":\"48\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M208 80h96\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"288\",\"height\":\"96\",\"x\":\"112\",\"y\":\"128\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"rx\":\"32\",\"ry\":\"32\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"176\",\"cy\":\"320\",\"r\":\"16\",\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"336\",\"cy\":\"320\",\"r\":\"16\",\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M144 464h224m-32-32 48 48m-208-48-48 48\"},\"child\":[]}]})(props);\n};\nexport function IoSubwaySharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M392 16H120a24 24 0 0 0-24 24v336a24 24 0 0 0 24 24h272a24 24 0 0 0 24-24V40a24 24 0 0 0-24-24zM208 64h95.55c8.61 0 16 6.62 16.43 15.23A16 16 0 0 1 304 96h-95.55c-8.61 0-16-6.62-16.43-15.23A16 16 0 0 1 208 64zm-28.53 287.82a32 32 0 1 1 28.35-28.35 32 32 0 0 1-28.35 28.35zm160 0a32 32 0 1 1 28.35-28.35 32 32 0 0 1-28.35 28.35zM384 144v64H128v-64zm-86 272 31.37 32H182.63L214 416h-44l-80.57 80h45.2l16-16h210.74l16 16h45.3L343 416h-45z\"},\"child\":[]}]})(props);\n};\nexport function IoSubway (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M352 16H160a64.07 64.07 0 0 0-64 64v256a64.07 64.07 0 0 0 64 64h192a64.07 64.07 0 0 0 64-64V80a64.07 64.07 0 0 0-64-64zM208 64h96a16 16 0 0 1 0 32h-96a16 16 0 0 1 0-32zm-32 288a32 32 0 1 1 32-32 32 32 0 0 1-32 32zm160 0a32 32 0 1 1 32-32 32 32 0 0 1-32 32zm48-160a16 16 0 0 1-16 16H144a16 16 0 0 1-16-16v-32a16 16 0 0 1 16-16h224a16 16 0 0 1 16 16zm-36.69 228.69a16 16 0 0 0-22.62 22.62l4.68 4.69H182.63l4.68-4.69a16 16 0 0 0-22.62-22.62l-48 48a16 16 0 1 0 22.62 22.62L150.63 480h210.74l11.32 11.31a16 16 0 0 0 22.62-22.62z\"},\"child\":[]}]})(props);\n};\nexport function IoSunnyOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M256 48v48m0 320v48m147.08-355.08-33.94 33.94M142.86 369.14l-33.94 33.94M464 256h-48m-320 0H48m355.08 147.08-33.94-33.94M142.86 142.86l-33.94-33.94\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"256\",\"r\":\"80\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\"},\"child\":[]}]})(props);\n};\nexport function IoSunnySharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M234 26h44v92h-44zm0 368h44v92h-44zm104.025-251.143 65.054-65.054 31.113 31.113-65.054 65.054zM77.815 403.074l65.054-65.054 31.113 31.113-65.054 65.054zM394 234h92v44h-92zm-368 0h92v44H26zm312.029 135.14 31.112-31.113 65.054 65.054-31.112 31.112zM77.802 108.92l31.113-31.113 65.054 65.054-31.113 31.112zM256 358a102 102 0 1 1 102-102 102.12 102.12 0 0 1-102 102z\"},\"child\":[]}]})(props);\n};\nexport function IoSunny (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 118a22 22 0 0 1-22-22V48a22 22 0 0 1 44 0v48a22 22 0 0 1-22 22zm0 368a22 22 0 0 1-22-22v-48a22 22 0 0 1 44 0v48a22 22 0 0 1-22 22zm113.14-321.14a22 22 0 0 1-15.56-37.55l33.94-33.94a22 22 0 0 1 31.11 31.11l-33.94 33.94a21.93 21.93 0 0 1-15.55 6.44zM108.92 425.08a22 22 0 0 1-15.55-37.56l33.94-33.94a22 22 0 1 1 31.11 31.11l-33.94 33.94a21.94 21.94 0 0 1-15.56 6.45zM464 278h-48a22 22 0 0 1 0-44h48a22 22 0 0 1 0 44zm-368 0H48a22 22 0 0 1 0-44h48a22 22 0 0 1 0 44zm307.08 147.08a21.94 21.94 0 0 1-15.56-6.45l-33.94-33.94a22 22 0 0 1 31.11-31.11l33.94 33.94a22 22 0 0 1-15.55 37.56zM142.86 164.86a21.89 21.89 0 0 1-15.55-6.44l-33.94-33.94a22 22 0 0 1 31.11-31.11l33.94 33.94a22 22 0 0 1-15.56 37.55zM256 358a102 102 0 1 1 102-102 102.12 102.12 0 0 1-102 102z\"},\"child\":[]}]})(props);\n};\nexport function IoSwapHorizontalOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"m304 48 112 112-112 112m94.87-112H96m112 304L96 352l112-112m-94 112h302\"},\"child\":[]}]})(props);\n};\nexport function IoSwapHorizontalSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"square\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"m304 48 112 112-112 112m94.87-112H96m112 304L96 352l112-112m-94 112h302\"},\"child\":[]}]})(props);\n};\nexport function IoSwapHorizontal (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"m304 48 112 112-112 112m94.87-112H96m112 304L96 352l112-112m-94 112h302\"},\"child\":[]}]})(props);\n};\nexport function IoSwapVerticalOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M464 208 352 96 240 208m112-94.87V416M48 304l112 112 112-112m-112 94V96\"},\"child\":[]}]})(props);\n};\nexport function IoSwapVerticalSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"square\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M464 208 352 96 240 208m112-94.87V416M48 304l112 112 112-112m-112 94V96\"},\"child\":[]}]})(props);\n};\nexport function IoSwapVertical (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M464 208 352 96 240 208m112-94.87V416M48 304l112 112 112-112m-112 94V96\"},\"child\":[]}]})(props);\n};\nexport function IoSyncCircleOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M448 256c0-106-86-192-192-192S64 150 64 256s86 192 192 192 192-86 192-192z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M351.82 271.87v-16A96.15 96.15 0 0 0 184.09 192m-24.2 48.17v16A96.22 96.22 0 0 0 327.81 320\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"m135.87 256 23.59-23.6 24.67 23.6m192 0-23.59 23.6-24.67-23.6\"},\"child\":[]}]})(props);\n};\nexport function IoSyncCircleSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 48C141.13 48 48 141.13 48 256s93.13 208 208 208 208-93.13 208-208S370.87 48 256 48zm0 320a112.19 112.19 0 0 1-111.27-98.23l-8.86 8.86L113.24 256l46-46 47.55 45.48-22.12 23.12-7.2-6.88a80.26 80.26 0 0 0 138.48 37.5l23.77 21.41A112.82 112.82 0 0 1 256 368zm96.79-66-47.55-45.5 22.12-23.12 6.86 6.55A80.2 80.2 0 0 0 196 202.64l-23.82-21.37A112.18 112.18 0 0 1 367 242.49l9.11-9.12L398.76 256z\"},\"child\":[]}]})(props);\n};\nexport function IoSyncCircle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 48C141.13 48 48 141.13 48 256s93.13 208 208 208 208-93.13 208-208S370.87 48 256 48zm83.69 282.65a112.24 112.24 0 0 1-195-61.29 16 16 0 0 1-20.13-24.67l23.6-23.6a16 16 0 0 1 22.37-.25l24.67 23.6a16 16 0 0 1-18 26 80.25 80.25 0 0 0 138.72 38.83 16 16 0 0 1 23.77 21.41zm47.76-63.34-23.6 23.6a16 16 0 0 1-22.37.25l-24.67-23.6a16 16 0 0 1 17.68-26.11A80.17 80.17 0 0 0 196 202.64a16 16 0 1 1-23.82-21.37 112.17 112.17 0 0 1 194.88 61.57 16 16 0 0 1 20.39 24.47z\"},\"child\":[]}]})(props);\n};\nexport function IoSyncOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M434.67 285.59v-29.8c0-98.73-80.24-178.79-179.2-178.79a179 179 0 0 0-140.14 67.36m-38.53 82v29.8C76.8 355 157 435 256 435a180.45 180.45 0 0 0 140-66.92\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"m32 256 44-44 46 44m358 0-44 44-46-44\"},\"child\":[]}]})(props);\n};\nexport function IoSyncSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"square\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M434.67 285.59v-29.8c0-98.73-80.24-178.79-179.2-178.79a179 179 0 0 0-140.14 67.36m-38.53 82v29.8C76.8 355 157 435 256 435a180.45 180.45 0 0 0 140-66.92\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"square\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"m32 256 44-44 46 44m358 0-44 44-46-44\"},\"child\":[]}]})(props);\n};\nexport function IoSync (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M434.67 285.59v-29.8c0-98.73-80.24-178.79-179.2-178.79a179 179 0 0 0-140.14 67.36m-38.53 82v29.8C76.8 355 157 435 256 435a180.45 180.45 0 0 0 140-66.92\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"m32 256 44-44 46 44m358 0-44 44-46-44\"},\"child\":[]}]})(props);\n};\nexport function IoTabletLandscapeOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"rect\",\"attr\":{\"width\":\"352\",\"height\":\"480\",\"x\":\"80\",\"y\":\"16\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"rx\":\"48\",\"ry\":\"48\",\"transform\":\"rotate(-90 256 256)\"},\"child\":[]}]})(props);\n};\nexport function IoTabletLandscapeSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M0 82v348a18 18 0 0 0 18 18h476a18 18 0 0 0 18-18V82a18 18 0 0 0-18-18H18A18 18 0 0 0 0 82zm448 330H64V100h384z\"},\"child\":[]}]})(props);\n};\nexport function IoTabletLandscape (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M512 128v256a64.07 64.07 0 0 1-64 64H64a64.07 64.07 0 0 1-64-64V128a64.07 64.07 0 0 1 64-64h384a64.07 64.07 0 0 1 64 64zM32 384a32 32 0 0 0 32 32h384a32 32 0 0 0 32-32V128a32 32 0 0 0-32-32H64a32 32 0 0 0-32 32z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M0 128a64.07 64.07 0 0 1 64-64h384a64.07 64.07 0 0 1 64 64v256a64.07 64.07 0 0 1-64 64H64a64.07 64.07 0 0 1-64-64V128m480 256V128a32 32 0 0 0-32-32H64a32 32 0 0 0-32 32v256a32 32 0 0 0 32 32h384a32 32 0 0 0 32-32m-16 0a16 16 0 0 1-16 16H64a16 16 0 0 1-16-16V128a16 16 0 0 1 16-16h384a16 16 0 0 1 16 16v256z\"},\"child\":[]}]})(props);\n};\nexport function IoTabletPortraitOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"rect\",\"attr\":{\"width\":\"352\",\"height\":\"480\",\"x\":\"80\",\"y\":\"16\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"rx\":\"48\",\"ry\":\"48\"},\"child\":[]}]})(props);\n};\nexport function IoTabletPortraitSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M430 0H82a18 18 0 0 0-18 18v476a18 18 0 0 0 18 18h348a18 18 0 0 0 18-18V18a18 18 0 0 0-18-18zM100 448V64h312v384z\"},\"child\":[]}]})(props);\n};\nexport function IoTabletPortrait (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M384 512H128a64.07 64.07 0 0 1-64-64V64a64.07 64.07 0 0 1 64-64h256a64.07 64.07 0 0 1 64 64v384a64.07 64.07 0 0 1-64 64zM128 32a32 32 0 0 0-32 32v384a32 32 0 0 0 32 32h256a32 32 0 0 0 32-32V64a32 32 0 0 0-32-32z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M384 0a64.07 64.07 0 0 1 64 64v384a64.07 64.07 0 0 1-64 64H128a64.07 64.07 0 0 1-64-64V64a64.07 64.07 0 0 1 64-64h256M128 480h256a32 32 0 0 0 32-32V64a32 32 0 0 0-32-32H128a32 32 0 0 0-32 32v384a32 32 0 0 0 32 32m0-16a16 16 0 0 1-16-16V64a16 16 0 0 1 16-16h256a16 16 0 0 1 16 16v384a16 16 0 0 1-16 16z\"},\"child\":[]}]})(props);\n};\nexport function IoTelescopeOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"m39.93 327.56-4.71-8.13A24 24 0 0 1 44 286.64l86.87-50.07a16 16 0 0 1 21.89 5.86l12.71 22a16 16 0 0 1-5.86 21.85l-86.85 50.07a24.06 24.06 0 0 1-32.83-8.79z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M170.68 273.72 147.12 233a24 24 0 0 1 8.8-32.78l124.46-71.75a16 16 0 0 1 21.89 5.86l31.57 54.59a16 16 0 0 1-5.84 21.84L203.51 282.5a24 24 0 0 1-32.83-8.78zm171.17-71.51-46.51-80.43a24 24 0 0 1 8.8-32.78l93.29-53.78A24.07 24.07 0 0 1 430.27 44l46.51 80.43a24 24 0 0 1-8.8 32.79L374.69 211a24.06 24.06 0 0 1-32.84-8.79zM127.59 480l96.14-207.99m48.07-15.99L368.55 448\"},\"child\":[]}]})(props);\n};\nexport function IoTelescopeSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m1.41 292.9 44.82 76.97 98.14-56.38-44.73-77.37L1.41 292.9z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m287.87 252.34 23.67-13.81-63.42-110-132.92 77C133.75 237.51 176 310 176 310l15.53-8.32c.24-.13.55 0 .83 0L102.65 496h35.16l99.05-214.25 23.24-13.4L358 464h36zM262.08 96c24.81 42.23 60.25 104.25 86.4 148.76L510.79 151 424.07 1.41z\"},\"child\":[]}]})(props);\n};\nexport function IoTelescope (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M107.56 250a16 16 0 0 0-21.85-5.86L36 272.81a39.71 39.71 0 0 0-18.8 24.91 40.9 40.9 0 0 0 4.55 30.35l4.36 7.54a40 40 0 0 0 54.62 14.62l49.67-28.63a16 16 0 0 0 5.87-21.86z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M382.84 440.8 288.72 254a2 2 0 0 1 .79-2.63l8.3-4.79a16 16 0 0 0 5.86-21.86l-47.53-82.33a16 16 0 0 0-21.86-5.87l-86.38 49.8a39.73 39.73 0 0 0-18.65 24.28 34.82 34.82 0 0 0-1.37 9.76c.06 7.6 9.2 22.7 18.12 38.28 9.59 16.75 19.24 33.88 26.34 38.15 4.52 2.72 12.5 4.9 19.21 4.9h.84l-79.32 171.6a16 16 0 1 0 29.05 13.42l93.68-202.65a7.94 7.94 0 0 1 3.26-3.57l19.21-11.08a2 2 0 0 1 2.78.84l93.21 185a16 16 0 0 0 28.58-14.4zm107.37-325.06L444.09 36a40.08 40.08 0 0 0-54.63-14.62l-93.34 53.78a39.69 39.69 0 0 0-18.65 24.28 32.76 32.76 0 0 0-1.27 13.25c1.74 12.62 13 30.4 26.41 53.89 13.58 23.73 28.91 50.48 36.93 56.27a40.18 40.18 0 0 0 23.18 7.37 39.77 39.77 0 0 0 19.92-5.34L476 171.07a39.72 39.72 0 0 0 18.79-24.84 41 41 0 0 0-4.58-30.49z\"},\"child\":[]}]})(props);\n};\nexport function IoTennisballOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"256\",\"r\":\"208\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M461.43 271.44c-5.09.37-8.24.56-13.43.56-114.88 0-208-93.12-208-208 0-5.37.2-8.69.6-14M49.65 240.56S58.84 240 64 240c114.88 0 208 93.12 208 208 0 5.38-.61 14-.61 14\"},\"child\":[]}]})(props);\n};\nexport function IoTennisballSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M246.4 480a181 181 0 0 0 3.22-22.86c.35-4.61.53-9.31.53-14 0-100-81.34-181.32-181.32-181.32A181.72 181.72 0 0 0 32 265.61 224.2 224.2 0 0 0 246.4 480z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M284.63 227.37A222.73 222.73 0 0 1 219 68.83a227.09 227.09 0 0 1 2.62-34.42A224.41 224.41 0 0 0 34.41 221.58 227.09 227.09 0 0 1 68.83 219a222.73 222.73 0 0 1 158.54 65.67A222.73 222.73 0 0 1 293 443.17c0 5.74-.22 11.54-.65 17.23s-1.11 11.51-2 17.2a224.42 224.42 0 0 0 187.24-187.18 227.09 227.09 0 0 1-34.42 2.58 222.73 222.73 0 0 1-158.54-65.63z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M443.17 250.15a181.72 181.72 0 0 0 36.83-3.76A224.2 224.2 0 0 0 265.61 32a181.72 181.72 0 0 0-3.76 36.83c0 99.98 81.34 181.32 181.32 181.32z\"},\"child\":[]}]})(props);\n};\nexport function IoTennisball (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M448 256a192.55 192.55 0 0 0 32-2.68A224 224 0 0 0 258.68 32 192.55 192.55 0 0 0 256 64c0 105.87 86.13 192 192 192zM253.35 480c.94-5.67 1.65-11.4 2.09-17.18.37-4.88.56-9.86.56-14.79 0-105.87-86.13-192-192-192a192.55 192.55 0 0 0-32 2.68A224 224 0 0 0 253.35 480z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M289.61 222.39A222.53 222.53 0 0 1 224 64a226.07 226.07 0 0 1 2-30A224.1 224.1 0 0 0 34 226a226.07 226.07 0 0 1 30-2 222.53 222.53 0 0 1 158.39 65.61A222.53 222.53 0 0 1 288 448c0 5.74-.22 11.53-.65 17.22q-.5 6.42-1.36 12.79A224.12 224.12 0 0 0 478 286a226.07 226.07 0 0 1-30 2 222.53 222.53 0 0 1-158.39-65.61z\"},\"child\":[]}]})(props);\n};\nexport function IoTerminalOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"rect\",\"attr\":{\"width\":\"448\",\"height\":\"416\",\"x\":\"32\",\"y\":\"48\",\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"rx\":\"48\",\"ry\":\"48\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"m96 112 80 64-80 64m96 0h64\"},\"child\":[]}]})(props);\n};\nexport function IoTerminalSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M16 44v424a12 12 0 0 0 12 12h456a12 12 0 0 0 12-12V44a12 12 0 0 0-12-12H28a12 12 0 0 0-12 12zm57.51 193.5 76.88-61.5-76.88-61.5 20-25 108.1 86.5L93.5 262.49zM272 256h-96v-32h96z\"},\"child\":[]}]})(props);\n};\nexport function IoTerminal (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M432 32H80a64.07 64.07 0 0 0-64 64v320a64.07 64.07 0 0 0 64 64h352a64.07 64.07 0 0 0 64-64V96a64.07 64.07 0 0 0-64-64zM96 256a16 16 0 0 1-10-28.49L150.39 176 86 124.49a16 16 0 1 1 20-25l80 64a16 16 0 0 1 0 25l-80 64A16 16 0 0 1 96 256zm160 0h-64a16 16 0 0 1 0-32h64a16 16 0 0 1 0 32z\"},\"child\":[]}]})(props);\n};\nexport function IoTextOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"m32 415.5 120-320 120 320m-42-112H74m252-64c12.19-28.69 41-48 74-48h0c46 0 80 32 80 80v144\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M320 358.5c0 36 26.86 58 60 58 54 0 100-27 100-106v-15c-20 0-58 1-92 5-32.77 3.86-68 19-68 58z\"},\"child\":[]}]})(props);\n};\nexport function IoTextSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M404.42 170c-41.23 0-78.07 24.06-93.85 61.3L304 246.52l40.33 17.18 6.56-15.22c8.9-21 29.91-34.55 53.53-34.55 34.55 0 57.76 23.27 57.76 57.91v2.3c-22.12.59-48.65 2.05-72.27 4.84-54.52 6.43-87.06 36.23-87.06 79.72 0 23.16 8.72 44 24.56 58.59C342.28 431 362.55 438 384.51 438c30.86 0 57.5-7.33 77.67-22.64V438H506V271.84C506 212.83 463.28 170 404.42 170zm-19.91 225.07c-17.46 0-37.85-9.84-37.85-36.37 0-10.65 3.82-18.11 12.38-24.19 8.34-5.92 21.12-10.15 36-11.9 21.78-2.57 46.31-3.95 67-4.52-2.16 51.49-27.57 76.98-77.53 76.98zm-291.26-69.2h125.5L260.94 438H308L155 48 4 438h47.06zM156 160.71 202.25 282h-92.5z\"},\"child\":[]}]})(props);\n};\nexport function IoText (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m292.6 407.78-120-320a22 22 0 0 0-41.2 0l-120 320a22 22 0 0 0 41.2 15.44l36.16-96.42a2 2 0 0 1 1.87-1.3h122.74a2 2 0 0 1 1.87 1.3l36.16 96.42a22 22 0 0 0 41.2-15.44zm-185.84-129 43.37-115.65a2 2 0 0 1 3.74 0l43.37 115.67a2 2 0 0 1-1.87 2.7h-86.74a2 2 0 0 1-1.87-2.7zM400.77 169.5c-41.72-.3-79.08 23.87-95 61.4a22 22 0 0 0 40.5 17.2c8.88-20.89 29.77-34.44 53.32-34.6 32.32-.22 58.41 26.5 58.41 58.85a1.5 1.5 0 0 1-1.45 1.5c-21.92.61-47.92 2.07-71.12 4.8-54.75 6.44-87.43 36.29-87.43 79.85 0 23.19 8.76 44 24.67 58.68C337.6 430.93 358 438.5 380 438.5c31 0 57.69-8 77.94-23.22h.06a22 22 0 1 0 44 .19v-143c0-56.18-45-102.56-101.23-102.97zM380 394.5c-17.53 0-38-9.43-38-36 0-10.67 3.83-18.14 12.43-24.23 8.37-5.93 21.2-10.16 36.14-11.92 21.12-2.49 44.82-3.86 65.14-4.47a2 2 0 0 1 2 2.1C455 370.1 429.46 394.5 380 394.5z\"},\"child\":[]}]})(props);\n};\nexport function IoThermometerOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M307.72 302.27a8 8 0 0 1-3.72-6.75V80a48 48 0 0 0-48-48h0a48 48 0 0 0-48 48v215.52a8 8 0 0 1-3.71 6.74 97.51 97.51 0 0 0-44.19 86.07A96 96 0 0 0 352 384a97.49 97.49 0 0 0-44.28-81.73zM256 112v272\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"384\",\"r\":\"48\"},\"child\":[]}]})(props);\n};\nexport function IoThermometerSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M320 291.24V80a64 64 0 1 0-128 0v211.24A113.39 113.39 0 0 0 144 384a112 112 0 0 0 224 0 113.39 113.39 0 0 0-48-92.76zM256 432a48 48 0 0 1-16-93.26V96h32v242.74A48 48 0 0 1 256 432z\"},\"child\":[]}]})(props);\n};\nexport function IoThermometer (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M320 287.18V81c0-35.12-27.89-64.42-63-64.95a64.08 64.08 0 0 0-65 64v207.13a8 8 0 0 1-3.18 6.37A113.48 113.48 0 0 0 144 384a112 112 0 0 0 224 0 113.48 113.48 0 0 0-44.82-90.45 8 8 0 0 1-3.18-6.37zM254.07 432a48 48 0 0 1-22-89.54 16 16 0 0 0 8-13.84V112.45c0-8.61 6.62-16 15.23-16.43A16 16 0 0 1 272 112v216.58a16.18 16.18 0 0 0 8.15 13.94A48 48 0 0 1 254.07 432z\"},\"child\":[]}]})(props);\n};\nexport function IoThumbsDownOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M192 53.84S208 48 256 48s74 16 96 32h64a64 64 0 0 1 64 64v48a64 64 0 0 1-64 64h-30a32.34 32.34 0 0 0-27.37 15.4S350 290.19 324 335.22 248 448 240 464c-29 0-43-22-34-47.71 10.28-29.39 23.71-54.38 27.46-87.09.54-4.78-3.14-12-8-12L96 307\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"m96 241 80 2c20 1.84 32 12.4 32 30s-14 28.84-32 30l-80 4c-17.6 0-32-16.4-32-34v-.17A32 32 0 0 1 96 241zm-32-65 112 2c18 .84 32 12.41 32 30 0 17.61-14 28.86-32 30l-112 2a32.1 32.1 0 0 1-32-32 32.1 32.1 0 0 1 32-32zm48-128 64 3c21 1.84 32 11.4 32 29s-14.4 30-32 30l-64 2a32.09 32.09 0 0 1-32-32 32.09 32.09 0 0 1 32-32zm-32 64 96 2c19 .84 32 12.4 32 30s-13 28.84-32 30l-96 2a32.09 32.09 0 0 1-32-32 32.09 32.09 0 0 1 32-32z\"},\"child\":[]}]})(props);\n};\nexport function IoThumbsDownSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m56 320 156.05 12-23 89.4c-6.08 26.6.7 41.87 22.39 48.62l34.69 9.85a4 4 0 0 0 4.4-1.72l129-202.34a8 8 0 0 1 6.81-3.81H496V64H378.39a48 48 0 0 1-15.18-2.46l-76.3-25.43a80 80 0 0 0-25.3-4.11H83.68c-19 0-31.5 13.52-35.23 32.16L16 206.42V280c0 22.06 18 38 40 40z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"d\":\"M378.45 273.93A15.84 15.84 0 0 1 386 272a15.93 15.93 0 0 0-7.51 1.91zm-40.59 69.29-.13.22a2.53 2.53 0 0 1 .13-.22c20.5-35.51 30.36-55 33.82-62-3.47 7.06-13.34 26.51-33.82 62z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m372.66 279.16-1 2a16.29 16.29 0 0 1 6.77-7.26 16.48 16.48 0 0 0-5.77 5.26z\"},\"child\":[]}]})(props);\n};\nexport function IoThumbsDown (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m39.94 178 144.16 6.12c4.61.36 23.9 1.22 23.9 25.88 0 23.8-19.16 25.33-24.14 25.88L39.94 242C27.27 241.87 16 227.56 16 210s11.27-31.87 23.94-32zm141.45 131.66L74.65 318C62 318 48 301.31 48 284.12v-.33c0-16.33 11.14-29.63 24.88-29.79l108.45 1.72C208 259 208 275.16 208 282.12c0 22.88-21.8 27.14-26.61 27.54zM90.15 32l89.37 8.93C204 41.86 208 58.18 208 68.4c0 18.39-13.41 24.6-26.67 24.6l-91 3C75.78 95.78 64 81.51 64 64s11.68-31.66 26.15-32zm-34.36 71.5 126.4 6.22c9.39.63 25.81 3 25.81 26.36 0 12-4.35 25.62-25 27.53L55.79 167.5C42.65 167.35 32 154 32 136.08s10.65-32.43 23.79-32.58z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"d\":\"M378.45 273.93A15.84 15.84 0 0 1 386 272a15.93 15.93 0 0 0-7.51 1.91zm-40.59 69.29-.13.22a2.53 2.53 0 0 1 .13-.22c20.5-35.51 30.36-55 33.82-62-3.47 7.06-13.34 26.51-33.82 62z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m372.66 279.16-1 2a16.29 16.29 0 0 1 6.77-7.26 16.48 16.48 0 0 0-5.77 5.26z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M195.94 459.38C205.37 472.67 221 480 240 480a16 16 0 0 0 14.31-8.85c3-6.06 15.25-24 28.19-42.9 18-26.33 40.35-59.08 55.23-84.81l.13-.22c20.48-35.49 30.35-54.94 33.82-62l1-2a16.48 16.48 0 0 1 5.79-5.23A15.93 15.93 0 0 1 386 272h25.32A84.7 84.7 0 0 0 496 187.3v-38.6A84.7 84.7 0 0 0 411.31 64h-48.79a17.46 17.46 0 0 1-9.58-2.89C330 46.13 286.66 32 240 32c-7.45 0-14.19.14-20.27.38a8 8 0 0 0-6.2 12.68l.1.14C222.2 57.59 224 71 224 80a61.16 61.16 0 0 1-5.19 24.77 17.38 17.38 0 0 0 0 14.06 63.81 63.81 0 0 1 0 50.39 17.32 17.32 0 0 0 0 14 62.13 62.13 0 0 1 0 49.58 18.13 18.13 0 0 0 0 14.68A60.41 60.41 0 0 1 224 273c0 8.2-2 21.3-8 31.18a15.66 15.66 0 0 0-1.14 13.65c.38 1 .76 2.06 1.13 3.17a24.8 24.8 0 0 1 .86 11.57c-3 19.35-9.67 36.3-16.74 54.16-3.08 7.78-6.27 15.82-9.22 24.27-6.14 17.56-4.3 35.2 5.05 48.38z\"},\"child\":[]}]})(props);\n};\nexport function IoThumbsUpOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M320 458.16S304 464 256 464s-74-16-96-32H96a64 64 0 0 1-64-64v-48a64 64 0 0 1 64-64h30a32.34 32.34 0 0 0 27.37-15.4S162 221.81 188 176.78 264 64 272 48c29 0 43 22 34 47.71-10.28 29.39-23.71 54.38-27.46 87.09-.54 4.78 3.14 12 7.95 12L416 205\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"m416 271-80-2c-20-1.84-32-12.4-32-30s14-28.84 32-30l80-4c17.6 0 32 16.4 32 34v.17A32 32 0 0 1 416 271zm32 65-112-2c-18-.84-32-12.41-32-30 0-17.61 14-28.86 32-30l112-2a32.1 32.1 0 0 1 32 32 32.1 32.1 0 0 1-32 32zm-48 128-64-3c-21-1.84-32-11.4-32-29s14.4-30 32-30l64-2a32.09 32.09 0 0 1 32 32 32.09 32.09 0 0 1-32 32zm32-64-96-2c-19-.84-32-12.4-32-30s13-28.84 32-30l96-2a32.09 32.09 0 0 1 32 32 32.09 32.09 0 0 1-32 32z\"},\"child\":[]}]})(props);\n};\nexport function IoThumbsUpSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m456 192-156-12 23-89.4c6-26.6-.78-41.87-22.47-48.6l-34.69-9.85a4 4 0 0 0-4.4 1.72l-129 202.34a8 8 0 0 1-6.81 3.81H16V448h117.61a48 48 0 0 1 15.18 2.46l76.3 25.43a80 80 0 0 0 25.3 4.11h177.93c19 0 31.5-13.52 35.23-32.16L496 305.58V232c0-22.06-18-38-40-40z\"},\"child\":[]}]})(props);\n};\nexport function IoThumbsUp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m472.06 334-144.16-6.13c-4.61-.36-23.9-1.21-23.9-25.87 0-23.81 19.16-25.33 24.14-25.88L472.06 270c12.67.13 23.94 14.43 23.94 32s-11.27 31.87-23.94 32zM330.61 202.33 437.35 194C450 194 464 210.68 464 227.88v.33c0 16.32-11.14 29.62-24.88 29.79l-108.45-1.73C304 253 304 236.83 304 229.88c0-22.88 21.8-27.15 26.61-27.55zM421.85 480l-89.37-8.93C308 470.14 304 453.82 304 443.59c0-18.38 13.41-24.6 26.67-24.6l91-3c14.54.23 26.32 14.5 26.32 32s-11.67 31.67-26.14 32.01zm34.36-71.5-126.4-6.21c-9.39-.63-25.81-3-25.81-26.37 0-12 4.35-25.61 25-27.53l127.19-3.88c13.16.14 23.81 13.49 23.81 31.4s-10.65 32.43-23.79 32.58z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"d\":\"M133.55 238.06A15.85 15.85 0 0 1 126 240a15.82 15.82 0 0 0 7.51-1.92zm40.59-69.28.13-.23-.13.23c-20.5 35.51-30.36 54.95-33.82 62 3.47-7.07 13.34-26.51 33.82-62z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m139.34 232.84 1-2a16.27 16.27 0 0 1-6.77 7.25 16.35 16.35 0 0 0 5.77-5.25z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M316.06 52.62C306.63 39.32 291 32 272 32a16 16 0 0 0-14.31 8.84c-3 6.07-15.25 24-28.19 42.91-18 26.33-40.35 59.07-55.23 84.8l-.13.23c-20.48 35.49-30.35 54.93-33.82 62l-1 2a16.35 16.35 0 0 1-5.79 5.22 15.82 15.82 0 0 1-7.53 2h-25.31A84.69 84.69 0 0 0 16 324.69v38.61a84.69 84.69 0 0 0 84.69 84.7h48.79a17.55 17.55 0 0 1 9.58 2.89C182 465.87 225.34 480 272 480c7.45 0 14.19-.14 20.27-.38a8 8 0 0 0 6.2-12.68l-.1-.14C289.8 454.41 288 441 288 432a61.2 61.2 0 0 1 5.19-24.77 17.36 17.36 0 0 0 0-14.05 63.81 63.81 0 0 1 0-50.39 17.32 17.32 0 0 0 0-14 62.15 62.15 0 0 1 0-49.59 18.13 18.13 0 0 0 0-14.68A60.33 60.33 0 0 1 288 239c0-8.2 2-21.3 8-31.19a15.63 15.63 0 0 0 1.14-13.64c-.38-1-.76-2.07-1.13-3.17a24.84 24.84 0 0 1-.86-11.58c3-19.34 9.67-36.29 16.74-54.16 3.08-7.78 6.27-15.82 9.22-24.26 6.14-17.57 4.3-35.2-5.05-48.38z\"},\"child\":[]}]})(props);\n};\nexport function IoThunderstormOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"m120 352-24 48m40 32-16 32m280-112-24 48m40 32-16 32M208 304l-16 96h48v80l80-112h-48l16-64m116.33-151.11H392.2C384.71 84.85 326.14 32 256 32a136.39 136.39 0 0 0-128.63 90.67h-4.57c-49.94 0-90.8 40.8-90.8 90.66h0C32 263.2 72.86 304 122.8 304h281.53C446 304 480 270 480 228.44h0c0-41.55-34-75.55-75.67-75.55z\"},\"child\":[]}]})(props);\n};\nexport function IoThunderstormSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M405.84 136.9a151.25 151.25 0 0 0-47.6-81.9 153 153 0 0 0-241.81 51.86C60.5 110.16 16 156.65 16 213.33 16 272.15 63.91 320 122.8 320h72.31L176 416h48v80l112-144h-43.51l8-32h103.84a91.56 91.56 0 0 0 1.51-183.1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m74.53 407.177 38.32-76.622 28.62 14.313-38.32 76.623zm23.99 64.012 30.318-60.622 28.62 14.313-30.317 60.622zm256.021-64 38.32-76.623 28.62 14.314-38.32 76.622zm24.001 64.011 30.317-60.622 28.62 14.314-30.317 60.621z\"},\"child\":[]}]})(props);\n};\nexport function IoThunderstorm (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M96 416a16 16 0 0 1-14.3-23.16l24-48a16 16 0 0 1 28.62 14.32l-24 48A16 16 0 0 1 96 416zm24 64a16 16 0 0 1-14.3-23.16l16-32a16 16 0 0 1 28.62 14.32l-16 32A16 16 0 0 1 120 480zm256-64a16 16 0 0 1-14.3-23.16l24-48a16 16 0 0 1 28.62 14.32l-24 48A16 16 0 0 1 376 416zm24 64a16 16 0 0 1-14.3-23.16l16-32a16 16 0 0 1 28.62 14.32l-16 32A16 16 0 0 1 400 480z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M405.84 136.9a151.25 151.25 0 0 0-47.6-81.9 153 153 0 0 0-241.81 51.86C60.5 110.16 16 156.65 16 213.33 16 272.15 63.91 320 122.8 320h66.31l-12.89 77.37A16 16 0 0 0 192 416h32v64a16 16 0 0 0 29 9.3l80-112a16 16 0 0 0-13-25.3h-27.51l8-32h103.84a91.56 91.56 0 0 0 1.51-183.1z\"},\"child\":[]}]})(props);\n};\nexport function IoTicketOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M366.05 146a46.7 46.7 0 0 1-2.42-63.42 3.87 3.87 0 0 0-.22-5.26l-44.13-44.18a3.89 3.89 0 0 0-5.5 0l-70.34 70.34a23.62 23.62 0 0 0-5.71 9.24 23.66 23.66 0 0 1-14.95 15 23.7 23.7 0 0 0-9.25 5.71L33.14 313.78a3.89 3.89 0 0 0 0 5.5l44.13 44.13a3.87 3.87 0 0 0 5.26.22 46.69 46.69 0 0 1 65.84 65.84 3.87 3.87 0 0 0 .22 5.26l44.13 44.13a3.89 3.89 0 0 0 5.5 0l180.4-180.39a23.7 23.7 0 0 0 5.71-9.25 23.66 23.66 0 0 1 14.95-15 23.62 23.62 0 0 0 9.24-5.71l70.34-70.34a3.89 3.89 0 0 0 0-5.5l-44.13-44.13a3.87 3.87 0 0 0-5.26-.22 46.7 46.7 0 0 1-63.42-2.32z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"m250.5 140.44-16.51-16.51m60.53 60.53-11.01-11m55.03 55.03-11-11.01m60.53 60.53-16.51-16.51\"},\"child\":[]}]})(props);\n};\nexport function IoTicketSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m426.24 127.72-10.94 10.94a29.67 29.67 0 0 1-42-42l10.94-10.94L314.52 16l-88 88-4 12.09-12.09 4L16 314.52l69.76 69.76 10.94-10.94a29.67 29.67 0 0 1 42 42l-10.94 10.94L197.48 496l194.4-194.4 4-12.09 12.09-4 88-88zm-208.56 5.43 21.87-21.87 33 33-21.88 21.87zm43 43 21.88-21.88 32.52 32.52-21.88 21.88zm42.56 42.56 21.88-21.88 32.52 32.52-21.84 21.93zm75.57 75.56-33-33 21.87-21.88 33 33z\"},\"child\":[]}]})(props);\n};\nexport function IoTicket (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m490.18 181.4-44.13-44.13a20 20 0 0 0-27-1 30.81 30.81 0 0 1-41.68-1.6 30.81 30.81 0 0 1-1.6-41.67 20 20 0 0 0-1-27L330.6 21.82a19.91 19.91 0 0 0-28.13 0l-70.35 70.34a39.87 39.87 0 0 0-9.57 15.5 7.71 7.71 0 0 1-4.83 4.83 39.78 39.78 0 0 0-15.5 9.58l-180.4 180.4a19.91 19.91 0 0 0 0 28.13L66 374.73a20 20 0 0 0 27 1 30.69 30.69 0 0 1 43.28 43.28 20 20 0 0 0 1 27l44.13 44.13a19.91 19.91 0 0 0 28.13 0l180.4-180.4a39.82 39.82 0 0 0 9.58-15.49 7.69 7.69 0 0 1 4.84-4.84 39.84 39.84 0 0 0 15.49-9.57l70.34-70.35a19.91 19.91 0 0 0-.01-28.09zm-228.37-29.65a16 16 0 0 1-22.63 0l-11.51-11.51a16 16 0 0 1 22.63-22.62l11.51 11.5a16 16 0 0 1 0 22.63zm44 44a16 16 0 0 1-22.62 0l-11-11a16 16 0 1 1 22.63-22.63l11 11a16 16 0 0 1 .01 22.66zm44 44a16 16 0 0 1-22.63 0l-11-11a16 16 0 0 1 22.63-22.62l11 11a16 16 0 0 1 .05 22.67zm44.43 44.54a16 16 0 0 1-22.63 0l-11.44-11.5a16 16 0 1 1 22.68-22.57l11.45 11.49a16 16 0 0 1-.01 22.63z\"},\"child\":[]}]})(props);\n};\nexport function IoTimeOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M256 64C150 64 64 150 64 256s86 192 192 192 192-86 192-192S362 64 256 64z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M256 128v144h96\"},\"child\":[]}]})(props);\n};\nexport function IoTimeSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 48C141.13 48 48 141.13 48 256c0 114.69 93.32 208 208 208 114.86 0 208-93.14 208-208 0-114.69-93.31-208-208-208zm108 240H244a4 4 0 0 1-4-4V116a4 4 0 0 1 4-4h24a4 4 0 0 1 4 4v140h92a4 4 0 0 1 4 4v24a4 4 0 0 1-4 4z\"},\"child\":[]}]})(props);\n};\nexport function IoTime (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 48C141.13 48 48 141.13 48 256s93.13 208 208 208 208-93.13 208-208S370.87 48 256 48zm96 240h-96a16 16 0 0 1-16-16V128a16 16 0 0 1 32 0v128h80a16 16 0 0 1 0 32z\"},\"child\":[]}]})(props);\n};\nexport function IoTimerOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M112.91 128A191.85 191.85 0 0 0 64 254c-1.18 106.35 85.65 193.8 192 194 106.2.2 192-85.83 192-192 0-104.54-83.55-189.61-187.5-192a4.36 4.36 0 0 0-4.5 4.37V152\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m233.38 278.63-79-113a8.13 8.13 0 0 1 11.32-11.32l113 79a32.5 32.5 0 0 1-37.25 53.26 33.21 33.21 0 0 1-8.07-7.94z\"},\"child\":[]}]})(props);\n};\nexport function IoTimerSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 48C141.12 48 48 141.12 48 256s93.12 208 208 208 208-93.12 208-208S370.88 48 256 48zm0 384c-97 0-176-78.95-176-176a174.55 174.55 0 0 1 53.87-126.72L279 233l-19 30-125-91c-13 23-26.7 46-26.7 84 0 81.44 66.26 147.7 147.7 147.7S403.7 337.44 403.7 256c0-76.67-58.72-139.88-133.55-147v55h-28.3V79.89c4.24.07 8.94.11 14.15.11 97.05 0 176 79 176 176s-78.95 176-176 176z\"},\"child\":[]}]})(props);\n};\nexport function IoTimer (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 48C141.12 48 48 141.12 48 256s93.12 208 208 208 208-93.12 208-208S370.88 48 256 48zm-82.33 114.34 105 71a32.5 32.5 0 0 1-37.25 53.26 33.21 33.21 0 0 1-8-8l-71-105a8.13 8.13 0 0 1 11.32-11.32zM256 432c-97 0-176-78.95-176-176a174.55 174.55 0 0 1 53.87-126.72 14.15 14.15 0 1 1 19.64 20.37A146.53 146.53 0 0 0 108.3 256c0 81.44 66.26 147.7 147.7 147.7S403.7 337.44 403.7 256c0-76.67-58.72-139.88-133.55-147v55a14.15 14.15 0 1 1-28.3 0V94.15A14.15 14.15 0 0 1 256 80c97.05 0 176 79 176 176s-78.95 176-176 176z\"},\"child\":[]}]})(props);\n};\nexport function IoTodayOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"rect\",\"attr\":{\"width\":\"416\",\"height\":\"384\",\"x\":\"48\",\"y\":\"80\",\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"rx\":\"48\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M128 48v32m256-32v32\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"96\",\"height\":\"96\",\"x\":\"112\",\"y\":\"224\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"rx\":\"13\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M464 160H48\"},\"child\":[]}]})(props);\n};\nexport function IoTodaySharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M32 456a24 24 0 0 0 24 24h400a24 24 0 0 0 24-24V176H32zm80-238.86a9.14 9.14 0 0 1 9.14-9.14h109.72a9.14 9.14 0 0 1 9.14 9.14v109.72a9.14 9.14 0 0 1-9.14 9.14H121.14a9.14 9.14 0 0 1-9.14-9.14zM456 64h-55.92V32h-48v32H159.92V32h-48v32H56a23.8 23.8 0 0 0-24 23.77V144h448V87.77A23.8 23.8 0 0 0 456 64z\"},\"child\":[]}]})(props);\n};\nexport function IoToday (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M416 64h-16V48.45c0-8.61-6.62-16-15.23-16.43A16 16 0 0 0 368 48v16H144V48.45c0-8.61-6.62-16-15.23-16.43A16 16 0 0 0 112 48v16H96a64 64 0 0 0-64 64v12a4 4 0 0 0 4 4h440a4 4 0 0 0 4-4v-12a64 64 0 0 0-64-64zm61 112H35a3 3 0 0 0-3 3v237a64 64 0 0 0 64 64h320a64 64 0 0 0 64-64V179a3 3 0 0 0-3-3zM224 307.43A28.57 28.57 0 0 1 195.43 336h-70.86A28.57 28.57 0 0 1 96 307.43v-70.86A28.57 28.57 0 0 1 124.57 208h70.86A28.57 28.57 0 0 1 224 236.57z\"},\"child\":[]}]})(props);\n};\nexport function IoToggleOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"circle\",\"attr\":{\"cx\":\"368\",\"cy\":\"256\",\"r\":\"128\",\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"480\",\"height\":\"256\",\"x\":\"16\",\"y\":\"128\",\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"rx\":\"128\",\"ry\":\"128\"},\"child\":[]}]})(props);\n};\nexport function IoToggleSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M368 112H144a144 144 0 0 0 0 288h224a144 144 0 0 0 0-288zm0 230a86 86 0 1 1 86-86 85.88 85.88 0 0 1-86 86z\"},\"child\":[]}]})(props);\n};\nexport function IoToggle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M368 112H144C64.6 112 0 176.6 0 256s64.6 144 144 144h224c79.4 0 144-64.6 144-144s-64.6-144-144-144zm0 256a112 112 0 1 1 112-112 112.12 112.12 0 0 1-112 112z\"},\"child\":[]}]})(props);\n};\nexport function IoTrailSignOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M256 400v64m0-256v64m0-224v32m160 128H102.63a16 16 0 0 1-11.32-4.69L32 144l59.31-59.31A16 16 0 0 1 102.63 80H416a16 16 0 0 1 16 16v96a16 16 0 0 1-16 16zM96 400h313.37a16 16 0 0 0 11.32-4.69L480 336l-59.31-59.31a16 16 0 0 0-11.32-4.69H96a16 16 0 0 0-16 16v96a16 16 0 0 0 16 16z\"},\"child\":[]}]})(props);\n};\nexport function IoTrailSignSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m502.63 336-80-80H278v-32h170V64H278V32h-44v32H89.37l-80 80 80 80H234v32H64v160h170v64h44v-64h144.63z\"},\"child\":[]}]})(props);\n};\nexport function IoTrailSign (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M491.31 324.69 432 265.37a31.8 31.8 0 0 0-22.63-9.37H272v-32h144a32 32 0 0 0 32-32V96a32 32 0 0 0-32-32H272V48a16 16 0 0 0-32 0v16H102.63A31.8 31.8 0 0 0 80 73.37l-59.31 59.32a16 16 0 0 0 0 22.62L80 214.63a31.8 31.8 0 0 0 22.63 9.37H240v32H96a32 32 0 0 0-32 32v96a32 32 0 0 0 32 32h144v48a16 16 0 0 0 32 0v-48h137.37a31.8 31.8 0 0 0 22.63-9.37l59.31-59.32a16 16 0 0 0 0-22.62z\"},\"child\":[]}]})(props);\n};\nexport function IoTrainOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M344 48h-24a16 16 0 0 0-16-16h-96a16 16 0 0 0-16 16h-24a56.16 56.16 0 0 0-56 56v247c0 35.3 144 65 144 65s144-29.7 144-65V104a56 56 0 0 0-56-56zm-88 304a48 48 0 1 1 48-48 48 48 0 0 1-48 48zm96-160a16 16 0 0 1-16 16H176a16 16 0 0 1-16-16v-64a16 16 0 0 1 16-16h160a16 16 0 0 1 16 16zM144 464h224m-32-32 48 48m-208-48-48 48\"},\"child\":[]}]})(props);\n};\nexport function IoTrainSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M384 32h-64a16 16 0 0 0-16-16h-96a16 16 0 0 0-16 16h-64c-16 0-32 16-32 32v288c0 23.92 160 80 160 80s160-56.74 160-80V64c0-16-16-32-32-32zM256 352a48 48 0 1 1 48-48 48 48 0 0 1-48 48zm112-152a8 8 0 0 1-8 8H152a8 8 0 0 1-8-8v-80a8 8 0 0 1 8-8h208a8 8 0 0 1 8 8z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m314 432 15.32 16H182.58L198 432l-32-13-76.62 77h45.2l16-16h210.74l16 16h45.3l-76.36-77.75L314 432z\"},\"child\":[]}]})(props);\n};\nexport function IoTrain (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"ellipse\",\"attr\":{\"cx\":\"256\",\"cy\":\"304\",\"rx\":\"32.05\",\"ry\":\"31.94\",\"transform\":\"rotate(-45 256.001 304)\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M352 32h-15a10 10 0 0 1-7.87-3.78A31.94 31.94 0 0 0 304 16h-96a32 32 0 0 0-26.11 13.52A6 6 0 0 1 177 32h-17c-36.81 0-64 28.84-64 64v255c0 23.27 25.6 42.06 83 60.94a753 753 0 0 0 73.77 19.73 16 16 0 0 0 6.46 0A753 753 0 0 0 333 411.94c57.4-18.88 83-37.67 83-60.94V96a64 64 0 0 0-64-64zm-168 96h144a8 8 0 0 1 8 8v48a8 8 0 0 1-8 8H184a8 8 0 0 1-8-8v-48a8 8 0 0 1 8-8zm76.18 239.87a64 64 0 1 1 59.69-59.69 64.07 64.07 0 0 1-59.69 59.69z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M395.31 468.69 347.63 421c-6.09-6.1-16-6.66-22.38-.86a16 16 0 0 0-.56 23.16l4.68 4.69H182.63l4.36-4.37c6.1-6.09 6.66-16 .86-22.38a16 16 0 0 0-23.16-.56l-48 48a16 16 0 1 0 22.62 22.62l11.32-11.3h210.74l11.32 11.31a16 16 0 0 0 22.62-22.62z\"},\"child\":[]}]})(props);\n};\nexport function IoTransgenderOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"256\",\"r\":\"128\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"m448 352-96 96M176 80l-95.98 95.98M464 128V48h-80M48 128V48h80m336 0L346.5 165.5M48 48l117.49 117.49M464 464 346.65 346.37\"},\"child\":[]}]})(props);\n};\nexport function IoTransgenderSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m480 448.94-48.94-49.08L464 366.92l-31.1-31.11-32.9 32.9-23.55-23.61a149.64 149.64 0 0 0-.1-178.45l59.55-59.56V144h44V32h-112v44h36.87l-59.55 59.55a149.65 149.65 0 0 0-178.59 0l-7.55-7.55 33-33L161 63.88l-33 33L107.09 76H144V32H32v112h44v-36.91L96.87 128l-33 33L95 192.05l33-33 7.56 7.57A149.18 149.18 0 0 0 106 255.94c0 82.69 67.27 150 150 150a149.12 149.12 0 0 0 89.44-29.67l23.51 23.58-33.14 33.05 31.11 31.1 33-33 48.9 49zm-330-193a106 106 0 1 1 106 106 106.09 106.09 0 0 1-106-106z\"},\"child\":[]}]})(props);\n};\nexport function IoTransgender (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M458 32h-68a22 22 0 0 0 0 44h14.89l-59.57 59.57a149.69 149.69 0 0 0-178.64 0l-7.57-7.57 26.45-26.44a22 22 0 0 0-31.12-31.12L128 96.89 107.11 76H122a22 22 0 0 0 0-44H54a22 22 0 0 0-22 22v68a22 22 0 0 0 44 0v-14.89L96.89 128l-26.42 26.42a22 22 0 1 0 31.11 31.11L128 159.11l7.57 7.57A149.19 149.19 0 0 0 106 256c0 82.71 67.29 150 150 150a149.2 149.2 0 0 0 89.46-29.67L369 399.9l-26.54 26.54a22 22 0 0 0 31.12 31.12l26.49-26.5 42.37 42.48a22 22 0 0 0 31.16-31.08L431.17 400l26.39-26.39a22 22 0 0 0-31.12-31.12l-26.35 26.35-23.55-23.62a149.68 149.68 0 0 0-.11-178.49L436 107.11V122a22 22 0 0 0 44 0V54a22 22 0 0 0-22-22zM150 256a106 106 0 1 1 106 106 106.12 106.12 0 0 1-106-106z\"},\"child\":[]}]})(props);\n};\nexport function IoTrashBinOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"m432 144-28.67 275.74A32 32 0 0 1 371.55 448H140.46a32 32 0 0 1-31.78-28.26L80 144\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"448\",\"height\":\"80\",\"x\":\"32\",\"y\":\"64\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"rx\":\"16\",\"ry\":\"16\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M312 240 200 352m112 0L200 240\"},\"child\":[]}]})(props);\n};\nexport function IoTrashBinSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"d\":\"M337.46 240 312 214.54l-56 56-56-56L174.54 240l56 56-56 56L200 377.46l56-56 56 56L337.46 352l-56-56 56-56z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"d\":\"M337.46 240 312 214.54l-56 56-56-56L174.54 240l56 56-56 56L200 377.46l56-56 56 56L337.46 352l-56-56 56-56z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m64 160 29.74 282.51A24 24 0 0 0 117.61 464h276.78a24 24 0 0 0 23.87-21.49L448 160zm248 217.46-56-56-56 56L174.54 352l56-56-56-56L200 214.54l56 56 56-56L337.46 240l-56 56 56 56z\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"448\",\"height\":\"80\",\"x\":\"32\",\"y\":\"48\",\"rx\":\"12\",\"ry\":\"12\"},\"child\":[]}]})(props);\n};\nexport function IoTrashBin (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"rect\",\"attr\":{\"width\":\"448\",\"height\":\"80\",\"x\":\"32\",\"y\":\"48\",\"rx\":\"32\",\"ry\":\"32\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M74.45 160a8 8 0 0 0-8 8.83l26.31 252.56a1.5 1.5 0 0 0 0 .22A48 48 0 0 0 140.45 464h231.09a48 48 0 0 0 47.67-42.39v-.21l26.27-252.57a8 8 0 0 0-8-8.83zm248.86 180.69a16 16 0 1 1-22.63 22.62L256 318.63l-44.69 44.68a16 16 0 0 1-22.63-22.62L233.37 296l-44.69-44.69a16 16 0 0 1 22.63-22.62L256 273.37l44.68-44.68a16 16 0 0 1 22.63 22.62L278.62 296z\"},\"child\":[]}]})(props);\n};\nexport function IoTrashOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"m112 112 20 320c.95 18.49 14.4 32 32 32h184c17.67 0 30.87-13.51 32-32l20-320\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M80 112h352\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M192 112V72h0a23.93 23.93 0 0 1 24-24h80a23.93 23.93 0 0 1 24 24h0v40m-64 64v224m-72-224 8 224m136-224-8 224\"},\"child\":[]}]})(props);\n};\nexport function IoTrashSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"d\":\"M296 64h-80a7.91 7.91 0 0 0-8 8v24h96V72a7.91 7.91 0 0 0-8-8z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"d\":\"M292 64h-72a4 4 0 0 0-4 4v28h80V68a4 4 0 0 0-4-4z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M447.55 96H336V48a16 16 0 0 0-16-16H192a16 16 0 0 0-16 16v48H64.45L64 136h33l20.09 314A32 32 0 0 0 149 480h214a32 32 0 0 0 31.93-29.95L415 136h33zM176 416l-9-256h33l9 256zm96 0h-32V160h32zm24-320h-80V68a4 4 0 0 1 4-4h72a4 4 0 0 1 4 4zm40 320h-33l9-256h33z\"},\"child\":[]}]})(props);\n};\nexport function IoTrash (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"d\":\"M296 64h-80a7.91 7.91 0 0 0-8 8v24h96V72a7.91 7.91 0 0 0-8-8z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M432 96h-96V72a40 40 0 0 0-40-40h-80a40 40 0 0 0-40 40v24H80a16 16 0 0 0 0 32h17l19 304.92c1.42 26.85 22 47.08 48 47.08h184c26.13 0 46.3-19.78 48-47l19-305h17a16 16 0 0 0 0-32zM192.57 416H192a16 16 0 0 1-16-15.43l-8-224a16 16 0 1 1 32-1.14l8 224A16 16 0 0 1 192.57 416zM272 400a16 16 0 0 1-32 0V176a16 16 0 0 1 32 0zm32-304h-96V72a7.91 7.91 0 0 1 8-8h80a7.91 7.91 0 0 1 8 8zm32 304.57A16 16 0 0 1 320 416h-.58A16 16 0 0 1 304 399.43l8-224a16 16 0 1 1 32 1.14z\"},\"child\":[]}]})(props);\n};\nexport function IoTrendingDownOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M352 368h112V256\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"m48 144 121.37 121.37a32 32 0 0 0 45.26 0l50.74-50.74a32 32 0 0 1 45.26 0L448 352\"},\"child\":[]}]})(props);\n};\nexport function IoTrendingDownSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"square\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M352 368h112V256\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"square\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"m48 144 144 144 96-96 160 160\"},\"child\":[]}]})(props);\n};\nexport function IoTrendingDown (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M352 368h112V256\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"m48 144 121.37 121.37a32 32 0 0 0 45.26 0l50.74-50.74a32 32 0 0 1 45.26 0L448 352\"},\"child\":[]}]})(props);\n};\nexport function IoTrendingUpOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M352 144h112v112\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"m48 368 121.37-121.37a32 32 0 0 1 45.26 0l50.74 50.74a32 32 0 0 0 45.26 0L448 160\"},\"child\":[]}]})(props);\n};\nexport function IoTrendingUpSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"square\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M352 144h112v112\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"square\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"m48 368 144-144 96 96 160-160\"},\"child\":[]}]})(props);\n};\nexport function IoTrendingUp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M352 144h112v112\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"m48 368 121.37-121.37a32 32 0 0 1 45.26 0l50.74 50.74a32 32 0 0 0 45.26 0L448 160\"},\"child\":[]}]})(props);\n};\nexport function IoTriangleOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M48 448 256 64l208 384H48z\"},\"child\":[]}]})(props);\n};\nexport function IoTriangleSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 32 20 464h472L256 32z\"},\"child\":[]}]})(props);\n};\nexport function IoTriangle (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M464 464H48a16 16 0 0 1-14.07-23.62l208-384a16 16 0 0 1 28.14 0l208 384A16 16 0 0 1 464 464z\"},\"child\":[]}]})(props);\n};\nexport function IoTrophyOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M176 464h160m-80 0V336m128-112c0-50.64-.08-134.63-.12-160a16 16 0 0 0-16-16l-223.79.26a16 16 0 0 0-16 15.95c0 30.58-.13 129.17-.13 159.79 0 64.28 83 112 128 112S384 288.28 384 224z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M128 96H48v16c0 55.22 33.55 112 80 112M384 96h80v16c0 55.22-33.55 112-80 112\"},\"child\":[]}]})(props);\n};\nexport function IoTrophySharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M399.9 80V32H112v48H32v38c0 32 9.5 62.79 26.76 86.61 13.33 18.4 34.17 31.1 52.91 37.21 5.44 29.29 20.2 57.13 50.19 79.83 22 16.66 48.45 28.87 72.14 33.86V436h-74v44h192v-44h-74v-80.49c23.69-5 50.13-17.2 72.14-33.86 30-22.7 44.75-50.54 50.19-79.83 18.74-6.11 39.58-18.81 52.91-37.21C470.5 180.79 480 150 480 118V80zM94.4 178.8c-10.68-14.68-17.17-34.4-18.24-54.8H112v67.37c-3.94-1.14-12.92-6.12-17.6-12.57zm323.2 0c-4.6 6.61-11.6 12.58-17.6 12.58 0-22.4 0-46.29-.05-67.38h35.9c-1.08 20.4-7.85 39.9-18.25 54.8z\"},\"child\":[]}]})(props);\n};\nexport function IoTrophy (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M464 80h-60.1a4 4 0 0 1-4-4V63.92a32 32 0 0 0-32-31.92l-223.79.26a32 32 0 0 0-31.94 31.93V76a4 4 0 0 1-4 4H48a16 16 0 0 0-16 16v16c0 54.53 30 112.45 76.52 125.35a7.82 7.82 0 0 1 5.55 5.9c5.77 26.89 23.52 52.5 51.41 73.61 20.91 15.83 45.85 27.5 68.27 32.48a8 8 0 0 1 6.25 7.8V444a4 4 0 0 1-4 4h-59.55c-8.61 0-16 6.62-16.43 15.23A16 16 0 0 0 176 480h159.55c8.61 0 16-6.62 16.43-15.23A16 16 0 0 0 336 448h-60a4 4 0 0 1-4-4v-86.86a8 8 0 0 1 6.25-7.8c22.42-5 47.36-16.65 68.27-32.48 27.89-21.11 45.64-46.72 51.41-73.61a7.82 7.82 0 0 1 5.55-5.9C450 224.45 480 166.53 480 112V96a16 16 0 0 0-16-16zM112 198.22a4 4 0 0 1-6 3.45c-10.26-6.11-17.75-15.37-22.14-21.89-11.91-17.69-19-40.67-19.79-63.63a4 4 0 0 1 4-4.15h40a4 4 0 0 1 4 4c-.02 27.45-.07 58.87-.07 82.22zm316.13-18.44c-4.39 6.52-11.87 15.78-22.13 21.89a4 4 0 0 1-6-3.46c0-26.51 0-56.63-.05-82.21a4 4 0 0 1 4-4h40a4 4 0 0 1 4 4.15c-.79 22.96-7.9 45.94-19.81 63.63z\"},\"child\":[]}]})(props);\n};\nexport function IoTvOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"rect\",\"attr\":{\"width\":\"448\",\"height\":\"272\",\"x\":\"32\",\"y\":\"96\",\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"rx\":\"32.14\",\"ry\":\"32.14\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M128 416h256\"},\"child\":[]}]})(props);\n};\nexport function IoTvSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M488 384H24a8 8 0 0 1-8-8V88a8 8 0 0 1 8-8h464a8 8 0 0 1 8 8v288a8 8 0 0 1-8 8z\"},\"child\":[]},{\"tag\":\"rect\",\"attr\":{\"width\":\"288\",\"height\":\"32\",\"x\":\"112\",\"y\":\"400\",\"rx\":\"4\",\"ry\":\"4\"},\"child\":[]}]})(props);\n};\nexport function IoTv (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M447.86 384H64.14A48.2 48.2 0 0 1 16 335.86V128.14A48.2 48.2 0 0 1 64.14 80h383.72A48.2 48.2 0 0 1 496 128.14v207.72A48.2 48.2 0 0 1 447.86 384z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M128 416h256\"},\"child\":[]}]})(props);\n};\nexport function IoUmbrellaOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M256 272v160a32 32 0 0 1-32 32h0a32 32 0 0 1-32-32m272-160c0-114.88-93.12-208-208-208S48 157.12 48 272h0a67.88 67.88 0 0 1 96 0h0a78.28 78.28 0 0 1 102.31-7.27L256 272l9.69-7.27A78.28 78.28 0 0 1 368 272h0a67.88 67.88 0 0 1 96 0zM256 64V48\"},\"child\":[]}]})(props);\n};\nexport function IoUmbrellaSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m128.93 280-.26-.3c-.9-.74-1.83-1.43-2.77-2.1zm254.15 0 2.62-2.12c-.79.58-1.57 1.17-2.34 1.79z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M463.14 186.44A224.55 224.55 0 0 0 272 48.57V32h-32v16.57A223.58 223.58 0 0 0 32 272v22.52l12.25-11.21a62.63 62.63 0 0 1 81.43-5.88l.22.17c.94.67 1.87 1.36 2.77 2.1q2.09 1.69 4 3.61L144 294.63l11.31-11.32a62.59 62.59 0 0 1 81.4-5.78L240 280v152a16 16 0 0 1-32 0v-16h-32v16a48 48 0 0 0 96 0V280l3.29-2.47a62.59 62.59 0 0 1 81.4 5.78L368 294.63l11.31-11.32q1.95-1.94 4.05-3.64c.77-.62 1.55-1.21 2.34-1.79l.26-.21c24.63-18.47 60-16.13 81.81 5.64l12.23 11.2V272a223.62 223.62 0 0 0-16.86-85.56z\"},\"child\":[]}]})(props);\n};\nexport function IoUmbrella (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M414.39 113.61a222.26 222.26 0 0 0-136.33-64.54 8.09 8.09 0 0 1-6.88-5.62 15.79 15.79 0 0 0-30.36 0 8.09 8.09 0 0 1-6.88 5.62A224 224 0 0 0 32 271.52a16.41 16.41 0 0 0 7.24 13.87 16 16 0 0 0 20.07-2.08 51.89 51.89 0 0 1 73.31-.06 15.94 15.94 0 0 0 22.6.15 62.59 62.59 0 0 1 81.49-5.87 8.24 8.24 0 0 1 3.29 6.59v147.42c0 8.6-6.6 16-15.19 16.44A16 16 0 0 1 208 432a16 16 0 0 0-16.29-16c-9 .16-15.9 8.11-15.7 17.1a48.06 48.06 0 0 0 47.37 46.9c26.88.34 48.62-21.93 48.62-48.81V284.12a8.24 8.24 0 0 1 3.29-6.59 62.59 62.59 0 0 1 81.4 5.78 16 16 0 0 0 22.62 0 51.91 51.91 0 0 1 73.38 0 16 16 0 0 0 19.54 2.41 16.4 16.4 0 0 0 7.77-14.21 222.54 222.54 0 0 0-65.61-157.9z\"},\"child\":[]}]})(props);\n};\nexport function IoUnlinkOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"36\",\"d\":\"M208 352h-64a96 96 0 0 1 0-192h64m96 0h64a96 96 0 0 1 0 192h-64\"},\"child\":[]}]})(props);\n};\nexport function IoUnlinkSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"square\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"48\",\"d\":\"M200.66 352H144a96 96 0 0 1 0-192h55.41m113.18 0H368a96 96 0 0 1 0 192h-56.66\"},\"child\":[]}]})(props);\n};\nexport function IoUnlink (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"48\",\"d\":\"M200.66 352H144a96 96 0 0 1 0-192h55.41m113.18 0H368a96 96 0 0 1 0 192h-56.66\"},\"child\":[]}]})(props);\n};\nexport function IoVideocamOffOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M374.79 308.78 457.5 367a16 16 0 0 0 22.5-14.62V159.62A16 16 0 0 0 457.5 145l-82.71 58.22A16 16 0 0 0 368 216.3v79.4a16 16 0 0 0 6.79 13.08z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M50.19 140.57A51.94 51.94 0 0 0 32 180v152a52.15 52.15 0 0 0 52 52h184a51.6 51.6 0 0 0 22-4.9M208 128h60.48A51.68 51.68 0 0 1 320 179.52V248m96 168L80 80\"},\"child\":[]}]})(props);\n};\nexport function IoVideocamOffSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m57.376 79.998 22.627-22.627 358.63 358.63-22.627 22.628zM32 112a16 16 0 0 0-16 16v256a16 16 0 0 0 16 16h288a15.89 15.89 0 0 0 9.34-3l-285-285zm304 96v-80a16 16 0 0 0-16-16H179.63l245.44 245.44L496 400V112z\"},\"child\":[]}]})(props);\n};\nexport function IoVideocamOff (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M336 179.52A67.52 67.52 0 0 0 268.48 112h-79.2a4 4 0 0 0-2.82 6.83l142.71 142.71a4 4 0 0 0 6.83-2.82zM16 180v152a68 68 0 0 0 68 68h184a67.66 67.66 0 0 0 42.84-15.24 4 4 0 0 0 .33-6L54.41 122a4 4 0 0 0-4.87-.62A68 68 0 0 0 16 180zm448 204.39a32 32 0 0 1-13-2.77 15.77 15.77 0 0 1-2.71-1.54l-82.71-58.22A32 32 0 0 1 352 295.7v-79.4a32 32 0 0 1 13.58-26.16l82.71-58.22a15.77 15.77 0 0 1 2.71-1.54 32 32 0 0 1 45 29.24v192.76a32 32 0 0 1-32 32z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M416 416 80 80\"},\"child\":[]}]})(props);\n};\nexport function IoVideocamOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M374.79 308.78 457.5 367a16 16 0 0 0 22.5-14.62V159.62A16 16 0 0 0 457.5 145l-82.71 58.22A16 16 0 0 0 368 216.3v79.4a16 16 0 0 0 6.79 13.08z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M268 384H84a52.15 52.15 0 0 1-52-52V180a52.15 52.15 0 0 1 52-52h184.48A51.68 51.68 0 0 1 320 179.52V332a52.15 52.15 0 0 1-52 52z\"},\"child\":[]}]})(props);\n};\nexport function IoVideocamSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M336 208v-80a16 16 0 0 0-16-16H32a16 16 0 0 0-16 16v256a16 16 0 0 0 16 16h288a16 16 0 0 0 16-16v-80l160 96V112z\"},\"child\":[]}]})(props);\n};\nexport function IoVideocam (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M464 384.39a32 32 0 0 1-13-2.77 15.77 15.77 0 0 1-2.71-1.54l-82.71-58.22A32 32 0 0 1 352 295.7v-79.4a32 32 0 0 1 13.58-26.16l82.71-58.22a15.77 15.77 0 0 1 2.71-1.54 32 32 0 0 1 45 29.24v192.76a32 32 0 0 1-32 32zM268 400H84a68.07 68.07 0 0 1-68-68V180a68.07 68.07 0 0 1 68-68h184.48A67.6 67.6 0 0 1 336 179.52V332a68.07 68.07 0 0 1-68 68z\"},\"child\":[]}]})(props);\n};\nexport function IoVolumeHighOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M126 192H56a8 8 0 0 0-8 8v112a8 8 0 0 0 8 8h69.65a15.93 15.93 0 0 1 10.14 3.54l91.47 74.89A8 8 0 0 0 240 392V120a8 8 0 0 0-12.74-6.43l-91.47 74.89A15 15 0 0 1 126 192zm194 128c9.74-19.38 16-40.84 16-64 0-23.48-6-44.42-16-64m48 176c19.48-33.92 32-64.06 32-112s-12-77.74-32-112m48 272c30-46 48-91.43 48-160s-18-113-48-160\"},\"child\":[]}]})(props);\n};\nexport function IoVolumeHighSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"square\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M320 320c9.74-19.38 16-40.84 16-64 0-23.48-6-44.42-16-64m48 176c19.48-33.92 32-64.06 32-112s-12-77.74-32-112m48 272c30-46 48-91.43 48-160s-18-113-48-160\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M125.65 176.1H32v159.8h93.65L256 440V72L125.65 176.1z\"},\"child\":[]}]})(props);\n};\nexport function IoVolumeHigh (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M232 416a23.88 23.88 0 0 1-14.2-4.68 8.27 8.27 0 0 1-.66-.51L125.76 336H56a24 24 0 0 1-24-24V200a24 24 0 0 1 24-24h69.75l91.37-74.81a8.27 8.27 0 0 1 .66-.51A24 24 0 0 1 256 120v272a24 24 0 0 1-24 24zm-106.18-80zm-.27-159.86zM320 336a16 16 0 0 1-14.29-23.19c9.49-18.87 14.3-38 14.3-56.81 0-19.38-4.66-37.94-14.25-56.73a16 16 0 0 1 28.5-14.54C346.19 208.12 352 231.44 352 256c0 23.86-6 47.81-17.7 71.19A16 16 0 0 1 320 336z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M368 384a16 16 0 0 1-13.86-24C373.05 327.09 384 299.51 384 256c0-44.17-10.93-71.56-29.82-103.94a16 16 0 0 1 27.64-16.12C402.92 172.11 416 204.81 416 256c0 50.43-13.06 83.29-34.13 120a16 16 0 0 1-13.87 8z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M416 432a16 16 0 0 1-13.39-24.74C429.85 365.47 448 323.76 448 256c0-66.5-18.18-108.62-45.49-151.39a16 16 0 1 1 27-17.22C459.81 134.89 480 181.74 480 256c0 64.75-14.66 113.63-50.6 168.74A16 16 0 0 1 416 432z\"},\"child\":[]}]})(props);\n};\nexport function IoVolumeLowOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M189.65 192H120a8 8 0 0 0-8 8v112a8 8 0 0 0 8 8h69.65a16 16 0 0 1 10.14 3.63l91.47 75a8 8 0 0 0 12.74-6.46V119.83a8 8 0 0 0-12.74-6.44l-91.47 75a16 16 0 0 1-10.14 3.61zM384 320c9.74-19.41 16-40.81 16-64 0-23.51-6-44.4-16-64\"},\"child\":[]}]})(props);\n};\nexport function IoVolumeLowSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"m391.12 341.48-28.6-14.36 7.18-14.3c9.49-18.9 14.3-38 14.3-56.82 0-19.36-4.66-37.92-14.25-56.73L362.48 185 391 170.48l7.26 14.25C410.2 208.16 416 231.47 416 256c0 23.83-6 47.78-17.7 71.18zM189.65 176.1H96v159.8h93.65L320 440V72L189.65 176.1z\"},\"child\":[]}]})(props);\n};\nexport function IoVolumeLow (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M296 416.19a23.92 23.92 0 0 1-14.21-4.69l-.66-.51-91.46-75H120a24 24 0 0 1-24-24V200a24 24 0 0 1 24-24h69.65l91.46-75 .66-.51A24 24 0 0 1 320 119.83v272.34a24 24 0 0 1-24 24zM384 336a16 16 0 0 1-14.29-23.18c9.49-18.9 14.3-38 14.3-56.82 0-19.36-4.66-37.92-14.25-56.73a16 16 0 0 1 28.5-14.54C410.2 208.16 416 231.47 416 256c0 23.83-6 47.78-17.7 71.18A16 16 0 0 1 384 336z\"},\"child\":[]}]})(props);\n};\nexport function IoVolumeMediumOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M157.65 192H88a8 8 0 0 0-8 8v112a8 8 0 0 0 8 8h69.65a16 16 0 0 1 10.14 3.63l91.47 75a8 8 0 0 0 12.74-6.46V119.83a8 8 0 0 0-12.74-6.44l-91.47 75a16 16 0 0 1-10.14 3.61zM352 320c9.74-19.41 16-40.81 16-64 0-23.51-6-44.4-16-64m48 176c19.48-34 32-64 32-112s-12-77.7-32-112\"},\"child\":[]}]})(props);\n};\nexport function IoVolumeMediumSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M157.65 176.1H64v159.8h93.65L288 440V72L157.65 176.1z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"square\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M352 320c9.74-19.41 16-40.81 16-64 0-23.51-6-44.4-16-64m48 176c19.48-34 32-64 32-112s-12-77.7-32-112\"},\"child\":[]}]})(props);\n};\nexport function IoVolumeMedium (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M264 416.19a23.92 23.92 0 0 1-14.21-4.69l-.66-.51-91.46-75H88a24 24 0 0 1-24-24V200a24 24 0 0 1 24-24h69.65l91.46-75 .66-.51A24 24 0 0 1 288 119.83v272.34a24 24 0 0 1-24 24zM352 336a16 16 0 0 1-14.29-23.18c9.49-18.9 14.3-38 14.3-56.82 0-19.36-4.66-37.92-14.25-56.73a16 16 0 0 1 28.5-14.54C378.2 208.16 384 231.47 384 256c0 23.83-6 47.78-17.7 71.18A16 16 0 0 1 352 336z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M400 384a16 16 0 0 1-13.87-24C405 327.05 416 299.45 416 256c0-44.12-10.94-71.52-29.83-103.95A16 16 0 0 1 413.83 136C434.92 172.16 448 204.88 448 256c0 50.36-13.06 83.24-34.12 120a16 16 0 0 1-13.88 8z\"},\"child\":[]}]})(props);\n};\nexport function IoVolumeMuteOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M416 432 64 80\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M224 136.92v33.8a4 4 0 0 0 1.17 2.82l24 24a4 4 0 0 0 6.83-2.82v-74.15a24.53 24.53 0 0 0-12.67-21.72 23.91 23.91 0 0 0-25.55 1.83 8.27 8.27 0 0 0-.66.51l-31.94 26.15a4 4 0 0 0-.29 5.92l17.05 17.06a4 4 0 0 0 5.37.26zm0 238.16-78.07-63.92a32 32 0 0 0-20.28-7.16H64v-96h50.72a4 4 0 0 0 2.82-6.83l-24-24a4 4 0 0 0-2.82-1.17H56a24 24 0 0 0-24 24v112a24 24 0 0 0 24 24h69.76l91.36 74.8a8.27 8.27 0 0 0 .66.51 23.93 23.93 0 0 0 25.85 1.69A24.49 24.49 0 0 0 256 391.45v-50.17a4 4 0 0 0-1.17-2.82l-24-24a4 4 0 0 0-6.83 2.82zM125.82 336zM352 256c0-24.56-5.81-47.88-17.75-71.27a16 16 0 0 0-28.5 14.54C315.34 218.06 320 236.62 320 256q0 4-.31 8.13a8 8 0 0 0 2.32 6.25l19.66 19.67a4 4 0 0 0 6.75-2A146.89 146.89 0 0 0 352 256zm64 0c0-51.19-13.08-83.89-34.18-120.06a16 16 0 0 0-27.64 16.12C373.07 184.44 384 211.83 384 256c0 23.83-3.29 42.88-9.37 60.65a8 8 0 0 0 1.9 8.26l16.77 16.76a4 4 0 0 0 6.52-1.27C410.09 315.88 416 289.91 416 256z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M480 256c0-74.26-20.19-121.11-50.51-168.61a16 16 0 1 0-27 17.22C429.82 147.38 448 189.5 448 256c0 47.45-8.9 82.12-23.59 113a4 4 0 0 0 .77 4.55L443 391.39a4 4 0 0 0 6.4-1C470.88 348.22 480 307 480 256z\"},\"child\":[]}]})(props);\n};\nexport function IoVolumeMuteSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"square\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M416 432 64 80\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M352 256c0-24.56-5.81-47.88-17.75-71.27L327 170.47 298.48 185l7.27 14.25C315.34 218.06 320 236.62 320 256a112.91 112.91 0 0 1-.63 11.74l27.32 27.32A148.8 148.8 0 0 0 352 256zm64 0c0-51.19-13.08-83.89-34.18-120.06l-8.06-13.82-27.64 16.12 8.06 13.82C373.07 184.44 384 211.83 384 256c0 25.93-3.89 46.21-11 65.33l24.5 24.51C409.19 319.68 416 292.42 416 256z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M480 256c0-74.26-20.19-121.11-50.51-168.61l-8.61-13.49-27 17.22 8.61 13.49C429.82 147.38 448 189.5 448 256c0 48.76-9.4 84-24.82 115.55l23.7 23.7C470.16 351.39 480 309 480 256zM256 72l-73.6 58.78 73.6 73.59V72zM32 176.1v159.8h93.65L256 440V339.63L92.47 176.1H32z\"},\"child\":[]}]})(props);\n};\nexport function IoVolumeMute (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M416 432 64 80\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M243.33 98.86a23.89 23.89 0 0 0-25.55 1.82l-.66.51-28.52 23.35a8 8 0 0 0-.59 11.85l54.33 54.33a8 8 0 0 0 13.66-5.66v-64.49a24.51 24.51 0 0 0-12.67-21.71zm8 236.43L96.69 180.69A16 16 0 0 0 85.38 176H56a24 24 0 0 0-24 24v112a24 24 0 0 0 24 24h69.76l92 75.31a23.9 23.9 0 0 0 25.87 1.69A24.51 24.51 0 0 0 256 391.45v-44.86a16 16 0 0 0-4.67-11.3zM352 256c0-24.56-5.81-47.87-17.75-71.27a16 16 0 1 0-28.5 14.55C315.34 218.06 320 236.62 320 256q0 4-.31 8.13a8 8 0 0 0 2.32 6.25l14.36 14.36a8 8 0 0 0 13.55-4.31A146 146 0 0 0 352 256zm64 0c0-51.18-13.08-83.89-34.18-120.06a16 16 0 0 0-27.64 16.12C373.07 184.44 384 211.83 384 256c0 23.83-3.29 42.88-9.37 60.65a8 8 0 0 0 1.9 8.26L389 337.4a8 8 0 0 0 13.13-2.79C411 311.76 416 287.26 416 256z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M480 256c0-74.25-20.19-121.11-50.51-168.61a16 16 0 1 0-27 17.22C429.82 147.38 448 189.5 448 256c0 46.19-8.43 80.27-22.43 110.53a8 8 0 0 0 1.59 9l11.92 11.92a8 8 0 0 0 12.92-2.16C471.6 344.9 480 305 480 256z\"},\"child\":[]}]})(props);\n};\nexport function IoVolumeOffOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M237.65 192H168a8 8 0 0 0-8 8v112a8 8 0 0 0 8 8h69.65a16 16 0 0 1 10.14 3.63l91.47 75a8 8 0 0 0 12.74-6.46V119.83a8 8 0 0 0-12.74-6.44l-91.47 75a16 16 0 0 1-10.14 3.61z\"},\"child\":[]}]})(props);\n};\nexport function IoVolumeOffSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M237.65 176.1H144v159.8h93.65L368 440V72L237.65 176.1z\"},\"child\":[]}]})(props);\n};\nexport function IoVolumeOff (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M344 416a23.92 23.92 0 0 1-14.21-4.69c-.23-.16-.44-.33-.66-.51l-91.46-74.9H168a24 24 0 0 1-24-24V200.07a24 24 0 0 1 24-24h69.65l91.46-74.9c.22-.18.43-.35.66-.51A24 24 0 0 1 368 120v272a24 24 0 0 1-24 24z\"},\"child\":[]}]})(props);\n};\nexport function IoWalkOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"m314.21 482.32-56.77-114.74-44.89-57.39a72.82 72.82 0 0 1-10.13-37.05V144h15.67a40.22 40.22 0 0 1 40.23 40.22v183.36M127.9 293.05v-74.52S165.16 144 202.42 144M370.1 274.42 304 231M170.53 478.36 224 400\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"258.32\",\"cy\":\"69.48\",\"r\":\"37.26\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\"},\"child\":[]}]})(props);\n};\nexport function IoWalkSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"strokeLinecap\":\"square\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"m315.09 481.38-56.95-115.12-45-57.56a73.11 73.11 0 0 1-10.16-37.17V142h15.73A40.36 40.36 0 0 1 259 182.32v162.52\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"square\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M128.18 291.5v-74.77l64.95-65.1\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m376.35 295.73-83.95-56.38v-44.68l104.68 72.95-20.73 28.11zM175.13 498.58l-21.43-26.91 80.33-81.54 15.53 32.07-74.43 76.38z\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"259.02\",\"cy\":\"67.21\",\"r\":\"37.38\",\"strokeLinecap\":\"square\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"16\"},\"child\":[]}]})(props);\n};\nexport function IoWalk (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"m312.55 479.9-56.42-114-44.62-57a72.37 72.37 0 0 1-10.06-36.9V143.64H217a40 40 0 0 1 40 40v182.21\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M127.38 291.78v-74.07s37-74.07 74.07-74.07\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M368.09 291.78a18.49 18.49 0 0 1-10.26-3.11L297.7 250a21.18 21.18 0 0 1-9.7-17.79v-23.7a5.65 5.65 0 0 1 8.69-4.77l81.65 54.11a18.52 18.52 0 0 1-10.29 33.93zM171.91 493.47a18.5 18.5 0 0 1-14.83-7.41c-6.14-8.18-4-17.18 3.7-25.92l59.95-74.66a7.41 7.41 0 0 1 10.76 2.06c1.56 2.54 3.38 5.65 5.19 9.09 5.24 9.95 6 16.11-1.68 25.7-8 10-52 67.44-52 67.44-2.62 2.98-7.23 3.7-11.09 3.7z\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"257\",\"cy\":\"69.56\",\"r\":\"37.04\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"16\"},\"child\":[]}]})(props);\n};\nexport function IoWalletOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"rect\",\"attr\":{\"width\":\"416\",\"height\":\"288\",\"x\":\"48\",\"y\":\"144\",\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"rx\":\"48\",\"ry\":\"48\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M411.36 144v-30A50 50 0 0 0 352 64.9L88.64 109.85A50 50 0 0 0 48 159v49\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M368 320a32 32 0 1 1 32-32 32 32 0 0 1-32 32z\"},\"child\":[]}]})(props);\n};\nexport function IoWalletSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M47.5 104H432V51.52a16 16 0 0 0-19.14-15.69l-368 60.48a16 16 0 0 0-12 10.47A39.69 39.69 0 0 1 47.5 104zm416 24h-416a16 16 0 0 0-16 16v288a16 16 0 0 0 16 16h416a16 16 0 0 0 16-16V144a16 16 0 0 0-16-16zM368 320a32 32 0 1 1 32-32 32 32 0 0 1-32 32z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M31.33 259.5V116c0-12.33 5.72-18.48 15.42-20 35.2-5.53 108.58-8.5 108.58-8.5s-8.33 16-27.33 16V128c18.5 0 31.33 23.5 31.33 23.5L84.83 236z\"},\"child\":[]}]})(props);\n};\nexport function IoWallet (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M95.5 104h320a87.73 87.73 0 0 1 11.18.71 66 66 0 0 0-77.51-55.56L86 94.08h-.3a66 66 0 0 0-41.07 26.13A87.57 87.57 0 0 1 95.5 104zm320 24h-320a64.07 64.07 0 0 0-64 64v192a64.07 64.07 0 0 0 64 64h320a64.07 64.07 0 0 0 64-64V192a64.07 64.07 0 0 0-64-64zM368 320a32 32 0 1 1 32-32 32 32 0 0 1-32 32z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M32 259.5V160c0-21.67 12-58 53.65-65.87C121 87.5 156 87.5 156 87.5s23 16 4 16-18.5 24.5 0 24.5 0 23.5 0 23.5L85.5 236z\"},\"child\":[]}]})(props);\n};\nexport function IoWarningOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M85.57 446.25h340.86a32 32 0 0 0 28.17-47.17L284.18 82.58c-12.09-22.44-44.27-22.44-56.36 0L57.4 399.08a32 32 0 0 0 28.17 47.17z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"m250.26 195.39 5.74 122 5.73-121.95a5.74 5.74 0 0 0-5.79-6h0a5.74 5.74 0 0 0-5.68 5.95z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M256 397.25a20 20 0 1 1 20-20 20 20 0 0 1-20 20z\"},\"child\":[]}]})(props);\n};\nexport function IoWarningSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M479 447.77 268.43 56.64a8 8 0 0 0-14.09 0L43.73 447.77a8 8 0 0 0 7.05 11.79H472a8 8 0 0 0 7-11.79zm-197.62-36.29h-40v-40h40zm-4-63.92h-32l-6-160h44z\"},\"child\":[]}]})(props);\n};\nexport function IoWarning (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M449.07 399.08 278.64 82.58c-12.08-22.44-44.26-22.44-56.35 0L51.87 399.08A32 32 0 0 0 80 446.25h340.89a32 32 0 0 0 28.18-47.17zm-198.6-1.83a20 20 0 1 1 20-20 20 20 0 0 1-20 20zm21.72-201.15-5.74 122a16 16 0 0 1-32 0l-5.74-121.95a21.73 21.73 0 0 1 21.5-22.69h.21a21.74 21.74 0 0 1 21.73 22.7z\"},\"child\":[]}]})(props);\n};\nexport function IoWatchOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"rect\",\"attr\":{\"width\":\"288\",\"height\":\"288\",\"x\":\"112\",\"y\":\"112\",\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"rx\":\"64\",\"ry\":\"64\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M176 112V40a8 8 0 0 1 8-8h144a8 8 0 0 1 8 8v72m0 288v72a8 8 0 0 1-8 8H184a8 8 0 0 1-8-8v-72\"},\"child\":[]}]})(props);\n};\nexport function IoWatchSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"rect\",\"attr\":{\"width\":\"240\",\"height\":\"240\",\"x\":\"136\",\"y\":\"136\",\"rx\":\"8\",\"ry\":\"8\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M384 96h-48V16H176v80h-48a32 32 0 0 0-32 32v256a32 32 0 0 0 32 32h48v80h160v-80h48a32 32 0 0 0 32-32V128a32 32 0 0 0-32-32zm8 272a24 24 0 0 1-24 24H144a24 24 0 0 1-24-24V144a24 24 0 0 1 24-24h224a24 24 0 0 1 24 24z\"},\"child\":[]}]})(props);\n};\nexport function IoWatch (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"rect\",\"attr\":{\"width\":\"240\",\"height\":\"240\",\"x\":\"136\",\"y\":\"136\",\"rx\":\"56\",\"ry\":\"56\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M336 96V32a16 16 0 0 0-16-16H192a16 16 0 0 0-16 16v64a80.09 80.09 0 0 0-80 80v160a80.09 80.09 0 0 0 80 80v64a16 16 0 0 0 16 16h128a16 16 0 0 0 16-16v-64a80.09 80.09 0 0 0 80-80V176a80.09 80.09 0 0 0-80-80zm56 224a72.08 72.08 0 0 1-72 72H192a72.08 72.08 0 0 1-72-72V192a72.08 72.08 0 0 1 72-72h128a72.08 72.08 0 0 1 72 72z\"},\"child\":[]}]})(props);\n};\nexport function IoWaterOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M400 320c0 88.37-55.63 144-144 144s-144-55.63-144-144c0-94.83 103.23-222.85 134.89-259.88a12 12 0 0 1 18.23 0C296.77 97.15 400 225.17 400 320z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M344 328a72 72 0 0 1-72 72\"},\"child\":[]}]})(props);\n};\nexport function IoWaterSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M256 43.91s-144 158.3-144 270.3c0 88.36 55.64 144 144 144s144-55.64 144-144c0-112-144-270.3-144-270.3zm16 362.3v-24a60.07 60.07 0 0 0 60-60h24a84.09 84.09 0 0 1-84 84z\"},\"child\":[]}]})(props);\n};\nexport function IoWater (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M265.12 60.12a12 12 0 0 0-18.23 0C215.23 97.15 112 225.17 112 320c0 88.37 55.64 144 144 144s144-55.63 144-144c0-94.83-103.23-222.85-134.88-259.88zM272 412a12 12 0 0 1-11.34-16 11.89 11.89 0 0 1 11.41-8A60.06 60.06 0 0 0 332 328.07a11.89 11.89 0 0 1 8-11.41A12 12 0 0 1 356 328a84.09 84.09 0 0 1-84 84z\"},\"child\":[]}]})(props);\n};\nexport function IoWifiOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M332.41 310.59a115 115 0 0 0-152.8 0m213.85-61.05a201.26 201.26 0 0 0-274.92 0m329.18-67.43a288 288 0 0 0-383.44 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M256 416a32 32 0 1 1 32-32 32 32 0 0 1-32 32z\"},\"child\":[]}]})(props);\n};\nexport function IoWifiSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"square\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"42\",\"d\":\"M332.69 320a115 115 0 0 0-152.8 0m213.85-61a201.26 201.26 0 0 0-274.92 0M448 191.52a288 288 0 0 0-383.44 0\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M300.67 384 256 433l-44.34-49a56.73 56.73 0 0 1 88.92 0z\"},\"child\":[]}]})(props);\n};\nexport function IoWifi (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M346.65 304.3a136 136 0 0 0-180.71 0 21 21 0 1 0 27.91 31.38 94 94 0 0 1 124.89 0 21 21 0 0 0 27.91-31.4z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M256.28 183.7a221.47 221.47 0 0 0-151.8 59.92 21 21 0 1 0 28.68 30.67 180.28 180.28 0 0 1 246.24 0 21 21 0 1 0 28.68-30.67 221.47 221.47 0 0 0-151.8-59.92z\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M462 175.86a309 309 0 0 0-411.44 0 21 21 0 1 0 28 31.29 267 267 0 0 1 355.43 0 21 21 0 0 0 28-31.31z\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"256.28\",\"cy\":\"393.41\",\"r\":\"32\"},\"child\":[]}]})(props);\n};\nexport function IoWineOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M398.57 80H113.43v16S87.51 272 256 272 398.57 96 398.57 96zM256 272v160\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M352 432H160\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"M112 160h288\"},\"child\":[]}]})(props);\n};\nexport function IoWineSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M453 112V66.33H60.75V112l175.13 176v118H124.75v42H389v-42H277.88V288zm-336.65-3.67h281l-37.81 38H154.16z\"},\"child\":[]}]})(props);\n};\nexport function IoWine (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M414.56 94.92V80a16 16 0 0 0-16-16H113.44a16 16 0 0 0-16 16v14.92c-1.46 11.37-9.65 90.74 36.93 144.69 24.87 28.8 60.36 44.85 105.63 47.86V416h-80a16 16 0 0 0 0 32h192a16 16 0 0 0 0-32h-80V287.47c45.27-3 80.76-19.06 105.63-47.86 46.58-53.95 38.37-133.32 36.93-144.69zm-285.3 3.41a15.14 15.14 0 0 0 .18-2.33h253.12a15.14 15.14 0 0 0 .18 2.33 201.91 201.91 0 0 1 0 45.67H129.32a204.29 204.29 0 0 1-.06-45.67z\"},\"child\":[]}]})(props);\n};\nexport function IoWomanOutline (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M208 368v104a23.73 23.73 0 0 0 24 24h0a23.73 23.73 0 0 0 24-24\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\",\"d\":\"M256 368v104a23.73 23.73 0 0 0 24 24h0a23.73 23.73 0 0 0 24-24V368m-121-94a23.73 23.73 0 0 1-29.84 16.18h0a23.72 23.72 0 0 1-16.17-29.84l25-84.28A44.85 44.85 0 0 1 205 144h102a44.85 44.85 0 0 1 43 32.08l25 84.28a23.72 23.72 0 0 1-16.17 29.84h0a23.73 23.73 0 0 1-29.78-16.2\"},\"child\":[]},{\"tag\":\"circle\",\"attr\":{\"cx\":\"256\",\"cy\":\"56\",\"r\":\"40\",\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeMiterlimit\":\"10\",\"strokeWidth\":\"32\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"fill\":\"none\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"strokeWidth\":\"32\",\"d\":\"m208 192-48 160h192l-48-160\"},\"child\":[]}]})(props);\n};\nexport function IoWomanSharp (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"circle\",\"attr\":{\"cx\":\"255.75\",\"cy\":\"56\",\"r\":\"56\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"M310.28 191.4h.05l7.66-2.3 36.79 122.6 46-13.8-16.21-54.16c0-.12 0-.24-.07-.36l-16.84-56.12-4.71-15.74-.9-3H362l-2.51-8.45a44.84 44.84 0 0 0-43-32.08H195.24a44.84 44.84 0 0 0-43 32.08l-2.51 8.45h-.06l-.9 3-4.71 15.74-16.84 56.12c0 .12 0 .24-.07.36l-16.21 54.16 46 13.8 36.76-122.6 7.54 2.26L148.25 368h51.5v144h52V368h8v144h52V368h51.51z\"},\"child\":[]}]})(props);\n};\nexport function IoWoman (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"circle\",\"attr\":{\"cx\":\"255.75\",\"cy\":\"56\",\"r\":\"56\"},\"child\":[]},{\"tag\":\"path\",\"attr\":{\"d\":\"m394.63 277.9-10.33-34.41v-.11l-22.46-74.86h-.05l-2.51-8.45a44.87 44.87 0 0 0-43-32.08h-120a44.84 44.84 0 0 0-43 32.08l-2.51 8.45h-.06l-22.46 74.86v.11l-10.37 34.41c-3.12 10.39 2.3 21.66 12.57 25.14a20 20 0 0 0 25.6-13.18l25.58-85.25 2.17-7.23a8 8 0 0 1 15.53 2.62 7.78 7.78 0 0 1-.17 1.61L155.43 347.4a16 16 0 0 0 15.32 20.6h29v114.69c0 16.46 10.53 29.31 24 29.31s24-12.85 24-29.31V368h16v114.69c0 16.46 10.53 29.31 24 29.31s24-12.85 24-29.31V368h30a16 16 0 0 0 15.33-20.6l-43.74-145.81a7.52 7.52 0 0 1-.16-1.59 8 8 0 0 1 15.54-2.63l2.17 7.23 25.57 85.25A20 20 0 0 0 382.05 303c10.27-3.44 15.69-14.71 12.58-25.1z\"},\"child\":[]}]})(props);\n};\n","/**\n * @license\n *-------------------------------------------------------------------------------------------\n * Copyright © 2024 Progress Software Corporation. All rights reserved.\n * Licensed under commercial license. See LICENSE.md in the package root for more information\n *-------------------------------------------------------------------------------------------\n */\n\"use client\";\nimport * as i from \"react\";\nimport r from \"prop-types\";\nimport { DatePicker as a } from \"@progress/kendo-react-dateinputs\";\nconst t = class t extends i.Component {\n constructor() {\n super(...arguments), this.onChange = (e) => {\n this.props.onFilterChange.call(void 0, {\n nextFilter: { ...this.props.filter, value: e.value }\n });\n };\n }\n /**\n * @hidden\n */\n render() {\n const e = this.props.filter;\n return /* @__PURE__ */ i.createElement(\n a,\n {\n value: e.value || null,\n onChange: this.onChange,\n ariaLabel: this.props.ariaLabel,\n tabIndex: -1\n }\n );\n }\n};\nt.propTypes = {\n filter: r.object.isRequired,\n onFilterChange: r.func.isRequired,\n ariaLabel: r.string\n};\nlet s = t;\nexport {\n s as DateFilter\n};\n","/**\n * @license\n *-------------------------------------------------------------------------------------------\n * Copyright © 2024 Progress Software Corporation. All rights reserved.\n * Licensed under commercial license. See LICENSE.md in the package root for more information\n *-------------------------------------------------------------------------------------------\n */\n\"use client\";\nimport * as i from \"react\";\nimport a from \"prop-types\";\nimport { NumericTextBox as c } from \"@progress/kendo-react-inputs\";\nimport { provideLocalizationService as m, registerForLocalization as u } from \"@progress/kendo-react-intl\";\nimport { filterNumericFilterAriaLabel as n, messages as h } from \"../../messages/index.mjs\";\nconst t = class t extends i.Component {\n constructor() {\n super(...arguments), this.onChange = (e) => {\n this.props.onFilterChange.call(void 0, {\n nextFilter: { ...this.props.filter, value: e.value }\n });\n };\n }\n /**\n * @hidden\n */\n render() {\n const e = m(this), {\n min: s,\n max: l,\n filter: o,\n ariaLabel: p = e.toLanguageString(n, h[n])\n } = this.props;\n return /* @__PURE__ */ i.createElement(\n c,\n {\n value: typeof o.value == \"number\" ? o.value : null,\n onChange: this.onChange,\n ariaLabel: p,\n min: s,\n max: l,\n tabIndex: -1\n }\n );\n }\n};\nt.propTypes = {\n filter: a.object.isRequired,\n onFilterChange: a.func.isRequired\n};\nlet r = t;\nu(r);\nexport {\n r as NumericFilter\n};\n","/**\n * @license\n *-------------------------------------------------------------------------------------------\n * Copyright © 2024 Progress Software Corporation. All rights reserved.\n * Licensed under commercial license. See LICENSE.md in the package root for more information\n *-------------------------------------------------------------------------------------------\n */\n\"use client\";\nimport * as n from \"react\";\nimport e from \"prop-types\";\nimport { DropDownList as d } from \"@progress/kendo-react-dropdowns\";\nimport { provideLocalizationService as f, registerForLocalization as h } from \"@progress/kendo-react-intl\";\nimport { filterEnumFilterDropdownAriaLabel as s, messages as l } from \"../../messages/index.mjs\";\nconst o = class o extends n.Component {\n constructor() {\n super(...arguments), this.onChange = (a) => {\n this.props.onFilterChange.call(void 0, {\n nextFilter: { ...this.props.filter, value: a.value.value }\n });\n };\n }\n /**\n * @hidden\n */\n render() {\n const a = f(this), {\n filter: p,\n data: c = [],\n defaultItem: u,\n ariaLabel: g = a.toLanguageString(s, l[s])\n } = this.props, i = c.map((t) => ({\n ...t,\n text: a.toLanguageString(t.text, l[t.text] || t.text)\n }));\n return /* @__PURE__ */ n.createElement(\n d,\n {\n value: i.find((t) => t.value === p.value) || null,\n onChange: this.onChange,\n defaultItem: u,\n data: i,\n textField: \"text\",\n ariaLabel: g,\n tabIndex: -1\n }\n );\n }\n};\no.propTypes = {\n filter: e.object.isRequired,\n onFilterChange: e.func.isRequired,\n data: e.arrayOf(e.shape({ text: e.string, value: e.any })),\n defaultItem: e.any,\n ariaLabel: e.string\n};\nlet r = o;\nh(r);\nexport {\n r as EnumFilter\n};\n","/**\n * @license\n *-------------------------------------------------------------------------------------------\n * Copyright © 2024 Progress Software Corporation. All rights reserved.\n * Licensed under commercial license. See LICENSE.md in the package root for more information\n *-------------------------------------------------------------------------------------------\n */\n\"use client\";\nimport * as r from \"react\";\nimport t from \"prop-types\";\nimport { EnumFilter as s } from \"./EnumFilter.mjs\";\nimport { filterIsTrue as i, filterIsFalse as p } from \"../../messages/index.mjs\";\nconst e = class e extends r.Component {\n constructor() {\n super(...arguments), this.data = [{ text: i, value: !0 }, { text: p, value: !1 }];\n }\n /**\n * @hidden\n */\n render() {\n return /* @__PURE__ */ r.createElement(\n s,\n {\n filter: this.props.filter,\n onFilterChange: this.props.onFilterChange,\n data: this.props.data || this.data,\n defaultItem: this.props.defaultItem,\n ariaLabel: this.props.ariaLabel\n }\n );\n }\n};\ne.propTypes = {\n filter: t.object.isRequired,\n onFilterChange: t.func.isRequired,\n data: t.arrayOf(t.shape({ text: t.string, value: t.any })),\n ariaLabel: t.string,\n defaultItem: t.any\n};\nlet a = e;\nexport {\n a as BooleanFilter\n};\n","/**\n * @license\n *-------------------------------------------------------------------------------------------\n * Copyright © 2024 Progress Software Corporation. All rights reserved.\n * Licensed under commercial license. See LICENSE.md in the package root for more information\n *-------------------------------------------------------------------------------------------\n */\n\"use client\";\nimport { filterContainsOperator as p, filterNotContainsOperator as n, filterEqOperator as e, filterNotEqOperator as r, filterStartsWithOperator as i, filterEndsWithOperator as s, filterIsNullOperator as o, filterIsNotNullOperator as a, filterIsEmptyOperator as l, filterIsNotEmptyOperator as x, filterGteOperator as O, filterGtOperator as f, filterLteOperator as u, filterLtOperator as c, filterAfterOrEqualOperator as q, filterAfterOperator as m, filterBeforeOperator as g, filterBeforeOrEqualOperator as d } from \"../messages/index.mjs\";\nconst y = [\n { text: p, operator: \"contains\" },\n { text: n, operator: \"doesnotcontain\" },\n { text: e, operator: \"eq\" },\n { text: r, operator: \"neq\" },\n { text: i, operator: \"startswith\" },\n { text: s, operator: \"endswith\" },\n { text: o, operator: \"isnull\" },\n { text: a, operator: \"isnotnull\" },\n { text: l, operator: \"isempty\" },\n { text: x, operator: \"isnotempty\" }\n], E = [\n { text: e, operator: \"eq\" },\n { text: r, operator: \"neq\" },\n { text: O, operator: \"gte\" },\n { text: f, operator: \"gt\" },\n { text: u, operator: \"lte\" },\n { text: c, operator: \"lt\" },\n { text: o, operator: \"isnull\" },\n { text: a, operator: \"isnotnull\" }\n], h = [\n { text: e, operator: \"eq\" },\n { text: r, operator: \"neq\" },\n { text: q, operator: \"gte\" },\n { text: m, operator: \"gt\" },\n { text: g, operator: \"lt\" },\n { text: d, operator: \"lte\" },\n { text: o, operator: \"isnull\" },\n { text: a, operator: \"isnotnull\" }\n], N = [\n { text: e, operator: \"eq\" },\n { text: r, operator: \"neq\" }\n];\nclass I {\n /**\n * An array containing the operators for the TextFilter component.\n *\n * The operators are:\n *\n * - { text: 'filter.containsOperator', operator: 'contains' }\n * - { text: 'filter.notContainsOperator', operator: 'doesnotcontain' }\n * - { text: 'filter.eqOperator', operator: 'eq' }\n * - { text: 'filter.notEqOperator', operator: 'neq' }\n * - { text: 'filter.startsWithOperator', operator: 'startswith' }\n * - { text: 'filter.endsWithOperator', operator: 'endswith' }\n * - { text: 'filter.isNullOperator', operator: 'isnull' }\n * - { text: 'filter.isNotNullOperator', operator: 'isnotnull' }\n * - { text: 'filter.isEmptyOperator', operator: 'isempty' }\n * - { text: 'filter.isNotEmptyOperator', operator: 'isnotempty' }\n */\n static get text() {\n return [...y];\n }\n /**\n * An array containing the operators for the NumericFilter component.\n *\n * The operators are:\n *\n * - { text: 'filter.eqOperator', operator: 'eq' }\n * - { text: 'filter.notEqOperator', operator: 'neq' }\n * - { text: 'filter.gteOperator', operator: 'gte' }\n * - { text: 'filter.gtOperator', operator: 'gt' }\n * - { text: 'filter.lteOperator', operator: 'lte' }\n * - { text: 'filter.ltOperator', operator: 'lt' }\n * - { text: 'filter.isNullOperator', operator: 'isnull' }\n * - { text: 'filter.isNotNullOperator', operator: 'isnotnull' }\n */\n static get numeric() {\n return [...E];\n }\n /**\n * An array containing the operators for the DateFilter component.\n *\n * The operators are:\n *\n * - { text: 'filter.eqOperator', operator: 'eq' }\n * - { text: 'filter.notEqOperator', operator: 'neq' }\n * - { text: 'filter.afterOrEqualOperator', operator: 'gte' }\n * - { text: 'filter.afterOperator', operator: 'gt' }\n * - { text: 'filter.beforeOperator', operator: 'lt' }\n * - { text: 'filter.beforeOrEqualOperator', operator: 'lte' }\n * - { text: 'filter.isNullOperator', operator: 'isnull' }\n * - { text: 'filter.isNotNullOperator', operator: 'isnotnull' }\n */\n static get date() {\n return [...h];\n }\n /**\n * An array containing the operators for the BooleanFilter component.\n *\n * The operators are:\n *\n * - { text: 'filter.eqOperator', operator: 'eq' }\n * - { text: 'filter.notEqOperator', operator: 'neq' }\n */\n static get boolean() {\n return [...N];\n }\n}\nconst b = (t) => t === \"contains\" || t === \"doesnotcontain\" || t === \"startswith\" || t === \"endswith\", A = (t) => t === \"isnull\" || t === \"isnotnull\" || t === \"isempty\" || t === \"isnotempty\";\nexport {\n I as Operators,\n b as stringOperator,\n A as unaryOperator\n};\n","import React from \"react\";\r\n\r\nexport default function SimpleValidationMessageView(props: { message: string }): React.ReactElement {\r\n return
{props.message}
;\r\n}\r\n","import * as ReactDOM from \"react-dom\";\r\nimport { CompositeFilterDescriptor, DataResult, State } from \"@progress/kendo-data-query\";\r\nimport { logError } from \"../LogHelper\";\r\nimport { useRef, useState, useEffect, ReactNode } from \"react\";\r\nimport SimpleValidationMessageView from \"../validation/SimpleValidationMessageView\";\r\nimport { getSessionCorrelation } from \"../../api/clientFactory\";\r\nimport * as Helper from \"./helper\";\r\n\r\ninterface IProps {\r\n url: string;\r\n dataState: State;\r\n additionalFilters?: CompositeFilterDescriptor | undefined; // for additional filter expressions, which are injected, that the user cannot control\r\n customFilterExpressions?: Array | undefined; // for custom expressions filter expressions\r\n additionalQueries?: string[] | undefined; // for additional odata query to add to the string (i.e. $expand). not great for $filter as the additional expressions may clash.\r\n onDataReceived: (data: DataResult) => void;\r\n mapDataRow: (dataRow: any) => any;\r\n showContentAsBusyElementId: string;\r\n changeToken?: any;\r\n authTokenProvider?: (() => Promise) | undefined;\r\n}\r\n\r\nexport interface ICustomFilterExpression {\r\n name: string;\r\n expression: (value: any, operator: any) => string | undefined;\r\n}\r\n\r\nexport default function ODataReader(props: IProps): JSX.Element {\r\n return (\r\n \r\n \r\n \r\n );\r\n}\r\n\r\nfunction ODataValidator(props: { dataState: State; onDataReceived: (data: DataResult) => void; children?: ReactNode }): JSX.Element {\r\n const [errorMessage, setErrorMessage] = useState(undefined);\r\n\r\n useEffect(() => {\r\n setErrorMessage(Helper.getDataStateFilterValidationMessages(props.dataState.filter));\r\n }, [props.dataState, props.dataState.filter]); // eslint-disable-line react-hooks/exhaustive-deps\r\n\r\n useEffect(() => {\r\n if (errorMessage) props.onDataReceived({ data: [], total: 0 });\r\n }, [errorMessage]); // eslint-disable-line react-hooks/exhaustive-deps\r\n\r\n return (\r\n <>\r\n {errorMessage && (\r\n
\r\n \r\n
\r\n )}\r\n {!errorMessage && props.children}\r\n \r\n );\r\n}\r\n\r\nfunction ODataLoaderInternal(props: IProps): JSX.Element {\r\n // the state supplies the filters, paging and sorting\r\n // provides de-bouncing of events, i.e.\r\n // - if a request is running another request will not be made until the the running request has completed\r\n // - when the request is completed it will check to verify if another request is needed\r\n\r\n const requestUrl = Helper.getUrl(props.url, props.dataState, props.additionalQueries, props.customFilterExpressions, props.additionalFilters, false);\r\n const lastSuccessfulQuery = useRef(\"\");\r\n const runningQuery = useRef(\"\");\r\n const isMounted = useRef(true);\r\n\r\n useEffect(() => {\r\n isMounted.current = true;\r\n return () => {\r\n isMounted.current = false;\r\n };\r\n });\r\n\r\n function fetchRequest(requestInit?: RequestInit): void {\r\n fetch(requestUrl, requestInit)\r\n .then((response) => {\r\n if (response.ok) return response.json();\r\n throw new Error();\r\n })\r\n .then((json) => {\r\n // mark as successful and clear the running query\r\n lastSuccessfulQuery.current = runningQuery.current;\r\n runningQuery.current = \"\";\r\n\r\n // if we've since unmounted then abandon the operation\r\n if (!isMounted.current) return;\r\n\r\n // request a new query if it doesn't match what the user has now asked for\r\n const requestedQuery = getChangeTracker(\r\n Helper.getUrl(props.url, props.dataState, props.additionalQueries, props.customFilterExpressions, props.additionalFilters, false),\r\n props.changeToken\r\n );\r\n if (requestedQuery !== lastSuccessfulQuery.current) {\r\n requestDataIfNeeded();\r\n return;\r\n }\r\n\r\n // apply the data\r\n const data: any[] = json.value;\r\n const total = json[\"@odata.count\"];\r\n log(`Completed: ${lastSuccessfulQuery.current} (${data.length} rows for ${total} total)`);\r\n props.onDataReceived({\r\n data: data.map((dr: any) => props.mapDataRow(dr)),\r\n total: total,\r\n });\r\n })\r\n .catch((e) => {\r\n // on failure, stop all queries until a change is requested\r\n // the user will be presented with an empty grid\r\n // we can expand on this later if needed\r\n lastSuccessfulQuery.current = runningQuery.current;\r\n runningQuery.current = \"\";\r\n props.onDataReceived({ data: [], total: 0 });\r\n logError(e); // <-- this will ensure we see the events in application insights\r\n });\r\n }\r\n\r\n function requestDataIfNeeded(): void {\r\n // skip the query if one is running or it's the same as one that has completed\r\n if (runningQuery.current || getChangeTracker(requestUrl, props.changeToken) === lastSuccessfulQuery.current) {\r\n return;\r\n }\r\n\r\n // initiate a fetch operation to load the data\r\n runningQuery.current = getChangeTracker(requestUrl, props.changeToken);\r\n log(`Querying: ${runningQuery.current}`);\r\n\r\n // get the access token\r\n // - do not cache, the provider is expected to manage its own cache (the msal auth service includes one with expiry logic)\r\n\r\n if (props.authTokenProvider) {\r\n props.authTokenProvider!().then((accessToken) => {\r\n fetchRequest({\r\n method: \"GET\",\r\n credentials: \"include\",\r\n headers: {\r\n \"Session-Correlation\": getSessionCorrelation(),\r\n Authorization: \"Bearer \" + accessToken,\r\n },\r\n });\r\n });\r\n } else {\r\n fetchRequest({\r\n method: \"GET\",\r\n headers: {\r\n \"Session-Correlation\": getSessionCorrelation(),\r\n },\r\n });\r\n }\r\n }\r\n\r\n // initiate load\r\n requestDataIfNeeded();\r\n\r\n // apply a localised loading panel whilst a query is running\r\n return runningQuery.current ? : <>;\r\n\r\n function LoadingPanel(props: { elementId: string }): JSX.Element {\r\n const loadingPanel = (\r\n
\r\n Loading\r\n
\r\n
\r\n
\r\n );\r\n\r\n let element: HTMLElement | null | undefined = document.getElementById(props.elementId);\r\n\r\n // when attaching to a grid, attempt to find and use the content element as this appears to render faster\r\n element = element?.querySelector(\".k-grid-content\") ?? element;\r\n\r\n return element ? ReactDOM.createPortal(loadingPanel, element) : loadingPanel;\r\n }\r\n\r\n function getChangeTracker(requestUrl: string, changeToken: any | undefined) {\r\n return requestUrl + `(${JSON.stringify(changeToken) ?? \"\"})`;\r\n }\r\n}\r\n\r\nconst showDebugMessages: boolean = false;\r\n\r\nfunction log(message: string) {\r\n if (!showDebugMessages) return;\r\n console.debug(\"ODataReader: \" + message);\r\n}\r\n","/**\r\n * Determines which part of the string to truncate\r\n */\r\nexport enum TruncatePosition {\r\n /**\r\n * Extract the truncated string from the beginning of the string\r\n */\r\n Start,\r\n\r\n /**\r\n * Extract the truncated string from the e of the string\r\n */\r\n End,\r\n}\r\n\r\nexport function truncate(value: string, length: number, startPosition?: TruncatePosition | undefined): string {\r\n let truncatedValue: string = \"\";\r\n\r\n // if length is zero or less then return an empty string\r\n if (length <= 0) return truncatedValue;\r\n // return the string if it's length is less than the truncated length\r\n if (value.length <= length) return value;\r\n\r\n // strip out new line characters when truncating the string\r\n value = value.replace(/[\\r\\n]+/g, \" \");\r\n\r\n switch (startPosition ?? TruncatePosition.Start) {\r\n case TruncatePosition.Start:\r\n truncatedValue = value.substring(0, length).trim();\r\n return `${truncatedValue}…`;\r\n\r\n case TruncatePosition.End:\r\n truncatedValue = value.substring(value.length - length).trim();\r\n return `…${truncatedValue}`;\r\n }\r\n}\r\n","import { Dialog } from \"@progress/kendo-react-dialogs\";\r\nimport { useState } from \"react\";\r\nimport { ControlClass } from \"../../common/forms/BootstrapForms\";\r\nimport bootstrapFormsStyles from \"../../common/forms/BootstrapForms.module.css\";\r\nimport * as StringHelper from \"../stringHelper\";\r\n\r\nexport default function CommentSummaryView(props: { comment: string; maxSummaryLength?: number; title: string; truncatePosition?: StringHelper.TruncatePosition }) {\r\n const { comment, title } = props;\r\n\r\n const [showCommentsDialog, setShowCommentsDialog] = useState(false);\r\n\r\n // default maxSummaryLength to 100 if it has not been provided\r\n const maxSummaryLength = props.maxSummaryLength ?? 100;\r\n\r\n // default summary start position to be Start\r\n const truncatePosition = props.truncatePosition ?? StringHelper.TruncatePosition.Start;\r\n const truncatedComment = !comment ? comment : StringHelper.truncate(comment!, maxSummaryLength, truncatePosition);\r\n\r\n function handleMoreClick() {\r\n setShowCommentsDialog(true);\r\n }\r\n\r\n function onCloseCommentsDialog() {\r\n setShowCommentsDialog(false);\r\n }\r\n return (\r\n
\r\n
{truncatedComment}
\r\n {truncatedComment !== comment && (\r\n
\r\n \r\n
\r\n )}\r\n {showCommentsDialog && (\r\n \r\n
\r\n {comment}\r\n
\r\n
\r\n )}\r\n
\r\n );\r\n}\r\n","/**\n * @license\n *-------------------------------------------------------------------------------------------\n * Copyright © 2024 Progress Software Corporation. All rights reserved.\n * Licensed under commercial license. See LICENSE.md in the package root for more information\n *-------------------------------------------------------------------------------------------\n */\n\"use client\";\nconst t = \":not(.k-dropdownlist button):not(.k-colorpicker button):not(.k-split-button .k-split-button-arrow)\", o = [\n \"button\" + t,\n \".k-button-group > button\" + t,\n \".k-colorpicker\",\n \".k-dropdownlist\"\n];\nexport {\n o as toolbarButtons\n};\n","/**\n * @license\n *-------------------------------------------------------------------------------------------\n * Copyright © 2024 Progress Software Corporation. All rights reserved.\n * Licensed under commercial license. See LICENSE.md in the package root for more information\n *-------------------------------------------------------------------------------------------\n */\n\"use client\";\nimport * as a from \"react\";\nimport o from \"prop-types\";\nimport { Keys as r, validatePackage as l, classNames as p, kendoThemeMaps as u } from \"@progress/kendo-react-common\";\nimport { toolbarButtons as c } from \"../util.mjs\";\nimport { packageMetadata as m } from \"../package-metadata.mjs\";\nconst h = class h extends a.Component {\n constructor(s) {\n super(s), this._element = null, this.offsetHeight = 0, this.offsetWidth = 0, this.buttons = [], this.focusedSelector = this.selectors.map((t) => t + \":focus\").join(\",\"), this.setTabIndex = (t) => {\n const { tabIndex: i = h.defaultProps.tabIndex } = this.props;\n this.buttons.forEach((n, e) => {\n n.tabIndex = e === t ? i : -1;\n });\n }, this.onKeyDown = (t) => {\n const i = t.target;\n if (!(t.keyCode === r.left || t.keyCode === r.right || t.keyCode === r.home || t.keyCode === r.end) || t.defaultPrevented || this.buttons.findIndex((f) => f === i) === -1)\n return;\n const e = this.focusedIndex;\n t.keyCode === r.left ? this.focusButton(e, e === 0 ? this.buttons.length - 1 : e - 1) : this.focusButton(e, e === this.buttons.length - 1 ? 0 : e + 1), t.keyCode === r.home && this.focusButton(e, 0), t.keyCode === r.end && this.focusButton(e, this.buttons.length - 1);\n }, this.onWindowResize = (t) => {\n const i = this.element;\n if (!i)\n return;\n const n = i.offsetWidth, e = i.offsetHeight;\n if (this.offsetWidth !== n || this.offsetHeight !== e) {\n this.offsetWidth = n, this.offsetHeight = e;\n const f = { offsetWidth: this.offsetWidth, offsetHeight: this.offsetHeight };\n this.props.onResize && this.props.onResize.call(void 0, { target: this, ...f, nativeEvent: t });\n }\n }, l(m);\n }\n get selectors() {\n return this.props.buttons || c;\n }\n get focusedIndex() {\n const s = this.element && this.element.querySelector(this.focusedSelector);\n return Math.max(\n 0,\n this.buttons.findIndex((t) => t === s)\n );\n }\n /**\n * Returns the HTML element of the Toolbar component.\n */\n get element() {\n return this._element;\n }\n /**\n * @hidden\n */\n componentDidMount() {\n window.addEventListener(\"resize\", this.onWindowResize);\n const s = this.element;\n s && (this.offsetWidth = s.offsetWidth, this.offsetHeight = s.offsetHeight, this.props.keyboardNavigation !== !1 && (this.buttons = Array.from(s.querySelectorAll(this.selectors.join(\",\"))), this.setTabIndex(0)));\n }\n /**\n * @hidden\n */\n componentDidUpdate() {\n const s = this.element;\n !s || this.props.keyboardNavigation === !1 || (this.buttons = Array.from(s.querySelectorAll(this.selectors.join(\",\"))), this.setTabIndex(this.focusedIndex));\n }\n /**\n * @hidden\n */\n componentWillUnmount() {\n window.removeEventListener(\"resize\", this.onWindowResize), this.buttons.length = 0;\n }\n /**\n * @hidden\n */\n render() {\n return /* @__PURE__ */ a.createElement(\n \"div\",\n {\n id: this.props.id,\n \"aria-label\": this.props.ariaLabel,\n className: p(\n \"k-toolbar\",\n {\n [`k-toolbar-${u.sizeMap[this.props.size] || this.props.size}`]: this.props.size\n },\n this.props.className\n ),\n style: this.props.style,\n role: this.props.role !== void 0 ? this.props.role || void 0 : \"toolbar\",\n dir: this.props.dir,\n ref: (s) => this._element = s,\n onKeyDown: this.props.keyboardNavigation !== !1 ? this.onKeyDown : void 0\n },\n this.props.children\n );\n }\n focusButton(s, t) {\n const { tabIndex: i = h.defaultProps.tabIndex } = this.props, n = this.buttons[t];\n if (n) {\n n.tabIndex = i, n.focus();\n const e = this.buttons[s];\n e && (e.tabIndex = -1);\n }\n }\n};\nh.propTypes = {\n tabIndex: o.number,\n dir: o.string,\n keyboardNavigation: o.bool,\n style: o.object,\n className: o.string,\n role: o.string,\n onResize: o.func,\n buttons: o.arrayOf(o.string),\n size: o.oneOf([null, \"small\", \"medium\", \"large\"])\n}, h.defaultProps = {\n tabIndex: 0,\n size: \"medium\"\n};\nlet d = h;\nexport {\n d as Toolbar\n};\n","/**\n * @license\n *-------------------------------------------------------------------------------------------\n * Copyright © 2024 Progress Software Corporation. All rights reserved.\n * Licensed under commercial license. See LICENSE.md in the package root for more information\n *-------------------------------------------------------------------------------------------\n */\n\"use client\";\nimport * as r from \"react\";\nimport o from \"prop-types\";\nimport { validatePackage as g, classNames as m, uButtonGroup as h } from \"@progress/kendo-react-common\";\nimport { packageMetadata as f } from \"./package-metadata.mjs\";\nconst u = class u extends r.Component {\n constructor(t) {\n super(t), this._element = null, g(f);\n }\n /**\n * @hidden\n */\n render() {\n const { children: t, className: n, dir: p, disabled: s, unstyled: e, width: a } = this.props, c = e && e.uButtonGroup, l = this.mapButtons(t), i = m(\n h.wrapper({\n c,\n stretched: !!a,\n disabled: s\n }),\n n\n ), d = {\n className: i,\n style: { width: `${a}` },\n dir: p,\n // Accessibility properties\n role: \"group\",\n \"aria-disabled\": s\n };\n return /* @__PURE__ */ r.createElement(\n \"div\",\n {\n ref: (y) => {\n this._element = y;\n },\n ...d,\n className: i\n },\n l\n );\n }\n mapButtons(t) {\n const n = r.Children.count(t), p = this.props.dir !== void 0 ? this.props.dir === \"rtl\" : this._element && getComputedStyle(this._element).direction === \"rtl\" || !1;\n return r.Children.map(t, (s, e) => {\n if (r.isValidElement(s)) {\n const { unstyled: a } = this.props, c = a && a.uButtonGroup, l = e === n - 1, i = p, d = m(\n s.props.className,\n h.position({\n c,\n start: i ? l : e === 0,\n end: i ? e === 0 : l\n })\n );\n return this.renderButton(s, d);\n }\n return s;\n });\n }\n renderButton(t, n) {\n const p = { ...this.props.width ? { width: this.props.width } : {}, ...t.props.style || {} }, s = this.props.disabled || t.props.disabled, e = {\n ...t.props,\n ...n ? { className: n } : {},\n ...Object.keys(p).length ? { style: p } : {},\n ...s !== void 0 ? { disabled: s } : {}\n };\n return r.Children.count(t.props.children) > 0 ? r.cloneElement(t, e, t.props.children) : r.cloneElement(t, e);\n }\n};\nu.propTypes = {\n children: o.oneOfType([o.arrayOf(o.element), o.element]),\n className: o.string,\n disabled: o.bool,\n width: o.string,\n dir: o.string\n};\nlet b = u;\nexport {\n b as ButtonGroup\n};\n","/**\n * @license\n *-------------------------------------------------------------------------------------------\n * Copyright © 2024 Progress Software Corporation. All rights reserved.\n * Licensed under commercial license. See LICENSE.md in the package root for more information\n *-------------------------------------------------------------------------------------------\n */\n\"use client\";\nimport * as s from \"react\";\nimport i from \"prop-types\";\nimport { classNames as p } from \"@progress/kendo-react-common\";\nconst e = class e extends s.PureComponent {\n constructor() {\n super(...arguments), this._element = null;\n }\n /**\n * Returns the HTML element of the ToolbarItem component.\n */\n get element() {\n return this._element;\n }\n /**\n * @hidden\n */\n render() {\n return /* @__PURE__ */ s.createElement(\n \"div\",\n {\n id: this.props.id,\n className: p(\"k-toolbar-item\", this.props.className),\n style: this.props.style,\n ref: (r) => this._element = r\n },\n this.props.children\n );\n }\n};\ne.propTypes = {\n className: i.string\n};\nlet t = e;\nexport {\n t as ToolbarItem\n};\n","/**\n * @license\n *-------------------------------------------------------------------------------------------\n * Copyright © 2024 Progress Software Corporation. All rights reserved.\n * Licensed under commercial license. See LICENSE.md in the package root for more information\n *-------------------------------------------------------------------------------------------\n */\n\"use client\";\nimport * as n from \"react\";\nimport s from \"prop-types\";\nimport { Toolbar as E, ToolbarItem as m, Button as C } from \"@progress/kendo-react-buttons\";\nimport { DropDownList as d } from \"@progress/kendo-react-dropdowns\";\nimport { provideLocalizationService as L, registerForLocalization as y } from \"@progress/kendo-react-intl\";\nimport { xIcon as O } from \"@progress/kendo-svg-icons\";\nimport { unaryOperator as g, stringOperator as R } from \"./operators.mjs\";\nimport { filterExpressionAriaLabel as v, messages as p, filterExpressionDropdownAriaLabel as u, filterExpressionOperatorDropdownAriaLabel as x, filterClose as F } from \"../messages/index.mjs\";\nconst b = (c) => {\n c.value === void 0 && !g(c.operator) && (c.value = R(c.operator) ? \"\" : null);\n}, f = class f extends n.Component {\n constructor() {\n super(...arguments), this.onFieldChange = (t) => {\n const r = t.value.name, e = this.props.fields.find((a) => a.name === r), o = this.props.filter, i = e && !e.operators.some((a) => a.operator === o.operator) ? e.operators[0].operator : o.operator, l = {\n field: r,\n operator: i\n };\n b(l), this.triggerOnFilterChange(o, l, t);\n }, this.onOperatorChange = (t) => {\n const r = t.value.operator, e = this.props.filter;\n let o;\n if (g(r)) {\n const { value: i, ...l } = e;\n o = { ...l, operator: r };\n } else\n o = { ...e, operator: r };\n b(o), this.triggerOnFilterChange(e, o, t);\n }, this.onInputChange = (t) => {\n const r = this.props.filter;\n let e = t.nextFilter;\n if (g(e.operator)) {\n const o = this.props.fields.find((i) => i.name === e.field);\n e = { ...e, operator: o && o.operators[0].operator || e.operator };\n }\n this.triggerOnFilterChange(r, e, t);\n }, this.triggerOnFilterChange = (t, r, e) => {\n const o = {\n prevFilter: t,\n nextFilter: r,\n syntheticEvent: e.syntheticEvent,\n nativeEvent: e.nativeEvent,\n target: this\n };\n this.props.onChange.call(void 0, o);\n }, this.onFilterRemove = (t) => {\n const r = {\n filter: this.props.filter,\n syntheticEvent: t.syntheticEvent,\n nativeEvent: t.nativeEvent,\n target: this\n };\n this.props.onRemove.call(void 0, r);\n };\n }\n render() {\n const t = L(this), {\n fields: r,\n filter: e,\n ariaLabel: o = t.toLanguageString(v, p[v])\n } = this.props, i = r.find((a) => a.name === e.field), l = (i && i.operators || []).map((a) => ({ ...a, text: t.toLanguageString(a.text, p[a.text] || a.text) }));\n return /* @__PURE__ */ n.createElement(\"div\", { className: \"k-filter-toolbar\" }, /* @__PURE__ */ n.createElement(E, { keyboardNavigation: !1, role: \"toolbar\", ariaLabel: o }, /* @__PURE__ */ n.createElement(m, { className: \"k-filter-field\" }, /* @__PURE__ */ n.createElement(\n d,\n {\n tabIndex: -1,\n data: r,\n textField: \"label\",\n value: r.find((a) => a.name === e.field),\n onChange: this.onFieldChange,\n ariaLabel: t.toLanguageString(u, p[u])\n }\n )), /* @__PURE__ */ n.createElement(m, { className: \"k-filter-operator\" }, /* @__PURE__ */ n.createElement(\n d,\n {\n tabIndex: -1,\n data: l,\n textField: \"text\",\n value: l.find((a) => a.operator === e.operator),\n onChange: this.onOperatorChange,\n ariaLabel: t.toLanguageString(x, p[x])\n }\n )), /* @__PURE__ */ n.createElement(m, { className: \"k-filter-value\" }, i && /* @__PURE__ */ n.createElement(i.filter, { filter: e, onFilterChange: this.onInputChange, min: i.min, max: i.max })), /* @__PURE__ */ n.createElement(\n C,\n {\n className: \"k-toolbar-button\",\n title: t.toLanguageString(F, p[F]),\n icon: \"x\",\n svgIcon: O,\n fillMode: \"flat\",\n themeColor: \"base\",\n type: \"button\",\n onClick: this.onFilterRemove\n }\n )));\n }\n};\nf.propTypes = {\n filter: s.object.isRequired,\n fields: s.array.isRequired,\n ariaLabel: s.string,\n onChange: s.func.isRequired,\n onRemove: s.func.isRequired\n};\nlet h = f;\ny(h);\nexport {\n h as Expression\n};\n","/**\n * @license\n *-------------------------------------------------------------------------------------------\n * Copyright © 2024 Progress Software Corporation. All rights reserved.\n * Licensed under commercial license. See LICENSE.md in the package root for more information\n *-------------------------------------------------------------------------------------------\n */\n\"use client\";\nimport * as r from \"react\";\nimport l from \"prop-types\";\nimport { isCompositeFilterDescriptor as E } from \"@progress/kendo-data-query\";\nimport { Toolbar as b, ButtonGroup as L, Button as a } from \"@progress/kendo-react-buttons\";\nimport { provideLocalizationService as F, registerForLocalization as x } from \"@progress/kendo-react-intl\";\nimport { filterAddExpressionIcon as C, filterAddGroupIcon as y, xIcon as R } from \"@progress/kendo-svg-icons\";\nimport { Expression as k } from \"./Expression.mjs\";\nimport { stringOperator as A } from \"./operators.mjs\";\nimport { filterGroupAriaLabel as f, messages as s, filterAndLogic as v, filterOrLogic as m, filterAddExpression as p, filterAddGroup as c, filterClose as u } from \"../messages/index.mjs\";\nconst g = class g extends r.Component {\n constructor() {\n super(...arguments), this.onGroupRemove = (t) => {\n const e = {\n filter: this.props.filter,\n target: this,\n syntheticEvent: t,\n nativeEvent: t.nativeEvent\n };\n this.props.onRemove.call(void 0, e);\n }, this.onAddExpression = (t) => {\n const e = this.props.filter, i = this.props.fields[0], o = { field: i.name, operator: i.operators[0].operator };\n o.value = A(o.operator) ? \"\" : null;\n const n = {\n nextFilter: {\n ...e,\n filters: [...e.filters, o]\n },\n prevFilter: e,\n target: this,\n syntheticEvent: t,\n nativeEvent: t.nativeEvent\n };\n this.props.onChange.call(void 0, n);\n }, this.onAddGroup = (t) => {\n const e = this.props.filter, i = {\n nextFilter: { ...e, filters: [...e.filters, { ...this.props.defaultGroupFilter }] },\n prevFilter: e,\n target: this,\n syntheticEvent: t,\n nativeEvent: t.nativeEvent\n };\n this.props.onChange.call(void 0, i);\n }, this.onLogicAnd = (t) => this.changeLogic(\"and\", t), this.onLogicOr = (t) => this.changeLogic(\"or\", t), this.changeLogic = (t, e) => {\n const i = this.props.filter;\n if (i.logic !== t) {\n const o = {\n nextFilter: { ...i, logic: t },\n prevFilter: i,\n target: this,\n syntheticEvent: e,\n nativeEvent: e.nativeEvent\n };\n this.props.onChange.call(void 0, o);\n }\n }, this.replaceFilter = (t, e) => {\n const i = this.props.filter, o = i.filters.map((n) => n === t ? e : n);\n return { ...i, filters: o };\n }, this.onChange = (t) => {\n const i = {\n nextFilter: this.replaceFilter(t.prevFilter, t.nextFilter),\n prevFilter: this.props.filter,\n syntheticEvent: t.syntheticEvent,\n nativeEvent: t.nativeEvent,\n target: this\n };\n this.props.onChange.call(void 0, i);\n }, this.onRemove = (t) => {\n const e = this.props.filter, i = e.filters.filter((n) => n !== t.filter), o = {\n nextFilter: { ...e, filters: i },\n prevFilter: e,\n syntheticEvent: t.syntheticEvent,\n nativeEvent: t.nativeEvent,\n target: this\n };\n this.props.onChange.call(void 0, o);\n };\n }\n render() {\n const t = F(this), {\n fields: e,\n filter: i,\n ariaLabel: o = t.toLanguageString(f, s[f])\n } = this.props;\n return /* @__PURE__ */ r.createElement(r.Fragment, null, /* @__PURE__ */ r.createElement(\"div\", { className: \"k-filter-toolbar\" }, /* @__PURE__ */ r.createElement(b, { role: \"toolbar\", ariaLabel: o }, /* @__PURE__ */ r.createElement(L, { className: \"k-toolbar-button-group k-button-group-solid\" }, /* @__PURE__ */ r.createElement(a, { togglable: !0, onClick: this.onLogicAnd, selected: i.logic === \"and\", type: \"button\" }, t.toLanguageString(v, s[v])), /* @__PURE__ */ r.createElement(a, { togglable: !0, onClick: this.onLogicOr, selected: i.logic === \"or\", type: \"button\" }, t.toLanguageString(m, s[m]))), /* @__PURE__ */ r.createElement(\n a,\n {\n className: \"k-toolbar-button\",\n title: t.toLanguageString(p, s[p]),\n icon: \"filter-add-expression\",\n svgIcon: C,\n type: \"button\",\n onClick: this.onAddExpression\n },\n t.toLanguageString(p, s[p])\n ), /* @__PURE__ */ r.createElement(\n a,\n {\n className: \"k-toolbar-button\",\n title: t.toLanguageString(c, s[c]),\n icon: \"filter-add-group\",\n svgIcon: y,\n type: \"button\",\n onClick: this.onAddGroup\n },\n t.toLanguageString(c, s[c])\n ), /* @__PURE__ */ r.createElement(\n a,\n {\n className: \"k-toolbar-button\",\n title: t.toLanguageString(u, s[u]),\n icon: \"x\",\n svgIcon: R,\n fillMode: \"flat\",\n type: \"button\",\n onClick: this.onGroupRemove\n }\n ))), i.filters.length > 0 && /* @__PURE__ */ r.createElement(\"ul\", { role: \"group\", className: \"k-filter-lines\" }, i.filters.map(\n (n, d) => /* @__PURE__ */ r.createElement(\"li\", { role: \"treeitem\", key: d, className: \"k-filter-item\" }, E(n) ? /* @__PURE__ */ r.createElement(\n g,\n {\n filter: n,\n fields: e,\n onChange: this.onChange,\n onRemove: this.onRemove,\n defaultGroupFilter: this.props.defaultGroupFilter,\n ariaLabel: this.props.ariaLabel,\n ariaLabelExpression: this.props.ariaLabelExpression\n }\n ) : /* @__PURE__ */ r.createElement(\n k,\n {\n filter: n,\n fields: e,\n ariaLabel: this.props.ariaLabelExpression,\n onChange: this.onChange,\n onRemove: this.onRemove\n }\n ))\n )));\n }\n};\ng.propTypes = {\n filter: l.object.isRequired,\n fields: l.array.isRequired,\n ariaLabel: l.string,\n ariaLabelExpression: l.string,\n onChange: l.func.isRequired,\n onRemove: l.func.isRequired,\n defaultGroupFilter: l.object.isRequired\n};\nlet h = g;\nx(h);\nexport {\n h as Group\n};\n","/**\n * @license\n *-------------------------------------------------------------------------------------------\n * Copyright © 2024 Progress Software Corporation. All rights reserved.\n * Licensed under commercial license. See LICENSE.md in the package root for more information\n *-------------------------------------------------------------------------------------------\n */\n\"use client\";\nimport * as p from \"react\";\nimport u from \"prop-types\";\nimport { validatePackage as b, Navigation as g, disableNavigatableContainer as w, getActiveElement as f, focusFirstFocusableChild as h, enableNavigatableContainer as R, classNames as y } from \"@progress/kendo-react-common\";\nimport { Group as E } from \"./Group.mjs\";\nimport { packageMetadata as F } from \"../package-metadata.mjs\";\nconst a = {\n // Group selectors\n andButton: \"button.k-group-start\",\n orButton: \"button.k-group-end\",\n addFilterButton: 'button[title=\"Add Expression\"]',\n addGroupButton: 'button[title=\"Add Group\"]',\n removeButton: 'button[title=\"Remove\"]',\n // Expression selectors\n filterFieldWrapper: \".k-filter-field\",\n filterOperatorWrapper: \".k-filter-operator\",\n filterValueWrapper: \".k-filter-value\",\n toolbarElement: \".k-toolbar\"\n}, m = class m extends p.Component {\n constructor(o) {\n super(o), this.wrapperRef = p.createRef(), this.onFilterChange = (r) => {\n const t = {\n filter: r.nextFilter,\n syntheticEvent: r.syntheticEvent,\n nativeEvent: r.nativeEvent,\n target: this\n };\n this.props.onChange.call(void 0, t);\n }, this.onGroupRemove = (r) => {\n const t = {\n filter: { ...this.props.value, filters: [] },\n syntheticEvent: r.syntheticEvent,\n nativeEvent: r.nativeEvent,\n target: this\n };\n this.props.onChange.call(void 0, t);\n }, this.onKeyDown = (r) => {\n var t;\n (t = this.navigation) == null || t.triggerKeyboardEvent(r);\n }, b(F);\n }\n /**\n * @hidden\n */\n componentDidMount() {\n this.wrapperRef && (this.navigation = new g({\n tabIndex: 0,\n root: this.wrapperRef,\n selectors: [\".k-filter\"],\n keyboardEvents: {\n keydown: {\n Tab: (o, r, t) => {\n const e = o.getElementsByClassName(\"k-filter-lines\")[0];\n e && w(e);\n },\n ArrowUp: (o, r, t) => {\n t.preventDefault();\n const e = f(document), i = e == null ? void 0 : e.closest(a.toolbarElement), n = o.getElementsByClassName(\"k-toolbar\"), s = Array.from(n).findIndex((d) => d === i) - 1, c = n[s];\n o.getElementsByClassName(\"k-filter-lines\")[0] && h(c);\n },\n ArrowDown: (o, r, t) => {\n t.preventDefault();\n const e = f(document), i = e == null ? void 0 : e.closest(a.toolbarElement), n = o.getElementsByClassName(\"k-toolbar\"), s = Array.from(n).findIndex((d) => d === i) + 1, c = n[s], l = o.getElementsByClassName(\"k-filter-lines\")[0];\n l && (R(l, [a.filterFieldWrapper, a.filterOperatorWrapper, a.filterValueWrapper]), h(c));\n },\n ArrowRight: (o, r, t) => {\n t.preventDefault();\n const e = f(document), i = e == null ? void 0 : e.nextElementSibling, n = e == null ? void 0 : e.closest(a.toolbarElement), s = o.querySelector('[aria-label=\"Filter toolbar\"]');\n e && i && !(n === s) && i.focus();\n },\n ArrowLeft: (o, r, t) => {\n t.preventDefault();\n const e = f(document), i = e == null ? void 0 : e.previousElementSibling, n = e == null ? void 0 : e.closest(a.toolbarElement), s = o.querySelector('[aria-label=\"Filter toolbar\"]');\n e && i && !(n === s) && i.focus();\n },\n Enter: (o, r, t) => {\n t.preventDefault();\n const e = f(document), i = o.querySelector(a.removeButton), n = e == null ? void 0 : e.closest(a.toolbarElement), s = o.getElementsByClassName(\"k-toolbar\"), c = Array.from(s).findIndex((l) => l === n) - 1;\n if (n === s[0]) {\n const l = n.lastElementChild;\n l && l.click();\n }\n if (n !== s[0]) {\n const l = s[c].lastElementChild;\n e && e.title === i.title && l && (e.click(), l.focus());\n }\n }\n }\n }\n }));\n }\n /**\n * @hidden\n */\n render() {\n return /* @__PURE__ */ p.createElement(\n \"div\",\n {\n className: y(\n \"k-filter\",\n this.props.className\n ),\n style: this.props.style,\n ref: this.wrapperRef,\n onKeyDown: this.onKeyDown\n },\n /* @__PURE__ */ p.createElement(\"ul\", { role: \"tree\", className: \"k-filter-container\", \"aria-label\": this.props.ariaLabel }, /* @__PURE__ */ p.createElement(\"li\", { role: \"treeitem\", className: \"k-filter-group-main\" }, /* @__PURE__ */ p.createElement(\n E,\n {\n filter: this.props.value,\n fields: this.props.fields,\n ariaLabel: this.props.ariaLabelGroup,\n ariaLabelExpression: this.props.ariaLabelExpression,\n onChange: this.onFilterChange,\n onRemove: this.onGroupRemove,\n defaultGroupFilter: this.props.defaultGroupFilter || { logic: \"and\", filters: [] }\n }\n )))\n );\n }\n};\nm.propTypes = {\n className: u.string,\n style: u.object,\n fields: function(o, r) {\n const t = o[r];\n if (t === void 0)\n return new Error(`Property '${r}' is missing.`);\n if (Array.isArray(t)) {\n if (Object.keys(t.reduce((e, i) => ({ ...e, [i.name]: 1 }), {})).length !== t.length)\n return new Error(`Property '${r}' needs to contain objects with unique 'name' field.`);\n } else\n return new Error(`Property '${r}' needs to be Array.`);\n return null;\n },\n ariaLabelGroup: u.string,\n ariaLabelExpression: u.string,\n value: u.object.isRequired,\n onChange: u.func.isRequired\n};\nlet v = m;\nexport {\n v as Filter,\n a as selectors\n};\n","// framework\r\nimport React from \"react\";\r\n// kendo\r\nimport { FieldSettings, Filter, FilterChangeEvent } from \"@progress/kendo-react-data-tools\";\r\nimport { CompositeFilterDescriptor } from \"@progress/kendo-data-query\";\r\nimport { NumericTextBoxPropsContext } from \"@progress/kendo-react-inputs\";\r\nimport { DateInputPropsContext } from \"@progress/kendo-react-dateinputs\";\r\n\r\n// NOTE: Using PropsContext.Provider to set the placeholder. Feature request for allowing a placeholder set for all Filters is below.\r\n// https://feedback.telerik.com/kendo-react-ui/1664642-external-filter-props-placeholder\r\n// NOTE2: We are required to use TextBoxFilter to create a Placeholder for any Text inputs, using a InputPropsContext with the GridFilter be a better solution but there is a bug preventing that, see details below.\r\n// https://github.com/telerik/kendo-react/issues/2525\r\n\r\ninterface IProps {\r\n fields: Array;\r\n value: CompositeFilterDescriptor;\r\n placeholder?: string | undefined;\r\n onChange: (event: FilterChangeEvent) => void;\r\n}\r\n\r\nconst css = `\r\n .k-filter .k-filter-toolbar .k-toolbar-item .k-dropdownlist {\r\n width: 230px;\r\n }\r\n .k-filter .k-filter-toolbar .k-toolbar-item.k-filter-value {\r\n .k-dropdownlist {\r\n width: 170px;\r\n } \r\n .k-numerictextbox {\r\n width: 170px;\r\n }\r\n .k-datepicker {\r\n width: 170px;\r\n }\r\n .k-textbox {\r\n width: 170px;\r\n placeholder: 'test';\r\n }\r\n } \r\n `;\r\n\r\nexport default function GridFilter(props: IProps) {\r\n const propsDateCallback = React.useCallback((props: any) => {\r\n return {\r\n ...props,\r\n placeholder: props.placeholder ?? \"day/month/year\",\r\n };\r\n }, []);\r\n const propsNumericCallback = React.useCallback((props: any) => {\r\n return {\r\n ...props,\r\n placeholder: props.placeholder ?? \"filter\",\r\n };\r\n }, []);\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n}\r\n","export function getTextFilter(hasNull: boolean): any[] {\r\n let filter = [\r\n { text: \"filter.containsOperator\", operator: \"contains\" },\r\n { text: \"filter.startsWithOperator\", operator: \"startswith\" },\r\n ];\r\n\r\n if (hasNull) {\r\n filter.push({ text: \"filter.isNullOperator\", operator: \"isnull\" });\r\n filter.push({ text: \"filter.isNotNullOperator\", operator: \"isnotnull\" });\r\n }\r\n\r\n return filter;\r\n}\r\n\r\nexport function getDateFilter(hasNull: boolean): any[] {\r\n let filter = [\r\n { text: \"filter.eqOperator\", operator: \"eq\" },\r\n { text: \"filter.afterOrEqualOperator\", operator: \"gte\" },\r\n { text: \"filter.beforeOrEqualOperator\", operator: \"lte\" },\r\n ];\r\n\r\n if (hasNull) {\r\n filter.push({ text: \"filter.isNullOperator\", operator: \"isnull\" });\r\n filter.push({ text: \"filter.isNotNullOperator\", operator: \"isnotnull\" });\r\n }\r\n\r\n return filter;\r\n}\r\n\r\nexport function getNumericFilter(hasNull: boolean): any[] {\r\n let filter = [\r\n { text: \"filter.eqOperator\", operator: \"eq\" },\r\n { text: \"filter.gteOperator\", operator: \"gte\" },\r\n { text: \"filter.lteOperator\", operator: \"lte\" },\r\n ];\r\n\r\n if (hasNull) {\r\n filter.push({ text: \"filter.isNullOperator\", operator: \"isnull\" });\r\n filter.push({ text: \"filter.isNotNullOperator\", operator: \"isnotnull\" });\r\n }\r\n\r\n return filter;\r\n}\r\n","// kendo\r\nimport { TextBox } from \"@progress/kendo-react-inputs\";\r\n\r\n// NOTE: Solution suggested by Kendo, not ideal. Feature request for allowing a placeholder set for all Filters is below.\r\n// https://feedback.telerik.com/kendo-react-ui/1664642-external-filter-props-placeholder\r\n// NOTE2: Using a InputPropsContext with the GridFilter would also be a better solution, but that cannot be used due to a bug, see details below.\r\n// https://github.com/telerik/kendo-react/issues/2525\r\n\r\nexport const TextBoxFilter = (props: any) => {\r\n const onChange = (event: any) => {\r\n props.onFilterChange({\r\n nextFilter: {\r\n ...props.filter,\r\n value: event.target.value,\r\n },\r\n });\r\n };\r\n\r\n return ;\r\n};\r\n","// framework\r\nimport { useState, useEffect } from \"react\";\r\nimport { IoAddCircleOutline, IoCheckmarkCircle } from \"react-icons/io5\";\r\n// kendo\r\nimport { Grid, GridColumn, GridDataStateChangeEvent, GridPageChangeEvent } from \"@progress/kendo-react-grid\";\r\nimport { DataResult, State, CompositeFilterDescriptor } from \"@progress/kendo-data-query\";\r\nimport { Operators, NumericFilter, DateFilter, FilterChangeEvent, BooleanFilter } from \"@progress/kendo-react-data-tools\";\r\n// models\r\nimport { IWellSearchDataRow } from \"./models\";\r\n// common\r\nimport ODataReader from \"../../../common/odata/ODataReader\";\r\nimport ODataCopyLinkButton from \"../../../common/odata/ODataCopyLinkButton\";\r\nimport * as GlobalHelpers from \"../../../common/GlobalHelpers\";\r\nimport CustomGridCell from \"../../../common/kendoGrid/CustomGridCell\";\r\nimport CommentSummaryView from \"../../../common/commentSummary/commentSummaryView\";\r\nimport GridFilter from \"../../../common/kendoGrid/GridFilter\";\r\nimport { getDateFilter, getNumericFilter, getTextFilter } from \"../../../common/kendoGrid/GridFilterOptions\";\r\nimport { TextBoxFilter } from \"../../../common/kendoGrid/GridFilterTextBoxFilter\";\r\n\r\ninterface IProps {\r\n selectedItems: Array;\r\n onAdd: (items: Array) => void;\r\n onRemove: (item: IWellSearchDataRow) => void;\r\n}\r\n\r\nexport default function Controller(props: IProps) {\r\n const odataUrl = \"odata/v1/public/nopims/well/PublicNopimsWells\";\r\n\r\n const [pageSize, setPageSize] = useState(10);\r\n const initialFilter: CompositeFilterDescriptor = {\r\n logic: \"and\",\r\n filters: [\r\n {\r\n field: \"WellName\",\r\n operator: \"contains\",\r\n value: \"\",\r\n },\r\n ],\r\n };\r\n\r\n const [gridState, setGridDataState] = useState({\r\n sort: [{ field: \"KickOffDate\", dir: \"desc\" }],\r\n take: pageSize,\r\n skip: 0,\r\n filter: initialFilter,\r\n });\r\n\r\n const [filter, setFilter] = useState(initialFilter);\r\n const onFilterChange = (event: FilterChangeEvent) => {\r\n setFilter(event.filter);\r\n setGridDataState({ ...gridState, filter: event.filter });\r\n };\r\n\r\n const [data, setData] = useState({ data: [], total: 0 });\r\n function onDataChange(data: DataResult): void {\r\n setData(data);\r\n }\r\n\r\n function mapDataRow(dataRow: any): IWellSearchDataRow {\r\n return {\r\n WellId: dataRow.WellId,\r\n BoreholeId: dataRow.BoreholeId,\r\n Uwi: dataRow.Uwi,\r\n WellName: dataRow.WellName,\r\n Ubhi: dataRow.Ubhi,\r\n BoreholeName: dataRow.BoreholeName,\r\n Alias: dataRow.Alias,\r\n Basin: dataRow.Basin,\r\n SubBasin: dataRow.SubBasin,\r\n WaterDepth: dataRow.WaterDepth,\r\n IsOffshore: dataRow.IsOffshore,\r\n Jurisdiction: dataRow.Jurisdiction,\r\n NopimsJurisdiction: dataRow.NopimsJurisdiction,\r\n NopimsLegislation: dataRow.NopimsLegislation,\r\n Title: dataRow.Title,\r\n WellOperator: dataRow.WellOperator,\r\n BoreholeOperator: dataRow.BoreholeOperator,\r\n BoreholeReason: dataRow.BoreholeReason,\r\n DrilledBy: dataRow.DrilledBy,\r\n Rig: dataRow.Rig,\r\n KickOffDate: dataRow.KickOffDate ? new Date(dataRow.KickOffDate) : null,\r\n TotalDepthDate: dataRow.TotalDepthDate ? new Date(dataRow.TotalDepthDate) : null,\r\n DrillersTotalDepth: dataRow.DrillersTotalDepth,\r\n RigReleaseDate: dataRow.RigReleaseDate ? new Date(dataRow.RigReleaseDate) : null,\r\n BasicRelevantDate: dataRow.BasicRelevantDate ? new Date(dataRow.BasicRelevantDate) : null,\r\n InterpretativeRelevantDate: dataRow.InterpretativeRelevantDate ? new Date(dataRow.InterpretativeRelevantDate) : null,\r\n BasicReleaseDate: dataRow.BasicReleaseDate ? new Date(dataRow.BasicReleaseDate) : null,\r\n InterpretativeReleaseDate: dataRow.InterpretativeReleaseDate ? new Date(dataRow.InterpretativeReleaseDate) : null,\r\n BoreholeStatus: dataRow.BoreholeStatus,\r\n Comments: dataRow.Comments,\r\n };\r\n }\r\n\r\n useEffect(() => {\r\n if (data.data.length === 0 && data.total > 0 && gridState && gridState.skip! > 0) setGridDataState({ ...gridState, skip: 0 });\r\n }, [data, gridState]);\r\n\r\n return (\r\n <>\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n {\r\n setPageSize(e.page.take);\r\n setGridDataState({ ...gridState, take: e.page.take, skip: e.page.skip });\r\n }}\r\n resizable\r\n navigatable\r\n {...gridState}\r\n data={data}\r\n onDataStateChange={(e: GridDataStateChangeEvent) => setGridDataState(e.dataState)}\r\n >\r\n (\r\n props.onAdd(data.data)}\r\n >\r\n \r\n \r\n )}\r\n cell={(gridCellProps) => (\r\n \r\n {!props.selectedItems.find((i) => i.BoreholeId === (gridCellProps.dataItem as IWellSearchDataRow).BoreholeId) ? (\r\n props.onAdd([gridCellProps.dataItem])}\r\n >\r\n \r\n \r\n ) : (\r\n props.onRemove(gridCellProps.dataItem)}\r\n >\r\n \r\n \r\n )}\r\n \r\n )}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n (\r\n \r\n {props.dataItem.IsOffshore ? \"Y\" : \"N\"}\r\n \r\n )}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n (\r\n \r\n \r\n \r\n )}\r\n />\r\n \r\n
\r\n \r\n );\r\n}\r\n","// framework\r\nimport React, { ReactNode } from \"react\";\r\n// other\r\nimport { DownloadIcon } from \"@primer/octicons-react\";\r\n\r\nexport default function DownloadLinkView(props: {\r\n href: string | undefined;\r\n className?: string | undefined;\r\n style?: React.CSSProperties | undefined;\r\n children: ReactNode;\r\n title?: string | undefined;\r\n onClick?: (e: React.MouseEvent) => void;\r\n onContextMenu?: (e: React.MouseEvent) => void;\r\n onMouseDown?: (e: React.MouseEvent) => void;\r\n}) {\r\n return (\r\n \r\n {props.children}\r\n \r\n
\r\n );\r\n}\r\n","// framework\r\nimport { useState, useEffect } from \"react\";\r\nimport { useDispatch } from \"react-redux\";\r\nimport { BsBasket3Fill } from \"react-icons/bs\";\r\n// kendo\r\nimport { DataResult, State } from \"@progress/kendo-data-query\";\r\nimport { CompositeFilterDescriptor } from \"@progress/kendo-data-query\";\r\nimport { Grid, GridColumn, GridDataStateChangeEvent, GridPageChangeEvent } from \"@progress/kendo-react-grid\";\r\nimport { FilterChangeEvent } from \"@progress/kendo-react-data-tools\";\r\n// common\r\nimport ODataReader from \"../../../common/odata/ODataReader\";\r\nimport ODataCopyLinkButton from \"../../../common/odata/ODataCopyLinkButton\";\r\nimport CustomGridCell from \"../../../common/kendoGrid/CustomGridCell\";\r\nimport { useUserToken } from \"../../../common/shell/shellHelper\";\r\nimport * as GlobalHelpers from \"../../../common/GlobalHelpers\";\r\nimport ExternalLinkView from \"../../../common/externalLink/ExternalLinkView\";\r\nimport DownloadLinkView from \"../../../common/externalLink/DownloadLinkView\";\r\nimport GridFilter from \"../../../common/kendoGrid/GridFilter\";\r\nimport { getTextFilter } from \"../../../common/kendoGrid/GridFilterOptions\";\r\nimport { TextBoxFilter } from \"../../../common/kendoGrid/GridFilterTextBoxFilter\";\r\n// basket\r\nimport * as Actions from \"../../basket/redux/actions\";\r\nimport { useNopimsBasket } from \"../../basket/redux/reducers\";\r\nimport { NopimsBasketItemModel } from \"../../basket/redux/model\";\r\n// models\r\nimport { IReportDataRow } from \"./models\";\r\n\r\ninterface IProps {\r\n selectionVersion: number;\r\n}\r\n\r\nexport default function Controller(props: IProps) {\r\n const userToken = useUserToken();\r\n const odataUrl = `odata/v1/public/nopims/well/PublicNopimsWells/GetReportsForSelection(userToken=${userToken})`;\r\n const nopimsBasketModel = useNopimsBasket();\r\n const dispatch = useDispatch();\r\n\r\n const [pageSize, setPageSize] = useState(10);\r\n const initialFilter: CompositeFilterDescriptor = {\r\n logic: \"and\",\r\n filters: [\r\n {\r\n field: \"WellName\",\r\n operator: \"contains\",\r\n value: \"\",\r\n },\r\n ],\r\n };\r\n\r\n const [gridState, setGridDataState] = useState({\r\n sort: [\r\n { field: \"WellName\", dir: \"asc\" },\r\n { field: \"BoreholeName\", dir: \"asc\" },\r\n { field: \"ReportTitle\", dir: \"asc\" },\r\n ],\r\n take: pageSize,\r\n skip: 0,\r\n filter: initialFilter,\r\n });\r\n\r\n const [filter, setFilter] = useState(initialFilter);\r\n function onFilterChange(e: FilterChangeEvent): void {\r\n setFilter(e.filter);\r\n setGridDataState({ ...gridState, filter: e.filter });\r\n }\r\n\r\n const [data, setData] = useState({ data: [], total: 0 });\r\n function onDataChange(data: DataResult): void {\r\n setData(data);\r\n }\r\n\r\n function mapDataRow(dataRow: any): IReportDataRow {\r\n return dataRow;\r\n }\r\n\r\n // ensure we don't get stuck on an empty grid page\r\n useEffect(() => {\r\n if (data.data.length === 0 && data.total > 0 && gridState && gridState.skip! > 0) setGridDataState({ ...gridState, skip: 0 });\r\n }, [data, gridState]);\r\n\r\n function onBasketAddAll(): void {\r\n dispatch(Actions.itemsAdded(data.data.map((i: IReportDataRow) => new NopimsBasketItemModel(i.ReportTitle ?? ``, i.ReportId, undefined, i.BoreholeId, undefined, undefined, i.ReportItemId))));\r\n }\r\n\r\n function onBasketAdd(item: IReportDataRow): void {\r\n dispatch(Actions.itemsAdded([new NopimsBasketItemModel(item.ReportTitle ?? ``, item.ReportId, undefined, item.BoreholeId, undefined, undefined, item.ReportItemId)]));\r\n }\r\n\r\n // return\r\n return (\r\n <>\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n {userToken && (\r\n \r\n )}\r\n
\r\n {\r\n setPageSize(e.page.take);\r\n setGridDataState({ ...gridState, take: e.page.take, skip: e.page.skip });\r\n }}\r\n resizable\r\n navigatable\r\n {...gridState}\r\n data={data}\r\n onDataStateChange={(e: GridDataStateChangeEvent) => setGridDataState(e.dataState)}\r\n >\r\n (\r\n \r\n )}\r\n title=\"Basket\"\r\n cell={(gridCellProps) => (\r\n \r\n {nopimsBasketModel.items.every((i) => i.reportId !== gridCellProps.dataItem.ReportId) && (\r\n onBasketAdd(gridCellProps.dataItem)}\r\n >\r\n \r\n \r\n )}\r\n \r\n )}\r\n />\r\n\r\n (\r\n \r\n {props.dataItem.AttachmentManifestUrl && Listing}\r\n \r\n )}\r\n />\r\n (\r\n \r\n {props.dataItem.AttachmentArchiveUrl && {props.dataItem.AttachmentArchiveFileName}}\r\n \r\n )}\r\n />\r\n (\r\n \r\n {props.dataItem.AttachmentArchiveFileSize && GlobalHelpers.convertBytesToString(props.dataItem.AttachmentArchiveFileSize)}\r\n \r\n )}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n );\r\n}\r\n","// framework\r\nimport { useState, useEffect } from \"react\";\r\n// kendo\r\nimport { DataResult, State } from \"@progress/kendo-data-query\";\r\nimport { CompositeFilterDescriptor } from \"@progress/kendo-data-query\";\r\nimport { Grid, GridColumn, GridDataStateChangeEvent, GridPageChangeEvent } from \"@progress/kendo-react-grid\";\r\nimport { FilterChangeEvent, NumericFilter } from \"@progress/kendo-react-data-tools\";\r\n// common\r\nimport ODataReader from \"../../../common/odata/ODataReader\";\r\nimport ODataCopyLinkButton from \"../../../common/odata/ODataCopyLinkButton\";\r\nimport { useUserToken } from \"../../../common/shell/shellHelper\";\r\nimport GridFilter from \"../../../common/kendoGrid/GridFilter\";\r\nimport { getNumericFilter, getTextFilter } from \"../../../common/kendoGrid/GridFilterOptions\";\r\nimport { TextBoxFilter } from \"../../../common/kendoGrid/GridFilterTextBoxFilter\";\r\n// models\r\nimport { ISlideAndResidueDataRow } from \"./models\";\r\n\r\ninterface IProps {\r\n selectionVersion: number;\r\n}\r\n\r\nexport default function Controller(props: IProps) {\r\n const userToken = useUserToken();\r\n const odataUrl = `odata/v1/public/nopims/well/PublicNopimsWells/GetSlideAndResiduesForSelection(userToken=${userToken})`;\r\n\r\n const [pageSize, setPageSize] = useState(10);\r\n const initialFilter: CompositeFilterDescriptor = {\r\n logic: \"and\",\r\n filters: [\r\n {\r\n field: \"WellName\",\r\n operator: \"contains\",\r\n value: \"\",\r\n },\r\n ],\r\n };\r\n\r\n const [gridState, setGridDataState] = useState({\r\n sort: [\r\n { field: \"WellName\", dir: \"asc\" },\r\n { field: \"BoreholeName\", dir: \"asc\" },\r\n { field: \"Name\", dir: \"asc\" },\r\n ],\r\n take: pageSize,\r\n skip: 0,\r\n filter: initialFilter,\r\n });\r\n\r\n const [filter, setFilter] = useState(initialFilter);\r\n function onFilterChange(e: FilterChangeEvent): void {\r\n setFilter(e.filter);\r\n setGridDataState({ ...gridState, filter: e.filter });\r\n }\r\n\r\n const [data, setData] = useState({ data: [], total: 0 });\r\n function onDataChange(data: DataResult): void {\r\n setData(data);\r\n }\r\n\r\n function mapDataRow(dataRow: any): ISlideAndResidueDataRow {\r\n return dataRow;\r\n }\r\n\r\n // ensure we don't get stuck on an empty grid page\r\n useEffect(() => {\r\n if (data.data.length === 0 && data.total > 0 && gridState && gridState.skip! > 0) setGridDataState({ ...gridState, skip: 0 });\r\n }, [data, gridState]);\r\n\r\n // return\r\n return (\r\n <>\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n {userToken && (\r\n \r\n )}\r\n
\r\n {\r\n setPageSize(e.page.take);\r\n setGridDataState({ ...gridState, take: e.page.take, skip: e.page.skip });\r\n }}\r\n resizable\r\n navigatable\r\n {...gridState}\r\n data={data}\r\n onDataStateChange={(e: GridDataStateChangeEvent) => setGridDataState(e.dataState)}\r\n >\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n );\r\n}\r\n","// framework\r\nimport { useState, useEffect } from \"react\";\r\n// kendo\r\nimport { DataResult, State } from \"@progress/kendo-data-query\";\r\nimport { CompositeFilterDescriptor } from \"@progress/kendo-data-query\";\r\nimport { Grid, GridColumn, GridDataStateChangeEvent, GridPageChangeEvent } from \"@progress/kendo-react-grid\";\r\nimport { FilterChangeEvent, NumericFilter, BooleanFilter, Operators, DateFilter } from \"@progress/kendo-react-data-tools\";\r\n// common\r\nimport ODataReader from \"../../../common/odata/ODataReader\";\r\nimport ODataCopyLinkButton from \"../../../common/odata/ODataCopyLinkButton\";\r\nimport * as GlobalHelpers from \"../../../common/GlobalHelpers\";\r\nimport { useUserToken } from \"../../../common/shell/shellHelper\";\r\nimport GridFilter from \"../../../common/kendoGrid/GridFilter\";\r\nimport { getDateFilter, getNumericFilter, getTextFilter } from \"../../../common/kendoGrid/GridFilterOptions\";\r\nimport { TextBoxFilter } from \"../../../common/kendoGrid/GridFilterTextBoxFilter\";\r\n// models\r\nimport { ICoreLibraryDataRow } from \"./models\";\r\nimport CustomGridCell from \"../../../common/kendoGrid/CustomGridCell\";\r\nimport CommentSummaryView from \"../../../common/commentSummary/commentSummaryView\";\r\nimport ExternalLinkView from \"../../../common/externalLink/ExternalLinkView\";\r\n\r\ninterface IProps {\r\n selectionVersion: number;\r\n}\r\n\r\nexport default function Controller(props: IProps) {\r\n const userToken = useUserToken();\r\n const odataUrl = `odata/v1/public/nopims/well/PublicNopimsWells/GetCoreLibrariesForSelection(userToken=${userToken})`;\r\n\r\n const [pageSize, setPageSize] = useState(10);\r\n const initialFilter: CompositeFilterDescriptor = {\r\n logic: \"and\",\r\n filters: [\r\n {\r\n field: \"WellName\",\r\n operator: \"contains\",\r\n value: \"\",\r\n },\r\n ],\r\n };\r\n\r\n const [gridState, setGridDataState] = useState({\r\n sort: [\r\n { field: \"WellName\", dir: \"asc\" },\r\n { field: \"BoreholeName\", dir: \"asc\" },\r\n { field: \"CoreSampleType\", dir: \"asc\" },\r\n ],\r\n take: pageSize,\r\n skip: 0,\r\n filter: initialFilter,\r\n });\r\n\r\n const [filter, setFilter] = useState(initialFilter);\r\n function onFilterChange(e: FilterChangeEvent): void {\r\n setFilter(e.filter);\r\n setGridDataState({ ...gridState, filter: e.filter });\r\n }\r\n\r\n const [data, setData] = useState({ data: [], total: 0 });\r\n function onDataChange(data: DataResult): void {\r\n setData(data);\r\n }\r\n\r\n function mapDataRow(dataRow: any): ICoreLibraryDataRow {\r\n return {\r\n CoreLibraryId: dataRow.CoreLibraryId,\r\n WellId: dataRow.WellId,\r\n Uwi: dataRow.Uwi,\r\n WellName: dataRow.WellName,\r\n BoreholeId: dataRow.BoreholeId,\r\n Ubhi: dataRow.Ubhi,\r\n BoreholeName: dataRow.BoreholeName,\r\n CoreRepository: dataRow.CoreRepository,\r\n Basin: dataRow.Basin,\r\n IsOffshore: dataRow.IsOffshore,\r\n Jurisdiction: dataRow.Jurisdiction,\r\n NopimsJurisdiction: dataRow.NopimsJurisdiction,\r\n CoreSampleType: dataRow.CoreSampleType,\r\n StartDepth: dataRow.StartDepth,\r\n EndDepth: dataRow.EndDepth,\r\n ViewTypeName: dataRow.ViewTypeName,\r\n BoxTrayNumber: dataRow.BoxTrayNumber,\r\n BoxTrayCount: dataRow.BoxTrayCount,\r\n AccessionCardUrl: dataRow.AccessionCardUrl,\r\n RigReleaseDate: dataRow.RigReleaseDate ? new Date(dataRow.RigReleaseDate) : null,\r\n WellBoreholeType: dataRow.WellBoreholeType,\r\n BoreholeReason: dataRow.BoreholeReason,\r\n Comments: dataRow.Comments,\r\n };\r\n }\r\n\r\n // ensure we don't get stuck on an empty grid page\r\n useEffect(() => {\r\n if (data.data.length === 0 && data.total > 0 && gridState && gridState.skip! > 0) setGridDataState({ ...gridState, skip: 0 });\r\n }, [data, gridState]);\r\n\r\n // return\r\n return (\r\n <>\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n {userToken && (\r\n \r\n )}\r\n
\r\n {\r\n setPageSize(e.page.take);\r\n setGridDataState({ ...gridState, take: e.page.take, skip: e.page.skip });\r\n }}\r\n resizable\r\n navigatable\r\n {...gridState}\r\n data={data}\r\n onDataStateChange={(e: GridDataStateChangeEvent) => setGridDataState(e.dataState)}\r\n >\r\n \r\n \r\n \r\n \r\n \r\n \r\n (\r\n \r\n {props.dataItem.IsOffshore ? \"Y\" : \"N\"}\r\n \r\n )}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n (\r\n \r\n {props.dataItem.AccessionCardUrl && Download}\r\n \r\n )}\r\n />\r\n \r\n \r\n \r\n (\r\n \r\n \r\n \r\n )}\r\n />\r\n \r\n
\r\n \r\n );\r\n}\r\n","// framework\r\nimport { useState } from \"react\";\r\nimport { Tab, Tabs } from \"react-bootstrap\";\r\n// shell\r\nimport NopimsPageLayout from \"../shell/NopimsPageLayout\";\r\nimport { nopimsLhsNavItemEnum } from \"../shell/NopimsLhsNav\";\r\n// common\r\nimport ODataAction from \"../../common/odata/ODataAction\";\r\nimport { useUserToken } from \"../../common/shell/shellHelper\";\r\nimport SelectedItems from \"../../common/selectedItems/SelectedItems\";\r\nimport SelectedItemsHelper from \"../../common/selectedItems/SelectedItemsHelper\";\r\n// models\r\nimport { IWellSearchDataRow } from \"./wellSearch/models\";\r\n// Controller\r\nimport WellSearchController from \"./wellSearch/Controller\";\r\nimport ReportsController from \"./reports/Controller\";\r\nimport SlideAndResiduesController from \"./slidesAndResidues/Controller\";\r\nimport CoreSampleController from \"./coreSamples/Controller\";\r\n\r\nexport default function Controller(): React.JSX.Element {\r\n const userToken = useUserToken();\r\n\r\n const [selectionVersion, setSelectionVersion] = useState(1);\r\n const [selectedItems, setSelectedItems] = useState>([]);\r\n const selectedItemsHelper = new SelectedItemsHelper(\r\n selectedItems,\r\n setSelectedItems,\r\n (item1: IWellSearchDataRow, item2: IWellSearchDataRow) => item1.BoreholeId === item2.BoreholeId\r\n );\r\n\r\n const [tabKey, setTabKey] = useState(\"WellSearch\");\r\n\r\n return (\r\n \r\n setTabKey(k)}>\r\n \r\n selectedItemsHelper.TryAddAll(items)} onRemove={(item) => selectedItemsHelper.TryRemove(item)} />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n i.Ubhi + \" \" + i.BoreholeName}\r\n onItemRemoved={(i) => selectedItemsHelper.TryRemove(i)}\r\n onItemsCleared={() => selectedItemsHelper.Clear()}\r\n />\r\n\r\n {tabKey === \"WellSearch\" && (\r\n

\r\n Borehole status values published in NOPIMS have been populated based on information from various sources. Users are advised to undertake their own due diligence to determine\r\n current borehole status, please refer to the Disclaimer for more detail.\r\n

\r\n )}\r\n\r\n {userToken && (\r\n i.BoreholeId) }}\r\n onActioned={() => setSelectionVersion(selectionVersion + 1)}\r\n />\r\n )}\r\n
\r\n );\r\n}\r\n","// framework\r\nimport { useState, useEffect } from \"react\";\r\nimport { IoAddCircleOutline, IoCheckmarkCircle } from \"react-icons/io5\";\r\n// kendo\r\nimport { Grid, GridColumn, GridDataStateChangeEvent, GridPageChangeEvent } from \"@progress/kendo-react-grid\";\r\nimport { DataResult, State, CompositeFilterDescriptor } from \"@progress/kendo-data-query\";\r\nimport { NumericFilter, DateFilter, FilterChangeEvent } from \"@progress/kendo-react-data-tools\";\r\n// models\r\nimport { ISurveySearchDataRow } from \"./models\";\r\n// common\r\nimport ODataReader from \"../../../common/odata/ODataReader\";\r\nimport ODataCopyLinkButton from \"../../../common/odata/ODataCopyLinkButton\";\r\nimport * as GlobalHelpers from \"../../../common/GlobalHelpers\";\r\nimport CustomGridCell from \"../../../common/kendoGrid/CustomGridCell\";\r\nimport CommentSummaryView from \"../../../common/commentSummary/commentSummaryView\";\r\nimport GridFilter from \"../../../common/kendoGrid/GridFilter\";\r\nimport { getDateFilter, getNumericFilter, getTextFilter } from \"../../../common/kendoGrid/GridFilterOptions\";\r\nimport { TextBoxFilter } from \"../../../common/kendoGrid/GridFilterTextBoxFilter\";\r\n\r\ninterface IProps {\r\n selectedItems: Array;\r\n onAdd: (items: Array) => void;\r\n onRemove: (item: ISurveySearchDataRow) => void;\r\n}\r\n\r\nexport default function Controller(props: IProps) {\r\n const odataUrl = \"odata/v1/public/nopims/survey/PublicNopimsSurvey\";\r\n\r\n const [pageSize, setPageSize] = useState(10);\r\n const initialFilter: CompositeFilterDescriptor = {\r\n logic: \"and\",\r\n filters: [\r\n {\r\n field: \"SurveyName\",\r\n operator: \"contains\",\r\n value: \"\",\r\n },\r\n ],\r\n };\r\n\r\n const [gridState, setGridDataState] = useState({\r\n sort: [{ field: \"StartDate\", dir: \"desc\" }],\r\n take: pageSize,\r\n skip: 0,\r\n filter: initialFilter,\r\n });\r\n\r\n const [filter, setFilter] = useState(initialFilter);\r\n const onFilterChange = (event: FilterChangeEvent) => {\r\n setFilter(event.filter);\r\n setGridDataState({ ...gridState, filter: event.filter });\r\n };\r\n\r\n const [data, setData] = useState({ data: [], total: 0 });\r\n function onDataChange(data: DataResult): void {\r\n setData(data);\r\n }\r\n\r\n function mapDataRow(dataRow: any): ISurveySearchDataRow {\r\n return {\r\n SurveyId: dataRow.SurveyId,\r\n AcquisitionId: dataRow.AcquisitionId,\r\n SurveyIdentifier: dataRow.SurveyIdentifier,\r\n SurveyName: dataRow.SurveyName,\r\n AcquisitionIdentifier: dataRow.AcquisitionIdentifier,\r\n AcquisitionName: dataRow.AcquisitionName,\r\n Alias: dataRow.Alias,\r\n SurveyType: dataRow.SurveyType,\r\n StartDate: dataRow.StartDate ? new Date(dataRow.StartDate) : null,\r\n EndDate: dataRow.EndDate ? new Date(dataRow.EndDate) : null,\r\n SurveyOperator: dataRow.SurveyOperator,\r\n AcquisitionContractor: dataRow.AcquisitionContractor,\r\n Basins: dataRow.Basins,\r\n Terrain: dataRow.Terrain,\r\n BasicRelevantDate: dataRow.BasicRelevantDate ? new Date(dataRow.BasicRelevantDate) : null,\r\n InterpretativeRelevantDate: dataRow.InterpretativeRelevantDate ? new Date(dataRow.InterpretativeRelevantDate) : null,\r\n BasicReleaseDate: dataRow.BasicReleaseDate ? new Date(dataRow.BasicReleaseDate) : null,\r\n InterpretativeReleaseDate: dataRow.InterpretativeReleaseDate ? new Date(dataRow.InterpretativeReleaseDate) : null,\r\n Titles: dataRow.Titles,\r\n NopimsLegislation: dataRow.NopimsLegislation,\r\n TotalLineLength: dataRow.TotalLineLength,\r\n AreaSqKm: dataRow.AreaSqKm,\r\n ExclusivityStatus: dataRow.ExclusivityStatus,\r\n Vessel: dataRow.Vessel,\r\n Comments: dataRow.Comments,\r\n Subset2DRelevantDate: dataRow.Subset2DreleaseDate ? new Date(dataRow.Subset2DrelevantDate) : null,\r\n Subset2DReleaseDate: dataRow.Subset2DreleaseDate ? new Date(dataRow.Subset2DreleaseDate) : null,\r\n };\r\n }\r\n\r\n useEffect(() => {\r\n if (data.data.length === 0 && data.total > 0 && gridState && gridState.skip! > 0) setGridDataState({ ...gridState, skip: 0 });\r\n }, [data, gridState]);\r\n\r\n // return\r\n return (\r\n <>\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n {\r\n setPageSize(e.page.take);\r\n setGridDataState({ ...gridState, take: e.page.take, skip: e.page.skip });\r\n }}\r\n resizable\r\n navigatable\r\n {...gridState}\r\n data={data}\r\n onDataStateChange={(e: GridDataStateChangeEvent) => setGridDataState(e.dataState)}\r\n >\r\n (\r\n props.onAdd(data.data)}\r\n >\r\n \r\n \r\n )}\r\n cell={(gridCellProps) => (\r\n \r\n {!props.selectedItems.find((i) => i.AcquisitionId === (gridCellProps.dataItem as ISurveySearchDataRow).AcquisitionId) ? (\r\n props.onAdd([gridCellProps.dataItem])}\r\n >\r\n \r\n \r\n ) : (\r\n props.onRemove(gridCellProps.dataItem)}\r\n >\r\n \r\n \r\n )}\r\n \r\n )}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n (\r\n \r\n \r\n \r\n )}\r\n />\r\n \r\n \r\n \r\n
\r\n \r\n );\r\n}\r\n","// framework\r\nimport { useState, useEffect } from \"react\";\r\nimport { useDispatch } from \"react-redux\";\r\nimport { BsBasket3Fill } from \"react-icons/bs\";\r\n// kendo\r\nimport { DataResult, State } from \"@progress/kendo-data-query\";\r\nimport { CompositeFilterDescriptor } from \"@progress/kendo-data-query\";\r\nimport { Grid, GridColumn, GridDataStateChangeEvent, GridPageChangeEvent } from \"@progress/kendo-react-grid\";\r\nimport { FilterChangeEvent } from \"@progress/kendo-react-data-tools\";\r\n// common\r\nimport ODataReader from \"../../../common/odata/ODataReader\";\r\nimport ODataCopyLinkButton from \"../../../common/odata/ODataCopyLinkButton\";\r\nimport CustomGridCell from \"../../../common/kendoGrid/CustomGridCell\";\r\nimport { useUserToken } from \"../../../common/shell/shellHelper\";\r\nimport * as GlobalHelpers from \"../../../common/GlobalHelpers\";\r\nimport ExternalLinkView from \"../../../common/externalLink/ExternalLinkView\";\r\nimport DownloadLinkView from \"../../../common/externalLink/DownloadLinkView\";\r\nimport GridFilter from \"../../../common/kendoGrid/GridFilter\";\r\nimport { getTextFilter } from \"../../../common/kendoGrid/GridFilterOptions\";\r\nimport { TextBoxFilter } from \"../../../common/kendoGrid/GridFilterTextBoxFilter\";\r\n// basket\r\nimport * as Actions from \"../../basket/redux/actions\";\r\nimport { useNopimsBasket } from \"../../basket/redux/reducers\";\r\nimport { NopimsBasketItemModel } from \"../../basket/redux/model\";\r\n// models\r\nimport { IReportDataRow } from \"./models\";\r\n\r\ninterface IProps {\r\n selectionVersion: number;\r\n}\r\n\r\nexport default function Controller(props: IProps) {\r\n const userToken = useUserToken();\r\n const odataUrl = `odata/v1/public/nopims/survey/PublicNopimsSurvey/GetReportsForSelection(userToken=${userToken})`;\r\n const nopimsBasketModel = useNopimsBasket();\r\n const dispatch = useDispatch();\r\n\r\n const [pageSize, setPageSize] = useState(10);\r\n const initialFilter: CompositeFilterDescriptor = {\r\n logic: \"and\",\r\n filters: [\r\n {\r\n field: \"SurveyName\",\r\n operator: \"contains\",\r\n value: \"\",\r\n },\r\n ],\r\n };\r\n\r\n const [gridState, setGridDataState] = useState({\r\n sort: [\r\n { field: \"SurveyName\", dir: \"asc\" },\r\n { field: \"AcquisitionName\", dir: \"asc\" },\r\n { field: \"ReportTitle\", dir: \"asc\" },\r\n ],\r\n take: pageSize,\r\n skip: 0,\r\n filter: initialFilter,\r\n });\r\n\r\n const [filter, setFilter] = useState(initialFilter);\r\n function onFilterChange(e: FilterChangeEvent): void {\r\n setFilter(e.filter);\r\n setGridDataState({ ...gridState, filter: e.filter });\r\n }\r\n\r\n const [data, setData] = useState({ data: [], total: 0 });\r\n function onDataChange(data: DataResult): void {\r\n setData(data);\r\n }\r\n\r\n function mapDataRow(dataRow: any): IReportDataRow {\r\n return dataRow;\r\n }\r\n\r\n // ensure we don't get stuck on an empty grid page\r\n useEffect(() => {\r\n if (data.data.length === 0 && data.total > 0 && gridState && gridState.skip! > 0) setGridDataState({ ...gridState, skip: 0 });\r\n }, [data, gridState]);\r\n\r\n function onBasketAddAll(): void {\r\n dispatch(\r\n Actions.itemsAdded(data.data.map((i: IReportDataRow) => new NopimsBasketItemModel(i.ReportTitle ?? ``, i.ReportId, undefined, undefined, i.AcquisitionId, undefined, i.ReportItemId)))\r\n );\r\n }\r\n\r\n function onBasketAdd(item: IReportDataRow): void {\r\n dispatch(Actions.itemsAdded([new NopimsBasketItemModel(item.ReportTitle ?? ``, item.ReportId, undefined, undefined, item.AcquisitionId, undefined, item.ReportItemId)]));\r\n }\r\n\r\n // return\r\n return (\r\n <>\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n {userToken && (\r\n \r\n )}\r\n
\r\n {\r\n setPageSize(e.page.take);\r\n setGridDataState({ ...gridState, take: e.page.take, skip: e.page.skip });\r\n }}\r\n resizable\r\n navigatable\r\n {...gridState}\r\n data={data}\r\n onDataStateChange={(e: GridDataStateChangeEvent) => setGridDataState(e.dataState)}\r\n >\r\n (\r\n \r\n )}\r\n title=\"Basket\"\r\n cell={(gridCellProps) => (\r\n \r\n {nopimsBasketModel.items.every((i) => i.reportId !== gridCellProps.dataItem.ReportId) && (\r\n onBasketAdd(gridCellProps.dataItem)}\r\n >\r\n \r\n \r\n )}\r\n \r\n )}\r\n />\r\n\r\n (\r\n \r\n {props.dataItem.AttachmentManifestUrl && Listing}\r\n \r\n )}\r\n />\r\n (\r\n \r\n {props.dataItem.AttachmentArchiveUrl && {props.dataItem.AttachmentArchiveFileName}}\r\n \r\n )}\r\n />\r\n (\r\n \r\n {props.dataItem.AttachmentArchiveFileSize && GlobalHelpers.convertBytesToString(props.dataItem.AttachmentArchiveFileSize)}\r\n \r\n )}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n );\r\n}\r\n","// framework\r\nimport { useState, useEffect } from \"react\";\r\nimport { useDispatch } from \"react-redux\";\r\nimport { BsBasket3Fill } from \"react-icons/bs\";\r\n// kendo\r\nimport { DataResult, State } from \"@progress/kendo-data-query\";\r\nimport { CompositeFilterDescriptor } from \"@progress/kendo-data-query\";\r\nimport { Grid, GridColumn, GridDataStateChangeEvent, GridPageChangeEvent } from \"@progress/kendo-react-grid\";\r\nimport { FilterChangeEvent } from \"@progress/kendo-react-data-tools\";\r\n// common\r\nimport ODataReader from \"../../../common/odata/ODataReader\";\r\nimport ODataCopyLinkButton from \"../../../common/odata/ODataCopyLinkButton\";\r\nimport { useUserToken } from \"../../../common/shell/shellHelper\";\r\nimport * as GlobalHelpers from \"../../../common/GlobalHelpers\";\r\nimport GridFilter from \"../../../common/kendoGrid/GridFilter\";\r\nimport { getTextFilter } from \"../../../common/kendoGrid/GridFilterOptions\";\r\nimport CustomGridCell from \"../../../common/kendoGrid/CustomGridCell\";\r\nimport ExternalLinkView from \"../../../common/externalLink/ExternalLinkView\";\r\nimport DownloadLinkView from \"../../../common/externalLink/DownloadLinkView\";\r\nimport { TextBoxFilter } from \"../../../common/kendoGrid/GridFilterTextBoxFilter\";\r\n// basket\r\nimport * as Actions from \"../../basket/redux/actions\";\r\nimport { useNopimsBasket } from \"../../basket/redux/reducers\";\r\nimport { NopimsBasketItemModel } from \"../../basket/redux/model\";\r\n// models\r\nimport { ISurveyDataDataRow } from \"./models\";\r\n\r\ninterface IProps {\r\n selectionVersion: number;\r\n}\r\n\r\nexport default function Controller(props: IProps) {\r\n const userToken = useUserToken();\r\n const odataUrl = `odata/v1/public/nopims/survey/PublicNopimsSurvey/GetSurveyDataForSelection(userToken=${userToken})`;\r\n const nopimsBasketModel = useNopimsBasket();\r\n const dispatch = useDispatch();\r\n\r\n const [pageSize, setPageSize] = useState(10);\r\n const initialFilter: CompositeFilterDescriptor = {\r\n logic: \"and\",\r\n filters: [\r\n {\r\n field: \"DataDescription\",\r\n operator: \"contains\",\r\n value: \"\",\r\n },\r\n ],\r\n };\r\n\r\n const [gridState, setGridDataState] = useState({\r\n sort: [\r\n { field: \"SurveyName\", dir: \"asc\" },\r\n { field: \"AcquisitionName\", dir: \"asc\" },\r\n { field: \"ItemId\", dir: \"asc\" },\r\n ],\r\n take: pageSize,\r\n skip: 0,\r\n filter: initialFilter,\r\n });\r\n\r\n const [filter, setFilter] = useState(initialFilter);\r\n function onFilterChange(e: FilterChangeEvent): void {\r\n setFilter(e.filter);\r\n setGridDataState({ ...gridState, filter: e.filter });\r\n }\r\n\r\n const [data, setData] = useState({ data: [], total: 0 });\r\n function onDataChange(data: DataResult): void {\r\n setData(data);\r\n }\r\n\r\n function mapDataRow(dataRow: any): ISurveyDataDataRow {\r\n return dataRow;\r\n }\r\n\r\n // ensure we don't get stuck on an empty grid page\r\n useEffect(() => {\r\n if (data.data.length === 0 && data.total > 0 && gridState && gridState.skip! > 0) setGridDataState({ ...gridState, skip: 0 });\r\n }, [data, gridState]);\r\n\r\n function onBasketAddAll(): void {\r\n dispatch(\r\n Actions.itemsAdded(data.data.map((item) => new NopimsBasketItemModel(item.DataDescription ?? ``, undefined, item.SurveyDataId, undefined, item.AcquisitionId, undefined, item.ItemId)))\r\n );\r\n }\r\n\r\n function onBasketAdd(item: ISurveyDataDataRow): void {\r\n dispatch(Actions.itemsAdded([new NopimsBasketItemModel(item.DataDescription ?? ``, undefined, item.SurveyDataId, undefined, item.AcquisitionId, undefined, item.ItemId)]));\r\n }\r\n\r\n // return\r\n return (\r\n <>\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n {userToken && (\r\n \r\n )}\r\n
\r\n {\r\n setPageSize(e.page.take);\r\n setGridDataState({ ...gridState, take: e.page.take, skip: e.page.skip });\r\n }}\r\n resizable\r\n navigatable\r\n {...gridState}\r\n data={data}\r\n onDataStateChange={(e: GridDataStateChangeEvent) => setGridDataState(e.dataState)}\r\n >\r\n (\r\n \r\n )}\r\n title=\"Basket\"\r\n cell={(gridCellProps) => (\r\n \r\n {nopimsBasketModel.items.every((i) => i.surveyDataId !== gridCellProps.dataItem.SurveyDataId) && (\r\n onBasketAdd(gridCellProps.dataItem)}\r\n >\r\n \r\n \r\n )}\r\n \r\n )}\r\n />\r\n (\r\n \r\n {props.dataItem.AttachmentManifestUrl && Listing}\r\n \r\n )}\r\n />\r\n (\r\n \r\n {props.dataItem.AttachmentArchiveUrl && {props.dataItem.AttachmentArchiveFileName}}\r\n \r\n )}\r\n />\r\n (\r\n \r\n {props.dataItem.AttachmentArchiveFileSize && GlobalHelpers.convertBytesToString(props.dataItem.AttachmentArchiveFileSize)}\r\n \r\n )}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n );\r\n}\r\n","// framework\r\nimport { useState, useEffect } from \"react\";\r\n// kendo\r\nimport { DataResult, State } from \"@progress/kendo-data-query\";\r\nimport { CompositeFilterDescriptor } from \"@progress/kendo-data-query\";\r\nimport { Grid, GridColumn, GridDataStateChangeEvent, GridPageChangeEvent } from \"@progress/kendo-react-grid\";\r\nimport { FilterChangeEvent, NumericFilter } from \"@progress/kendo-react-data-tools\";\r\n// common\r\nimport ODataReader from \"../../../common/odata/ODataReader\";\r\nimport ODataCopyLinkButton from \"../../../common/odata/ODataCopyLinkButton\";\r\nimport { useUserToken } from \"../../../common/shell/shellHelper\";\r\nimport GridFilter from \"../../../common/kendoGrid/GridFilter\";\r\nimport { getNumericFilter, getTextFilter } from \"../../../common/kendoGrid/GridFilterOptions\";\r\nimport { TextBoxFilter } from \"../../../common/kendoGrid/GridFilterTextBoxFilter\";\r\n// models\r\nimport { ISeismicLineDataRow } from \"./models\";\r\n\r\ninterface IProps {\r\n selectionVersion: number;\r\n}\r\n\r\nexport default function Controller(props: IProps) {\r\n const userToken = useUserToken();\r\n const odataUrl = `odata/v1/public/nopims/survey/PublicNopimsSurvey/GetSeismicLinesForSelection(userToken=${userToken})`;\r\n\r\n const [pageSize, setPageSize] = useState(10);\r\n const initialFilter: CompositeFilterDescriptor = {\r\n logic: \"and\",\r\n filters: [\r\n {\r\n field: \"SurveyName\",\r\n operator: \"contains\",\r\n value: \"\",\r\n },\r\n ],\r\n };\r\n\r\n const [gridState, setGridDataState] = useState({\r\n sort: [\r\n { field: \"SurveyName\", dir: \"asc\" },\r\n { field: \"AcquisitionName\", dir: \"asc\" },\r\n { field: \"LineName\", dir: \"asc\" },\r\n ],\r\n take: pageSize,\r\n skip: 0,\r\n filter: initialFilter,\r\n });\r\n\r\n const [filter, setFilter] = useState(initialFilter);\r\n function onFilterChange(e: FilterChangeEvent): void {\r\n setFilter(e.filter);\r\n setGridDataState({ ...gridState, filter: e.filter });\r\n }\r\n\r\n const [data, setData] = useState({ data: [], total: 0 });\r\n function onDataChange(data: DataResult): void {\r\n setData(data);\r\n }\r\n\r\n function mapDataRow(dataRow: any): ISeismicLineDataRow {\r\n return dataRow;\r\n }\r\n\r\n // ensure we don't get stuck on an empty grid page\r\n useEffect(() => {\r\n if (data.data.length === 0 && data.total > 0 && gridState && gridState.skip! > 0) setGridDataState({ ...gridState, skip: 0 });\r\n }, [data, gridState]);\r\n\r\n // return\r\n return (\r\n <>\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n {userToken && (\r\n \r\n )}\r\n\r\n
\r\n {\r\n setPageSize(e.page.take);\r\n setGridDataState({ ...gridState, take: e.page.take, skip: e.page.skip });\r\n }}\r\n resizable\r\n navigatable\r\n {...gridState}\r\n data={data}\r\n onDataStateChange={(e: GridDataStateChangeEvent) => setGridDataState(e.dataState)}\r\n >\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n );\r\n}\r\n","// framework\r\nimport { useState } from \"react\";\r\nimport { Tab, Tabs } from \"react-bootstrap\";\r\n// shell\r\nimport NopimsPageLayout from \"../shell/NopimsPageLayout\";\r\nimport { nopimsLhsNavItemEnum } from \"../shell/NopimsLhsNav\";\r\n// common\r\nimport ODataAction from \"../../common/odata/ODataAction\";\r\nimport { useUserToken } from \"../../common/shell/shellHelper\";\r\nimport SelectedItems from \"../../common/selectedItems/SelectedItems\";\r\nimport SelectedItemsHelper from \"../../common/selectedItems/SelectedItemsHelper\";\r\n// models\r\nimport { ISurveySearchDataRow } from \"./surveySearch/models\";\r\n// Controller\r\nimport SurveySearchController from \"./surveySearch/Controller\";\r\nimport ReportsController from \"./reports/Controller\";\r\nimport SurveyDataController from \"./surveyData/Controller\";\r\nimport SeismicLinesController from \"./seismicLines/Controller\";\r\n\r\nexport default function Controller(): React.JSX.Element {\r\n const userToken = useUserToken();\r\n\r\n const [selectionVersion, setSelectionVersion] = useState(1);\r\n const [selectedItems, setSelectedItems] = useState>([]);\r\n const selectedItemsHelper = new SelectedItemsHelper(\r\n selectedItems,\r\n setSelectedItems,\r\n (item1: ISurveySearchDataRow, item2: ISurveySearchDataRow) => item1.AcquisitionId === item2.AcquisitionId\r\n );\r\n\r\n return (\r\n \r\n \r\n \r\n selectedItemsHelper.TryAddAll(items)} onRemove={(item) => selectedItemsHelper.TryRemove(item)} />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n i.AcquisitionIdentifier + \" \" + i.AcquisitionName}\r\n onItemRemoved={(i) => selectedItemsHelper.TryRemove(i)}\r\n onItemsCleared={() => selectedItemsHelper.Clear()}\r\n />\r\n {userToken && (\r\n i.AcquisitionId) }}\r\n onActioned={() => setSelectionVersion(selectionVersion + 1)}\r\n />\r\n )}\r\n \r\n );\r\n}\r\n","import { Dialog } from \"@progress/kendo-react-dialogs\";\r\nimport { ReactElement, useState } from \"react\";\r\nimport { ControlClass } from \"../forms/BootstrapForms\";\r\nimport bootstrapFormsStyles from \"../../common/forms/BootstrapForms.module.css\";\r\n\r\nexport enum Orientation {\r\n Horizontal,\r\n Vertical,\r\n}\r\n\r\nexport interface IListSummaryChild {\r\n /** The element shown in the grid. */\r\n displayElement: ReactElement;\r\n /** Optional - The elements shown in the detailed view pop up. When not provided, the displayElement will be shown instead. */\r\n popupDisplayElement?: ReactElement;\r\n}\r\n\r\nexport interface IListSummaryViewProps {\r\n /** Title used in the details pop up */\r\n title: string;\r\n\r\n /** The full list of child elements */\r\n children: IListSummaryChild[];\r\n\r\n /** Optional - Sets the delimiter placed between list items when displaying them in the summary and horizontal view. Defaults to \", \". */\r\n listDelimiter?: string;\r\n\r\n /** Optional - Sets the maximum number of items to be displayed in the summary. Defaults to 5. */\r\n maxChildrenDisplayCount?: number;\r\n\r\n /** Optional - Determines how the list of items are displayed when the user requests to view more detail. Defaults to Vertical. */\r\n popupListOrientation?: Orientation;\r\n\r\n /** Optional - When true then the control fills the parent container it's rendered in. Otherwise, it just takes as much space as it requires*/\r\n fill?: boolean;\r\n}\r\n\r\nexport default function ListSummaryView(props: IListSummaryViewProps) {\r\n const { title, children } = props;\r\n\r\n const [showDetailsDialog, setShowDetailsDialog] = useState(false);\r\n\r\n // Default to Vertical if value has not been provided.\r\n const popupListOrientation = props.popupListOrientation ?? Orientation.Vertical;\r\n // Default to 5 if it has not been provided.\r\n const maxChildrenDisplayCount = props.maxChildrenDisplayCount ?? 5;\r\n // Default to ',' if it has not been provided.\r\n const listDelimiter = props.listDelimiter ?? \", \";\r\n // Default to true if it has not been provided.\r\n const fill = props.fill ?? true;\r\n\r\n // Determine the number of children elements to display\r\n const truncateChildrenToDisplay = children && children.length > maxChildrenDisplayCount;\r\n const childrenToDisplay = truncateChildrenToDisplay ? children.slice(0, maxChildrenDisplayCount) : children;\r\n\r\n function handleMoreClick() {\r\n setShowDetailsDialog(true);\r\n }\r\n\r\n function onCloseDetailsDialog() {\r\n setShowDetailsDialog(false);\r\n }\r\n\r\n function generateHorizontalItems(children: IListSummaryChild[]): ReactElement {\r\n return (\r\n
    \r\n {children.map((item: IListSummaryChild, index: number) => (\r\n
  • \r\n {item.popupDisplayElement ?? item.displayElement}\r\n {index < children.length - 1 && <>{listDelimiter}}\r\n
  • \r\n ))}\r\n
\r\n );\r\n }\r\n\r\n function generateVerticalItems(children: IListSummaryChild[]): ReactElement[] {\r\n return children.map((item: IListSummaryChild) => (\r\n
\r\n {item.popupDisplayElement ?? item.displayElement}\r\n
\r\n ));\r\n }\r\n\r\n function displayMoreButton(): boolean {\r\n // Show the 'More' button if there's more items to show or a detailed items list has been provided. This is to cover the scenario where the children list is less than the maxSummaryListCount\r\n // but the children list item name have been truncated to fit in the grid. In that scenario, with out the 'More' appearing, the user never be able to see the full list item details.\r\n return truncateChildrenToDisplay || childrenToDisplay.some((i) => i.popupDisplayElement);\r\n }\r\n\r\n return (\r\n
\r\n
\r\n {childrenToDisplay.map((item: IListSummaryChild, index: number) => (\r\n \r\n {index > 0 && <>{listDelimiter}}\r\n {item.displayElement}\r\n \r\n ))}\r\n {truncateChildrenToDisplay && {listDelimiter}…}\r\n {!fill && displayMoreButton() && (\r\n \r\n )}\r\n
\r\n {fill && displayMoreButton() && (\r\n
\r\n \r\n
\r\n )}\r\n {showDetailsDialog && (\r\n \r\n
\r\n \r\n {popupListOrientation === Orientation.Horizontal && generateHorizontalItems(children)}\r\n {popupListOrientation === Orientation.Vertical && generateVerticalItems(children)}\r\n \r\n
\r\n
\r\n )}\r\n
\r\n );\r\n}\r\n","// framework\r\nimport { useState, useEffect, ReactElement } from \"react\";\r\nimport { IoAddCircleOutline, IoCheckmarkCircle } from \"react-icons/io5\";\r\n// kendo\r\nimport { Grid, GridColumn, GridDataStateChangeEvent, GridPageChangeEvent } from \"@progress/kendo-react-grid\";\r\nimport { DataResult, State, CompositeFilterDescriptor } from \"@progress/kendo-data-query\";\r\nimport { DateFilter, FilterChangeEvent } from \"@progress/kendo-react-data-tools\";\r\n// models\r\nimport { IReprocessingSearchDataRow } from \"./models\";\r\n// common\r\nimport ODataReader from \"../../../common/odata/ODataReader\";\r\nimport ODataCopyLinkButton from \"../../../common/odata/ODataCopyLinkButton\";\r\nimport * as GlobalHelpers from \"../../../common/GlobalHelpers\";\r\nimport CustomGridCell from \"../../../common/kendoGrid/CustomGridCell\";\r\nimport ListSummaryView from \"../../../common/listSummary/listSummaryView\";\r\nimport CommentSummaryView from \"../../../common/commentSummary/commentSummaryView\";\r\nimport * as StringHelper from \"../../../common/stringHelper\";\r\nimport GridFilter from \"../../../common/kendoGrid/GridFilter\";\r\nimport { getDateFilter, getTextFilter } from \"../../../common/kendoGrid/GridFilterOptions\";\r\nimport { TextBoxFilter } from \"../../../common/kendoGrid/GridFilterTextBoxFilter\";\r\n\r\ninterface IProps {\r\n selectedItems: Array;\r\n onAdd: (items: Array) => void;\r\n onRemove: (item: IReprocessingSearchDataRow) => void;\r\n}\r\n\r\nexport default function Controller(props: IProps) {\r\n const odataUrl = \"odata/v1/public/nopims/reprocessing/PublicNopimsReprocessings\";\r\n\r\n const [pageSize, setPageSize] = useState(10);\r\n const maxTextLength = 100;\r\n const initialFilter: CompositeFilterDescriptor = {\r\n logic: \"and\",\r\n filters: [\r\n {\r\n field: \"ReprocessingName\",\r\n operator: \"contains\",\r\n value: \"\",\r\n },\r\n ],\r\n };\r\n\r\n const [gridState, setGridDataState] = useState({\r\n sort: [{ field: \"BasicReleaseDate\", dir: \"desc\" }],\r\n take: pageSize,\r\n skip: 0,\r\n filter: initialFilter,\r\n });\r\n\r\n const [filter, setFilter] = useState(initialFilter);\r\n const onFilterChange = (event: FilterChangeEvent) => {\r\n setFilter(event.filter);\r\n setGridDataState({ ...gridState, filter: event.filter });\r\n };\r\n\r\n const [data, setData] = useState({ data: [], total: 0 });\r\n function onDataChange(data: DataResult): void {\r\n setData(data);\r\n }\r\n\r\n function mapDataRow(dataRow: any): IReprocessingSearchDataRow {\r\n return {\r\n ReprocessingProjectId: dataRow.ReprocessingProjectId,\r\n ReprocessingProjectIdentifier: dataRow.ReprocessingProjectIdentifier,\r\n ReprocessingProjectName: dataRow.ReprocessingProjectName,\r\n ReprocessingId: dataRow.ReprocessingId,\r\n ReprocessingIdentifier: dataRow.ReprocessingIdentifier,\r\n ReprocessingName: dataRow.ReprocessingName,\r\n AcquisitionAliases: dataRow.AcquisitionAliases,\r\n ReprocessingOperator: dataRow.ReprocessingOperator,\r\n ReprocessingType: dataRow.ReprocessingType,\r\n BasicRelevantDate: dataRow.BasicRelevantDate ? new Date(dataRow.BasicRelevantDate) : null,\r\n InterpretativeRelevantDate: dataRow.InterpretativeRelevantDate ? new Date(dataRow.InterpretativeRelevantDate) : null,\r\n BasicReleaseDate: dataRow.BasicReleaseDate ? new Date(dataRow.BasicReleaseDate) : null,\r\n InterpretativeReleaseDate: dataRow.InterpretativeReleaseDate ? new Date(dataRow.InterpretativeReleaseDate) : null,\r\n RelatedAcquisitions: dataRow.RelatedAcquisitions,\r\n RelatedBasins: dataRow.RelatedBasins,\r\n RelatedTitles: dataRow.RelatedTitles,\r\n Comments: dataRow.Comments,\r\n };\r\n }\r\n\r\n // ensure we don't get stuck on an empty grid page\r\n useEffect(() => {\r\n if (data.data.length === 0 && data.total > 0 && gridState && gridState.skip! > 0) setGridDataState({ ...gridState, skip: 0 });\r\n }, [data, gridState]);\r\n\r\n function compare(a: string, b: string): number {\r\n return a! < b! ? -1 : 1;\r\n }\r\n\r\n function generateListSummaryViewChild(name: string, truncatedDisplayName?: string): ReactElement {\r\n return {truncatedDisplayName ?? name};\r\n }\r\n\r\n // return\r\n return (\r\n <>\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n {\r\n setPageSize(e.page.take);\r\n setGridDataState({ ...gridState, take: e.page.take, skip: e.page.skip });\r\n }}\r\n resizable\r\n navigatable\r\n {...gridState}\r\n data={data}\r\n onDataStateChange={(e: GridDataStateChangeEvent) => setGridDataState(e.dataState)}\r\n >\r\n (\r\n props.onAdd(data.data)}\r\n title={`Click to add all Projects on this page to the Selected Projects.`}\r\n >\r\n \r\n \r\n )}\r\n cell={(gridCellProps) => (\r\n \r\n {!props.selectedItems.find((i) => i.ReprocessingProjectId === (gridCellProps.dataItem as IReprocessingSearchDataRow).ReprocessingProjectId) ? (\r\n props.onAdd([gridCellProps.dataItem])}\r\n title=\"Click to add this Project to the Selected Projects.\"\r\n >\r\n \r\n \r\n ) : (\r\n props.onRemove(gridCellProps.dataItem)}\r\n title=\"Click to remove this Project from the Selected Projects.\"\r\n >\r\n \r\n \r\n )}\r\n \r\n )}\r\n />\r\n \r\n \r\n \r\n \r\n (\r\n \r\n {props.dataItem.RelatedAcquisitions && (\r\n \r\n acquisition!.length <= maxTextLength\r\n ? { displayElement: generateListSummaryViewChild(acquisition) }\r\n : {\r\n displayElement: generateListSummaryViewChild(acquisition, StringHelper.truncate(acquisition!, maxTextLength)),\r\n popupDisplayElement: generateListSummaryViewChild(acquisition),\r\n }\r\n )}\r\n title=\"Acquisitions\"\r\n >\r\n )}\r\n \r\n )}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n (\r\n \r\n {props.dataItem.AcquisitionAliases && (\r\n \r\n alias!.length <= maxTextLength\r\n ? { displayElement: generateListSummaryViewChild(alias) }\r\n : {\r\n displayElement: generateListSummaryViewChild(alias, StringHelper.truncate(alias!, maxTextLength)),\r\n popupDisplayElement: generateListSummaryViewChild(alias),\r\n }\r\n )}\r\n title=\"Acquisition Aliases\"\r\n >\r\n )}\r\n \r\n )}\r\n />\r\n (\r\n \r\n {props.dataItem.RelatedTitles && (\r\n \r\n acquisition!.length <= maxTextLength\r\n ? { displayElement: generateListSummaryViewChild(acquisition) }\r\n : {\r\n displayElement: generateListSummaryViewChild(acquisition, StringHelper.truncate(acquisition!, maxTextLength)),\r\n popupDisplayElement: generateListSummaryViewChild(acquisition),\r\n }\r\n )}\r\n title=\"Titles\"\r\n >\r\n )}\r\n \r\n )}\r\n />\r\n (\r\n \r\n {props.dataItem.RelatedBasins && (\r\n \r\n acquisition!.length <= maxTextLength\r\n ? { displayElement: generateListSummaryViewChild(acquisition) }\r\n : {\r\n displayElement: generateListSummaryViewChild(acquisition, StringHelper.truncate(acquisition!, maxTextLength)),\r\n popupDisplayElement: generateListSummaryViewChild(acquisition),\r\n }\r\n )}\r\n title=\"Basins\"\r\n >\r\n )}\r\n \r\n )}\r\n />\r\n (\r\n \r\n \r\n \r\n )}\r\n />\r\n \r\n
\r\n \r\n );\r\n}\r\n","// framework\r\nimport { useState, useEffect } from \"react\";\r\nimport { useDispatch } from \"react-redux\";\r\nimport { BsBasket3Fill } from \"react-icons/bs\";\r\n// kendo\r\nimport { DataResult, State } from \"@progress/kendo-data-query\";\r\nimport { CompositeFilterDescriptor } from \"@progress/kendo-data-query\";\r\nimport { Grid, GridColumn, GridDataStateChangeEvent, GridPageChangeEvent } from \"@progress/kendo-react-grid\";\r\nimport { FilterChangeEvent } from \"@progress/kendo-react-data-tools\";\r\n// common\r\nimport ODataReader from \"../../../common/odata/ODataReader\";\r\nimport ODataCopyLinkButton from \"../../../common/odata/ODataCopyLinkButton\";\r\nimport CustomGridCell from \"../../../common/kendoGrid/CustomGridCell\";\r\nimport { useUserToken } from \"../../../common/shell/shellHelper\";\r\nimport * as GlobalHelpers from \"../../../common/GlobalHelpers\";\r\nimport ExternalLinkView from \"../../../common/externalLink/ExternalLinkView\";\r\nimport GridFilter from \"../../../common/kendoGrid/GridFilter\";\r\nimport { getTextFilter } from \"../../../common/kendoGrid/GridFilterOptions\";\r\nimport { TextBoxFilter } from \"../../../common/kendoGrid/GridFilterTextBoxFilter\";\r\n// basket\r\nimport * as Actions from \"../../basket/redux/actions\";\r\nimport { useNopimsBasket } from \"../../basket/redux/reducers\";\r\nimport { NopimsBasketItemModel } from \"../../basket/redux/model\";\r\n// models\r\nimport { IReportDataRow } from \"./models\";\r\n\r\ninterface IProps {\r\n selectionVersion: number;\r\n}\r\n\r\nexport default function Controller(props: IProps) {\r\n const userToken = useUserToken();\r\n const odataUrl = `odata/v1/public/nopims/reprocessing/PublicNopimsReprocessings/GetReportsForSelection(userToken=${userToken})`;\r\n const nopimsBasketModel = useNopimsBasket();\r\n const dispatch = useDispatch();\r\n\r\n const [pageSize, setPageSize] = useState(10);\r\n const initialFilter: CompositeFilterDescriptor = {\r\n logic: \"and\",\r\n filters: [\r\n {\r\n field: \"ReprocessingName\",\r\n operator: \"contains\",\r\n value: \"\",\r\n },\r\n ],\r\n };\r\n\r\n const [gridState, setGridDataState] = useState({\r\n sort: [\r\n { field: \"ReprocessingName\", dir: \"asc\" },\r\n { field: \"ReprocessingProjectName\", dir: \"asc\" },\r\n { field: \"ReportTitle\", dir: \"asc\" },\r\n ],\r\n take: pageSize,\r\n skip: 0,\r\n filter: initialFilter,\r\n });\r\n\r\n const [filter, setFilter] = useState(initialFilter);\r\n function onFilterChange(e: FilterChangeEvent): void {\r\n setFilter(e.filter);\r\n setGridDataState({ ...gridState, filter: e.filter });\r\n }\r\n\r\n const [data, setData] = useState({ data: [], total: 0 });\r\n function onDataChange(data: DataResult): void {\r\n setData(data);\r\n }\r\n\r\n function mapDataRow(dataRow: any): IReportDataRow {\r\n return dataRow;\r\n }\r\n\r\n // ensure we don't get stuck on an empty grid page\r\n useEffect(() => {\r\n if (data.data.length === 0 && data.total > 0 && gridState && gridState.skip! > 0) setGridDataState({ ...gridState, skip: 0 });\r\n }, [data, gridState]);\r\n\r\n function onBasketAddAll(): void {\r\n dispatch(Actions.itemsAdded(data.data.map((i) => new NopimsBasketItemModel(i.ReportTitle ?? i.ReportItemId, i.ReportId, undefined, undefined, undefined, i.ReprocessingProjectId))));\r\n }\r\n\r\n function onBasketAdd(item: IReportDataRow): void {\r\n dispatch(Actions.itemsAdded([new NopimsBasketItemModel(item.ReportTitle ?? item.ReportItemId, item.ReportId, undefined, undefined, undefined, item.ReprocessingProjectId)]));\r\n }\r\n\r\n return (\r\n <>\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n {userToken && (\r\n \r\n )}\r\n
\r\n {\r\n setPageSize(e.page.take);\r\n setGridDataState({ ...gridState, take: e.page.take, skip: e.page.skip });\r\n }}\r\n resizable\r\n navigatable\r\n {...gridState}\r\n data={data}\r\n onDataStateChange={(e: GridDataStateChangeEvent) => setGridDataState(e.dataState)}\r\n >\r\n (\r\n \r\n )}\r\n title=\"Basket\"\r\n cell={(gridCellProps) => (\r\n \r\n {nopimsBasketModel.items.every((i) => i.reportId !== gridCellProps.dataItem.ReportId) && (\r\n onBasketAdd(gridCellProps.dataItem)}\r\n title=\"Click to add this Report to the Basket.\"\r\n >\r\n \r\n \r\n )}\r\n \r\n )}\r\n />\r\n\r\n (\r\n \r\n {props.dataItem.AttachmentManifestUrl && Listing}\r\n \r\n )}\r\n />\r\n (\r\n \r\n {props.dataItem.AttachmentArchiveUrl && {props.dataItem.AttachmentArchiveFileName}}\r\n \r\n )}\r\n />\r\n (\r\n \r\n {props.dataItem.AttachmentArchiveFileSize && GlobalHelpers.convertBytesToString(props.dataItem.AttachmentArchiveFileSize)}\r\n \r\n )}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n );\r\n}\r\n","// framework\r\nimport { useState, useEffect } from \"react\";\r\nimport { useDispatch } from \"react-redux\";\r\nimport { BsBasket3Fill } from \"react-icons/bs\";\r\n// kendo\r\nimport { DataResult, State } from \"@progress/kendo-data-query\";\r\nimport { CompositeFilterDescriptor } from \"@progress/kendo-data-query\";\r\nimport { Grid, GridColumn, GridDataStateChangeEvent, GridPageChangeEvent } from \"@progress/kendo-react-grid\";\r\nimport { FilterChangeEvent } from \"@progress/kendo-react-data-tools\";\r\n// common\r\nimport ODataReader from \"../../../common/odata/ODataReader\";\r\nimport ODataCopyLinkButton from \"../../../common/odata/ODataCopyLinkButton\";\r\nimport { useUserToken } from \"../../../common/shell/shellHelper\";\r\nimport GridFilter from \"../../../common/kendoGrid/GridFilter\";\r\nimport { getTextFilter } from \"../../../common/kendoGrid/GridFilterOptions\";\r\nimport CustomGridCell from \"../../../common/kendoGrid/CustomGridCell\";\r\nimport * as GlobalHelpers from \"../../../common/GlobalHelpers\";\r\nimport DownloadLinkView from \"../../../common/externalLink/DownloadLinkView\";\r\nimport ExternalLinkView from \"../../../common/externalLink/ExternalLinkView\";\r\nimport { TextBoxFilter } from \"../../../common/kendoGrid/GridFilterTextBoxFilter\";\r\n// basket\r\nimport * as Actions from \"../../basket/redux/actions\";\r\nimport { useNopimsBasket } from \"../../basket/redux/reducers\";\r\nimport { NopimsBasketItemModel } from \"../../basket/redux/model\";\r\n// models\r\nimport { IReprocessingSurveyDataDataRow } from \"./models\";\r\n\r\ninterface IProps {\r\n selectionVersion: number;\r\n}\r\n\r\nexport default function Controller(props: IProps) {\r\n const userToken = useUserToken();\r\n const odataUrl = `odata/v1/public/nopims/reprocessing/PublicNopimsReprocessings/GetSurveyDataForSelection(userToken=${userToken})`;\r\n const nopimsBasketModel = useNopimsBasket();\r\n const dispatch = useDispatch();\r\n\r\n const [pageSize, setPageSize] = useState(10);\r\n const initialFilter: CompositeFilterDescriptor = {\r\n logic: \"and\",\r\n filters: [\r\n {\r\n field: \"ReprocessingName\",\r\n operator: \"contains\",\r\n value: \"\",\r\n },\r\n ],\r\n };\r\n\r\n const [gridState, setGridDataState] = useState({\r\n sort: [\r\n { field: \"ReprocessingName\", dir: \"asc\" },\r\n { field: \"ReprocessingProjectName\", dir: \"asc\" },\r\n { field: \"ItemId\", dir: \"asc\" },\r\n ],\r\n take: pageSize,\r\n skip: 0,\r\n filter: initialFilter,\r\n });\r\n\r\n const [filter, setFilter] = useState(initialFilter);\r\n function onFilterChange(e: FilterChangeEvent): void {\r\n setFilter(e.filter);\r\n setGridDataState({ ...gridState, filter: e.filter });\r\n }\r\n\r\n const [data, setData] = useState({ data: [], total: 0 });\r\n function onDataChange(data: DataResult): void {\r\n setData(data);\r\n }\r\n\r\n function mapDataRow(dataRow: any): IReprocessingSurveyDataDataRow {\r\n return dataRow;\r\n }\r\n\r\n // ensure we don't get stuck on an empty grid page\r\n useEffect(() => {\r\n if (data.data.length === 0 && data.total > 0 && gridState && gridState.skip! > 0) setGridDataState({ ...gridState, skip: 0 });\r\n }, [data, gridState]);\r\n\r\n function onBasketAddAll(): void {\r\n dispatch(\r\n Actions.itemsAdded(\r\n data.data.map((item) => new NopimsBasketItemModel(item.DataDescription ?? ``, undefined, item.SurveyDataId, undefined, undefined, item.ReprocessingProjectId, item.ItemId))\r\n )\r\n );\r\n }\r\n\r\n function onBasketAdd(item: IReprocessingSurveyDataDataRow): void {\r\n dispatch(Actions.itemsAdded([new NopimsBasketItemModel(item.DataDescription ?? ``, undefined, item.SurveyDataId, undefined, undefined, item.ReprocessingProjectId, item.ItemId)]));\r\n }\r\n\r\n // return\r\n return (\r\n <>\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n {userToken && (\r\n \r\n )}\r\n
\r\n {\r\n setPageSize(e.page.take);\r\n setGridDataState({ ...gridState, take: e.page.take, skip: e.page.skip });\r\n }}\r\n resizable\r\n navigatable\r\n {...gridState}\r\n data={data}\r\n onDataStateChange={(e: GridDataStateChangeEvent) => setGridDataState(e.dataState)}\r\n >\r\n (\r\n \r\n )}\r\n title=\"Basket\"\r\n cell={(gridCellProps) => (\r\n \r\n {nopimsBasketModel.items.every((i) => i.surveyDataId !== gridCellProps.dataItem.SurveyDataId) && (\r\n onBasketAdd(gridCellProps.dataItem)}\r\n title=\"Click to add this Survey Data to the Basket.\"\r\n >\r\n \r\n \r\n )}\r\n \r\n )}\r\n />\r\n (\r\n \r\n {props.dataItem.AttachmentManifestUrl && Listing}\r\n \r\n )}\r\n />\r\n (\r\n \r\n {props.dataItem.AttachmentArchiveUrl && {props.dataItem.AttachmentArchiveFileName}}\r\n \r\n )}\r\n />\r\n (\r\n \r\n {props.dataItem.AttachmentArchiveFileSize && GlobalHelpers.convertBytesToString(props.dataItem.AttachmentArchiveFileSize)}\r\n \r\n )}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n );\r\n}\r\n","// framework\r\nimport { useState } from \"react\";\r\nimport { Tab, Tabs } from \"react-bootstrap\";\r\n// shell\r\nimport NopimsPageLayout from \"../shell/NopimsPageLayout\";\r\nimport { nopimsLhsNavItemEnum } from \"../shell/NopimsLhsNav\";\r\n// common\r\nimport ODataAction from \"../../common/odata/ODataAction\";\r\nimport { useUserToken } from \"../../common/shell/shellHelper\";\r\nimport SelectedItems from \"../../common/selectedItems/SelectedItems\";\r\nimport SelectedItemsHelper from \"../../common/selectedItems/SelectedItemsHelper\";\r\n// models\r\nimport { IReprocessingSearchDataRow } from \"./reprocessingSearch/models\";\r\n// Controller\r\nimport ReprocessingSearchController from \"./reprocessingSearch/Controller\";\r\nimport ReportsController from \"./reports/Controller\";\r\nimport SurveyDataController from \"./surveyData/Controller\";\r\n\r\nexport default function Controller(): React.JSX.Element {\r\n const userToken = useUserToken();\r\n\r\n const [selectionVersion, setSelectionVersion] = useState(1);\r\n const [selectedItems, setSelectedItems] = useState>([]);\r\n const selectedItemsHelper = new SelectedItemsHelper(\r\n selectedItems,\r\n setSelectedItems,\r\n (item1: IReprocessingSearchDataRow, item2: IReprocessingSearchDataRow) => item1.ReprocessingProjectId === item2.ReprocessingProjectId\r\n );\r\n\r\n return (\r\n \r\n \r\n \r\n selectedItemsHelper.TryAddAll(items)} onRemove={(item) => selectedItemsHelper.TryRemove(item)} />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n `${i.ReprocessingProjectIdentifier} ${i.ReprocessingProjectName}`}\r\n onItemRemoved={(i) => selectedItemsHelper.TryRemove(i)}\r\n onItemsCleared={() => selectedItemsHelper.Clear()}\r\n />\r\n {userToken && (\r\n i.ReprocessingProjectId) }}\r\n onActioned={() => setSelectionVersion(selectionVersion + 1)}\r\n />\r\n )}\r\n \r\n );\r\n}\r\n","// framework\r\nimport { useState, useEffect } from \"react\";\r\nimport { useDispatch } from \"react-redux\";\r\nimport { BsBasket3Fill } from \"react-icons/bs\";\r\n// kendo\r\nimport { DataResult, State } from \"@progress/kendo-data-query\";\r\nimport { CompositeFilterDescriptor } from \"@progress/kendo-data-query\";\r\nimport { Grid, GridColumn, GridDataStateChangeEvent, GridPageChangeEvent } from \"@progress/kendo-react-grid\";\r\nimport { FilterChangeEvent, DateFilter } from \"@progress/kendo-react-data-tools\";\r\n// common\r\nimport ODataReader from \"../../../common/odata/ODataReader\";\r\nimport ODataCopyLinkButton from \"../../../common/odata/ODataCopyLinkButton\";\r\nimport CustomGridCell from \"../../../common/kendoGrid/CustomGridCell\";\r\nimport * as GlobalHelpers from \"../../../common/GlobalHelpers\";\r\nimport ExternalLinkView from \"../../../common/externalLink/ExternalLinkView\";\r\nimport DownloadLinkView from \"../../../common/externalLink/DownloadLinkView\";\r\nimport GridFilter from \"../../../common/kendoGrid/GridFilter\";\r\nimport { getDateFilter, getTextFilter } from \"../../../common/kendoGrid/GridFilterOptions\";\r\nimport SimpleAlert from \"../../../common/simpleAlerts/SimpleAlertView\";\r\nimport { TextBoxFilter } from \"../../../common/kendoGrid/GridFilterTextBoxFilter\";\r\n// basket\r\nimport * as Actions from \"../../basket/redux/actions\";\r\nimport { useNopimsBasket } from \"../../basket/redux/reducers\";\r\nimport { NopimsBasketItemModel } from \"../../basket/redux/model\";\r\n// models\r\nimport { IDocumentSearchDataRow } from \"./models\";\r\n\r\nexport default function DocumentSearchController() {\r\n const odataUrl = \"odata/v1/public/nopims/releasedDocument/PublicNopimsReleasedDocument\";\r\n const nopimsBasketModel = useNopimsBasket();\r\n const dispatch = useDispatch();\r\n\r\n const [pageSize, setPageSize] = useState(10);\r\n const initialFilter: CompositeFilterDescriptor = {\r\n logic: \"and\",\r\n filters: [\r\n {\r\n field: \"ActivityName\",\r\n operator: \"contains\",\r\n value: \"\",\r\n },\r\n ],\r\n };\r\n\r\n const [dateNow, setDateNow] = useState(new Date());\r\n const [dateLastYear, setDateLastYear] = useState(new Date());\r\n\r\n // on mount\r\n useEffect(() => {\r\n setDateNow(new Date());\r\n const calculatingDateLastYear = new Date();\r\n calculatingDateLastYear.setFullYear(calculatingDateLastYear.getFullYear() - 1);\r\n setDateLastYear(calculatingDateLastYear);\r\n }, []); // eslint-disable-line react-hooks/exhaustive-deps\r\n\r\n const additionalODataGridFilter: CompositeFilterDescriptor = {\r\n logic: \"and\",\r\n filters: [\r\n {\r\n field: \"ReleasedDate\",\r\n operator: \"gte\",\r\n value: dateLastYear,\r\n },\r\n {\r\n field: \"ReleasedDate\",\r\n operator: \"lte\",\r\n value: dateNow,\r\n },\r\n ],\r\n };\r\n\r\n const [gridState, setGridDataState] = useState({\r\n sort: [\r\n { field: \"ReleasedDate\", dir: \"desc\" },\r\n { field: \"DocumentType\", dir: \"asc\" },\r\n { field: \"DataDescription\", dir: \"asc\" },\r\n ],\r\n take: pageSize,\r\n skip: 0,\r\n filter: initialFilter,\r\n });\r\n\r\n const [filter, setFilter] = useState(initialFilter);\r\n function onFilterChange(e: FilterChangeEvent): void {\r\n setFilter(e.filter);\r\n setGridDataState({ ...gridState, filter: e.filter });\r\n }\r\n\r\n const [data, setData] = useState({ data: [], total: 0 });\r\n function onDataChange(data: DataResult): void {\r\n setData(data);\r\n }\r\n\r\n function mapDataRow(dataRow: any): IDocumentSearchDataRow {\r\n return {\r\n ReleasedDate: new Date(dataRow.ReleasedDate),\r\n DocumentType: dataRow.DocumentType,\r\n DataDescription: dataRow.DataDescription,\r\n AttachmentManifestUrl: dataRow.AttachmentManifestUrl,\r\n AttachmentArchiveUrl: dataRow.AttachmentArchiveUrl,\r\n AttachmentArchiveFileName: dataRow.AttachmentArchiveFileName,\r\n AttachmentArchiveFileSize: dataRow.AttachmentArchiveFileSize,\r\n ItemId: dataRow.ItemId,\r\n ActivityType: dataRow.ActivityType,\r\n ActivityId: dataRow.ActivityId,\r\n ActivityName: dataRow.ActivityName,\r\n Basins: dataRow.Basins,\r\n ReportId: dataRow.ReportId,\r\n SurveyDataId: dataRow.SurveyDataId,\r\n BoreholeId: dataRow.BoreholeId,\r\n AcquisitionId: dataRow.AcquisitionId,\r\n ProjectId: dataRow.ProjectId,\r\n };\r\n }\r\n\r\n // ensure we don't get stuck on an empty grid page\r\n useEffect(() => {\r\n if (data.data.length === 0 && data.total > 0 && gridState && gridState.skip! > 0) setGridDataState({ ...gridState, skip: 0 });\r\n }, [data, gridState]);\r\n\r\n function onBasketAddAll(): void {\r\n dispatch(\r\n Actions.itemsAdded(\r\n data.data.map(\r\n (i: IDocumentSearchDataRow) =>\r\n new NopimsBasketItemModel(\r\n i.DataDescription,\r\n i.ReportId ?? undefined,\r\n i.SurveyDataId ?? undefined,\r\n i.BoreholeId ?? undefined,\r\n i.AcquisitionId ?? undefined,\r\n i.ProjectId ?? undefined,\r\n i.ItemId\r\n )\r\n )\r\n )\r\n );\r\n }\r\n\r\n function onBasketAdd(i: IDocumentSearchDataRow): void {\r\n dispatch(\r\n Actions.itemsAdded([\r\n new NopimsBasketItemModel(\r\n i.DataDescription,\r\n i.ReportId ?? undefined,\r\n i.SurveyDataId ?? undefined,\r\n i.BoreholeId ?? undefined,\r\n i.AcquisitionId ?? undefined,\r\n i.ProjectId ?? undefined,\r\n i.ItemId\r\n ),\r\n ])\r\n );\r\n }\r\n\r\n // return\r\n return (\r\n <>\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n {\r\n setPageSize(e.page.take);\r\n setGridDataState({ ...gridState, take: e.page.take, skip: e.page.skip });\r\n }}\r\n resizable\r\n navigatable\r\n {...gridState}\r\n data={data}\r\n onDataStateChange={(e: GridDataStateChangeEvent) => setGridDataState(e.dataState)}\r\n >\r\n (\r\n \r\n )}\r\n title=\"Basket\"\r\n cell={(gridCellProps) => (\r\n \r\n {nopimsBasketModel.items.every(\r\n (i) => (i.reportId && i.reportId !== gridCellProps.dataItem.ReportId) || (i.surveyDataId && i.surveyDataId !== gridCellProps.dataItem.SurveyDataId)\r\n ) && (\r\n onBasketAdd(gridCellProps.dataItem)}\r\n >\r\n \r\n \r\n )}\r\n \r\n )}\r\n />\r\n (\r\n \r\n {props.dataItem.AttachmentManifestUrl && Listing}\r\n \r\n )}\r\n />\r\n (\r\n \r\n {props.dataItem.AttachmentArchiveUrl && {props.dataItem.AttachmentArchiveFileName}}\r\n \r\n )}\r\n />\r\n (\r\n \r\n {props.dataItem.AttachmentArchiveFileSize && GlobalHelpers.convertBytesToString(props.dataItem.AttachmentArchiveFileSize)}\r\n \r\n )}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n );\r\n}\r\n","import NopimsPageLayout from \"../shell/NopimsPageLayout\";\r\nimport { nopimsLhsNavItemEnum } from \"../shell/NopimsLhsNav\";\r\nimport DocumentSearchController from \"./documentSearch/Controller\";\r\n\r\nexport default function Controller(): React.JSX.Element {\r\n return (\r\n \r\n \r\n \r\n );\r\n}\r\n","// framework\r\nimport { useState, useEffect } from \"react\";\r\nimport NopimsPageLayout from \"../../shell/NopimsPageLayout\";\r\nimport { nopimsLhsNavItemEnum } from \"../../shell/NopimsLhsNav\";\r\n// kendo\r\nimport { DataResult, State } from \"@progress/kendo-data-query\";\r\nimport { CompositeFilterDescriptor } from \"@progress/kendo-data-query\";\r\nimport { Grid, GridColumn, GridDataStateChangeEvent, GridPageChangeEvent } from \"@progress/kendo-react-grid\";\r\nimport { FilterChangeEvent, NumericFilter, BooleanFilter, Operators, DateFilter } from \"@progress/kendo-react-data-tools\";\r\n// common\r\nimport ODataReader from \"../../../common/odata/ODataReader\";\r\nimport CopyODataLink from \"../../../common/odata/ODataCopyLinkButton\";\r\nimport * as GlobalHelpers from \"../../../common/GlobalHelpers\";\r\nimport { TextBoxFilter } from \"../../../common/kendoGrid/GridFilterTextBoxFilter\";\r\n// models\r\nimport { ICoreLibraryDataRow } from \"./models\";\r\nimport CustomGridCell from \"../../../common/kendoGrid/CustomGridCell\";\r\nimport CommentSummaryView from \"../../../common/commentSummary/commentSummaryView\";\r\nimport ExternalLinkView from \"../../../common/externalLink/ExternalLinkView\";\r\nimport GridFilter from \"../../../common/kendoGrid/GridFilter\";\r\nimport { getDateFilter, getNumericFilter, getTextFilter } from \"../../../common/kendoGrid/GridFilterOptions\";\r\n\r\nexport default function Controller(): React.JSX.Element {\r\n const odataUrl = \"odata/v1/public/nopims/coreLibrary/PublicNopimsCoreLibrary\";\r\n\r\n const [pageSize, setPageSize] = useState(10);\r\n const initialFilter: CompositeFilterDescriptor = {\r\n logic: \"and\",\r\n filters: [\r\n {\r\n field: \"WellName\",\r\n operator: \"contains\",\r\n value: \"\",\r\n },\r\n ],\r\n };\r\n\r\n const [gridState, setGridDataState] = useState({\r\n sort: [\r\n { field: \"WellName\", dir: \"asc\" },\r\n { field: \"BoreholeName\", dir: \"asc\" },\r\n { field: \"CoreSampleType\", dir: \"asc\" },\r\n ],\r\n take: pageSize,\r\n skip: 0,\r\n filter: initialFilter,\r\n });\r\n\r\n const [filter, setFilter] = useState(initialFilter);\r\n function onFilterChange(e: FilterChangeEvent): void {\r\n setFilter(e.filter);\r\n setGridDataState({ ...gridState, filter: e.filter });\r\n }\r\n\r\n const [data, setData] = useState({ data: [], total: 0 });\r\n function onDataChange(data: DataResult): void {\r\n setData(data);\r\n }\r\n\r\n function mapDataRow(dataRow: any): ICoreLibraryDataRow {\r\n return {\r\n CoreLibraryId: dataRow.CoreLibraryId,\r\n WellId: dataRow.WellId,\r\n Uwi: dataRow.Uwi,\r\n WellName: dataRow.WellName,\r\n BoreholeId: dataRow.BoreholeId,\r\n Ubhi: dataRow.Ubhi,\r\n BoreholeName: dataRow.BoreholeName,\r\n CoreRepository: dataRow.CoreRepository,\r\n Basin: dataRow.Basin,\r\n IsOffshore: dataRow.IsOffshore,\r\n Jurisdiction: dataRow.Jurisdiction,\r\n NopimsJurisdiction: dataRow.NopimsJurisdiction,\r\n CoreSampleType: dataRow.CoreSampleType,\r\n StartDepth: dataRow.StartDepth,\r\n EndDepth: dataRow.EndDepth,\r\n ViewTypeName: dataRow.ViewTypeName,\r\n BoxTrayNumber: dataRow.BoxTrayNumber,\r\n BoxTrayCount: dataRow.BoxTrayCount,\r\n AccessionCardUrl: dataRow.AccessionCardUrl,\r\n RigReleaseDate: dataRow.RigReleaseDate ? new Date(dataRow.RigReleaseDate) : null,\r\n WellBoreholeType: dataRow.WellBoreholeType,\r\n BoreholeReason: dataRow.BoreholeReason,\r\n Comments: dataRow.Comments,\r\n };\r\n }\r\n\r\n // ensure we don't get stuck on an empty grid page\r\n useEffect(() => {\r\n if (data.data.length === 0 && data.total > 0 && gridState && gridState.skip! > 0) setGridDataState({ ...gridState, skip: 0 });\r\n }, [data, gridState]);\r\n\r\n return (\r\n \r\n <>\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n\r\n
\r\n {\r\n setPageSize(e.page.take);\r\n setGridDataState({ ...gridState, take: e.page.take, skip: e.page.skip });\r\n }}\r\n resizable\r\n navigatable\r\n {...gridState}\r\n data={data}\r\n onDataStateChange={(e: GridDataStateChangeEvent) => setGridDataState(e.dataState)}\r\n >\r\n \r\n \r\n \r\n \r\n \r\n \r\n (\r\n \r\n {props.dataItem.IsOffshore ? \"Y\" : \"N\"}\r\n \r\n )}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n (\r\n \r\n {props.dataItem.AccessionCardUrl && Download}\r\n \r\n )}\r\n />\r\n \r\n \r\n \r\n (\r\n \r\n \r\n \r\n )}\r\n />\r\n \r\n
\r\n \r\n
\r\n );\r\n}\r\n","import NopimsPageLayout from \"../shell/NopimsPageLayout\";\r\nimport { nopimsLhsNavItemEnum } from \"../shell/NopimsLhsNav\";\r\nimport ExternalLinkView from \"../../common/externalLink/ExternalLinkView\";\r\nimport { Alert } from \"react-bootstrap\";\r\nimport { InfoIcon } from \"@primer/octicons-react\";\r\n\r\nexport default function Controller(): React.JSX.Element {\r\n const url = process.env.REACT_APP_MAP_NOPIMS;\r\n\r\n // the GIS Map uses a dark theme, as such provide a dark border to soften its presence in the page\r\n\r\n return (\r\n \r\n \r\n \r\n For the best experience open the GIS Map in a new browser window.\r\n \r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n );\r\n}\r\n","import * as Client from \"../../api/Client\";\r\n\r\nexport interface IAlertsModel {\r\n information: Array;\r\n warning: Array;\r\n success: Array;\r\n error: Array;\r\n\r\n addInformation(message: string): void;\r\n addWarning(message: string): void;\r\n addError(message: string): void;\r\n addSuccess(message: string): void;\r\n addStatusMessages(dto: Client.StatusMessagesDto): void;\r\n\r\n clear(): void;\r\n\r\n hasAnything(): boolean;\r\n}\r\n\r\nexport class AlertsModel implements IAlertsModel {\r\n constructor(dto?: Client.StatusMessagesDto) {\r\n this.information = new Array();\r\n this.warning = new Array();\r\n this.success = new Array();\r\n this.error = new Array();\r\n\r\n if (dto) this.addStatusMessages(dto!);\r\n }\r\n\r\n information: Array;\r\n warning: Array;\r\n success: Array;\r\n error: Array;\r\n\r\n addInformation(message: string): void {\r\n this.information.push(message);\r\n }\r\n\r\n addWarning(message: string): void {\r\n this.warning.push(message);\r\n }\r\n\r\n addError(message: string): void {\r\n this.error.push(message);\r\n }\r\n\r\n addSuccess(message: string): void {\r\n this.success.push(message);\r\n }\r\n\r\n addStatusMessages(dto: Client.StatusMessagesDto): void {\r\n if (dto.error) dto.error!.forEach(e => this.addError(e));\r\n if (dto.success) dto.success!.forEach(e => this.addSuccess(e));\r\n if (dto.warning) dto.warning!.forEach(e => this.addWarning(e));\r\n if (dto.information) dto.information!.forEach(e => this.addInformation(e));\r\n }\r\n\r\n clear(): void {\r\n this.information = new Array();\r\n this.warning = new Array();\r\n this.success = new Array();\r\n this.error = new Array();\r\n }\r\n\r\n hasAnything(): boolean {\r\n return this.information.length > 0 || this.warning.length > 0 || this.success.length > 0 || this.error.length > 0;\r\n }\r\n}","// bootstrap\r\nimport { Alert } from \"react-bootstrap\";\r\n// icons\r\nimport { AlertIcon, CheckIcon, InfoIcon } from \"@primer/octicons-react\";\r\n\r\nexport function renderError(messages: Array, onClose?: () => void): React.ReactNode {\r\n return render(messages, \"danger\", , onClose);\r\n}\r\nexport function renderSuccess(messages: Array, onClose?: () => void): React.ReactNode {\r\n return render(messages, \"success\", , onClose);\r\n}\r\nexport function renderWarning(messages: Array, onClose?: () => void): React.ReactNode {\r\n return render(messages, \"warning\", , onClose);\r\n}\r\nexport function renderInfo(messages: Array, onClose?: () => void): React.ReactNode {\r\n return render(messages, \"info\", , onClose);\r\n}\r\n\r\nexport function render(messages: Array, className: string, icon: React.ReactNode, onClose?: () => void): React.ReactNode {\r\n if (messages.length === 0) return <>;\r\n\r\n const elements = messages.map((message, index) => {\r\n const key = `${className}/${index}`;\r\n return (\r\n
\r\n {icon}\r\n {message}\r\n
\r\n );\r\n });\r\n\r\n return (\r\n \r\n {elements}\r\n \r\n );\r\n}\r\n","// framework\r\nimport React, { useState, useEffect } from \"react\";\r\n// models\r\nimport { IAlertsModel } from \"./AlertsModel\";\r\nimport * as AlertsHelper from \"./AlertsHelper\";\r\n\r\n/*\r\n Limitations:\r\n - currently renders content as plain text only.\r\n - the most likely future requirement will be to show hyperlinks, as anchor tags. if this is the case we need to build a simple parser.\r\n we must not render HTML directly from the service as this is dangerous.\r\n*/\r\n\r\nexport default function AlertsView(props: { alertsModel: IAlertsModel; alertsRef?: React.RefObject | undefined }) {\r\n const m = props.alertsModel;\r\n\r\n const [showErrors, setShowErrors] = useState(true);\r\n const [showSuccess, setShowSuccess] = useState(true);\r\n const [showWarning, setShowWarning] = useState(true);\r\n const [showInformation, setShowInformation] = useState(true);\r\n\r\n // show the alerts again if the arrays change\r\n useEffect(() => {\r\n setShowErrors(true);\r\n }, [m.error]);\r\n useEffect(() => {\r\n setShowSuccess(true);\r\n }, [m.success]);\r\n useEffect(() => {\r\n setShowWarning(true);\r\n }, [m.warning]);\r\n useEffect(() => {\r\n setShowInformation(true);\r\n }, [m.information]);\r\n\r\n return (\r\n
\r\n {showErrors && AlertsHelper.renderError(m.error, () => setShowErrors(false))}\r\n {showSuccess && AlertsHelper.renderSuccess(m.success, () => setShowSuccess(false))}\r\n {showWarning && AlertsHelper.renderWarning(m.warning, () => setShowWarning(false))}\r\n {showInformation && AlertsHelper.renderInfo(m.information, () => setShowInformation(false))}\r\n
\r\n );\r\n}\r\n","import { useState, useEffect, useRef } from \"react\";\r\nimport { AlertsModel } from \"./AlertsModel\";\r\nimport { StatusMessagesDto } from \"../../api/Client\";\r\nimport AlertsView from \"./AlertsView\";\r\n\r\ninterface IProps {\r\n statusMessages: StatusMessagesDto | undefined;\r\n scrollWindowToTop?: boolean | undefined;\r\n}\r\n\r\nexport default function StatusMessagesAlertsView(props: IProps) {\r\n const scrollWindowToTop = props.scrollWindowToTop ?? true;\r\n\r\n // alerts\r\n // - note, need to be careful with how dismissal works as any changes to the View Model can cause it to become visible again\r\n const [alerts, setAlerts] = useState(new AlertsModel(props.statusMessages));\r\n\r\n const alertsRef = useRef(null);\r\n\r\n useEffect(() => {\r\n const m = new AlertsModel(props.statusMessages);\r\n setAlerts(m);\r\n\r\n // If the alert appears under the floating top nav then it focuses but the screen doesn't know it needs to scroll to the top and the alert stays hidden.\r\n // The scroll to top below has been added as a temporary workaround until we can look at possibly integrating conflict and status alert views with the body layout.\r\n if (scrollWindowToTop && m.hasAnything()) {\r\n window.scrollTo({ top: 0, behavior: \"smooth\" });\r\n alertsRef.current?.focus();\r\n }\r\n }, [props.statusMessages, scrollWindowToTop]);\r\n\r\n return ;\r\n}\r\n","// framework\r\nimport { useEffect, useRef } from \"react\";\r\nimport { Alert } from \"react-bootstrap\";\r\nimport { IssueReopenedIcon } from \"@primer/octicons-react\";\r\n\r\nexport default function ConflictAlertView(props: { isConflict: boolean; children?: React.ReactNode }) {\r\n const alertRef = useRef(null);\r\n\r\n useEffect(() => {\r\n // If the alert appears under the floating top nav then it focuses but the screen doesn't know it needs to scroll to the top and the alert stays hidden.\r\n // The scroll to top below has been added as a temporary workaround until we can look at possibly integrating conflict and status alert views with the body layout.\r\n if (props.isConflict) {\r\n window.scrollTo({ top: 0, behavior: \"smooth\" });\r\n alertRef.current?.focus();\r\n }\r\n }, [props.isConflict]);\r\n\r\n if (!props.isConflict) return <>;\r\n\r\n const children = props.children ?? (\r\n Unable to complete the operation as this data has been modified by another user or process. You will need to cancel your changes, refresh the screen and try again.\r\n );\r\n\r\n return (\r\n
\r\n \r\n \r\n {children}\r\n \r\n
\r\n );\r\n}\r\n","// framework\r\nimport React, { useEffect, useRef } from \"react\";\r\nimport { useDispatch } from \"react-redux\";\r\n// common\r\nimport { setBusyAction, clearBusyAction, setDirtyAction, clearDirtyAction } from \"../../shell/redux/shellActions\";\r\nimport StatusMessagesAlertsView from \"../alerts/StatusMessagesAlertsView\";\r\nimport ConflictView from \"../alerts/ConflictAlertView\";\r\n// client\r\nimport { StatusMessagesDto } from \"../../api/Client\";\r\nimport { Prompt } from \"react-router-dom\";\r\n\r\ninterface IProps {\r\n isConflict?: boolean | undefined;\r\n isDirty?: boolean | undefined;\r\n isBusy?: boolean | undefined;\r\n statusMessages?: StatusMessagesDto | undefined;\r\n statusMessagesScrollToTop?: boolean | undefined;\r\n children: React.ReactNode;\r\n className?: string | undefined;\r\n}\r\n\r\nexport default function TaskLayout(props: IProps): JSX.Element {\r\n return (\r\n <>\r\n \r\n \r\n
\r\n {props.isConflict && }\r\n {props.statusMessages && }\r\n {props.children}\r\n
\r\n \r\n );\r\n}\r\n\r\nfunction BusyState(props: { isBusy: boolean | undefined }): JSX.Element {\r\n const isBusy = props.isBusy;\r\n const isBusyState = useRef(isBusy ?? false);\r\n const dispatch = useDispatch();\r\n\r\n useEffect(() => {\r\n // when wired up, can only be true/false, undefined means this feature is not being used\r\n if (isBusy === undefined) return;\r\n\r\n // nothing has changed\r\n if (isBusy === isBusyState.current) return;\r\n\r\n // changed: flip the shell's busy state\r\n isBusyState.current = isBusy;\r\n if (isBusy!) {\r\n dispatch(setBusyAction());\r\n } else {\r\n dispatch(clearBusyAction());\r\n }\r\n }, [isBusy]); // eslint-disable-line react-hooks/exhaustive-deps\r\n\r\n useEffect(() => {\r\n // clear on unmount\r\n return () => {\r\n if (isBusyState.current) {\r\n dispatch(clearBusyAction());\r\n }\r\n };\r\n }, []); // eslint-disable-line react-hooks/exhaustive-deps\r\n\r\n return <>;\r\n}\r\n\r\nfunction DirtyState(props: { isDirty: boolean | undefined }): JSX.Element {\r\n const message = \"There are unsaved changes. Are you sure you wish to continue?\";\r\n const isDirty = props.isDirty;\r\n const isDirtyState = useRef(isDirty ?? false);\r\n const dispatch = useDispatch();\r\n\r\n useEffect(() => {\r\n // when wired up, can only be true/false, undefined means this feature is not being used\r\n if (isDirty === undefined) return;\r\n\r\n // nothing has changed\r\n if (isDirty === isDirtyState.current) return;\r\n\r\n // changed: flip the shell's dirty state\r\n isDirtyState.current = isDirty;\r\n if (isDirty) {\r\n dispatch(setDirtyAction());\r\n } else {\r\n dispatch(clearDirtyAction());\r\n }\r\n }, [isDirty]); // eslint-disable-line react-hooks/exhaustive-deps\r\n\r\n useEffect(() => {\r\n // clear on unmount\r\n return () => {\r\n if (isDirtyState.current) {\r\n dispatch(clearDirtyAction());\r\n }\r\n };\r\n }, []); // eslint-disable-line react-hooks/exhaustive-deps\r\n\r\n return ;\r\n}\r\n","export enum ValidationVisibilityEnum {\r\n None = \"Validation.None\",\r\n Messages = \"Validation.Messages\",\r\n MessagesAndAdorners = \"Validation.MessageAndAdorners\",\r\n}\r\n\r\nexport interface IValidationModel {\r\n visibility: ValidationVisibilityEnum;\r\n errors: Array<[string, string]>;\r\n\r\n isValid(name?: string): boolean;\r\n getErrors(name: string): Array;\r\n addError(name: string, message: string): void;\r\n clear(): void;\r\n\r\n applyClass(classNames: string, name: string): string;\r\n applyClassForKendo(classNames: string, name: string): string;\r\n applyValidity(name: string): boolean;\r\n applyValidityForKendo(name: string): boolean;\r\n}\r\n\r\nexport class ValidationModel implements IValidationModel {\r\n constructor(visibility: ValidationVisibilityEnum) {\r\n this.visibility = visibility;\r\n this.errors = new Array<[string, string]>();\r\n }\r\n\r\n visibility: ValidationVisibilityEnum;\r\n errors: Array<[string, string]>;\r\n\r\n isValid(name?: string): boolean {\r\n return name ? this.errors.filter((i) => i[0] === name).length === 0 : this.errors.length === 0;\r\n }\r\n\r\n getErrors(name: string): Array {\r\n const errors = this.errors.filter((i) => i[0] === name).map((i) => i[1]);\r\n return errors;\r\n }\r\n\r\n addError(name: string, message: string): void {\r\n this.errors.push([name, message]);\r\n }\r\n\r\n clear(): void {\r\n this.errors = new Array<[string, string]>();\r\n }\r\n\r\n // TODO DO NOT USE WITHOUT THOROUGH TESTING. Not currently used, have shifted responsibility for setting bootstrap styles to BootstrapForms. Consider removing.\r\n applyClass(classNames: string, name: string): string {\r\n // only apply the class if adorners are visible\r\n if (this.visibility !== ValidationVisibilityEnum.MessagesAndAdorners) return classNames;\r\n\r\n const isValid = this.isValid(name);\r\n return isValid ? classNames : classNames + \" is-invalid\";\r\n }\r\n\r\n // TODO DO NOT USE WITHOUT THOROUGH TESTING. Not currently used, correct error styling is more reliably achieved by setting 'valid' on Kendo controls. Consider removing.\r\n applyClassForKendo(classNames: string, name: string): string {\r\n // only apply the class if adorners are visible\r\n if (this.visibility !== ValidationVisibilityEnum.MessagesAndAdorners) return classNames;\r\n\r\n const isValid = this.isValid(name);\r\n return isValid ? classNames : classNames + \" k-invalid\";\r\n }\r\n\r\n applyValidity(name: string): boolean {\r\n // only apply the class if adorners are visible\r\n if (this.visibility !== ValidationVisibilityEnum.MessagesAndAdorners) return true;\r\n\r\n return this.isValid(name);\r\n }\r\n\r\n applyValidityForKendo(name: string): boolean {\r\n // only apply the class if adorners are visible\r\n if (this.visibility !== ValidationVisibilityEnum.MessagesAndAdorners) return true;\r\n\r\n return this.isValid(name);\r\n }\r\n}\r\n\r\nexport function isValidEmail(email: string) {\r\n const re = /^[A-Za-z0-9-._]+@[A-Za-z0-9-.]+$/;\r\n return re.test(email);\r\n}\r\n\r\n// any combination of letters, spaces, hyphens and apostrophes provided it contains at least one letter\r\nexport function isValidName(name: string) {\r\n const re = /^[a-zA-Z \\-']*[a-zA-Z][a-zA-Z \\-']*$/;\r\n return re.test(name);\r\n}\r\n\r\nexport function isValidAbn(abn: string | undefined): boolean {\r\n if (!abn || !abn.trim()) return true;\r\n const re = /^[0-9]{2} [0-9]{3} [0-9]{3} [0-9]{3}$/;\r\n return re.test(abn);\r\n}\r\n\r\nexport function isValidAcnOrArbn(acnOrArbn: string | undefined): boolean {\r\n if (!acnOrArbn || !acnOrArbn.trim()) return true;\r\n const re = /^[0-9]{3} [0-9]{3} [0-9]{3}$/;\r\n return re.test(acnOrArbn);\r\n}\r\n\r\nexport function isNullOrWhiteSpace(value: string | undefined): boolean {\r\n return !(value && value.trim());\r\n}\r\n","// framework\r\nimport { clone } from \"lodash\";\r\n// api\r\nimport * as Client from \"../../../api/Client\";\r\n\r\nexport interface IReferenceDataViewModel {\r\n honorifics: Client.GetCreatePublicFeedbackReferenceDataResponseHonorificDto[];\r\n feedbackTypes: Client.GetCreatePublicFeedbackReferenceDataResponseFeedbackTypeDto[];\r\n nopimsActivityTypes: Client.GetCreatePublicFeedbackReferenceDataResponseNopimsActivityTypeDto[];\r\n activities: Client.GetCreatePublicFeedbackReferenceDataResponseActivityDto[];\r\n dataMonitoringItemTypes: Client.GetCreatePublicFeedbackReferenceDataResponseDataMonitoringItemTypeDto[];\r\n}\r\n\r\nexport interface IFeedbackViewModel {\r\n honorific?: Client.GetCreatePublicFeedbackReferenceDataResponseHonorificDto | undefined;\r\n customerFirstName?: string | undefined;\r\n customerLastName?: string | undefined;\r\n customerCompanyName?: string | undefined;\r\n customerContactNumber?: string | undefined;\r\n customerEmailAddress?: string | undefined;\r\n feedbackType?: Client.GetCreatePublicFeedbackReferenceDataResponseFeedbackTypeDto | undefined;\r\n nopimsActivityType?: Client.GetCreatePublicFeedbackReferenceDataResponseNopimsActivityTypeDto | undefined;\r\n activity?: Client.GetCreatePublicFeedbackReferenceDataResponseActivityDto | undefined;\r\n dataMonitoringItemType?: Client.GetCreatePublicFeedbackReferenceDataResponseDataMonitoringItemTypeDto | undefined;\r\n customerComments?: string | undefined;\r\n}\r\n\r\nexport interface IRootViewModel {\r\n userToken: string;\r\n statusMessages?: Client.StatusMessagesDto;\r\n isBusy: boolean;\r\n isDirty: boolean;\r\n isSubmitted: boolean;\r\n referenceData: IReferenceDataViewModel;\r\n feedback: IFeedbackViewModel;\r\n\r\n setBusy(isBusy: boolean): IRootViewModel;\r\n reset(): IRootViewModel;\r\n refreshReferenceData(response: Client.GetCreatePublicFeedbackReferenceDataResponseDto): IRootViewModel;\r\n refreshFeedbackDetails(feedback: IFeedbackViewModel): IRootViewModel;\r\n refreshFeedbackCreateResponse(response: Client.CreatePublicFeedbackResponseDto): IRootViewModel;\r\n}\r\n\r\nexport class RootViewModel implements IRootViewModel {\r\n constructor(userToken: string) {\r\n this.userToken = userToken;\r\n this.isSubmitted = false;\r\n this.statusMessages = undefined;\r\n this.isBusy = false;\r\n this.isDirty = false;\r\n this.feedback = {};\r\n this.referenceData = {\r\n honorifics: [],\r\n feedbackTypes: [],\r\n nopimsActivityTypes: [],\r\n activities: [],\r\n dataMonitoringItemTypes: [],\r\n };\r\n }\r\n\r\n public userToken: string;\r\n public isSubmitted: boolean;\r\n public statusMessages?: Client.StatusMessagesDto;\r\n public isBusy: boolean;\r\n public isDirty: boolean;\r\n public feedback: IFeedbackViewModel;\r\n public referenceData: IReferenceDataViewModel;\r\n\r\n setBusy(isBusy: boolean): IRootViewModel {\r\n const vm = this._clone();\r\n vm.isBusy = isBusy;\r\n return vm;\r\n }\r\n\r\n reset(): IRootViewModel {\r\n const vm = this._clone();\r\n vm.feedback = {};\r\n vm.isSubmitted = false;\r\n vm.statusMessages = undefined;\r\n vm.isDirty = false;\r\n return vm;\r\n }\r\n\r\n refreshReferenceData(response: Client.GetCreatePublicFeedbackReferenceDataResponseDto): IRootViewModel {\r\n const vm = this._clone();\r\n vm.referenceData = {\r\n honorifics: response.honorifics,\r\n feedbackTypes: response.feedbackTypes,\r\n nopimsActivityTypes: response.nopimsActivityTypes,\r\n activities: response.activities,\r\n dataMonitoringItemTypes: response.dataMonitoringItemTypes,\r\n };\r\n vm.isDirty = false; // reference data load is part of the initialisation phase\r\n return vm;\r\n }\r\n\r\n refreshFeedbackDetails(feedback: IFeedbackViewModel): IRootViewModel {\r\n const vm = this._clone();\r\n vm.feedback.honorific = feedback.honorific;\r\n vm.feedback.customerFirstName = feedback.customerFirstName;\r\n vm.feedback.customerLastName = feedback.customerLastName;\r\n vm.feedback.customerCompanyName = feedback.customerCompanyName;\r\n vm.feedback.customerContactNumber = feedback.customerContactNumber;\r\n vm.feedback.customerEmailAddress = feedback.customerEmailAddress;\r\n vm.feedback.feedbackType = feedback.feedbackType;\r\n vm.feedback.nopimsActivityType = feedback.nopimsActivityType;\r\n vm.feedback.activity = feedback.activity;\r\n vm.feedback.dataMonitoringItemType = feedback.dataMonitoringItemType;\r\n vm.feedback.customerComments = feedback.customerComments;\r\n vm.isDirty = true;\r\n return vm;\r\n }\r\n\r\n refreshFeedbackCreateResponse(response: Client.CreatePublicFeedbackResponseDto) {\r\n const vm = this._clone();\r\n if (response.statusMessages?.isSuccess) {\r\n vm.isSubmitted = true;\r\n vm.isDirty = false;\r\n }\r\n vm.statusMessages = response.statusMessages;\r\n return vm;\r\n }\r\n\r\n private _clone(): RootViewModel {\r\n const vm = clone(this);\r\n vm.feedback = clone(this.feedback);\r\n return vm;\r\n }\r\n}\r\n","/**\n * @license\n *-------------------------------------------------------------------------------------------\n * Copyright © 2024 Progress Software Corporation. All rights reserved.\n * Licensed under commercial license. See LICENSE.md in the package root for more information\n *-------------------------------------------------------------------------------------------\n */\n\"use client\";\nimport { getActiveElement as h, classNames as u, uDropDownsBase as g } from \"@progress/kendo-react-common\";\nimport * as d from \"react\";\nclass v extends d.Component {\n constructor() {\n super(...arguments), this._input = null;\n }\n /**\n * @hidden\n */\n get input() {\n return this._input;\n }\n componentDidUpdate(a) {\n const i = a.value, o = a.suggestedText, { value: s, suggestedText: t, focused: p } = this.props, e = this.input, r = i !== s || t !== o, l = r && i.startsWith(s) && !(o && t && o.endsWith(t)), n = h(document);\n p && e && n !== e && e.focus(), t && r && !l && e && e.setSelectionRange(s.length - t.length, s.length);\n }\n render() {\n const { expanded: a = !1, disabled: i, role: o = \"listbox\", render: s, tabIndex: t, accessKey: p, unstyled: e } = this.props, r = e && e.uDropDownsBase, l = {\n tabIndex: t,\n accessKey: p\n }, n = /* @__PURE__ */ d.createElement(\n \"input\",\n {\n autoComplete: \"off\",\n id: this.props.id,\n type: \"text\",\n key: \"searchbar\",\n size: this.props.size,\n placeholder: this.props.placeholder,\n className: u(g.inputInner({ c: r })),\n role: o,\n name: this.props.name,\n value: this.props.value,\n onChange: this.props.onChange,\n ref: (c) => this._input = c,\n onKeyDown: this.props.onKeyDown,\n onFocus: this.props.onFocus,\n onBlur: this.props.onBlur,\n onClick: this.props.onClick,\n \"aria-disabled\": i || void 0,\n disabled: i || void 0,\n readOnly: this.props.readOnly || void 0,\n title: this.props.title,\n \"aria-haspopup\": \"listbox\",\n \"aria-expanded\": a,\n \"aria-owns\": this.props.owns,\n \"aria-activedescendant\": a ? this.props.activedescendant : void 0,\n \"aria-describedby\": this.props.ariaDescribedBy,\n \"aria-labelledby\": this.props.ariaLabelledBy,\n \"aria-label\": this.props.ariaLabel,\n \"aria-required\": this.props.ariaRequired,\n \"aria-controls\": this.props.ariaControls,\n ...l\n }\n );\n return s ? s.call(void 0, n) : n;\n }\n}\nexport {\n v as default\n};\n","/**\n * @license\n *-------------------------------------------------------------------------------------------\n * Copyright © 2024 Progress Software Corporation. All rights reserved.\n * Licensed under commercial license. See LICENSE.md in the package root for more information\n *-------------------------------------------------------------------------------------------\n */\n\"use client\";\nimport * as o from \"react\";\nimport { useLocalization as m } from \"@progress/kendo-react-intl\";\nimport { clear as t, messages as i } from \"../messages/index.mjs\";\nimport { useUnstyled as u, classNames as p, uDropDownsBase as f, IconWrap as d } from \"@progress/kendo-react-common\";\nimport { xIcon as D } from \"@progress/kendo-svg-icons\";\nconst b = (n) => {\n const s = m(), e = u(), a = e && e.uDropDownsBase, r = s.toLanguageString(t, i[t]), c = (l) => l.preventDefault();\n return /* @__PURE__ */ o.createElement(\n \"span\",\n {\n className: p(f.clearButton({ c: a })),\n role: \"button\",\n onClick: n.onClick,\n onMouseDown: c,\n tabIndex: -1,\n title: r,\n key: \"clearbutton\"\n },\n /* @__PURE__ */ o.createElement(d, { name: \"x\", icon: D })\n );\n};\nexport {\n b as default\n};\n","/**\n * @license\n *-------------------------------------------------------------------------------------------\n * Copyright © 2024 Progress Software Corporation. All rights reserved.\n * Licensed under commercial license. See LICENSE.md in the package root for more information\n *-------------------------------------------------------------------------------------------\n */\n\"use client\";\nimport { useCustomComponent as o } from \"@progress/kendo-react-common\";\nconst e = o;\nexport {\n e as default\n};\n","/**\n * @license\n *-------------------------------------------------------------------------------------------\n * Copyright © 2024 Progress Software Corporation. All rights reserved.\n * Licensed under commercial license. See LICENSE.md in the package root for more information\n *-------------------------------------------------------------------------------------------\n */\n\"use client\";\nimport * as u from \"react\";\nimport f from \"prop-types\";\nimport N from \"../common/DropDownBase.mjs\";\nimport { Keys as C, validatePackage as ae, svgIconPropType as ne, canUseDOM as z, classNames as I, uComboBox as D, IconWrap as le, uDropDownsActionSheet as M, createPropsContext as re, withIdHOC as de, withPropsContext as pe, withUnstyledHOC as he } from \"@progress/kendo-react-common\";\nimport { FloatingLabel as ce } from \"@progress/kendo-react-labels\";\nimport { getPlainDataDuplicates as ue, getFilteredData as S, areSame as E, getItemValue as k, isPresent as w, getItemIndexByText as K, suggestValue as ge, itemIndexStartsWith as H } from \"../common/utils.mjs\";\nimport me from \"../common/SearchBar.mjs\";\nimport ve from \"../common/ListContainer.mjs\";\nimport fe from \"../common/List.mjs\";\nimport be from \"../common/ListFilter.mjs\";\nimport q from \"../common/GroupStickyHeader.mjs\";\nimport { packageMetadata as xe } from \"../package-metadata.mjs\";\nimport Ie from \"../common/ClearButton.mjs\";\nimport { Button as G } from \"@progress/kendo-react-buttons\";\nimport { caretAltDownIcon as ye, xIcon as Ce } from \"@progress/kendo-svg-icons\";\nimport { comboArrowBtnAriaLabelExpand as U, messages as W, comboArrowBtnAriaLabelCollapse as j } from \"../messages/index.mjs\";\nimport { provideLocalizationService as $ } from \"@progress/kendo-react-intl\";\nimport { ActionSheet as Se, ActionSheetHeader as De, ActionSheetContent as we } from \"@progress/kendo-react-layout\";\nimport { MOBILE_MEDIUM_DEVISE as Y, MOBILE_SMALL_DEVISE as J } from \"../common/constants.mjs\";\nimport Q from \"../common/withCustomComponent.mjs\";\nconst Ee = \"Please enter a valid value!\", F = class F extends u.Component {\n constructor(s) {\n super(s), this.state = {}, this.base = new N(this), this._element = null, this._suggested = \"\", this._skipBlur = !1, this._input = null, this._adaptiveFilterInput = null, this.itemHeight = 0, this.duplicates = [], this.hasDuplicates = !1, this.focus = () => {\n this._input && this._input.focus();\n }, this.checkForDuplicatePlainTextRecords = () => {\n const e = this.props.textField !== void 0, t = this.props.dataItemKey !== void 0;\n if (this.props.data && this.props.data.length > 0 && !e && !t) {\n const i = this.props.data;\n this.duplicates = ue(i), this.hasDuplicates = this.duplicates.length > 0;\n }\n }, this.handleItemSelect = (e, t) => {\n const { virtual: i, dataItemKey: n } = this.props, r = S(this.props), a = i ? i.skip : 0, d = r[e - a], l = this.hasDuplicates || !E(d, this.value, n);\n this.triggerOnChange(d, t), this.state.text !== void 0 && (t.data.text = void 0), l && this.base.triggerPageChangeCornerItems(d, t);\n }, this.onPopupOpened = () => {\n setTimeout(() => {\n this.mobileMode && this._adaptiveFilterInput && (this._skipBlur = !0, this._adaptiveFilterInput.focus(), this._skipBlur = !1);\n }, 300);\n }, this.componentRef = (e) => {\n this._element = e, this.base.wrapper = e;\n }, this.toggleBtnClick = (e) => {\n const { skipDisabledItems: t, textField: i } = this.props, n = S(this.props), r = this.getFocusedIndex(), a = this.getCurrentValueDisabledStatus(i, n, r), d = this.props.opened !== void 0 ? this.props.opened : this.state.opened, l = this.base.initState();\n if (l.syntheticEvent = e, !t && i && a && this.clearValueOnToggleBtnClick(e), this.base.togglePopup(l), !d && this.mobileMode) {\n const o = this.props.adaptiveFilter !== void 0 ? this.props.adaptiveFilter : this.state.text || null;\n this.base.filterChanged(o, l);\n }\n this.applyState(l);\n }, this.closeOpenedApplyStateNonMobileMode = (e, t) => {\n t && !this.mobileMode && this.base.togglePopup(e);\n }, this.renderMobileListFilter = () => {\n const e = this.props.adaptiveFilter !== void 0 ? this.props.adaptiveFilter : this.state.text, t = k(this.value, this.props.textField), i = w(e) ? e : t;\n return /* @__PURE__ */ u.createElement(\n be,\n {\n value: i,\n ref: (n) => this._adaptiveFilterInput = n && n.element,\n onChange: this.handleMobileFilterChange,\n onKeyDown: this.onInputKeyDown,\n size: \"large\",\n rounded: this.props.rounded,\n fillMode: this.props.fillMode\n }\n );\n }, this.handleMobileFilterChange = (e) => {\n const t = this.base.initState();\n t.syntheticEvent = e.syntheticEvent, t.data.text = e.target.value, this.base.filterChanged(e.target.value, t), this.applyState(t);\n }, this.onScroll = (e) => {\n const { vs: t, list: i } = this.base;\n t.scrollHandler(e);\n const { groupField: n } = this.props;\n let r = S(this.props);\n if (!n || !r.length)\n return;\n const a = this.itemHeight = this.itemHeight || (t.enabled ? t.itemHeight : i ? i.children[0].offsetHeight : 0), l = e.target.scrollTop - t.skip * a;\n this.props.groupMode === \"modern\" && (r = this.base.getGroupedDataModernMode(r, n));\n let o = r[0][n];\n for (let c = 1; c < r.length && !(a * c > l); c++)\n r[c] && r[c][n] && (o = r[c][n]);\n o !== this.state.group && (this.setState({\n group: o\n }), this.props.onGroupScroll && this.props.onGroupScroll.call(void 0, { group: o }));\n }, this.handleItemClick = (e, t) => {\n this.navigationIndex = e, this.base.handleItemClick(e, t), this._valueDuringOnChange = void 0;\n }, this.handleBlur = (e) => {\n if (this.state.focused && !this._skipBlur) {\n const t = this.base.initState(), { textField: i } = this.props, n = S(this.props), r = this.getFocusedIndex(), d = !(r === -1) && this.getCurrentValueDisabledStatus(i, n, r);\n t.data.focused = !1, t.events.push({ type: \"onBlur\" }), t.syntheticEvent = e, i && d && this.clearValueOnBlur(e), this.applyValueOnRejectSuggestions(e.currentTarget.value, t);\n }\n }, this.onInputClick = (e) => {\n const t = this.props.opened !== void 0 ? this.props.opened : this.state.opened, i = this.props.adaptiveFilter !== void 0 ? this.props.adaptiveFilter : this.state.text || null;\n if (!t && this.mobileMode) {\n const n = this.base.initState();\n n.syntheticEvent = e, this.base.togglePopup(n), this.base.filterChanged(i, n), this.applyState(n);\n }\n }, this.onInputKeyDown = (e) => {\n const { skipDisabledItems: t, textField: i, dataItemKey: n, groupField: r } = this.props, a = S(this.props), d = this.value, l = Math.max(\n 0,\n a.findIndex((h) => E(h, d, n))\n ), o = e.keyCode, c = this.props.opened !== void 0 ? this.props.opened : this.state.opened, p = this.base.initState();\n if (p.syntheticEvent = e, !e.altKey && (o === C.up || o === C.down)) {\n if (e.preventDefault(), r !== \"\" && i)\n if (!this.props.skipDisabledItems && c)\n this.onNavigate(p, o);\n else {\n let h = 0;\n if (o === C.down || o === C.right) {\n const g = a.slice(l + 1 < a.length ? l + 1 : l).find((b) => !b.disabled && b[i]);\n h = g && a.findIndex((b) => b[i] === g[i]);\n } else if (o === C.up || o === C.left) {\n let g;\n if (l === 0)\n g = a, h = a.findIndex((b) => !b.disabled && b[i]);\n else {\n g = a.slice(0, l);\n let b = g.pop();\n for (; b && b.disabled; )\n b = g.pop();\n h = b && a.findIndex((B) => B[i] === b[i]);\n }\n }\n if (h !== void 0) {\n const g = h - l;\n this.onNavigate(p, o, g);\n } else\n h === void 0 && a.findIndex((g) => g[i] === d[i]) === a.length - 1 && this.onNavigate(p, o);\n }\n else if (!this.props.skipDisabledItems && c)\n this.onNavigate(p, o);\n else {\n let h = null;\n if (o === C.down || o === C.right)\n h = a.slice(l + 1).find((g) => !g.disabled);\n else if (o === C.up || o === C.left) {\n const g = a.slice(0, l);\n for (h = g.pop(); h && h.disabled; )\n h = g.pop();\n }\n if (h) {\n const g = h.id - l - 1;\n this.onNavigate(p, o, g);\n } else\n this.onNavigate(p, o);\n }\n this.applyState(p);\n }\n const y = () => {\n e.preventDefault(), this.base.togglePopup(p), this.applyState(p);\n }, x = this.getFocusedIndex(), v = x === -1, m = !v && this.getCurrentValueDisabledStatus(i, a, x);\n c ? o === C.pageUp ? (e.preventDefault(), this.base.scrollPopupByPageSize(-1)) : o === C.pageDown ? (e.preventDefault(), this.base.scrollPopupByPageSize(1)) : e.altKey && o === C.up ? y() : o === C.enter ? (e.preventDefault(), (i && !v && e.currentTarget.value ? a[x][i] : void 0) ? !t && i && m ? this.clearValueOnEnterOrEsc(e) : m || this.applyValueOnEnter(e.currentTarget.value, p) : this.applyValueOnEnter(e.currentTarget.value, p)) : o === C.esc && (!t && i && m && this.clearValueOnEnterOrEsc(e), this.applyValueOnRejectSuggestions(e.currentTarget.value, p)) : !c && o === C.esc ? this.clearValueOnEnterOrEsc(e) : e.altKey && o === C.down && y();\n }, this.inputOnChange = (e) => {\n const t = this.base.initState();\n t.syntheticEvent = e;\n const i = this.props.opened !== void 0 ? this.props.opened : this.state.opened, n = e.currentTarget, r = n.value;\n if (this.props.suggest) {\n const a = n.selectionEnd === r.length;\n let d = this.props.filter !== void 0 ? this.props.filter : this.state.text;\n w(d) || (d = k(this.value, this.props.textField) || \"\");\n const l = d && d === r, o = d && d.length > r.length;\n l || o || !a ? this._suggested = \"\" : this.suggestValue(r);\n }\n this.props.filter === void 0 && (t.data.text = r), this.state.focusedItem !== void 0 && (t.data.focusedItem = void 0), i || this.base.togglePopup(t), this.base.filterChanged(r, t), this.applyState(t), this.setState({ group: void 0 });\n }, this.clearButtonClick = (e) => {\n const t = this.base.initState();\n t.syntheticEvent = e, e.stopPropagation(), this.clearValue();\n }, this.clearValueOnEnterOrEsc = (e) => {\n const t = this.base.initState();\n t.syntheticEvent = e, e.stopPropagation(), this.clearValue();\n }, this.clearValueOnBlur = (e) => {\n const t = this.base.initState();\n t.syntheticEvent = e, e.stopPropagation(), this.clearValue();\n }, this.clearValueOnToggleBtnClick = (e) => {\n const t = this.base.initState();\n t.syntheticEvent = e, e.stopPropagation(), this.clearValue();\n }, this.setValidity = () => {\n this._input && this._input.setCustomValidity && this._input.setCustomValidity(\n this.validity.valid ? \"\" : this.props.validationMessage || Ee\n );\n }, ae(xe);\n }\n get _inputId() {\n return this.props.id;\n }\n get document() {\n if (z)\n return this.element && this.element.ownerDocument || document;\n }\n /** @hidden */\n get element() {\n return this._element;\n }\n /**\n * The mobile mode of the ComboBox.\n */\n get mobileMode() {\n return !!(this.state.windowWidth && this.state.windowWidth <= Y && this.props.adaptive);\n }\n /**\n * The value of the ComboBox.\n */\n get value() {\n if (this._valueDuringOnChange !== void 0)\n return this._valueDuringOnChange;\n if (this.props.value !== void 0)\n return this.props.value;\n if (this.state.value !== void 0)\n return this.state.value;\n if (this.props.defaultValue !== void 0)\n return this.props.defaultValue;\n }\n /**\n * The index of the selected item.\n */\n get index() {\n const { dataItemKey: s } = this.props, e = S(this.props), t = this.value;\n return e.findIndex((i) => E(i, t, s));\n }\n /**\n * Gets the `name` property of the ComboBox.\n */\n get name() {\n return this.props.name;\n }\n /**\n * Represents the validity state into which the component is set.\n */\n get validity() {\n const s = this.props.validationMessage !== void 0, e = !this.required || this.value !== null && this.value !== \"\" && this.value !== void 0, t = this.props.valid !== void 0 ? this.props.valid : e;\n return {\n customError: s,\n valid: t,\n valueMissing: this.value === null\n };\n }\n get validityStyles() {\n return this.props.validityStyles !== void 0 ? this.props.validityStyles : F.defaultProps.validityStyles;\n }\n /** @hidden */\n get required() {\n return this.props.required !== void 0 ? this.props.required : F.defaultProps.required;\n }\n /** @hidden */\n componentDidUpdate(s, e) {\n var y;\n const { dataItemKey: t, virtual: i, groupField: n = \"\", textField: r } = this.props, a = S(this.props), d = s.virtual ? s.virtual.total : 0, l = this.props.opened !== void 0 ? this.props.opened : this.state.opened, o = s.opened !== void 0 ? s.opened : e.opened;\n s.data !== a && this.checkForDuplicatePlainTextRecords();\n const c = !o && l, p = this.value;\n if (this._valueOnDidUpdate = p, this.base.didUpdate(), i && i.total !== d)\n this.base.vs.calcScrollElementHeight(), this.base.vs.reset();\n else {\n const x = s.value !== void 0 ? s.value : e.value;\n let v = this.hasDuplicates ? this.navigationIndex || 0 : a.findIndex((h) => E(h, p, t));\n this.props.groupMode === \"modern\" && r && p && (v = (y = this.base.getGroupedDataModernMode(a, n)) == null ? void 0 : y.map((h) => h[r]).indexOf(p[r]));\n const m = !E(x, p, t);\n c && i ? this.base.scrollToVirtualItem(i, v) : c && !i ? (this.onPopupOpened(), a && a.length !== 0 && this.base.resetGroupStickyHeader(a[0][n], this), this.base.scrollToItem(v)) : (this.hasDuplicates || l && o && p && m) && this.base.scrollToItem(v);\n }\n c && this._input && this._input.focus(), this.setValidity();\n }\n /** @hidden */\n componentDidMount() {\n var s;\n this.observerResize = z && window.ResizeObserver && new window.ResizeObserver(this.calculateMedia.bind(this)), this.base.didMount(), this.setValidity(), (s = this.document) != null && s.body && this.observerResize && this.observerResize.observe(this.document.body), this.checkForDuplicatePlainTextRecords();\n }\n /** @hidden */\n componentWillUnmount() {\n var s;\n (s = this.document) != null && s.body && this.observerResize && this.observerResize.disconnect();\n }\n /** @hidden */\n render() {\n const s = $(this).toLanguageString(\n U,\n W[U]\n ), e = $(this).toLanguageString(\n j,\n W[j]\n ), {\n dir: t,\n disabled: i,\n clearButton: n = F.defaultProps.clearButton,\n label: r,\n textField: a,\n className: d,\n style: l,\n loading: o,\n iconClassName: c,\n virtual: p,\n size: y,\n rounded: x,\n fillMode: v,\n opened: m = this.state.opened,\n placeholder: h,\n svgIcon: g,\n unstyled: b\n } = this.props, B = !this.validityStyles || this.validity.valid, O = this.props.filter !== void 0 ? this.props.filter : this.state.text, X = k(this.value, a), T = w(O) ? O : X, Z = n && (!!T || w(this.value)), V = this.base.vs, A = this.props.id || this._inputId, L = this.mobileMode, _ = b && b.uComboBox;\n V.enabled = p !== void 0, p !== void 0 && (V.skip = p.skip, V.total = p.total, V.pageSize = p.pageSize);\n const [ee, te] = Q(this.props.prefix || u.Fragment), [se, ie] = Q(this.props.suffix || u.Fragment), R = /* @__PURE__ */ u.createElement(u.Fragment, null, /* @__PURE__ */ u.createElement(\n \"span\",\n {\n className: I(\n D.wrapper({\n c: _,\n size: y,\n rounded: x,\n fillMode: v,\n disabled: i,\n invalid: !B,\n loading: o,\n required: this.required\n }),\n d\n ),\n ref: this.componentRef,\n style: r ? { ...l, width: void 0 } : l,\n dir: t\n },\n this.props.prefix && /* @__PURE__ */ u.createElement(ee, { ...te }),\n this.renderSearchBar(T || \"\", A, h),\n Z && !o && /* @__PURE__ */ u.createElement(Ie, { onClick: this.clearButtonClick, key: \"clearbutton\" }),\n o && /* @__PURE__ */ u.createElement(le, { className: I(D.loadingIcon({ c: _ })), name: \"loading\", key: \"loading\" }),\n this.props.suffix && /* @__PURE__ */ u.createElement(se, { ...ie }),\n /* @__PURE__ */ u.createElement(\n G,\n {\n tabIndex: -1,\n type: \"button\",\n \"aria-label\": m ? e : s,\n icon: c ? void 0 : \"caret-alt-down\",\n svgIcon: g || ye,\n iconClass: c,\n size: y,\n fillMode: v,\n rounded: null,\n themeColor: \"base\",\n className: I(D.inputButton({ c: _ })),\n onClick: this.toggleBtnClick,\n onMouseDown: (oe) => oe.preventDefault()\n }\n ),\n !L && this.renderListContainer()\n ), L && this.renderAdaptiveListContainer());\n return r ? /* @__PURE__ */ u.createElement(\n ce,\n {\n label: r,\n editorId: A,\n editorValue: T,\n editorValid: B,\n editorDisabled: i,\n style: { width: l ? l.width : void 0 },\n children: R,\n unstyled: b\n }\n ) : R;\n }\n /** @hidden */\n onNavigate(s, e, t) {\n const { virtual: i = { skip: 0 } } = this.props, n = S(this.props), r = this.props.filter ? this.props.filter : this.state.text;\n let a = -1, d;\n const l = this.base.vs, o = this.value;\n this._suggested = \"\";\n const c = this.hasDuplicates && this.duplicates.indexOf(o) !== -1;\n if (a = this.getFocusedIndex(c), a !== -1 && !w(o))\n this.handleItemSelect(a, s);\n else if (r === \"\")\n this.handleItemSelect(0, s);\n else {\n const p = i.skip + a;\n d = this.base.navigation.navigate({\n keyCode: e,\n current: p,\n max: (l.enabled ? l.total : n.length) - 1,\n min: 0,\n skipItems: t || void 0\n }), d !== void 0 && this.handleItemSelect(d, s);\n }\n this.navigationIndex = d;\n }\n getCurrentValueDisabledStatus(s, e, t) {\n return s && e && e[t] && e[t].disabled;\n }\n applyValueOnEnter(s, e) {\n const { textField: t, allowCustom: i } = this.props, n = S(this.props), r = this.props.opened !== void 0 ? this.props.opened : this.state.opened, d = k(this.value, t) === s ? this.index : K(n, s, t), l = d !== -1;\n let o;\n if (this._suggested = \"\", l)\n o = n[d];\n else if (i)\n o = t !== void 0 ? { [t]: s } : s;\n else\n return this.selectFocusedItem(s, e);\n this.triggerOnChange(o, e), r && this.base.togglePopup(e), this.props.filter === void 0 && this.state.text !== void 0 && (e.data.text = void 0), this.applyState(e);\n }\n applyValueOnRejectSuggestions(s, e) {\n const { textField: t, allowCustom: i } = this.props, n = S(this.props), r = this.props.opened !== void 0 ? this.props.opened : this.state.opened, a = k(this.value, t);\n if (this._suggested = \"\", s === a || s === \"\" && !w(a))\n return this.closeOpenedApplyStateNonMobileMode(e, r), this.applyState(e);\n const d = K(n, s, t, !0), l = d !== -1;\n let o = null;\n l ? o = n[d] : i && (o = s ? t ? { [t]: s } : s : null), this.triggerOnChange(o, e), this.state.text !== void 0 && (e.data.text = void 0, this.base.filterChanged(\"\", e)), this.closeOpenedApplyStateNonMobileMode(e, r), this.applyState(e);\n }\n selectFocusedItem(s, e) {\n const t = this.props.opened !== void 0 ? this.props.opened : this.state.opened, { textField: i, virtual: n = { skip: 0 }, focusedItemIndex: r = H } = this.props, a = S(this.props), d = n.skip, l = s === \"\" && d === 0 ? 0 : r(a, s, i);\n return l !== -1 ? this.handleItemSelect(l + d, e) : (this.triggerOnChange(null, e), this.state.text !== void 0 && (e.data.text = void 0)), t && this.base.togglePopup(e), this.applyState(e);\n }\n renderAdaptiveListContainer() {\n const { windowWidth: s = 0 } = this.state, {\n header: e,\n footer: t,\n size: i,\n groupField: n,\n groupMode: r,\n list: a,\n virtual: d,\n adaptiveTitle: l,\n groupStickyHeaderItemRender: o,\n unstyled: c\n } = this.props, p = S(this.props), y = this.props.opened !== void 0 ? this.props.opened : this.state.opened, x = this.base.getAdaptiveAnimation(), v = c && c.uComboBox, m = c && c.uDropDownsActionSheet;\n let { group: h } = this.state;\n h === void 0 && n !== void 0 && (h = k(p[0], n));\n const g = {\n navigatable: !1,\n navigatableElements: [],\n expand: y,\n animation: x,\n onClose: (b) => this.toggleBtnClick(b),\n animationStyles: s <= J ? { top: 0, width: \"100%\", height: \"100%\" } : void 0,\n className: I(\n M.wrapper({\n c: m,\n isFullScreen: s <= J\n })\n )\n };\n return /* @__PURE__ */ u.createElement(Se, { ...g }, /* @__PURE__ */ u.createElement(De, null, /* @__PURE__ */ u.createElement(\"div\", { className: I(M.titleBar({ c: m })) }, /* @__PURE__ */ u.createElement(\"div\", { className: I(M.title({ c: m })) }, /* @__PURE__ */ u.createElement(\"div\", { className: I(M.header({ c: m })) }, l), /* @__PURE__ */ u.createElement(\"div\", { className: I(M.subtitle({ c: m })) })), /* @__PURE__ */ u.createElement(\"div\", { className: I(M.actions({ c: m })) }, /* @__PURE__ */ u.createElement(\n G,\n {\n tabIndex: 0,\n \"aria-label\": \"Cancel\",\n \"aria-disabled\": \"false\",\n type: \"button\",\n fillMode: \"flat\",\n themeColor: \"base\",\n size: \"large\",\n onClick: this.toggleBtnClick,\n icon: \"x\",\n svgIcon: Ce\n }\n ))), /* @__PURE__ */ u.createElement(\"div\", { className: I(M.titleBarGroup({ c: m })) }, this.renderMobileListFilter())), /* @__PURE__ */ u.createElement(we, { overflowHidden: !0 }, /* @__PURE__ */ u.createElement(\"div\", { className: I(\n D.listContainer({\n c: v\n })\n ) }, /* @__PURE__ */ u.createElement(\n \"div\",\n {\n className: I(\n D.list({\n c: v,\n list: a,\n size: \"large\",\n tableSize: i,\n virtual: d\n })\n )\n },\n e && /* @__PURE__ */ u.createElement(\"div\", { className: I(D.listHeader({ c: v })) }, e),\n !a && h && p.length !== 0 && /* @__PURE__ */ u.createElement(\n q,\n {\n group: h,\n groupMode: r,\n render: o\n }\n ),\n this.renderList(),\n t && /* @__PURE__ */ u.createElement(\"div\", { className: I(D.listFooter({ c: v }), this.props.footerClassName) }, t)\n ))));\n }\n renderListContainer() {\n const s = this.base, { dir: e, header: t, footer: i, groupField: n, groupMode: r, size: a, list: d, virtual: l, groupStickyHeaderItemRender: o, unstyled: c } = this.props, p = S(this.props), y = this.props.opened !== void 0 ? this.props.opened : this.state.opened, x = s.getPopupSettings(), v = x.width !== void 0 ? x.width : s.popupWidth, m = c && c.uComboBox;\n let { group: h } = this.state;\n return h === void 0 && n !== void 0 && (h = k(p[0], n)), /* @__PURE__ */ u.createElement(\n ve,\n {\n width: v,\n popupSettings: {\n ...x,\n anchor: x.anchor || this.element,\n show: y,\n popupClass: I(\n x.popupClass,\n D.listContainer({\n c: m,\n popup: !0\n })\n )\n },\n dir: e !== void 0 ? e : this.base.dirCalculated,\n itemsCount: [p.length]\n },\n /* @__PURE__ */ u.createElement(\n \"div\",\n {\n className: I(\n D.list({\n c: m,\n list: d,\n size: a,\n tableSize: a,\n virtual: l\n })\n )\n },\n t && /* @__PURE__ */ u.createElement(\"div\", { className: I(D.listHeader({ c: m })) }, t),\n !d && h && p.length !== 0 && /* @__PURE__ */ u.createElement(q, { group: h, groupMode: r, render: o }),\n this.renderList(),\n i && /* @__PURE__ */ u.createElement(\n \"div\",\n {\n className: I(D.listFooter({ c: m }), this.props.footerClassName)\n },\n i\n )\n )\n );\n }\n renderList() {\n const s = this.base, {\n textField: e,\n dataItemKey: t,\n listNoDataRender: i,\n itemRender: n,\n groupHeaderItemRender: r,\n virtual: a = { skip: 0, total: void 0 },\n unstyled: d\n } = this.props, l = S(this.props), o = s.getPopupSettings(), c = s.vs, p = a.skip, y = this.props.opened !== void 0 ? this.props.opened : this.state.opened, x = `translateY(${c.translate}px)`, v = y ? this.getFocusedIndex(this.hasDuplicates) : void 0, m = this.props.filter !== void 0 ? this.props.filter : this.state.text, h = k(this.value, e), g = w(m) && m !== h ? null : this.value, b = this.props.list || fe, B = d && d.uComboBox;\n return /* @__PURE__ */ u.createElement(\n b,\n {\n id: s.listBoxId,\n virtual: !!a,\n show: y,\n data: l,\n focusedIndex: v,\n value: g,\n textField: e,\n valueField: t,\n groupField: this.props.groupField,\n groupMode: this.props.groupMode,\n isMultiColumn: this.props.isMultiColumn,\n optionsGuid: s.guid,\n hasDuplicates: this.hasDuplicates,\n listRef: (O) => {\n c.list = this.base.list = O, this.itemHeight = 0;\n },\n wrapperStyle: this.state.windowWidth && this.state.windowWidth > Y ? { maxHeight: o.height } : {},\n wrapperCssClass: I(D.listContent({\n c: B,\n virtual: a\n })),\n listStyle: c.enabled ? { transform: x } : void 0,\n key: \"listkey\",\n skip: p,\n onClick: this.handleItemClick,\n itemRender: n,\n groupHeaderItemRender: r,\n noDataRender: i,\n onMouseDown: (O) => O.preventDefault(),\n onScroll: this.onScroll,\n wrapperRef: c.scrollerRef,\n scroller: this.base.renderScrollElement(),\n ariaSetSize: a.total\n }\n );\n }\n renderSearchBar(s, e, t) {\n const {\n tabIndex: i,\n disabled: n,\n title: r,\n ariaLabelledBy: a,\n ariaDescribedBy: d,\n dataItemKey: l,\n virtual: o = { skip: 0 },\n accessKey: c,\n unstyled: p\n } = this.props, y = S(this.props), x = this.props.opened !== void 0 ? this.props.opened : this.state.opened, v = this.value, m = Math.max(\n 0,\n y.findIndex((g) => E(g, v, l))\n );\n this._suggested && !E(this._valueOnDidUpdate, v, l) && (this._suggested = \"\");\n const h = {\n accessKey: c\n };\n return /* @__PURE__ */ u.createElement(\n me,\n {\n id: e,\n readOnly: x && this.mobileMode,\n placeholder: t,\n tabIndex: i,\n title: r,\n value: s + this._suggested,\n suggestedText: this._suggested,\n ref: (g) => this._input = g && g.input,\n onClick: this.onInputClick,\n onKeyDown: this.onInputKeyDown,\n onChange: this.inputOnChange,\n onFocus: this.base.handleFocus,\n onBlur: this.handleBlur,\n disabled: n,\n expanded: x,\n owns: this.base.listBoxId,\n activedescendant: `option-${this.base.guid}-${m + o.skip}`,\n role: \"combobox\",\n ariaLabelledBy: a,\n ariaLabel: this.props.ariaLabel,\n ariaDescribedBy: d,\n ariaRequired: this.required,\n render: this.props.valueRender,\n ariaControls: this.base.listBoxId,\n unstyled: p,\n ...h\n }\n );\n }\n clearValue() {\n const s = this.base.initState();\n this._suggested = \"\", this.navigationIndex = void 0, this.base.filterChanged(\"\", s), this.props.filter === void 0 && this.state.text !== void 0 && (s.data.text = void 0), this.triggerOnChange(null, s);\n const e = this.props.opened !== void 0 ? this.props.opened : this.state.opened, t = this.mobileMode;\n e && !t && this.base.togglePopup(s), this.applyState(s);\n }\n triggerOnChange(s, e) {\n const t = this.value;\n !this.hasDuplicates && (!w(t) && !w(s) || E(t, s, this.props.dataItemKey)) || (this.props.value === void 0 && (e.data.value = s), this._valueDuringOnChange = s, e.events.push({ type: \"onChange\" }));\n }\n getFocusedIndex(s) {\n const e = this.value, {\n textField: t,\n dataItemKey: i,\n virtual: n = { skip: 0 },\n focusedItemIndex: r = H,\n skipDisabledItems: a\n } = this.props, d = S(this.props), l = this.props.filter ? this.props.filter : this.state.text;\n return s && this.navigationIndex !== void 0 ? this.navigationIndex : w(e) && l === void 0 ? d.findIndex((o) => E(o, e, i)) : l ? r(d, l, t) : a && t && !l && n.skip === 0 ? d.findIndex((o) => !o.disabled && o[t]) : n.skip === 0 ? 0 : -1;\n }\n suggestValue(s) {\n const { data: e, textField: t } = this.props;\n this._suggested = ge(s, e, t);\n }\n applyState(s) {\n this.base.applyState(s), this._valueDuringOnChange = void 0;\n }\n calculateMedia(s) {\n for (const e of s)\n this.setState({ windowWidth: e.target.clientWidth });\n }\n};\nF.displayName = \"ComboBox\", F.propTypes = {\n ...N.propTypes,\n size: f.oneOf([null, \"small\", \"medium\", \"large\"]),\n rounded: f.oneOf([null, \"small\", \"medium\", \"large\", \"full\"]),\n fillMode: f.oneOf([null, \"solid\", \"flat\", \"outline\"]),\n dataItemKey: f.string,\n groupField: f.string,\n groupMode: f.oneOf([void 0, \"classic\", \"modern\"]),\n isMultiColumn: f.bool,\n suggest: f.bool,\n placeholder: f.string,\n title: f.string,\n allowCustom: f.bool,\n clearButton: f.bool,\n iconClassName: f.string,\n svgIcon: ne,\n validationMessage: f.string,\n required: f.bool,\n id: f.string,\n ariaLabelledBy: f.string,\n ariaLabel: f.string,\n ariaDescribedBy: f.string,\n list: f.any,\n valueRender: f.func,\n skipDisabledItems: f.bool\n}, F.defaultProps = {\n ...N.defaultProps,\n size: \"medium\",\n rounded: \"medium\",\n fillMode: \"solid\",\n allowCustom: !1,\n clearButton: !0,\n required: !1,\n groupMode: \"modern\",\n isMultiColumn: !1,\n skipDisabledItems: !0,\n prefix: void 0,\n suffix: void 0\n};\nlet P = F;\nconst ke = re(), Fe = de(\n pe(\n ke,\n he(P)\n )\n);\nFe.displayName = \"KendoReactComboBox\";\nexport {\n Fe as ComboBox,\n ke as ComboBoxPropsContext,\n P as ComboBoxWithoutContext\n};\n","// framework\r\nimport { useState, useEffect } from \"react\";\r\n// kendo\r\nimport { ComboBox, ComboBoxChangeEvent, ComboBoxFilterChangeEvent } from \"@progress/kendo-react-dropdowns\";\r\nimport { filterBy } from \"@progress/kendo-data-query\";\r\n\r\n// Note: expand as necessary e.g. at present there is no need to externalise the current filter or dynamically sort data\r\ninterface IProps {\r\n id: string;\r\n value: T | undefined;\r\n data: T[] | undefined;\r\n keyField?: string | undefined;\r\n textField?: string | undefined;\r\n disabled?: boolean | undefined;\r\n valid?: boolean | undefined;\r\n className?: string | undefined;\r\n filterable?: boolean | undefined;\r\n suggest?: boolean | undefined;\r\n allowCustom?: boolean | undefined;\r\n onChange: (value: T | undefined) => void;\r\n onBlur?: (() => void) | undefined;\r\n}\r\n\r\nexport default function KendoComboBox(props: IProps) {\r\n // value - must be set to null in order to programatically clear the combobox\r\n const [value, setValue] = useState();\r\n useEffect(() => {\r\n setValue(props.value ?? null);\r\n }, [props.value]);\r\n\r\n // data\r\n const [data, setData] = useState([]);\r\n useEffect(() => {\r\n setData(props.data ? props.data : []);\r\n }, [props.data]);\r\n\r\n // filter\r\n function onFilterChange(event: ComboBoxFilterChangeEvent) {\r\n setData(props.data ? filterBy(props.data.slice(), event.filter) : []);\r\n }\r\n\r\n function onChange(event: ComboBoxChangeEvent) {\r\n const value = event.target.value;\r\n setValue(value);\r\n props.onChange(value ?? undefined);\r\n }\r\n\r\n return (\r\n \r\n );\r\n}\r\n","// framework\r\nimport { useState, useEffect } from \"react\";\r\n// kendo\r\nimport { DropDownList, DropDownListChangeEvent } from \"@progress/kendo-react-dropdowns\";\r\n\r\n// Note: expand as necessary e.g. at present there is no need to dynamically sort data\r\ninterface IProps {\r\n id: string;\r\n value: T | undefined;\r\n data: T[] | undefined;\r\n keyField?: string | undefined;\r\n textField?: string | undefined;\r\n disabled?: boolean | undefined;\r\n valid?: boolean | undefined;\r\n className?: string | undefined;\r\n onChange: (value: T | undefined) => void;\r\n onBlur?: (() => void) | undefined;\r\n}\r\n\r\nexport default function KendoDropDownList(props: IProps) {\r\n // value - must be set to null in order to programatically clear the dropdown\r\n const [value, setValue] = useState();\r\n useEffect(() => {\r\n setValue(props.value ?? null);\r\n }, [props.value]);\r\n\r\n // data\r\n const [data, setData] = useState([]);\r\n useEffect(() => {\r\n setData(props.data ? props.data : []);\r\n }, [props.data]);\r\n\r\n function onChange(event: DropDownListChangeEvent) {\r\n const value = event.target.value;\r\n setValue(value);\r\n props.onChange(value ?? undefined);\r\n }\r\n\r\n return (\r\n \r\n );\r\n}\r\n","// framework\r\nimport React, { useCallback, useEffect, useMemo, useState } from \"react\";\r\n// kendo\r\nimport { ComboBox, ComboBoxChangeEvent, ComboBoxFilterChangeEvent } from \"@progress/kendo-react-dropdowns\";\r\nimport { FilterDescriptor, filterBy } from \"@progress/kendo-data-query\";\r\n\r\ninterface IProps {\r\n id: string;\r\n value: T | undefined;\r\n data: T[] | undefined;\r\n keyField?: string | undefined;\r\n textField?: string | undefined;\r\n recordsToShow?: number | undefined;\r\n disabled?: boolean | undefined;\r\n valid?: boolean | undefined;\r\n className?: string | undefined;\r\n filterable?: boolean | undefined;\r\n suggest?: boolean | undefined;\r\n allowCustom?: boolean | undefined;\r\n onChange: (value: T | undefined) => void;\r\n onBlur?: (() => void) | undefined;\r\n}\r\n\r\n// NOTE: While this has been implemented in TERI it is not currently consumed here, although it will be ported to and consumed in PEPI...\r\nexport default function KendoLargeComboBox(props: IProps) {\r\n const recordsToShow = props.recordsToShow ?? 100;\r\n\r\n const hintText = \"Enter details to filter...\";\r\n const hintMessageItem = useMemo((): T => (props.keyField && props.textField ? ({ [props.keyField]: null, [props.textField]: hintText } as T) : (hintText as T)), [props.keyField, props.textField]);\r\n\r\n const noRecordsFoundText = \"No records found\";\r\n const noRecordsFoundMessageItem = useMemo(\r\n () => (props.keyField && props.textField ? ({ [props.keyField]: null, [props.textField]: `${noRecordsFoundText}` } as T) : (`${noRecordsFoundText}` as T)),\r\n [props.keyField, props.textField]\r\n );\r\n\r\n const displayingFirstText = \"Displaying first\";\r\n const getDisplayingFirstMessageItem = useCallback(\r\n (filteredDataLength: number) => {\r\n return props.keyField && props.textField\r\n ? ({ [props.keyField]: null, [props.textField]: `${displayingFirstText} ${recordsToShow} of ${filteredDataLength} records` } as T)\r\n : (`${displayingFirstText} ${recordsToShow} of ${filteredDataLength} records` as T);\r\n },\r\n [props.keyField, props.textField, recordsToShow]\r\n );\r\n\r\n const getFilterTextForValue = useCallback(\r\n (value: T | undefined) => {\r\n return value ? (props.textField ? (value as any)[props.textField] : value) : null;\r\n },\r\n [props.textField]\r\n );\r\n\r\n const getSanitisedValue = useCallback(\r\n (value: T | undefined): T | undefined => {\r\n const filterText = getFilterTextForValue(value);\r\n // NOTE: If custom items are allowed, then we need to check it isn't one of the custom message items we've inserted...\r\n if (props.allowCustom && filterText !== hintText && filterText !== noRecordsFoundText && !filterText?.startsWith(displayingFirstText)) {\r\n return value;\r\n } else {\r\n return props.data?.find((v) => v === value);\r\n }\r\n },\r\n [getFilterTextForValue, props.allowCustom, props.data]\r\n );\r\n\r\n const [filterText, setFilterText] = React.useState(null);\r\n // value - must be set to null in order to programatically clear the combobox\r\n const [value, setValue] = useState(null);\r\n const [data, setData] = useState([hintMessageItem]);\r\n\r\n useEffect(() => {\r\n const value = getSanitisedValue(props.value);\r\n setFilterText(getFilterTextForValue(value));\r\n setValue(value ?? null);\r\n setData(value ? [value] : [hintMessageItem]);\r\n }, [getFilterTextForValue, getSanitisedValue, hintMessageItem, props.textField, props.value]);\r\n\r\n const filterData = (filter: FilterDescriptor): T[] => {\r\n if (!filter.value || filter.value.length === 0) return [hintMessageItem];\r\n\r\n const data = props.data?.slice();\r\n const filteredData = filterBy(data ?? [], filter);\r\n\r\n if (filteredData.length === 0) return [noRecordsFoundMessageItem];\r\n if (filteredData.length <= recordsToShow) return filteredData;\r\n\r\n return filteredData?.slice(0, recordsToShow).concat([getDisplayingFirstMessageItem(filteredData.length)]);\r\n };\r\n\r\n function onFilterChange(event: ComboBoxFilterChangeEvent) {\r\n setFilterText(event.filter.value);\r\n setData(filterData(event.filter));\r\n }\r\n\r\n function onChange(event: ComboBoxChangeEvent) {\r\n const value = getSanitisedValue(event.target.value);\r\n setFilterText(getFilterTextForValue(value));\r\n setValue(value ?? null);\r\n props.onChange(value ?? undefined);\r\n }\r\n\r\n function onBlur() {\r\n if (!value) {\r\n setFilterText(null);\r\n setData([hintMessageItem]);\r\n }\r\n props.onBlur?.();\r\n }\r\n\r\n return (\r\n \r\n );\r\n}\r\n","import { IValidationModel, ValidationVisibilityEnum } from \"./ValidationModel\";\r\n\r\nexport default function ValidationMessageView(props: { name: string; validationModel: IValidationModel }) {\r\n const name = props.name;\r\n const vm = props.validationModel;\r\n\r\n // not visible\r\n if (vm.visibility === ValidationVisibilityEnum.None) return <>;\r\n\r\n const errors = vm.getErrors(name);\r\n\r\n // no errors\r\n if (errors.length === 0) return <>;\r\n\r\n // errors\r\n // note: intentionally not using className=\"invalid-feedback\" because this is only visible when preceded by an element with className=\"is-invalid\"\r\n // and we want to be able to control the visibility of adorners and messages independently\r\n return (\r\n
\r\n {errors.map((e, index) => (\r\n
{e}
\r\n ))}\r\n
\r\n );\r\n}\r\n","// framework\r\nimport React, { useEffect, useState } from \"react\";\r\n// kendo\r\nimport KendoComboBox from \"../../../common/kendo/KendoComboBox\";\r\nimport KendoDropDownList from \"../../../common/kendo/KendoDropDownList\";\r\nimport KendoLargeComboBox from \"../../../common/kendo/KendoLargeComboBox\";\r\n// api\r\nimport * as Client from \"../../../api/Client\";\r\n// common\r\nimport * as Forms from \"../../../common/forms/BootstrapForms\";\r\nimport { IValidationModel } from \"../../../common/validation/ValidationModel\";\r\nimport ValidationMessageView from \"../../../common/validation/ValidationMessageView\";\r\n// models\r\nimport { IFeedbackViewModel, IRootViewModel } from \"../models/models\";\r\n\r\ninterface IProps {\r\n vm: IRootViewModel;\r\n setVm: (vm: IRootViewModel) => void;\r\n validation: IValidationModel;\r\n onReset: () => void;\r\n onSubmit: () => void;\r\n}\r\n\r\nexport default function FeedbackCreateView(props: IProps): React.JSX.Element {\r\n const { vm, setVm, validation, onReset, onSubmit } = props;\r\n\r\n const [state, setState] = useState(vm.feedback);\r\n const honorifics = vm.referenceData.honorifics;\r\n const feedbackTypes = vm.referenceData.feedbackTypes;\r\n const nopimsActivityTypes = vm.referenceData.nopimsActivityTypes;\r\n const dataFeedbackActivities = vm.referenceData.activities;\r\n const dataMonitoringItemTypes = vm.referenceData.dataMonitoringItemTypes;\r\n\r\n useEffect(() => {\r\n setState(vm.feedback);\r\n }, [vm.feedback]);\r\n\r\n function updateViewModel() {\r\n setVm(vm.refreshFeedbackDetails({ ...state }));\r\n }\r\n\r\n function updateStateAndViewModel(state: IFeedbackViewModel) {\r\n setState(state);\r\n setVm(vm.refreshFeedbackDetails({ ...state }));\r\n }\r\n\r\n // cascading reference data\r\n const [filteredActivites, setFilteredActivites] = useState([]);\r\n useEffect(() => {\r\n setFilteredActivites(state.nopimsActivityType ? dataFeedbackActivities.filter((n) => n.nopimsActivityTypeId === state.nopimsActivityType!.id) : []);\r\n }, [dataFeedbackActivities, state.nopimsActivityType]);\r\n\r\n const [filteredDataMonitoringItemTypes, setFilteredDataMonitoringItemTypes] = useState([]);\r\n useEffect(() => {\r\n setFilteredDataMonitoringItemTypes(\r\n state.nopimsActivityType && state.activity\r\n ? dataMonitoringItemTypes.filter((n) => n.nopimsActivityTypeId === state.nopimsActivityType!.id && n.surveyAcquisitionTypeId === state.activity!.surveyAcquisitionTypeId)\r\n : []\r\n );\r\n }, [dataMonitoringItemTypes, state.nopimsActivityType, state.activity]);\r\n\r\n return (\r\n <>\r\n
\r\n
\r\n

Contact Details

\r\n \r\n \r\n \r\n Title\r\n updateStateAndViewModel({ ...state, honorific: value })}\r\n onBlur={updateViewModel}\r\n />\r\n \r\n \r\n setState({ ...state, customerFirstName: value })}\r\n onBlur={updateViewModel}\r\n />\r\n \r\n \r\n \r\n setState({ ...state, customerLastName: value })}\r\n onBlur={updateViewModel}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n setState({ ...state, customerCompanyName: value })}\r\n onBlur={updateViewModel}\r\n />\r\n \r\n \r\n setState({ ...state, customerContactNumber: value })}\r\n onBlur={updateViewModel}\r\n />\r\n \r\n \r\n \r\n setState({ ...state, customerEmailAddress: value })}\r\n onBlur={updateViewModel}\r\n />\r\n \r\n \r\n \r\n \r\n

Request Details

\r\n \r\n \r\n \r\n Request Type\r\n \r\n updateStateAndViewModel({\r\n ...state,\r\n feedbackType: value,\r\n nopimsActivityType: undefined,\r\n activity: undefined,\r\n dataMonitoringItemType: undefined,\r\n })\r\n }\r\n onBlur={updateViewModel}\r\n />\r\n \r\n \r\n \r\n \r\n {state.feedbackType?.isDataFeedbackType && (\r\n <>\r\n \r\n \r\n \r\n Activity Type\r\n updateStateAndViewModel({ ...state, nopimsActivityType: value, activity: undefined, dataMonitoringItemType: undefined })}\r\n onBlur={updateViewModel}\r\n />\r\n \r\n \r\n \r\n Activity Name\r\n updateStateAndViewModel({ ...state, activity: value, dataMonitoringItemType: undefined })}\r\n onBlur={updateViewModel}\r\n />\r\n \r\n \r\n \r\n Data Type\r\n updateStateAndViewModel({ ...state, dataMonitoringItemType: value })}\r\n onBlur={updateViewModel}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n )}\r\n \r\n \r\n \r\n setState({ ...state, customerComments: value })}\r\n onBlur={updateViewModel}\r\n rows={5}\r\n />\r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n );\r\n}\r\n","// framework\r\nimport React from \"react\";\r\n// common\r\nimport * as Forms from \"../../../common/forms/BootstrapForms\";\r\n// models\r\nimport { IRootViewModel } from \"../models/models\";\r\n\r\ninterface IProps {\r\n vm: IRootViewModel;\r\n onReset: () => void;\r\n}\r\n\r\nexport default function FeedbackCreateSubmittedView(props: IProps): React.JSX.Element {\r\n const { vm } = props;\r\n const feedback = vm.feedback;\r\n\r\n return (\r\n <>\r\n
\r\n
\r\n

Contact Details

\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n

Request Details

\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {feedback.feedbackType?.isDataFeedbackType && (\r\n <>\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n )}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n );\r\n}\r\n","// framework\r\nimport { useState, useEffect } from \"react\";\r\nimport TaskLayout from \"../../common/shell/TaskLayout\";\r\n// redux\r\nimport * as Actions from \"./actions\";\r\n// common\r\nimport * as toastHelper from \"../../common/toastHelper\";\r\nimport { useUserToken } from \"../../common/shell/shellHelper\";\r\nimport { ValidationVisibilityEnum } from \"../../common/validation/ValidationModel\";\r\n// models\r\nimport { IRootViewModel, RootViewModel } from \"./models/models\";\r\nimport validator from \"./models/validator\";\r\n// views\r\nimport FeedbackCreateView from \"./views/FeedbackCreateView\";\r\nimport FeedbackCreateSubmittedView from \"./views/FeedbackCreateSubmittedView\";\r\nimport NopimsPageLayout from \"../shell/NopimsPageLayout\";\r\nimport { nopimsLhsNavItemEnum } from \"../shell/NopimsLhsNav\";\r\n\r\nexport default function Controller(): React.JSX.Element {\r\n const userToken = useUserToken();\r\n const [vm, setVm] = useState(new RootViewModel(userToken!));\r\n\r\n // initial load\r\n useEffect(() => {\r\n Actions.initialise(vm, setVm);\r\n }, []); // eslint-disable-line react-hooks/exhaustive-deps\r\n\r\n const [validationVisibility, setValidationVisibility] = useState(ValidationVisibilityEnum.Messages);\r\n const validation = validator(vm, validationVisibility);\r\n\r\n function onReset() {\r\n setValidationVisibility(ValidationVisibilityEnum.Messages);\r\n setVm(vm.reset());\r\n window.scrollTo({ top: 0, behavior: \"smooth\" });\r\n }\r\n\r\n function onSubmit() {\r\n if (!validation.isValid()) {\r\n setValidationVisibility(ValidationVisibilityEnum.MessagesAndAdorners);\r\n toastHelper.showValidationErrorNotification();\r\n return;\r\n }\r\n setValidationVisibility(ValidationVisibilityEnum.None);\r\n Actions.createPublicFeedbackCommand(vm, setVm);\r\n }\r\n\r\n return (\r\n \r\n \r\n {vm.isSubmitted && }\r\n {!vm.isSubmitted && }\r\n \r\n \r\n );\r\n}\r\n","import { logError } from \"../../common/LogHelper\";\r\nimport { createFeedbackClient } from \"../../api/clientFactory\";\r\nimport { simpleCall } from \"../../api/callHelper\";\r\nimport * as Client from \"../../api/Client\";\r\nimport { IRootViewModel } from \"./models/models\";\r\n\r\nexport async function initialise(viewModel: IRootViewModel, setViewModel: (viewModel: IRootViewModel) => void): Promise {\r\n let vm = viewModel;\r\n try {\r\n setViewModel((vm = vm.setBusy(true)));\r\n const client = createFeedbackClient();\r\n const request = new Client.GetCreatePublicFeedbackReferenceDataRequestDto({});\r\n const response = await simpleCall(() => client.getCreatePublicFeedbackReferenceData(request));\r\n setViewModel((vm = vm.refreshReferenceData(response)));\r\n } catch (e) {\r\n logError(e);\r\n } finally {\r\n setViewModel((vm = vm.setBusy(false)));\r\n }\r\n}\r\n\r\nexport async function createPublicFeedbackCommand(viewModel: IRootViewModel, setViewModel: (viewModel: IRootViewModel) => void): Promise {\r\n let vm = viewModel;\r\n try {\r\n setViewModel((vm = vm.setBusy(true)));\r\n const client = createFeedbackClient();\r\n const request = new Client.CreatePublicFeedbackRequestDto({\r\n userToken: vm.userToken,\r\n honorificId: vm.feedback.honorific?.id,\r\n customerFirstName: vm.feedback.customerFirstName!,\r\n customerLastName: vm.feedback.customerLastName!,\r\n customerCompanyName: vm.feedback.customerCompanyName,\r\n customerContactNumber: vm.feedback.customerContactNumber!,\r\n customerEmailAddress: vm.feedback.customerEmailAddress!,\r\n feedbackTypeId: vm.feedback.feedbackType!.id,\r\n nopimsActivityTypeId: vm.feedback.nopimsActivityType?.id,\r\n activityId: vm.feedback.activity?.id,\r\n dataMonitoringItemTypeId: vm.feedback.dataMonitoringItemType?.id,\r\n customerComments: vm.feedback.customerComments!,\r\n });\r\n const response = await simpleCall(() => client.createPublicFeedback(request));\r\n setViewModel((vm = vm.refreshFeedbackCreateResponse(response)));\r\n } catch (e) {\r\n logError(e);\r\n } finally {\r\n setViewModel((vm = vm.setBusy(false)));\r\n }\r\n}\r\n","// framework\r\nimport * as Validation from \"../../../common/validation/ValidationModel\";\r\n// models\r\nimport * as Models from \"./models\";\r\n\r\nexport default function validate(vm: Models.IRootViewModel, visibility: Validation.ValidationVisibilityEnum): Validation.IValidationModel {\r\n const v = new Validation.ValidationModel(visibility);\r\n if (Validation.isNullOrWhiteSpace(vm.feedback.customerFirstName)) {\r\n v.addError(\"CreateFeedback.CustomerFirstName\", \"First Name is required.\");\r\n }\r\n\r\n if (Validation.isNullOrWhiteSpace(vm.feedback.customerLastName)) {\r\n v.addError(\"CreateFeedback.CustomerLastName\", \"Last Name is required.\");\r\n }\r\n\r\n if (Validation.isNullOrWhiteSpace(vm.feedback.customerContactNumber)) {\r\n v.addError(\"CreateFeedback.CustomerContactNumber\", \"Contact Number is required.\");\r\n }\r\n\r\n if (Validation.isNullOrWhiteSpace(vm.feedback.customerEmailAddress)) {\r\n v.addError(\"CreateFeedback.CustomerEmailAddress\", \"Email is required.\");\r\n } else if (!Validation.isValidEmail(vm.feedback.customerEmailAddress!)) {\r\n v.addError(\"CreateFeedback.CustomerEmailAddress\", \"Email is not valid.\");\r\n }\r\n\r\n if (!vm.feedback.feedbackType) {\r\n v.addError(\"CreateFeedback.FeedbackType\", \"Request Type is required.\");\r\n }\r\n\r\n if (vm.feedback.feedbackType?.isDataFeedbackType && !vm.feedback.nopimsActivityType) {\r\n v.addError(\"CreateFeedback.NopimsActivityType\", \"Activity Type is required.\");\r\n }\r\n\r\n if (vm.feedback.nopimsActivityType && !vm.feedback.activity) {\r\n v.addError(\"CreateFeedback.Activity\", \"Activity Name is required.\");\r\n }\r\n\r\n if (vm.feedback.activity && !vm.feedback.dataMonitoringItemType) {\r\n v.addError(\"CreateFeedback.DataMonitoringItemType\", \"Data Type is required.\");\r\n }\r\n\r\n if (Validation.isNullOrWhiteSpace(vm.feedback.customerComments)) {\r\n v.addError(\"CreateFeedback.CustomerComments\", \"Comments are required.\");\r\n }\r\n\r\n return v;\r\n}\r\n","// framework\r\nimport { clone } from \"lodash\";\r\n// api\r\nimport * as Client from \"../../../../api/Client\";\r\n\r\nexport interface IReferenceDataViewModel {\r\n honorifics: Client.GetCreatePublicCoreCuttingsRequestReferenceDataResponseHonorificDto[];\r\n countrySubDivisions: Client.GetCreatePublicCoreCuttingsRequestReferenceDataResponseCountrySubDivisionDto[];\r\n countries: Client.GetCreatePublicCoreCuttingsRequestReferenceDataResponseCountryDto[];\r\n boreholes: Client.GetCreatePublicCoreCuttingsRequestReferenceDataResponseBoreholeDto[];\r\n sampleTypes: Client.GetCreatePublicCoreCuttingsRequestReferenceDataResponseSampleTypeDto[];\r\n}\r\n\r\nexport interface ISampleViewModel {\r\n uniqueId: string;\r\n borehole?: Client.GetCreatePublicCoreCuttingsRequestReferenceDataResponseBoreholeDto | undefined;\r\n intervalTop?: number | undefined;\r\n intervalBottom?: number | undefined;\r\n sampleTypes?: Client.GetCreatePublicCoreCuttingsRequestReferenceDataResponseSampleTypeDto[] | undefined;\r\n}\r\n\r\nexport interface ICoreCuttingsRequestViewModel {\r\n honorific?: Client.GetCreatePublicCoreCuttingsRequestReferenceDataResponseHonorificDto | undefined;\r\n firstName?: string | undefined;\r\n lastName?: string | undefined;\r\n companyName?: string | undefined;\r\n contactNumber?: string | undefined;\r\n emailAddress?: string | undefined;\r\n streetAddress?: string | undefined;\r\n suburb?: string | undefined;\r\n countrySubDivision?: Client.GetCreatePublicCoreCuttingsRequestReferenceDataResponseCountrySubDivisionDto | undefined;\r\n country?: Client.GetCreatePublicCoreCuttingsRequestReferenceDataResponseCountryDto | undefined;\r\n postcode?: string | undefined;\r\n isAcademia?: boolean | undefined;\r\n supervisorHonorific?: Client.GetCreatePublicCoreCuttingsRequestReferenceDataResponseHonorificDto | undefined;\r\n supervisorFirstName?: string | undefined;\r\n supervisorLastName?: string | undefined;\r\n supervisorUniversityName?: string | undefined;\r\n supervisorContactNumber?: string | undefined;\r\n supervisorEmailAddress?: string | undefined;\r\n supervisorSchoolName?: string | undefined;\r\n studyDescription?: string | undefined;\r\n samples: ISampleViewModel[];\r\n}\r\n\r\nexport interface IRootViewModel {\r\n userToken: string;\r\n statusMessages?: Client.StatusMessagesDto;\r\n isBusy: boolean;\r\n isDirty: boolean;\r\n isSubmitted: boolean;\r\n referenceData: IReferenceDataViewModel;\r\n coreCuttingsRequest: ICoreCuttingsRequestViewModel;\r\n\r\n setBusy(isBusy: boolean): IRootViewModel;\r\n reset(): IRootViewModel;\r\n\r\n addSample(sample: ISampleViewModel): IRootViewModel;\r\n removeSample(sample: ISampleViewModel): IRootViewModel;\r\n\r\n refreshReferenceData(response: Client.GetCreatePublicCoreCuttingsRequestReferenceDataResponseDto): IRootViewModel;\r\n refreshCoreCuttingsRequestDetails(coreCuttingsRequest: ICoreCuttingsRequestViewModel): IRootViewModel;\r\n refreshCoreCuttingsRequestCreateResponse(response: Client.CreatePublicCoreCuttingsRequestResponseDto): IRootViewModel;\r\n}\r\n\r\nexport class RootViewModel implements IRootViewModel {\r\n constructor(userToken: string) {\r\n this.userToken = userToken;\r\n this.isSubmitted = false;\r\n this.statusMessages = undefined;\r\n this.isBusy = false;\r\n this.isDirty = false;\r\n this.coreCuttingsRequest = {\r\n samples: [],\r\n };\r\n this.referenceData = {\r\n honorifics: [],\r\n countrySubDivisions: [],\r\n countries: [],\r\n boreholes: [],\r\n sampleTypes: [],\r\n };\r\n }\r\n\r\n public userToken: string;\r\n public isSubmitted: boolean;\r\n public statusMessages?: Client.StatusMessagesDto;\r\n public isBusy: boolean;\r\n public isDirty: boolean;\r\n public coreCuttingsRequest: ICoreCuttingsRequestViewModel;\r\n public referenceData: IReferenceDataViewModel;\r\n\r\n setBusy(isBusy: boolean): IRootViewModel {\r\n const vm = this._clone();\r\n vm.isBusy = isBusy;\r\n return vm;\r\n }\r\n\r\n reset(): IRootViewModel {\r\n const vm = this._clone();\r\n vm.coreCuttingsRequest = {\r\n samples: [],\r\n };\r\n this.setDefaultCountry(vm);\r\n vm.isSubmitted = false;\r\n vm.statusMessages = undefined;\r\n vm.isDirty = false;\r\n return vm;\r\n }\r\n\r\n addSample(sample: ISampleViewModel) {\r\n const vm = this._clone();\r\n vm.coreCuttingsRequest.samples = [...vm.coreCuttingsRequest.samples, sample].sort((a: ISampleViewModel, b: ISampleViewModel) => a.borehole!.name.localeCompare(b.borehole!.name));\r\n vm.isDirty = true;\r\n return vm;\r\n }\r\n\r\n removeSample(sample: ISampleViewModel) {\r\n const vm = this._clone();\r\n vm.coreCuttingsRequest.samples = vm.coreCuttingsRequest.samples.filter((s) => s.uniqueId !== sample.uniqueId);\r\n vm.isDirty = true;\r\n return vm;\r\n }\r\n\r\n refreshReferenceData(response: Client.GetCreatePublicCoreCuttingsRequestReferenceDataResponseDto): IRootViewModel {\r\n const vm = this._clone();\r\n vm.referenceData = {\r\n honorifics: response.honorifics,\r\n countrySubDivisions: response.countrySubDivisions,\r\n countries: response.countries,\r\n boreholes: response.boreholes,\r\n sampleTypes: response.sampleTypes,\r\n };\r\n this.setDefaultCountry(vm);\r\n vm.isDirty = false; // reference data load is part of the initialisation phase\r\n return vm;\r\n }\r\n\r\n refreshCoreCuttingsRequestDetails(coreCuttingsRequest: ICoreCuttingsRequestViewModel): IRootViewModel {\r\n const vm = this._clone();\r\n vm.coreCuttingsRequest.honorific = coreCuttingsRequest.honorific;\r\n vm.coreCuttingsRequest.firstName = coreCuttingsRequest.firstName;\r\n vm.coreCuttingsRequest.lastName = coreCuttingsRequest.lastName;\r\n vm.coreCuttingsRequest.companyName = coreCuttingsRequest.companyName;\r\n vm.coreCuttingsRequest.contactNumber = coreCuttingsRequest.contactNumber;\r\n vm.coreCuttingsRequest.emailAddress = coreCuttingsRequest.emailAddress;\r\n vm.coreCuttingsRequest.streetAddress = coreCuttingsRequest.streetAddress;\r\n vm.coreCuttingsRequest.suburb = coreCuttingsRequest.suburb;\r\n vm.coreCuttingsRequest.postcode = coreCuttingsRequest.postcode;\r\n vm.coreCuttingsRequest.countrySubDivision = coreCuttingsRequest.countrySubDivision;\r\n vm.coreCuttingsRequest.country = coreCuttingsRequest.country;\r\n vm.coreCuttingsRequest.isAcademia = coreCuttingsRequest.isAcademia;\r\n vm.coreCuttingsRequest.supervisorHonorific = coreCuttingsRequest.supervisorHonorific;\r\n vm.coreCuttingsRequest.supervisorFirstName = coreCuttingsRequest.supervisorFirstName;\r\n vm.coreCuttingsRequest.supervisorLastName = coreCuttingsRequest.supervisorLastName;\r\n vm.coreCuttingsRequest.supervisorUniversityName = coreCuttingsRequest.supervisorUniversityName;\r\n vm.coreCuttingsRequest.supervisorContactNumber = coreCuttingsRequest.supervisorContactNumber;\r\n vm.coreCuttingsRequest.supervisorEmailAddress = coreCuttingsRequest.supervisorEmailAddress;\r\n vm.coreCuttingsRequest.supervisorSchoolName = coreCuttingsRequest.supervisorSchoolName;\r\n vm.coreCuttingsRequest.studyDescription = coreCuttingsRequest.studyDescription;\r\n vm.isDirty = true;\r\n return vm;\r\n }\r\n\r\n refreshCoreCuttingsRequestCreateResponse(response: Client.CreatePublicCoreCuttingsRequestResponseDto) {\r\n const vm = this._clone();\r\n if (response.statusMessages?.isSuccess) {\r\n vm.isSubmitted = true;\r\n vm.isDirty = false;\r\n }\r\n vm.statusMessages = response.statusMessages;\r\n return vm;\r\n }\r\n\r\n private setDefaultCountry(vm: RootViewModel) {\r\n vm.coreCuttingsRequest.country = vm.referenceData.countries.find((c) => c.name === \"Australia\");\r\n }\r\n\r\n private _clone(): RootViewModel {\r\n const vm = clone(this);\r\n vm.coreCuttingsRequest = clone(this.coreCuttingsRequest);\r\n return vm;\r\n }\r\n}\r\n","// framework\r\nimport React from \"react\";\r\nimport { useEffect, useRef } from \"react\";\r\n// kendo\r\nimport { NumericTextBox, NumericTextBoxChangeEvent, NumericTextBoxHandle } from \"@progress/kendo-react-inputs\";\r\n\r\ninterface IProps {\r\n id: string;\r\n value: number | undefined;\r\n format: string;\r\n onChange: (value: number | undefined) => void;\r\n onBlur: () => void;\r\n min?: number | undefined;\r\n max?: number | undefined;\r\n className?: string;\r\n valid?: boolean;\r\n}\r\n\r\n// TODO even with spinners disabled the NumericTextBox still responds to the mousewheel event when in focus, I have raised a feature request to address this, workaround use ref implemented below\r\n// https://feedback.telerik.com/kendo-react-ui/1554698-disable-step-on-scroll-in-numerictextbox\r\nexport default function KendoNumericTextBox(props: IProps) {\r\n const ref = useRef(null);\r\n\r\n function onWheel(event: WheelEvent) {\r\n event.stopPropagation();\r\n }\r\n\r\n useEffect(() => {\r\n let refValue: NumericTextBoxHandle | null = null;\r\n\r\n if (ref.current) {\r\n ref.current.element?.addEventListener(\"wheel\", onWheel);\r\n refValue = ref.current;\r\n }\r\n\r\n return () => {\r\n refValue?.element?.removeEventListener(\"wheel\", onWheel);\r\n };\r\n }, []);\r\n\r\n function onChange(e: NumericTextBoxChangeEvent) {\r\n const value = e.value !== null ? e.value : undefined;\r\n props.onChange(value);\r\n }\r\n\r\n function onBlur() {\r\n props.onBlur();\r\n }\r\n\r\n return (\r\n \r\n );\r\n}\r\n","/**\n * @license\n *-------------------------------------------------------------------------------------------\n * Copyright © 2024 Progress Software Corporation. All rights reserved.\n * Licensed under commercial license. See LICENSE.md in the package root for more information\n *-------------------------------------------------------------------------------------------\n */\n\"use client\";\nimport t from \"react\";\nconst o = t.createContext([null, (e) => {\n}]), s = t.createContext([null, (e) => {\n}]), a = t.createContext([null, (e) => {\n}]);\nexport {\n a as ChipListDataContext,\n s as ChipListFocusContext,\n o as ChipListSelectionContext\n};\n","/**\n * @license\n *-------------------------------------------------------------------------------------------\n * Copyright © 2024 Progress Software Corporation. All rights reserved.\n * Licensed under commercial license. See LICENSE.md in the package root for more information\n *-------------------------------------------------------------------------------------------\n */\n\"use client\";\nvar u = /* @__PURE__ */ ((e) => (e.next = \"next\", e.prev = \"prev\", e.current = \"current\", e.reset = \"reset\", e))(u || {});\nconst s = (e, r) => {\n const t = r.items.findIndex((n) => n === e);\n switch (r.type) {\n case \"next\":\n return t === r.items.length - 1 ? e : r.items[t + 1];\n case \"prev\":\n return t === 0 ? e : r.items[t - 1];\n case \"current\":\n return r.payload;\n case \"reset\":\n return null;\n default:\n return e;\n }\n};\nexport {\n u as FOCUS_ACTION,\n s as focusReducer\n};\n","/**\n * @license\n *-------------------------------------------------------------------------------------------\n * Copyright © 2024 Progress Software Corporation. All rights reserved.\n * Licensed under commercial license. See LICENSE.md in the package root for more information\n *-------------------------------------------------------------------------------------------\n */\n\"use client\";\nvar a = /* @__PURE__ */ ((e) => (e.remove = \"remove\", e.add = \"add\", e.reorder = \"reorder\", e))(a || {});\nconst o = (e, r) => {\n switch (r.type) {\n case \"add\":\n break;\n case \"remove\":\n return e.filter((d) => d[r.valueField] !== r.payload);\n case \"reorder\":\n break;\n default:\n return e;\n }\n};\nexport {\n a as CHIP_DATA_ACTION,\n o as dataReducer\n};\n","/**\n * @license\n *-------------------------------------------------------------------------------------------\n * Copyright © 2024 Progress Software Corporation. All rights reserved.\n * Licensed under commercial license. See LICENSE.md in the package root for more information\n *-------------------------------------------------------------------------------------------\n */\n\"use client\";\nvar n = /* @__PURE__ */ ((r) => (r.toggle = \"toggle\", r.remove = \"remove\", r))(n || {});\nconst u = (r, e) => {\n switch (e.selection) {\n case \"single\":\n switch (e.type) {\n case \"toggle\": {\n if (!Array.isArray(r) || r === null)\n return e.payload === r ? null : e.payload;\n throw new Error(\"State cannot be an array in single selection\");\n }\n case \"remove\":\n return e.payload === r ? null : r;\n default:\n return r;\n }\n case \"multiple\":\n switch (e.type) {\n case \"toggle\": {\n if (Array.isArray(r))\n return r.some((l) => l === e.payload) ? r.filter((l) => l !== e.payload) : [...r, e.payload];\n if (r === null)\n return [e.payload];\n throw new Error(\"State cannot be non-array in multiple selection\");\n }\n case \"remove\":\n return Array.isArray(r) ? r.some((l) => l === e.payload) ? r.filter((l) => l !== e.payload) : [...r, e.payload] : r;\n default:\n return r;\n }\n case \"none\":\n return null;\n default:\n return r;\n }\n};\nexport {\n n as SELECTION_ACTION,\n u as selectionReducer\n};\n","/**\n * @license\n *-------------------------------------------------------------------------------------------\n * Copyright © 2024 Progress Software Corporation. All rights reserved.\n * Licensed under commercial license. See LICENSE.md in the package root for more information\n *-------------------------------------------------------------------------------------------\n */\n\"use client\";\nimport * as a from \"react\";\nimport l from \"prop-types\";\nimport { ChipListSelectionContext as H, ChipListFocusContext as U, ChipListDataContext as W } from \"./chip-list-contexts.mjs\";\nimport { validatePackage as j, useDir as q, Keys as u, useMouse as G, getTabIndex as J, classNames as T, kendoThemeMaps as O, IconWrap as I, toIconName as C, svgIconPropType as E } from \"@progress/kendo-react-common\";\nimport { xCircleIcon as w } from \"@progress/kendo-svg-icons\";\nimport { FOCUS_ACTION as v } from \"./focus-reducer.mjs\";\nimport { CHIP_DATA_ACTION as Q } from \"./data-reducer.mjs\";\nimport { SELECTION_ACTION as x } from \"./selection-reducer.mjs\";\nimport { packageMetadata as V } from \"../package-metadata.mjs\";\nconst z = a.forwardRef((e, A) => {\n j(V);\n const c = a.useRef(null), d = a.useRef(null), {\n disabled: y = n.disabled,\n fillMode: r = n.fillMode,\n themeColor: N = n.themeColor,\n size: f = n.size,\n rounded: k = n.rounded,\n dir: B = n.dir,\n removeIcon: D = n.removeIcon,\n removeSvgIcon: F = n.removeSvgIcon,\n removable: s = n.removable\n } = e, M = q(d, B);\n a.useImperativeHandle(c, () => ({\n element: d.current,\n props: e\n })), a.useImperativeHandle(A, () => c.current);\n const [m, i] = a.useContext(H), [R, o] = a.useContext(U), [, S] = a.useContext(W), h = a.useMemo(\n () => e.selected || (Array.isArray(m) ? m.some((t) => t === e.value) : m === e.value),\n [e.selected, e.value, m]\n ), g = a.useMemo(\n () => R === e.value,\n [e.value, R]\n );\n a.useEffect(\n () => {\n g && d.current && d.current.focus();\n },\n [g]\n );\n const K = a.useCallback(\n (t) => {\n i({ type: x.toggle, payload: e.value, event: t });\n },\n [i, e.value]\n ), b = a.useCallback(\n (t) => {\n s && (S({ type: Q.remove, payload: e.value, event: t }), o({ type: v.reset, payload: e.value, event: t }), i({ type: x.remove, payload: e.value, event: t }), e.onRemove && e.onRemove.call(\n void 0,\n {\n target: c.current,\n syntheticEvent: t\n }\n ));\n },\n [e.onRemove, e.value, s, S, o, i]\n ), P = a.useCallback(\n (t) => {\n switch (t.keyCode) {\n case u.left:\n o({ type: v.prev, payload: e.value, event: t });\n break;\n case u.right:\n o({ type: v.next, payload: e.value, event: t });\n break;\n case u.enter:\n i({ type: x.toggle, payload: e.value, event: t });\n break;\n case u.delete:\n b(t);\n break;\n }\n e.onKeyDown && e.onKeyDown.call(\n void 0,\n {\n target: c.current,\n syntheticEvent: t\n }\n );\n },\n [e.onKeyDown, e.value, o, i, b]\n ), $ = a.useCallback(\n (t) => {\n o({ payload: e.value, type: v.current, event: t }), e.onFocus && e.onFocus.call(\n void 0,\n {\n target: c.current,\n syntheticEvent: t\n }\n );\n },\n [e.onFocus, e.value, o]\n ), L = a.useCallback(\n (t) => {\n e.onBlur && e.onBlur.call(\n void 0,\n {\n target: c.current,\n syntheticEvent: t\n }\n );\n },\n [e.onBlur]\n ), _ = G(e, c, { onClick: K });\n return /* @__PURE__ */ a.createElement(\n \"div\",\n {\n ..._,\n role: e.role || \"button\",\n id: e.value,\n style: e.style,\n ref: d,\n dir: M,\n tabIndex: J(e.tabIndex, y, void 0),\n className: T(\n \"k-chip\",\n {\n \"k-rtl\": M === \"rtl\",\n \"k-disabled\": y,\n \"k-selected\": h,\n \"k-focus\": g,\n [`k-chip-${O.sizeMap[f] || f}`]: f,\n [`k-rounded-${O.roundedMap[k] || k}`]: k,\n [`k-chip-${r}`]: r,\n [`k-chip-${r}-${N}`]: !!(r && N)\n },\n e.className\n ),\n \"aria-pressed\": e.role ? void 0 : h,\n \"aria-disabled\": y,\n \"aria-describedby\": e.ariaDescribedBy,\n \"aria-keyshortcuts\": s ? \"Enter Delete\" : void 0,\n onFocus: $,\n onBlur: L,\n onKeyDown: P\n },\n h && (e.selectedIcon || e.selectedSvgIcon) && /* @__PURE__ */ a.createElement(\n I,\n {\n className: \"k-chip-icon\",\n name: e.selectedIcon ? C(e.selectedIcon) : void 0,\n icon: e.selectedSvgIcon,\n size: \"small\"\n }\n ),\n (e.icon || e.svgIcon) && /* @__PURE__ */ a.createElement(\n I,\n {\n className: \"k-chip-icon\",\n name: e.icon ? C(e.icon) : void 0,\n icon: e.svgIcon,\n size: \"small\"\n }\n ),\n e.avatar && /* @__PURE__ */ a.createElement(\n \"div\",\n {\n className: `k-chip-avatar k-avatar k-rounded-${e.avatar.rounded} k-avatar-md k-avatar-solid k-avatar-solid-primary`,\n style: e.avatar.style\n },\n /* @__PURE__ */ a.createElement(\"span\", { className: \"k-avatar-image\" }, /* @__PURE__ */ a.createElement(\n \"img\",\n {\n src: e.avatar.image,\n alt: e.avatar.imageAlt\n }\n ))\n ),\n /* @__PURE__ */ a.createElement(\"span\", { className: \"k-chip-content\" }, e.children !== void 0 ? e.children : e.text && /* @__PURE__ */ a.createElement(\n \"span\",\n {\n \"aria-label\": e.ariaLabel || e.text,\n className: \"k-chip-label\"\n },\n e.text\n )),\n s && /* @__PURE__ */ a.createElement(\"span\", { className: \"k-chip-actions\" }, /* @__PURE__ */ a.createElement(\"span\", { className: T(\"k-chip-action\", \"k-chip-remove-action\"), onClick: b }, /* @__PURE__ */ a.createElement(\n I,\n {\n name: D ? C(D) : void 0,\n icon: F || w,\n size: \"small\"\n }\n )))\n );\n}), X = {\n id: l.string,\n text: l.string,\n value: l.any,\n dir: l.oneOf([\"ltr\", \"rtl\"]),\n removable: l.bool,\n removeIcon: l.string,\n removeIconSvg: E,\n disabled: l.bool,\n icon: l.string,\n svgIcon: E,\n selectedIcon: l.string,\n selectedIconSvg: E,\n onRemove: l.func,\n dataItem: l.any,\n selected: l.bool,\n ariaDescribedBy: l.string,\n size: l.oneOf([null, \"small\", \"medium\", \"large\"]),\n rounded: l.oneOf([null, \"small\", \"medium\", \"large\", \"full\"]),\n fillMode: l.oneOf([null, \"outline\", \"solid\"]),\n // eslint-disable-next-line max-len\n themeColor: l.oneOf([null, \"base\", \"info\", \"success\", \"warning\", \"error\"])\n}, n = {\n disabled: !1,\n removable: !1,\n removeIcon: \"k-i-x-circle\",\n removeSvgIcon: w,\n dir: \"ltr\",\n size: \"medium\",\n rounded: \"medium\",\n fillMode: \"solid\",\n themeColor: \"base\"\n};\nz.displayName = \"KendoReactChip\";\nz.propTypes = X;\nexport {\n z as Chip\n};\n","/**\n * @license\n *-------------------------------------------------------------------------------------------\n * Copyright © 2024 Progress Software Corporation. All rights reserved.\n * Licensed under commercial license. See LICENSE.md in the package root for more information\n *-------------------------------------------------------------------------------------------\n */\n\"use client\";\nimport * as t from \"react\";\nimport { Chip as d } from \"@progress/kendo-react-buttons\";\nconst v = (o) => o.syntheticEvent.preventDefault(), f = (o) => o.syntheticEvent.stopPropagation();\nclass g extends t.Component {\n render() {\n const { data: n, guid: s, focused: r, tagRender: c, tag: i, onTagDelete: l, size: m } = this.props;\n return /* @__PURE__ */ t.createElement(t.Fragment, null, n.map((e, p) => {\n const a = i ? /* @__PURE__ */ t.createElement(\n i,\n {\n key: e.text + p,\n tagData: e,\n guid: s,\n focusedTag: r,\n onTagDelete: l\n }\n ) : /* @__PURE__ */ t.createElement(\n d,\n {\n id: `tag-${s}-${e.text.replace(/\\s+/g, \"-\")}`,\n \"aria-selected\": !0,\n role: \"option\",\n \"aria-setsize\": n.length,\n key: e.text + p,\n text: e.text,\n removable: !0,\n onRemove: (u) => l.call(void 0, e.data, u.syntheticEvent),\n onMouseDown: v,\n onClick: f,\n className: e === r ? \"k-focus\" : void 0,\n size: m\n }\n );\n return c ? c(e, a) : a;\n }), this.props.children);\n }\n}\nexport {\n g as default\n};\n","/**\n * @license\n *-------------------------------------------------------------------------------------------\n * Copyright © 2024 Progress Software Corporation. All rights reserved.\n * Licensed under commercial license. See LICENSE.md in the package root for more information\n *-------------------------------------------------------------------------------------------\n */\n\"use client\";\nvar r = /* @__PURE__ */ ((p) => (p[p.PopupList = 0] = \"PopupList\", p[p.TagsList = 1] = \"TagsList\", p))(r || {});\nexport {\n r as ActiveDescendant\n};\n","/**\n * @license\n *-------------------------------------------------------------------------------------------\n * Copyright © 2024 Progress Software Corporation. All rights reserved.\n * Licensed under commercial license. See LICENSE.md in the package root for more information\n *-------------------------------------------------------------------------------------------\n */\n\"use client\";\nimport * as e from \"react\";\nimport { ActionSheet as k, ActionSheetHeader as f, ActionSheetFooter as E } from \"@progress/kendo-react-layout\";\nimport { xIcon as v } from \"@progress/kendo-svg-icons\";\nimport { Button as a } from \"@progress/kendo-react-buttons\";\nimport { classNames as x } from \"@progress/kendo-react-common\";\nconst o = 500, C = (c) => {\n const {\n footer: t,\n children: s,\n windowWidth: l = 0,\n navigatable: r,\n navigatableElements: m,\n expand: d,\n animation: p,\n onClose: n,\n adaptiveTitle: b,\n mobileFilter: i\n } = c, h = {\n navigatable: r || !1,\n navigatableElements: m || [],\n expand: d,\n animation: p !== !1,\n onClose: n,\n animationStyles: l <= o ? { top: 0, width: \"100%\", height: \"100%\" } : void 0,\n className: x(\n \"k-actionsheet\",\n \"k-adaptive-actionsheet\",\n l <= o ? \"k-actionsheet-fullscreen\" : \"k-actionsheet-bottom\"\n )\n };\n return /* @__PURE__ */ e.createElement(k, { ...h }, /* @__PURE__ */ e.createElement(f, { className: \"k-text-center\" }, /* @__PURE__ */ e.createElement(\"div\", { className: \"k-actionsheet-titlebar-group k-hbox\" }, /* @__PURE__ */ e.createElement(\"div\", { className: \"k-actionsheet-title\" }, /* @__PURE__ */ e.createElement(\"div\", { className: \"k-text-center\" }, b), /* @__PURE__ */ e.createElement(\"div\", { className: \"k-actionsheet-subtitle k-text-center\" })), /* @__PURE__ */ e.createElement(\"div\", { className: \"k-actionsheet-actions\" }, /* @__PURE__ */ e.createElement(\n a,\n {\n tabIndex: 0,\n \"aria-label\": \"Cancel\",\n \"aria-disabled\": \"false\",\n type: \"button\",\n fillMode: \"flat\",\n icon: \"x\",\n svgIcon: v,\n onClick: n\n }\n ))), i && /* @__PURE__ */ e.createElement(\"div\", { className: \"k-actionsheet-titlebar-group k-actionsheet-filter\" }, i)), s, t && /* @__PURE__ */ e.createElement(E, { className: \"k-actions k-actions-stretched\" }, /* @__PURE__ */ e.createElement(\n a,\n {\n size: \"large\",\n tabIndex: 0,\n \"aria-label\": t.cancelText,\n \"aria-disabled\": \"false\",\n type: \"button\",\n onClick: t.onCancel\n },\n t.cancelText\n ), /* @__PURE__ */ e.createElement(\n a,\n {\n tabIndex: 0,\n themeColor: \"primary\",\n size: \"large\",\n \"aria-label\": t.applyText,\n \"aria-disabled\": \"false\",\n type: \"button\",\n onClick: t.onApply\n },\n t.applyText\n )));\n};\nexport {\n C as AdaptiveMode\n};\n","/**\n * @license\n *-------------------------------------------------------------------------------------------\n * Copyright © 2024 Progress Software Corporation. All rights reserved.\n * Licensed under commercial license. See LICENSE.md in the package root for more information\n *-------------------------------------------------------------------------------------------\n */\n\"use client\";\nimport * as f from \"react\";\nimport m from \"prop-types\";\nimport { Keys as u, classNames as y, IconWrap as R, validatePackage as X, canUseDOM as L, createPropsContext as Z, withIdHOC as tt, withPropsContext as et, kendoThemeMaps as st } from \"@progress/kendo-react-common\";\nimport { plusIcon as it } from \"@progress/kendo-svg-icons\";\nimport { FloatingLabel as ot } from \"@progress/kendo-react-labels\";\nimport at from \"../common/ListContainer.mjs\";\nimport nt from \"../common/List.mjs\";\nimport lt from \"../common/GroupStickyHeader.mjs\";\nimport dt from \"./TagList.mjs\";\nimport rt from \"../common/SearchBar.mjs\";\nimport F from \"../common/DropDownBase.mjs\";\nimport { ActiveDescendant as k } from \"../common/settings.mjs\";\nimport { getFilteredData as I, areSame as E, removeDataItems as w, isPresent as M, getItemValue as O, preventDefaultNonInputs as ht, matchTags as B, itemIndexStartsWith as pt } from \"../common/utils.mjs\";\nimport { packageMetadata as ct } from \"../package-metadata.mjs\";\nimport ut from \"../common/ClearButton.mjs\";\nimport { AdaptiveMode as ft } from \"../common/AdaptiveMode.mjs\";\nimport { ActionSheetContent as gt } from \"@progress/kendo-react-layout\";\nimport { MOBILE_MEDIUM_DEVISE as mt } from \"../common/constants.mjs\";\nimport { provideLocalizationService as vt } from \"@progress/kendo-react-intl\";\nimport { adaptiveModeFooterCancel as z, messages as V, adaptiveModeFooterApply as H } from \"../messages/index.mjs\";\nimport It from \"../common/ListFilter.mjs\";\nimport A from \"../common/withCustomComponent.mjs\";\nconst { sizeMap: D, roundedMap: yt } = st, bt = \"Please enter a valid value!\", $ = (T) => T.preventDefault(), q = (T) => T === 2, b = class b extends f.Component {\n constructor(n) {\n super(n), this.state = {\n activedescendant: k.PopupList,\n currentValue: []\n }, this._element = null, this._valueItemsDuringOnChange = null, this.base = new F(this), this._tags = [], this._input = null, this._adaptiveInput = null, this._skipFocusEvent = !1, this._lastSelectedOrDeslectedItemIndex = null, this.itemHeight = 0, this.scrollToFocused = !1, this.localization = null, this.focus = () => {\n this._input && this._input.focus();\n }, this.handleItemSelect = (e, t) => {\n const { dataItemKey: o, virtual: s } = this.props, a = I(this.props), p = s ? s.skip : 0, c = a[e - p], r = this.value.findIndex((g) => E(g, c, o));\n this._lastSelectedOrDeslectedItemIndex = a.findIndex((g) => E(g, c, o));\n let i = [];\n r !== -1 ? (i = this.value, i.splice(r, 1)) : i = [...this.value, c], (this.props.filter !== void 0 ? this.props.filter : this.state.text) && !this.mobileMode && (this.state.text && (t.data.text = \"\"), this.base.filterChanged(\"\", t)), this._adaptiveInput && this._adaptiveInput.blur(), this.state.focusedIndex !== void 0 && (t.data.focusedIndex = void 0), this.triggerOnChange(i, t), this.base.triggerPageChangeCornerItems(c, t);\n }, this.onTagDelete = (e, t) => {\n const o = this.base.initState();\n o.syntheticEvent = t, this.opened && this.base.togglePopup(o), !this.state.focused && !this.mobileMode && (o.data.focused = !0, this.focus());\n const s = this.value;\n w(s, e, this.props.dataItemKey), this.triggerOnChange(s, o), this.applyState(o);\n }, this.itemFocus = (e, t) => {\n const { allowCustom: o, virtual: s } = this.props, a = I(this.props), p = s ? s.skip : 0, c = this.props.filter !== void 0 ? this.props.filter : this.state.text, { focusedIndex: r } = this.getFocusedState(), i = o && c, d = a[e - p];\n d && r !== e ? this.state.focusedIndex !== e && (t.data.focusedIndex = e, t.data.activedescendant = k.PopupList) : i && e === -1 && this.state.focusedIndex !== void 0 && (t.data.focusedIndex = void 0), this.base.triggerPageChangeCornerItems(d, t);\n }, this.componentRef = (e) => {\n this._element = e, this.base.wrapper = e;\n }, this.searchbarRef = (e) => {\n const t = this._input = e && e.input;\n t && this.state.focused && window.setTimeout(() => t.focus(), 0);\n }, this.onChangeHandler = (e) => {\n const t = this.base.initState(), o = e.target.value;\n t.syntheticEvent = e, this.props.filter === void 0 && (t.data.text = o), t.data.focusedIndex = void 0, this.opened || (this.base.togglePopup(t), this.setState({ currentValue: this.value })), this.base.filterChanged(o, t), this.applyState(t), this.setState({ group: void 0 });\n }, this.clearButtonClick = (e) => {\n const t = this.base.initState();\n t.syntheticEvent = e, e.stopPropagation(), this.value.length > 0 && this.triggerOnChange([], t), this.state.focusedIndex !== void 0 && (t.data.focusedIndex = void 0), this.opened && this.base.togglePopup(t);\n const o = this.props.filter !== void 0 ? this.props.filter : this.state.text;\n M(o) && o !== \"\" && this.base.filterChanged(\"\", t), this.state.text && (t.data.text = \"\"), this._lastSelectedOrDeslectedItemIndex = null, this.applyState(t);\n }, this.onInputKeyDown = (e) => {\n const { textField: t, groupField: o } = this.props, s = I(this.props), a = e.keyCode, p = this.props.filter !== void 0 ? this.props.filter : this.state.text, c = this.props.opened !== void 0 ? this.props.opened : this.state.opened, { focusedItem: r, focusedIndex: i } = this.getFocusedState(), d = this.base.initState();\n if (d.syntheticEvent = e, !p && this.value.length > 0 && (a === u.left || a === u.right || a === u.home || a === u.end || a === u.delete || a === u.backspace) && !e.shiftKey)\n return this.onTagsNavigate(e, d);\n const g = () => {\n e.preventDefault(), this.base.togglePopup(d), this.applyState(d);\n };\n if (this.opened)\n if (a === u.pageUp)\n e.preventDefault(), this.base.scrollPopupByPageSize(-1);\n else if (a === u.pageDown)\n e.preventDefault(), this.base.scrollPopupByPageSize(1);\n else if ((e.ctrlKey || e.metaKey) && e.code === \"KeyA\") {\n const h = (this.state.value && this.state.value.length) === s.length ? [] : s;\n this.updateStateOnKeyboardNavigation(h, d);\n } else if ((e.ctrlKey || e.metaKey) && e.shiftKey && e.keyCode === u.end) {\n const l = s.slice(this.getFocusedState().focusedIndex);\n this.itemFocus(s.length - 1, d), this.updateStateOnKeyboardNavigation(l, d);\n } else if ((e.ctrlKey || e.metaKey) && e.shiftKey && e.keyCode === u.home) {\n const l = s.slice(0, this.getFocusedState().focusedIndex + 1);\n this.itemFocus(0, d), this.updateStateOnKeyboardNavigation(l, d);\n } else if (e.shiftKey && e.keyCode === u.up) {\n let l;\n const h = this.getLastSelectedOrDeselectedIndex(1, i);\n h === null ? l = i !== 0 ? s.slice(i - 1, i) : [s[i]] : h === i ? l = [s[h - 1]] : i >= 0 && (l = h > i ? s.slice(i - 1, h) : s.slice(h - 1, i)), l && l.length > 0 && (i >= 1 && this.itemFocus(i - 1, d), this.updateStateOnKeyboardNavigation(l, d));\n } else if (e.shiftKey && e.keyCode === u.down) {\n let l;\n const h = this.getLastSelectedOrDeselectedIndex(0, i);\n h === null ? l = i !== s.length - 1 ? s.slice(i, i + 1) : [s[i]] : h === i ? l = s.slice(i, i + 2) : i >= 0 && (l = h > i ? s.slice(i + 1, h + 1) : s.slice(h, i + 2)), l && l.length >= 1 && (this.itemFocus(i + 1, d), this.updateStateOnKeyboardNavigation(l, d));\n } else if (e.altKey && a === u.up)\n g();\n else if (a === u.up || a === u.down) {\n if (o !== \"\" && t)\n if (!this.props.skipDisabledItems && c)\n this.onNavigate(d, a);\n else {\n let l = 0;\n if (a === u.down || a === u.right) {\n const h = s.slice(i + 1).find((v) => !v.disabled && v[t]);\n l = h && s.findIndex((v) => v[t] === h[t]);\n } else if (a === u.up || a === u.left) {\n let h;\n if (i === -1)\n h = s, l = s.findIndex((v) => !v.disabled && v[t]);\n else {\n h = s.slice(0, i);\n let v = h.pop();\n for (; v && v.disabled; )\n v = h.pop();\n l = v && s.findIndex((S) => S[t] === v[t]);\n }\n }\n if (l) {\n const h = l - i;\n this.onNavigate(d, a, h);\n } else\n l !== void 0 && this.onNavigate(d, a);\n }\n else if (!this.props.skipDisabledItems && c)\n this.onNavigate(d, a);\n else {\n let l = null;\n if (a === u.down || a === u.right)\n l = s.slice(i + 1).find((h) => !h.disabled);\n else if (a === u.up || a === u.left) {\n const h = s.slice(0, i);\n for (l = h.pop(); l && l.disabled; )\n l = h.pop();\n }\n if (l) {\n const h = l.id - i - 1;\n this.onNavigate(d, a, h);\n } else\n this.onNavigate(d, a);\n }\n this.applyState(d), e.preventDefault();\n } else\n a === u.enter ? (e.preventDefault(), this.props.allowCustom && p && r === null ? this.customItemSelect(e) : r && r.disabled ? g() : this.selectFocusedItem(e)) : a === u.esc && g();\n else\n e.altKey && a === u.down ? g() : a === u.esc && this.clearButtonClick(e);\n }, this.listContainerContent = () => {\n const { header: e, footer: t, allowCustom: o, size: s, groupStickyHeaderItemRender: a, groupField: p, list: c } = this.props, r = I(this.props), i = this.props.filter !== void 0 ? this.props.filter : this.state.text, { focusedType: d } = this.getFocusedState(), g = o && i && /* @__PURE__ */ f.createElement(\n \"div\",\n {\n className: y(\"k-list\", {\n [`k-list-${D[s] || s}`]: s\n }),\n key: \"customitem\",\n onClick: this.customItemSelect,\n onMouseDown: $\n },\n /* @__PURE__ */ f.createElement(\n \"div\",\n {\n className: y(\"k-list-item k-custom-item\", { \"k-focus\": q(d) }),\n style: { fontStyle: \"italic\" }\n },\n i,\n /* @__PURE__ */ f.createElement(R, { name: \"plus\", icon: it, style: { position: \"absolute\", right: \"0.5em\" } })\n )\n );\n let { group: l } = this.state;\n return l === void 0 && p !== void 0 && (l = O(r[0], p)), /* @__PURE__ */ f.createElement(f.Fragment, null, e && /* @__PURE__ */ f.createElement(\"div\", { className: \"k-list-header\" }, e), g, /* @__PURE__ */ f.createElement(\n \"div\",\n {\n className: y(\"k-list\", {\n [`k-list-${this.mobileMode ? \"lg\" : D[s] || s}`]: s,\n \"k-virtual-list\": this.base.vs.enabled\n })\n },\n !c && l && r.length !== 0 && /* @__PURE__ */ f.createElement(lt, { group: l, groupMode: \"modern\", render: a }),\n this.renderList()\n ), t && /* @__PURE__ */ f.createElement(\"div\", { className: \"k-list-footer\" }, t));\n }, this.renderListContainer = () => {\n const e = this.base, { dir: t } = this.props, o = I(this.props), s = this.base.getPopupSettings(), a = s.width !== void 0 ? s.width : e.popupWidth, p = {\n dir: t !== void 0 ? t : e.dirCalculated,\n width: a,\n popupSettings: {\n ...s,\n popupClass: y(s.popupClass, \"k-list-container\", \"k-multiselect-popup\"),\n anchor: s.anchor || this.element,\n show: this.opened,\n onOpen: this.onPopupOpened,\n onClose: this.onPopupClosed\n },\n itemsCount: [o.length, this.value.length]\n };\n return /* @__PURE__ */ f.createElement(at, { ...p }, this.listContainerContent());\n }, this.renderAdaptiveListContainer = () => {\n const { adaptiveTitle: e, filterable: t, filter: o } = this.props, { windowWidth: s = 0 } = this.state, a = o !== void 0 ? o : this.state.text;\n this.localization = vt(this);\n const p = t ? /* @__PURE__ */ f.createElement(\n It,\n {\n value: a,\n ref: (r) => this._adaptiveInput = r && r.element,\n onChange: this.onChangeHandler,\n onKeyDown: this.onInputKeyDown,\n size: this.props.size,\n rounded: this.props.rounded,\n fillMode: this.props.fillMode\n }\n ) : null, c = {\n adaptiveTitle: e,\n expand: this.opened,\n onClose: (r) => this.onCancel(r),\n windowWidth: s,\n mobileFilter: p,\n footer: {\n cancelText: this.localization.toLanguageString(\n z,\n V[z]\n ),\n onCancel: this.onCancel,\n applyText: this.localization.toLanguageString(\n H,\n V[H]\n ),\n onApply: this.closePopup\n }\n };\n return /* @__PURE__ */ f.createElement(ft, { ...c }, /* @__PURE__ */ f.createElement(gt, { overflowHidden: !0 }, /* @__PURE__ */ f.createElement(\"div\", { className: \"k-list-container\" }, this.listContainerContent())));\n }, this.closePopup = (e) => {\n const t = this.base.initState();\n t.syntheticEvent = e, e.stopPropagation(), this.state.focusedIndex !== void 0 && (t.data.focusedIndex = void 0), this.opened && this.base.togglePopup(t), t.events.push({ type: \"onClose\" });\n const o = this.props.filter !== void 0 ? this.props.filter : this.state.text;\n M(o) && o !== \"\" && this.base.filterChanged(\"\", t), this.state.text && (t.data.text = \"\"), this.applyState(t);\n }, this.onCancel = (e) => {\n const t = this.base.initState();\n t.syntheticEvent = e, e.stopPropagation(), this.state.focusedIndex !== void 0 && (t.data.focusedIndex = void 0), this.opened && this.base.togglePopup(t), t.events.push({ type: \"onCancel\" });\n const o = this.props.filter !== void 0 ? this.props.filter : this.state.text;\n M(o) && o !== \"\" && this.base.filterChanged(\"\", t), this.state.text && (t.data.text = \"\"), this.applyState(t);\n }, this.renderList = () => {\n const {\n textField: e,\n listNoDataRender: t,\n itemRender: o,\n groupHeaderItemRender: s,\n dataItemKey: a,\n virtual: p = { skip: 0, total: void 0 }\n } = this.props, c = I(this.props), r = this.base.vs, { focusedIndex: i } = this.getFocusedState(), d = this.base.getPopupSettings(), g = `translateY(${r.translate}px)`;\n return /* @__PURE__ */ f.createElement(\n nt,\n {\n id: this.base.listBoxId,\n show: this.opened,\n data: c.slice(),\n focusedIndex: i - p.skip,\n value: this.value,\n textField: e,\n valueField: a,\n optionsGuid: this.base.guid,\n groupField: this.props.groupField,\n groupMode: \"modern\",\n listRef: (l) => {\n r.list = this.base.list = l;\n },\n wrapperStyle: this.mobileMode ? {} : { maxHeight: d.height },\n wrapperCssClass: \"k-list-content\",\n listStyle: r.enabled ? { transform: g } : void 0,\n key: \"listKey\",\n skip: p.skip,\n onClick: this.handleItemClick,\n itemRender: o,\n groupHeaderItemRender: s,\n noDataRender: t,\n onMouseDown: $,\n onBlur: this.handleBlur,\n onScroll: this.onScroll,\n wrapperRef: r.scrollerRef,\n scroller: this.base.renderScrollElement(),\n ariaSetSize: p.total\n }\n );\n }, this.onScroll = (e) => {\n const { vs: t, list: o } = this.base;\n t.scrollHandler(e);\n const { groupField: s } = this.props;\n let a = I(this.props);\n if (!(!s || !a.length) && s) {\n const p = this.itemHeight = this.itemHeight || (t.enabled ? t.itemHeight : o ? o.children[0].offsetHeight : 0), r = e.target.scrollTop - t.skip * p;\n a = this.base.getGroupedDataModernMode(a, s);\n let i = a[0][s];\n for (let d = 1; d < a.length && !(p * d > r); d++)\n a[d] && a[d][s] && (i = a[d][s]);\n i !== this.state.group && this.setState({\n group: i\n });\n }\n }, this.customItemSelect = (e) => {\n const t = this.props.filter !== void 0 ? this.props.filter : this.state.text, { textField: o } = this.props;\n if (!t)\n return;\n const s = this.base.initState();\n s.syntheticEvent = e;\n const a = o ? { [o]: t } : t;\n this.state.text !== void 0 && (s.data.text = \"\"), s.data.focusedIndex = void 0, this.base.filterChanged(\"\", s);\n const p = [...this.value, a];\n this.triggerOnChange(p, s), this.base.togglePopup(s), this.applyState(s);\n }, this.handleWrapperClick = (e) => {\n const t = this._input;\n !this.opened && t && this.focusElement(t);\n const o = this.base.initState();\n o.syntheticEvent = e, !this.state.focused && !this.mobileMode && (o.events.push({ type: \"onFocus\" }), o.data.focused = !0), this.mobileMode && (this.setState({ currentValue: this.tagsToRender }), this.mobileMode && window.setTimeout(() => this._adaptiveInput && this._adaptiveInput.focus(), 300)), this.base.togglePopup(o), this.applyState(o);\n }, this.handleItemClick = (e, t) => {\n const o = this.base.initState();\n o.syntheticEvent = t, this.handleItemSelect(e, o), this.props.autoClose && !this.mobileMode && this.base.togglePopup(o), t.stopPropagation(), this.applyState(o);\n }, this.handleBlur = (e) => {\n if (!this.state.focused || this._skipFocusEvent)\n return;\n const t = this.base.initState(), { allowCustom: o, filterable: s } = this.props;\n t.syntheticEvent = e, t.data.focused = !1, t.events.push({ type: \"onBlur\" }), this.opened && !this.mobileMode && (this.state.opened && (t.data.opened = !1), t.events.push({ type: \"onClose\" })), !o && !s && this.state.text && (t.data.text = \"\"), this.applyState(t);\n }, this.handleFocus = (e) => {\n this._skipFocusEvent || this.base.handleFocus(e);\n }, this.onPopupOpened = () => {\n this._input && this.state.focused && !this.mobileMode && this.focusElement(this._input);\n }, this.onPopupClosed = () => {\n this.state.focused && window.setTimeout(() => {\n this.state.focused && this.focusElement(this._input);\n }, 0);\n }, this.setValidity = () => {\n this._input && this._input.setCustomValidity && this._input.setCustomValidity(\n this.validity.valid ? \"\" : this.props.validationMessage || bt\n );\n }, X(ct);\n }\n get _inputId() {\n return this.props.id;\n }\n get document() {\n if (L)\n return this.element && this.element.ownerDocument || document;\n }\n /** @hidden */\n get element() {\n return this._element;\n }\n /** @hidden */\n get opened() {\n return !!(this.props.opened !== void 0 ? this.props.opened : this.state.opened);\n }\n /** @hidden */\n get tagsToRender() {\n const { tags: n, textField: e } = this.props, t = [];\n return n === void 0 ? this.value.forEach((o) => {\n t.push({ text: O(o, e), data: [o] });\n }) : t.push(...n), t;\n }\n /**\n * The mobile mode of the ComboBox.\n */\n get mobileMode() {\n return !!(this.state.windowWidth && this.state.windowWidth <= mt && this.props.adaptive);\n }\n /**\n * Represents the value of the MultiSelect.\n */\n get value() {\n const n = [];\n return this._valueItemsDuringOnChange ? n.push(...this._valueItemsDuringOnChange) : this.props.value ? n.push(...this.props.value) : this.state.value ? n.push(...this.state.value) : this.props.defaultValue && n.push(...this.props.defaultValue), n;\n }\n /**\n * Gets the `name` property of the MultiSelect.\n */\n get name() {\n return this.props.name;\n }\n /**\n * Represents the validity state into which the MultiSelect is set.\n */\n get validity() {\n const n = this.props.validationMessage !== void 0, e = !this.required || this.value !== null && this.value.length > 0 && this.value !== void 0, t = this.props.valid !== void 0 ? this.props.valid : e;\n return {\n customError: n,\n valid: t,\n valueMissing: this.value === null\n };\n }\n /** @hidden */\n get required() {\n return this.props.required !== void 0 ? this.props.required : b.defaultProps.required;\n }\n get validityStyles() {\n return this.props.validityStyles !== void 0 ? this.props.validityStyles : b.defaultProps.validityStyles;\n }\n /** @hidden */\n componentDidUpdate(n, e) {\n var g;\n const { virtual: t, groupField: o = \"\" } = this.props, s = I(this.props), a = t ? t.skip : 0, p = n.virtual ? n.virtual.total : 0, c = n.opened !== void 0 ? n.opened : e.opened, r = !c && this.opened, i = c && !this.opened, d = this.base.getPopupSettings();\n if (this.base.didUpdate(), !d.animate && i && this.onPopupClosed(), t && t.total !== p)\n this.base.vs.calcScrollElementHeight(), this.base.vs.reset();\n else {\n let { focusedItem: l, focusedIndex: h } = this.getFocusedState();\n o !== \"\" && (h = (g = this.base.getGroupedDataModernMode(s, o)) == null ? void 0 : g.indexOf(l)), r && t ? this.base.scrollToVirtualItem(t, h - a) : r && !t ? (s && s.length !== 0 && this.base.resetGroupStickyHeader(s[0][o], this), this.base.scrollToItem(h)) : this.opened && c && l && this.scrollToFocused && this.base.scrollToItem(h - a);\n }\n this.scrollToFocused = !1, this.setValidity();\n }\n /** @hidden */\n componentDidMount() {\n var n;\n this.observerResize = L && window.ResizeObserver && new window.ResizeObserver(this.calculateMedia.bind(this)), this.base.didMount(), this.setValidity(), (n = this.document) != null && n.body && this.observerResize && this.observerResize.observe(this.document.body);\n }\n /** @hidden */\n componentWillUnmount() {\n var n;\n (n = this.document) != null && n.body && this.observerResize && this.observerResize.disconnect();\n }\n /** @hidden */\n onNavigate(n, e, t) {\n const { allowCustom: o } = this.props, s = I(this.props), a = this.props.filter !== void 0 ? this.props.filter : this.state.text, { focusedType: p, focusedIndex: c } = this.getFocusedState(), r = o && a, i = q(p), d = this.base, g = d.vs;\n if (this.opened && e === u.up && i)\n this.state.focusedIndex !== void 0 && (n.data.focusedIndex = void 0);\n else {\n const l = d.navigation.navigate({\n keyCode: e,\n current: c,\n max: (g.enabled ? g.total : s.length) - 1,\n min: r ? -1 : 0,\n skipItems: t || void 0\n });\n l !== void 0 && (this.itemFocus(l, n), this.scrollToFocused = !0);\n }\n this.applyState(n);\n }\n /** @hidden */\n render() {\n const {\n style: n,\n className: e,\n label: t,\n dir: o,\n disabled: s,\n textField: a,\n dataItemKey: p,\n virtual: c,\n size: r,\n rounded: i,\n fillMode: d,\n loading: g,\n filter: l\n } = this.props, { text: h, focused: v, focusedTag: S, currentValue: W } = this.state, C = this.base.vs, _ = this.props.id || this._inputId;\n C.enabled = c !== void 0, c !== void 0 && (C.skip = c.skip, C.total = c.total, C.pageSize = c.pageSize);\n const x = this.mobileMode && this.opened ? W : this.tagsToRender;\n this.setItems(this.tagsToRender, this._tags);\n const K = !this.validityStyles || this.validity.valid, G = !!(l !== void 0 ? l : h) || x && x.length > 0, [U, Y] = A(this.props.prefix || f.Fragment), [j, J] = A(this.props.suffix || f.Fragment), N = /* @__PURE__ */ f.createElement(f.Fragment, null, /* @__PURE__ */ f.createElement(\n \"div\",\n {\n ref: this.componentRef,\n className: y(\"k-multiselect k-input\", e, {\n [`k-input-${D[r] || r}`]: r,\n [`k-rounded-${yt[i] || i}`]: i,\n [`k-input-${d}`]: d,\n \"k-focus\": v && !s,\n \"k-invalid\": !K,\n \"k-disabled\": s,\n \"k-loading\": g,\n \"k-required\": this.required\n }),\n style: t ? { ...n, width: void 0 } : n,\n dir: o,\n onFocus: this.handleFocus,\n onBlur: this.handleBlur,\n onClick: this.handleWrapperClick,\n onMouseDown: ht\n },\n this.props.prefix && /* @__PURE__ */ f.createElement(U, { ...Y }),\n /* @__PURE__ */ f.createElement(\"div\", { className: y(\"k-input-values\") }, /* @__PURE__ */ f.createElement(\n \"div\",\n {\n className: y(\"k-chip-list\", { [`k-chip-list-${D[r] || r}`]: r }),\n role: \"listbox\",\n id: \"tagslist-\" + this.base.guid\n },\n x && x.length > 0 && /* @__PURE__ */ f.createElement(\n dt,\n {\n tagRender: this.props.tagRender,\n onTagDelete: this.onTagDelete,\n data: x,\n guid: this.base.guid,\n focused: S ? x.find((Q) => B(Q, S, p)) : void 0,\n size: r\n }\n )\n ), this.renderSearchBar(_)),\n g && /* @__PURE__ */ f.createElement(R, { className: \"k-input-loading-icon\", name: \"loading\" }),\n this.props.suffix && /* @__PURE__ */ f.createElement(j, { ...J }),\n G && /* @__PURE__ */ f.createElement(ut, { onClick: this.clearButtonClick }),\n !this.mobileMode && this.renderListContainer()\n ), this.mobileMode && this.renderAdaptiveListContainer());\n return t ? /* @__PURE__ */ f.createElement(\n ot,\n {\n label: t,\n editorId: _,\n editorValue: h || O(this.value[0], a),\n editorValid: K,\n editorDisabled: s,\n style: { width: n ? n.width : void 0 },\n children: N\n }\n ) : N;\n }\n renderSearchBar(n) {\n const { activedescendant: e, focusedTag: t, currentValue: o } = this.state, { disabled: s, placeholder: a, ariaDescribedBy: p, ariaLabelledBy: c, ariaLabel: r } = this.props, i = !this.mobileMode && (this.props.filter !== void 0 ? this.props.filter : this.state.text) || \"\", { focusedIndex: d } = this.getFocusedState(), g = this.value.length === 0 && !i ? a : void 0, l = o && o.length > 0 ? void 0 : a, h = e === k.TagsList && t !== void 0 ? `tag-${this.base.guid}-${t.text.replace(/\\s+/g, \"-\")}` : `option-${this.base.guid}-${d}`, v = {\n accessKey: this.props.accessKey,\n tabIndex: this.props.tabIndex\n };\n return /* @__PURE__ */ f.createElement(\n rt,\n {\n id: n,\n size: Math.max((g || \"\").length, i.length, 1),\n placeholder: this.mobileMode && this.opened ? l : g,\n value: i,\n onChange: this.onChangeHandler,\n onKeyDown: this.onInputKeyDown,\n ref: this.searchbarRef,\n disabled: s,\n expanded: this.opened,\n owns: this.base.listBoxId,\n role: \"combobox\",\n activedescendant: h,\n ariaDescribedBy: `tagslist-${this.base.guid}${p ? \" \" + p : \"\"}`,\n ariaLabelledBy: c,\n ariaRequired: this.required,\n ariaLabel: r,\n ...v\n }\n );\n }\n onTagsNavigate(n, e) {\n const t = n.keyCode, { focusedTag: o } = this.state, s = this._tags, a = this.props.dataItemKey;\n let p = o ? s.findIndex((i) => B(i, o, a)) : -1, c;\n const r = p !== -1;\n if (t === u.left)\n r ? p = Math.max(0, p - 1) : p = s.length - 1, c = s[p];\n else if (t === u.right)\n p === s.length - 1 ? c = void 0 : r && (p = Math.min(s.length - 1, p + 1), c = s[p]);\n else if (t === u.home && !n.shiftKey)\n c = s[0];\n else if (t === u.end && !n.shiftKey)\n c = s[s.length - 1];\n else if (t === u.delete) {\n if (r) {\n const i = this.value;\n w(i, s[p].data, a), this.triggerOnChange(i, e);\n }\n } else if (t === u.backspace) {\n const i = this.value;\n if (r)\n w(i, s[p].data, a), this.triggerOnChange(i, e);\n else if (!r && s.length) {\n const d = s.pop();\n w(i, d.data, a), this.triggerOnChange(i, e);\n }\n }\n c !== o && (e.data.focusedTag = c, e.data.activedescendant = k.TagsList), this.applyState(e);\n }\n triggerOnChange(n, e) {\n this.props.value === void 0 && (e.data.value = [...n]), this._valueItemsDuringOnChange = [], this.setItems(n, this._valueItemsDuringOnChange), e.events.push({ type: \"onChange\" });\n }\n selectFocusedItem(n, e) {\n const { virtual: t } = this.props, o = I(this.props), { focusedIndex: s } = e || this.getFocusedState(), a = t ? t.skip : 0;\n o[s - a] !== void 0 && this.handleItemClick(s, n);\n }\n setItems(n, e) {\n e.length = 0, e.push(...n);\n }\n getFocusedState() {\n const { focusedIndex: n } = this.state, e = this.props.filter !== void 0 ? this.props.filter : this.state.text, {\n allowCustom: t,\n dataItemKey: o,\n virtual: s,\n textField: a,\n focusedItemIndex: p = pt,\n skipDisabledItems: c\n } = this.props, r = I(this.props), i = s && s.skip || 0;\n let d;\n if (n !== void 0)\n return {\n focusedIndex: n,\n focusedItem: r[n - i],\n focusedType: 1\n /* ListItem */\n };\n const g = this.value;\n if (t && e)\n return {\n focusedItem: null,\n focusedIndex: -1,\n focusedType: 2\n /* CustomItem */\n };\n if (e)\n return d = p(r, e, a), {\n focusedItem: r[d],\n focusedIndex: d + i,\n focusedType: 1\n /* ListItem */\n };\n if (g.length) {\n const l = g[g.length - 1];\n return d = r.findIndex((h) => E(h, l, o)), r[d] !== void 0 ? {\n focusedIndex: d + i,\n focusedItem: r[d],\n focusedType: 1\n /* ListItem */\n } : { focusedType: 0, focusedIndex: -1 };\n } else if (c && a && !e && i === 0) {\n const l = r.findIndex((h) => !h.disabled && h[a]);\n return {\n focusedIndex: l,\n focusedItem: r[l - i],\n focusedType: 1\n /* ListItem */\n };\n }\n return i === 0 ? {\n focusedItem: r[0],\n focusedIndex: 0,\n focusedType: 1\n /* ListItem */\n } : { focusedType: 0, focusedIndex: -1 };\n }\n focusElement(n) {\n this._skipFocusEvent = !0, n.focus(), window.setTimeout(() => this._skipFocusEvent = !1, 0);\n }\n applyState(n) {\n this.base.applyState(n), this._valueItemsDuringOnChange = null;\n }\n calculateMedia(n) {\n for (const e of n)\n this.setState({ windowWidth: e.target.clientWidth });\n }\n /**\n * Updates the state of the MultiSelect when the complex keyboard navigation that\n * includes key combinations with the Ctrl/Command, Shift, Home and End keys\n *\n * @param {Array} dataToSet Defines the array of new values that will be applied to the MultiSelect\n * @param {MultiSelectInternalState} state The current state of the MultiSelect\n */\n updateStateOnKeyboardNavigation(n, e) {\n this.setState({ value: n }), this.triggerOnChange(n, e), this.applyState(e);\n }\n /**\n * Returns the last element that was selected or deselected. Needed for the keyboard navigation specifications\n *\n * @param {number} correction A correction is needed depending on if UP or DOWN key is pressed\n */\n getLastSelectedOrDeselectedIndex(n, e) {\n return this._lastSelectedOrDeslectedItemIndex === null && (this._lastSelectedOrDeslectedItemIndex = e), this._lastSelectedOrDeslectedItemIndex !== null ? this._lastSelectedOrDeslectedItemIndex + n : null;\n }\n};\nb.displayName = \"MultiSelect\", b.propTypes = {\n ...F.propTypes,\n autoClose: m.bool,\n value: m.arrayOf(m.any),\n defaultValue: m.arrayOf(m.any),\n dataItemKey: m.string,\n placeholder: m.string,\n tags: m.arrayOf(\n m.shape({\n text: m.string,\n data: m.arrayOf(m.any)\n })\n ),\n tagRender: m.func,\n id: m.string,\n ariaLabelledBy: m.string,\n ariaDescribedBy: m.string,\n groupField: m.string,\n list: m.any,\n adaptive: m.bool,\n adaptiveTitle: m.string,\n onCancel: m.func,\n skipDisabledItems: m.bool\n}, b.defaultProps = {\n ...F.defaultProps,\n autoClose: !0,\n required: !1,\n size: \"medium\",\n rounded: \"medium\",\n fillMode: \"solid\",\n groupMode: \"modern\",\n skipDisabledItems: !0,\n prefix: void 0,\n suffix: void 0\n};\nlet P = b;\nconst xt = Z(), St = tt(\n et(\n xt,\n P\n )\n);\nSt.displayName = \"KendoReactMultiSelect\";\nexport {\n St as MultiSelect,\n xt as MultiSelectPropsContext,\n P as MultiSelectWithoutContext\n};\n","// framework\r\nimport { clone } from \"lodash\";\r\n// api\r\nimport * as Client from \"../../../../api/Client\";\r\n// models\r\nimport { ISampleViewModel } from \"../models/models\";\r\n\r\nexport interface IRootViewModel {\r\n sampleViewModel: ISampleViewModel;\r\n\r\n onDetailsChanged(values: ISampleViewModel): IRootViewModel;\r\n\r\n referenceData: {\r\n boreholes: Client.GetCreatePublicCoreCuttingsRequestReferenceDataResponseBoreholeDto[];\r\n sampleTypes: Client.GetCreatePublicCoreCuttingsRequestReferenceDataResponseSampleTypeDto[];\r\n };\r\n}\r\n\r\nexport class RootViewModel implements IRootViewModel {\r\n constructor(boreholes: Client.GetCreatePublicCoreCuttingsRequestReferenceDataResponseBoreholeDto[], sampleTypes: Client.GetCreatePublicCoreCuttingsRequestReferenceDataResponseSampleTypeDto[]) {\r\n this.sampleViewModel = {\r\n uniqueId: crypto.randomUUID(),\r\n sampleTypes: [],\r\n };\r\n this.referenceData = {\r\n boreholes: boreholes,\r\n sampleTypes: sampleTypes,\r\n };\r\n }\r\n\r\n public sampleViewModel: ISampleViewModel;\r\n\r\n public onDetailsChanged(values: ISampleViewModel): IRootViewModel {\r\n const vm = this._clone();\r\n vm.sampleViewModel = { ...vm.sampleViewModel, ...values };\r\n return vm;\r\n }\r\n\r\n referenceData: {\r\n boreholes: Client.GetCreatePublicCoreCuttingsRequestReferenceDataResponseBoreholeDto[];\r\n sampleTypes: Client.GetCreatePublicCoreCuttingsRequestReferenceDataResponseSampleTypeDto[];\r\n };\r\n\r\n private _clone(): IRootViewModel {\r\n const vm = clone(this);\r\n return vm;\r\n }\r\n}\r\n","// framework\r\nimport { useState } from \"react\";\r\n// kendo\r\nimport { Dialog, DialogActionsBar } from \"@progress/kendo-react-dialogs\";\r\nimport KendoLargeComboBox from \"../../../../common/kendo/KendoLargeComboBox\";\r\nimport KendoNumericTextBox from \"../../../../common/kendo/KendoNumericTextBox\";\r\nimport { MultiSelect } from \"@progress/kendo-react-dropdowns\";\r\nimport { filterBy } from \"@progress/kendo-data-query\";\r\n// common\r\nimport * as Forms from \"../../../../common/forms/BootstrapForms\";\r\nimport * as toastHelper from \"../../../../common/toastHelper\";\r\nimport { ValidationVisibilityEnum } from \"../../../../common/validation/ValidationModel\";\r\nimport ValidationMessageView from \"../../../../common/validation/ValidationMessageView\";\r\n// api\r\nimport * as Client from \"../../../../api/Client\";\r\n// models\r\nimport { IRootViewModel, RootViewModel } from \"./models\";\r\nimport { ISampleViewModel } from \"../models/models\";\r\nimport validator from \"./validator\";\r\n\r\ninterface IProps {\r\n boreholes: Client.GetCreatePublicCoreCuttingsRequestReferenceDataResponseBoreholeDto[];\r\n sampleTypes: Client.GetCreatePublicCoreCuttingsRequestReferenceDataResponseSampleTypeDto[];\r\n onAdd: (sample: ISampleViewModel) => void;\r\n onCancel: () => void;\r\n}\r\n\r\nexport default function Controller(props: IProps): JSX.Element {\r\n const [vm, setVm] = useState(new RootViewModel(props.boreholes, props.sampleTypes));\r\n\r\n const [validationVisibility, setValidationVisibility] = useState(ValidationVisibilityEnum.Messages);\r\n const v = validator(vm, validationVisibility);\r\n\r\n const boreholes = vm.referenceData.boreholes;\r\n const [sampleTypeData, setSampleTypeData] = useState(vm.referenceData.sampleTypes.slice());\r\n\r\n function onChange(values: ISampleViewModel) {\r\n setVm(vm.onDetailsChanged(values));\r\n }\r\n\r\n function onAdd() {\r\n if (!v.isValid()) {\r\n setValidationVisibility(ValidationVisibilityEnum.MessagesAndAdorners);\r\n toastHelper.showValidationErrorNotification();\r\n return;\r\n }\r\n setValidationVisibility(ValidationVisibilityEnum.Messages);\r\n props.onAdd(vm.sampleViewModel);\r\n }\r\n\r\n function onCancel() {\r\n props.onCancel();\r\n }\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n Borehole\r\n onChange({ ...vm.sampleViewModel, borehole: value })}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Interval Top (m)\r\n onChange({ ...vm.sampleViewModel, intervalTop: value })}\r\n onBlur={() => {}}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Interval Bottom (m)\r\n onChange({ ...vm.sampleViewModel, intervalBottom: value })}\r\n onBlur={() => {}}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Sample Types\r\n setSampleTypeData(filterBy(vm.referenceData.sampleTypes.slice(), event.filter))}\r\n onChange={(event) =>\r\n onChange({\r\n ...vm.sampleViewModel,\r\n sampleTypes: event.value.sort(\r\n (\r\n a: Client.GetCreatePublicCoreCuttingsRequestReferenceDataResponseSampleTypeDto,\r\n b: Client.GetCreatePublicCoreCuttingsRequestReferenceDataResponseSampleTypeDto\r\n ) => a.name.localeCompare(b.name)\r\n ),\r\n })\r\n }\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n}\r\n","// framework\r\nimport * as Validation from \"../../../../common/validation/ValidationModel\";\r\n// models\r\nimport * as Models from \"./models\";\r\n\r\nexport default function validate(vm: Models.IRootViewModel, visibility: Validation.ValidationVisibilityEnum): Validation.IValidationModel {\r\n const v = new Validation.ValidationModel(visibility);\r\n\r\n if (!vm.sampleViewModel.borehole) {\r\n v.addError(\"Sample.Borehole\", \"Borehole is required.\");\r\n }\r\n\r\n if (!vm.sampleViewModel.intervalTop) {\r\n v.addError(\"Sample.IntervalTop\", \"Interval Top is required.\");\r\n }\r\n\r\n if (!vm.sampleViewModel.intervalBottom) {\r\n v.addError(\"Sample.IntervalBottom\", \"Interval Bottom is required.\");\r\n }\r\n\r\n if (!vm.sampleViewModel.sampleTypes?.some((st) => st)) {\r\n v.addError(\"Sample.SampleTypes\", \"At least one Sample Type must be provided.\");\r\n }\r\n\r\n return v;\r\n}\r\n","// framework\r\nimport React, { useEffect, useState } from \"react\";\r\n// kendo\r\nimport { Grid, GridColumn } from \"@progress/kendo-react-grid\";\r\nimport CustomGridCell from \"../../../../common/kendoGrid/CustomGridCell\";\r\nimport KendoComboBox from \"../../../../common/kendo/KendoComboBox\";\r\nimport KendoDropDownList from \"../../../../common/kendo/KendoDropDownList\";\r\n// api\r\nimport * as Client from \"../../../../api/Client\";\r\n// common\r\nimport * as Forms from \"../../../../common/forms/BootstrapForms\";\r\nimport { IValidationModel } from \"../../../../common/validation/ValidationModel\";\r\nimport ValidationMessageView from \"../../../../common/validation/ValidationMessageView\";\r\n// models\r\nimport { ICoreCuttingsRequestViewModel, IRootViewModel, ISampleViewModel } from \"../models/models\";\r\n// views\r\nimport AddSampleController from \"../addSample/Controller\";\r\n\r\ninterface IProps {\r\n vm: IRootViewModel;\r\n setVm: (vm: IRootViewModel) => void;\r\n validation: IValidationModel;\r\n onReset: () => void;\r\n onSubmit: () => void;\r\n}\r\n\r\nexport default function CoreCuttingsRequestCreateView(props: IProps): React.JSX.Element {\r\n const { vm, setVm, validation, onReset, onSubmit } = props;\r\n\r\n const [state, setState] = useState(vm.coreCuttingsRequest);\r\n const honorifics = vm.referenceData.honorifics;\r\n const countries = vm.referenceData.countries;\r\n const countrySubDivisions = vm.referenceData.countrySubDivisions;\r\n\r\n const [showAddSampleView, setShowAddSampleView] = useState(false);\r\n\r\n useEffect(() => {\r\n setState(vm.coreCuttingsRequest);\r\n }, [vm.coreCuttingsRequest]);\r\n\r\n function updateViewModel() {\r\n setVm(vm.refreshCoreCuttingsRequestDetails({ ...state }));\r\n }\r\n\r\n function updateStateAndViewModel(state: ICoreCuttingsRequestViewModel) {\r\n setState(state);\r\n setVm(vm.refreshCoreCuttingsRequestDetails({ ...state }));\r\n }\r\n\r\n function onShowAddSampleView() {\r\n setShowAddSampleView(true);\r\n }\r\n\r\n function onSampleViewAdd(sample: ISampleViewModel) {\r\n setVm(vm.addSample(sample));\r\n setShowAddSampleView(false);\r\n }\r\n\r\n function onRemoveSample(sample: ISampleViewModel) {\r\n setVm(vm.removeSample(sample));\r\n }\r\n\r\n function onSampleViewCancel() {\r\n setShowAddSampleView(false);\r\n }\r\n\r\n // cascading reference data\r\n const [filteredCountrySubDivisions, setFilteredCountrySubDivisions] = useState([]);\r\n useEffect(() => {\r\n setFilteredCountrySubDivisions(state.country ? countrySubDivisions.filter((d) => d.countryId === state.country!.id) : []);\r\n }, [countrySubDivisions, state.country]);\r\n\r\n return (\r\n <>\r\n
\r\n
\r\n

Contact Details

\r\n \r\n \r\n \r\n Title\r\n updateStateAndViewModel({ ...state, honorific: value })}\r\n onBlur={updateViewModel}\r\n />\r\n \r\n \r\n setState({ ...state, firstName: value })}\r\n onBlur={updateViewModel}\r\n />\r\n \r\n \r\n \r\n setState({ ...state, lastName: value })}\r\n onBlur={updateViewModel}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n setState({ ...state, companyName: value })}\r\n onBlur={updateViewModel}\r\n />\r\n \r\n \r\n setState({ ...state, contactNumber: value })}\r\n onBlur={updateViewModel}\r\n />\r\n \r\n \r\n \r\n setState({ ...state, emailAddress: value })}\r\n onBlur={updateViewModel}\r\n />\r\n \r\n \r\n \r\n \r\n

Address Details

\r\n \r\n \r\n \r\n setState({ ...state, streetAddress: value })}\r\n onBlur={updateViewModel}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n setState({ ...state, suburb: value })}\r\n onBlur={updateViewModel}\r\n />\r\n \r\n \r\n \r\n setState({ ...state, postcode: value })}\r\n onBlur={updateViewModel}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n State/Territory\r\n updateStateAndViewModel({ ...state, countrySubDivision: value })}\r\n onBlur={updateViewModel}\r\n />\r\n \r\n \r\n Country\r\n updateStateAndViewModel({ ...state, countrySubDivision: undefined, country: value })}\r\n onBlur={updateViewModel}\r\n />\r\n \r\n \r\n \r\n \r\n

Academia Information

\r\n \r\n \r\n \r\n \r\n \r\n updateStateAndViewModel({\r\n ...state,\r\n isAcademia: true,\r\n supervisorHonorific: undefined,\r\n supervisorFirstName: undefined,\r\n supervisorLastName: undefined,\r\n supervisorUniversityName: undefined,\r\n supervisorContactNumber: undefined,\r\n supervisorEmailAddress: undefined,\r\n supervisorSchoolName: undefined,\r\n })\r\n }\r\n />\r\n updateStateAndViewModel({ ...state, isAcademia: false })}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n {state.isAcademia && (\r\n <>\r\n

Supervisor Contact Details

\r\n \r\n \r\n \r\n Title\r\n updateStateAndViewModel({ ...state, supervisorHonorific: value })}\r\n onBlur={updateViewModel}\r\n />\r\n \r\n \r\n setState({ ...state, supervisorFirstName: value })}\r\n onBlur={updateViewModel}\r\n />\r\n \r\n \r\n \r\n setState({ ...state, supervisorLastName: value })}\r\n onBlur={updateViewModel}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n setState({ ...state, supervisorUniversityName: value })}\r\n onBlur={updateViewModel}\r\n />\r\n \r\n \r\n \r\n setState({ ...state, supervisorContactNumber: value })}\r\n onBlur={updateViewModel}\r\n />\r\n \r\n \r\n \r\n setState({ ...state, supervisorEmailAddress: value })}\r\n onBlur={updateViewModel}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n setState({ ...state, supervisorSchoolName: value })}\r\n onBlur={updateViewModel}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n )}\r\n

Study Information

\r\n \r\n \r\n \r\n setState({ ...state, studyDescription: value })}\r\n onBlur={updateViewModel}\r\n />\r\n \r\n \r\n \r\n \r\n

Required Samples

\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n {vm.coreCuttingsRequest.samples && vm.coreCuttingsRequest.samples.some((s) => s) && (\r\n
\r\n \r\n \r\n \r\n \r\n (\r\n \r\n {props.dataItem.sampleTypes && (\r\n

\r\n {props.dataItem.sampleTypes\r\n .map((st: Client.GetCreatePublicCoreCuttingsRequestReferenceDataResponseSampleTypeDto) => st.name)\r\n .join(\", \")}\r\n

\r\n )}\r\n
\r\n )}\r\n />\r\n (\r\n \r\n \r\n \r\n )}\r\n />\r\n
\r\n
\r\n )}\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n {showAddSampleView && }\r\n \r\n );\r\n}\r\n","// framework\r\nimport React from \"react\";\r\n// kendo\r\nimport { Grid, GridColumn } from \"@progress/kendo-react-grid\";\r\nimport CustomGridCell from \"../../../../common/kendoGrid/CustomGridCell\";\r\n// api\r\nimport * as Client from \"../../../../api/Client\";\r\n// common\r\nimport * as Forms from \"../../../../common/forms/BootstrapForms\";\r\n// models\r\nimport { IRootViewModel } from \"../models/models\";\r\n\r\ninterface IProps {\r\n vm: IRootViewModel;\r\n onReset: () => void;\r\n}\r\n\r\nexport default function CoreCuttingsRequestCreateSubmittedView(props: IProps): React.JSX.Element {\r\n const { vm } = props;\r\n const coreCuttingsRequest = vm.coreCuttingsRequest;\r\n\r\n return (\r\n <>\r\n
\r\n
\r\n

Contact Details

\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n

Address Details

\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n

Academia Information

\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {coreCuttingsRequest.isAcademia && (\r\n <>\r\n

Supervisor Contact Details

\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n )}\r\n

Study Information

\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n

Required Samples

\r\n \r\n \r\n \r\n {vm.coreCuttingsRequest.samples && vm.coreCuttingsRequest.samples.some((s) => s) && (\r\n
\r\n \r\n \r\n \r\n \r\n (\r\n \r\n {props.dataItem.sampleTypes && (\r\n

\r\n {props.dataItem.sampleTypes\r\n .map((st: Client.GetCreatePublicCoreCuttingsRequestReferenceDataResponseSampleTypeDto) => st.name)\r\n .join(\", \")}\r\n

\r\n )}\r\n
\r\n )}\r\n />\r\n
\r\n
\r\n )}\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n );\r\n}\r\n","// framework\r\nimport { useState, useEffect } from \"react\";\r\nimport TaskLayout from \"../../../common/shell/TaskLayout\";\r\n// redux\r\nimport * as Actions from \"./actions\";\r\n// common\r\nimport * as toastHelper from \"../../../common/toastHelper\";\r\nimport { useUserToken } from \"../../../common/shell/shellHelper\";\r\nimport { ValidationVisibilityEnum } from \"../../../common/validation/ValidationModel\";\r\n// models\r\nimport { IRootViewModel, RootViewModel } from \"./models/models\";\r\nimport validator from \"./models/validator\";\r\n// views\r\nimport CoreCuttingsRequestCreateView from \"./views/CoreCuttingsRequestCreateView\";\r\nimport CoreCuttingsRequestCreateSubmittedView from \"./views/CoreCuttingsRequestCreateSubmittedView\";\r\nimport NopimsPageLayout from \"../../shell/NopimsPageLayout\";\r\nimport { nopimsLhsNavItemEnum } from \"../../shell/NopimsLhsNav\";\r\n\r\nexport default function Controller(): React.JSX.Element {\r\n const userToken = useUserToken();\r\n const [vm, setVm] = useState(new RootViewModel(userToken!));\r\n\r\n // initial load\r\n useEffect(() => {\r\n Actions.initialise(vm, setVm);\r\n }, []); // eslint-disable-line react-hooks/exhaustive-deps\r\n\r\n const [validationVisibility, setValidationVisibility] = useState(ValidationVisibilityEnum.Messages);\r\n const validation = validator(vm, validationVisibility);\r\n\r\n function onReset() {\r\n setValidationVisibility(ValidationVisibilityEnum.Messages);\r\n setVm(vm.reset());\r\n window.scrollTo({ top: 0, behavior: \"smooth\" });\r\n }\r\n\r\n function onSubmit() {\r\n if (!validation.isValid()) {\r\n setValidationVisibility(ValidationVisibilityEnum.MessagesAndAdorners);\r\n toastHelper.showValidationErrorNotification();\r\n return;\r\n }\r\n setValidationVisibility(ValidationVisibilityEnum.None);\r\n Actions.createPublicCoreCuttingsRequestCommand(vm, setVm);\r\n }\r\n\r\n return (\r\n \r\n \r\n {vm.isSubmitted && }\r\n {!vm.isSubmitted && }\r\n \r\n \r\n );\r\n}\r\n","import { logError } from \"../../../common/LogHelper\";\r\nimport { createCoreCuttingsRequestClient } from \"../../../api/clientFactory\";\r\nimport { simpleCall } from \"../../../api/callHelper\";\r\nimport * as Client from \"../../../api/Client\";\r\nimport { IRootViewModel } from \"./models/models\";\r\n\r\nexport async function initialise(viewModel: IRootViewModel, setViewModel: (viewModel: IRootViewModel) => void): Promise {\r\n let vm = viewModel;\r\n try {\r\n setViewModel((vm = vm.setBusy(true)));\r\n const client = createCoreCuttingsRequestClient();\r\n const request = new Client.GetCreatePublicCoreCuttingsRequestReferenceDataRequestDto({});\r\n const response = await simpleCall(() => client.getCreatePublicCoreCuttingsRequestReferenceData(request));\r\n setViewModel((vm = vm.refreshReferenceData(response)));\r\n } catch (e) {\r\n logError(e);\r\n } finally {\r\n setViewModel((vm = vm.setBusy(false)));\r\n }\r\n}\r\n\r\nexport async function createPublicCoreCuttingsRequestCommand(viewModel: IRootViewModel, setViewModel: (viewModel: IRootViewModel) => void): Promise {\r\n let vm = viewModel;\r\n try {\r\n setViewModel((vm = vm.setBusy(true)));\r\n const client = createCoreCuttingsRequestClient();\r\n const request = new Client.CreatePublicCoreCuttingsRequestRequestDto({\r\n userToken: vm.userToken,\r\n honorificId: vm.coreCuttingsRequest.honorific?.id,\r\n firstName: vm.coreCuttingsRequest.firstName!,\r\n lastName: vm.coreCuttingsRequest.lastName!,\r\n companyName: vm.coreCuttingsRequest.companyName,\r\n contactNumber: vm.coreCuttingsRequest.contactNumber!,\r\n emailAddress: vm.coreCuttingsRequest.emailAddress!,\r\n streetAddress: vm.coreCuttingsRequest.streetAddress,\r\n suburb: vm.coreCuttingsRequest.suburb!,\r\n countrySubdivisionId: vm.coreCuttingsRequest.countrySubDivision?.id,\r\n countryId: vm.coreCuttingsRequest.country!.id,\r\n postcode: vm.coreCuttingsRequest.postcode,\r\n isAcademia: vm.coreCuttingsRequest.isAcademia!,\r\n studyDescription: vm.coreCuttingsRequest.studyDescription!,\r\n boreholeSampleDetails: vm.coreCuttingsRequest.samples.map((s) => {\r\n return new Client.CreatePublicCoreCuttingsRequestRequestBoreholeSampleDetailDto({\r\n boreholeId: s.borehole!.id,\r\n intervalTop: s.intervalTop!,\r\n intervalBottom: s.intervalBottom!,\r\n boreholeSampleTypeIds: s.sampleTypes!.map((st) => st.id),\r\n });\r\n }),\r\n });\r\n if (vm.coreCuttingsRequest.isAcademia!) {\r\n request.supervisorHonorific = vm.coreCuttingsRequest.supervisorHonorific?.id;\r\n request.supervisorFirstName = vm.coreCuttingsRequest.supervisorFirstName!;\r\n request.supervisorLastName = vm.coreCuttingsRequest.supervisorLastName!;\r\n request.supervisorUniversityName = vm.coreCuttingsRequest.supervisorUniversityName;\r\n request.supervisorContactNumber = vm.coreCuttingsRequest.supervisorContactNumber!;\r\n request.supervisorEmailAddress = vm.coreCuttingsRequest.supervisorEmailAddress!;\r\n request.supervisorSchoolName = vm.coreCuttingsRequest.supervisorSchoolName!;\r\n }\r\n const response = await simpleCall(() => client.createPublicCoreCuttingsRequest(request));\r\n setViewModel((vm = vm.refreshCoreCuttingsRequestCreateResponse(response)));\r\n } catch (e) {\r\n logError(e);\r\n } finally {\r\n setViewModel((vm = vm.setBusy(false)));\r\n }\r\n}\r\n","// framework\r\nimport * as Validation from \"../../../../common/validation/ValidationModel\";\r\n// models\r\nimport * as Models from \"./models\";\r\n\r\nexport default function validate(vm: Models.IRootViewModel, visibility: Validation.ValidationVisibilityEnum): Validation.IValidationModel {\r\n const v = new Validation.ValidationModel(visibility);\r\n\r\n if (!vm.coreCuttingsRequest.firstName) {\r\n v.addError(\"CreateCoreCuttingsRequest.FirstName\", \"First Name is required.\");\r\n }\r\n\r\n if (!vm.coreCuttingsRequest.lastName) {\r\n v.addError(\"CreateCoreCuttingsRequest.LastName\", \"Last Name is required.\");\r\n }\r\n\r\n if (!vm.coreCuttingsRequest.contactNumber) {\r\n v.addError(\"CreateCoreCuttingsRequest.ContactNumber\", \"Contact Number is required.\");\r\n }\r\n\r\n if (!vm.coreCuttingsRequest.emailAddress) {\r\n v.addError(\"CreateCoreCuttingsRequest.EmailAddress\", \"Email is required.\");\r\n } else if (!Validation.isValidEmail(vm.coreCuttingsRequest.emailAddress!)) {\r\n v.addError(\"CreateCoreCuttingsRequest.EmailAddress\", \"Email is not valid.\");\r\n }\r\n\r\n if (!vm.coreCuttingsRequest.suburb) {\r\n v.addError(\"CreateCoreCuttingsRequest.Suburb\", \"Town/Suburb is required.\");\r\n }\r\n\r\n if (!vm.coreCuttingsRequest.country) {\r\n v.addError(\"CreateCoreCuttingsRequest.Country\", \"Country is required.\");\r\n }\r\n\r\n if (vm.coreCuttingsRequest.isAcademia === undefined) {\r\n v.addError(\"CreateCoreCuttingsRequest.IsAcademia\", \"Academia is required.\");\r\n }\r\n\r\n if (vm.coreCuttingsRequest.isAcademia === true) {\r\n if (!vm.coreCuttingsRequest.supervisorFirstName) {\r\n v.addError(\"CreateCoreCuttingsRequest.SupervisorFirstName\", \"First Name is required.\");\r\n }\r\n\r\n if (!vm.coreCuttingsRequest.supervisorLastName) {\r\n v.addError(\"CreateCoreCuttingsRequest.SupervisorLastName\", \"Last Name is required.\");\r\n }\r\n\r\n if (!vm.coreCuttingsRequest.supervisorUniversityName) {\r\n v.addError(\"CreateCoreCuttingsRequest.SupervisorUniversityName\", \"University is required.\");\r\n }\r\n\r\n if (!vm.coreCuttingsRequest.supervisorContactNumber) {\r\n v.addError(\"CreateCoreCuttingsRequest.SupervisorContactNumber\", \"Contact Number is required.\");\r\n }\r\n\r\n if (!vm.coreCuttingsRequest.supervisorEmailAddress) {\r\n v.addError(\"CreateCoreCuttingsRequest.SupervisorEmailAddress\", \"Email is required.\");\r\n } else if (!Validation.isValidEmail(vm.coreCuttingsRequest.supervisorEmailAddress!)) {\r\n v.addError(\"CreateCoreCuttingsRequest.SupervisorEmailAddress\", \"Email is not valid.\");\r\n }\r\n\r\n if (!vm.coreCuttingsRequest.supervisorSchoolName) {\r\n v.addError(\"CreateCoreCuttingsRequest.SupervisorSchoolName\", \"School/Field is required.\");\r\n }\r\n }\r\n\r\n if (!vm.coreCuttingsRequest.studyDescription) {\r\n v.addError(\"CreateCoreCuttingsRequest.StudyDescription\", \"Description of the study/analysis is required.\");\r\n }\r\n\r\n if (!vm.coreCuttingsRequest.samples.some((s) => s)) {\r\n v.addError(\"CreateCoreCuttingsRequest.RequiredSamples\", \"At least one Sample detail must be provided.\");\r\n }\r\n\r\n return v;\r\n}\r\n","// framework\r\nimport { useState } from \"react\";\r\nimport { useDispatch } from \"react-redux\";\r\nimport * as Actions from \"../redux/actions\";\r\nimport { useNopimsBasket } from \"../redux/reducers\";\r\nimport { Grid, GridColumn, GridPageChangeEvent } from \"@progress/kendo-react-grid\";\r\nimport { process, State } from \"@progress/kendo-data-query\";\r\n// model\r\nimport { INopimsBasketItemModel } from \"../redux/model\";\r\n// common\r\nimport CustomGridCell from \"../../../common/kendoGrid/CustomGridCell\";\r\nimport * as Forms from \"../../../common/forms/BootstrapForms\";\r\n\r\ninterface IProps {\r\n onShowSubmitBasket: () => void;\r\n}\r\n\r\nexport default function BasketView(props: IProps): React.JSX.Element {\r\n const nopimsBasketModel = useNopimsBasket();\r\n const dispatch = useDispatch();\r\n\r\n // grid state\r\n const [pageSize, setPageSize] = useState(10);\r\n const initialGridState = {\r\n sort: [{ field: \"title\", dir: \"asc\" }],\r\n skip: 0,\r\n take: pageSize,\r\n } as State;\r\n const [gridState, setGridState] = useState(initialGridState);\r\n\r\n function onItemRemoved(item: INopimsBasketItemModel): void {\r\n dispatch(Actions.itemsRemoved([item]));\r\n }\r\n\r\n function onItemsCleared(): void {\r\n dispatch(Actions.itemsRemoved(nopimsBasketModel.items));\r\n }\r\n\r\n return (\r\n <>\r\n \r\n \r\n {nopimsBasketModel.items.length > 0 ? (\r\n <>\r\n You are requesting copies of the following {nopimsBasketModel.items.length.toString()} documents. Review the list below and press \"Proceed\".\r\n \r\n ) : (\r\n <>Your basket is empty.\r\n )}\r\n \r\n \r\n {\r\n setPageSize(e.page.take);\r\n setGridState({ ...gridState, take: e.page.take, skip: e.page.skip });\r\n }}\r\n sortable\r\n resizable\r\n navigatable\r\n data={process(nopimsBasketModel.items, gridState)}\r\n {...gridState}\r\n onDataStateChange={(e) => {\r\n setGridState(e.dataState);\r\n }}\r\n >\r\n (\r\n \r\n onItemRemoved(gridCellProps.dataItem)}\r\n title={`Click to remove this ${gridCellProps.dataItem.activity}'s Document from the Basket.`}\r\n >\r\n Remove\r\n \r\n \r\n )}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n onItemsCleared()}\r\n title=\"Click to Remove All Documents from the Basket.\"\r\n >\r\n Remove All\r\n \r\n props.onShowSubmitBasket()}\r\n title=\"Click to proceed to the Request form to submit the Basket.\"\r\n >\r\n Proceed\r\n \r\n
\r\n \r\n );\r\n}\r\n","// framework\r\nimport { clone } from \"lodash\";\r\n// api\r\nimport * as Client from \"../../../../api/Client\";\r\n\r\nexport interface IReferenceDataViewModel {\r\n honorifics: Client.GetSubmitPublicNopimsBasketReferenceDataResponseHonorificDto[];\r\n countries: Client.GetSubmitPublicNopimsBasketReferenceDataResponseCountryDto[];\r\n countrySubDivisions: Client.GetSubmitPublicNopimsBasketReferenceDataResponseCountrySubDivisionDto[];\r\n}\r\n\r\nexport interface ISubmitBasketViewModel {\r\n customerHonorific?: Client.GetCreatePublicFeedbackReferenceDataResponseHonorificDto | undefined;\r\n customerFirstName?: string | undefined;\r\n customerLastName?: string | undefined;\r\n customerEmailAddress?: string | undefined;\r\n customerContactNumber?: string | undefined;\r\n customerCompanyName?: string | undefined;\r\n customerAddress?: string | undefined;\r\n customerSuburb?: string | undefined;\r\n customerPostcode?: string | undefined;\r\n customerCountry?: Client.GetSubmitPublicNopimsBasketReferenceDataResponseCountryDto | undefined;\r\n customerCountrySubdivision?: Client.GetSubmitPublicNopimsBasketReferenceDataResponseCountrySubDivisionDto | undefined;\r\n customerComments?: string | undefined;\r\n}\r\n\r\nexport interface IRootViewModel {\r\n userToken: string;\r\n statusMessages?: Client.StatusMessagesDto;\r\n isBusy: boolean;\r\n isDirty: boolean;\r\n referenceData: IReferenceDataViewModel;\r\n submitDetails: ISubmitBasketViewModel;\r\n\r\n setBusy(isBusy: boolean): IRootViewModel;\r\n refreshReferenceData(response: Client.GetSubmitPublicNopimsBasketReferenceDataRequestDto): IRootViewModel;\r\n refreshSubmitDetails(feedback: ISubmitBasketViewModel): IRootViewModel;\r\n refreshSubmitResponse(response: Client.SubmitPublicNopimsBasketResponseDto): IRootViewModel;\r\n}\r\n\r\nexport class RootViewModel implements IRootViewModel {\r\n constructor(userToken: string) {\r\n this.userToken = userToken;\r\n this.statusMessages = undefined;\r\n this.isBusy = false;\r\n this.isDirty = false;\r\n this.submitDetails = {};\r\n this.referenceData = {\r\n honorifics: [],\r\n countries: [],\r\n countrySubDivisions: [],\r\n };\r\n }\r\n\r\n public userToken: string;\r\n public statusMessages?: Client.StatusMessagesDto;\r\n public isBusy: boolean;\r\n public isDirty: boolean;\r\n public submitDetails: ISubmitBasketViewModel;\r\n public referenceData: IReferenceDataViewModel;\r\n\r\n setBusy(isBusy: boolean): IRootViewModel {\r\n const vm = this._clone();\r\n vm.isBusy = isBusy;\r\n return vm;\r\n }\r\n\r\n refreshReferenceData(response: Client.GetSubmitPublicNopimsBasketReferenceDataResponseDto): IRootViewModel {\r\n const vm = this._clone();\r\n vm.referenceData = {\r\n honorifics: response.honorifics,\r\n countries: response.countries,\r\n countrySubDivisions: response.countrySubDivisions,\r\n };\r\n this.setDefaultCountry(vm);\r\n vm.isDirty = false;\r\n return vm;\r\n }\r\n\r\n refreshSubmitDetails(submitDetails: ISubmitBasketViewModel): IRootViewModel {\r\n const vm = this._clone();\r\n vm.submitDetails.customerHonorific = submitDetails.customerHonorific;\r\n vm.submitDetails.customerFirstName = submitDetails.customerFirstName;\r\n vm.submitDetails.customerLastName = submitDetails.customerLastName;\r\n vm.submitDetails.customerEmailAddress = submitDetails.customerEmailAddress;\r\n vm.submitDetails.customerContactNumber = submitDetails.customerContactNumber;\r\n vm.submitDetails.customerCompanyName = submitDetails.customerCompanyName;\r\n vm.submitDetails.customerAddress = submitDetails.customerAddress;\r\n vm.submitDetails.customerSuburb = submitDetails.customerSuburb;\r\n vm.submitDetails.customerPostcode = submitDetails.customerPostcode;\r\n vm.submitDetails.customerCountry = submitDetails.customerCountry;\r\n vm.submitDetails.customerCountrySubdivision = submitDetails.customerCountrySubdivision;\r\n vm.submitDetails.customerComments = submitDetails.customerComments;\r\n vm.isDirty = true;\r\n return vm;\r\n }\r\n\r\n refreshSubmitResponse(response: Client.SubmitPublicNopimsBasketResponseDto): IRootViewModel {\r\n const vm = this._clone();\r\n if (response.statusMessages?.isSuccess) {\r\n vm.isDirty = false;\r\n }\r\n vm.statusMessages = response.statusMessages;\r\n return vm;\r\n }\r\n\r\n private setDefaultCountry(vm: RootViewModel) {\r\n vm.submitDetails.customerCountry = vm.referenceData.countries.find((c) => c.name === \"Australia\");\r\n }\r\n\r\n private _clone(): RootViewModel {\r\n const vm = clone(this);\r\n vm.submitDetails = clone(this.submitDetails);\r\n return vm;\r\n }\r\n}\r\n","// framework\r\nimport { useState, useEffect } from \"react\";\r\n// api\r\nimport { GetSubmitPublicNopimsBasketReferenceDataResponseCountrySubDivisionDto } from \"../../../api/Client\";\r\n// common\r\nimport * as Forms from \"../../../common/forms/BootstrapForms\";\r\nimport { IValidationModel } from \"../../../common/validation/ValidationModel\";\r\nimport ValidationMessageView from \"../../../common/validation/ValidationMessageView\";\r\nimport KendoComboBox from \"../../../common/kendo/KendoComboBox\";\r\nimport KendoDropDownList from \"../../../common/kendo/KendoDropDownList\";\r\n// models\r\nimport { IRootViewModel, ISubmitBasketViewModel } from \"./models/models\";\r\n\r\ninterface IProps {\r\n vm: IRootViewModel;\r\n setVm: (vm: IRootViewModel) => void;\r\n validation: IValidationModel;\r\n onCancel: () => void;\r\n onSubmit: () => void;\r\n}\r\n\r\nexport default function SubmitViewDetails(props: IProps): React.JSX.Element {\r\n const { vm, setVm, validation, onCancel, onSubmit } = props;\r\n\r\n const [state, setState] = useState(vm.submitDetails);\r\n const honorifics = vm.referenceData.honorifics;\r\n const countries = vm.referenceData.countries;\r\n const subdivisions = vm.referenceData.countrySubDivisions;\r\n\r\n useEffect(() => {\r\n setState(vm.submitDetails);\r\n }, [vm.submitDetails]);\r\n\r\n const [filteredCountrySubDivisions, setFilteredCountrySubDivisions] = useState([]);\r\n useEffect(() => {\r\n setFilteredCountrySubDivisions(state.customerCountry ? subdivisions.filter((s) => s.countryId === state.customerCountry!.id) : []);\r\n }, [subdivisions, state.customerCountry]);\r\n\r\n function updateViewModel() {\r\n setVm(vm.refreshSubmitDetails({ ...state }));\r\n }\r\n\r\n function updateStateAndViewModel(state: ISubmitBasketViewModel) {\r\n setState(state);\r\n setVm(vm.refreshSubmitDetails({ ...state }));\r\n }\r\n\r\n return (\r\n <>\r\n
\r\n
\r\n

Contact Details

\r\n \r\n \r\n \r\n Title\r\n updateStateAndViewModel({ ...state, customerHonorific: value })}\r\n onBlur={updateViewModel}\r\n />\r\n \r\n \r\n setState({ ...state, customerFirstName: value })}\r\n onBlur={updateViewModel}\r\n />\r\n \r\n \r\n \r\n setState({ ...state, customerLastName: value })}\r\n onBlur={updateViewModel}\r\n />\r\n \r\n \r\n \r\n setState({ ...state, customerCompanyName: value })}\r\n onBlur={updateViewModel}\r\n />\r\n \r\n \r\n setState({ ...state, customerContactNumber: value })}\r\n onBlur={updateViewModel}\r\n />\r\n \r\n \r\n \r\n setState({ ...state, customerEmailAddress: value })}\r\n onBlur={updateViewModel}\r\n />\r\n \r\n \r\n \r\n setState({ ...state, customerAddress: value })}\r\n onBlur={updateViewModel}\r\n />\r\n \r\n \r\n \r\n setState({ ...state, customerSuburb: value })}\r\n onBlur={updateViewModel}\r\n />\r\n \r\n \r\n \r\n setState({ ...state, customerPostcode: value })}\r\n onBlur={updateViewModel}\r\n />\r\n \r\n \r\n \r\n State/Territory\r\n updateStateAndViewModel({ ...state, customerCountrySubdivision: value })}\r\n onBlur={updateViewModel}\r\n />\r\n \r\n \r\n \r\n Country\r\n updateStateAndViewModel({ ...state, customerCountry: value, customerCountrySubdivision: undefined })}\r\n onBlur={updateViewModel}\r\n valid={validation.applyValidity(\"CreateSubmitDetails.CustomerCountry\")}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n setState({ ...state, customerComments: value })}\r\n onBlur={updateViewModel}\r\n rows={5}\r\n />\r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n );\r\n}\r\n","// framework\r\nimport { useState, useEffect } from \"react\";\r\nimport TaskLayout from \"../../../common/shell/TaskLayout\";\r\n// redux\r\nimport * as SubmitActions from \"./submitActions\";\r\nimport { useNopimsBasket } from \"../redux/reducers\";\r\n// common\r\nimport * as Forms from \"../../../common/forms/BootstrapForms\";\r\nimport * as toastHelper from \"../../../common/toastHelper\";\r\nimport { ValidationVisibilityEnum } from \"../../../common/validation/ValidationModel\";\r\nimport { StatusMessagesDto } from \"../../../api/Client\";\r\n// models\r\nimport { IRootViewModel, RootViewModel } from \"./models/models\";\r\nimport validator from \"./models/validator\";\r\nimport SubmitViewDetails from \"./SubmitViewDetails\";\r\n\r\ninterface IProps {\r\n onSubmitComplete: (statusMessages: StatusMessagesDto) => void;\r\n onCancel: () => void;\r\n}\r\n\r\nexport default function SubmitView(props: IProps): React.JSX.Element {\r\n const nopimsBasketModel = useNopimsBasket();\r\n const [vm, setVm] = useState(new RootViewModel(nopimsBasketModel.userToken!));\r\n\r\n // initial load\r\n useEffect(() => {\r\n SubmitActions.initialise(vm, setVm);\r\n }, []); // eslint-disable-line react-hooks/exhaustive-deps\r\n\r\n // On successful save close screen\r\n useEffect(() => {\r\n if (vm.statusMessages?.isSuccess) {\r\n props.onSubmitComplete(vm.statusMessages!);\r\n }\r\n }, [vm.statusMessages]); // eslint-disable-line react-hooks/exhaustive-deps\r\n\r\n const [validationVisibility, setValidationVisibility] = useState(ValidationVisibilityEnum.Messages);\r\n const validation = validator(vm, validationVisibility);\r\n\r\n function onSubmit() {\r\n if (!validation.isValid()) {\r\n setValidationVisibility(ValidationVisibilityEnum.MessagesAndAdorners);\r\n toastHelper.showValidationErrorNotification();\r\n return;\r\n }\r\n setValidationVisibility(ValidationVisibilityEnum.None);\r\n SubmitActions.submitBasketCommand(vm, setVm);\r\n }\r\n\r\n return (\r\n \r\n \r\n \r\n You are requesting copies of {nopimsBasketModel.items.length.toString()} documents.\r\n \r\n \r\n \r\n \r\n );\r\n}\r\n","import { logError } from \"../../../common/LogHelper\";\r\nimport { createBasketClient } from \"../../../api/clientFactory\";\r\nimport { simpleCall } from \"../../../api/callHelper\";\r\nimport * as Client from \"../../../api/Client\";\r\nimport { IRootViewModel } from \"./models/models\";\r\n\r\nexport async function initialise(viewModel: IRootViewModel, setViewModel: (viewModel: IRootViewModel) => void): Promise {\r\n let vm = viewModel;\r\n try {\r\n setViewModel((vm = vm.setBusy(true)));\r\n const client = createBasketClient();\r\n const response = await simpleCall(() => client.getSubmitPublicNopimsBasketReferenceData(new Client.GetSubmitPublicNopimsBasketReferenceDataRequestDto()));\r\n setViewModel((vm = vm.refreshReferenceData(response)));\r\n } catch (e) {\r\n logError(e);\r\n } finally {\r\n setViewModel((vm = vm.setBusy(false)));\r\n }\r\n}\r\n\r\nexport async function submitBasketCommand(viewModel: IRootViewModel, setViewModel: (viewModel: IRootViewModel) => void): Promise {\r\n let vm = viewModel;\r\n try {\r\n setViewModel((vm = vm.setBusy(true)));\r\n const client = createBasketClient();\r\n const request = new Client.SubmitPublicNopimsBasketRequestDto({\r\n userToken: vm.userToken,\r\n honorificId: vm.submitDetails.customerHonorific?.id,\r\n firstName: vm.submitDetails.customerFirstName!,\r\n lastName: vm.submitDetails.customerLastName!,\r\n contactNumber: vm.submitDetails.customerContactNumber!,\r\n email: vm.submitDetails.customerEmailAddress!,\r\n companyName: vm.submitDetails.customerCompanyName,\r\n address: vm.submitDetails.customerAddress!,\r\n suburb: vm.submitDetails.customerSuburb!,\r\n postcode: vm.submitDetails.customerPostcode,\r\n countrySubdivisionId: vm.submitDetails.customerCountrySubdivision?.id,\r\n countryId: vm.submitDetails.customerCountry!.id,\r\n comments: vm.submitDetails.customerComments!,\r\n });\r\n const response = await simpleCall(() => client.submitPublicNopimsBasket(request));\r\n setViewModel((vm = vm.refreshSubmitResponse(response)));\r\n } catch (e) {\r\n logError(e);\r\n } finally {\r\n setViewModel((vm = vm.setBusy(false)));\r\n }\r\n}\r\n","// framework\r\nimport * as Validation from \"../../../../common/validation/ValidationModel\";\r\n// models\r\nimport * as Models from \"./models\";\r\n\r\nexport default function validate(vm: Models.IRootViewModel, visibility: Validation.ValidationVisibilityEnum): Validation.IValidationModel {\r\n const v = new Validation.ValidationModel(visibility);\r\n if (!vm.submitDetails.customerFirstName) {\r\n v.addError(\"CreateSubmitDetails.CustomerFirstName\", \"First Name is required.\");\r\n }\r\n\r\n if (!vm.submitDetails.customerLastName) {\r\n v.addError(\"CreateSubmitDetails.CustomerLastName\", \"Last Name is required.\");\r\n }\r\n\r\n if (!vm.submitDetails.customerContactNumber) {\r\n v.addError(\"CreateSubmitDetails.CustomerContactNumber\", \"Contact Number is required.\");\r\n }\r\n\r\n if (!vm.submitDetails.customerEmailAddress) {\r\n v.addError(\"CreateSubmitDetails.CustomerEmailAddress\", \"Email is required.\");\r\n } else if (!Validation.isValidEmail(vm.submitDetails.customerEmailAddress!)) {\r\n v.addError(\"CreateSubmitDetails.CustomerEmailAddress\", \"Email is not valid.\");\r\n }\r\n\r\n if (!vm.submitDetails.customerAddress) {\r\n v.addError(\"CreateSubmitDetails.CustomerAddress\", \"Street Address is required.\");\r\n }\r\n\r\n if (!vm.submitDetails.customerSuburb) {\r\n v.addError(\"CreateSubmitDetails.CustomerSuburb\", \"Town/Suburb is required.\");\r\n }\r\n\r\n if (!vm.submitDetails.customerCountry) {\r\n v.addError(\"CreateSubmitDetails.CustomerCountry\", \"Country is required.\");\r\n }\r\n\r\n if (!vm.submitDetails.customerComments) {\r\n v.addError(\"CreateSubmitDetails.CustomerComments\", \"Comments are required.\");\r\n }\r\n\r\n return v;\r\n}\r\n","// framework\r\nimport NopimsPageLayout from \"../../shell/NopimsPageLayout\";\r\nimport { useDispatch } from \"react-redux\";\r\nimport * as Actions from \"../redux/actions\";\r\nimport { useEffect, useState } from \"react\";\r\nimport { StatusMessagesDto } from \"../../../api/Client\";\r\nimport StatusMessagesAlertsView from \"../../../common/alerts/StatusMessagesAlertsView\";\r\n// views\r\nimport BasketView from \"./BasketView\";\r\nimport SubmitView from \"../submit/SubmitView\";\r\nimport { useNopimsBasket } from \"../redux/reducers\";\r\n\r\nexport default function Controller(): React.JSX.Element {\r\n const nopimsBasketModel = useNopimsBasket();\r\n const dispatch = useDispatch();\r\n\r\n const [showSubmit, setShowSubmit] = useState(false);\r\n const [statusMessages, setStatusMessages] = useState();\r\n\r\n useEffect(() => {\r\n if (nopimsBasketModel.items.length > 0) {\r\n setStatusMessages(undefined);\r\n }\r\n }, [nopimsBasketModel]); // eslint-disable-line react-hooks/exhaustive-deps\r\n\r\n function onShowSubmitBasket(): void {\r\n setStatusMessages(undefined);\r\n setShowSubmit(true);\r\n }\r\n function onCancelSubmitBasket(): void {\r\n setShowSubmit(false);\r\n }\r\n function onSubmitComplete(statusMessages: StatusMessagesDto): void {\r\n setShowSubmit(false);\r\n setStatusMessages(statusMessages);\r\n dispatch(Actions.initialise());\r\n }\r\n\r\n return (\r\n \r\n {statusMessages && }\r\n {showSubmit ? : }\r\n \r\n );\r\n}\r\n","import { IRouteItem, RouteBuilder } from \"../infrastructure/routeItem\";\r\nimport * as RouteHelpers from \"./routeHelper\";\r\n\r\nimport HomeController from \"./home/Controller\";\r\nimport WellsController from \"./wells/Controller\";\r\nimport SurveysController from \"./surveys/Controller\";\r\nimport ReprocessingController from \"./reprocessing/Controller\";\r\nimport ReleasedDocumentsController from \"./releasedDocuments/Controller\";\r\nimport CoreLibraryController from \"./coreLibrary/coreLibrarySearch/Controller\";\r\nimport GisMapController from \"./gisMap/Controller\";\r\nimport FeedbackController from \"./feedback/Controller\";\r\nimport CoreCuttingsRequestController from \"./coreLibrary/coreCuttingsRequest/Controller\";\r\nimport BasketController from \"./basket/details/Controller\";\r\n\r\nconst routeBuilder: RouteBuilder = () => {\r\n let routes = new Array();\r\n routes.push({ path: RouteHelpers.home(), exact: true, element: });\r\n routes.push({ path: RouteHelpers.wells(), exact: true, element: });\r\n routes.push({ path: RouteHelpers.surveys(), exact: true, element: });\r\n routes.push({ path: RouteHelpers.reprocessing(), exact: true, element: });\r\n routes.push({ path: RouteHelpers.releasedDocuments(), exact: true, element: });\r\n routes.push({ path: RouteHelpers.coreLibrary(), exact: true, element: });\r\n routes.push({ path: RouteHelpers.gisMap(), exact: true, element: });\r\n routes.push({ path: RouteHelpers.formsFeedback(), exact: true, element: });\r\n routes.push({ path: RouteHelpers.formsCoreCuttingsRequest(), exact: true, element: });\r\n routes.push({ path: RouteHelpers.basket(), exact: true, element: });\r\n return routes;\r\n};\r\n\r\nexport default routeBuilder;\r\n","// framework\r\nimport { Route, Switch } from \"react-router-dom\";\r\n// common\r\nimport * as ShellHelper from \"./common/shell/shellHelper\";\r\n// layout\r\nimport Layout from \"./shell/components/Layout\";\r\n// footer pages\r\nimport Disclaimer from \"./shell/components/footer/Disclaimer\";\r\nimport Accessibility from \"./shell/components/footer/Accessibility\";\r\n// error pages\r\nimport TestErrorPage from \"./shell/components/TestErrorPage\";\r\nimport NotFound from \"./shell/components/error/NotFoundPage\";\r\nimport Conflict from \"./shell/components/error/ConflictPage\";\r\nimport Unauthorised from \"./shell/components/error/UnauthorisedPage\";\r\nimport InternalServerError from \"./shell/components/error/InternalServerErrorPage\";\r\nimport ServiceUnavailable from \"./shell/components/error/ServiceUnavailablePage\";\r\n// user pages\r\nimport HomePage from \"./home/components/HomePage\";\r\nimport TitleSearchController from \"./opggs/title/titleSearch/components/TitleSearchController\";\r\nimport TitleDetailsController from \"./opggs/title/titleDetails/components/TitleDetailsController\";\r\nimport ApplicationTrackingController from \"./opggs/application/opggsApplicationTracking/components/OpggsApplicationTrackingController\";\r\nimport OpggsApplicationTrackingDetailsController from \"./opggs/application/opggsApplicationTrackingDetails/components/OpggsApplicationTrackingDetailsController\";\r\nimport LicenceSearchController from \"./oei/licence/search/components/LicenceSearchController\";\r\nimport LicenceDetailsController from \"./oei/licence/details/components/LicenceDetailsController\";\r\nimport MapController from \"./map/components/MapController\";\r\nimport OpenTitleController from \"./open/title/components/OpenTitleController\";\r\nimport OpenLicenceController from \"./open/licence/components/OpenLicenceController\";\r\nimport OeiApplicationTrackingController from \"./oei/application/oeiApplicationTracking/components/OeiApplicationTrackingController\";\r\nimport OeiApplicationTrackingDetailsController from \"./oei/application/oeiApplicationTrackingDetails/components/OeiApplicationTrackingDetailsController\";\r\nimport StorageFormationsListController from \"./opggs/storageFormation/storageFormationsList/components/StorageFormationsListController\";\r\nimport { buildRoutes } from \"./infrastructure/routeBuilder\";\r\n\r\nfunction App() {\r\n const showTestErrorPage = process.env.REACT_APP_SHOW_TEST_ERROR_PAGE === \"true\";\r\n\r\n const featureSwitches = ShellHelper.useFeatureSwitch();\r\n const routes = buildRoutes(featureSwitches);\r\n\r\n // TODO convert everything in here to the routeBuilder approach\r\n\r\n return (\r\n \r\n \r\n {/* register routes here - this renders the content into the layout page based on the supplied route, this will process in order */}\r\n } />\r\n } />\r\n } />\r\n } />\r\n } />\r\n } />\r\n } />\r\n } />\r\n } />\r\n } />\r\n\r\n {routes}\r\n\r\n } />\r\n } />\r\n } />\r\n {/* footer pages */}\r\n } />\r\n } />\r\n {/* error pages */}\r\n {showTestErrorPage && } />}\r\n } />\r\n } />\r\n } />\r\n } />\r\n } />\r\n {/* implicit not-found page */}\r\n } />\r\n \r\n \r\n );\r\n}\r\n\r\nexport default App;\r\n","// framework\r\nimport { Route } from \"react-router-dom\";\r\n// routes\r\nimport nopimsRouteBuilder from \"../nopims/routeBuilder\";\r\nimport { FeatureSwitch } from \"../common/shell/shellHelper\";\r\n\r\nexport function buildRoutes(featureSwitch: FeatureSwitch): Array {\r\n let routes = [...nopimsRouteBuilder(featureSwitch)];\r\n routes = routes.sort((a, b) => sort(a.isDefault, b.isDefault));\r\n\r\n return routes.map((r) => );\r\n}\r\n\r\nfunction sort(a: boolean | undefined | null, b: boolean | undefined | null): number {\r\n const a1 = a ?? false;\r\n const b1 = b ?? false;\r\n\r\n if (a1 && !b1) return 1;\r\n if (!a1 && b1) return -1;\r\n return 0;\r\n}\r\n","// framework\r\nimport GA4 from \"react-ga4\";\r\n// common\r\nimport * as LogHelper from \"../common/LogHelper\";\r\n\r\nexport function initialise(measurementId: string | undefined) {\r\n if (!measurementId) {\r\n logError(\"initialise\", \"Measurement ID not provided.\");\r\n return;\r\n }\r\n\r\n try {\r\n GA4.initialize(measurementId);\r\n } catch (ex) {\r\n logError(\"initialise\", ex);\r\n }\r\n}\r\n\r\nexport function setUserId(uniqueId: string) {\r\n try {\r\n GA4.set({ user_id: uniqueId });\r\n } catch (ex) {\r\n logError(\"setUserId\", ex);\r\n }\r\n}\r\n\r\nexport function clearUserId() {\r\n try {\r\n GA4.set({ user_id: undefined });\r\n } catch (ex) {\r\n logError(\"clearUserId\", ex);\r\n }\r\n}\r\n\r\nfunction logError(method: string, error: any): void {\r\n LogHelper.logError(`GA4/${method}: ${error}`);\r\n}\r\n","// react\r\nimport { StrictMode } from \"react\";\r\nimport { createRoot } from \"react-dom/client\";\r\nimport { BrowserRouter } from \"react-router-dom\";\r\n\r\n// redux\r\nimport store from \"./redux/configureStore\";\r\nimport { Provider as ReduxProvider } from \"react-redux\";\r\n\r\n// bootstrap/kendo\r\nimport \"./index.scss\";\r\n\r\n// app insights\r\nimport TelemetryProvider from \"./infrastructure/telemetry-provider\";\r\n\r\n// localisation/internationalisation\r\nimport KendoIntlProvider from \"./infrastructure/KendoIntlProvider\";\r\n\r\n// local\r\nimport \"./index.css\";\r\nimport App from \"./App\";\r\n\r\n// google analytics\r\nimport * as AnalyticsHelper from \"./infrastructure/AnalyticsHelper\";\r\nAnalyticsHelper.initialise(process.env.REACT_APP_GOOGLEANALYTICS_MEASUREMENTID);\r\n\r\nconst root = createRoot(document.getElementById(\"root\")!);\r\n\r\nroot.render(\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n);\r\n"],"names":["reactIs","require","REACT_STATICS","childContextTypes","contextType","contextTypes","defaultProps","displayName","getDefaultProps","getDerivedStateFromError","getDerivedStateFromProps","mixins","propTypes","type","KNOWN_STATICS","name","length","prototype","caller","callee","arguments","arity","MEMO_STATICS","compare","TYPE_STATICS","getStatics","component","isMemo","ForwardRef","render","Memo","defineProperty","Object","getOwnPropertyNames","getOwnPropertySymbols","getOwnPropertyDescriptor","getPrototypeOf","objectPrototype","module","exports","hoistNonReactStatics","targetComponent","sourceComponent","blacklist","inheritedComponent","keys","concat","targetStatics","sourceStatics","i","key","descriptor","e","condition","format","a","b","c","d","f","error","undefined","Error","args","argIndex","replace","framesToPop","Array","isArray","arr","toString","call","serializer","replacer","cycleReplacer","stack","value","slice","indexOf","join","thisPos","this","splice","push","Infinity","obj","spaces","JSON","stringify","getSerialize","DataView","getNative","hashClear","hashDelete","hashGet","hashHas","hashSet","Hash","entries","index","clear","entry","set","get","has","listCacheClear","listCacheDelete","listCacheGet","listCacheHas","listCacheSet","ListCache","Map","mapCacheClear","mapCacheDelete","mapCacheGet","mapCacheHas","mapCacheSet","MapCache","Promise","Set","stackClear","stackDelete","stackGet","stackHas","stackSet","Stack","data","__data__","size","Symbol","Uint8Array","WeakMap","array","iteratee","predicate","resIndex","result","baseTimes","isArguments","isBuffer","isIndex","isTypedArray","hasOwnProperty","inherited","isArr","isArg","isBuff","isType","skipIndexes","String","values","offset","baseAssignValue","eq","object","objValue","copyObject","source","keysIn","arrayEach","assignValue","baseAssign","baseAssignIn","cloneBuffer","copyArray","copySymbols","copySymbolsIn","getAllKeys","getAllKeysIn","getTag","initCloneArray","initCloneByTag","initCloneObject","isMap","isObject","isSet","argsTag","funcTag","objectTag","cloneableTags","baseClone","bitmask","customizer","isDeep","isFlat","isFull","tag","isFunc","stacked","forEach","subValue","add","props","objectCreate","create","baseCreate","proto","arrayPush","keysFunc","symbolsFunc","getRawTag","objectToString","symToStringTag","toStringTag","baseGetTag","isObjectLike","isFunction","isMasked","toSource","reIsHostCtor","funcProto","Function","objectProto","funcToString","reIsNative","RegExp","test","isLength","typedArrayTags","isPrototype","nativeKeys","nativeKeysIn","isProto","n","trimmedEndIndex","reTrimStart","string","func","arrayBuffer","constructor","byteLength","root","freeExports","nodeType","freeModule","Buffer","allocUnsafe","buffer","copy","cloneArrayBuffer","dataView","byteOffset","reFlags","regexp","exec","lastIndex","symbolProto","symbolValueOf","valueOf","symbol","typedArray","isNew","newValue","getSymbols","getSymbolsIn","coreJsData","freeGlobal","global","baseGetAllKeys","isKeyable","map","baseIsNative","getValue","getPrototype","overArg","nativeObjectToString","isOwn","unmasked","arrayFilter","stubArray","propertyIsEnumerable","nativeGetSymbols","mapTag","promiseTag","setTag","weakMapTag","dataViewTag","dataViewCtorString","mapCtorString","promiseCtorString","setCtorString","weakMapCtorString","ArrayBuffer","resolve","Ctor","ctorString","nativeCreate","input","cloneDataView","cloneRegExp","cloneSymbol","cloneTypedArray","reIsUint","maskSrcKey","uid","IE_PROTO","assocIndexOf","pop","getMapData","freeProcess","process","nodeUtil","types","binding","transform","arg","freeSelf","self","pairs","LARGE_ARRAY_SIZE","reWhitespace","charAt","CLONE_DEEP_FLAG","now","toNumber","nativeMax","Math","max","nativeMin","min","wait","options","lastArgs","lastThis","maxWait","timerId","lastCallTime","lastInvokeTime","leading","maxing","trailing","TypeError","invokeFunc","time","thisArg","apply","shouldInvoke","timeSinceLastCall","timerExpired","trailingEdge","setTimeout","timeWaiting","remainingWait","debounced","isInvoking","leadingEdge","clearTimeout","cancel","flush","other","baseIsArguments","stubFalse","baseIsMap","baseUnary","nodeIsMap","baseIsSet","nodeIsSet","baseIsTypedArray","nodeIsTypedArray","arrayLikeKeys","baseKeys","isArrayLike","baseKeysIn","FUNC_ERROR_TEXT","HASH_UNDEFINED","PLACEHOLDER","WRAP_CURRY_RIGHT_FLAG","WRAP_PARTIAL_FLAG","WRAP_PARTIAL_RIGHT_FLAG","WRAP_ARY_FLAG","WRAP_REARG_FLAG","INFINITY","MAX_SAFE_INTEGER","NAN","MAX_ARRAY_LENGTH","wrapFlags","arrayTag","boolTag","dateTag","errorTag","genTag","numberTag","regexpTag","stringTag","symbolTag","arrayBufferTag","float32Tag","float64Tag","int8Tag","int16Tag","int32Tag","uint8Tag","uint8ClampedTag","uint16Tag","uint32Tag","reEmptyStringLeading","reEmptyStringMiddle","reEmptyStringTrailing","reEscapedHtml","reUnescapedHtml","reHasEscapedHtml","reHasUnescapedHtml","reEscape","reEvaluate","reInterpolate","reIsDeepProp","reIsPlainProp","rePropName","reRegExpChar","reHasRegExpChar","reWrapComment","reWrapDetails","reSplitDetails","reAsciiWord","reForbiddenIdentifierChars","reEscapeChar","reEsTemplate","reIsBadHex","reIsBinary","reIsOctal","reLatin","reNoMatch","reUnescapedString","rsAstralRange","rsComboRange","rsComboMarksRange","rsDingbatRange","rsLowerRange","rsUpperRange","rsVarRange","rsBreakRange","rsMathOpRange","rsApos","rsAstral","rsBreak","rsCombo","rsDigits","rsDingbat","rsLower","rsMisc","rsFitz","rsNonAstral","rsRegional","rsSurrPair","rsUpper","rsZWJ","rsMiscLower","rsMiscUpper","rsOptContrLower","rsOptContrUpper","reOptMod","rsOptVar","rsSeq","rsEmoji","rsSymbol","reApos","reComboMark","reUnicode","reUnicodeWord","reHasUnicode","reHasUnicodeWord","contextProps","templateCounter","stringEscapes","freeParseFloat","parseFloat","freeParseInt","parseInt","moduleExports","nodeIsArrayBuffer","isArrayBuffer","nodeIsDate","isDate","nodeIsRegExp","isRegExp","arrayAggregator","setter","accumulator","arrayEachRight","arrayEvery","arrayIncludes","baseIndexOf","arrayIncludesWith","comparator","arrayMap","arrayReduce","initAccum","arrayReduceRight","arraySome","asciiSize","baseProperty","baseFindKey","collection","eachFunc","baseFindIndex","fromIndex","fromRight","strictIndexOf","baseIsNaN","baseIndexOfWith","baseMean","baseSum","basePropertyOf","baseReduce","current","baseTrim","baseValues","cacheHas","cache","charsStartIndex","strSymbols","chrSymbols","charsEndIndex","deburrLetter","escapeHtmlChar","escapeStringChar","chr","hasUnicode","mapToArray","replaceHolders","placeholder","setToArray","setToPairs","stringSize","unicodeSize","stringToArray","match","unicodeToArray","split","asciiToArray","unescapeHtmlChar","_","runInContext","context","defaults","pick","Date","arrayProto","idCounter","objectCtorString","oldDash","spreadableSymbol","isConcatSpreadable","symIterator","iterator","ctxClearTimeout","ctxNow","ctxSetTimeout","nativeCeil","ceil","nativeFloor","floor","nativeIsBuffer","nativeIsFinite","isFinite","nativeJoin","nativeNow","nativeParseInt","nativeRandom","random","nativeReverse","reverse","metaMap","realNames","symbolToString","lodash","LazyWrapper","LodashWrapper","wrapperClone","baseLodash","chainAll","__wrapped__","__actions__","__chain__","__index__","__values__","__dir__","__filtered__","__iteratees__","__takeCount__","__views__","SetCache","arraySample","baseRandom","arraySampleSize","shuffleSelf","baseClamp","arrayShuffle","assignMergeValue","baseAggregator","baseEach","baseAt","paths","skip","number","lower","upper","baseConformsTo","baseDelay","baseDifference","includes","isCommon","valuesLength","outer","computed","valuesIndex","templateSettings","createBaseEach","baseForOwn","baseEachRight","baseForOwnRight","baseEvery","baseExtremum","isSymbol","baseFilter","baseFlatten","depth","isStrict","isFlattenable","baseFor","createBaseFor","baseForRight","baseFunctions","baseGet","path","castPath","toKey","baseGt","baseHas","baseHasIn","baseIntersection","arrays","othLength","othIndex","caches","maxLength","seen","baseInvoke","parent","last","baseIsEqual","equalFunc","objIsArr","othIsArr","objTag","othTag","objIsObj","othIsObj","isSameTag","equalArrays","message","convert","isPartial","equalByTag","objIsWrapped","othIsWrapped","objUnwrapped","othUnwrapped","objProps","objLength","othProps","objStacked","othStacked","skipCtor","othValue","compared","objCtor","othCtor","equalObjects","baseIsEqualDeep","baseIsMatch","matchData","noCustomizer","srcValue","COMPARE_PARTIAL_FLAG","baseIteratee","identity","baseMatchesProperty","baseMatches","property","baseLt","baseMap","getMatchData","matchesStrictComparable","isKey","isStrictComparable","hasIn","baseMerge","srcIndex","mergeFunc","safeGet","isTyped","isArrayLikeObject","isPlainObject","toPlainObject","baseMergeDeep","baseNth","baseOrderBy","iteratees","orders","getIteratee","criteria","comparer","sort","baseSortBy","objCriteria","othCriteria","ordersLength","compareAscending","compareMultiple","basePickBy","baseSet","basePullAll","basePullAt","indexes","previous","baseUnset","baseRepeat","baseRest","start","setToString","overRest","baseSample","baseSampleSize","nested","baseSetData","baseSetToString","constant","baseShuffle","baseSlice","end","baseSome","baseSortedIndex","retHighest","low","high","mid","baseSortedIndexBy","valIsNaN","valIsNull","valIsSymbol","valIsUndefined","othIsDefined","othIsNull","othIsReflexive","othIsSymbol","setLow","baseSortedUniq","baseToNumber","baseToString","baseUniq","createSet","seenIndex","baseUpdate","updater","baseWhile","isDrop","baseWrapperValue","actions","action","baseXor","baseZipObject","assignFunc","valsLength","castArrayLikeObject","castFunction","stringToPath","castRest","castSlice","id","valIsDefined","valIsReflexive","composeArgs","partials","holders","isCurried","argsIndex","argsLength","holdersLength","leftIndex","leftLength","rangeLength","isUncurried","composeArgsRight","holdersIndex","rightIndex","rightLength","createAggregator","initializer","createAssigner","assigner","sources","guard","isIterateeCall","iterable","createCaseFirst","methodName","createCompounder","callback","words","deburr","createCtor","thisBinding","createFind","findIndexFunc","createFlow","flatRest","funcs","prereq","thru","wrapper","getFuncName","funcName","getData","isLaziable","plant","createHybrid","partialsRight","holdersRight","argPos","ary","isAry","isBind","isBindKey","isFlip","getHolder","holdersCount","countHolders","newHolders","createRecurry","fn","arrLength","oldArray","reorder","createInverter","toIteratee","baseInverter","createMathOperation","operator","defaultValue","createOver","arrayFunc","createPadding","chars","charsLength","createRange","step","toFinite","baseRange","createRelationalOperation","wrapFunc","isCurry","newData","setData","setWrapToString","createRound","precision","toInteger","pair","noop","createToPairs","baseToPairs","createWrap","srcBitmask","newBitmask","isCombo","mergeData","createCurry","createPartial","createBind","customDefaultsAssignIn","customDefaultsMerge","customOmitClone","arrStacked","arrValue","flatten","otherFunc","hasPath","hasFunc","isMaskable","otherArgs","shortOut","reference","details","insertWrapDetails","updateWrapDetails","getWrapDetails","count","lastCalled","stamp","remaining","rand","memoize","memoizeCapped","charCodeAt","quote","subString","clone","difference","differenceBy","differenceWith","findIndex","findLastIndex","head","intersection","mapped","intersectionBy","intersectionWith","pull","pullAll","pullAt","union","unionBy","unionWith","unzip","group","unzipWith","without","xor","xorBy","xorWith","zip","zipWith","chain","interceptor","wrapperAt","countBy","find","findLast","forEachRight","groupBy","invokeMap","keyBy","partition","sortBy","before","bind","bindKey","WRAP_BIND_FLAG","debounce","defer","delay","resolver","memoized","Cache","negate","overArgs","transforms","funcsLength","partial","partialRight","rearg","gt","gte","isError","isInteger","isNumber","isString","lt","lte","toArray","next","done","iteratorToArray","remainder","toLength","isBinary","assign","assignIn","assignInWith","assignWith","at","propsIndex","propsLength","defaultsDeep","mergeWith","invert","invertBy","invoke","merge","omit","basePick","pickBy","prop","toPairs","toPairsIn","camelCase","word","toLowerCase","capitalize","upperFirst","kebabCase","lowerCase","lowerFirst","snakeCase","startCase","upperCase","toUpperCase","pattern","hasUnicodeWord","unicodeWords","asciiWords","attempt","bindAll","methodNames","flow","flowRight","method","methodOf","mixin","over","overEvery","overSome","basePropertyDeep","range","rangeRight","augend","addend","divide","dividend","divisor","multiply","multiplier","multiplicand","round","subtract","minuend","subtrahend","after","castArray","chunk","compact","cond","conforms","baseConforms","properties","curry","curryRight","drop","dropRight","dropRightWhile","dropWhile","fill","baseFill","filter","flatMap","flatMapDeep","flatMapDepth","flattenDeep","flattenDepth","flip","fromPairs","functions","functionsIn","initial","mapKeys","mapValues","matches","matchesProperty","nthArg","omitBy","once","orderBy","propertyOf","pullAllBy","pullAllWith","reject","remove","rest","sampleSize","setWith","shuffle","sortedUniq","sortedUniqBy","separator","limit","spread","tail","take","takeRight","takeRightWhile","takeWhile","tap","throttle","toPath","isArrLike","unary","uniq","uniqBy","uniqWith","unset","update","updateWith","valuesIn","wrap","zipObject","zipObjectDeep","entriesIn","extend","extendWith","clamp","cloneDeep","cloneDeepWith","cloneWith","conformsTo","defaultTo","endsWith","target","position","escape","escapeRegExp","every","findKey","findLastKey","forIn","forInRight","forOwn","forOwnRight","inRange","baseInRange","isBoolean","isElement","isEmpty","isEqual","isEqualWith","isMatch","isMatchWith","isNaN","isNative","isNil","isNull","isSafeInteger","isUndefined","isWeakMap","isWeakSet","lastIndexOf","strictLastIndexOf","maxBy","mean","meanBy","minBy","stubObject","stubString","stubTrue","nth","noConflict","pad","strLength","padEnd","padStart","radix","floating","temp","reduce","reduceRight","repeat","sample","some","sortedIndex","sortedIndexBy","sortedIndexOf","sortedLastIndex","sortedLastIndexBy","sortedLastIndexOf","startsWith","sum","sumBy","template","settings","isEscaping","isEvaluating","imports","importsKeys","importsValues","interpolate","reDelimiters","evaluate","sourceURL","escapeValue","interpolateValue","esTemplateValue","evaluateValue","variable","times","toLower","toSafeInteger","toUpper","trim","trimEnd","trimStart","truncate","omission","search","substring","newEnd","unescape","uniqueId","prefix","each","eachRight","first","VERSION","isFilter","takeName","dropName","checkIteratee","isTaker","lodashFunc","retUnwrapped","isLazy","useLazy","isHybrid","isUnwrapped","onlyLazy","chainName","dir","isRight","view","getView","iterLength","takeCount","iterIndex","commit","wrapped","toJSON","define","isarray","pathToRegexp","parse","compile","str","tokensToFunction","tokensToRegExp","PATH_REGEXP","res","tokens","defaultDelimiter","delimiter","m","escaped","capture","modifier","asterisk","optional","prevText","escapeGroup","restrictBacktrack","substr","escapeString","encodeURIComponentPretty","encodeURI","flags","opts","encode","pretty","encodeURIComponent","token","segment","j","attachKeys","re","sensitive","strict","route","endsWithDelimiter","groups","regexpToRegexp","parts","arrayToRegexp","stringToRegexp","ReactPropTypesSecret","emptyFunction","emptyFunctionWithReset","resetWarningCache","shim","propName","componentName","location","propFullName","secret","err","getShim","isRequired","ReactPropTypes","bigint","bool","any","arrayOf","element","elementType","instanceOf","node","objectOf","oneOf","oneOfType","shape","exact","checkPropTypes","PropTypes","aa","ca","p","da","ea","fa","ha","ia","window","document","createElement","ja","ka","la","ma","v","g","acceptsBooleans","attributeName","attributeNamespace","mustUseProperty","propertyName","sanitizeURL","removeEmptyString","z","ra","sa","ta","pa","qa","oa","removeAttribute","setAttribute","setAttributeNS","xlinkHref","ua","__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED","va","for","wa","ya","za","Aa","Ba","Ca","Da","Ea","Fa","Ga","Ha","Ia","Ja","Ka","La","A","Ma","Na","Oa","prepareStackTrace","Reflect","construct","l","h","k","Pa","Qa","$$typeof","_context","_payload","_init","Ra","Sa","Ta","nodeName","Va","_valueTracker","configurable","enumerable","setValue","stopTracking","Ua","Wa","checked","Xa","activeElement","body","Ya","defaultChecked","_wrapperState","initialChecked","Za","initialValue","controlled","ab","bb","cb","db","ownerDocument","eb","fb","selected","defaultSelected","disabled","gb","dangerouslySetInnerHTML","children","hb","ib","jb","textContent","kb","lb","mb","nb","namespaceURI","innerHTML","firstChild","removeChild","appendChild","MSApp","execUnsafeLocalFunction","ob","lastChild","nodeValue","pb","animationIterationCount","aspectRatio","borderImageOutset","borderImageSlice","borderImageWidth","boxFlex","boxFlexGroup","boxOrdinalGroup","columnCount","columns","flex","flexGrow","flexPositive","flexShrink","flexNegative","flexOrder","gridArea","gridRow","gridRowEnd","gridRowSpan","gridRowStart","gridColumn","gridColumnEnd","gridColumnSpan","gridColumnStart","fontWeight","lineClamp","lineHeight","opacity","order","orphans","tabSize","widows","zIndex","zoom","fillOpacity","floodOpacity","stopOpacity","strokeDasharray","strokeDashoffset","strokeMiterlimit","strokeOpacity","strokeWidth","qb","rb","sb","style","setProperty","tb","menuitem","area","base","br","col","embed","hr","img","keygen","link","meta","param","track","wbr","ub","vb","is","wb","xb","srcElement","correspondingUseElement","parentNode","yb","zb","Ab","Bb","Cb","stateNode","Db","Eb","Fb","Gb","Hb","Ib","Jb","Kb","Lb","Mb","addEventListener","removeEventListener","Nb","onError","Ob","Pb","Qb","Rb","Sb","Tb","Vb","alternate","return","Wb","memoizedState","dehydrated","Xb","Zb","child","sibling","Yb","$b","ac","unstable_scheduleCallback","bc","unstable_cancelCallback","cc","unstable_shouldYield","dc","unstable_requestPaint","B","unstable_now","ec","unstable_getCurrentPriorityLevel","fc","unstable_ImmediatePriority","gc","unstable_UserBlockingPriority","hc","unstable_NormalPriority","ic","unstable_LowPriority","jc","unstable_IdlePriority","kc","lc","oc","clz32","pc","qc","log","LN2","rc","sc","tc","uc","pendingLanes","suspendedLanes","pingedLanes","entangledLanes","entanglements","vc","xc","yc","zc","Ac","eventTimes","Cc","C","Dc","Ec","Fc","Gc","Hc","Ic","Jc","Kc","Lc","Mc","Nc","Oc","Pc","Qc","Rc","Sc","delete","pointerId","Tc","nativeEvent","blockedOn","domEventName","eventSystemFlags","targetContainers","Vc","Wc","priority","isDehydrated","containerInfo","Xc","Yc","dispatchEvent","shift","Zc","$c","ad","bd","cd","ReactCurrentBatchConfig","dd","ed","transition","fd","gd","hd","Uc","stopPropagation","jd","kd","ld","md","nd","od","keyCode","charCode","pd","qd","rd","_reactName","_targetInst","currentTarget","isDefaultPrevented","defaultPrevented","returnValue","isPropagationStopped","preventDefault","cancelBubble","persist","isPersistent","wd","xd","yd","sd","eventPhase","bubbles","cancelable","timeStamp","isTrusted","td","ud","detail","vd","Ad","screenX","screenY","clientX","clientY","pageX","pageY","ctrlKey","shiftKey","altKey","metaKey","getModifierState","zd","button","buttons","relatedTarget","fromElement","toElement","movementX","movementY","Bd","Dd","dataTransfer","Fd","Hd","animationName","elapsedTime","pseudoElement","Id","clipboardData","Jd","Ld","Md","Esc","Spacebar","Left","Up","Right","Down","Del","Win","Menu","Apps","Scroll","MozPrintableKey","Nd","Od","Alt","Control","Meta","Shift","Pd","Qd","fromCharCode","code","locale","which","Rd","Td","width","height","pressure","tangentialPressure","tiltX","tiltY","twist","pointerType","isPrimary","Vd","touches","targetTouches","changedTouches","Xd","Yd","deltaX","wheelDeltaX","deltaY","wheelDeltaY","wheelDelta","deltaZ","deltaMode","Zd","$d","ae","be","documentMode","ce","de","ee","fe","ge","he","ie","le","color","date","datetime","email","month","password","tel","text","url","week","me","ne","oe","event","listeners","pe","qe","se","te","ue","ve","we","xe","ye","ze","oninput","Ae","detachEvent","Be","Ce","attachEvent","De","Ee","Fe","He","Ie","Je","Ke","nextSibling","Le","contains","compareDocumentPosition","Me","HTMLIFrameElement","contentWindow","href","Ne","contentEditable","Oe","focusedElem","selectionRange","documentElement","selectionStart","selectionEnd","defaultView","getSelection","rangeCount","anchorNode","anchorOffset","focusNode","focusOffset","setStart","removeAllRanges","addRange","setEnd","left","scrollLeft","top","scrollTop","focus","Pe","Qe","Re","Se","Te","Ue","Ve","We","animationend","animationiteration","animationstart","transitionend","Xe","Ye","Ze","animation","$e","af","bf","cf","df","ef","ff","gf","hf","lf","mf","nf","Ub","instance","listener","D","of","pf","qf","rf","sf","passive","t","J","x","u","w","F","tf","uf","parentWindow","vf","wf","na","xa","$a","ba","je","char","ke","unshift","xf","yf","zf","Af","Bf","Cf","Df","Ef","__html","Ff","Gf","Hf","Jf","queueMicrotask","then","catch","If","Kf","Lf","Mf","previousSibling","Nf","Of","Pf","Qf","Rf","Sf","Tf","Uf","E","G","Vf","H","Wf","Xf","Yf","__reactInternalMemoizedUnmaskedChildContext","__reactInternalMemoizedMaskedChildContext","Zf","$f","ag","bg","getChildContext","cg","__reactInternalMemoizedMergedChildContext","dg","eg","fg","gg","hg","jg","kg","lg","mg","ng","og","pg","qg","rg","sg","tg","ug","vg","wg","xg","yg","I","zg","Ag","Bg","deletions","Cg","pendingProps","overflow","treeContext","retryLane","Dg","mode","Eg","Fg","Gg","memoizedProps","Hg","Ig","Jg","Kg","Lg","ref","_owner","_stringRef","refs","Mg","Ng","Og","Pg","Qg","Rg","implementation","Sg","Tg","q","r","y","Ug","Vg","Wg","Xg","Yg","Zg","$g","ah","_currentValue","bh","childLanes","ch","dependencies","firstContext","lanes","dh","eh","memoizedValue","fh","gh","hh","interleaved","ih","jh","kh","updateQueue","baseState","firstBaseUpdate","lastBaseUpdate","shared","pending","effects","lh","mh","eventTime","lane","payload","nh","K","oh","ph","qh","rh","sh","th","uh","vh","wh","xh","yh","tagName","zh","Ah","Bh","L","Ch","revealOrder","Dh","Eh","_workInProgressVersionPrimary","Fh","ReactCurrentDispatcher","Gh","Hh","M","N","O","Ih","Jh","Kh","Lh","P","Mh","Nh","Oh","Ph","Qh","Rh","Sh","Th","baseQueue","queue","Uh","Vh","Wh","lastRenderedReducer","hasEagerState","eagerState","lastRenderedState","dispatch","Xh","Yh","Zh","$h","ai","getSnapshot","bi","ci","Q","di","lastEffect","stores","ei","fi","gi","hi","ii","destroy","deps","ji","ki","li","mi","ni","oi","pi","qi","ri","si","ti","ui","vi","wi","xi","yi","zi","Ai","R","Bi","readContext","useCallback","useContext","useEffect","useImperativeHandle","useInsertionEffect","useLayoutEffect","useMemo","useReducer","useRef","useState","useDebugValue","useDeferredValue","useTransition","useMutableSource","useSyncExternalStore","useId","unstable_isNewReconciler","identifierPrefix","Ci","Di","Ei","isMounted","_reactInternals","enqueueSetState","enqueueReplaceState","enqueueForceUpdate","Fi","shouldComponentUpdate","isPureReactComponent","Gi","state","Hi","componentWillReceiveProps","UNSAFE_componentWillReceiveProps","Ii","getSnapshotBeforeUpdate","UNSAFE_componentWillMount","componentWillMount","componentDidMount","Ji","digest","Ki","Li","console","Mi","Ni","Oi","Pi","Qi","componentDidCatch","Ri","componentStack","Si","pingCache","Ti","Ui","Vi","Wi","ReactCurrentOwner","Xi","Yi","Zi","$i","aj","bj","cj","dj","baseLanes","cachePool","transitions","ej","fj","gj","hj","ij","UNSAFE_componentWillUpdate","componentWillUpdate","componentDidUpdate","jj","kj","pendingContext","lj","zj","Aj","Bj","Cj","mj","nj","oj","fallback","pj","qj","sj","dataset","dgst","tj","uj","_reactRetry","rj","subtreeFlags","vj","wj","isBackwards","rendering","renderingStartTime","tailMode","xj","Dj","S","Ej","Fj","wasMultiple","multiple","suppressHydrationWarning","onClick","onclick","createElementNS","autoFocus","createTextNode","T","Gj","Hj","Ij","Jj","U","Kj","WeakSet","V","Lj","W","Mj","Nj","Pj","Qj","Rj","Sj","Tj","Uj","Vj","insertBefore","_reactRootContainer","Wj","X","Xj","Yj","Zj","onCommitFiberUnmount","componentWillUnmount","ak","bk","ck","dk","ek","isHidden","fk","gk","display","hk","ik","jk","kk","__reactInternalSnapshotBeforeUpdate","src","Vk","lk","mk","nk","ok","Y","Z","pk","qk","rk","sk","tk","uk","vk","wk","xk","yk","zk","Ak","Bk","Ck","Dk","callbackNode","expirationTimes","expiredLanes","wc","callbackPriority","ig","Ek","Fk","Gk","Hk","Ik","Jk","Kk","Lk","Mk","Nk","Ok","finishedWork","finishedLanes","Pk","timeoutHandle","Qk","Rk","Sk","Tk","Uk","mutableReadLanes","Bc","Oj","onCommitFiberRoot","mc","onRecoverableError","Wk","onPostCommitFiberRoot","Xk","Yk","$k","isReactComponent","pendingChildren","al","mutableSourceEagerHydrationData","bl","pendingSuspenseBoundaries","dl","el","fl","gl","hl","il","yj","Zk","kl","reportError","ll","_internalRoot","ml","nl","ol","pl","rl","ql","unmount","unstable_scheduleHydration","querySelectorAll","form","sl","usingClientEntryPoint","Events","tl","findFiberByHostInstance","bundleType","version","rendererPackageName","ul","rendererConfig","overrideHookState","overrideHookStateDeletePath","overrideHookStateRenamePath","overrideProps","overridePropsDeletePath","overridePropsRenamePath","setErrorHandler","setSuspenseHandler","scheduleUpdate","currentDispatcherRef","findHostInstanceByFiber","findHostInstancesForRefresh","scheduleRefresh","scheduleRoot","setRefreshHandler","getCurrentFiber","reconcilerVersion","__REACT_DEVTOOLS_GLOBAL_HOOK__","vl","isDisabled","supportsFiber","inject","createPortal","cl","createRoot","unstable_strictMode","findDOMNode","flushSync","hydrate","hydrateRoot","hydratedSources","_getVersion","_source","unmountComponentAtNode","unstable_batchedUpdates","unstable_renderSubtreeIntoContainer","checkDCE","s","titleCase","redactingEmail","_str","title","smallWords","toTitleCase","mightBeEmail","warn","redacted","redactEmail","GA4","_gtag","_interopRequireDefault","_format","_excluded","_excluded2","_excluded3","__esModule","_objectWithoutProperties","excluded","sourceKeys","_objectWithoutPropertiesLoose","sourceSymbolKeys","_typeof","_toConsumableArray","_arrayLikeToArray","_arrayWithoutHoles","iter","from","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","ownKeys","enumerableOnly","symbols","sym","_objectSpread","_defineProperty","getOwnPropertyDescriptors","defineProperties","_slicedToArray","_arrayWithHoles","_i","_s","_e","_x","_r","_arr","_n","_d","_iterableToArrayLimit","_nonIterableRest","o","minLen","len","arr2","_defineProperties","writable","_toPropertyKey","hint","prim","toPrimitive","Number","_toPrimitive","_this","Constructor","_classCallCheck","isInitialized","_testMode","_currentMeasurementId","_hasLoadedGA","_isQueuing","_queueGtag","_len","_key","GA_MEASUREMENT_ID","nonce","gtagUrl","script","async","dataLayer","gtag","gaOptions","mapFields","cookieUpdate","cookieExpires","cookieDomain","cookieFlags","userId","clientId","anonymizeIp","contentGroup1","contentGroup2","contentGroup3","contentGroup4","contentGroup5","allowAdFeatures","allowAdPersonalizationSignals","nonInteraction","page","hitCallback","prev","_ref","_ref2","initConfigs","trackingId","gtagOptions","_options$testMode","testMode","_loadGA","config","mergedGtagOptions","_toGtagOptions","queues","fieldsObject","_gaCommand","eventCategory","eventAction","eventLabel","eventValue","event_category","event_label","non_interaction","_len2","_key2","_gaCommandSendEvent","_args$","hitType","timingCategory","timingVar","timingValue","timingLabel","_this$_toGtagOptions","page_path","page_title","page_location","_len3","_key3","_gaCommandSendPageview","_args$2","_len4","_key4","_gaCommandSendEventParameters","_gaCommandSendPageviewParameters","_gaCommandSendTiming","_len5","_key5","command","_len6","_key6","_gaCommandSend","_gaCommandSet","_len7","_key7","readyCallback","ga","optionsOrName","params","category","label","transport","fieldObject","reset","protoProps","staticProps","_default","_window","_ga","nodeInterop","_getRequireWildcardCache","newObj","hasPropertyDescriptor","desc","_interopRequireWildcard","cacheBabelInterop","cacheNodeInterop","AsyncMode","ConcurrentMode","ContextConsumer","ContextProvider","Element","Fragment","Lazy","Portal","Profiler","StrictMode","Suspense","isAsyncMode","isConcurrentMode","isContextConsumer","isContextProvider","isForwardRef","isFragment","isPortal","isProfiler","isStrictMode","isSuspense","isValidElementType","typeOf","IndexLinkContainer","_extends","_react2","_reactRouterDom","_LinkContainer2","default","_React$Component","ReferenceError","_possibleConstructorReturn","subClass","superClass","setPrototypeOf","__proto__","_inherits","Component","withRouter","LinkContainer","_react","_propTypes2","_Component","_temp","handleClick","_this$props","isModifiedEvent","_this$props2","to","history","_this2","_props","staticContext","activeClassName","className","activeStyle","getIsActive","isActive","createHref","pathname","Children","only","Route","cloneElement","_IndexLinkContainer3","_LinkContainer3","addLeadingSlash","stripLeadingSlash","stripBasename","hasBasename","stripTrailingSlash","createPath","hash","createLocation","currentLocation","hashIndex","searchIndex","parsePath","decodeURI","URIError","resolvePathname","createTransitionManager","prompt","setPrompt","nextPrompt","confirmTransitionTo","getUserConfirmation","appendListener","item","notifyListeners","canUseDOM","getConfirmation","confirm","PopStateEvent","HashChangeEvent","getHistoryState","createBrowserHistory","invariant","globalHistory","canUseHistory","navigator","userAgent","supportsHistory","needsHashChangeListener","_props$forceRefresh","forceRefresh","_props$getUserConfirm","_props$keyLength","keyLength","basename","getDOMLocation","historyState","_window$location","createKey","transitionManager","setState","nextState","handlePopState","isExtraneousPopstateEvent","handlePop","handleHashChange","forceNextPop","fromLocation","toLocation","toIndex","allKeys","delta","go","revertPop","initialLocation","listenerCount","checkDOMListeners","isBlocked","pushState","prevIndex","nextKeys","replaceState","goBack","goForward","block","unblock","listen","unlisten","HashChangeEvent$1","HashPathCoders","hashbang","encodePath","decodePath","noslash","slash","stripHash","getHashPath","replaceHashPath","createHashHistory","_props$hashType","hashType","_HashPathCoders$hashT","ignorePath","encodedPath","prevLocation","allPaths","baseTag","querySelector","getAttribute","pushHashPath","nextPaths","BrowserRouter","React","Router","HashRouter","resolveToLocation","normalizeToLocation","forwardRefShim","forwardRef","LinkAnchor","forwardedRef","innerRef","navigate","_onClick","ex","Link","_ref2$component","__RouterContext","Consumer","isDuplicateNavigation","forwardRefShim$1","forwardRef$1","NavLink","ariaCurrent","_ref$ariaCurrent","_ref$activeClassName","classNameProp","isActiveProp","locationProp","styleProp","escapedPath","matchPath","classnames","joinClassnames","valueEqual","aValue","bValue","lowerBound","upperBound","MAX_SIGNED_31_BIT_INT","commonjsGlobal","globalThis","createContext","calculateChangedBits","contextProp","getUniqueId","Provider","emitter","handlers","on","handler","off","changedBits","createEventEmitter","nextProps","oldValue","_Provider$childContex","_React$Component2","observedBits","onUpdate","_Consumer$contextType","createNamedContext","historyContext","_isMounted","_pendingLocation","computeRootMatch","isExact","MemoryRouter","_props$initialEntries","initialEntries","_props$initialIndex","initialIndex","nextIndex","nextEntries","canGo","createMemoryHistory","Lifecycle","onMount","prevProps","onUnmount","Prompt","when","_ref$when","release","cacheLimit","cacheCount","generatePath","generator","compilePath","Redirect","computedMatch","_ref$push","cache$1","cacheLimit$1","cacheCount$1","_options","_options$exact","_options$strict","_options$sensitive","matched","cacheKey","pathCache","compilePath$1","_compilePath","memo","context$1","isEmptyChildren","createURL","staticHandler","StaticRouter","handlePush","navigateTo","handleReplace","handleListen","handleBlock","_this$props$basename","_this$props$context","addBasename","_this$props2$basename","_this$props2$context","_this$props2$location","Switch","wrappedComponentRef","remainingProps","WrappedComponent","hoistStatics","useHistory","useLocation","useParams","useRouteMatch","__self","__source","jsx","jsxs","forceUpdate","_status","_result","PureComponent","act","_currentValue2","_threadCount","_defaultValue","_globalName","createFactory","createRef","isValidElement","lazy","startTransition","unstable_act","_options$isImmutable","isImmutable","_isImmutable2","ignore","_trackForMutations2","getState","tracker","detectMutations","_invariant2","wasMutated","BETWEEN_DISPATCHES_MESSAGE","dispatchedAction","INSIDE_DISPATCH_MESSAGE","_jsonStringifySafe2","trackProperties","tracked","childPath","_detectMutations","trackedProperty","sameParentRef","prevObj","sameRef","keysToDetect","trackedProperties","isAbsolute","spliceOne","list","hasTrailingSlash","toParts","fromParts","isToAbs","isFromAbs","mustEndAbs","up","part","sortIndex","performance","setImmediate","startTime","expirationTime","priorityLevel","scheduling","isInputPending","MessageChannel","port2","port1","onmessage","postMessage","unstable_Profiling","unstable_continueExecution","unstable_forceFrameRate","unstable_getFirstCallbackNode","unstable_next","unstable_pauseExecution","unstable_runWithPriority","unstable_wrapCallback","objectIs","checkIfSnapshotChanged","inst","latestGetSnapshot","nextValue","subscribe","_useState","useSyncExternalStoreWithSelector","getServerSnapshot","selector","instRef","hasValue","memoizedSelector","nextSnapshot","hasMemo","memoizedSnapshot","currentSelection","memoizedSelection","nextSelection","maybeGetServerSnapshot","warning","hasOwn","classNames","classes","appendClass","parseValue","newClass","_setPrototypeOf","_inheritsLoose","isProduction","provided","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","loaded","__webpack_modules__","amdO","getter","leafPrototypes","getProto","ns","def","definition","nmd","toPropertyKey","_objectSpread2","formatProdErrorMessage","$$observable","observable","randomString","ActionTypes","INIT","REPLACE","PROBE_UNKNOWN_ACTION","createStore","reducer","preloadedState","enhancer","currentReducer","currentState","currentListeners","nextListeners","isDispatching","ensureCanMutateNextListeners","isSubscribed","replaceReducer","nextReducer","outerSubscribe","observer","observeState","unsubscribe","compose","shellActions","setBusyAction","setBusyRequest","clearBusyAction","clearBusyRequest","clearDirtyAction","clearDirtyRequest","setLayout","pageTitle","showPageHeader","includePadding","helpUrl","initialState","busyCount","dirtyCount","isStaticConfigurationLoaded","featureSwitches","portalLinks","userToken","searchTitleActions","titles","titleDetailsActions","response","mapResponse","applicationTrackingActions","isCompleted","applicationTrackingType","applicationTrackingDetailsActions","openTitleActions","titleId","titleNumber","isResolved","storageFormationsListActions","storageFormations","searchLicenceActions","licences","licenceDetailsActions","openLicenceActions","licenceId","licenceNumber","oeiApplicationTrackingActions","oeiApplicationTrackingDetailsActions","batch","getBatch","ContextKey","gT","getContext","_gT$ContextKey","contextMap","realContext","ReactReduxContext","createReduxContextHook","useReduxContext","notInitialized","refEquality","createSelectorHook","useDefaultReduxContext","equalityFnOrOptions","equalityFn","stabilityCheck","noopCheck","store","subscription","getServerState","globalStabilityCheck","globalNoopCheck","wrappedSelector","selectedState","addNestedSub","useSelector","pureFinalPropsSelectorFactory","mapStateToProps","mapDispatchToProps","mergeProps","areStatesEqual","areOwnPropsEqual","areStatePropsEqual","ownProps","stateProps","dispatchProps","mergedProps","hasRunAtLeastOnce","handleSubsequentCalls","nextOwnProps","propsChanged","stateChanged","dependsOnOwnProps","nextStateProps","statePropsChanged","handleNewState","wrapMapToPropsConstant","getConstant","constantSelector","getDependsOnOwnProps","mapToProps","Boolean","wrapMapToPropsFunc","proxy","stateOrDispatch","createInvalidArgFactory","wrappedComponentName","defaultMergeProps","nullListeners","notify","createSubscription","parentSub","subscriptionsAmount","selfSubscribed","handleChangeWrapper","onStateChange","trySubscribe","createListenerCollection","tryUnsubscribe","cleanupListener","removed","notifyNestedSubs","getListeners","useIsomorphicLayoutEffect","shallowEqual","objA","objB","keysA","keysB","NO_SUBSCRIPTION_ARRAY","captureWrapperProps","lastWrapperProps","lastChildProps","renderIsScheduled","wrapperProps","childPropsFromStoreUpdate","strictEqual","pure","areMergedPropsEqual","Context","initMapStateToProps","mapStateToPropsFactory","initMapDispatchToProps","actionCreators","boundActionCreators","actionCreator","bindActionCreators","mapDispatchToPropsFactory","initMergeProps","hasRunOnce","nextMergedProps","wrapMergePropsFunc","mergePropsFactory","shouldHandleStateChanges","selectorFactoryOptions","ConnectFunction","propsContext","reactReduxForwardedRef","ContextToUse","contextValue","didStoreComeFromProps","didStoreComeFromContext","childPropsSelector","defaultSelectorFactory","overriddenContextValue","latestSubscriptionCallbackError","actualChildPropsSelector","subscribeForReact","reactListener","additionalSubscribeListener","didUnsubscribe","lastThrownError","checkForUpdates","latestStoreState","newChildProps","unsubscribeWrapper","subscribeUpdates","effectFunc","effectArgs","actualChildProps","renderedWrappedComponent","Connect","_forwarded","forwarded","serverState","previousState","createStoreHook","useStore","createDispatchHook","useDefaultStore","useDispatch","newBatch","initializeConnect","NopimsBasketActions","initialise","Initialise","itemsAdded","items","ItemsAdded","itemsRemoved","ItemsRemoved","NopimsBasketModel","setUserToken","refreshItemsLoaded","refreshItemsAdded","distinctItems","itemList","i2","reportId","surveyDataId","refreshItemsRemoved","NopimsBasketItemModel","dataDescription","wellBoreholeId","surveyAcquisitionId","reprocessingProjectId","itemId","activity","activityIdentifier","activityName","documentType","useNopimsBasket","nopimsBasket","rootReducer","reducers","reducerKeys","finalReducers","shapeAssertionError","finalReducerKeys","assertReducerShape","hasChanged","previousStateForKey","nextStateForKey","combineReducers","shell","setDirtyRequest","refreshStaticConfigurationRequest","refreshStaticConfigurationResponse","featureSwitchesResponse","portalLinksResponse","userTokenLoaded","titleSearch","SearchTitlesRequest","SearchTitlesResponse","titleDetails","GetTitleDetailsRequest","GetTitleDetailsResponse","detailsResponse","ClearTitleDetails","GetTitleMapDetailsRequest","GetTitleMapDetailsResponse","ClearTitleMapDetails","applicationTracking","GetApplicationTrackingRequest","GetApplicationTrackingResponse","applicationTrackingDetails","GetApplicationTrackingDetailsRequest","GetApplicationTrackingDetailsResponse","ClearApplicationTrackingDetails","openTitle","Actions","GetTitleIdRequest","GetTitleIdResponse","storageFormationsList","ListStorageFormationsRequest","ListStorageFormationsResponse","licenceSearch","SearchLicencesRequest","SearchLicencesResponse","licenceDetails","GetLicenceDetailsRequest","GetLicenceDetailsResponse","ClearLicenceDetails","openLicence","GetLicenceIdRequest","GetLicenceIdResponse","oeiApplicationTracking","GetOeiApplicationTrackingRequest","GetOeiApplicationTrackingResponse","oeiApplicationTrackingDetails","GetOeiApplicationTrackingDetailsRequest","GetOeiApplicationTrackingDetailsResponse","ClearOeiApplicationTrackingDetails","SetUser","ItemsLoaded","composeWithDevTools","createSymbol","CANCEL","CHANNEL_END_TYPE","IO","MATCH","MULTICAST","SAGA_ACTION","SELF_CANCELLATION","TASK","TASK_CANCEL","TERMINATE","SAGA_LOCATION","undef","notUndef","promise","it","throw","pat","channel","close","stringableFunc","konst","kTrue","asyncIterator","assignWithSymbols","kThrow","kReturn","makeIterator","thro","isSagaIterator","logError","sagaStack","createEmptyArray","wrapSagaDispatch","shouldTerminate","shouldCancel","shouldComplete","createAllStyleChildCallbacks","parentCallback","totalCount","completed","completedCount","results","childCallbacks","chCbAtKey","isErr","getMetaInfo","getLocation","instrumented","ringBuffer","overflowAction","pushIndex","popIndex","put","doubledLimit","expanding","initialSize","TAKE","PUT","ALL","RACE","CALL","CPS","FORK","JOIN","SELECT","ACTION_CHANNEL","CANCELLED","FLUSH","GET_CONTEXT","SET_CONTEXT","makeEffect","combinator","patternOrChannel","multicastPattern","channel$1","getFnCallDescriptor","fnDescriptor","fork","select","deferred","semaphore","task","suspend","asap","immediately","patterns","matcher","_predicate","wildcard","matcherCreator","string$1","array$1","symbol$1","END","isEnd","buffer$1","closed","takers","taker","stdChannel","chan","currentTakers","nextTakers","ensureCanMutateNextTakers","called","multicastChannel","resolvePromise","cancelPromise","_effectRunnerMap","nextSagaId","cancelSingleTask","taskToCancel","isRunning","effectRunnerMap","env","_ref3","_ref3$channel","maybe","takeCb","_ref11","digestEffect","effectId","_ref12","childCbs","_ref4","_ref5","proc","_ref6","cpsCb","_ref7","_ref8","detached","taskIterator","resolved","createTaskIterator","getIteratorMetaInfo","addTask","isAborted","abort","taskOrTasks","_ref9","joinSingleTask","taskToJoin","joiner","joiners","CANCEL$1","_ref10","_ref13","_ref14","CANCELLED$1","_ref15","isCancelled","_ref16","_ref17","formatLocation","fileName","lineNumber","sagaLocationAsString","sagaMeta","cancelledTasksAsString","cancelledTasks","mapper","crashedEffect","addSagaFrame","frame","setCrashedEffect","effect","firstSaga","otherSagas","crashedEffectLocation","effectLocationAsString","newTask","mainTask","parentContext","parentEffectId","isRoot","cont","_task","taskResult","taskError","status","deferredEnd","cancelledDueToErrorTasks","onAbort","tasks","cancelAll","getTasks","forkQueue","setContext","toPromise","iterator$1","finalRunEffect","finalizeRunEffect","currCb","effectRunner","executingContext","effectSettled","sagaMonitor","effectRejected","effectResolved","effectTriggered","effectCancelled","runSaga","saga","_ref$channel","_ref$context","effectMiddlewares","_ref$onError","rootSagaStarted","actionDispatched","middleware","runEffect","eff","boundRunSaga","sagaMiddleware","run","qEnd","safeName","fsmIterator","fsm","startState","stateUpdater","errorState","takeEvery","worker","yTake","setAction","q1","q2","takeEvery$1","BaseClient","transformOptions","headers","getSessionCorrelation","PublicCoreCuttingsRequestServiceClient","configuration","baseUrl","http","super","jsonParseReviver","getCreatePublicCoreCuttingsRequestReferenceData","url_","options_","transformedOptions_","fetch","_response","processGetCreatePublicCoreCuttingsRequestReferenceData","_headers","_responseText","result200","resultData200","GetCreatePublicCoreCuttingsRequestReferenceDataResponseDto","fromJS","throwException","createPublicCoreCuttingsRequest","processCreatePublicCoreCuttingsRequest","CreatePublicCoreCuttingsRequestResponseDto","PublicFeedbackServiceClient","getCreatePublicFeedbackReferenceData","processGetCreatePublicFeedbackReferenceData","GetCreatePublicFeedbackReferenceDataResponseDto","createPublicFeedback","processCreatePublicFeedback","CreatePublicFeedbackResponseDto","PublicNopimsBasketServiceClient","savePublicNopimsBasket","processSavePublicNopimsBasket","SavePublicNopimsBasketResponseDto","getPublicNopimsBasket","processGetPublicNopimsBasket","GetPublicNopimsBasketResponseDto","getSubmitPublicNopimsBasketReferenceData","processGetSubmitPublicNopimsBasketReferenceData","GetSubmitPublicNopimsBasketReferenceDataResponseDto","submitPublicNopimsBasket","processSubmitPublicNopimsBasket","SubmitPublicNopimsBasketResponseDto","PublicOeiApplicationsServiceClient","getPublicOeiApplicationsTracking","processGetPublicOeiApplicationsTracking","GetPublicOeiApplicationsTrackingResponseDto","getPublicOeiApplicationsTrackingDetails","processGetPublicOeiApplicationsTrackingDetails","GetPublicOeiApplicationsTrackingDetailsResponseDto","PublicOeiLicenceDetailsServiceClient","getPublicLicenceDetails","processGetPublicLicenceDetails","GetPublicLicenceDetailsResponseDto","PublicOeiLicenceOpenServiceClient","getPublicOpenLicenceId","processGetPublicOpenLicenceId","GetPublicOpenLicenceIdResponseDto","PublicOeiLicencesSearchServiceClient","getPublicLicencesList","processGetPublicLicencesList","GetPublicLicencesListResponseDto","PublicOpggsApplicationsServiceClient","getPublicOpggsApplicationsTracking","processGetPublicOpggsApplicationsTracking","GetPublicOpggsApplicationsTrackingResponseDto","getPublicOpggsApplicationsTrackingDetails","processGetPublicOpggsApplicationsTrackingDetails","GetPublicOpggsApplicationsTrackingDetailsResponseDto","PublicOpggsStorageFormationsListServiceClient","getPublicStorageFormationsList","processGetPublicStorageFormationsList","GetPublicStorageFormationsListResponseDto","PublicOpggsTitlesServiceClient","getPublicTitlesList","processGetPublicTitlesList","GetPublicTitlesListResponseDto","getPublicTitleDetails","processGetPublicTitleDetails","GetPublicTitleDetailsResponseDto","getPublicTitleDetailsMap","processGetPublicTitleDetailsMap","GetPublicTitleDetailsMapResponseDto","getPublicOpenTitleId","processGetPublicOpenTitleId","GetPublicOpenTitleIdResponseDto","PublicShellServiceClient","getPublicShellFeatureSwitches","processGetPublicShellFeatureSwitches","GetPublicShellFeatureSwitchesResponseDto","getPublicShellPortalLinks","processGetPublicShellPortalLinks","GetPublicShellPortalLinksResponseDto","StatusMessagesDto","isSuccess","success","information","init","_data","GetPublicApplicationsTrackingDetailsApprovalTrackingDto","applicationStatus","applicationStatusName","displayOrder","weekdaysAtStatus","OeiApplicationTrackingTypeEnum","OpggsApplicationTrackingTypeEnum","GetPublicNopimsBasketItemResponseDto","GetPublicNopimsBasketRequestDto","GetSubmitPublicNopimsBasketReferenceDataRequestDto","GetSubmitPublicNopimsBasketReferenceDataResponseCountryDto","GetSubmitPublicNopimsBasketReferenceDataResponseCountrySubDivisionDto","countryId","honorifics","countrySubDivisions","countries","GetSubmitPublicNopimsBasketReferenceDataResponseHonorificDto","SavePublicNopimsBasketItemRequestDto","SavePublicNopimsBasketRequestDto","statusMessages","SubmitPublicNopimsBasketRequestDto","honorificId","firstName","lastName","contactNumber","companyName","address","suburb","postcode","countrySubdivisionId","comments","CreatePublicCoreCuttingsRequestRequestBoreholeSampleDetailDto","boreholeId","intervalTop","intervalBottom","boreholeSampleTypeIds","CreatePublicCoreCuttingsRequestRequestDto","emailAddress","streetAddress","isAcademia","supervisorHonorific","supervisorFirstName","supervisorLastName","supervisorUniversityName","supervisorContactNumber","supervisorEmailAddress","supervisorSchoolName","studyDescription","boreholeSampleDetails","GetCreatePublicCoreCuttingsRequestReferenceDataRequestDto","GetCreatePublicCoreCuttingsRequestReferenceDataResponseBoreholeDto","identifier","displayText","GetCreatePublicCoreCuttingsRequestReferenceDataResponseCountryDto","GetCreatePublicCoreCuttingsRequestReferenceDataResponseCountrySubDivisionDto","boreholes","sampleTypes","GetCreatePublicCoreCuttingsRequestReferenceDataResponseHonorificDto","GetCreatePublicCoreCuttingsRequestReferenceDataResponseSampleTypeDto","CreatePublicFeedbackRequestDto","customerFirstName","customerLastName","customerCompanyName","customerContactNumber","customerEmailAddress","feedbackTypeId","nopimsActivityTypeId","activityId","dataMonitoringItemTypeId","customerComments","GetCreatePublicFeedbackReferenceDataRequestDto","GetCreatePublicFeedbackReferenceDataResponseActivityDto","surveyAcquisitionTypeId","GetCreatePublicFeedbackReferenceDataResponseDataMonitoringItemTypeDto","feedbackTypes","nopimsActivityTypes","activities","dataMonitoringItemTypes","GetCreatePublicFeedbackReferenceDataResponseHonorificDto","GetCreatePublicFeedbackReferenceDataResponseFeedbackTypeDto","GetCreatePublicFeedbackReferenceDataResponseNopimsActivityTypeDto","isDataFeedbackType","GetPublicOeiApplicationsTrackingApplicationListItemDto","applicationId","applicationTypeName","licenceType","applicantCompany","lodgedDate","implementedDate","toISOString","GetPublicOeiApplicationsTrackingDetailsRequestDto","approvalTracking","GetPublicOeiApplicationsTrackingRequestDto","applicationTrackingTypeSummary","applicationTrackingStatusSummary","applicationList","applicationTrackingTypes","GetPublicOeiApplicationsTrackingTrackingTypeSummaryItemDto","GetPublicOeiApplicationsTrackingTrackingStatusSummaryItemDto","GetPublicOeiApplicationsTrackingTrackingTypeDto","applicationStatusColour","total","applicationTrackingTypeName","applicationTrackingTypeColour","GetPublicLicenceDetailsLicenceHolderDto","licenceHolderId","licenceHolder","acnOrArbn","GetPublicLicenceDetailsRegisterDto","decision","executedDate","submittedDate","registeredDate","fileId","GetPublicLicenceDetailsRelatedLicenceDto","GetPublicLicenceDetailsRequestDto","summary","memorial","GetPublicLicenceDetailsSummaryDto","licenceStatusDescription","licenceTypeDescription","legislationDescription","projectName","declaredAreaName","relatedLicences","grantDate","comesIntoForceDate","endDate","licenceCeaseDate","finalisedArea","finalisedGenerationCapacity","renewableEnergyResourceDescription","technologyToBeInvestigatedDescription","GetPublicLicencesListItemDto","licenceStatus","GetPublicLicencesListRequestDto","filterFullTextSearch","GetPublicOpenLicenceIdRequestDto","GetPublicApplicationsTrackingApplicationListItemDto","titleType","offshoreAreaName","GetPublicApplicationsTrackingTrackingStatusSummaryItemDto","GetPublicApplicationsTrackingTrackingTypeDto","GetPublicApplicationsTrackingTrackingTypeSummaryItemDto","GetPublicOpggsApplicationsTrackingDetailsRequestDto","GetPublicOpggsApplicationsTrackingRequestDto","GetPublicStorageFormationListItemDto","storageFormationId","storageFormationName","storageFormationStatus","titleholders","mapSheet","graticularBlocks","GetPublicStorageFormationsListRequestDto","GetPublicOpenTitleIdRequestDto","GetPublicTitleDetailsBlockDto","blockId","blockNumber","isPartBlock","mapSheetCode","mapSheetName","locationName","GetPublicTitleDetailsBlocksAndLocationsDto","blocks","locations","GetPublicTitleDetailsLocationDto","locationId","substanceName","statusName","originalExpiryDate","currentExpiryDate","GetPublicTitleDetailsMapRequestDto","isOnline","isFeatureAvailable","areaSqKm","pinLatitude","pinLongitude","extentMinLatitude","extentMinLongitude","extentMaxLatitude","extentMaxLongitude","zoomLevel","GetPublicTitleDetailsMemorialApplicationDto","applicationName","registeredDatetime","GetPublicTitleDetailsMemorialDto","applications","GetPublicTitleDetailsRelatedTitleDto","GetPublicTitleDetailsRequestDto","titleTypeName","title2SubType","title2SubTypeTypeName","workProgram","blocksAndLocations","GetPublicTitleDetailsSummaryDto","GetPublicTitleDetailsTitleholderDto","GetPublicTitleDetailsWorkProgramDto","titleStatus","numberOfRenewals","initialGrantDate","lastRenewalDate","basinName","fieldName","fieldType","numberOfBlocks","hasPriorUsageRight","isDesignatedFrontierArea","storageFormationNames","pipelineLength","pipelineName","startPointName","endPointName","locationNames","relatedTitles","companyId","isOperator","percentageOwnership","showPrimaryAndSecondaryTerms","years","grandTotal","primaryTermTotal","secondaryTermTotal","GetPublicTitleDetailsWorkProgramYearDto","GetPublicTitleDetailsWorkProgramYearActivityDto","description","quantity","activityOrder","startDate","isEpPrimaryTerm","isEpSecondaryTerm","yearOrder","GetPublicTitlesListItemDto","GetPublicTitlesListRequestDto","GetPublicShellFeatureSwitchesRequestDto","GetPublicShellPortalLinksLinkDto","GetPublicShellPortalLinksRequestDto","links","Title2SubTypeEnum","TitleTypeEnum","ExternalLinkEnum","ApiException","isApiException","getServicesUri","_process$env$REACT_AP","_process$env$REACT_AP2","_process$env$REACT_AP3","intranetUri","internetUri","internetHostnameSuffix","hostname","createOpggsApplicationsClient","createAnonymousClient","uri","Client","createOpggsTitlesClient","createOeiApplicationsClient","createFeedbackClient","createCoreCuttingsRequestClient","createBasketClient","createShellClient","factory","UriHelper","_localStorage$userTok","userTokenValue","localStorage","sessionTokenKey","sessionTokenValue","sessionStorage","crypto","randomUUID","_pureAssign","func1","func2","_pureRef","_primitiveTypes","UNDEF_VALUE","NULL_VALUE","EMPTY","FUNCTION","OBJECT","PROTOTYPE","__PROTO__","UNDEFINED","CONSTRUCTOR","SYMBOL","POLYFILL_TAG","LENGTH","NAME","TO_STRING","ObjClass","ObjProto","StrCls","StrProto","MathCls","ArrCls","ArrProto","ArrSlice","safe","argArray","_createIs","theType","_createObjIs","theName","objToString","isNullOrUndefined","isDefined","isPrimitiveType","isPromiseLike","isTruthy","defValue","objGetOwnPropertyDescriptor","objHasOwnProperty","objHasOwn","polyObjHasOwn","objForEachKey","theObject","callbackfn","propMap","_createProp","objDefineProp","objDefineProperties","objDefine","propDesc","_createKeyValueMap","keyType","valueType","completeFn","theMap","_assignMapValue","asString","dumpObj","propertyValueDump","objType","throwError","throwTypeError","_objFreeze","_doNothing","_getProto","objAssign","objKeys","objDeepFreeze","objFreeze","objGetPrototypeOf","createEnumKeyMap","_globalCfg","_wellKnownSymbolMap","hasInstance","matchAll","species","unscopables","GLOBAL_CONFIG_KEY","_getGlobalValue","_getGlobalConfig","gbl","_unwrapFunction","_unwrapFunctionWithPoly","clsProto","polyFunc","clsFn","theFunc","theArgs","_unwrapProp","mathMax","strSlice","strSubstring","strSubstr","polyStrSubstr","strLeft","_polySymbols","_wellKnownSymbolCache","_globalLazyTestHooks","UNIQUE_REGISTRY_ID","_globalSymbolRegistry","gblCfg","gblSym","polyNewSymbol","theSymbol","polySymbolFor","registry","newSymbol_1","regId_1","_initTestHooks","getLazy","lazyValue","lzy","createCachedValue","_cachedGlobal","WINDOW","_getGlobalInstFn","getFn","cachedValue","getGlobal","useCached","getInst","hasDocument","getDocument","hasWindow","getWindow","getNavigator","_symbol","_symbolFor","getHistory","isNode","versions","isWebWorker","WorkerGlobalScope","_initSymbol","_getSymbolKey","_iterSymbol$1","hasSymbol","getSymbol","getKnownSymbol","noPoly","knownName","polyGetKnownSymbol","newSymbol","symbolFor","isIterator","isIterable","isStrictNullOrUndefined","iterForOf","iterResult","failed","fnApply","arrAppend","elms","elm","arrForEach","theArray","idx","arrIndexOf","arrMap","arrSlice","arrReduce","_isProtoArray","_unsupportedError","objCreate","polyObjCreate","tempFunc","objSetPrototypeOf","_a","_setName","baseClass","createCustomError","constructCb","errorBase","theBaseClass","orgName","captureFn","captureStackTrace","__","_createCustomError","_self","orgProto","utcNow","polyUtcNow","getTime","_createTrimFn","exp","strTrim","_fnToString","_objCtrFnString","_gblWindow","_defaultDeepCopyHandler","plainObjDeepCopyHandler","defaultDeepCopyHandlers","copyTo","_deepCopy","visitMap","ctx","userHandler","newPath","newCtx","isPlain","isPrim","origin","newKey","_copyProps","theEntry","_getSetVisited","newEntry","_doExtend","theArg","objCopyProps","deepExtend","obj1","obj2","obj3","obj4","obj5","obj6","_perf","getLength","getPerformance","strSplit","setValueByKey","lastKey","strEndsWith","polyStrEndsWith","searchString","searchValue","strIndexOf","REF","UNREF","HAS_REF","_createTimerHandler","startTimer","refreshFn","cancelFn","theTimerHandler","_unref","_cancel","_refresh","refresh","dn","_createTimeoutWith","overrideFn","setFn","clearFn","timerFn","scheduleTimeout","timeout","Prototype","strFunction","DynInstFuncTable","DynProxyTag","DynClassName","DynInstChkTag","DynAllowInstChkTag","DynProtoDefaultOptions","UnknownValue","str__Proto","DynProtoBaseProto","DynProtoGlobalSettings","DynProtoCurrent","strUseBaseInst","strSetInstFuncs","Obj","_objGetPrototypeOf","_objGetOwnProps","_gbl","_gblInst","_isObjectOrArrayPrototype","_isObjectArrayOrFunctionPrototype","_getObjProto","newProto","curProto","_forEachProp","name_1","lp","_isDynamicCandidate","skipOwn","_throwTypeError","_hasVisited","_populatePrototype","baseInstFuncs","setInstanceFunc","_createDynamicPrototype","dynProtoProxy","instFunc","currentDynProtoProxy","instFuncTable","canAddInst","objProto","visited","protoFunc","_getInstFunc","_getProtoFunc","instFuncs_1","_getObjName","unknownValue","dynamicProto","theClass","delegateFunc","classProto","thisTarget","thisProto","_checkPrototype","perfOptions","useBaseInst","instFuncs","_getInstanceFuncs","baseFuncs","_instFuncProxy","funcHost","baseProto","_getBaseFuncs","strShimFunction","strShimObject","strShimUndefined","strShimPrototype","strHasOwnProperty","__assignFn","extendStaticsFn","__extendsFn","__spreadArrayFn","_DYN_TO_LOWER_CASE","_DYN_BLK_VAL","_DYN_LENGTH","_DYN_RD_ONLY","_DYN_NOTIFY","_DYN_WARN_TO_CONSOLE","_DYN_THROW_INTERNAL","_DYN_SET_DF","_DYN_WATCH","_DYN_LOGGER","_DYN_APPLY","_DYN_PUSH","_DYN_SPLICE","_DYN_HDLR","_DYN_CANCEL","_DYN_INITIALIZE","_DYN_IDENTIFIER","_DYN_REMOVE_NOTIFICATION_0","_DYN_ADD_NOTIFICATION_LIS1","_DYN_IS_INITIALIZED","_DYN_INSTRUMENTATION_KEY","_DYN__INACTIVE","_DYN_VALUE","_DYN_GET_NOTIFY_MGR","_DYN_GET_PLUGIN","_DYN_NAME","_DYN_I_KEY","_DYN_TIME","_DYN_PROCESS_NEXT","_DYN_GET_PROCESS_TEL_CONT2","_DYN_POLL_INTERNAL_LOGS","_DYN_ENABLED","_DYN_STOP_POLLING_INTERNA3","_DYN_UNLOAD","_DYN_ON_COMPLETE","_DYN_VERSION","_DYN_LOGGING_LEVEL_CONSOL4","_DYN_CREATE_NEW","_DYN_TEARDOWN","_DYN_MESSAGE_ID","_DYN_MESSAGE","_DYN_IS_ASYNC","_DYN_DIAG_LOG","_DYN__DO_TEARDOWN","_DYN_UPDATE","_DYN_GET_NEXT","_DYN_SET_NEXT_PLUGIN","_DYN_PROTOCOL","_DYN_USER_AGENT","_DYN_SPLIT","_DYN_NODE_TYPE","_DYN_REPLACE","_DYN_LOG_INTERNAL_MESSAGE","_DYN_TYPE","_DYN_HANDLER","_DYN_STATUS","_DYN_GET_RESPONSE_HEADER","_DYN_GET_ALL_RESPONSE_HEA5","_DYN_IS_CHILD_EVT","_DYN_DATA","_DYN_GET_CTX","_DYN_SET_CTX","_DYN_COMPLETE","_DYN_ITEMS_RECEIVED","_DYN_URL_STRING","_DYN_SEND_POST","_DYN_HEADERS","_DYN_TIMEOUT","_DYN_SET_REQUEST_HEADER","_DYN_TRACE_ID","_DYN_SPAN_ID","_DYN_TRACE_FLAGS","_DYN_GET_ATTRIBUTE","UNDEFINED_VALUE","STR_EMPTY","STR_CHANNELS","STR_CORE","STR_CREATE_PERF_MGR","STR_DISABLED","STR_EXTENSION_CONFIG","STR_EXTENSIONS","STR_PROCESS_TELEMETRY","STR_PRIORITY","STR_EVENTS_SENT","STR_EVENTS_DISCARDED","STR_EVENTS_SEND_REQUEST","STR_PERF_EVENT","STR_OFFLINE_STORE","STR_OFFLINE_SENT","STR_OFFLINE_DROP","STR_GET_PERF_MGR","STR_DOMAIN","STR_PATH","rCamelCase","rNormalizeInvalid","rLeadingNumeric","isNotNullOrUndefined","normalizeJsName","_all","letter","strContains","getExceptionName","field","valChk","srcChk","theValue","getSetValue","_createProxyFunction","srcFunc","originalArguments","proxyFunctionAs","overwriteTarget","proxyFunctions","functionsToProxy","theFuncName","optimizeObject","ObjAssign","objExtend","extended","argLen","deep","isArgArray","isArgObj","isNewArray","isFeatureEnabled","feature","cfg","rlt","ft","featureOptIn","getResponseText","xhr","responseText","formatErrorMessageXdr","xdr","formatErrorMessageXhr","prependTransports","theTransports","newTransports","strWithCredentials","_appendHeader","theHeaders","_getAllResponseHeaders","isOneDs","headersString","headerEntry","header","convertAllHeadersToMap","strJSON","strMsie","strTrident","strXMLHttpRequest","_isTrident","_navUserAgentCheck","_enableMocks","_useXDomainRequest","_beaconsSupported","_hasProperty","supported","checkForMock","mockLocation","hasJSON","getJSON","isIE","nav","getIEVersion","userAgentStr","navigator_1","doc","tridentVer","isBeaconsSupported","sendBeacon","isFetchSupported","withKeepAlive","isSupported","request","useXDomainRequest","XDomainRequest","isXhrSupported","sendCustomEvent","evtName","customDetails","CustomEvent","evnt","eventName","createEvent","initCustomEvent","createCustomDomEvent","UInt32Mask","MaxUInt32","SEED1","SEED2","_mwcSeeded","_mwcW","_mwcZ","_mwcSeed","seedValue","_autoSeedMwc","random32","signed","getRandomValues","Uint32Array","mwcRandom32","newId","instanceName","_dataUid","_canAcceptData","createUniqueNamespace","includeVersion","createElmNodeData","accept","addDefault","theCache","_getCache","kill","_isConfigDefaults","isVal","_getDefault","dynamicHandler","theConfig","cfgDefaults","isDefaultValid","dfVal","fallbacks","fbValue","_resolveDefaultValue","newValue_1","_applyDefaultValue","isValid","mergeDf","readOnly","blkDynamicValue","mrg","usingDefault","cfgValue","dfName","dfValue","CFG_HANDLER_LINK","BLOCK_DYNAMIC","FORCE_DYNAMIC","_cfgDeepCopy","target_1","_canMakeDynamic","getFunc","blkVal","throwInvalidAccess","aggregationErrorType","arrayMethodsToPatch","_throwDynamicError","logger","_getOwnPropGetter","_setDynamicProperty","trk","clr","checkDynamic","isObjectOrArray","_getProperty","_makeDynamicObject","activeHandler","chng","ro","upd","isReferenced","hdlr","valueState","newIsObjectOrArray","_createDynamicProperty","_setDynamicPropertyState","isDynamic","inPlace","rdOnly","blkProp","blockDynamicConversion","orgMethod","_patchArray","symPrefix","symPostfix","_createState","cfgHandler","theState","dynamicPropertySymbol","dynamicPropertyReadOnly","dynamicPropertyReferenced","dynamicPropertyBlockValue","dynamicPropertyDetail","_waitingHandlers","_watcherTimer","_useHandler","prevWatcher","setDf","_notifyWatchers","notifyHandlers","watcherFailures_1","sourceErrors","errors","theMessage","srcError","throwAggregationError","use","_createDynamicHandler","getDynamicConfigHandler","newTarget","defaultValues","configHandler","rm","_createAndUseHandler","_block","allowUpdate","prevUpd","createDynamicConfig","defaultConfig","onConfigChange","_logInvalidAccess","_debugListener","listenerFuncs","_aiNamespace","_listenerProxyFunc","dbgExt","getDebugExt","disableDbgExt","_getExtensionNamespace","STR_WARN_TO_CONSOLE","loggingLevelConsole","loggingLevelTelemetry","maxMessageLimit","enableDebug","_logFuncs","_sanitizeDiagnosticText","_logToConsole","theConsole","logFunc","_InternalLogMessage","msgId","msg","isUserAct","strProps","diagnosticText","dataType","safeGetLogger","core","DiagnosticLogger","_loggingLevelConsole","_loggingLevelTelemetry","_maxInternalMessageLimit","_enableDebug","_unloadHandler","_messageCount","_messageLogged","_logInternalMessage","severity","logMessage","messageKey","_debugExtMsg","throttleLimitMessage","throttleMessage","errorToConsole","_setDefaultsFromConfig","consoleLoggingLevel","debugToConsole","resetInternalMessageCount","isAsync","_getLogger","_throwInternal","_warnToConsole","createEnumStyle","createValueMap","mapClass","createSimpleMap","StorageType","LocalStorage","SessionStorage","AI","AI_AND_W3C","W3C","Normal","Critical","_DYN_INGESTIONENDPOINT","_DYN_TO_STRING","_DYN_REMOVE_ITEM","_DYN_COUNT","_DYN_PRE_TRIGGER_DATE","_DYN_DISABLED","_DYN_INTERVAL","_DYN_DAYS_OF_MONTH","_DYN_DATE","_DYN_GET_UTCDATE","_DYN_STRINGIFY","_DYN_PATHNAME","_DYN_MATCH","_DYN_CORRELATION_HEADER_E0","_DYN_EXCEPTIONS","_DYN_PARSED_STACK","_DYN_PROPERTIES","_DYN_MEASUREMENTS","_DYN_SIZE_IN_BYTES","_DYN_TYPE_NAME","_DYN_SEVERITY_LEVEL","_DYN_PROBLEM_GROUP","_DYN_IS_MANUAL","_DYN_HAS_FULL_STACK","_DYN_ASSEMBLY","_DYN_FILE_NAME","_DYN_LINE","_DYN_METHOD","_DYN_LEVEL","_DYN_AI_DATA_CONTRACT","_DYN_DURATION","_DYN_RECEIVED_RESPONSE","_canUseLocalStorage","_canUseSessionStorage","_storagePrefix","_getLocalStorageObject","utlCanUseLocalStorage","_getVerifiedStorageObject","storageType","storage","getGlobalInst","setItem","fail","getItem","exception","_getSessionStorageObject","utlCanUseSessionStorage","utlSetStoragePrefix","storagePrefix","utlGetLocalStorage","utlSetLocalStorage","utlGetSessionStorage","utlSetSessionStorage","utlRemoveSessionStorage","PropertiesPluginIdentifier","BreezeChannelIdentifier","AnalyticsPluginIdentifier","DisabledPropertyName","SampleRate","ProcessLegacy","HttpMethod","DEFAULT_BREEZE_ENDPOINT","DEFAULT_BREEZE_PATH","strNotSpecified","strIkey","dataSanitizeKeyAndAddUniqueness","origLength","nameTrunc","dataSanitizeKey","uniqueField","dsPadNumber","dataSanitizeString","valueTrunc","dataSanitizeUrl","dataSanitizeInput","dataSanitizeMessage","messageTrunc","dataSanitizeProperties","tempProps_1","dataSanitizeMeasurements","measurements","tempMeasurements_1","measure","_msgId","inputTrunc","num","createTelemetryItem","baseType","envelopeName","customProperties","systemProperties","iKey","telemetryItem","ext","tags","baseData","TelemetryItemCreator","Event","aiDataContract","ver","envelopeType","Trace","severityLevel","DataPoint","kind","stdDev","Metric","metrics","dataPoint","msToTimeSpan","totalms","ms","sec","hour","days","PageView","durationMs","duration","dataSanitizeId","PageViewPerformance","unused","cs4BaseData","perfTotal","networkConnect","sentRequest","receivedResponse","domProcessing","IS_FRAME","PARSE_FILENAME_LINE_COL","PARSE_FILENAME_LINE_ONLY","NoMethod","strError","strStack","strStackDetails","strErrorSrc","strMessage","strDescription","_parseSequence","ln","chk","pre","hdl","_handleFilename","_stringify","convertToString","_formatMessage","theEvent","errorType","evtMessage","_isStackDetails","_convertStackObj","errorStack","_getStackFromErrorObj","errorObj","errorMessage","lines","_getOperaStack","reason","_parseStack","parsedStack","frames","level_1","foundStackStart_1","totalSizeInBytes_1","trimmedFrame","_isStackFrame","theFrame","parsedFrame","level","stackFrameAiDataContract","line","sequence","_parseFilename","_populateFrameSizeInBytes","_extractStackFrame","right","acceptedLeft","acceptedRight","howMany","_getErrorType","typeName","_formatErrorCode","Exception","exceptions","_isExceptionInternal","_createExceptionDetails","CreateAutoException","columnNumber","evt","errorSrc","stackDetails","CreateFromInterface","assembly","_stackFrameFromInterface","exceptionDetails","__assign","_createExDetailsFromInterface","toInterface","_b","problemGroup","isManual","exceptionDetailsInterface","CreateSimpleException","formatError","exDetailsAiDataContract","outerId","hasFullStack","_toInterface","_parsedFrameToInterface","theStack","_isExceptionDetailsInternal","exceptionTrunc","dataSanitizeException","_formatStackTrace","lineCol","lineNo","filename","sizeInBytes","generateW3CId","tmp","hexValues","oct","clockSequenceHi","DEFAULT_VERSION","INVALID_VERSION","INVALID_TRACE_ID","INVALID_SPAN_ID","_isValid","invalidValue","_formatValue","_formatFlags","createTraceParent","traceId","spanId","isValidTraceId","isValidSpanId","traceFlags","formatTraceParent","RequestHeaders","requestContextHeader","requestContextTargetKey","requestContextAppIdFormat","requestIdHeader","traceParentHeader","traceStateHeader","sdkContextHeader","sdkContextHeaderAppIdRequest","requestContextHeaderLowerCase","_document","_htmlAnchorIdx","_htmlAnchorElement","urlParseUrl","anchorIdx","anchorCache","tempAnchor","host","urlParseHost","inclPort","fullHost","urlParseFullHost","protocol","port","_internalEndpoints","_correlationIdPrefix","isInternalApplicationInsightsEndpoint","endpointUrl","correlationIdCanIncludeCorrelationHeader","requestUrl","currentHost","disableCorrelationHeaders","correlationHeaderExcludePatterns","requestHost","enableCorsCorrelation","matchExists_1","includedDomains","correlationHeaderDomains","domain","regex","excludedDomains","correlationHeaderExcludedDomains","correlationIdGetCorrelationContext","responseHeader","correlationId","keyValues","keyValue","correlationIdGetCorrelationContextValue","dateTimeUtilsNow","perf","timing","navigationStart","dateNow","dateTimeUtilsDuration","createDistributedTraceContextFromTrace","telemetryTrace","parentCtx","trace","getName","setName","getTraceId","traceID","setTraceId","getSpanId","parentID","setSpanId","getTraceFlags","setTraceFlags","newTraceFlags","RemoteDependencyData","absoluteUrl","commandName","resultCode","requestAPI","correlationContext","dependencyKind","dependencySource","dependencyTypeName","dependencyFields","parsedUrl","pathName","AjaxHelperParseDependencyPath","createDomEvent","initEvent","_stringToBoolOrDefault","cfgDfMerge","cfgDfSet","cfgDfValidate","validator","fallBackName","cfgDfBoolean","_doc","strToGMTString","strToUTCString","strCookie","strExpires","strIsCookieUseDisabled","strDisableCookiesUsage","strConfigCookieMgr","_supportsCookies","_allowUaSameSite","_parsedCookieValue","_cookieCache","_globalCookieConfig","rootDefaultConfig","cookieCfg","enabled","ignoreCookies","blockedCookies","cookiePath","_getDoc","_isMgrEnabled","cookieMgr","isEnabled","_isIgnoredCookie","cookieMgrCfg","_isCfgEnabled","rootConfig","cookieMgrConfig","isCfgEnabled","cookieEnabled","safeGetCookieMgr","getCookieMgr","createCookieMgr","_gblCookieMgr","_path","_domain","unloadHandler","_enabled","_getCookieFn","_setCookieFn","_delCookieFn","getCookie","_getCookieValue","setCookie","_setCookieValue","delCookie","areCookiesSupported","gblManager","setEnabled","maxAgeSec","_isBlockedCookie","_extractParts","_isIE","expireMs","expiry","setTime","_formatDate","location_1","uaDisallowsSameSiteNone","_formatCookieValue","del","purge","thePart","theDate","cookieValue","theCookie","strAttachEvent","strAddEventHelper","strDetachEvent","strRemoveEventListener","strEvents","strVisibilityChangeEvt","strPageHide","strUnload","strBeforeUnload","strPageHideNamespace","rRemoveEmptyNs","rRemoveTrailingEmptyNs","_guid","elmNodeData","eventNamespace","_normalizeNamespace","_getEvtNamespace","evtNamespace","theNamespace_1","parsedEvent","_getRegisteredEvents","aiEvts","registeredEvents","_doDetach","handlerRef","useCapture","_doUnregister","events","unRegFn","mergeEvtNamespace","theNamespace","namespaces","eventOn","_doAttach","registeredEvent","guid","eventOff","evtName_1","found_1","eventCache","evtType","_unregisterEvents","regEvent","_addEventListeners","excludeEvents","added","addEventHandler","removeEventListeners","removeEventHandler","addPageUnloadEventListener","addEventListeners","addPageHideEventListener","newNamespaces","pageUnloadAdded","visibilityState","strExecutionContextKey","strParentContextKey","strChildrenContextKey","_defaultPerfManager","PerfEvent","payloadDetails","theDetails_1","childTime","childEvts","childEvt","exTime","ParentContextKey","ChildrenContextKey","PerfManager","manager","fire","perfEvent","doPerfActiveKey","doPerf","mgrSource","getSource","perfMgr","perfEvt","currentActive","pluginStateData","_getPluginState","plugin","initializePlugins","processContext","extensions","pluginState","initPlugins","lastPlugin","thePlugin","getCfg","sortPlugins","plugins","extA","extB","bHasProcess","strTelemetryPluginChain","strHasRunFlags","strGetTelCtx","_chainId","_createInternalContext","telemetryChain","startAt","_nextProxy","_onComplete","createTelemetryProxyChain","_getNextProxyStart","_next","nextProxy","onComplete","completeDetails","diagLog","getExtCfg","newConfig","_getExtCfg","getConfig","extConfig","hasNext","getNext","setNext","nextPlugin","iterate","that","createIfMissing","idCfg","extCfg","createProcessTelemetryContext","internalContext","createProcessTelemetryUnloadContext","unloadState","createProcessTelemetryUpdateContext","updateState","firstProxy","lastProxy_1","newProxy","chainId","hasProcessTelemetry","hasSetNext","proxyChain","getPlugin","processTelemetry","_processTelemetry","unload","_unloadPlugin","_updatePlugin","_id","_setNext","_getTelCtx","itemCtx","_processChain","processPluginFn","hasRun","hasRunContext","nextId","hasNextRun","_callProcessTelemetry","sync","unloadCtx","_callTeardown","pluginCore","updateCtx","_callUpdate","createTelemetryPluginProxy","_maxHooks","_hookAddMonitor","aiInstrumentHooks","cbNames","_arrLoop","_doCallbacks","hooks","callDetails","cbArgs","hookCtx","hook","cbks","orgEx","hookErrorCb","_getOwner","checkPrototype","checkParentProto","owner","_createInstrumentHook","callbacks","aiHook","newFunc","orgArgs","funcArgs","_createArgs","rslt","_createFunctionHook","theHook","InstrumentFunc","InstrumentEvent","createUnloadHandlerContainer","createUnloadHookContainer","_hooks","oldHooks","strGetPlugin","BaseTelemetryPlugin","_isinitialized","_rootCtx","_nextPlugin","_unloadHandlerContainer","_hookContainer","currentCtx","rootCtx","_setDefaults","pluginChain","_initDefaults","unloadDone","theUnloadCtx","theUnloadState","_unloadCallback","updateDone","theUpdateCtx","theUpdateState","_doUpdate","_updateCallback","setInitialized","_DYN_IS_STORAGE_USE_DISAB0","_DYN__ADD_HOOK","_DYN_CORE","_DYN_DATA_TYPE","_DYN_ENVELOPE_TYPE","_DYN_TRACK","_DYN_TRACK_PAGE_VIEW","_DYN_TRACK_PREVIOUS_PAGE_1","_DYN_SEND_PAGE_VIEW_INTER2","_DYN_START_TIME","_DYN_SEND_PAGE_VIEW_PERFO3","_DYN_POPULATE_PAGE_VIEW_P4","_DYN_HREF","_DYN_SEND_EXCEPTION_INTER5","_DYN_EXCEPTION","_DYN_ERROR","_DYN__ONERROR","_DYN_ERROR_SRC","_DYN_LINE_NUMBER","_DYN_COLUMN_NUMBER","_DYN__CREATE_AUTO_EXCEPTI6","_DYN_ADD_TELEMETRY_INITIA7","_DYN_AUTO_EXCEPTION_INSTR9","_DYN_AUTO_TRACK_PAGE_VISI10","_DYN_IS_BROWSER_LINK_TRAC11","_DYN_ENABLE_AUTO_ROUTE_TR12","_DYN_ENABLE_UNHANDLED_PRO13","_DYN_AUTO_UNHANDLED_PROMI14","_DYN_GET_ENTRIES_BY_TYPE","_DYN_IS_PERFORMANCE_TIMIN15","_DYN_GET_PERFORMANCE_TIMI16","_DYN_NAVIGATION_START","_DYN_SHOULD_COLLECT_DURAT17","_DYN_IS_PERFORMANCE_TIMIN18","_DYN_RESPONSE_START","_DYN_LOAD_EVENT_END","_DYN_RESPONSE_END","_DYN_CONNECT_END","_DYN_PAGE_VISIT_START_TIM19","PageViewManager","appInsights","overridePageViewDuration","pageViewPerformanceManager","_logger","queueTimer","itemQueue","pageViewPerformanceSent","firstPageViewSent","_flushChannels","_startTimer","allItems","doFlush","_addQueue","pageView","navigationEntries","timeOrigin","loadEventStart","duration_1","customDuration","pageViewSent","processed","pageViewPerformance","teardown","botAgentNames","_isPerformanceTimingSupported","_isPerformanceTimingDataReady","domainLookupStart","domLoading","_getPerformanceTiming","_getPerformanceNavigationTiming","getEntriesByType","_isPerformanceNavigationTimingSupported","_shouldCollectDuration","durations","isGoogleBot","PageViewPerformanceManager","navigationTiming","network","dom","requestStart","responseEnd","PageVisitTimeManager","pageVisitTimeTrackingHandler","prevPageVisitDataKeyName","currentPageName","currentPageUrl","prevPageVisitTimeData","pageName","pageUrl","prevPageVisitData","pageVisitEndTime","pageVisitDataJsonStr","pageVisitTime","stopPageVisitTimer","currPageVisitDataStr","PageVisitData","restartPageVisitTimer","Timing","_events","stop","_dispatchEvent","sessionRenewalMs","_chkConfigMilliseconds","sessionExpirationMs","disableExceptionTracking","samplingPercentage","namePrefix","cfgDfString","disableFlushOnBeforeUnload","disableFlushOnUnload","expCfg","inclScripts","expLog","maxLogs","_updateStorageUsage","_debugState","_debugResult","_debugHandled","AnalyticsPlugin","_super","_eventTracking","_pageTracking","_pageViewManager","_pageViewPerformanceManager","_pageVisitTimeManager","_preInitTelemetryInitializers","_isBrowserLinkTrackingEnabled","_browserLinkInitializerAdded","_enableAutoRouteTracking","_historyListenerAdded","_disableExceptionTracking","_autoExceptionInstrumented","_enableUnhandledPromiseRejectionTracking","_autoUnhandledPromiseInstrumented","_extConfig","_autoTrackPageVisitTime","_expCfg","autoRoutePVDelay","_prevUri","_currUri","_evtNamespace","_errorHookCnt","_base","_addHook","throwInternal","processNext","trackEvent","EventTelemetry","startTrackEvent","stopTrackEvent","trackTrace","trackMetric","metric","inPv","refUri","referrer","trackPageViewPerformance","inPvp","startTrackPage","stopTrackPage","measurement","loc","theError","exceptionPartB","scriptsInfo","scripts","getElementsByTagName","crossOrigin","hasAttribute","referrerPolicy","info","findAllScripts","logs","trackException","URL","isCrossOriginError","_sendCORSException","errorString","telemetryInitializer","initialize","browserLinkPaths_1","dropBrowserLinkRequests","envelope","remoteData","_addDefaultTelemetryInitializers","_populateDefaults","PageName","PageUrl","average","sampleCount","trackPageVisitTime","pageViewItem","locn","rsp","_location","_getReason","_addUnhandledPromiseRejectionTracking","_updateExceptionTracking","win","_history","strUndefined","_popstateHandler","_locationChangeHandler","distributedTraceCtx","getTraceCtx","_getDistributedTraceCtx","traceLocationName","_addHistoryListener","_updateLocationChange","_doTeardown","__extends","Version","STR_PROMISE","REJECTED","doAwaitResponse","doAwait","rejected","resolveFn","rejectFn","finallyFn","doFinally","finally","_promiseDebugEnabled","_hasInitEvent","STRING_STATES","DISPATCH_EVENT","_hasInitEventFn","_hasPromiseRejectionEvent","NODE_UNHANDLED_REJECTION","UNHANDLED_REJECTION","_currentPromiseId","_uniquePromiseId","dumpFnObj","_createPromise","newPromise","processor","executor","_settledValue","_thePromise","additionalArgs","_state","_hasResolved","_queue","_parentId","_handled","_unHandledRejectionHandler","_then","onResolved","onRejected","thenPromise","_processQueue","_strState","_createSettleIfFn","newState","allowState","_notifyUnhandledRejection","emit","populateEvent","useNewEvent","theEvt","emitEvent","onFinally","thenFinally","catchFinally","thePromise","stateFn","resultFn","handledFn","_addDebugState$1","_rejectFn","_createAllPromise","values_1","pending_1","_createAllSettledPromise","processItem","syncItemProcessor","createAsyncPromise","callbackTimeout","timeoutItemProcessor","_promiseCls","createNativePromise","PrmCls","_allSyncSettledCreator","createSyncPromise","_promiseCreator","createPromise","createAllPromise","_DYN_FEATURE_OPT_IN","_DYN_ON_CFG_CHANGE_RECEIV0","_DYN_NON_OVERRIDE_CONFIGS","_DYN_SCHEDULE_FETCH_TIMEO1","replaceByNonOverrideCfg","nonOverrideConfigs","curLevel","maxLevel","exceedMaxLevel","curCfg_1","nonOverrideVal","ON","OFF","applyCdnfeatureCfg","cdnCfg","optInMap","cdnConfig_1","featureVal","userOptInDetails","cdnFt","cdnM","cdnOnV","onCfg","cdnOffV","offCfg","userFt","userM","userOnV","userOffV","blockCdn","blockCdnCfg","onFld","offFld","onV","offV","resolveCdnFeatureCfg","val","ftVal","dVal","_overrideCdnCfgByFeature","EVENT_NAME","udfVal","_defaultConfig","syncMode","blkCdnCfg","customEvtName","cfgUrl","overrideSyncFn","overrideFetchFn","instrumentationKey","connectionString","CfgSyncPlugin","_extensionConfig","_mainConfig","_evtName","_cfgUrl","_timeoutHandle","_receiveChanges","_broadcastChanges","_blkCdnCfg","_fetchTimeout","_retryCnt","_onCfgChangeReceive","_nonOverrideConfigs","_fetchFn","_overrideFetchFn","_overrideSyncFn","_paused","_setCfg","isAutoSync","_sendCfgsyncEvents","updateCfg","_eventOff","global_1","_updateEventListenerName","global_2","cfgEvent","newCfg","_replaceTartgetByKeys","_addEventListener","_fetchSender","oncomplete","fetchFn","Request","_doOnComplete","_xhrSender","xhr_1","XMLHttpRequest","open","onreadystatechange","readyState","DONE","onerror","ontimeout","send","_onFetchComplete","JSON_1","_setupTimer","_cfg","unref","_clearScheduledTimer","preBlkCdn","newEvtName","_getFetchFnInterface","pause","resume","setCfg","updateEventListenerName","_disableEvents","ActiveStatus","NONE","PENDING","INACTIVE","ACTIVE","_noResponseQs","STR_POST_METHOD","SenderPostManager","_enableSendPromise","_isInitialized","_diagLog","_isOneDs","_onCompleteFuncs","_disableCredentials","_fetchCredentials","_fallbackInst","_disableXhr","_disableBeacon","_disableBeaconSync","_disableFetchKeepAlive","_addNoResponse","_timeoutWrapper","_syncFetchPayload","_sendCredentials","_onError","_onNoPayloadUrl","_doBeaconSend","plainTextBatch","Blob","_beaconSender","onRetry","beaconOnRetry","resolveFunc","rejectFunc","disableXhrSync","endPointUrl","urlString","withCredentials","isSync","_wrapSetXhrProp","openXhr","_doOnReadyFunc","onReadyFunc","xhrOnComplete","headerName","onload","_doFetchSender","requestHeaders","Headers","batchLength","ignoreResponse","responseHandled","append","credentials","keepalive","_handleError","onCompleteFunc","fetchOnComplete","response_1","resp","statusText","_xdrSender","onloadFunc","xdrOnComplete","onprogress","hostingProtocol","endpoint","SetConfig","senderOnCompleteCallBack","disableCredentials","fetchCredentials","enableSendPromise","disableXhr","disableBeacon","disableBeaconSync","timeWrapper","addNoResponse","disableFetchKeepAlive","sendPOST","getSyncFetchPayload","getSenderInst","transports","syncSupport","transportType","sendPostFunc","_transport","_isSync","_getSenderInterface","getFallbackInst","runTargetUnload","doUnloadAll","targets","parseResponse","itemsAccepted","itemsReceived","_aiNameFunc","baseName","aiName","_aiApplication","_aiDevice","_aiLocation","_aiOperation","_aiSession","_aiUser","_aiCloud","_aiInternal","ContextTagKeys","applicationVersion","applicationBuild","applicationTypeId","applicationLayer","deviceId","deviceIp","deviceLanguage","deviceLocale","deviceModel","deviceFriendlyName","deviceNetwork","deviceNetworkName","deviceOEMName","deviceOS","deviceOSVersion","deviceRoleInstance","deviceRoleName","deviceScreenResolution","deviceType","deviceMachineName","deviceVMName","deviceBrowser","deviceBrowserVersion","locationIp","locationCountry","locationProvince","locationCity","operationId","operationName","operationParentId","operationRootId","operationSyntheticSource","operationCorrelationVector","sessionId","sessionIsFirst","sessionIsNew","userAccountAcquisitionDate","userAccountId","userStoreRegion","userAuthUserId","userAnonymousUserAcquisitionDate","userAuthenticatedUserAcquisitionDate","cloudName","cloudRole","cloudRoleVer","cloudRoleInstance","cloudEnvironment","cloudLocation","cloudDeploymentUnit","internalNodeName","internalSdkVersion","internalAgentVersion","internalSnippet","internalSdkSrc","Extensions","CtxTagKeys","Envelope","sampleRate","Data","STR_DURATION","_DYN_TAGS","_DYN_DEVICE_TYPE","_DYN__GET","_DYN_ENQUEUE","_DYN_EVENTS_LIMIT_IN_MEM","_DYN_ITEM","_DYN_EMIT_LINE_DELIMITED_0","_DYN_CLEAR","_DYN_MARK_AS_SENT","_DYN_CLEAR_SENT","_DYN_BUFFER_OVERRIDE","_DYN__BUFFER__KEY","_DYN__SENT__BUFFER__KEY","_DYN_CONCAT","_DYN__MAX__BUFFER__SIZE","_DYN_TRIGGER_SEND","_DYN__SENDER","_DYN_ENDPOINT_URL","_DYN_CUSTOM_HEADERS","_DYN_MAX_BATCH_SIZE_IN_BY1","_DYN_ONUNLOAD_DISABLE_BEA2","_DYN_IS_BEACON_API_DISABL3","_DYN_ALWAYS_USE_XHR_OVERR4","_DYN_DISABLE_XHR","_DYN_ENABLE_SESSION_STORA5","_DYN__BUFFER","_DYN_ONUNLOAD_DISABLE_FET6","_DYN_DISABLE_SEND_BEACON_7","_DYN_ENABLE_SEND_PROMISE","_DYN_GET_SENDER_INST","_DYN_UNLOAD_TRANSPORTS","_DYN_CONVERT_UNDEFINED","_DYN_MAX_BATCH_INTERVAL","_DYN_SERIALIZE","_DYN__ON_ERROR","_DYN__ON_PARTIAL_SUCCESS","_DYN__ON_SUCCESS","_DYN_ITEMS_ACCEPTED","_DYN_ORI_PAYLOAD","_DYN_BASE_TYPE","_DYN_SAMPLE_RATE","_DYN_EVENTS_SEND_REQUEST","_DYN_GET_SAMPLING_SCORE","strBaseType","strBaseData","strProperties","strTrue","_setValueIf","_extractPropsAndMeasurements","_convertPropsUndefinedToCustomDefinedValue","customUndefinedValue","_createEnvelope","iKeyNoDashes","envTags","itmExt","itmTags","extUser","user","authId","localId","extApp","app","sesId","extDevice","device","deviceClass","ip","model","web","browserLang","browserVer","browser","envData","envBaseData","envProps","screenRes","userConsent","extOs","os","osVer","extTrace","tgs","theTags","EnvelopeCreator","_extractPartAExtensions","EnvelopeCreatorInit","EventEnvelopeCreator","customMeasurements","eventData","BaseSendBuffer","_buffer","_bufferFullMessageSent","_maxRetryCnt","maxRetryCnt","_set","cnt","getItems","batchPayloads","payloads","payloadStr_1","newLogger","canUseSessionStorage","newBuffer","SessionStorageSendBuffer","ArraySendBuffer","PREVIOUS_KEYS","_namePrefix","bufferItems","_getBuffer","itemsInSentBuffer","previousItems","_getItemsFromPreviousKey","prefixEvents","_getPreviousEvents","notDeliveredItems","_removePayloadsFromBuffer","payloadStr","prefixedKey","_getBufferBase","bufferJson","buffer_1","_setBuffer","transFormedItems_1","internalItem","BUFFER_KEY","sentElements","unsentItems","sentItems","SENT_BUFFER_KEY","MAX_BUFFER_SIZE","Serializer","_serializeObject","circularReferenceCheck","output","_serializeStringMap","_serializeArray","contract","isPresent","isObj","expectedType","HashCodeScoreGenerator","getHashCodeScore","getHashCode","INT_MAX_VALUE","abs","SamplingScoreGenerator","hashCodeGenerator","Sample","samplingRate","samplingScoreGenerator","isSampledIn","_getResponseText","defaultAppInsightsChannelConfig","disableTelemetry","isRetryDisabled","httpXHROverride","retryCodes","EnvelopeTypeCreator","currentContextId","pageType","isLoggedIn","pageViewData","exData","baseMetricData","remoteDepData","responseCode","Sender","_consecutiveErrors","_retryAt","_serializer","_stamp_specific_redirects","_syncUnloadSender","_offlineListener","_endpointUrl","_orgEndpointUrl","_maxBatchSizeInBytes","_beaconSupported","_beaconOnUnloadSupported","_beaconNormalSupported","_customHeaders","_disableTelemetry","_instrumentationKey","_convertUndefined","_isRetryDisabled","_maxBatchInterval","_sessionStorageUsed","_bufferOverrideUsed","_alwaysUseCustomSend","_fetchKeepAlive","_xhrSend","_fallbackSend","_disableBeaconSplit","_sendPostMgr","_retryCodes","_xdrOnLoad","_xhrReadyStateChange","countOfItemsInPayload","_checkResponsStatus","responseURL","_getPayloadArr","_validate","diagLogger","_sample","_getEnvelope","defaultEnvelopeIkey","aiEnvelope","constructEnvelope","doNotSendItem","callBack","_serialize","valid","_batch","_createPayload","_getHeaders","_doSend","sendInterface","markAsSent","payloadData","_getPayload","_onSuccess","_getOnComplete","_checkMaxSize","incomingPayload","incomingSize","responseUrl","_appId","appId","_checkAndUpdateEndPointUrl","_resendPayload","_isRetriable","_doUnloadSend","_isStringArr","_fetchKeepAliveSender","payloadSize","linearFactor","payload_1","delayInSeconds","SlotDelayInSeconds","backOffSlot","pow","backOffDelay","retryAfterTimeSpan","_setRetryTime","retryInterval","timerValue","statusCode","sendReason","onunloadFlush","addHeader","parentEvtNamespace","_navigator","_isListening","listenerList","rState","onLine","uState","_currentState","calCurrentState","_enableEvents","ononline","_setOnline","_setOffline","listnerNoticeCheck","offlineState","isListening","addListener","setOnlineState","createOfflineListener","senderConfig","curExtUrl","coreUrl","activeStatus","customHeader","bufferOverride","shouldUpdate","disableValidation","disableInstrumentationKeyValidation","_validateInstrumentationKey","sendPostConfig","onCompleteFuncs","resValue","canSend","internalPayload","droppedPayload","thePayload","_onBeaconRetry","_getSendPostMgrConfig","customInterface","httpInterface","syncInterface","xhrInterface","syncTransports","payloadItem","isCompletelyIdle","getOfflineListener","forcedSender","sendRequest","_getNotifyMgr","_notifySendRequest","ieVer","getOfflineSupport","getUrl","createPayload","shouldProcess","retry","errors_1","extracted","_onPartialSuccess","orig","convertUndefined","parseConnectionString","kvPairs","fields","kv","kvParts","endpointsuffix","locationPrefix","ThrottleMgr","_config","_localStorageObj","_isTriggered","_isReady","_isSpecificDaysGiven","_flushMessage","msgID","saveUnsentMsg","_getCfgByKey","maxValue","_canSampledIn","localStorageObj","_getLocalStorageObjByKey","canThrottle","_canThrottle","throttled","isTriggered","_isTrigger","maxSendNumber","localStorageName","_getLocalStorageName","_resetLocalStorage","_sendMessage","isThrottled","throttleNum","_getQueueByKey","_setCfgByKey","curCfg","configInterval","daysOfMonth","interval","monthInterval","dayInterval","_getIntervalConfig","canUseLocalStorage","curDate","_getThrottleDate","monthCheck","monthExpand","getUTCFullYear","getUTCMonth","_checkInterval","dayCheck","daySpan","msgKey","fix","dateStr","getDate","storageName","curObj","storageObj","preTriggerDate","_getLocalStorageObj","isTrigger","_isTriggeredOnCurDate","addUnloadHook","coreConfig","throttleMgrCfg","localObj","isReady","flushAll","result_1","isFlushed","onReadyState","sendMessage","perfEvtsSendAll","_runScheduledListeners","asyncNotifications","_runListeners","NotificationManager","_listeners","_asyncNotifications","rn_1","waiting","_finishUnload","asyncUnload","TelemetryInitializerPlugin","_initializers","addTelemetryInitializer","theInitializer","_addInitializer","telemetryInitializersCount","_runInitializers","strValidationError","strSdkUnloadingError","diagnosticLogInterval","_createPerfManager","notificationMgr","_isPluginPresent","exists","_deepMergeConfig","newValues","_findWatcher","newWatcher","theListener","_initDebugListener","unloadContainer","notificationManager","debugListener","getDebugListener","AppInsightsCore","_configHandler","_eventQueue","_notificationManager","_perfManager","_cfgPerfManager","_cookieManager","_pluginChain","_configExtensions","_channelConfig","_channels","_isUnloading","_telemetryInitializerPlugin","_internalLogsEventName","_unloadHandlers","_traceCtx","_cfgListeners","_extensions","_pluginVersionStringArr","_pluginVersionString","_activeStatus","_endpoint","_initInMemoMaxSize","_isStatusSet","_internalLogPoller","_internalLogPollerListening","_forceStopInternalLogPoller","_setStatus","_releaseQueues","releaseQueue","_startLogPoller","alwaysStart","_addUnloadHook","createTimeout","_flushInternalLogs","_setPluginVersions","thePlugins","_addPluginVersions","channels","cfgExtensions","_createTelCtx","theCtx","_getPluginChain","_initPluginChain","theExtensions","channelPriority","allExtensions","coreExtensions","extPriorities","extPriority","_validateExtensions","_getPlugin","pluginIdentifier","theExt","channelHosts","getChannel","removeCb","pluginsToRemove","_removePlugins","removeComplete","newConfigExtensions","newChannelConfig","newQueue","cbTimeout","doneIterating","cbTimer","doCallback","handled_1","_updateHook","_logOrThrowError","_notifyInvalidEvent","_setPendingStatus","rootCfg","initInMemoMaxSize","ikey","promises","initTimeout","initTimeOut","allPromises","ikeyRes","endpointRes","prevCfgPerfMgr","enablePerfMgr","createPerfMgr","_initPerfManager","__spreadArray","teeController","unloadHdl","_registerDelayedCfgListener","getChannels","controls","getNotifyMgr","setCookieMgr","setPerfMgr","eventCnt","eventQueue","unloadComplete","flushComplete","processUnloadCtx","_doUnload","addPlugin","replaceExisting","addCb","existingPlugin","_addPlugin","removedPlugins_1","mergeExisting","oldCfg","createNew","createDistributedTraceContext","setTraceCtx","traceCtx","onCfgChange","unloadHook","_createUnloadHook","fnd","_addDelayedCfgListener","getWParam","enableWParam","STR_PROPERTIES","_DYN_REQUEST_URL","_DYN_INST","_DYN_CONTEXT","_DYN_ABORTED","_DYN_TRACE_ID0","_DYN_SPAN_ID1","_DYN_INCLUDE_CORRELATION_2","_DYN_GET_ABSOLUTE_URL","_DYN_REQUEST_HEADERS","_DYN_TRACK_DEPENDENCY_DAT3","_DYN_ENABLE_REQUEST_HEADE4","_DYN_ENABLE_AJAX_ERROR_ST5","_DYN_ENABLE_AJAX_PERF_TRA6","_DYN_MAX_AJAX_CALLS_PER_V7","_DYN_EXCLUDE_REQUEST_FROM8","_DYN_ADD_REQUEST_CONTEXT","_DYN_DISABLE_AJAX_TRACKIN9","_DYN_AJAX_PERF_LOOKUP_DEL10","_DYN_DISABLE_FETCH_TRACKI11","_DYN_ENABLE_RESPONSE_HEAD12","_DYN_STATUS_TEXT","_DYN_HEADER_MAP","_DYN_OPEN_DONE","_DYN_SEND_DONE","_DYN_REQUEST_SENT_TIME","_DYN_ABORT_DONE","_DYN_GET_TRACE_ID","_DYN_GET_TRACE_FLAGS","_DYN_ERROR_STATUS_TEXT","_DYN_STATE_CHANGE_ATTACHE13","_DYN_RESPONSE_TEXT","_DYN_RESPONSE_FINISHED_TI14","_DYN__CREATE_TRACK_ITEM","_DYN_RESPONSE","_DYN_GET_ALL_RESPONSE_HEA15","_DYN_GET_PART_APROPS","_DYN_PERF_MARK","_DYN_PERF_TIMING","_DYN_AJAX_DIAGNOSTICS_MES16","_DYN_CORRELATION_CONTEXT","_DYN_AJAX_TOTAL_DURATION","_DYN_EVENT_TRACE_CTX","_calcPerfDuration","resourceEntry","_setPerfDuration","_setPerfValue","strPerf","XHRMonitoringState","setRequestHeaderDone","ajaxRecord","requestHeadersSize","responseReceivingDuration","callbackDuration","requestSize","responseStartedTime","callbackFinishedTime","endTime","xhrMonitoringState","clientFailure","getAbsoluteUrl","urlGetAbsoluteUrl","getPathName","ajaxType","enableRequestHeaderTracking","getResponse","ajaxTotalDuration","requestSentTime","responseFinishedTime","dependency","ajaxData","propsSet","strName","strStart","strEnd","strDomainLookup","strConnect","strRedirect","strRequest","strResponse","strStartTime","strDomainLookupStart","strDomainLookupEnd","strConnectStart","strConnectEnd","strRequestStart","strRequestEnd","strResponseStart","strResponseEnd","strRedirectStart","strRedirectEnd","strTransferSize","strEncodedBodySize","strDecodedBodySize","strServerTiming","serverTiming","server_1","perfAttempts","_populatePerfData","headerMap","responseHeaders","responseType","partA","traceExt","strDiagLog","AJAX_DATA_CONTAINER","STR_FETCH","ERROR_HEADER","ERROR_PREFIX","ERROR_POSTFIX","ERROR_NOT_SENT","CORRELATION_HEADER_ERROR","CUSTOM_REQUEST_CONTEXT_ERROR","FAILED_TO_CALCULATE_DURATION_ERROR","_markCount","_getAjaxData","ajaxDataId","_isHeaderSet","_getFailedAjaxDiagnosticsMessage","_throwInternalCritical","ajaxMonitorInstance","_throwInternalWarning","_createErrorCallbackFunc","internalMessage","ajaxDiagnosticsMessage","_ajaxDataId","_indexOf","_addHandler","container","theHandler","_processDependencyContainer","BLOB_CORE","DfltAjaxCorrelationHeaderExDomains","_internalExcludeEndpoints","distributedTracingMode","maxAjaxPerfLookupAttempts","ignoreHeaders","addIntEndpoints","AjaxMonitor","_fetchInitialized","_xhrInitialized","_currentWindowHost","_enableRequestHeaderTracking","_enableAjaxErrorStatusText","_trackAjaxAttempts","_isUsingW3CHeaders","_isUsingAIHeaders","_markPrefix","_enableAjaxPerfTracking","_maxAjaxCallsPerView","_enableResponseHeaderTracking","_disabledUrls","_disableAjaxTracking","_disableFetchTracking","_excludeRequestFromAutoTrackingPatterns","_addRequestContext","_dependencyHandlerId","_dependencyListeners","_dependencyInitializers","_ignoreHeaders","_maxAjaxPerfLookupAttempts","_ajaxPerfLookupDelay","_distributedTracingMode","_polyfillInitialized","_canIncludeHeaders","_hookProto","InstrumentProto","_isDisabledRequest","theUrl","theRegex","idx2","_isMonitoredXhrInstance","excludeAjaxDataValidation","ajaxValidation","initialized","_createMarkId","performance_1","mark","markId","getEntriesByName","_findPerfResourceEntry","initiatorType","trackCallback","perfMark","maxAttempts","retryDelay","locateResourceTiming","perfTiming","getEntries","entryType","clearMarks","_getFailedFetchDiagnosticsMessage","_reportFetchMetrics","_reportFetchError","failedProps","errorProps","sysProperties","_reportDependencyInternal","initializers","aborted","strPrototype","xhrData","theOpen","_supportsAjaxMonitoring","req","spanID","xhrRequestData","ajaxDataCntr","_openHandler","_reportXhrError","ajaxResponse","responseHeadersString","getResponseHeader","_getAjaxCorrelationContext","responseHeaderMap_2","_onAjaxComplete","exceptionText","_attachToOnReadyStateChange","hkErr","_addSharedXhrHeaders","_instrumentXhr","_global","_supportsFetch","isPolyfill","polyfill","fetchData","_createFetchRecord","newInit","fetchData_1","fetchDiagnosticsMessage","_getFetchCorrelationContext","responseHeaderMap_1","_instrumentFetch","propExt","_populateContext","trackDependencyData","currentWindowHost","_processDependencyListeners","traceParent","addDependencyListener","dependencyListener","addDependencyInitializer","dependencyInitializer","Application","Device","Internal","unloadHookContainer","sdkExtension","sdkVersion","Location","_DYN_SESSION_MANAGER","_DYN_IS_USER_COOKIE_SET","_DYN_IS_NEW_USER","_DYN_GET_TRACE_CTX","_DYN_TELEMETRY_TRACE","_DYN_APPLY_SESSION_CONTEX0","_DYN_APPLY_APPLICATION_CO1","_DYN_APPLY_DEVICE_CONTEXT","_DYN_APPLY_OPERATION_CONT2","_DYN_APPLY_USER_CONTEXT","_DYN_APPLY_OPERATING_SYST3","_DYN_APPLY_LOCATION_CONTE4","_DYN_APPLY_INTERNAL_CONTE5","_DYN_ACCOUNT_ID","_DYN_GET_SESSION_ID","_DYN_NAME_PREFIX","_DYN_USER_COOKIE_POSTFIX","_DYN_ID_LENGTH","_DYN_GET_NEW_ID","_DYN_AUTOMATIC_SESSION","_DYN_AUTHENTICATED_ID","_DYN_ACQUISITION_DATE","_DYN_RENEWAL_DATE","_DYN_JOIN","_DYN_COOKIE_SEPARATOR","_DYN_AUTH_USER_COOKIE_NAM7","Session","_SessionManager","_storageNamePrefix","_cookieUpdatedTimestamp","_sessionExpirationMs","_sessionRenewalMs","sessionCookiePostfix","_initializeAutomaticSessionWithData","session","sessionData","sessionReset","acqMs","renewalMs","_setCookie","nowMs","acq","renewalPeriodMs","acqTimeLeftMs","cookie","isExpired","storageValue","_initializeAutomaticSession","timeSinceAcqMs","timeSinceRenewalMs","getNewId","automaticSession","_renew","backup","renewal","_setStorage","TelemetryTrace","parentId","_validateUserInput","User","isNewUser","isUserCookieSet","userCookiePostfix","userCookieName","_generateNewId","_setUserCookie","_generateNewCookie","utlRemoveStorage","authCookie","authCookieString","acqStr","accountAcquisitionDate","setAuthenticatedUserContext","authenticatedUserId","accountId","storeInCookie","clearAuthenticatedUserContext","cookieSeparator","authUserCookieName","strExt","strTags","_removeEmpty","_nullResult","undefString","TelemetryContext","previousTraceCtx","application","internal","autoSession","build","agentVersion","snippetVer","sdkSrc","applyWebContext","cleanUp","nullValue","isBrowserLinkTrackingEnabled","PropertiesPlugin","_distributedTraceCtx","_previousTraceCtx","_disableUserInitMessage","disableUserInitMessage","_unloadHooks","breezeChannel","theContext","userCtx","_processTelemetryInternal","_c","_internalSdkSrc","_AUTHENTICATED_USER_CONTEXT","_TRACK","STR_SNIPPET","STR_FLUSH","STR_ADD_TELEMETRY_INITIALIZER","STR_POLL_INTERNAL_LOGS","STR_GET_PLUGIN","STR_EVT_NAMESPACE","STR_TRACK_EVENT","STR_TRACK_TRACE","STR_TRACK_METRIC","STR_TRACK_PAGE_VIEW","STR_TRACK_EXCEPTION","STR_TRACK_DEPENDENCY_DATA","STR_SET_AUTHENTICATED_USER_CONTEXT","STR_CLEAR_AUTHENTICATED_USER_CONTEXT","_DYN_QUEUE","_DYN_CONNECTION_STRING","_DYN_INSTRUMENTATIONKEY0","_DYN_USER_OVERRIDE_ENDPOI1","_DYN_ONUNLOAD_FLUSH","_DYN_ADD_HOUSEKEEPING_BEF2","_DYN_SEND_MESSAGE","_ignoreUpdateSnippetProperties","IKEY_USAGE","CDN_USAGE","SDK_LOADER_VER","default_throttle_config","defaultConfigValues","extensionConfig","AppInsightsSku","snippet","_sender","_snippetVersion","_houseKeepingNamespace","_core","_analyticsPlugin","_cfgSyncPlugin","_throttleMgr","_iKeySentMessage","_cdnSentMessage","_sdkVerSentMessage","sv","_removePageEventHandlers","removePageHideEventListener","DependenciesPlugin","configCs","_parseCs","curCs","parsedCs","ikeyPromise","cs","ingest","flushDone","loadAppInsights","legacyMode","throwUnsupported","isModule","cdns","scrpt","currentScript","url_1","src_1","_findSdkSourceFile","_updateSnippetProperties","emptyQueue","defaultEnable","chkSet","_loop_1","proxyAssign","length_1","appInsightsInstance","performHousekeeping_1","loadedPlugin","propertiesPlugin","_sessionManager","added_1","analyticsPlugin","excludePageUnloadEvents","disablePageUnloadEvents","product","isReactNative","getSender","SeverityLevel","Verbose","Information","Warning","defaultReactExtensionConfig","ReactPlugin","_unlisten","_pageViewTimer","_pageViewTracked","_getAnalytics","locationListener","pageViewTelemetry","trackPageView","getAppInsights","asyncCallback","getProp","setProp","objDefineAccessors","reactPlugin","browserHistory","ApplicationInsights","maxBatchInterval","disableFetchTracking","styleSheet","cssText","Mt","pt","getAutoCloseDelay","$t","$","enter","exit","appendPosition","collapse","collapseDuration","preventExitTransition","nodeRef","isIn","playToast","zt","Bt","classList","Rt","onExited","scrollHeight","requestAnimationFrame","minHeight","padding","margin","ut","content","tt","containerId","toastId","theme","isLoading","icon","removalReason","Ut","Ft","closeToast","toastProps","isPaused","hide","controlledProgress","progress","rtl","animationDuration","animationPlayState","Tt","defaultClassName","et","role","Xt","genToastId","_t","onClose","updateId","staleId","onOpen","observe","toggle","removeToast","toasts","clearQueue","buildToast","shouldIgnoreToast","toastStyle","fromEntries","toastClassName","progressClassName","autoClose","deleteToast","closeButton","setProps","setToggle","isToastActive","st","Vt","bt","hasContainers","ht","mt","nt","rt","Et","Wt","At","kt","St","removalDistance","canCloseOnClick","canDrag","didMove","pauseOnHover","closeOnClick","draggableDirection","collapseAll","removeProperty","xt","Zt","pauseOnFocusLoss","hasFocus","onPointerDown","draggable","offsetWidth","draggablePercent","offsetHeight","onPointerUp","bottom","getBoundingClientRect","onMouseEnter","onMouseLeave","pauseToast","toastRef","eventHandlers","loading","dismiss","dark","clearWaitingQueue","getToast","vt","onChange","play","Ot","Jt","Svg","viewBox","spinner","Nt","eo","oo","lo","wt","hideProgressBar","ariaLabel","dt","fo","co","ot","fillRule","yt","tabIndex","customProgressBar","_o","hotKeys","Lt","To","getToastToRender","Kt","Yt","newestOnTop","It","Dt","collapsed","pos","yo","ct","pointerEvents","showExceptionNotification","toast","_jsxs","_jsx","showValidationErrorNotification","simpleCall","operation","withRetry","apiExceptionDetails","getApiExceptionDetails","showToastNotification","unitOfWorkCorrelation","ErrorTypeEnum","transientErrorCodes","apiException","getErrorType","ServiceUnavailable","InternalServerError500","NotAuthenticated401","NotAuthorised403","BadRequest400","NotFound404","Conflict409","ServerTooBusy429","UnexpectedError","toastHelper","workerSaga","query","client","getTitleDetailsResponseAction","getTitleMapDetailsResponseAction","getOpggsApplicationTrackingResponseAction","getOpggsApplicationTrackingDetailsResponseAction","getFeatureSwitches","getPortalLinks","featureSwitchResponse","refreshStaticConfigurationResponseAction","getLicenceDetailsResponseAction","getOeiApplicationTrackingResponseAction","getOeiApplicationTrackingDetailsResponseAction","TelemetryService","vm","loadQuery","updateCommand","initialiseSagaMiddleware","createSagaMiddleware","composeWithDevToolsDevelopmentOnly","middlewares","_dispatch","middlewareAPI","applyMiddleware","reduxImmutableStateInvariant","AITrackedComponentBase","_mountTimestamp","_firstActiveTimestamp","_idleStartTimestamp","_lastActiveTimestamp","_totalIdleTime","_idleCount","_idleTimeout","trackActivity","lastIdleTime","_reactPlugin","_componentName","_intervalId","setInterval","clearInterval","metricData","getEngagementTimeSeconds","additionalProperties","TelemetryProvider","class_1","onKeyDown","onMouseMove","onScroll","onMouseDown","onTouchStart","onTouchMove","withAITracking","en","_unicodeVersion","_cldrVersion","language","territory","numbers","decimal","percentSign","plusSign","minusSign","exponential","superscriptingExponent","perMille","infinity","nan","timeSeparator","approximatelySign","groupSize","scientific","percent","currency","currencies","BGN","EUR","USD","localeCurrency","accounting","calendar","gmtFormat","gmtZeroFormat","dateTimeFormats","full","long","medium","short","availableFormats","Bhm","Bhms","EBhm","EBhms","Ed","Ehm","EHm","Ehms","EHms","Gy","GyMd","GyMMM","GyMMMd","GyMMMEd","hm","Hm","hms","Hms","hmsv","Hmsv","hmv","Hmv","MEd","MMM","MMMd","MMMEd","MMMMd","yM","yMd","yMEd","yMMM","yMMMd","yMMMEd","yMMMM","yQQQ","yQQQQ","timeFormats","dateFormats","abbreviated","narrow","wide","months","quarters","dayPeriods","midnight","am","noon","pm","morning1","afternoon1","evening1","night1","eras","dateFields","era","year","quarter","weekOfMonth","day","dayOfYear","weekday","weekdayOfMonth","dayperiod","minute","second","zone","millisecond","supplemental","likelySubtags","currencyData","region","US","_from","weekData","firstDay","weekendStart","weekendEnd","formatRegExp","IntlError","formatMessage","flattenValues","formattedMessage","toIntlErrors","cldr","defaultData","getLocaleInfo","localeInfo","suffixes","fullName","localeFullName","availableLocaleInfo","NoLocale","DECIMAL","CURRENCY","ACCOUNTING","PERCENT","SCIENTIFIC","CURRENCY_PLACEHOLDER","NUMBER_PLACEHOLDER","POINT","DEFAULT_LOCALE","LATIN_NUMBER_FORMATS","patternRegExp","cldrCurrencyRegExp","getPatterns","getGroupSize","loadCurrencyUnitPatterns","currencyInfo","currencyFormats","loadNumbersInfo","standard","predefinedDatePatterns","YEAR_REGEX","SHORT_DATE","datePatterns","names","getCalendarNames","formatType","formats","loadCalendarNames","localeCalendar","eraNameMap","eraAbbr","eraNames","eraNarrow","eraFormatName","getEraNames","loadCalendarDateFields","fieldInfo","getPredefinedFormat","pathIdx","loadCalendarPatterns","cldrCalendar","pattern$1","loadCalendarInfo","gregorian","localeTerritory","likelyName","variant","territoryFromName","MILLISECOND","placeholderPattern","extractUnit","unit","loadUnits","units","loadLocale","dateFormatNames","nameType","standAlone","lowerNameType","formatNames","lowerArray","lowerObject","cloneLower","parseRangeDate","NoCurrency","NoCurrencyDisplay","NoSupplementalCurrency","NoCurrencyRegion","NoValidCurrency","GLOBAL_CURRENCIES","getCurrencyInfo","throwIfNoValid","currencyDisplayInfo","lengthComparer","territoryCurrencyCode","regionCurrencies","currencyCode","latestValidUntil","latestValidUntilRange","latestStillValid","latestStillValidDate","_tender","_to","validFrom","validTo","stillValidDate","regionCurrency","DAYS_OF_WEEK","NoWeekData","NoFirstDay","isNegativeZero","formatCurrencySymbol","currencyDisplay","groupInteger","decimalIndex","groupSizes","integerEnd","integer","integerLength","newGroupSize","isCurrencyStyle","digits","padString","decimals","toFixed","trailingZeroRegex","fractionOptions","currencyFractions","minimumFractionDigits","maximumFractionDigits","isCurrency","fractions","_digits","currencyFractionOptions","standardNumberFormat","toExponential","negative","negativeZero","fraction","minimumIntegerDigits","formattedValue","useGrouping","currencyUnitPattern","applyPattern","literalRegExp","setStyleOptions","formatOptions","setFormatLiterals","literals","quoteChar","literal","SHARP","ZERO","trailingZerosRegExp","trailingPointRegExp","commaRegExp","roundNumber","zeroIndex","sharpIndex","hasZero","hasSharp","trailingZeros","lastZero","trimRegex","trimTrailingZeros","setValueSpecificFormat","hasNegativeFormat","zeroFormat","isConstantFormat","placeholderIndex","index1","index2","applyCustomFormat","lastZeroIndex","hasGroup","replacement","replacePlaceHolders","replaceStyleSymbols","replaceLiterals","customNumberFormat","setGroupOptions","setPlaceholderIndices","standardFormatRegExp","formatAndPrecision","standardFormatOptions","formatNumber","exponentRegExp","nonBreakingSpaceRegExp","cleanNegativePattern","cleanCurrencyNumber","displays","currencyDisplays","cleanNumber","parseNumber","isPercent","cleanLiterals","negativeCurrency","currencyNumber","negativeSignIndex","isNegative","strNumber","pointIndex","fractionDigits","divideBy100","formatString","LENGHT_DELTA","PENALTIES","VALUE_FORMAT_LENGTH","numeric","TIME_SPECIFIERS_REGEX","DATE_OPTIONS_MAP","specifier","getSpecifier","hour12","STAND_ALONE_SPECIFIERS","specifiersRegex","resolvedFormats","getSpecifierRegex","skeletonSpecifiers","skeleton","character","findBestMatch","specifiers","bestMatches","specifiersLength","maxScore","MAX_VALUE","currentFormat","score","idx$1","bestMatch","matchSpecifier","skeletonFormat","timeStartIndex","dateSkeleton","timeSkeleton","cacheFormat","datePattern","option","spcifier","skeletonFromOptions","dateNameType","formatLength","fun","getMonth","MONTH","HOUR","ZONE","WEEKDAY","QUARTER","DATE_FIELD_MAP","dateFormatRegExp","formatMonth","formatQuarter","formatTimeZone","shortHours","optionalMinutes","localizedName","zZeroOffset","getTimezoneOffset","sign","hoursMinutes","minutes","formatDayOfWeek","firstDayIndex","formatDayOfWeekIndex","getDay","formatters","formatDate","convertTimeZone","fromOffset","toOffset","fromLocalOffset","offsetDate","toLocalOffset","getFullYear","getHours","getMinutes","getSeconds","milliseconds","getMilliseconds","timeZoneOffsetRegExp","dateRegExp","offsetRegExp","numberRegExp","numberRegex","leadingSpacesRegex","trailingSpacesRegex","standardDateFormats","FORMATS_SEQUENCE","outOfRange","lookAhead","getNumber","valueIdx","getIndexByName","nameLength","matchLength","matchIdx","checkLiteral","parseTimeZoneOffset","noSeparator","zLiteral","UTC","NoGMTInfo","calendarGmtFormats","hoursMatch","minutesMatch","hoursOffset","minutesOffset","parseMonth","parseDayOfWeek","dayOfWeek","parsers","addFormatSpaces","parseExact","hours","seconds","pmHour","hasTime","setHours","adjustDST","setFullYear","createDate","parseMicrosoftDateFormat","tzoffset","parseMicrosoftDateOffset","parseDate","parseFormats","defaultFormats","currentYear","periodFormats","shortFormat","invalid","NAME_TYPES","minLength","LITERAL","addLiteral","lastPart","isHour12","placeholderFormat","_0x50aaef","_0x10f4b0","_0x10f4","_0x421c90","_0x145713","_0x1457","_0x2c6af5","_0x1b5a14","_0x1aecb4","_0x5ea27f","_0x25dc8b","_0x27d11b","_0x46c2e8","_0x29c8dd","_0xcce210","_0x2181c6","_0x4e0ecf","_0x1a2fc4","decodeURIComponent","_0x1b62be","validatePackage","_0x401145","_0x379487","_0x13003c","_0x487465","_0x5ac69b","_0x12f1b9","_0x404bc6","KendoLicensing","_0x21bd47","_0x408a16","_0x9b416b","_0x45ca78","_0x1880f2","_0x226118","_0x16f928","_0x4632fe","matchProduct","_0x3e0d1b","_0x225671","_0x594e89","_0x2d7e52","_0x415e0e","_0xe99283","_0x4b71d2","_0x1df709","_0x4f97fc","productName","productCodes","publishDate","licensingDocsUrl","dateFieldName","NoDateFieldNames","fieldNameInfo","splitDateFormat","patternLength","numberSymbols","toLanguageString","intl","localization","getIntlService","_number","toNoptaDateString","valueIfNullOrUndefined","NoptaDateFormat","NoptaLocale","toNoptaNumberString","valueString","toNoptaIntegerString","convertBooleanToRadioValue","trueRadioValue","falseRadioValue","convertBytesToString","bytes","NoptaDateFormatForKendo","arguments$1","main","load","auNumbers","auLocalCurrency","auCaGregorian","auDateFields","IntlProvider","GlobalHelpers","useUserToken","useShellState","FeatureSwitch","_featureSwitches","check","featureSwitch","fs","connect","refreshStaticConfigurationRequestAction","debug","_Fragment","defaultKey","useUncontrolled","_extends2","Utils","propsValue","handlerName","_useUncontrolledProp","propValue","wasPropRef","stateValue","isProp","wasProp","useUncontrolledProp","prevState","__reactInternalSnapshotFlag","__reactInternalSnapshot","__suppressDeprecationWarning","useEventCallback","useCommittedRef","DEFAULT_BREAKPOINTS","ThemeContext","prefixes","breakpoints","minBreakpoint","useBootstrapPrefix","defaultPrefix","DivStyledAsH4","divWithClassName","AlertHeading","bsPrefix","as","useMounted","mounted","usePrevious","useButtonProps","rel","isTrivialHref","Button","asProp","buttonProps","Anchor","handleKeyDown","AlertLink","forceReflow","UNMOUNTED","EXITED","ENTERING","ENTERED","EXITING","Transition","initialStatus","appear","isMounting","appearStatus","in","unmountOnExit","mountOnEnter","nextCallback","_proto","updateStatus","nextStatus","cancelNextCallback","getTimeouts","mounting","ReactDOM","performEnter","performExit","appearing","maybeNode","maybeAppearing","timeouts","enterTimeout","safeSetState","onEntered","onEnter","onEntering","onTransitionEnd","_this3","onExit","onExiting","setNextCallback","_this4","active","doesNotHaveTimeoutOrListener","addEndListener","maybeNextCallback","childProps","TransitionGroupContext","getChildRef","major","minor","patch","getReactVersion","getComputedStyle","psuedoElement","ownerWindow","rUpper","msPattern","hyphenateStyleName","hyphenate","supportedTransforms","css","getPropertyValue","isTransform","optionsSupported","onceSupported","wrappedHandler","__once","onceHandler","emulateTransitionEnd","handle","triggerEvent","transitionEnd","mult","parseDuration","removeEmulate","transitionEndListener","triggerBrowserReflow","toFnRef","refA","refB","mergeRefs","TransitionWrapper","childRef","mergedRef","useMergedRefs","attachRef","componentOrElement","normalize","handleEnter","handleEntering","handleEntered","handleExit","handleExiting","handleExited","handleAddEndListener","innerProps","fadeStyles","Fade","transitionClasses","isAppearing","CloseButton","Alert","uncontrolledProps","show","closeLabel","closeVariant","dismissible","handleClose","alert","Heading","sizeMap","small","large","createIconComponent","getSVGData","svgDataByHeight","heights","Icon","arialabelledby","_ref$className","_ref$fill","_ref$size","_ref$verticalAlign","verticalAlign","naturalHeight","naturalHeights","acc","closestNaturalHeight","naturalWidth","labelled","focusable","AlertIcon","BugIcon","CheckIcon","CpuIcon","DashIcon","DownloadIcon","InfoIcon","IssueReopenedIcon","LinkIcon","LinkExternalIcon","LockIcon","MailIcon","PlugIcon","QuestionIcon","ShieldIcon","TelescopeIcon","XCircleFillIcon","dismissableAlertType","_props$canDismiss","setShow","canDismiss","alertType","SupportedBrowserBannerView","supportedBrowsers","DismissableAlertControl","makeEventKey","eventKey","NavbarBrand","MARGINS","getDefaultDimensionValue","dimension","elem","margins","collapseStyles","Collapse","inProp","getDimensionValue","computedDimension","createChainedFunction","scroll","NavbarCollapse","NavbarContext","expanded","NavbarToggle","onToggle","matchersByWindow","getMatcher","targetWindow","matchers","mql","matchMedia","refCount","media","useMediaQuery","setMatches","handleChange","removeListener","useBreakpoint","breakpointValues","and","getMaxQuery","breakpoint","breakpointOrMap","direction","breakpointMap","getMinQuery","createBreakpointHook","xs","sm","xl","xxl","useWillUnmount","valueRef","useUpdatedRef","dataAttr","OPEN_DATA_ATTRIBUTE","handleContainerOverflow","isRTL","modals","getScrollbarWidth","innerWidth","clientWidth","getBodyScrollbarWidth","getElement","setModalAttributes","_modal","removeModalAttributes","setContainerStyle","containerState","paddingProp","scrollBarWidth","removeContainerStyle","modal","modalIdx","isTopModal","useWindow","resolveContainerRef","hasEnteredRef","combinedRef","RTGTransition","transitionProps","useRTGTransitionProps","ImperativeTransition","exited","setExited","onTransition","isInitialRef","handleTransition","useIsomorphicEffect","stale","isStale","onFinish","renderTransition","runTransition","NoopTransition","useModalManager","modalManager","ModalManager","getManager","dialog","backdrop","setDialogRef","setBackdropRef","Modal","keyboard","onBackdropClick","onEscapeKeyDown","backdropTransition","runBackdropTransition","enforceFocus","restoreFocus","restoreFocusOptions","renderDialog","renderBackdrop","providedManager","containerRef","onShow","onHide","resolvedRef","setRef","earlyRef","nextRef","useWaitForDOMRef","prevShow","lastFocusRef","handleShow","removeKeydownListenerRef","handleDocumentKeyDown","removeFocusListenerRef","handleEnforceFocus","_modal$dialog$ownerDo","_modal$dialog","currentActiveElement","handleHide","_lastFocusRef$current","handleBackdropClick","isEscKey","dialogProps","handleHidden","backdropElement","Manager","OffcanvasBody","transitionStyles","OffcanvasToggling","AbstractModalHeader","ModalContext","OffcanvasHeader","DivStyledAsH5","OffcanvasTitle","addClass","baseVal","hasClass","qsa","replaceClassName","origClass","classToRemove","removeClass","Selector","BootstrapModalManager","adjustAndStore","adjust","actual","restore","marginProp","sharedManager","DialogTransition","BackdropTransition","Offcanvas","ariaLabelledby","placement","responsive","backdropClassName","propsManager","renderStaticNode","showOffcanvas","setShowOffcanvas","hideResponsiveOffcanvas","modalContext","backdropProps","BaseModal","visibility","getSharedManager","Body","Header","Title","NavbarOffcanvas","NavbarText","Navbar","initialBsPrefix","expand","fixed","sticky","onSelect","collapseOnSelect","controlledProps","handleCollapse","expandClass","navbarContext","SelectableContext","Brand","Text","Toggle","useForceUpdate","revision","NavContext","useNavItem","parentOnSelect","navContext","tabContext","TabContext","contextControllerId","getControllerId","contextControlledId","getControlledId","activeKey","NavItem","EVENT_KEY_ATTR","Nav","needsRefocusRef","listNode","getNextActiveTab","currentListNode","activeChild","handleSelect","nextActiveChild","Item","navItemProps","justify","navbar","navbarScroll","navbarBsPrefix","cardHeaderBsPrefix","isNavbar","cardHeaderContext","CardHeaderContext","BaseNav","tar","dequal","foo","bar","ctor","getInt8","isView","getBasePlacement","isHTMLElement","HTMLElement","isShadowRoot","ShadowRoot","getUAString","uaData","userAgentData","brands","brand","isLayoutViewport","includeScale","isFixedStrategy","clientRect","scaleX","scaleY","visualViewport","addVisualOffsets","offsetLeft","offsetTop","getLayoutRect","rootNode","getRootNode","isSameNode","getNodeName","isTableElement","getDocumentElement","getParentNode","assignedSlot","getTrueOffsetParent","offsetParent","getOffsetParent","isFirefox","currentNode","perspective","contain","willChange","getContainingBlock","getMainAxisFromPlacement","within","mathMin","mergePaddingObject","paddingObject","expandToHashMap","hashMap","auto","basePlacements","viewport","popper","variationPlacements","placements","modifierPhases","phase","_state$modifiersData$","arrowElement","elements","arrow","popperOffsets","modifiersData","basePlacement","axis","rects","toPaddingObject","arrowRect","minProp","maxProp","endDiff","startDiff","arrowOffsetParent","clientSize","clientHeight","centerToReference","center","axisProp","centerOffset","_options$element","requires","requiresIfExists","getVariation","unsetSides","mapToStyles","_Object$assign2","popperRect","variation","offsets","gpuAcceleration","adaptive","roundOffsets","isFixed","_offsets$x","_offsets$y","hasX","hasY","sideX","sideY","heightProp","widthProp","_Object$assign","commonStyles","dpr","devicePixelRatio","roundOffsetsByDPR","_options$gpuAccelerat","_options$adaptive","_options$roundOffsets","strategy","styles","attributes","_options$scroll","_options$resize","resize","scrollParents","scrollParent","getOppositePlacement","getOppositeVariationPlacement","getWindowScroll","pageXOffset","pageYOffset","getWindowScrollBarX","isScrollParent","_getComputedStyle","overflowX","overflowY","getScrollParent","listScrollParents","_element$ownerDocumen","isBody","updatedList","rectToClientRect","rect","getClientRectFromMixedType","clippingParent","html","layoutViewport","getViewportRect","clientTop","clientLeft","getInnerBoundingClientRect","winScroll","scrollWidth","getDocumentRect","getClippingRect","boundary","rootBoundary","mainClippingParents","clippingParents","clipperElement","getClippingParents","firstClippingParent","clippingRect","accRect","computeOffsets","commonX","commonY","mainAxis","detectOverflow","_options$placement","_options$strategy","_options$boundary","_options$rootBoundary","_options$elementConte","elementContext","_options$altBoundary","altBoundary","_options$padding","altContext","clippingClientRect","contextElement","referenceClientRect","popperClientRect","elementClientRect","overflowOffsets","offsetData","_skip","_options$mainAxis","checkMainAxis","_options$altAxis","altAxis","checkAltAxis","specifiedFallbackPlacements","fallbackPlacements","_options$flipVariatio","flipVariations","allowedAutoPlacements","preferredPlacement","oppositePlacement","getExpandedFallbackPlacements","_options$allowedAutoP","allPlacements","allowedPlacements","overflows","computeAutoPlacement","referenceRect","checksMap","makeFallbackChecks","firstFittingPlacement","_basePlacement","isStartVariation","isVertical","mainVariationSide","altVariationSide","checks","_loop","fittingPlacement","getSideOffsets","preventedOffsets","isAnySideFullyClipped","side","_options$offset","invertDistance","skidding","distance","distanceAndSkiddingToXY","_data$state$placement","_options$tether","tether","_options$tetherOffset","tetherOffset","isBasePlacement","getAltAxis","tetherOffsetValue","normalizedTetherOffsetValue","offsetModifierState","_offsetModifierState$","mainSide","altSide","additive","maxLen","arrowPaddingObject","arrowPaddingMin","arrowPaddingMax","arrowLen","minOffset","maxOffset","clientOffset","offsetModifierValue","tetherMax","preventedOffset","_offsetModifierState$2","_mainSide","_altSide","_offset","_min","_max","isOriginSide","_offsetModifierValue","_tetherMin","_tetherMax","_preventedOffset","withinMaxClamp","getCompositeRect","elementOrVirtualElement","isOffsetParentAnElement","offsetParentIsScaled","isElementScaled","getNodeScroll","modifiers","dep","depModifier","DEFAULT_OPTIONS","areValidElements","popperGenerator","generatorOptions","_generatorOptions","_generatorOptions$def","defaultModifiers","_generatorOptions$def2","defaultOptions","orderedModifiers","effectCleanupFns","isDestroyed","setOptions","setOptionsAction","cleanupModifierEffects","orderModifiers","merged","existing","mergeByName","_ref$options","cleanupFn","noopFn","_state$elements","_state$orderedModifie","_state$orderedModifie2","onFirstUpdate","createPopper","preventOverflow","referenceOverflow","popperAltOverflow","referenceClippingOffsets","popperEscapeOffsets","isReferenceHidden","hasPopperEscaped","computeStyles","eventListeners","disabledApplyStylesModifier","ariaDescribedByModifier","ids","_popper$getAttribute","EMPTY_MODIFIERS","referenceElement","popperElement","prevModifiers","popperInstanceRef","_popperInstanceRef$cu","_popperInstanceRef$cu2","popperState","useSafeState","updateModifier","nextModifiers","getRefTarget","InitialTriggerEvents","click","mouseup","pointerup","onClickOutside","clickTrigger","preventMouseClickOutsideRef","waitingForTrigger","handleMouseCapture","isLeftClickEvent","handleInitialMouse","handleMouse","_ownerWindow$event","_ownerWindow$parent","currentEvent","removeInitialTriggerListener","removeMouseCaptureListener","removeMouseListener","mobileSafariHackListeners","toModifierArray","mergeOptionsWithPopperConfig","enableEvents","containerPadding","popperConfig","_modifiers$eventListe","_modifiers$preventOve","_modifiers$preventOve2","_modifiers$offset","_modifiers$arrow","toModifierMap","useDropdownMenu","DropdownContext","attachArrowRef","hasShownRef","rootCloseEvent","placementOverride","enableEventListeners","usePopper","shouldUsePopper","setMenu","menuElement","toggleElement","menuProps","metadata","hasShown","arrowProps","useClickOutside","DropdownMenu","usePopperProp","$b5e257d569688ac6$var$defaultContext","$b5e257d569688ac6$var$SSRContext","$670gB$react","$b5e257d569688ac6$var$IsSSRContext","$b5e257d569688ac6$var$canUseDOM","$b5e257d569688ac6$var$componentIds","$b5e257d569688ac6$var$useCounter","$670gB$useContext","$670gB$useRef","_React___SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED_ReactCurrentOwner","_React___SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED","currentOwner","prevComponentValue","$b5e257d569688ac6$export$619500959fc48b26","defaultId","didSSR","$670gB$useState","$b5e257d569688ac6$var$subscribe","$b5e257d569688ac6$var$getSnapshot","$b5e257d569688ac6$var$getServerSnapshot","counter","onStoreChange","isRoleMenu","_el$getAttribute","useDropdownToggle","useSSRSafeId","DropdownToggle","useDropdownItem","onSelectCtx","DropdownItem","dropdownItemProps","useRefWithUpdate","Dropdown","defaultShow","rawShow","rawOnToggle","itemSelector","focusFirstItemOnShow","menuRef","toggleRef","lastShow","lastSourceEvent","focusInDropdown","nextShow","originalEvent","focusToggle","maybeFocusFirst","focusType","getNextFocusedChild","eventTarget","useEventListener","_menuRef$current","_toggleRef$current","fromMenu","fromToggle","_menuRef$current2","DropdownDivider","DropdownHeader","DropdownItemText","useWrappedRefWithWarning","getDropdownMenuPlacement","alignEnd","dropDirection","align","showProps","renderOnMount","contextAlign","isInputGroup","InputGroupContext","alignClasses","brkPoint","childBsPrefix","dropdownContext","toggleProps","pProps","_4","useIsRTL","handleToggle","_meta$originalEvent","directionClasses","down","BaseDropdown","ItemText","Divider","NavDropdown","menuRole","renderMenuOnMount","menuVariant","navItemPrefix","Container","fluid","suffix","useResizeDetector","skipOnMount","refreshMode","refreshRate","refreshOptions","handleWidth","handleHeight","targetRef","observerOptions","onResize","skipResize","onResizeRef","callbackRef","useCallbackRef","setSize","refProxy","refElement","setRefElement","Proxy","useRefProxy","box","resizeCallback","dimensions","getDimensions","borderBoxSize","inlineSize","blockSize","contentBoxSize","contentRect","prevSize","shouldSetSize","nextSize","resizeHandler","patchResizeCallback","resizeObserver","ResizeObserver","disconnect","ExternalLinkView","_props$title","onContextMenu","home","wells","surveys","reprocessing","releasedDocuments","coreLibrary","gisMap","formsFeedback","formsCoreCuttingsRequest","basket","nopims","nopimsRouteHelper","TopNav","topNavRef","topNavHeight","alt","fontSize","createNavLink","navDropdownStyle","navlinkActiveStyle","navDropdownlinkStyle","navDropdownlinkActiveStyle","createOeiNavDropdown","createNopimsNavDropdown","navlinkStyle","EnvironmentBadge","Help","border","paddingLeft","paddingRight","borderRadius","backgroundColor","routeHelpers","LoadingPanel","isBusy","EnvironmentFootnote","ErrorBoundaryContext","didCatch","ErrorBoundary","resetErrorBoundary","_this$props$onReset","onReset","_this$props$onError","resetKeys","_this$props$onReset2","_this$props3","hasArrayChanged","fallbackRender","FallbackComponent","childToRender","minWidth","reload","important","rounded","virtual","infinite","nodata","scroller","hbox","vstack","hstack","actionsheet","buttongroup","dateinput","datetimepicker","dropdownlist","combobox","maskedtextbox","menu","searchbox","timepicker","xsmall","xlarge","xxlarge","xxxlarge","solid","outline","flat","primary","secondary","tertiary","light","inherit","inverse","vertical","horizontal","row","popup","picker","spacer","tab","titlebar","optionLabel","table","tbody","thead","tr","footer","subtitle","caption","increase","decrease","filterable","grouping","hidden","highlight","required","empty","scrollable","sorted","stretched","edit","shown","fullscreen","relative","slide","pushRight","pushLeft","pushDown","pushUp","expandVertical","expandHorizontal","fade","zoomIn","zoomOut","slideIn","slideDown","slideUp","slideRight","slideLeft","revealVertical","revealHorizontal","inner","spin","radio","textbox","weekdays","weekend","decade","century","navigation","marker","today","timeselector","svg","flipH","flipV","floatingLabel","ariaRoot","tableWrap","master","column","cell","cellInner","hierarchy","noRecords","pager","fillMode","themeColor","iconButton","isRtl","syntheticEvent","onMouseUp","onDoubleClick","onMouseOut","onMouseOver","svgPrefix","iconNameProp","svgClassName","svgStyle","uSvgIcon","xmlns","icons","_element","toggleIfApplicable","togglable","_selectedTemp","iconClass","svgIcon","imageUrl","imageAlt","startIcon","endIcon","uButton","buttonClasses","caretAltUpIcon","caretAltRightIcon","caretAltDownIcon","caretAltLeftIcon","caretAltToRightIcon","caretAltToLeftIcon","chevronUpIcon","chevronDownIcon","moreVerticalIcon","calendarIcon","cancelIcon","xIcon","xCircleIcon","plusIcon","minusIcon","sortAscSmallIcon","sortDescSmallIcon","filterIcon","filterClearIcon","filterAddExpressionIcon","filterAddGroupIcon","searchIcon","onCloseButtonClick","closeIcon","layout","shadowRoot","contentDocument","justifyContent","alignItems","boxShadow","alignSelf","marginRight","clipRule","marginLeft","cursor","backgroundImage","generateTitleId","contentId","generateContentId","showLicenseWatermark","onCloseDialog","getCurrentZIndex","appendTo","autoFocusedElement","getElementById","contentStyle","getContent","getActionBar","overlayStyle","fastUniqueNumbers","addUniqueNumber","generateUniqueNumber","Pt","Worker","timerType","BroadcastChannel","onStorage","storageArea","removeItem","onmessageerror","isLeader","isDead","isApplying","reApply","intervals","awaitLeadership","sendAction","responseTime","assumeLead","fallbackInterval","waitForLeadership","elector","allIdle","isLastActive","channelName","leaderElection","idle","activate","onMessage","onPrompt","onIdle","onActive","promptTimeout","promptBeforeIdle","timers","immediateEvents","onPresenceChange","onAction","eventsThrottle","startOnMount","startManually","stopOnIdle","crossTab","syncTimers","prompted","Ge","isIdle","isPrompted","isLastActiveTab","getTabId","getRemainingTime","getElapsedTime","getTotalElapsedTime","getLastIdleTime","getLastActiveTime","getIdleTime","getTotalIdleTime","getActiveTime","getTotalActiveTime","setOnPresenceChange","setOnPrompt","setOnIdle","setOnActive","setOnAction","setOnMessage","sessionTimeout","SessionController","showSessionTimeoutOverlay","setShowSessionTimeoutOverlay","useIdleTimer","SessionTimeoutOverlay","Dialog","DialogActionsBar","UserTokenController","isDirty","showPageTitle","childrenWithStaticReferenceData","ConfigurationController","ErrorPage","BusyOverlayController","ToastContainer","SupportedBrowserBanner","Footer","EmailLinkView","_props$children","whiteSpace","scope","showError","setShowError","makeTheCall","back","noptaLogoImageAlt","oirLogoImageAlt","heroImageLeft","heroImageRight","noptaImage","oriImage","rowType","totalHeight","scrollbar","scrollbarWidth","lastResult","gridTable","headerWrap","headerTable","headerTh","locked","tableThead","heightContainer","sortIcon","sortOrder","rowAlt","isInEdit","detailTr","simpleTr","headerCellInner","columnTitle","headerCellLink","notSortable","noRecordsTemplate","contentSticky","hierarchyCell","detailTd","editTd","hierarchyTd","isHeader","isFooter","isMaster","isAltRow","isAlt","sortable","parentElement","closest","navigationStateRef","contextStateRef","navigationMatrix","elementForFocus","prevElement","activeId","editable","generateNavigatableId","getNavigatableId","getNavigatableLevel","getNavigatableElement","getClosestNavigatableElement","getActiveNavDataElement","getClosestScope","getHeaderElement","getBodyElement","getFocusableElements","getNavigatableElements","filterNavigatableElements","focusElement","getIdPrefix","idPrefix","isNavigatable","findNextIdByRowIndex","findNextIdByCellIndex","findId","getNextNavigationIndex","getFilterColumnId","focusFirstDataElement","getClosestCancelButton","getClosestEditButton","getRowAriaRowIndex","childNodes","getRemoveButtonByAriaRowIndex","getTableCellByKeyboardNavId","getParentCell","waitForElementToBeVisible","getNextEditableCell","ariaColumnIndex","nextCell","elementToFocus","getPrevEditableCell","prevCell","getClosestCellNavId","incell","inline","navigatable","activeElementIsFocused","prevNavigationIndexes","lastHeaderIndex","rowSpan","colSpan","focusFirst","newEditableRow","singleEditRow","lastActiveElement","onNavigationAction","blur","drag","rightBorder","elementFromPoint","cut","paste","copyHandler","clipboardEvent","cutHandler","pasteHandler","roundedMap","orientationMap","handlePageChange","pageChange","handleSelectPageChange","messagesMap","totalPages","currentPage","defaultMessage","renderDots","renderOptionDots","buttonCount","focused","notEmpty","handleFocus","handleBlur","editorId","labelClassName","editorValue","editorPlaceholder","editorValid","editorDisabled","unstyled","uFloatingLabel","onFocus","onBlur","htmlFor","currentLooseValue","prevLooseValue","valueIsCorrected","positiveInfo","negativeInfo","zeroInfo","oneInfo","isPaste","accessKey","ariaDescribedBy","ariaLabelledBy","inputType","validationMessage","inputStyle","spinners","validityStyles","rangeOnEnter","decimalSelect","valueIsOutOfRange","setCustomValidity","customError","valueMissing","spellCheck","autoComplete","autoCorrect","onPaste","onWheel","handleOnChange","clearButton","groupStickyHeader","listHeaderText","groupLi","itemText","groupItemText","itemGroupLabel","noData","inputInner","inputIcon","listFilter","isMultiColumn","titleBar","textCenter","titleBarGroup","isFullScreen","loadingIcon","inputButton","listContainer","inputText","listHeader","listContent","listFooter","tableSize","animationContainer","animationContainerShown","animationChild","slideActive","transitionDuration","anchorRect","anchorAlign","elementRect","elementAlign","anchorHorizontal","anchorVertical","elementHorizontal","elementVertical","horizontalMargin","verticalMargin","point","fit","viewPortSize","anchorSize","anchorAlignPoint","elementAlignPoint","marginToAdd","alignPoint","isBeforeAnchor","collisions","viewPort","elementTop","elementLeft","elementHeight","elementWidth","viewPortHeight","viewPortWidth","isVerticalFit","collision","isHorizontalFit","isVerticalFlip","isHorizontalFlip","flippedVertical","flippedHorizontal","fittedVertical","fittedHorizontal","flipped","fitted","hasRelativeStackingContext","elementSource","currentDocument","isDifferent","utils","eitherRect","scaleRect","scale","removeStackingOffset","stackingOffset","cachedWidth","div","windowViewport","wnd","innerHeight","scrollPosition","docElement","rectOfHiddenElement","offsetParentElement","elementScrollPosition","parentScrollPosition","elementStyles","offsetRect","useRelative","parentOffset","parentStyles","borderTopWidth","borderLeftWidth","until","firstElementChild","nextElementSibling","STYLES","OVERFLOW_REGEXP","overflowStyle","overflowElementStyle","overflowComputedStyle","getRelativeContextElement","domUtils","addOffset","addition","addScroll","boundingOffset","getFontStyles","computedStyles","font","hasOffsetParent","offsetBase","offsetAtPoint","currentOffset","popupElement","ref$1","offsetParentScrollPosition","positionScale","positionWithScroll","removeScroll","restrictToView","scrollableParents","parentElements","stackingElementOffset","relativeContextElement","stackingElementScroll","stackingElementViewPort","useRelativePosition","windowViewPort","isZoomed","anchor","siblingElements","parents","containerElement","siblings","siblingContainer","zIndexStyle","positionMode","currentScale","scrollPos","stackScale","stackScroll","stackOffset","absoluteRect","relativeRect","elementOffset","_popup","handleMouseDown","setPosition","animate","onOpened","popupAlign","_collisions","onPosition","uPopup","attachRepositionHandlers","onMouseDownOutside","isAnchorClicked","onClosing","detachRepositionHandlers","onClosed","reposition","popupClass","contentKey","transitionDelay","openDuration","closeDuration","_scrollableParents","onKeyPress","itemsCount","popupSettings","orientation","uTextBox","onSyncFocus","onSyncBlur","modified","touched","renderListFilterWrapper","renderPrefixSeparator","uDropDownsBase","groupMode","groupField","defaultItem","textField","dataItem","boxSizing","wrapperCssClass","wrapperStyle","listStyle","listRef","wrapperRef","listClassName","ariaSetSize","valueField","optionsGuid","focusedIndex","hasDuplicates","highlightSelected","itemRender","groupHeaderItemRender","unselectable","noDataRender","pageSize","PageChange","scrollElement","listTransform","itemHeight","containerHeight","reactVersion","scrollSyncing","lastLoaded","firstLoaded","lastScrollTop","listTranslate","calcScrollElementHeight","scrollerRef","getRowHeightService","scrollHandler","translate","translateTo","changePage","scrollToEnd","rowHeightService","skipItems","vs","handleItemClick","initState","handleItemSelect","togglePopup","applyState","filterChanged","ignoreCase","opened","calculatePopupWidth","triggerOnPageChange","scrollToVirtualItem","scrollToItem","scrollPopupByPageSize","renderScrollElement","resetGroupStickyHeader","listBoxId","didUpdate","didMount","calculateDir","dirCalculated","popupWidth","triggerPageChangeCornerItems","dataItemKey","getPopupSettings","getAdaptiveAnimation","getGroupedDataModernMode","basicPropTypes","listNoDataRender","focusedItemIndex","onFilterChange","onPageChange","childContainer","appearActive","enterActive","exitActive","transitionName","removeOneClass","CSSTransition","appliedClasses","_this$resolveArgument","resolveArguments","removeClasses","_this$resolveArgument2","_this$resolveArgument3","getClassNames","isStringClassNames","baseClassName","doneClassName","addOneClass","_addClass","_this$appliedClasses$","elementRef","transitionEnterDuration","transitionExitDuration","onAfterExited","animationEnteringStyle","animationEnteredStyle","animationExitingStyle","animationExitedStyle","uAnimation","entering","entered","exiting","animatedElement","getChildMapping","mapFn","getNextChildMapping","prevChildMapping","nextChildMapping","getValueForKey","nextKeysPending","pendingKeys","prevKey","childMapping","nextKey","pendingNextKey","mergeChildMappings","hasPrev","prevChild","isLeaving","TransitionGroup","_assertThisInitialized","firstRender","currentChildMapping","childFactory","stackChildren","componentChildStyle","componentChildClassName","rovingTabIndex","setFocusClass","focusClass","disableTabindexForRest","focusNextIndex","selectors","focusOptions","preventScroll","mouseEvents","keyboardEvents","lastFocused","customElements","focusNext","focusPrevious","triggerKeyboardEvent","triggerMouseEvent","removeFocusClass","initializeRovingTab","removeFocusListener","overflowHidden","actionSheetRef","actionSheetTitleClass","ariaLabeledBy","bottomPosition","onTab","handleOverlayClick","onOverlayClick","hideActionSheet","onItemClick","onItemSelect","ariaDisabled","onEscape","navigatableElements","keydown","Tab","Enter","Escape","subTitle","animationStyles","searchState","_select","_skipFocusEvent","_filterInput","_navigated","_lastKeypressIsFilter","triggerOnChange","componentRef","dummySelect","valueMap","renderListContainer","groupStickyHeaderItemRender","uDropDownList","onPopupOpened","onPopupClosed","onPopupMouseDown","renderListFilter","renderDefaultItem","renderList","_listboxId","getFocusedIndex","maxHeight","handleListFilterChange","handleDefaultItemClick","_typingTimeout","selectNext","itemIndex","_valueDuringOnChange","leftRightKeysNavigation","skipDisabledItems","haveFocusedItemAndDataNotEmpty","resetValueIfDisabledItem","onNavigate","windowWidth","handleWrapperClick","handleKeyPress","setValidity","validity","_inputId","observerResize","calculateMedia","iconClassName","valueRender","renderAdaptiveListContainer","adaptiveTitle","uDropDownsActionSheet","pageSizeChange","pageSizes","targetEvent","onWindowResize","showPagerSizes","showPagerInfo","innerNavigateActive","pageSizeValue","previousNext","renderButton","DRAG_AND_DROP_DISPATCH_ACTION","intersect","candidates","candidate","ration","targetRect","targetArea","entryArea","intersectionArea","getRatio","detectBrowser","browserRxs","edge","webkit","safari","opera","msie","mozilla","agent","DOCUMENT_NODE","scrollableRoot","support","isScrollable","getScrollableParent","Node","DOCUMENT_FRAGMENT_NODE","dispatchDragAndDrop","onIsPressedChange","onIsScrollingChange","onVelocityChange","onOffsetChange","onPageOffsetChange","_f","onClientOffsetChange","_g","onScrollOffsetChange","_h","onInitialScrollOffsetChange","autoScrollDirection","overrideScrollableParent","scrollableParent","isTouchEvent","scrollX","scrollOffset","scrollY","offsetX","offsetY","isTouch","isScrollEvent","pageOffset","normalizeEvent","POINTER_DOWN","MOUSE_DOWN","ignoreMouse","TOUCH_START","START","scrollableParent_1","Window","onPress","SCROLL","pressed","initialScrollOffset","POINTER_MOVE","MOUSE_MOVE","TOUCH_MOVE","MOVE","autoScroll","document_1","scrollableParent_2","newVelocity","mouseX","mouseY","velocity","AUTO_SCROLL_AREA","autoScrollVelocity","scrollableViewPort","onDragStart","onDrag","dropElement_1","drops","isPointerInsideContainer","onDragLeave","onDragEnter","onDragOver","POINTER_UP","MOUSE_UP","TOUCH_END","onRelease","onDrop","onDragEnd","POINTER_CANCEL","CONTEXT_MENU","TOUCH_CANCEL","mouseOnly","scrollContainer","PointerEvent","boundaryElementRef","drags","initialClientOffset","isScrolling","onInitialClientOffsetChange","touchAction","vel","yIsScrollable","xIsScrollable","yDelta","yInBounds","xDelta","xInBounds","selectable","pressedElement","startRowIndex","startColIndex","endRowIndex","endColIndex","isDrag","visible","hiddenElementRef","innerText","resizable","reorderable","groupable","dataIndex","filterCell","orderIndex","prevId","declarationIndex","isAccessible","parentIndex","allowUnsort","filterTitle","editor","minResizableWidth","headerCell","footerCell","headerSelectionValue","headerClassName","columnMenu","menuIcon","kFirst","selectionChange","cells","tdProps","cloneDate","newDate","expected","addDays","setDate","lastDayOfMonth","addMonths","expectedMonth","setMonth","partMap","leadingZero","typedMonthPart","knownParts","_value","intlProvider","formatPlaceholder","monthNames","allFormatedMonths","modifyExisting","getExisting","getDateObject","getTextAndFormat","dateFormatString","setExisting","modifyPart","setMinutes","setSeconds","parsePart","resetLeadingZero","matchMonth","isAbbrMonth","symbolMap","partPattern","listWrapper","containerSelector","scrollablePlaceholder","timeSelector","weekNumber","navigationHighlight","rangeStart","rangeEnd","rangeMid","rangeSplitEnd","rangeSplitStart","isOtherMonth","isWeek","scrollableSelector","navigationMarker","mobileMode","isRangeStart","inputSpinner","spinnerIncrease","spinnerDecrease","timeFooter","buttonGroup","calendarWrap","timeWrap","candidateValue","minValue","uDateInput","tabindex","kendoDate","_wrapper","_lastSelectedSymbol","updateOnPaste","triggerChange","spinnersMouseDown","handlePaste","elementChange","selection","setSelection","selectionBySymbol","switchDateSegment","elementClick","selectionByIndex","nativeWheel","wheel","increasePart","decreasePart","modifyDateSegmentValue","elementKeyDown","elementOnFocus","elementOnBlur","ariaRole","readonly","ariaHasPopup","ariaExpanded","ariaControls","onInput","valueDuringOnChange","minTime","maxTime","rangeOverflow","rangeUnderflow","disableSelection","setSelectionRange","steps","timeZoneName","validate","isEqualDate","onScrollAction","onPageAction","bottomOffset","topOffset","rowsForHeight","rowOffset","lastDirection","lastTotal","lastTake","animationInProgress","restrictScroll","scrollTo","scrollToIndex","animateToIndex","cancelAnimationFrame","cancelAnimation","getContainerScrollDirection","scrollRange","scrollStep","scrollToBottom","scrollDuration","containerScrollPosition","containerMaxScroll","maxScrollDifference","containerScrollSize","containerOffsetSize","initServices","itemWidth","scrollerService","scrollOffsetSize","getContainerProperty","handleScroll","scrollAction","pageAction","handleScrollAction","handlePageAction","activeIndex","itemOffset","isIndexVisible","isListScrolled","uCalendar","forceScroll","Day","Direction","weekDay","Forward","newDay","moveDateToWeekStart","weekStartDay","Monday","Backward","prevDayOfWeek","calcWeekInYear","firstWeekInYear","diffInMS","handleMouseEnter","handleMouseLeave","isWeekend","isFocused","isInRange","isSelected","isRangeMid","isRangeEnd","isRangeSplitStart","isRangeSplitEnd","isToday","showOtherMonthDays","allowReverse","activeRangeEnd","firstDate","weekDays","getWeekNames","weekService","buildWeekNumber","getWeekNumber","handleWeekCellClick","weekCell","buildRow","activeView","firstWeekDateContext","onWeekSelect","onCellEnter","onCellLeave","isHorizontal","isMonthView","showWeekNumbers","selectedDate","service","weekDaysFormat","cellUID","focusedDate","bus","rowLength","viewDate","isActiveView","canMoveDown","prevWeekDate","nextWeekDate","getTitle","currentDate","addToDate","handleTitleClick","canMoveUp","moveUp","commands","headerTitleProps","headerTitle","verticalView","todayIsInRange","isTodayClick","virtualization","calendarView","viewOffset","viewHeight","shouldScroll","focusActiveDate","blurActiveDate","handleVirtualizationMount","buildMonthView","buildDates","handleDateChange","calculateHeights","scrollableContentHeight","scrollableYearContentHeight","headerHeight","getTake","handleTodayClick","lastView","lastFocus","weekNames","smoothScroll","indexToScroll","datesList","didCalculate","maxViewHeight","buildNavigationItem","navigationTitle","navigationItem","calendarHeight","navigationItemHeight","monthViewHeight","setYear","addYears","addDecades","addCenturies","normalizeYear","firstDecadeOfCentury","lastDecadeOfCentury","firstYearOfDecade","durationInCenturies","PrevView","NextView","FirstInView","LastInView","LowerView","UpperView","lastYearOfDecade","durationInDecades","addWeeks","firstDayOfMonth","durationInMonths","firstMonthOfYear","lastMonthOfYear","durationInYears","isSelectedFromArray","cellTitle","isInArray","isInSameView","move","abbrMonthNames","wideMonthNames","_intl","onViewChanged","configure","moveDown","moveToBottom","yearViewHeight","decadeViewHeight","centuryViewHeight","calendarWidth","monthViewWidth","yearViewWidth","decadeViewWidth","centuryViewWidth","scrollableContentWidth","hostContainer","ensureHeights","rows","viewDimension","viewWidth","divideByMagnitude","powerByMagnitude","monthScrolled","navScrolled","scrollSiblingOf","siblingComponent","calculateScroll","scrollSyncService","Navigation","calendarViewList","didNavigationChange","handleNavigationChange","handleViewChange","defaultActiveView","bottomView","topView","dateInput","mobileFilter","cancelText","onCancel","applyText","onApply","_dateInput","_calendar","shouldFocusDateInput","setCalendarRef","renderPopup","_popupId","handleMouseDownOutside","handleCalendarValueChange","calendarComp","popupComp","renderAdaptivePopup","handleInputValueChange","handleValueChange","mergeTime","showDuringOnChange","handleIconClick","handleIconMouseDown","dateInputComp","toggleButtonComp","toggleButton","pickerWrapComp","pickerWrap","nextTickId","nextTick","uGrid","columnIndex","syncScroll","scrollableDataElement","elemRef","columnResize","setIsRtl","setScrollLeft","setWidth","staticHeaders","hasScrollbarWidth","borderWidth","colGroupHeader","cols","headerRow","filterRow","pressHandler","dragHandler","releaseHandler","dragClue","headerRef","ariaRowIndex","columnMenuIcon","onCloseMenu","mousedown","getElementsByClassName","scrollIntoView","columnMenuWrapperProps","isDragged","autofit","ariaSort","columnId","ariaSelected","ariaDescription","true","asc","false","none","sortChange","selectionValue","cellRender","onSortChange","filterOperators","filterChange","onGroupChange","groupChange","columnGroupChange","dblClickHandler","thProps","columnsMap","simpletr","boolean","operators","filterType","_inputRef","renderOperatorEditor","operatorChange","inputChange","boolDropdownChange","filterComponent","booleanValues","headerCellClassName","setFilter","filters","logic","onRemove","groupRemove","onGroupRemove","onGroupSortChange","resolveTitle","refCallback","footerWrap","colGroupFooter","topCacheCount","attendedSkip","propsSkip","scrollableVirtual","realSkip","tableBodyRef","fixedScroll","askedSkip","tableTransform","prevScrollPos","tableTranslate","topItems","topItemsCount","topItemsHeight","itemsNeededOnScreen","horizontalScrollbarHeight","rowHeights","localScrollUp","localScrollDown","scrollNonStrict","stopImmediatePropagation","fixateInitialWidths","setWidths","colGroupMain","updateColElements","updateNextLockedCol","refDragElementClue","refDropElementClue","startColumn","startGroup","currentColumn","currentGroup","groupPanelDivElement","refGroupPanelDiv","getColumnIndex","getGroupIndex","isTargetGroupingContainer","getCurrentGroupsLength","updateDragElementClue","updateDropElementClue","dropElementClue","dragElementClue","columnReorder","groupReorder","columnToGroup","dragClueRef","dropClueRef","isSorted","columnsCount","borderRightWidth","td2Props","rowHeight","absoluteRowIndex","ariaColIndex","_columns","_columnsMap","_columnsMutations","_resized","_focusFirst","_singleEditRow","_shouldUpdateLeftRight","_scrollbarWidth","_slicedData","wrapperScrollTop","headerElementRef","tableElement","_footer","forceUpdateTimeout","headTable","rowsInEdit","handleIntersection","rowIndex","isIntersecting","setCurrentOnTop","fitColumns","getColumnsEssentialProps","checkMatchMediaColumnsDifferece","childrenToArray","getVirtualScroll","detailRowHeight","expandField","isAllData","initializeVirtualization","reInitVirtualization","getCachedScrollbarWidth","columnVirtualization","_header","dataItems","getLeafDataItems","componentId","_gridId","selectedField","getArguments","moveToNextPage","moveToPrevPage","rowClick","onRowClick","rowDblClick","onRowDoubleClick","itemChange","onItemChange","onExpandChange","onHeaderSelectionChange","selectionRelease","onSelectionChange","getSlicedLeafDataItems","startDataItem","endDataItem","raiseDataEvent","getTotal","pagerPageChange","onClipboard","inActiveElement","clipboard","resetTableWidth","onColumnResize","targetColumnId","newWidth","oldWidth","flatData","flattedData","resolvedGroupsCount","readColumns","Ct","mapColumns","filterColumnsByMediaProp","configureColumns","lockGroups","getHeaderRow","dragLogic","handleFocusInEditableRows","_lastActiveElement","_newEditableRow","clipboardService","Ht","IntersectionObserver","rootMargin","threshold","initColumns","headerCellRender","filterCellRender","colSpans","hiddenColumns","tableViewPortWidth","editField","rowRender","pageable","userSelect","onDataStateChange","dataState","getDataState","onColumnReorder","isBlank","isNotNullOrEmptyString","isNullOrEmptyString","isNumeric","isCompositeFilterDescriptor","pack","ar","__makeTemplateObject","cooked","raw","SuppressedError","templateObject_1","templateObject_2","ifElse","curr","wrapIf","toUTC","encodeValue","normalizeField","isStringValue","isDateValue","normalizeOperator","equal","equals","equalto","greater","greaterthan","greaterthanequal","isempty","isequalto","isgreaterthan","isgreaterthanorequalto","islessthan","islessthanorequalto","isnotempty","isnotequalto","isnull","less","lessthan","lessthanequal","notequal","notequals","notequalto","notsubstringof","normalizeFilters","normalizeDescriptor","singleOperatorFormatter","stringFormat","formatter","stringFnOperator","fnFormatter","dateOperator","utcDates","ifDate","numericOperator","typedOperator","stringOperator","appendEqual","nonValueExpression","serialize","doesnotcontain","endswith","isnotnull","neq","startswith","serializeAll","brackets","serializeFilters","serializeFilter","serializeSort","orderby","emptyString","serializeKey","strings","toODataString","rules","getterCache","FIELD_REGEX","what","FilterOperator","indexAccessor","pairwise","accessor","isNotEmpty","isNotEmptyArray","runOrEmpty","formatDescriptors","sanitizeDateLiterals","removeAfterDot","directionFormatter","aggregates","formatSort","formatGroup","formatAggregates","aggregate","formatDateValue","transformSkip","transformTake","transformGroup","transformSort","transformAggregates","filterFormatter","g1","translateAggregate","translateAggregates","valueOrDefault","translateGroup","hasSubgroups","Aggregates","Member","member","HasSubgroups","Items","Key","localeCompare","compareDesc","descriptorAsFunc","groupCombinator","agg","groupValue","valueToString","__position","aggregatesCombinator","descriptors","fieldAccessor","aggregateName","aggregateAccessor","fieldAggregates","aggregateFunction","calc","NEGATIVE_INFINITY","POSITIVE_INFINITY","aggregatesFuncs","isTransformerResult","__value","reduced","aggregateBy","transformers","expandAggregates","operatorsMap","doesnotendwith","doesnotstartwith","transformFilter","itemProp","stringValue","typedGetter","convertValue","op","transformCompositeFilter","combiner","compileFilter","filterBy","normalizeGroups","originalData","aggregateResult","filteredData","composeSortDescriptors","skipCount","filterDescriptor","sortDescriptors","hasFilters","hasGroups","TitleLinkView","gridCellProps","navigationAttributes","useTableKeyboardNavigation","GRID_COL_INDEX_ATTRIBUTE","marginTop","marginBottom","maxWidth","componentWillEnter","onBeforeEnter","updateContainerDimensions","componentIsEntering","componentWillExit","_input","isInvalid","handleAutoFill","badInput","patternMismatch","stepMismatch","tooLong","typeMismatch","uInput","onAnimationStart","firstFilterProps","hideSecondFilter","secondFilterProps","logicData","logicValue","onLogicChange","removeGroup","insertGroup","isControlled","onFilterExpand","firstFilterChange","secondFilterChange","filterGroup","logicChange","currentFilterGroup","submit","filterUI","alwaysExpand","onSubmit","GridColumnFilterMenu","GridColumnMenuFilter","gridColumnMenuProps","createGridColumnFilterMenu","labelPlacement","labelOptional","onKeyUp","defaultFilter","parseData","getFilterIndex","handleSearchChange","searchBoxFilterOperator","uniqueData","handleClear","currentFilter","compositeFilterIndex","handleCheckBoxChange","isAllSelected","dataFromProps","searchBox","blanksText","isNullOrEmpty","getPropertyFromObject","_index","GridColumnCheckboxFilterMenu","blankItem","GridColumnMenuCheckboxFilter","filterItem","innerFilterItem","simpleInnerFilterItem","convertFilter","convertBackFilter","createGridColumnCheckboxFilterMenu","initialGridState","gridState","setGridState","lastSearchText","setLastSearchText","searchText","setSearchText","onSearchTextChanged","Grid","GridColumn","CustomGridCell","TitleLink","searchTitleRequestAction","_state$filter","_state$titles","TitleSearchListView","useTabPanel","TabPanel","tabPanelProps","Tabs","generateChildId","generateCustomChildId","propsOnSelect","propsActiveKey","defaultActiveKey","Panel","TabContent","getTabTransitionComponent","TabPane","getDefaultActiveKey","renderTab","tabClassName","tabAttrs","BaseTabs","TabContainer","Content","Pane","CheckLabelClass","ControlClass","ControlPlaintextClass","CheckClass","CheckInputClass","CheckInlineClass","GroupClass","IsInvalidClass","Row","Group","FullColumn","HalfColumn","ThirdColumn","QuarterColumn","Label","_props$className","ReadonlyTextInput","_props$value","_props$valid","ReadonlyField","_props$value2","ReadonlyTextArea","_props$value3","ReadonlyRadioButton","_props$value4","_props$checked","RadioButton","_props$value5","_props$checked3","_props$valid3","getClassName","TextInput","_props$value6","_props$valid4","TextArea","_props$value8","_props$valid6","_props$relatedTitles","sortedTitles","Forms","_summary$locationName","sortedLocations","TitleSummaryRelatedTitlesField","TitleSummaryPriorUsageRightField","borderStyle","borderColor","renderMap","ExplorationPermit","TitleSummaryEpView","RetentionLease","ProductionLicence","TitleSummaryRlPpView","InfrastructureLicence","TitleSummaryIlView","PipelineLicence","TitleSummaryPlView","AccessAuthority","SpecialProspectingAuthority","TitleSummaryAaSpaView","GreenhouseGasAssessmentPermit","TitleSummaryGhgApView","TitleMapView","_props$response$title","_props$response","sortedTitleholders","t1","t2","_workProgram$years","sortedYears","y1","y2","_y$activities","a1","a2","rowKey","wordWrap","_props$response2","_props$response3","modern","ModernWorkProgramView","CashBid","OpenTitleActions","generateDownloadMemorialDocumentUrl","downloadMemorialDocument","tryGetDetails","stringCaseInsensitiveEquals","resolveAction","getOpenTitleActionDetails","getDownloadMemorialDocumentActionDetails","sensitivity","getRedirectUri","TitleDetailsHelper","AutomationEnum","dismissable","showAlert","_props$dismissable","CopyLinkView","showDialog","setShowDialog","showCopied","setShowCopied","linkTextRef","copyLinkTextToClipboard","textBox","execCommand","SimpleAlert","_assertNotInitialised","_assertInitialised","_getQueryString","LinkControl","setIsBusy","_response$memorial$ap","_response$memorial","documentDownload","OpenTitleHelper","SecureFileDownloadLinkControl","CopyLink","showLocationName","showLocations","_response$blocksAndLo","_response$blocksAndLo2","_response$blocksAndLo3","_response$blocksAndLo4","_props$mapResponse","BlocksView","IsLocationsDataVisible","LocationsView","TitleDetailsTabsEnum","_props$preferredTab","preferredTab","TitleSummaryView","titleHolders","TitleholdersView","IsWorkProgramVisible","WorkProgramView","MemorialView","IsBlocksAndLocationsTabVisible","BlocksAndLocationsView","tryOpenTitleMemorialDocument","_memorial","_memorial$application","notFoundUrl","uriHelper","getTitleMemorialDocumentUrl","TitleDetailsConfiguration","getTitleDetailsRequestAction","clearTitleDetailsAction","getTitleMapDetailsRequestAction","clearTitleMapDetailsAction","hasAutomationRun","setHasAutomationRun","URLSearchParams","TitleDetailsView","ARC","ARROW_UP","ARROW_DOWN","ARROW_LEFT","ARROW_RIGHT","ARIA_ACTIVE_DESCENDANT","BLACK","BOTTOM","CENTER","CIRCLE","CROSS","DATE","DEFAULT_FONT","DEFAULT_PRECISION","FORMAT_REGEX","HEIGHT","INSIDE","INHERIT","LEFT","MIN_VALUE","OUTSIDE","RIGHT","ROUNDED_RECT","STRING","TOP","VALUE","WHITE","WIDTH","POINTER","HORIZONTAL","classArray","SPACE_REGEX","defined","alignPathToPixel","stroke","drawing","segments","clockwise","angle1","angle2","convertableToNumber","cycleUp","cycleDown","cycleIndex","deepExtendOne","destination","propType","propInit","destProp","styleValue","SIZE_STYLES_REGEX","isSizeField","stylesArray","field$1","getSpacing","defaultSpacing","spacing","TemplateService","register","userImplementation","getTemplate","ariaTemplate","ariaContent","grep","hasClasses","HashMap","_map","inArray","power","TRIGGER","InstanceObserver","handlerMap","trigger","callObserver","fnName","requiresHandlers","matchUserAgent","mousewheelDelta","logToConsole","arabicToRoman","roman","defId","definitionId","DEG_TO_RAD","PI","MAX_NUM","MIN_NUM","deg","radians","KEY_STR","encodeBase64","utfInput","encodeUTF8","chr1","chr2","chr3","enc1","enc2","enc3","enc4","eventCoordinates","eventElement","touch","initialTouch","isTransparent","limitValue","mergeSort","cmp","promiseAll","all","rad","degrees","bindEvents","eventNames","getPixels","elementSize","size$1","unbindEvents","elementPadding","paddingTop","Matrix","Class","multiplyCopy","matrix","det","rotate","angle","cos","sin","IDENTITY","matrixRegexp","transformMatrix","matrixString","members","parseMatrix","elementScale","parentMatrix","LRUCache","_size","_length","_head","_tail","newer","older","REPLACE_REGEX","SPACE","normalizeText","objectKey","hashKey","defaultMeasureBox","baselineMarkerSize","TextMetrics","_cache","baseline","cachedResult","measureBox","baselineMarker","_baselineMarker","cloneNode","textStr","measureText","FontLoader","fetchFonts","fonts","loadFonts","preloadFonts","setDefaultOptions","KI_PREFFIX","KSVG_PREFFIX","HTMLBaseIcon","addClasses","outerHTML","stylingOptions","HTMLFontIcon","currentIconClass","_className","HTMLSvgIcon","iconNameMatch","svgIcons","svgElement","ICON_TYPES","renderIcon","iconElement","iconOptions","sparseArrayLimits","geometry","aliceblue","antiquewhite","aqua","aquamarine","azure","beige","bisque","black","blanchedalmond","blue","blueviolet","brown","burlywood","cadetblue","chartreuse","chocolate","coral","cornflowerblue","cornsilk","crimson","cyan","darkblue","darkcyan","darkgoldenrod","darkgray","darkgrey","darkgreen","darkkhaki","darkmagenta","darkolivegreen","darkorange","darkorchid","darkred","darksalmon","darkseagreen","darkslateblue","darkslategray","darkslategrey","darkturquoise","darkviolet","deeppink","deepskyblue","dimgray","dimgrey","dodgerblue","firebrick","floralwhite","forestgreen","fuchsia","gainsboro","ghostwhite","gold","goldenrod","gray","grey","green","greenyellow","honeydew","hotpink","indianred","indigo","ivory","khaki","lavender","lavenderblush","lawngreen","lemonchiffon","lightblue","lightcoral","lightcyan","lightgoldenrodyellow","lightgray","lightgrey","lightgreen","lightpink","lightsalmon","lightseagreen","lightskyblue","lightslategray","lightslategrey","lightsteelblue","lightyellow","lime","limegreen","linen","magenta","maroon","mediumaquamarine","mediumblue","mediumorchid","mediumpurple","mediumseagreen","mediumslateblue","mediumspringgreen","mediumturquoise","mediumvioletred","midnightblue","mintcream","mistyrose","moccasin","navajowhite","navy","oldlace","olive","olivedrab","orange","orangered","orchid","palegoldenrod","palegreen","paleturquoise","palevioletred","papayawhip","peachpuff","peru","pink","plum","powderblue","purple","red","rosybrown","royalblue","saddlebrown","salmon","sandybrown","seagreen","seashell","sienna","silver","skyblue","slateblue","slategray","slategrey","snow","springgreen","steelblue","tan","teal","thistle","tomato","turquoise","violet","wheat","white","whitesmoke","yellow","yellowgreen","matchNamedColor","colorNames","namedColors","BaseColor","toHSV","toRGB","toHex","toBytes","toCss","toCssRgba","rgb","toDisplay","parseColor","diff","NaN","c1","c2","sqrt","Bytes","RGB","HSV","toHSL","HSL","hex","alpha","hue2rgb","alphaFromHex","ret","Color","this$1","resolvedColor","resolveColor","formatRegex","normalizeByte","padDigit","brightness","percBrightness","isDark","fromBytes","fromRGB","fromHSV","fromHSL","DELETED","LegacySet","_values","prototypeAccessors","SetWrapper","prototypeAccessors$1","createHashSet","supportsSet","defaultErrorHandler","INSERT","DELETE","BACKSPACE","TAB","ENTER","ESC","UP","DOWN","HOME","SPACEBAR","PAGEUP","PAGEDOWN","F2","F10","F12","NUMPAD_PLUS","NUMPAD_MINUS","NUMPAD_DOT","includeEmpty","transpose","augment","loop","imax","argmax","returned","i$1","j$1","k$1","i$2","j$2","eventMap","queryEventMap","applyEventMap","elementEventHandlers","ID","eventFilter","eventHandler","attachedHandler","closestMatchingTarget","handlerId","getSupportedFeatures","agentRxs","wp","android","iphone","ipad","playbook","windows","tizen","sailfish","osRxs","ios","testRegex","detectOS","mobileOS","regexes","dflt","_defaultPrevented","Observable","unbind","one","original","handlersIsFunction","eventName$1","eventArgs","sender","_setEvents","DEFAULT_MIN_HOLD","DEFAULT_THRESHOLD","PRESS","HOLD","TAP","DOUBLETAP","RELEASE","GESTURECHANGE","GESTUREEND","GESTURETAP","THRESHOLD","getTouches","api","TouchAxis","invalidZeroEvents","_updateLocationData","startLocation","timeDelta","initialDelta","screen","Touch","userEvents","touchInfo","pressEvent","_clicks","supportDoubleTap","_moved","_finished","press","_holdTimeout","_hold","minHold","_trigger","_tap","_clickTimeout","preventMove","_shouldNotMove","_withinIgnoreThreshold","UserEvents","dispose","_start","activeTouches","activeTouchIndex","isMoved","withEachUpEvent","downEvents","_maxTouches","multiTouch","allowSelection","captureUpIfMoved","surface","_surfaceMoveHandler","_move","_surfaceEndHandler","_end","_elementStartHandler","preventDragEvent","_elementDragStartHandler","_elementSelectHandler","surfaceElement","preventIfMovingProxy","preventIfMoving","_isMoved","_destroyed","_disposeAll","_isMultiTouch","touch1","touch2","x1","x2","dx","dy","touchDelta","_apiCall","_maxTouchesReached","eventTouches","eventTouch","_eachTouch","matchingTouch","dict","hasPointerCapture","setPointerCapture","defaultThreshold","autoMajorUnit","relativeValue","Point","theta","cosT","sinT","cx","cy","distanceTo","onCircle","radius","HasObservers","observers","_observers","addObserver","removeObserver","_suspended","optionsChange","geometryChange","_observerField","setAccessor","getAccessor","TBase","capitalized","defineAccessors","toMatrix","transformation","superclass","staticAccessors","originPoint","translateWith","scaleCopy","transformCopy","doRound","arg0","arg1","minX","minY","maxX","maxY","minPoint","maxPoint","withAccessors","Size","Rect","cornerRadius","setOrigin","setCornerRadius","getOrigin","getCornerRadius","getSize","topLeft","bottomRight","topRight","bottomLeft","bbox","fromPoints","expandCopy","containsPoint","_isOnPath","rectOuter","rectInner","rect1","rect2","Box","targetBox","wrapPoint","arrayPoint","snapTo","alignTo","targetCenter","shrink","dw","unpad","points","getHash","overlaps","rotation","r1","rotatePoint","r2","r3","r4","toRect","geom","hasSize","alignment","sizeFunc","Ring","innerRadius","startAngle","middle","setRadius","newRadius","radianAngle","ax","ay","adjacentBox","sector","midAndle","midPoint","hw","endAngle","vector","startPoint","startVector","endPoint","endVector","dist","getBBox","angles","allAngles","numericComparer","startAngleIndex","endAngleIndex","Sector","PRECISION","tolerance","closeOrLess","ellipseExtremeAngles","rx","ry","extremeX","extremeY","atan2","Transformation","_matrix","_optionsChange","Arc","setCenter","radiusX","radiusY","anticlockwise","xRotation","getCenter","pointAt","radian","curvePoints","_arcInterval","intervalAngle","subIntervalsCount","subIntervalAngle","currentAngle","nextAngle","_intervalCurvePoints","cp1","cp2","p2","extremeAngles","currentAngleX","bboxStartAngle","currentAngleY","currentPoint","currentPointX","currentPointY","oldStart","p1","p1Derivative","_derivativeAt","p2Derivative","angleRad","pointRadius","p0","p3","s1x","s2x","s1y","s2y","nx","ny","lineIntersection","calculateAngle","inAngleRange","largeArc","swipe","arcParameters","parameters","cosine","sine","xT","yT","xt2","yt2","rx2","ry2","constT","cxT","cyT","uX","uY","vX","vY","acos","angleCosine","signEndAngle","normalizeArcParameters","ElementsArray","_splice","_change","_add","_remove","_clearObserver","_setObserver","GeometryElementsArray","OptionsStore","_wrap","composite","parentObj","_clear","DASH_ARRAYS","dot","dash","longdash","dashdot","longdashdot","longdashdotdot","SOLID","BUTT","PATTERN","_initOptions","clip","createTransform","parentTransform","currentTransform","combinedMatrix","elementMatrix","clippedBBox","_clippedBBox","transformedPoint","_hasFill","_containsPoint","_hasStroke","isOutOfEndPoint","controlPoint","calculateCurveAt","toCubicPolynomial","ComplexNumber","real","cNumber","addConstant","multiplyConstant","nthRoot","nthR","isReal","numberSign","solveCubicEquation","squareRoot","solveQuadraticEquation","y3","z1","z2","b3a","hasRootsInRange","rootField","polynomial","roots","lineIntersectionsCount","intersects","pointAccessor","definePointAccessors","Segment","controlIn","controlOut","bboxTo","toSegment","segmentAnchor","toSegmentAnchor","_curveBoundingBox","_lineBoundingBox","extremesX","_curveExtremesFor","extremesY","xLimits","arrayLimits","yLimits","extremes","_curveExtremes","x3","x4","_intersectionsTo","intersectionsCount","rayIntersection","curveIntersectionsCount","_isOnCurveTo","endSegment","p4","rotatedPoints","_isOnLineTo","_isOnPathTo","withPoints","pointsToCurve","pointsIn","removeDuplicates","initialControlPoint","lastControlPoint","tangent","getTangent","firstControlPoint","secondControlPoint","controlPoints","getControlPoints","cp0","controlPoints$1","controlPoints$2","tangent$2","lineFunction","xField","yField","restrict","switchOrientation","calculateFunction","isLine","monotonic","isMonotonicByField","invertAxis","secondCP","oldXField","firstCP","restrictControlPoint","cp","xValue","yValue","anonymous","newFill","IDENTITY_MATRIX_HASH","matrixHash","_bboxCache","_matrixHash","_bbox","ShapeMap","isRelative","lineTo","curveTo","toLineParamaters","arcTo","lastControlIn","previousCommand","reflectionPoint","cubicControlPoints","quadraticToCubicControlPoints","insertPosition","third","scaledPoint","SEGMENT_REGEX","SPLIT_REGEX","pathInstance","closePath","parseParameters","moveTo","elementsBoundingBox","applyTransform","boundingBox","elementBoundingBox","rawBBox","elementsClippedBoundingBox","Path","lineJoin","lastSegment","arc","_addArcSegments","segmentStart","segmentEnd","currentType","print","pathWidth","segmentBox","MultiPath","fromRect","curveFromPoints","fromArc","paintable","measurable","ShapeBuilder","createRing","draw","innerEnd","PI_DIV_2","Circle","_pointAt","pointDistance","geometryAccessor","defineGeometryAccessors","GeometryCircle","_geometry","withGeometry","childrenField","traverse","childrenChange","_reparent","insert","insertAt","removeAt","newParent","traversable","swing","linear","easeOutElastic","asin","animationFrameProxy","animationFrame","webkitRequestAnimationFrame","mozRequestAnimationFrame","oRequestAnimationFrame","msRequestAnimationFrame","AnimationFactory","_items","Animation","easing","setup","easingFunctions","finish","_stopped","wallTime","easingPosition","ChartElement","initUserOptions","reflow","currentChild","getRoot","getService","chartService","translateChildren","childrenCount","renderVisual","createVisual","addVisual","renderChildren","createAnimation","renderComplete","visual","chartElement","appendVisual","childVisual","noclip","clipRoot","stackRoot","stackVisual","isStackRoot","visuals","hasHighlight","createHighlight","toggleHighlight","customVisual","_highlight","highlightOptions","highlightVisualArgs","series","percentage","runningTotal","toggleFocusHighlight","accessibility","focusHighlight","_focusHighlight","rootBackground","background","highlightColor","autoTextColor","focusHighlightOptions","createFocusHighlight","createGradientOverlay","gradientOptions","overlay","createGradient","supportsPointInactiveOpacity","BoxElement","shrinkToFit","hasSetSize","reflowPaddingBox","vAlign","paddingBox","contentBox","hasBox","visualStyle","dashType","addAccessibilityAttributesToVisual","accessibilityOptions","ariaRoleDescription","ariaChecked","ShapeElement","pointData","halfWidth","halfHeight","visualOptions","StopsArray","optionsAccessor","defineOptionsAccessors","GradientStop","withOptions","Gradient","stops","_createStops","_userSpace","userSpace","addStop","removeStop","LinearGradient","RadialGradient","_radius","_fallbackFill","fallbackFill","RADIAL","glass","sharpBevel","roundedBevel","roundedGlass","supportVML","sharpGlass","bubbleShadow","boxDiff","boxes","RootElement","rootOptions","gradients","currentBox","createBackground","drawingGradient","hashCode","gradient","GRADIENTS","usedSpace","currentStops","currentStop","innerRadialStops","cleanGradients","FloatElement","_initDirection","groupAxis","elementAxis","groupSizeField","elementSizeField","groupSpacing","elementSpacing","vSpacing","reflowChildren","groupOptions","groupsSize","maxGroupElementsSize","groupsCount","groupsStart","alignStart","groupStart","groupIdx","groupElements","elementStart","groupElementsCount","groupElementStart","elementBox","maxSize","groupElementsSize","DrawingText","paintOrder","rectToBox","ROWS_SPLIT_REGEX","TextBox","_initContainer","_autoReflow","floatElement","textOptions","rowIdx","visualFn","_boxReflow","visualBox","visualContext","normalBox","rotatedBox","rotationTransform","getDefaultVisual","boxCenter","_textBox","buildTitle","titleOptions","orderTitles","collapseVerticalMargins","prevBox","AxisLabel","culture","widget","alignRotation","rotationMatrix","rotationOrigin","alignAxis","distanceAxis","axisAnchor","distanceLeft","distanceRight","alignCenter","Note","childAlias","noteTemplate","aliasFor","wrapperBox","lineStart","linePoints","createLine","defaultVisual","out","defaultImplementation","IntlService","FORMAT_REPLACE_REGEX","FormatService","intlService","_intlService","localeAuto","ChartService","chart","isPannable","pannable","lock","DomEventsBuilder","createAxisTick","tickOptions","tickX","tickY","tick","createAxisGridLine","gridLine","lineEnd","Axis","labels","majorTickSize","minorTickSize","minorTicks","minorTickType","majorTicks","majorTickType","initFields","_deferLabels","createLabels","createTitle","createNotes","labelsRange","labelsCount","normalizeLabelRotation","labelOptions","clearLabels","autoRotateLabels","labelContext","createAxisLabel","clearTitle","lineBox","mirror","axisX","axisY","lineWidth","visualSize","notes","parseNoteValue","note","createPlotBands","gridLinesVisual","gridLines","_gridLines","createTicks","lineGroup","majorUnit","tickLineOptions","tickPositions","skipUnit","getMajorTickPositions","getMinorTickPositions","minorUnit","_alignLines","_lineGroup","getActualTickSize","tickSize","_backgroundPath","plotBands","plotArea","_plotbandGroup","pane","axes","slotX","slotY","getSlot","createPlotBandLabel","bandRect","labelTemplate","createGridLines","minorGridLines","majorGridLines","axisLineVisible","linePos","lineOptions","sizeFn","titleSize","space","boxSize","maxLabelSize","labelSize","arrangeTitle","arrangeLabels","arrangeNotes","getLabelsTickPositions","labelTickIndex","labelsBetweenTicks","tickIx","firstTickPosition","nextTickPosition","positionStart","positionEnd","positionLabel","labelBox","labelOffset","labelX","labelY","autoRotateLabelAngle","slotWidth","labelAngle","slot","shouldRenderNote","noteSlot","secondAxis","axisLabelText","tmpl","defaultText","maxLabelOffset","lastLabel","offsetField","startPosition","endPosition","maxStartOffset","maxEndOffset","startTick","endTick","limitRange","rangeSize","valueRange","seriesMin","seriesMax","lineDir","lineInfo","lineSize","axisDir","axisOrigin","pointOffset","scaleToDelta","rawScale","justified","prepareUserOptions","axisCrossingValue","MILLISECONDS","SECONDS","MINUTES","HOURS","DAYS","WEEKS","MONTHS","YEARS","TIME_PER_SECOND","TIME_PER_MINUTE","TIME_PER_HOUR","TIME_PER_DAY","TIME_PER_WEEK","TIME_PER_MONTH","TIME_PER_YEAR","TIME_PER_UNIT","absoluteDateDiff","addTicks","ticks","toDate","addDuration","dateValue","daysToSubtract","startOfWeek","roundedDate","tzDiff","addHours","setMilliseconds","floorDate","ceilDate","dateComparer","dateDiff","toTime","dateEquals","timeIndex","baseUnit","dateIndex","baseUnitStep","parseDates","dates","CategoryAxis","_ticks","categoriesHash","categories","srcCategories","definedMin","definedMax","rangeIndices","totalRange","roundedRange","_seriesMax","scaleOptions","hideOutOfRangeLabels","valueAxis","firstLabel","getTicks","labelTicks","tickIndices","stepSize","indices","getTickPositions","positions","_hash","hasMinor","filterOutOfRangePositions","startIndex","endIndex","slotBox","singleSlot","limitSlot","limittedSlot","categoryIndex","pointCategoryIndex","startValue","getCategory","totalIndex","categoryAt","categoriesCount","translateRange","scaleRange","limitedRangeIndices","minDelta","maxDelta","zoomRange","totalMin","totalMax","hideOutOfRangeNotes","pan","pointsRange","diffStart","diffEnd","rangeMin","rangeMax","_categoriesMap","currentRangeIndices","totalLimit","totalRangeIndices","indexCategories","COORDINATE_LIMIT","DateLabelFormats","weeks","BASE_UNITS","FIT","categoryRange","clearCache","_range","EmptyDateRange","displayIndices","displayRange","valueIndex","valuesCount","dateAt","DateRange","roundToBaseUnit","lowerEnd","roundToTotalStep","expandEnd","justifyEnd","valueStart","displayStart","valueEnd","displayEnd","autoBaseUnit","startUnit","startStep","unitSteps","nextStep","categoryLimits","span","autoBaseUnitSteps","maxDateGroups","autoUnit","autoUnitIx","totalUnits","initUnit","lastCategory","minDiff","categoryIx","defaultBaseUnit","_indices","minIdx","maxIdx","roundedStep","DateCategoryAxis","dataRange","_parsed","panning","userSetBaseUnit","userSetBaseUnitStep","maxDivisions","safeOptions","forecast","_forecast","divisionOptions","dataRangeOptions","divisionRange","rangeLabels","totalLimits","panRange","datesRange","indicesRange","autoBaseUnitStep","maxDiff","rangeDiff","baseUnitIndex","stepIndex","createRangeLabels","arrangeRangeLabels","position$1","autoRotateRangeLabels","hideOverlappingLabels","firstRangeLabel","lastRangeLabel","rangeLabel","unitFormat","createLabel","rotateLabel","dateRange","limitCoordinate","MIN_VALUE_RANGE","NumericAxis","autoOptions","narrowRange","autoMin","axisMin","autoAxisMin","autoMax","axisMax","autoAxisMax","roundToMajorUnit","remainderClose","autoAxisOptions","totalOptions","totalAxisOptions","userOptions","userSetMin","userSetMax","clearNullValues","userSetLimits","axisOptions","totalMajorUnit","getDivisions","stepValue","divisions","skipStep","endValue","isValidRange","ratio","DateValueAxis","timeUnits","baseUnitTime","userMajorUnit","actualUnits","unitsToAdd","applyDefaults","axisCrossingValues","limittedRange","LogarithmicAxis","logMaxRemainder","throwNegativeValuesError","initRange","logMin","logMax","floorMax","traverseMajorTicksPositions","tickPosition","traverseMinorTicksPositions","minorOptions","_minorIntervalOptions","minorStep","GridLinesMixin","majorAngles","minorAngles","skipMajor","majorGridLineAngles","renderMajorGridLines","minorGridLineAngles","renderMinorGridLines","renderGridLines","radiusCallback","circle","gridLineAngles","skipAngles","divs","altAxisVisible","RadarCategoryAxis","reflowLabels","skipOption","stepOption","divCount","divAngle","majorIntervals","minorIntervals","minorAngle","minorRadius","band","plotBandSlot","ring","totalDivs","slotAngle","fromValue","slotStart","PolarAxis","instanceOptions","RadarNumericAxisMixin","polarAxis","bandStyle","plotBandPoints","innerPoints","outerPoints","innerCircle","outerCircle","radarMajorGridLinePositions","radarMinorGridLinePositions","tickRadius","angleIx","angularDistance","gamma","beta","axisType","RadarNumericAxis","minorSkipStep","RadarLogarithmicAxis","CurveProcessor","dataPoints","tangent$1","ChartAxis","_axis","findAxisByName","ChartPane","chartsVisual","chartContainer","_pane","ChartPlotArea","_plotArea","backgroundVisual","_bgVisual","countNumbers","sumOrNull","avg","SeriesBinder","_valueFields","_otherFields","_nullValue","_undefinedValue","seriesTypes","valueFields","otherFields","_makeValue","canonicalFields","bindPoint","pointIx","fieldData","_bindFromArray","srcValueFields","sourceFields","srcPointFields","_bindFromObject","srcFields","srcFieldName","sourceFieldName","percentRegex","standardDeviationRegex","ErrorRangeCalculator","errorValue","initGlobalRanges","deviationMatch","valueGetter","createValueGetter","getAverage","deviation","getStandardDeviation","errorRange","globalRange","standardError","getStandardError","binder","getErrorRange","pointValue","percentValue","isSample","squareDifferenceSum","INITIAL_ANIMATION_DURATION","FADEIN","BORDER_BRIGHTNESS","START_SCALE","ERROR_LOW_FIELD","ERROR_HIGH_FIELD","INTERPOLATE","ABOVE","BELOW","SMOOTH","STEP","AREA","BAR","BOX_PLOT","BUBBLE","BULLET","CANDLESTICK","COLUMN","DONUT","FUNNEL","PYRAMID","HEATMAP","HORIZONTAL_WATERFALL","LINE","OHLC","PIE","POLAR_AREA","POLAR_LINE","POLAR_SCATTER","RADAR_AREA","RADAR_COLUMN","RADAR_LINE","RANGE_AREA","RANGE_BAR","RANGE_COLUMN","SCATTER","SCATTER_LINE","VERTICAL_AREA","VERTICAL_BOX_PLOT","VERTICAL_BULLET","VERTICAL_LINE","VERTICAL_RANGE_AREA","WATERFALL","EQUALLY_SPACED_SERIES","TRENDLINE_EXPONENTIAL","TRENDLINE_LINEAR","TRENDLINE_LOGARITHMIC","TRENDLINE_MOVING_AVERAGE","TRENDLINE_POLYNOMIAL","TRENDLINE_POWER","TRENDLINE_SERIES","LEGEND_ITEM_CLICK","SERIES_CLICK","SERIES_HOVER","SERIES_OVER","SERIES_LEAVE","PLOT_AREA_HOVER","PLOT_AREA_LEAVE","DRAG","DRAG_END","DRAG_START","ZOOM_START","ZOOM","ZOOM_END","SELECT_START","SELECT_END","SHOW_TOOLTIP","HIDE_TOOLTIP","CHART_POINT_ROLE","CHART_POINT_CLASSNAME","CHART_POINT_ROLE_DESCRIPTION","LOGARITHMIC","CATEGORY","INSIDE_END","OUTSIDE_END","MOUSEWHEEL","DRILLDOWN_FIELD","ErrorBarBase","endCaps","valueBox","getAxis","centerBox","capsWidth","getCapsWidth","capValue","capStart","capEnd","createDefaultVisual","CategoricalErrorBar","seriesValueAxis","anyHasZIndex","appendIfNotNull","areNumbers","segmentVisible","pointVisibility","bindSegments","seriesCount","equalsIgnoreCase","evalOptions","dryRun","needsEval","filterSeriesByType","currentSeries","dateCache","parseDateCategory","hasGradientOverlay","isDateAxis","sampleCategory","dateCategory","singleItemOrArray","AREA_REGEX","findNext","pointHasValue","outPoint","hasItem","createOutOfRangePoints","hasMinPoint","hasMaxPoint","missingValues","seriesMissingValues","_outOfRangeMinPoint","_outOfRangeMaxPoint","CategoricalChart","categoryAxis","seriesCategoryAxis","valueAxisRanges","categoryPoints","seriesPoints","seriesOptions","_evalSeries","traverseDataPoints","addValue","pointOptions","seriesIx","pointType","invertAxes","plotValue","isStacked100","otherValues","categorySum","otherStack","plotRange","isStacked","positive","prevValue","isStackedBar","defaultStack","isNonGroupStack","otherValue","categoryAxisCrossingValue","stackLimits","axisName","stackName","pIx","updateStackRange","chartSeries","limitsCache","limits","errorTotals","addErrorBar","errorBars","lowValue","highValue","seriesErrorRanges","addPointErrorBar","stackedErrorRange","updateRange","errorBar","createPoint","noteText","evalPointOptions","_defaults","doEval","axisRange","namedValueAxes","categorySlots","chartPoints","categorySlot","valueSlot","pointSlot","aboveAxis","stackValue","reflowPoint","reflowCategories","limitPoints","limitPoint","limitedSlot","axisIndex","_outOfRangeCallback","seriesIx$1","currentCategory","seriesIx$2","outOfRangePoint","formatPointValue","PointEventsMixin","hover","NoteMixin","createNote","LinePoint","tooltipTracking","markers","_rendered","createMarker","createLabelElement","getLabelText","formatValue","getAriaLabelText","getAriaTemplate","markerBorder","markerBox","_childBox","childBox","reflowLabel","noteTargetBox","defaultColor","shadow","highlightVisual","halfSize","markerOptions","tooltipAnchor","clipBox","horizontalAlign","overlapsBox","unclipElements","focusVisual","clearFocusFromVisual","getIndex","LineSegment","toGeometryPoints","segmentVisual","coords","getNearestPoint","StepLineMixin","calculateStepPoints","stepAxis","stepDir","previousPoint","toGeometryPoint","stepPoint","lintPoint","StepLineSegment","SplineSegment","curve","LineChartMixin","renderSegments","_segments","sortedPoints","sortPoints","pointCount","createSegment","_addSegment","nearestPoint","allPoints","nearestPointDistance","ClipAnimation","_setEnd","setX","ClipAnimationMixin","clipPath","_setChildrenAnimation","animationPoints","LineChart","AreaSegment","prevSegment","stackPoints","createFill","createStroke","lineCap","strokeSegments","_strokeSegments","createStrokeSegments","segmentsFromPoints","stackSegments","createStackSegments","hasStackSegment","fillSegments","hasStackSegments","fillToAxes","fillPath","crossingValue","endSlot","firstPoint","lastPoint","StepAreaSegment","SplineAreaSegment","curveProcessor","AreaChart","previousSegment","_gapStackPoints","_stackPoints","stackPoint","startIdx","endIdx","currentSeriesIx","_previousSegmentPoint","gapStackPoint","_createGapStackPoint","segmentIx","seriesIdx","AxisGroupRangeTracker","axisRanges","chartAxisRanges","chartRange","BarLabel","alignToClipBox","parentBox","Bar","rectVisual","createRect","getBorderColor","baseColor","_brightness","AccessibilityAttributesMixin","forEachReverse","ClusterLayout","gap","slots","slotSize","StackWrap","positionAxis","BarChart","clusterType","stackType","stackOrDefault","negativeColor","cluster","getStackWrap","stackWrap","stackGroup","wraps","_stackGroup","zeroSlot","stackAxis","childrenLength","_setAnimationOptions","pointVisual","Candlestick","ocSlot","lhSlot","realBody","reflowNote","_mainVisual","mainVisual","createOverlay","createBody","createLines","drawLines","lineStyle","normalColor","meanPoints","medianPoints","whiskerPoints","tooltip","CandlestickChart","splitValue","downColor","BoxPlot","whiskerSlot","boxSlot","q3","reflowBoxSlot","reflowWhiskerSlot","medianSlot","median","meanSlot","calcMeanPoints","calcWhiskerPoints","calcMedianPoints","renderOutliers","outliers","outerFence","outlierValue","markersBorder","reflowOutliers","whiskers","VerticalBoxPlot","BoxPlotChart","filterOutliers","ScatterErrorBar","seriesAxes","ScatterChart","_initFields","xAxisRanges","yAxisRanges","valueErrorField","lowField","highField","createMissingValue","xAxisName","xAxis","yAxisName","yAxis","xAxisRange","yAxisRange","namedXAxes","namedYAxes","Bubble","highlightGroup","BubbleChart","_maxSize","negativeValues","updateBubblesSize","pointsCount","animationOptions","minR","minSize","maxR","minArea","areaRatio","Target","Bullet","targetValueSlot","targetSlotX","targetSlotY","targetSlot","bodyVisual","BulletChart","seriesItem","wrapData","bulletOptions","bullet","BaseTooltip","getStyle","pointColor","paddingBottom","tooltipOptions","CrosshairTooltip","crosshair","formatService","initAxisName","showAt","stickyMode","getAnchor","ref_options","Crosshair","moveLine","getBox","dim","axisLineBox","currentAxis","ChartContainer","shouldClip","_clipBox","chartsBox","clipRect","unclipLabels","charts","appendAxis","appendAxisAt","appendChart","removeAxis","removeChart","allAxes","vGridLines","hGridLines","notifyRender","axisValueField","length$1","axis$1","lineBox$1","paneIndex","PlotAreaBase","initSeries","legend","crosshairs","originalOptions","originalSeries","_bindCache","createPanes","createCrosshairs","cached","paneDefaults","paneOptions","panes","panesLength","currentPane","crosshairOptions","currentCrosshair","removeCrosshairs","hideCrosshairs","findPane","matchingPane","findPointPane","axisToRemove","filteredAxes","chartToRemove","filteredCharts","addToLegend","inactiveItems","inactiveItemsLabels","seriesVisible","visibleInLegend","itemLabelOptions","markerColor","groupAxes","xAxes","yAxes","paneIx","paneAxes","axisIx","groupSeriesByPane","seriesByPane","seriesPaneName","filterVisibleSeries","reflowPanes","detachLabels","reflowAxes","reflowCharts","redraw","panesArray","crossingAxes","crossingValues","valuesToAdd","alignAxisTo","targetAxis","targetCrossingValue","slotEdge","targetEdge","axisBox","alignAxes","xAnchor","yAnchor","xAnchorCrossings","yAnchorCrossings","leftAnchors","rightAnchors","topAnchors","bottomAnchors","paneId","paneAnchor","anchorCrossings","_overlap","_mirrored","paneYAnchor","pane$1","paneId$1","visible$1","anchor$1","anchorCrossings$1","shrinkAxisWidth","axisGroupBox","shrinkAxisHeight","shrinked","fitAxes","paneBox","currentAxis$1","reflowPaneAxes","autoRotateAxisLabels","groupedAxes","rotated","allPaneAxes","chartPane","remainingHeight","autoHeightPanes","percents","currentPane$1","currentPane$2","backgroundBox","axesCount","axisA","axisB","chartsBoxes","addBackgroundPaths","multipath","backgroundContainsPoint","pointsByCategoryIndex","pointsBySeriesIndex","seriesIndex","filterPoints","pointsByPointIndex","pointsBySeriesName","findPoint","paneByPoint","detachAxisGroupLabels","labelAxisCount","labelAxis","createLabelAxis","onAxis","isTrendline","trendlineFactory","createTrendlineSeries","modifiedSeries","forSeries","seriesByName","trendlineSeries","getFirstPoint","getPointBelow","_getNextPoint","_pointsByVertical","getPointAbove","getPointToTheRight","_pointsByHorizontal","getPointToTheLeft","getPointsFunc","increment","loopPoints","basePoint","isSingleAxis","PlotAreaEventsMixin","SeriesAggregator","defaultAggregates","seriesFields","_seriesFields","rootAggregate","_series","_binder","fieldAggregate","canonicalName","aggregatePoints","srcPoints","_bindPoints","firstDataItem","srcValues","_bindField","DefaultAggregates","seriesType","RangeBar","fromOptions","toOptions","labelFrom","labelTo","RangeBarChart","plotLimits","RangeLinePoint","AUTO","RangeAreaPoint","initLabelsFormat","fromPoint","toPoint","copyFields","fromBox","toBox","positionLabels","fromLabelPosition","toLabelPosition","RangeAreaSegment","toPoints","fromSegments","fromPath","SplineRangeAreaSegment","createCurveSegments","StepRangeAreaSegment","RangeAreaChart","fromSlot","toSlot","OHLCPoint","oPoints","cPoints","lhPoints","oSlot","cSlot","OHLCChart","WaterfallSegment","WaterfallChart","createSegments","totalCategories","prevPoint","impl","sourceValues","slope","intercept","xy","xMin","xMax","valueMapper","currentRange","seriesValues","checkAllPositive","calculateSlope","getTrendlineData","categoryField","period","averagePoints","lastValue","trendline","calculateMovingAverage","calculatePoints","coefficients","linearRegression","calculatePolynomial","exponentialTrendline","linearTrendline","logarithmicTrendline","movingAverageTrendline","polynomialTrendline","powerTrendline","AREA_SERIES","OUT_OF_RANGE_SERIES","CategoricalPlotArea","namedCategoryAxes","valueAxisRangeTracker","_seriesPointsCache","_currentPointsCache","stack100","createCategoryAxes","aggregateCategories","createCategoryAxesLabels","createCharts","createValueAxes","trendlineRegistry","filterSeries","trendlineAggregateForecast","srcSeries","aggregateSeries","paneSeries","visibleSeries","groupSeriesByCategoryAxis","groupIx","createChartGroup","createAreaChart","createRangeAreaChart","createBarChart","createRangeBarChart","createBulletChart","createCandlestickChart","createBoxPlotChart","createOHLCChart","createWaterfallChart","createLineChart","processedSeries","axisPane","dataLength","outOfRangePoints","clearSeriesPointsCache","seriesSourcePoints","dateAxis","srcData","aggregator","categoryItem","categoryIdx","categoriesToAdd","defaultPaneName","stackableChartOptions","anyStackedSeries","categoryAxes","unique","axisSeries","groupSeries","firstSeries","barChart","rangeColumnChart","bulletChart","lineChart","areaChart","rangeAreaChart","waterfallChart","axisRequiresRounding","categoryAxisName","categoryAxisIndex","centeredSeries","seriesAxis","aggregatedAxis","definitions","isJustified","primaryAxis","defaultRange","baseOptions","defaultAxisRange","eventType","_eventCoordinates","pointPane","updateAxisOptions","_siblingsBySeriesIndex","_siblingsByPointIndex","_getSeriesCompareFn","_isInStackedSeries","sortableSeries","stackableSeries","targetOptions","getArray","Surface","_kendoExportVisual","exportVisual","_click","_handler","_mouseenter","_mouseleave","_mousemove","_visual","_enableTracking","domNode","_kendoNode","currentSize","_resize","force","suspendTracking","_suspendedTracking","resumeTracking","_elementOffset","_surfacePoint","coord","inverseTransform","BaseNode","removeSelf","invalidate","renderAttr","renderAllAttr","attrs","renderStyle","isWindowAvailable","meego","webos","blackberry","ffos","desktopBrowserRxs","mobileBrowserRxs","omini","omobile","firefox","mobilesafari","chrome","testRx","rxs","browserInfo","detectDesktopBrowser","minorVersion","majorVersion","flatVersion","cordova","PhoneGap","appMode","standalone","detectMobileOS","MSPointerEvent","reComment","reDeclaration","reDoubleQuoted","reSingleQuoted","parseInlineStyles","styleString","styleObject","styleAttr","replaceStyleAttr","restoreStyleAttr","setStyle","SVG_NS","renderSVG","setInnerHTML","testFragment","testContainer","hasParser","DOMParser","chartDoc","parseFromString","importedDoc","adoptNode","ampRegExp","ltRegExp","quoteRegExp","aposRegExp","gtRegExp","htmlEncode","TRANSFORM","DefinitionMap","isDefinition","clearDefinitions","childNode","NODE_MAP","createDefinitions","attachTo","domElement","setElement","nodes","childElement","updateDefinition","attr","removeAttr","accessibilityOptionsChange","allAttr","toggleAttr","allCss","mapTransform","renderTransform","transformChange","mapStyle","renderOpacity","renderId","renderClassName","renderRole","renderAriaLabel","renderAriaRoleDescription","renderAriaChecked","hasDefinitions","definitionChange","refUrl","renderDefinitions","mapDefinitions","skipBaseHref","baseHref","GradientStopNode","renderOffset","GradientNode","loadStops","stopNode","mapCoordinates","renderCoordinates","mapSpace","LinearGradientNode","RadialGradientNode","PatternNode","getWidth","getHeight","ClipNode","renderClipRule","DefinitionNode","definitionMap","addDefinitions","removeDefinitions","createDefinition","addDefinition","mapItem","removeDefinition","RootNode","defs","ATTRIBUTE_MAP","PathNode","renderData","mapFill","mapStroke","renderLinecap","renderDashType","renderStroke","dashArray","renderFill","ArcNode","CircleNode","GroupNode","ImageNode","mapPosition","mapSource","renderPosition","renderSource","MultiPathNode","RectNode","ENTITY_REGEX","decodeEntities","TextNode","setY","renderContent","renderTextAnchor","renderPaintOrder","Image","BaseSurface","_root","_template","_rootElement","ctm","getScreenCTM","alignToScreen","mouseover","mouseout","mousemove","svgStyles","initClip","clearClip","setClip","beginPath","renderPoints","setTransform","loadElements","cors","setOpacity","globalAlpha","opactity","renderTo","save","lastExecTime","elapsed","FRAME_DELAY","canvas","invalidateHandler","_invalidate","_rescale","_devicePixelRatio","fixedScale","clearRect","QuadRoot","shapes","_quadNode","pointShapes","QuadNode","inBounds","nodeRect","nodeBottomRight","inserted","_initChildren","ROOT_SIZE","ShapesQuadTree","initRoots","rootMap","rootElements","pointShape","sectorRoot","assignZindex","zIndexComparer","levelWeight","_zIndex","bboxChange","_insertShape","elementsArray","_insert","sectors","getSectors","inRoot","bottomX","bottomY","SurfaceCursor","_resetCursor","_shapeCursor","_current","_defaultCursor","_getCursor","_setCursor","renderPath","prevOut","bezierCurveTo","setLineDash","setLineCap","setLineJoin","setFill","setStroke","hasFill","setGradientFill","setPatternFill","fillStyle","createLinearGradient","createRadialGradient","addColorStop","addGradientStops","patternCanvas","patternContext","createPattern","strokeStyle","mozDash","webkitLineDash","onLoad","complete","drawImage","textAlign","strokeText","fillText","_mouseTrackHandler","_trackMouse","_searchTree","_cursor","image","rootElement","loadingStates","resolveDataURL","toDataURL","currentShape","_currentShape","SurfaceFactory","SVGSurface","CanvasSurface","hasFeature","preferred","Highlight","_points","arrayPoints","togglePointHighlight","toggleHandler","isHighlighted","acceptKey","mouseKey","toChartAxisRanges","ranges","Pannable","_active","_panAxes","updatedAxes","ZoomSelection","marquee","_marquee","marqueeColor","removeElement","setStyles","zoomPane","_zoomPane","_zoomPaneClipBox","_selectionPosition","selectionPosition","_updateAxisRanges","MousewheelZoom","rate","updateRanges","sizeField","alignStartReverse","alignContent","lineSpacing","revers","Layout","_rect","_fieldMap","_initMap","fieldMap","groupsSizeField","groupsAxis","justifyAlign","groupBox","_initGroups","groupOrigin","elementOrigin","arrangeElements","transofrm","translateToPoint","bboxes","scaledStart","newStart","_newGroup","addGroup","_addToGroup","LegendLayout","legendItem","DEFAULT_MARKER_SIZE","LegendItemMarker","markerHighlightOptions","MarkerLineArea","LegendItemLine","centerY","createHighlightLine","createHighlightMarker","highlightLine","highlightMarker","LegendItemSquare","LegendItem","createContainer","markerWrap","createMarkerArea","_marker","_createMarker","_createLine","_createMarkerLine","_createSquare","_highlightOptions","_line","_markerLineArea","_square","_highlightMarkers","_toggleHighlight","_restoreMarkers","eventSink","_itemOverlay","_legendItemHover","_unsetActivePoint","CUSTOM","Legend","createContainers","createLegendTitle","createItems","userAlign","hasTitle","itemsContainer","innerElement","markersOptions","itemOptions","hasItems","legendBox","containerCustomReflow","containerReflow","alignTarget","containerBox","createTitleLayout","appendTitleLayoutContent","PlotAreaFactory","_registry","trendlines","createDiv","closestHandle","Selection","_dateAxis","initOptions","createElements","onPane","leftMask","rightMask","leftHandle","rightHandle","selectionStyles","leftHandleHeight","rightHandleHeight","mousewheel","_mousewheelHandler","_mousewheel","_domEvents","_press","gesturestart","_gesturestart","gesturechange","_gesturechange","gestureend","_gestureend","_mwTimeout","_rangeEventArgs","_pointInPane","modelCoords","_toModelCoordinates","bodyRect","inBody","moveTarget","oldRange","rightClick","_slot","leftMaskWidth","rightMaskWidth","toValue","zDir","Tooltip","SharedTooltip","tooltipPoints","_slotAnchor","_defaultAnchor","categoryText","categoryFormat","slotCenter","BarChartAnimation","fromScale","BubbleAnimation","FadeInAnimation","fadeTo","PieAnimation","ScatterLineChart","missingValue","samplingInterval","getScatterTrendlineData","scatterValueGetter","logValueGetter","xValueLimits","scatterRegistry","scatterExponentialTrendline","scatterLinearTrendline","scatterLogarithmicTrendline","scatterMovingAverageTrendline","scatterPolynomialTrendline","scatterPowerTrendline","XYPlotArea","xAxisRangeTracker","yAxisRangeTracker","filteredSeries","createScatterChart","createScatterLineChart","createBubbleChart","createAxes","createXYAxis","inferredDate","namedAxes","isLog","typeSamples","seriesAxisName","firstPointValue","xAxesOptions","yAxesOptions","xValues","yValues","currentValue","scatterTrendlineRegistry","PieSegment","labelText","themeLabels","seriesDefaults","animationDelay","labelsOptions","labelsDistance","labelHeight","labelWidth","createSegmentVisual","borderOptions","singleSegment","tooltipAlignment","RAD_30","RAD_60","PieChartMixin","createLegendItem","legendOptions","pointVisible","legendItems","PieChart","seriesColors","colorsCount","anglePerValue","constantAngle","explode","evalSegmentOptions","segmentOptions","seriesConfigs","halfMinWidth","defaultPadding","newBox","newBoxCenter","leftSideLabels","rightSideLabels","seriesConfig","labelComparator","leftLabelsReflow","rightLabelsReflow","distances","distanceBetweenLabels","distributeLabels","lr","firstBox","secondBox","_takeDistance","amount","available","boxX","labelDistance","boxY","hAlignLabel","connectors","_connectorLines","connectorsColor","connectorLine","centerPoint","sr","crossing","pointInCircle","autoFit","pieCenter","bboxBottom","reverseValue","originalX","sector_center","b1","b2","uat","PiePlotArea","createPieChart","pieChart","DonutSegment","DonutChart","holeSize","totalSize","seriesWithoutSize","currentSeries$1","DonutPlotArea","createDonutChart","donutChart","PolarPlotAreaBase","createPolarAxis","createValueAxis","axisDefaultRange","valueAxisOptions","valueAxisBox","heightDiff","PolarScatterChart","valueRadius","PolarLineChart","SplinePolarAreaSegment","_polarAxisCenter","PolarAreaSegment","centerSegment","PolarAreaChart","_hasMissingValuesGap","xComparer","PolarPlotArea","scatterChart","RadarLineChart","seriesSegments","groupBySeriesIx","isFirstDataPoint","isLastDataPoint","SplineRadarAreaSegment","RadarAreaSegment","RadarAreaChart","RadarSegment","RadarClusterLayout","slotSector","RadarStackLayout","childSector","RadarBarChart","RadarPlotArea","_hasBarCharts","_isStacked100","chartOptions","FunnelSegment","chartBox","FunnelChart","labelPadding","dynamicSlopeReflow","firstSegment","maxSegment","lastUpperSide","previousOffset","previousHeight","nextSegment","nextPercentage","dynamicHeight","segmentSpacing","constantSlopeReflow","decreasingWidth","neckRatio","finalNarrow","dynamicSlope","PyramidChart","FunnelPlotArea","createChart","chartType","minLightnessOffset","hsl","HeatmapPoint","labelColor","isRoundRect","halfBorderWidth","HeatmapChart","setRange","colorScale","indexX","indexY","xRange","yRange","ref$2","xIndex","yIndex","xIn","yIn","HeatmapPlotArea","bindCategories","createAxisLabels","xCategories","yCategories","createHeatmapChart","xAxisOptions","yAxisOptions","firstCategory","normalizedOffset","axisXItems","_getPointAxisXIndex","targetXValue","compareValues","_getPointAxisYIndex","axisYItems","targetYValue","_getPointAxisIndex","axisItem","COLOR","FIRST","MAX","MIN","NOTE_TEXT","errorLow","errorHigh","AXIS_NAMES","MOUSEMOVE","CONTEXTMENU","MOUSELEAVE","KEYDOWN","FOCUS","BLUR","Chart","themeOptions","_initElement","_originalOptions","_theme","_initTheme","_focusState","_initHandlers","_initSurface","fontLoaded","_redraw","_attachEvents","_setElementClass","seriesCopies","aliases","alias","resolveAxisAliases","applySeriesColors","chartArea","_selections","_destroySelections","_setupSelection","_noTransitionsRedraw","paneName","_model","findPaneByName","findPaneByIndex","seriesName","categoryName","pointByCategoryName","togglePointsHighlight","showTooltip","_sharedTooltip","_tooltip","hideTooltip","_surfaceWrap","renderAs","_destroySurface","_surfaceMouseenterHandler","_surfaceMouseleaveHandler","_getModel","_destroyView","_setElementAccessibilityAttributes","_legend","_createTooltip","_createPannable","_createZoomSelection","_createMousewheelZoom","triggerPaneRender","_navState","_cancelDomEvents","_redrawFocusHighlight","ref_focusState","legendInFocus","preserveHighlight","_focusElement","_getFocusedLegendItem","exportOptions","currentOptions","clearMissingValues","_pannable","zoomable","_zoomSelection","_mousewheelZoom","_toggleDragZoomEvents","allowDrag","allowZoom","_dragZoomEnabled","_touchAction","_toggleDomEvents","domEvents","toggleDrag","toggleZoom","_createSharedTooltip","axisDefaults","themeAxisDefaults","mapAxisOptions","axisColor","applyAxisDefaults","seriesLength","commonDefaults","themeSeriesDefaults","commonThemeDefaults","cleanupNestedSeriesDefaults","applySeriesDefaults","colors","seriesColor","_createPlotArea","_modelOptions","skipSeries","selections","_selectStart","_selectEnd","_clickHandler","_keydownHandler","_keydown","_focusHandler","_focus","_blurHandler","_blur","_mousedownHandler","_mousedown","_mouseleaveHandler","_mouseover","_mouseout","_toDocumentCoordinates","_updateDrilldownPoint","_resetDrilldownPoint","_focusPoint","_startDrilldown","_focusLegendItem","obj$1","_shouldAttachMouseMove","_hoveredPoint","_plotAreaHovered","_hasInactiveOpacity","_activeChartInstance","_applySeriesOpacity","_updateSeriesOpacity","_stopChartHandlers","_gestureDistance","_clearFocusedElement","_zooming","mousewheelZoom","previousGestureDistance","scaleDelta","_drawingChartElement","leave","_startNavigation","_suppressHover","ranges$1","_endNavigation","_mousewheelZoomRate","totalDelta","chartEvent","_getChartElement","coordinates","_elementPadding","_padding","drawingElement","sharedTooltip","_startHover","_trackSharedTooltip","_propagateClick","handlingTap","_isLegendBeforeChart","legendPosition","_preventInitialPointFocus","_focusFirstLegendItem","_focusFirstPoint","focusedElement","isLegendBeforeChart","_navigatePoints","_navigateLegend","_hideTooltip","focusState","moveFocus","focusedPoint","_displayTooltip","itemsLength","cycleFunc","focusedLegendItemIndex","_hasFocus","_focusChart","omitHighlight","_setElementActiveDescendant","_showSeriesInactiveOpacity","_showInactiveOpacity","_clearElementActiveDescendant","_pseudoFocusedElement","_createPseudoFocusedElement","_hideInactiveOpacity","activePoint","_activePoint","_updateHoveredPoint","_displayInactiveOpacity","multipleSeries","highlightPoints","chartInstance","_chartInstanceFromPoint","inactivePoints","_getInactivePoints","_getInactiveOpacityForSeries","_getAllPointsOfType","hoveredPoint","drilldown","_drilldownState","resetOpacity","currSeries","defaultOpacity","_getDefaultOpacityForSeries","inactiveOpacity","activeSeries","hasDefaultInactiveOpacity","hasInactiveOpacity","defaultInactiveOpacity","_mouseMoveTrackHandler","_mouseMoveTracking","seriesPoint","_trackCrosshairs","overPlotArea","_tooltipCategoryIx","_sharedHighlight","pointArgs","hoverArgs","hideElements","keepTooltipOpen","_deferRedraw","_clearRedrawTimeout","_redrawTimeout","autoBind","bindCategoryAxisFromSeries","uniqueCategories","seriesOnAxis","hasCategoryBinding","seriesWithData","categorySamples","_isBindable","transitionsState","updateMouseMoveHandler","applyOptions","setDirection","setIntlService","noTransitionsRedraw","rangeColumn","verticalLine","pie","donut","verticalArea","scatter","scatterLine","bubble","candlestick","ohlc","boxPlot","verticalBullet","polarArea","polarLine","radarArea","radarLine","waterfall","DATA_FIELDS","fieldValue","originalValue","ChartSharedTooltip","NO_CROSSHAIR","wrapNumber","Sparkline","_initialWidth","stage","displayState","_autoWidth","_calculateWidth","currentChart","pointWidth","normalizeOptions","FadeOutAnimation","_initialOpacity","NavigatorHint","chartPadding","minPos","clearHideTimeout","_visible","tooltipStyle","_hideTimeout","_hideAnimation","hideDelay","NAVIGATOR_PANE","NAVIGATOR_AXIS","DEFAULT_PANE","Navigator","chartObserver","clean","_redrawSelf","initSelection","axisClone","ClonedObject","selectStart","selectEnd","filterAxes","silent","redrawSlaves","slavePanes","_drag","navigatorAxis","naviRange","inNavigator","liveDrag","showHint","_dragEnd","readSelection","ref_selection_options","_zoom","fromIx","toIx","_zoomEnd","__navi","naviOptions","attachAxes","attachSeries","valueAxes","justifyAxis","_collapse","autoBindElements","navigatorSeries","dateField","StockChart","stockDefaults","destroyNavigator","_fullRedraw","_dirty","partialRedraw","dirty","_seriesCount","copyNavigatorCategories","ANGULAR_SPEED","ARROW_POINTER","BAR_POINTER","DEFAULT_LINE_WIDTH","DEGREE","LINEAR","RADIAL_POINTER","RADIAL_RANGE_POINTER","buildLabelElement","geo","styleGeometry","styleBox","getRange","Gauge","contextService","pointerValue","pointer","pointers","_setValueOptions","_draw","_visuals","allValues","arrayValues","_toggleTransitions","_surfaceSize","gaugeArea","_createGaugeArea","_createModel","_gaugeAreaMargin","currentTheme","areaGeometry","_surfaceElement","_getSize","defaultSize","_defaultSize","renderAxisTick","tickRenderOptions","renderTicks","tickGroup","LinearScale","renderLabels","scaleLine","renderLine","scaleTicks","renderRanges","linePath","Pointer","_oldValue","repaint","LinearPointer","pointerBox","pointerRangeBox","trackBox","trackSize","pointerHalfSize","getElementOptions","_margin","ArrowLinearPointerAnimation","toScale","translateX","translateY","ArrowLinearPointer","pointerShape","elementOptions","BarLinearPointerAnimation","newPoints","oldPoints","speed","BarLinearPointer","minSlot","sizeAxis","pointerPath","oldShape","renderTrack","trackOptions","LinearGauge","bboxX","bboxY","_shrinkScaleWidth","_getBox","_alignElements","_shrinkElements","_buildVisual","scaleElements","plotAreaBox","scaleBox","GeometryArc","GEO_ARC_ADJUST_ANGLE","drawTicks","tickAngles","getRadiusX","tickStart","tickEnd","rangeSegment","RadialScale","renderArc","labelElements","repositionRanges","hasRanges","ticksSize","labelsGroup","rangeDistance","isInside","hasLabelElements","setRadiusX","setRadiusY","paddingWidth","paddingHeight","labelPos","labelElement","prevLabelPos","labelTransform","rangeRadius","getRangeRadius","rangeSegments","segmentsCount","rangeGeom","rangePlaceholderColor","tickArc","majorTickAngles","allTicks","_tickDifference","minorTickAngles","normalizeTickAngles","tickCount","repositionTicks","newPoint","xDiff","yDiff","RadialPointerAnimation","newAngle","oldAngle","RadialPointer","setAngle","_renderNeedle","_renderCap","capSize","cap","needleColor","needlePath","capColor","RadialGauge","_initialPlotArea","fitScale","alignScale","_buildPointers","midDiff","oldDiff","getDiff","staleFlag","getPlotBox","scaleArc","plotBbox","plotBox","plotBoxCenter","paddingX","paddingY","pointersArr","ArcScale","rangeLineCap","placeholderRangeAngle","setEndAngle","setStartAngle","RangePointerAnimation","startColor","currentColor","RangePointer","rangeColor","ArcGauge","centerLabelPosition","yLimit","CircularGauge","Encoding","initProperties","quietZoneLength","addQuietZone","convertedValue","initValue","addData","invalidCharacterError","addCheckSum","Code11","characterMap","cCheckSumTotal","kCheckSumTotal","kCheckSumMinLength","checkSumMod","DASH_VALUE","DASH","STOP","addPattern","addCharacter","setBaseUnit","cValue","getWeightedSum","checksum","kValue","weightedSum","weightedValue","Code39Base","minBaseUnitLength","addStart","pushCheckSum","prepareValues","characterData","addBase","Code39","minRatio","maxRatio","gapWidth","splitCharacter","patternMappings","patternString","minBaseUnit","getBaseUnit","getBaseWidth","characterLength","addCharacterGap","Code39ExtendedBase","addExtended","extendedMappings","patternIndex","shiftCharacters","dataCharacter","specialAsciiCodes","shiftValuesAsciiCodes","Code39Extended","SHIFT0","SHIFT1","SHIFT2","SHIFT3","Code93","TERMINATION_BAR","charData","checkValues","_getCheckValues","_findCharacterByValue","wightedSum","Code93Extended","characterByValue","Postnet","VALID_CODE_LENGTHS","DIGIT_SEPARATOR","baseHeight","checkSum","alphanumericRegex","State128","encoding","isCode","State128AB","states","_initMoves","FNC4","SHIFT","encodingState","_moves","numberMatch","_moveFNC","_shiftState","_moveState","fnc","shifted","states128","State128A","State128B","State128C","next4","getSubstring","State128FNC4","_initSubStates","dependentStates","subState","_getSubState","_initSubState","_pushStart","pushData","subStates","_getAll","FNC1","States128FNC1","startAI","endAI","applicationIdentifiers","multiKey","nextStart","separatorLength","regexSeparators","getBySeparator","getByLength","applicationIdentifier","getApplicationIdentifier","unsupportedAIError","Code128Base","_initStates","getNextState","Code128a","Code128b","Code128c","Code128","CodeGS1128","MsiBase","checkSumType","checkSums","checkSumLength","MsiMod10","MsiMod11","MsiMod1010","MsiMod1110","Modulo10","evenSum","oddSum","odd","Modulo11","checkValue","Modulo11Modulo10","mod11Value","Modulo10Modulo10","mod10Value","Ean13","keyTable","valueAsString","calculateChecksum","leftKey","leftPart","rightPart","addPieces","addSide","arrToAdd","limitedHeight","even","Ean8","Encodings","code11","code39","code39extended","code93","code93extended","code128","code128a","code128b","code128c","surfaceSize","surfaceType","msimod10","msimod11","msimod1010","msimod1110","postnet","ean8","ean13","Barcode","errorHandler","_setOptions","_initSurfaceElement","_createSurface","_destroySurfaceElement","_render","encodedValue","textToDisplay","textMargin","barHeight","_getBackground","_getText","_bandsGroup","_getBands","value$1","stepX","patternItem","_textbox","splitInto","chunkLength","toBitsString","bitString","toDecimal","FreeCellVisitor","getNextCell","getNextRemainderCell","EncodingResult","dataString","IsoEncoder","getEncodingResult","inputString","errorCorrectionLevel","modes","previousMode","chooseMode","initMinNumericBeforeAlpha","initMinNumericBeforeByte","initMinAlphaBeforeByte","modeString","nextMode","minNumericBeforeAlpha","minNumericBeforeByte","minAlphaBeforeByte","getModes","dataCodewordsCount","DataModeInstances","getStringBitsLength","getDataCodewordsCount","getVersion","getDataString","QRDataMode","modeIndicator","bitsInCharacterCount","getVersionIndex","getBitsCharacterCount","getModeCountString","NumericQRDataMode","inputLength","mod3","AlphaNumericQRDataMode","characters","ByteQRDataMode","Utf8Encoder","encodingMode","utfBOM","initialModeCountStringLength","encodeCharacter","bytesCount","getBytesCount","significantOnes","VersionsCodewordsInformation","totalDataCodewords","errorCodewordsPerBlock","terminator","NUMERIC","ALPHA_NUMERIC","BYTE","powersOfTwo","powersOfTwoResult","irregularAlignmentPatternsStartDistance","finderPattern","alignmentPattern","errorCorrectionPatterns","paddingCodewords","maskPatternConditions","alphaPattern","alphaRegex","alphaNumericRegex","byteRegex","generatorPolynomials","fillFunctionCell","matrices","bit","fillDataCell","xorPolynomials","multiplyPolynomials","multiplyByConstant","generateErrorCodewords","errorCodewordsCount","generatorPolynomial","errorCodewords","numericMatch","alphaMatch","alphaNumeric","alphaNumericMatch","encodeBCH","codeLength","generatorNumber","polynomialLength","valueNumber","numberX","numberY","yLength","xLength","dividePolynomials","getNumberAt","addFormatInformation","addVersionInformation","quotient","mod","modules","addCentricPattern","addFinderSeparator","nextX","nextY","scoreFinderPatternOccurance","scores","rowColumn","scoreAdjacentSameBits","previousBits","adjacentBits","calculateDarkModulesRatioScore","darkModules","mod5","encodeData","encoder","createQRCodeDataEncoder","encodingResult","versionInformation","dataStream","versionCodewordsInformation","dataBlock","blockCodewordsCount","groupBlocksCount","messagePolynomial","codeword","codewordStart","dataBlocks","errorBlocks","versionGroups","blockIdx","codewordIdx","getBlocks","initialDataString","dataBitsCount","terminatorIndex","paddingCodewordIndex","padDataString","initMatrices","addFinderPatterns","startDistance","addAlignmentPatterns","addTimingFunctions","cellVisitor","fillData","adjacentSameBits","modulesLength","matrixIndex","scoreMaskMatrixes","optimalMatrix","encodeVersionInformation","encodedString","encodeFormatInformation","generatePowersOfTwo","firstPolynomial","secondPolynomial","generateGeneratorPolynomials","crossPattern","squarePattern","QRCodeDefaults","QRCode","quietZoneSize","contentSize","errorCorrection","_calculateBaseUnit","_renderBackground","_renderMatrix","_hasCustomLogo","_renderLogo","_isSwiss","_renderSwissCode","qrSize","imageRect","logoSize","_getLogoSize","logoUrl","crossSize","crossOffset","_renderShape","matrixSize","newOptions","defautLogoSize","datums","WGS84","toSquare","math","atan","lat","lng","DISTANCE_ITERATIONS","DISTANCE_CONVERGENCE","DISTANCE_PRECISION","FORMAT","dest","datum","greatCircleTo","initialBearing","initialDatum","bearing","fromLat","fromLng","dToR","initialDest","azimuthFrom","azimuthTo","prevLambda","sinLambda","cosLambda","sino","cosA2","coso","cos2om","sigma","U1","sinU1","cosU1","U2","sinU2","cosU2","lambda","converged","sinA","u2","deltao","fromLngLat","lngAndLat","fromLatLng","PI_DIV_4","Mercator","MAX_LNG","MAX_LAT","INVERSE_ITERATIONS","INVERSE_CONVERGENCE","forward","proj","lng0","centralMeridian","_projectLat","ecc","ts","con","_inverseY","ecch","phi","dphi","SphericalMercator","Equirectangular","EPSG3857","_proj","_tm","_itm","EPSG3395","EPSG4326","convertToHtml","removeChildren","prepend","originElement","toHyphens","toPixels","setDefaultEvents","renderPos","Attribution","extent","_extent","newItem","_itemText","appendHtml","showElement","hideElement","inZoomLevel","_inZoomLevel","minZoom","maxZoom","inArea","_inArea","newMin","newMax","directionsMap","createButton","navigateUpButton","navigateRightlButton","navigateDownButton","navigateLeftButton","_keyroot","_tabindex","targetElement","TABINDEX","_pan","panStep","CHANGE","ZoomControl","zoomInButton","zoomOutButton","zoomStep","Extent","initialNw","initialSe","nw","World","containsAny","locs","include","includeAll","edges","sw","CENTER_CHANGE","widgetService","_anchor","documentPoint","Layer","_beforeReset","_reset","_panEnd","_activate","_updateAttribution","_deactivate","_applyExtent","_setVisibility","matchMinZoom","matchMaxZoom","inside","attribution","_readData","_hasData","_layerIndex","layers","compileTemplate","roundPoint","renderSize","newSize","TileLayer","subdomains","viewType","_viewType","_view","locationToLayer","viewOrigin","_updateView","TileView","extentToPoint","tileSize","urlTemplate","pool","TilePool","center$1","_center","extent$1","_viewOrigin","zoom$1","pointToTileIndex","tileCount","firstTileIndex","indexToPoint","subdomainText","subdomainIndex","tile","createTile","currentIndex","tileOptions","wrapIndex","subdomain","errorUrlTemplate","wrapValue","ImageTile","urlResult","urlOptions","errorUrl","quadkey","_create","maxDist","TapCapture","_release","captureNext","cancelCapture","PaneDimension","forcedEnabled","scrollSize","makeVirtual","_virtualMin","_virtualMax","virtualSize","outOfBounds","forceEnabled","rescale","scaledTotal","minScale","PaneDimensions","forcedMinScale","maxScale","newScale","centerCoordinates","PaneAxis","movable","dragMove","dragDelta","resistance","translateAxis","elastic","gesture","closestAnchor","previousGesture","previousCenter","scaleWith","Movable","transformOrigin","_saveCoordinates","by","scaleTo","moveAxis","newCoordinates","ShapeLayer","_initRoot","_markers","_translateSurface","_load","features","geometries","_clearMarkers","_loader","GeoJsonLoader","shapeCreated","cancelled","renderPointsAsMarkers","layer","featureCreated","_panning","locationToView","_eventArgs","layerIndex","shapeIndex","_tooltipAnchor","_tooltipContext","eventOffset","_panHandler","panHandler","locator","defaultStyle","unwrap","_loadGeometryTo","_featureCreated","_shapeCreated","_loadPolygon","_setLineFill","_loadPoint","_loadShape","rings","_buildPolygon","viewToLocation","BubbleLayer","scaleType","_scaleType","locationField","_createSymbol","_drawSymbol","Scales","Symbols","SqrtScale","domainRange","outputRange","_ratio","square","CLICK","MOUSE_ENTER","MOUSE_LEAVE","MARKER_CLASS_NAME","MARKER_CLASS","MarkerLayer","_markerClickHandler","_markerClick","_addOne","Marker","addTo","titleField","markerIndex","_markerMouseEnter","_createMarkerEventArgs","_markerMouseLeave","_mouseEnterHandler","_mouseEnter","_mouseLeaveHandler","_mouseLeave","templateHtml","_compileTemplate","templateFn","templateElement","_createEventArgs","paramName","useWithBlock","_tickProxy","_tick","_started","onEnd","timePassed","_easeProxy","ease","easeOutExpo","ZoomSnapBack","tapCapture","DragInertia","freeze","_moveTo","paneAxis","_snapBack","velocityMultiplier","friction","snapBack","AnimatedScroller","_updateCoordinates","setCoordinates","setCallback","ScrollBar","scrollMovable","alwaysVisible","paneSize","sizeRatio","Scroller","hasScrolling","hasNativeScrolling","_native","useNative","scrollHeader","fixedContainer","wrapInner","avoidScrolling","velocityX","velocityY","horizontalSwipe","verticalSwipe","zoomSnapBack","animatedScroller","mousewheelScrolling","_wheelScrollHandler","_wheelScroll","pulled","_initAxis","_wheelEnd","_wheel","_wheelY","pullToRefresh","_initPullToRefresh","_wheelTimeout","VERTICAL_AXIS","contentResized","_scale","enable","disable","animatedScrollTo","pullHandled","_paneChange","scrollBar","visibleScrollHints","pullOffset","messages","pullTemplate","releaseTemplate","refreshTemplate","MapService","MARKER","LOCATION","layersMap","zoomControl","markerLayer","initObserver","_notifyObserver","crs","_getOrigin","_initScroller","_initMarkers","_initControls","_initLayers","mousewheelThrottled","_setExtent","_getExtent","wraparound","locationObject","_layerSize","layerToLocation","pointObject","pointResult","eventToView","eventToLayer","eventToLocation","viewSize","_setOrigin","originLocation","_origin","newExtent","layerWidth","layerHeight","_zoomAround","pivot","_createAttribution","_createNavigator","_createZoomControl","_createControlElement","defaultPosition","posSelector","div$1","_navigatorPan","_navigatorCenter","bounds","_virtualSize","_scrollEnd","_zoomControlChange","_scroll","_scaleStart","_doubleTap","_createLayer","layerDefaults","layerOptions","markerDefaults","layerConstructor","markerLayers","_scrollOffset","_panComplete","_panEndTimestamp","_scaleToZoom","gestureCenter","centerLocation","tiles","_resetScroller","xBounds","yBounds","_renderLayers","newZoom","toZoom","fromZoom","sortAsc","y0","sortSource","sortTarget","sortLinks","targetLinks","sourceLinks","calcLayer","maxDepth","Sankey","nodesOptions","nodeWidth","nodePadding","targetColumnIndex","loops","autoLayout","calculate","connectLinksToNodes","calculateNodeValues","circularLinks","calculateNodeHeights","calculateNodeDepths","calculateNodeColumns","calculateNodeBreadths","applyNodesOffset","calculateLinkBreadths","nodesMap","sourceId","targetId","currDepth","currentNodes","nodesLength","currentHeight","eachNode","columnWidth","x0","kSize","uncurlLinksToRight","uncurlLinksToLeft","targetTopPos","arrangeNodesVertically","sourceTopPos","arrangeUp","arrangeDown","yPos","currentY","link$1","calculateSankey","rotationDirection","p1x","p1y","p2x","p2y","p3x","p3y","expression1","expression2","link1","link2","f1","f2","f3","f4","SankeyElement","getRect","nodeColor","nodeColors","resolveNodeOptions","nodeOptions","bezierPoint","t1t1","calculateControlPointsOffsetX","xC","upperCurveMiddleLine","actualWidth","distanceToLine","upperNarrowness","line1","line2","ref$3","y4","angelBetweenTwoLines","BEFORE","AFTER","diagramMinX","diagramMaxX","nodeBox","textSizeBox","textY","labelAfterLastNode","labelBeforeFirstNode","textOrigin","textRect","resolveLabelOptions","drawingRect","ChartTitle","sortData","sortDataRTL","areaBackground","areaOpacity","ChartLegend","LINK","NODE","_initResizeObserver","_initNavigation","_destroyResizeObserver","_onDownHandler","disableKeyboardNavigation","_onDown","firstFocusableNode","_resizeObserver","mouseenter","mouseleave","setLinksOpacity","linksVisuals","linkOptions","setLinksInactivityOpacity","linkValue","ev","targetType","isLink","isLegendItem","highlightLinks","nodeVisual","nodesVisuals","tooltipTimeOut","tooltipShown","followPointer","tooltipElType","mouseEvent","isLeft","isTop","tooltipData","popupOffset","nextDelay","sameNode","_focusNode","sameLink","_focusLink","node1","node2","_cleanFocusHighlight","nodeData","models","linkData","_focusNextNode","columnNodes","nodeIndex","nextNode","_focusNextLink","sourceLinkIndex","targetLinkIndex","nextLink","nextLink$1","_focusSourceNode","sourceNode","_focusTargetNode","targetNode","_focusSourceLink","_focusTargetLink","_skipFocusHighlight","onArrowRight","onArrowLeft","onArrowDown","onArrowUp","titleBox","calcOptions","sankeyOptions","disableAutoLayout","sankeyBox","legendArea","titleHeight","calculatedNodes","sankey","nodeEl","nodeOps","nodeInstance","labelVisual","permutation","columnsLength","crosses","linksLength","lNext","crossesValue","minCrosses","bestResult","sankeyContext","startX","endX","toRtl","newColumn","titleVisual","visualNodes","focusHighlights","sortedLinks","resolvedOptions","colorType","resolveLinkOptions","linkInstance","linkVisual","textOps","legendVisual","categoryAxisX","valueAxisY","seriesChange","areaMarginLeft","areaMarginRight","areaMarginTop","areaMarginBottom","titleText","titleFontName","titleFontSize","titleColor","subtitleText","subtitleFontName","subtitleFontSize","subtitleColor","seriesLabel","legendVisible","legendFontName","legendFontSize","legendColor","categoryAxisTitleText","categoryAxisTitleFontName","categoryAxisTitleFontSize","categoryAxisTitleColor","categoryAxisLabelsFontName","categoryAxisLabelsFontSize","categoryAxisLabelsColor","categoryAxisLabelsRotation","categoryAxisReverseOrder","valueAxisTitleText","valueAxisTitleFontName","valueAxisTitleFontSize","valueAxisTitleColor","valueAxisLabelsFormat","valueAxisLabelsFontName","valueAxisLabelsFontSize","valueAxisLabelsColor","valueAxisLabelsRotation","labelSizeDefault","axisTitleSizeDefault","fontNames","fontFamily","fontNameDefault","lineType","scatterType","categoricalTypes","scatterSeries","isCategorical","categoryTypes","valueTypes","axesDefinitions","getFont","parseFont","spaceIndex","updateFontName","fontName","currentFont","updateFontSize","defaultFontName","recordWithValues","structuredClone","getCategoryColumnIndex","categoryDef","sampleRecord","record","getValueColumnIndexes","valuesDef","emptyState","initialSeries","categoryValueChartState","chartDef","firstRecord","catIndex","valuesIndexes","valuesColumn","valuesResult","pieChartState","categoriesAxis","createState","mergeStates","legend$1","legend$2","rotation$1","windowTitle","exportButton","exportPDFButton","exportSVGButton","exportPNGButton","tabChart","tabData","tabFormat","barChartBar","barChartStackedBar","barChart100StackedBar","pieChartPie","columnChart","columnChartColumn","columnChartStackedColumn","columnChart100StackedColumn","lineChartLine","lineChartStackedLine","lineChart100StackedLine","scatterChartScatter","configurationCategoryAxis","configurationXAxis","configurationValueAxis","configurationSeries","configurationSeriesAdd","formatChartArea","formatChartAreaMargins","formatChartAreaMarginsAuto","formatChartAreaMarginsLeft","formatChartAreaMarginsRight","formatChartAreaMarginsTop","formatChartAreaMarginsBottom","formatChartAreaBackground","formatChartAreaBackgroundColor","formatTitle","formatTitleApplyTo","formatTitleChartTitle","formatTitleChartSubtitle","formatTitleLabel","formatTitleFont","formatTitleFontPlaceholder","formatTitleSize","formatTitleSizePlaceholder","formatTitleColor","formatSeries","formatSeriesApplyTo","formatSeriesAllSeries","formatSeriesColor","formatSeriesShowLabels","formatLegend","formatLegendShowLegend","formatLegendFont","formatLegendFontPlaceholder","formatLegendSize","formatLegendSizePlaceholder","formatLegendColor","formatLegendPosition","formatLegendPositionTop","formatLegendPositionBottom","formatLegendPositionLeft","formatLegendPositionRight","formatCategoryAxis","formatXAxis","formatCategoryAxisTitle","formatCategoryAxisTitlePlaceholder","formatCategoryAxisTitleFont","formatCategoryAxisTitleFontPlaceholder","formatCategoryAxisTitleSize","formatCategoryAxisTitleSizePlaceholder","formatCategoryAxisTitleColor","formatCategoryAxisLabels","formatCategoryAxisLabelsFont","formatCategoryAxisLabelsFontPlaceholder","formatCategoryAxisLabelsSize","formatCategoryAxisLabelsSizePlaceholder","formatCategoryAxisLabelsColor","formatCategoryAxisLabelsRotation","formatCategoryAxisLabelsRotationAuto","formatCategoryAxisLabelsReverseOrder","formatValueAxis","formatYAxis","formatValueAxisTitle","formatValueAxisTitlePlaceholder","formatValueAxisTitleFont","formatValueAxisTitleFontPlaceholder","formatValueAxisTitleSize","formatValueAxisTitleSizePlaceholder","formatValueAxisTitleColor","formatValueAxisLabels","formatValueAxisLabelsFormat","formatValueAxisLabelsFormatText","formatValueAxisLabelsFormatNumber","formatValueAxisLabelsFormatCurrency","formatValueAxisLabelsFormatPercent","formatValueAxisLabelsFont","formatValueAxisLabelsFontPlaceholder","formatValueAxisLabelsSize","formatValueAxisLabelsSizePlaceholder","formatValueAxisLabelsColor","formatValueAxisLabelsRotation","formatValueAxisLabelsRotationAuto","BAR_GAP","getWizardDataFromDataRows","dataRows","dataColumns","createInitialState","defaultState","fontSizes","BAR_SPACING","SANS","SANS11","SANS12","SANS16","TRANSPARENT","lineSeriesLegendItem","areaSeriesLegendItem","areaNoMarkersSeriesLegendItem","areaSeries","rangeAreaSeries","boxPlotSeries","outliersField","meanField","bulletSeries","lineSeries","radarAreaSeries","radarLineSeries","waterfallSeries","funnelSeries","pyramidSeries","trendlineSeriesDefaults","rangeArea","verticalRangeArea","heatmap","funnel","pyramid","horizontalWaterfall","radarColumn","polarScatter","rangeBar","verticalBoxPlot","baseTheme","prevented","axisLabelClick","dragEnd","dragStart","drilldownEvent","legendItemHover","legendItemClick","legendItemLeave","navigatorFilter","noteClick","noteHover","plotAreaClick","plotAreaHover","seriesClick","seriesHover","zoomEnd","zoomStart","setColors","mapColor","queryStyle","setInactiveOpacity","setFonts","setSeriesColors","chartCollectionIdxKey","collectionConfigurationItem","chartKey","configurationItem","themeItem","xLow","xHigh","yLow","yHigh","colorMarker","colspan","nameColumn","onChartMouseLeave","childrenObserver","popupRef","observersStore","popupShown","popupStyles","popupContent","popupContext","findRenderFunction","findRenderFunctionByIndex","onShowTooltip","createSharedTooltipContext","createTooltipContext","onHideTooltip","optionsStore","popupContend","tooltips","storeUnsubscriber","subscriber","optionsUnsubscriber","themeStore","themeUnsubscriber","suppressTransitions","onRender","onDrilldown","drilldownSeriesFactory","drilldownValue","drilldownState","getTarget","onLegendItemClick","triggerDomEvent","onChildMouseLeave","instantiateCoreChart","getDirection","getChartOptions","deriveOptionsFromParent","onRefresh","chartConstructor","donutCenterStyles","_baseChart","donutCenterRender","childStore","_chartKey","_chartCollectionIdxKey","_parentStore","OpggsApplicationLinkView","inProgressRadioValue","completedRadioValue","defaultApplicationTrackingType","setIsCompleted","selectedRadioValue","setSelectedRadioValue","setApplicationTrackingType","selectedApplicationTrackingType","setSelectedApplicationTrackingType","sortedApplicationTrackingTypes","sortedTypeSummaryItems","typeSummaryItems","sortedStatusSummaryItems","statusSummaryItems","onRadioValueChanged","onSeriesClick","typeClicked","onFormSubmit","labelContent","legendLabelContent","getTypeSummaryChart","ChartSeries","ChartSeriesItem","colorField","getCompletedStatusSummaryChart","DropDownList","_e$target$value","baseDescription","getStatusSummaryChartDescription","getTypeSummaryChartDescription","AcreageReleasePetroleum","AcreageReleaseGhg","ChangeInControl","listItems","ApplicationLink","getOpggsApplicationTrackingRequestAction","_state$isCompleted","_response$application","_response$application2","_response$application3","_response$application4","OpggsApplicationTrackingListView","_response$approvalTra","approvalTrackingItems","sortedApprovalTrackingItems","getStatusChartDescription","getOpggsApplicationTrackingDetailsRequestAction","clearOpggsApplicationTrackingDetailsAction","OpggsApplicationTrackingDetailsView","LicenceLinkView","LicenceLink","searchLicenceRequestAction","_state$licences","LicenceSearchListView","_props$relatedLicence","sortedLicences","LicenceSummaryView","LicenceSummaryRelatedLicencesField","LicenceHolderView","OpenLicenceActions","getOpenLicenceActionDetails","LicenceDetailsHelper","_response$summary","OpenLicenceHelper","LicenceDetailsTabsEnum","tryOpenLicenceMemorialDocument","getLicenceMemorialDocumentUrl","getLicenceDetailsRequestAction","clearLicenceDetailsAction","LicenceDetailsView","getTitleIdRequest","NotFoundPage","getLicenceIdRequest","OeiApplicationLinkView","InitialApplicationFeasibilityLicence","getOeiApplicationTrackingRequestAction","OeiApplicationTrackingListView","getOeiApplicationTrackingDetailsRequestAction","clearOeiApplicationTrackingDetailsAction","OeiApplicationTrackingDetailsView","storageFormationsListRequestAction","_state$storageFormati","StorageFormationListView","PageLayout","titleDisplay","titleReactNode","uniquePrivateKey","keepItemsMounted","Next","Previous","First","Last","parentExpanded","parentPrivateKey","parentUniquePrivateKey","wrapperFocused","mapItemsToComponents","expandMode","expandedItems","activeDescendant","handleWrapperFocus","handleWrapperBlur","selectedItem","nopimsLhsNavItemEnum","NopimsLhsNav","_props$item","Home","Wells","Surveys","Reprocessing","ReleasedDocuments","CoreLibrary","CoreLibrary_Search","CoreLibrary_CoresAndCuttingsRequest","GisMap","Feedback","itemComponents","PanelBarUtils","expandedIds","getExpandedItemIds","setExpanded","PanelBar","getRoute","DefaultContext","IconContext","Tree2Element","tree","GenIcon","IconBase","conf","svgProps","computedSize","BsBasket3Fill","SelectedItems","SelectionButton","itemName","getItemTitle","getItemTooltip","buttonStyle","onItemRemoved","ShowSelections","_props$title2","onItemsCleared","showContainer","Controller","nopimsBasketModel","RouteHelper","NopimsPageLayout","_state$portalLinks","usePortalLink","NeatsNopimsPublicPortalGuidance","lhsNavItem","ShoppingCartSummaryController","additionalQueries","customFilterExpressions","additionalFilters","suppressSkipAndTake","customExpressions","getCustomExpressions","compositeFilterDescriptor","e2","isFilterDescriptor","customFilterExpression","cfe","expression","getCustomExpressionKey","getNumberOfFiltersUnderCompositeFilterDescriptor","childResult","getFilter","ce2","dataStateClone","placeholderExpression","newQuery","replaceAll","replaceCustomExpressionPlaceholders","getDataStateFilterValidationMessages","filterExpressionContainsLongValues","numberOfFilters","filterExpressionContainsTooManyNodes","filterDescriptorResults","compositeFilterDescriptorResults","ODataCopyLinkButton","Helper","isAbsoluteUrl","writeText","wordBreak","dateLastYear","documentFilterReleasedDateBetweenLastYearAndNow","HelpView","ODataAction","requestBody","lastSuccessfulAction","runningAction","invokeActionIfNeeded","onActioned","SelectedItemsHelper","setItems","_setItems","_comparer","TryAdd","newItems","TryAddAll","TryRemove","Clear","IoAddCircleOutline","IoCheckmarkCircle","nextFilter","SimpleValidationMessageView","ODataReader","ODataValidator","onDataReceived","ODataLoaderInternal","authTokenProvider","showContentAsBusyElementId","mapDataRow","changeToken","setErrorMessage","lastSuccessfulQuery","runningQuery","fetchRequest","requestInit","json","getChangeTracker","requestDataIfNeeded","dr","accessToken","Authorization","elementId","_element$querySelecto","loadingPanel","_JSON$stringify","showDebugMessages","TruncatePosition","truncatedValue","Start","End","CommentSummaryView","_props$maxSummaryLeng","_props$truncatePositi","comment","showCommentsDialog","setShowCommentsDialog","maxSummaryLength","truncatePosition","StringHelper","truncatedComment","bootstrapFormsStyles","focusedSelector","setTabIndex","focusButton","keyboardNavigation","uButtonGroup","mapButtons","onFieldChange","triggerOnFilterChange","onOperatorChange","onInputChange","prevFilter","onFilterRemove","onAddExpression","onAddGroup","defaultGroupFilter","onLogicAnd","changeLogic","onLogicOr","replaceFilter","ariaLabelExpression","ArrowUp","ArrowDown","ArrowRight","ArrowLeft","previousElementSibling","lastElementChild","ariaLabelGroup","GridFilter","propsDateCallback","_props$placeholder","propsNumericCallback","_props$placeholder2","DateInputPropsContext","NumericTextBoxPropsContext","Filter","getTextFilter","hasNull","getDateFilter","getNumericFilter","TextBoxFilter","odataUrl","setPageSize","initialFilter","setGridDataState","DateFilter","NumericFilter","BooleanFilter","Operators","dataRow","WellId","BoreholeId","Uwi","WellName","Ubhi","BoreholeName","Alias","Basin","SubBasin","WaterDepth","IsOffshore","Jurisdiction","NopimsJurisdiction","NopimsLegislation","WellOperator","BoreholeOperator","BoreholeReason","DrilledBy","Rig","KickOffDate","TotalDepthDate","DrillersTotalDepth","RigReleaseDate","BasicRelevantDate","InterpretativeRelevantDate","BasicReleaseDate","InterpretativeReleaseDate","BoreholeStatus","Comments","onAdd","selectedItems","DownloadLinkView","selectionVersion","_i$ReportTitle","ReportTitle","ReportId","ReportItemId","_item$ReportTitle","onBasketAdd","AttachmentManifestUrl","AttachmentArchiveUrl","AttachmentArchiveFileName","AttachmentArchiveFileSize","CoreLibraryId","CoreRepository","CoreSampleType","StartDepth","EndDepth","ViewTypeName","BoxTrayNumber","BoxTrayCount","AccessionCardUrl","WellBoreholeType","setSelectionVersion","setSelectedItems","selectedItemsHelper","item1","item2","tabKey","setTabKey","showGuidance","WellSearchController","ReportsController","CoreSampleController","SlideAndResiduesController","boreholeIds","SurveyId","AcquisitionId","SurveyIdentifier","SurveyName","AcquisitionIdentifier","AcquisitionName","SurveyType","StartDate","EndDate","SurveyOperator","AcquisitionContractor","Basins","Terrain","Titles","TotalLineLength","AreaSqKm","ExclusivityStatus","Vessel","Subset2DRelevantDate","Subset2DreleaseDate","Subset2DrelevantDate","Subset2DReleaseDate","_item$DataDescription","DataDescription","SurveyDataId","ItemId","_item$DataDescription2","SurveySearchController","SurveyDataController","SeismicLinesController","acquisitionIds","Orientation","ListSummaryView","_props$popupListOrien","_props$maxChildrenDis","_props$listDelimiter","_props$fill","showDetailsDialog","setShowDetailsDialog","popupListOrientation","Vertical","maxChildrenDisplayCount","listDelimiter","truncateChildrenToDisplay","childrenToDisplay","handleMoreClick","displayMoreButton","popupDisplayElement","displayElement","Horizontal","listStyleType","_item$popupDisplayEle","generateHorizontalItems","_item$popupDisplayEle2","generateVerticalItems","maxTextLength","generateListSummaryViewChild","truncatedDisplayName","ReprocessingProjectId","ReprocessingProjectIdentifier","ReprocessingProjectName","ReprocessingId","ReprocessingIdentifier","ReprocessingName","AcquisitionAliases","ReprocessingOperator","ReprocessingType","RelatedAcquisitions","RelatedBasins","RelatedTitles","acquisition","ReprocessingSearchController","reprocessingProjectIds","DocumentSearchController","setDateNow","setDateLastYear","calculatingDateLastYear","additionalODataGridFilter","ReleasedDate","DocumentType","ActivityType","ActivityId","ActivityName","ProjectId","_i$ReportId","_i$SurveyDataId","_i$BoreholeId","_i$AcquisitionId","_i$ProjectId","_i$ReportId2","_i$SurveyDataId2","_i$BoreholeId2","_i$AcquisitionId2","_i$ProjectId2","CopyODataLink","AlertsModel","dto","addStatusMessages","addInformation","addWarning","addError","addSuccess","hasAnything","renderError","renderSuccess","renderWarning","renderInfo","AlertsView","alertsModel","showErrors","setShowErrors","showSuccess","setShowSuccess","showWarning","setShowWarning","showInformation","setShowInformation","alertsRef","AlertsHelper","StatusMessagesAlertsView","_props$scrollWindowTo","scrollWindowToTop","alerts","setAlerts","_alertsRef$current","behavior","ConflictAlertView","alertRef","_alertRef$current","isConflict","TaskLayout","BusyState","DirtyState","ConflictView","statusMessagesScrollToTop","isBusyState","isDirtyState","ValidationVisibilityEnum","ValidationModel","getErrors","applyClass","MessagesAndAdorners","applyClassForKendo","applyValidity","applyValidityForKendo","isValidEmail","isNullOrWhiteSpace","RootViewModel","isSubmitted","feedback","referenceData","setBusy","_clone","refreshReferenceData","refreshFeedbackDetails","honorific","feedbackType","nopimsActivityType","dataMonitoringItemType","refreshFeedbackCreateResponse","_response$statusMessa","suggestedText","owns","activedescendant","ariaRequired","_suggested","_skipBlur","_adaptiveFilterInput","duplicates","checkForDuplicatePlainTextRecords","toggleBtnClick","getCurrentValueDisabledStatus","clearValueOnToggleBtnClick","adaptiveFilter","closeOpenedApplyStateNonMobileMode","renderMobileListFilter","handleMobileFilterChange","onInputKeyDown","onGroupScroll","navigationIndex","clearValueOnBlur","applyValueOnRejectSuggestions","onInputClick","clearValueOnEnterOrEsc","applyValueOnEnter","inputOnChange","suggest","suggestValue","focusedItem","clearButtonClick","clearValue","_valueOnDidUpdate","uComboBox","renderSearchBar","allowCustom","selectFocusedItem","footerClassName","KendoComboBox","ComboBox","keyField","KendoDropDownList","KendoLargeComboBox","_props$recordsToShow","recordsToShow","hintText","hintMessageItem","noRecordsFoundText","noRecordsFoundMessageItem","displayingFirstText","getDisplayingFirstMessageItem","filteredDataLength","getFilterTextForValue","getSanitisedValue","filterText","_props$data","setFilterText","_props$data2","filterData","_props$onBlur","ValidationMessageView","validationModel","None","FeedbackCreateView","_state$feedbackType","setVm","validation","dataFeedbackActivities","updateViewModel","updateStateAndViewModel","filteredActivites","setFilteredActivites","filteredDataMonitoringItemTypes","setFilteredDataMonitoringItemTypes","FeedbackCreateSubmittedView","_feedback$honorific","_feedback$feedbackTyp","_feedback$feedbackTyp2","_feedback$nopimsActiv","_feedback$activity","_feedback$dataMonitor","viewModel","setViewModel","validationVisibility","setValidationVisibility","Messages","_vm$feedback$feedback","Validation","_vm$feedback$honorifi","_vm$feedback$nopimsAc","_vm$feedback$activity","_vm$feedback$dataMoni","coreCuttingsRequest","samples","setDefaultCountry","addSample","borehole","removeSample","refreshCoreCuttingsRequestDetails","countrySubDivision","country","refreshCoreCuttingsRequestCreateResponse","KendoNumericTextBox","refValue","_ref$current$element","_refValue","_refValue$element","NumericTextBox","removeIcon","removeSvgIcon","removable","selectedIcon","selectedSvgIcon","avatar","removeIconSvg","selectedIconSvg","tagRender","onTagDelete","tagData","focusedTag","PopupList","TagsList","_valueItemsDuringOnChange","_tags","_adaptiveInput","_lastSelectedOrDeslectedItemIndex","scrollToFocused","itemFocus","getFocusedState","searchbarRef","onChangeHandler","onTagsNavigate","updateStateOnKeyboardNavigation","getLastSelectedOrDeselectedIndex","customItemSelect","listContainerContent","focusedType","fontStyle","closePopup","tagsToRender","sampleViewModel","onDetailsChanged","_vm$sampleViewModel$s","sampleTypeData","setSampleTypeData","MultiSelect","CoreCuttingsRequestCreateView","showAddSampleView","setShowAddSampleView","filteredCountrySubDivisions","setFilteredCountrySubDivisions","onRemoveSample","AddSampleController","CoreCuttingsRequestCreateSubmittedView","_coreCuttingsRequest$","_coreCuttingsRequest$2","_coreCuttingsRequest$3","_coreCuttingsRequest$4","_vm$coreCuttingsReque","_vm$coreCuttingsReque2","_vm$coreCuttingsReque3","BasketView","onShowSubmitBasket","submitDetails","refreshSubmitDetails","customerHonorific","customerAddress","customerSuburb","customerPostcode","customerCountry","customerCountrySubdivision","refreshSubmitResponse","SubmitViewDetails","subdivisions","SubmitView","SubmitActions","_vm$statusMessages","onSubmitComplete","_vm$submitDetails$cus","_vm$submitDetails$cus2","showSubmit","setShowSubmit","setStatusMessages","routeBuilder","routes","HomeController","WellsController","SurveysController","ReprocessingController","ReleasedDocumentsController","CoreLibraryController","GisMapController","FeedbackController","CoreCuttingsRequestController","BasketController","nopimsRouteBuilder","isDefault","_r$path","buildRoutes","_state$featureSwitche","ShellHelper","HomePage","TitleSearchController","TitleDetailsController","ApplicationTrackingController","OpggsApplicationTrackingDetailsController","StorageFormationsListController","LicenceSearchController","LicenceDetailsController","OeiApplicationTrackingController","OeiApplicationTrackingDetailsController","MapController","OpenTitleController","OpenLicenceController","Accessibility","Disclaimer","NotFound","Conflict","Unauthorised","InternalServerError","LogHelper","measurementId","AnalyticsHelper","ReduxProvider","KendoIntlProvider","App"],"sourceRoot":""}